Failed to save the file to the "xx" directory.

Failed to save the file to the "ll" directory.

Failed to save the file to the "mm" directory.

Failed to save the file to the "wp" directory.

403WebShell
403Webshell
Server IP : 66.29.132.124  /  Your IP : 3.144.25.130
Web Server : LiteSpeed
System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : wavevlvu ( 1524)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/wavevlvu/book24.ng/public/libs/filerobot-image-editor/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/wavevlvu/book24.ng/public/libs/filerobot-image-editor/filerobot-image-editor.min.js
/*!
 *
 *  filerobot-image-editor v3.12.17
 *  https://github.com/scaleflex/filerobot-image-editor
 *
 *  Copyright (c) 2019 scaleflex
 *  Released under the MIT license
 *
 *  Date: 2021-03-19T11:08:44.396Z
 *
 */
!function (e) {
    var t = {};

    function n(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, n), o.l = !0, o.exports
    }

    n.m = e, n.c = t, n.d = function (e, t, r) {
        n.o(e, t) || Object.defineProperty(e, t, {enumerable: !0, get: r})
    }, n.r = function (e) {
        "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {value: "Module"}), Object.defineProperty(e, "__esModule", {value: !0})
    }, n.t = function (e, t) {
        if (1 & t && (e = n(e)), 8 & t) return e;
        if (4 & t && "object" == typeof e && e && e.__esModule) return e;
        var r = Object.create(null);
        if (n.r(r), Object.defineProperty(r, "default", {
            enumerable: !0,
            value: e
        }), 2 & t && "string" != typeof e) for (var o in e) n.d(r, o, function (t) {
            return e[t]
        }.bind(null, o));
        return r
    }, n.n = function (e) {
        var t = e && e.__esModule ? function () {
            return e.default
        } : function () {
            return e
        };
        return n.d(t, "a", t), t
    }, n.o = function (e, t) {
        return Object.prototype.hasOwnProperty.call(e, t)
    }, n.p = "https://cdn.scaleflex.it/plugins/filerobot-image-editor/3.12.17/", n(n.s = 69)
}([function (e, t, n) {
    "use strict";
    e.exports = n(27)
}, function (e, t, n) {
    "use strict";
    (function (e) {
        n.d(t, "a", (function () {
            return ke
        }));
        var r = n(7), o = n(2), i = n.n(o), a = (n(14), n(15)), s = n(16), l = n(11), c = n(10), u = n.n(c);

        function f() {
            return (f = Object.assign || function (e) {
                for (var t = 1; t < arguments.length; t++) {
                    var n = arguments[t];
                    for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r])
                }
                return e
            }).apply(this, arguments)
        }

        var p = function (e, t) {
            for (var n = [e[0]], r = 0, o = t.length; r < o; r += 1) n.push(t[r], e[r + 1]);
            return n
        }, d = function (e) {
            return null !== e && "object" == typeof e && "[object Object]" === (e.toString ? e.toString() : Object.prototype.toString.call(e)) && !Object(r.typeOf)(e)
        }, h = Object.freeze([]), g = Object.freeze({});

        function m(e) {
            return "function" == typeof e
        }

        function b(e) {
            return e.displayName || e.name || "Component"
        }

        function v(e) {
            return e && "string" == typeof e.styledComponentId
        }

        var y = void 0 !== e && (e.env.REACT_APP_SC_ATTR || e.env.SC_ATTR) || "data-styled",
            w = "undefined" != typeof window && "HTMLElement" in window,
            x = "boolean" == typeof SC_DISABLE_SPEEDY && SC_DISABLE_SPEEDY || void 0 !== e && (e.env.REACT_APP_SC_DISABLE_SPEEDY || e.env.SC_DISABLE_SPEEDY) || !1,
            k = function () {
                return n.nc
            };

        function O(e) {
            for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
            throw new Error("An error occurred. See https://github.com/styled-components/styled-components/blob/master/packages/styled-components/src/utils/errors.md#" + e + " for more information." + (n.length > 0 ? " Additional arguments: " + n.join(", ") : ""))
        }

        var S = function (e) {
                var t = document.head, n = e || t, r = document.createElement("style"), o = function (e) {
                    for (var t = e.childNodes, n = t.length; n >= 0; n--) {
                        var r = t[n];
                        if (r && 1 === r.nodeType && r.hasAttribute(y)) return r
                    }
                }(n), i = void 0 !== o ? o.nextSibling : null;
                r.setAttribute(y, "active"), r.setAttribute("data-styled-version", "5.1.1");
                var a = k();
                return a && r.setAttribute("nonce", a), n.insertBefore(r, i), r
            }, j = function () {
                function e(e) {
                    var t = this.element = S(e);
                    t.appendChild(document.createTextNode("")), this.sheet = function (e) {
                        if (e.sheet) return e.sheet;
                        for (var t = document.styleSheets, n = 0, r = t.length; n < r; n++) {
                            var o = t[n];
                            if (o.ownerNode === e) return o
                        }
                        O(17)
                    }(t), this.length = 0
                }

                var t = e.prototype;
                return t.insertRule = function (e, t) {
                    try {
                        return this.sheet.insertRule(t, e), this.length++, !0
                    } catch (e) {
                        return !1
                    }
                }, t.deleteRule = function (e) {
                    this.sheet.deleteRule(e), this.length--
                }, t.getRule = function (e) {
                    var t = this.sheet.cssRules[e];
                    return void 0 !== t && "string" == typeof t.cssText ? t.cssText : ""
                }, e
            }(), C = function () {
                function e(e) {
                    var t = this.element = S(e);
                    this.nodes = t.childNodes, this.length = 0
                }

                var t = e.prototype;
                return t.insertRule = function (e, t) {
                    if (e <= this.length && e >= 0) {
                        var n = document.createTextNode(t), r = this.nodes[e];
                        return this.element.insertBefore(n, r || null), this.length++, !0
                    }
                    return !1
                }, t.deleteRule = function (e) {
                    this.element.removeChild(this.nodes[e]), this.length--
                }, t.getRule = function (e) {
                    return e < this.length ? this.nodes[e].textContent : ""
                }, e
            }(), _ = function () {
                function e(e) {
                    this.rules = [], this.length = 0
                }

                var t = e.prototype;
                return t.insertRule = function (e, t) {
                    return e <= this.length && (this.rules.splice(e, 0, t), this.length++, !0)
                }, t.deleteRule = function (e) {
                    this.rules.splice(e, 1), this.length--
                }, t.getRule = function (e) {
                    return e < this.length ? this.rules[e] : ""
                }, e
            }(), E = function () {
                function e(e) {
                    this.groupSizes = new Uint32Array(512), this.length = 512, this.tag = e
                }

                var t = e.prototype;
                return t.indexOfGroup = function (e) {
                    for (var t = 0, n = 0; n < e; n++) t += this.groupSizes[n];
                    return t
                }, t.insertRules = function (e, t) {
                    if (e >= this.groupSizes.length) {
                        for (var n = this.groupSizes, r = n.length, o = r; e >= o;) (o <<= 1) < 0 && O(16, "" + e);
                        this.groupSizes = new Uint32Array(o), this.groupSizes.set(n), this.length = o;
                        for (var i = r; i < o; i++) this.groupSizes[i] = 0
                    }
                    for (var a = this.indexOfGroup(e + 1), s = 0, l = t.length; s < l; s++) this.tag.insertRule(a, t[s]) && (this.groupSizes[e]++, a++)
                }, t.clearGroup = function (e) {
                    if (e < this.length) {
                        var t = this.groupSizes[e], n = this.indexOfGroup(e), r = n + t;
                        this.groupSizes[e] = 0;
                        for (var o = n; o < r; o++) this.tag.deleteRule(n)
                    }
                }, t.getGroup = function (e) {
                    var t = "";
                    if (e >= this.length || 0 === this.groupSizes[e]) return t;
                    for (var n = this.groupSizes[e], r = this.indexOfGroup(e), o = r + n, i = r; i < o; i++) t += this.tag.getRule(i) + "/*!sc*/\n";
                    return t
                }, e
            }(), P = new Map, R = new Map, D = 1, M = function (e) {
                if (P.has(e)) return P.get(e);
                var t = D++;
                return P.set(e, t), R.set(t, e), t
            }, A = function (e) {
                return R.get(e)
            }, T = function (e, t) {
                t >= D && (D = t + 1), P.set(e, t), R.set(t, e)
            }, I = "style[" + y + '][data-styled-version="5.1.1"]',
            z = new RegExp("^" + y + '\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)'), L = function (e, t, n) {
                for (var r, o = n.split(","), i = 0, a = o.length; i < a; i++) (r = o[i]) && e.registerName(t, r)
            }, B = function (e, t) {
                for (var n = t.innerHTML.split("/*!sc*/\n"), r = [], o = 0, i = n.length; o < i; o++) {
                    var a = n[o].trim();
                    if (a) {
                        var s = a.match(z);
                        if (s) {
                            var l = 0 | parseInt(s[1], 10), c = s[2];
                            0 !== l && (T(c, l), L(e, c, s[3]), e.getTag().insertRules(l, r)), r.length = 0
                        } else r.push(a)
                    }
                }
            }, N = w, F = {isServer: !w, useCSSOMInjection: !x}, U = function () {
                function e(e, t, n) {
                    void 0 === e && (e = F), void 0 === t && (t = {}), this.options = f({}, F, {}, e), this.gs = t, this.names = new Map(n), !this.options.isServer && w && N && (N = !1, function (e) {
                        for (var t = document.querySelectorAll(I), n = 0, r = t.length; n < r; n++) {
                            var o = t[n];
                            o && "active" !== o.getAttribute(y) && (B(e, o), o.parentNode && o.parentNode.removeChild(o))
                        }
                    }(this))
                }

                e.registerId = function (e) {
                    return M(e)
                };
                var t = e.prototype;
                return t.reconstructWithOptions = function (t) {
                    return new e(f({}, this.options, {}, t), this.gs, this.names)
                }, t.allocateGSInstance = function (e) {
                    return this.gs[e] = (this.gs[e] || 0) + 1
                }, t.getTag = function () {
                    return this.tag || (this.tag = (t = this.options, n = t.isServer, r = t.useCSSOMInjection, o = t.target, e = n ? new _(o) : r ? new j(o) : new C(o), new E(e)));
                    var e, t, n, r, o
                }, t.hasNameForId = function (e, t) {
                    return this.names.has(e) && this.names.get(e).has(t)
                }, t.registerName = function (e, t) {
                    if (M(e), this.names.has(e)) this.names.get(e).add(t); else {
                        var n = new Set;
                        n.add(t), this.names.set(e, n)
                    }
                }, t.insertRules = function (e, t, n) {
                    this.registerName(e, t), this.getTag().insertRules(M(e), n)
                }, t.clearNames = function (e) {
                    this.names.has(e) && this.names.get(e).clear()
                }, t.clearRules = function (e) {
                    this.getTag().clearGroup(M(e)), this.clearNames(e)
                }, t.clearTag = function () {
                    this.tag = void 0
                }, t.toString = function () {
                    return function (e) {
                        for (var t = e.getTag(), n = t.length, r = "", o = 0; o < n; o++) {
                            var i = A(o);
                            if (void 0 !== i) {
                                var a = e.names.get(i), s = t.getGroup(o);
                                if (void 0 !== a && 0 !== s.length) {
                                    var l = y + ".g" + o + '[id="' + i + '"]', c = "";
                                    void 0 !== a && a.forEach((function (e) {
                                        e.length > 0 && (c += e + ",")
                                    })), r += "" + s + l + '{content:"' + c + '"}/*!sc*/\n'
                                }
                            }
                        }
                        return r
                    }(this)
                }, e
            }(), H = function (e, t) {
                for (var n = t.length; n;) e = 33 * e ^ t.charCodeAt(--n);
                return e
            }, W = function (e) {
                return H(5381, e)
            };
        var Y = /^\s*\/\/.*$/gm;

        function V(e) {
            var t, n, r, o = void 0 === e ? g : e, i = o.options, s = void 0 === i ? g : i, l = o.plugins,
                c = void 0 === l ? h : l, u = new a.a(s), f = [], p = function (e) {
                    function t(t) {
                        if (t) try {
                            e(t + "}")
                        } catch (e) {
                        }
                    }

                    return function (n, r, o, i, a, s, l, c, u, f) {
                        switch (n) {
                            case 1:
                                if (0 === u && 64 === r.charCodeAt(0)) return e(r + ";"), "";
                                break;
                            case 2:
                                if (0 === c) return r + "/*|*/";
                                break;
                            case 3:
                                switch (c) {
                                    case 102:
                                    case 112:
                                        return e(o[0] + r), "";
                                    default:
                                        return r + (0 === f ? "/*|*/" : "")
                                }
                            case-2:
                                r.split("/*|*/}").forEach(t)
                        }
                    }
                }((function (e) {
                    f.push(e)
                })), d = function (e, r, o) {
                    return r > 0 && -1 !== o.slice(0, r).indexOf(n) && o.slice(r - n.length, r) !== n ? "." + t : e
                };

            function m(e, o, i, a) {
                void 0 === a && (a = "&");
                var s = e.replace(Y, ""), l = o && i ? i + " " + o + " { " + s + " }" : s;
                return t = a, n = o, r = new RegExp("\\" + n + "\\b", "g"), u(i || !o ? "" : o, l)
            }

            return u.use([].concat(c, [function (e, t, o) {
                2 === e && o.length && o[0].lastIndexOf(n) > 0 && (o[0] = o[0].replace(r, d))
            }, p, function (e) {
                if (-2 === e) {
                    var t = f;
                    return f = [], t
                }
            }])), m.hash = c.length ? c.reduce((function (e, t) {
                return t.name || O(15), H(e, t.name)
            }), 5381).toString() : "", m
        }

        var q = i.a.createContext(), X = (q.Consumer, i.a.createContext()), $ = (X.Consumer, new U), K = V();

        function Q() {
            return Object(o.useContext)(q) || $
        }

        function Z() {
            return Object(o.useContext)(X) || K
        }

        var G = function () {
            function e(e, t) {
                var n = this;
                this.inject = function (e) {
                    e.hasNameForId(n.id, n.name) || e.insertRules(n.id, n.name, K.apply(void 0, n.stringifyArgs))
                }, this.toString = function () {
                    return O(12, String(n.name))
                }, this.name = e, this.id = "sc-keyframes-" + e, this.stringifyArgs = t
            }

            return e.prototype.getName = function () {
                return this.name
            }, e
        }(), J = /([A-Z])/g, ee = /^ms-/;

        function te(e) {
            return e.replace(J, "-$1").toLowerCase().replace(ee, "-ms-")
        }

        var ne = function (e) {
            return null == e || !1 === e || "" === e
        }, re = function e(t, n) {
            var r = [];
            return Object.keys(t).forEach((function (n) {
                if (!ne(t[n])) {
                    if (d(t[n])) return r.push.apply(r, e(t[n], n)), r;
                    if (m(t[n])) return r.push(te(n) + ":", t[n], ";"), r;
                    r.push(te(n) + ": " + (o = n, (null == (i = t[n]) || "boolean" == typeof i || "" === i ? "" : "number" != typeof i || 0 === i || o in s.a ? String(i).trim() : i + "px") + ";"))
                }
                var o, i;
                return r
            })), n ? [n + " {"].concat(r, ["}"]) : r
        };

        function oe(e, t, n) {
            if (Array.isArray(e)) {
                for (var r, o = [], i = 0, a = e.length; i < a; i += 1) "" !== (r = oe(e[i], t, n)) && (Array.isArray(r) ? o.push.apply(o, r) : o.push(r));
                return o
            }
            return ne(e) ? "" : v(e) ? "." + e.styledComponentId : m(e) ? "function" != typeof (s = e) || s.prototype && s.prototype.isReactComponent || !t ? e : oe(e(t), t, n) : e instanceof G ? n ? (e.inject(n), e.getName()) : e : d(e) ? re(e) : e.toString();
            var s
        }

        function ie(e) {
            for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
            return m(e) || d(e) ? oe(p(h, [e].concat(n))) : 0 === n.length && 1 === e.length && "string" == typeof e[0] ? e : oe(p(e, n))
        }

        var ae = function (e) {
            return "function" == typeof e || "object" == typeof e && null !== e && !Array.isArray(e)
        }, se = function (e) {
            return "__proto__" !== e && "constructor" !== e && "prototype" !== e
        };

        function le(e, t, n) {
            var r = e[n];
            ae(t) && ae(r) ? ce(r, t) : e[n] = t
        }

        function ce(e) {
            for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
            for (var o = 0, i = n; o < i.length; o++) {
                var a = i[o];
                if (ae(a)) for (var s in a) se(s) && le(e, a[s], s)
            }
            return e
        }

        var ue = /(a)(d)/gi, fe = function (e) {
            return String.fromCharCode(e + (e > 25 ? 39 : 97))
        };

        function pe(e) {
            var t, n = "";
            for (t = Math.abs(e); t > 52; t = t / 52 | 0) n = fe(t % 52) + n;
            return (fe(t % 52) + n).replace(ue, "$1-$2")
        }

        function de(e) {
            for (var t = 0; t < e.length; t += 1) {
                var n = e[t];
                if (m(n) && !v(n)) return !1
            }
            return !0
        }

        var he = function () {
            function e(e, t) {
                this.rules = e, this.staticRulesId = "", this.isStatic = de(e), this.componentId = t, this.baseHash = W(t), U.registerId(t)
            }

            return e.prototype.generateAndInjectStyles = function (e, t, n) {
                var r = this.componentId;
                if (this.isStatic && !n.hash) {
                    if (this.staticRulesId && t.hasNameForId(r, this.staticRulesId)) return this.staticRulesId;
                    var o = oe(this.rules, e, t).join(""), i = pe(H(this.baseHash, o.length) >>> 0);
                    if (!t.hasNameForId(r, i)) {
                        var a = n(o, "." + i, void 0, r);
                        t.insertRules(r, i, a)
                    }
                    return this.staticRulesId = i, i
                }
                for (var s = this.rules.length, l = H(this.baseHash, n.hash), c = "", u = 0; u < s; u++) {
                    var f = this.rules[u];
                    if ("string" == typeof f) c += f; else {
                        var p = oe(f, e, t), d = Array.isArray(p) ? p.join("") : p;
                        l = H(l, d + u), c += d
                    }
                }
                var h = pe(l >>> 0);
                if (!t.hasNameForId(r, h)) {
                    var g = n(c, "." + h, void 0, r);
                    t.insertRules(r, h, g)
                }
                return h
            }, e
        }(), ge = (new Set, function (e, t, n) {
            return void 0 === n && (n = g), e.theme !== n.theme && e.theme || t || n.theme
        }), me = /[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g, be = /(^-|-$)/g;

        function ve(e) {
            return e.replace(me, "-").replace(be, "")
        }

        function ye(e) {
            return "string" == typeof e && !0
        }

        var we = function (e) {
            return pe(W(e) >>> 0)
        };
        var xe = i.a.createContext();
        xe.Consumer;

        function ke(e) {
            var t = Object(o.useContext)(xe), n = Object(o.useMemo)((function () {
                return function (e, t) {
                    return e ? m(e) ? e(t) : Array.isArray(e) || "object" != typeof e ? O(8) : t ? f({}, t, {}, e) : e : O(14)
                }(e.theme, t)
            }), [e.theme, t]);
            return e.children ? i.a.createElement(xe.Provider, {value: n}, e.children) : null
        }

        var Oe = {};

        function Se(e, t, n) {
            var r = e.attrs, i = e.componentStyle, a = e.defaultProps, s = e.foldedComponentIds,
                c = e.shouldForwardProp, u = e.styledComponentId, p = e.target;
            Object(o.useDebugValue)(u);
            var d = function (e, t, n) {
                    void 0 === e && (e = g);
                    var r = f({}, t, {theme: e}), o = {};
                    return n.forEach((function (e) {
                        var t, n, i, a = e;
                        for (t in m(a) && (a = a(r)), a) r[t] = o[t] = "className" === t ? (n = o[t], i = a[t], n && i ? n + " " + i : n || i) : a[t]
                    })), [r, o]
                }(ge(t, Object(o.useContext)(xe), a) || g, t, r), h = d[0], b = d[1], v = function (e, t, n, r) {
                    var i = Q(), a = Z(),
                        s = e.isStatic && !t ? e.generateAndInjectStyles(g, i, a) : e.generateAndInjectStyles(n, i, a);
                    return Object(o.useDebugValue)(s), s
                }(i, r.length > 0, h), y = n, w = b.$as || t.$as || b.as || t.as || p, x = ye(w),
                k = b !== t ? f({}, t, {}, b) : t, O = c || x && l.a, S = {};
            for (var j in k) "$" !== j[0] && "as" !== j && ("forwardedAs" === j ? S.as = k[j] : O && !O(j, l.a) || (S[j] = k[j]));
            return t.style && b.style !== t.style && (S.style = f({}, t.style, {}, b.style)), S.className = Array.prototype.concat(s, u, v !== u ? v : null, t.className, b.className).filter(Boolean).join(" "), S.ref = y, Object(o.createElement)(w, S)
        }

        function je(e, t, n) {
            var r = v(e), o = !ye(e), a = t.displayName, s = void 0 === a ? function (e) {
                    return ye(e) ? "styled." + e : "Styled(" + b(e) + ")"
                }(e) : a, l = t.componentId, c = void 0 === l ? function (e, t) {
                    var n = "string" != typeof e ? "sc" : ve(e);
                    Oe[n] = (Oe[n] || 0) + 1;
                    var r = n + "-" + we(n + Oe[n]);
                    return t ? t + "-" + r : r
                }(t.displayName, t.parentComponentId) : l, p = t.attrs, d = void 0 === p ? h : p,
                g = t.displayName && t.componentId ? ve(t.displayName) + "-" + t.componentId : t.componentId || c,
                m = r && e.attrs ? Array.prototype.concat(e.attrs, d).filter(Boolean) : d, y = t.shouldForwardProp;
            r && e.shouldForwardProp && (y = y ? function (n, r) {
                return e.shouldForwardProp(n, r) && t.shouldForwardProp(n, r)
            } : e.shouldForwardProp);
            var w, x = new he(r ? e.componentStyle.rules.concat(n) : n, g), k = function (e, t) {
                return Se(w, e, t)
            };
            return k.displayName = s, (w = i.a.forwardRef(k)).attrs = m, w.componentStyle = x, w.displayName = s, w.shouldForwardProp = y, w.foldedComponentIds = r ? Array.prototype.concat(e.foldedComponentIds, e.styledComponentId) : h, w.styledComponentId = g, w.target = r ? e.target : e, w.withComponent = function (e) {
                var r = t.componentId, o = function (e, t) {
                    if (null == e) return {};
                    var n, r, o = {}, i = Object.keys(e);
                    for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || (o[n] = e[n]);
                    return o
                }(t, ["componentId"]), i = r && r + "-" + (ye(e) ? e : ve(b(e)));
                return je(e, f({}, o, {attrs: m, componentId: i}), n)
            }, Object.defineProperty(w, "defaultProps", {
                get: function () {
                    return this._foldedDefaultProps
                }, set: function (t) {
                    this._foldedDefaultProps = r ? ce({}, e.defaultProps, t) : t
                }
            }), w.toString = function () {
                return "." + w.styledComponentId
            }, o && u()(w, e, {
                attrs: !0,
                componentStyle: !0,
                displayName: !0,
                foldedComponentIds: !0,
                shouldForwardProp: !0,
                self: !0,
                styledComponentId: !0,
                target: !0,
                withComponent: !0
            }), w
        }

        var Ce = function (e) {
            return function e(t, n, o) {
                if (void 0 === o && (o = g), !Object(r.isValidElementType)(n)) return O(1, String(n));
                var i = function () {
                    return t(n, o, ie.apply(void 0, arguments))
                };
                return i.withConfig = function (r) {
                    return e(t, n, f({}, o, {}, r))
                }, i.attrs = function (r) {
                    return e(t, n, f({}, o, {attrs: Array.prototype.concat(o.attrs, r).filter(Boolean)}))
                }, i
            }(je, e)
        };
        ["a", "abbr", "address", "area", "article", "aside", "audio", "b", "base", "bdi", "bdo", "big", "blockquote", "body", "br", "button", "canvas", "caption", "cite", "code", "col", "colgroup", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "keygen", "label", "legend", "li", "link", "main", "map", "mark", "marquee", "menu", "menuitem", "meta", "meter", "nav", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "script", "section", "select", "small", "source", "span", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "textarea", "tfoot", "th", "thead", "time", "title", "tr", "track", "u", "ul", "var", "video", "wbr", "circle", "clipPath", "defs", "ellipse", "foreignObject", "g", "image", "line", "linearGradient", "marker", "mask", "path", "pattern", "polygon", "polyline", "radialGradient", "rect", "stop", "svg", "text", "tspan"].forEach((function (e) {
            Ce[e] = Ce(e)
        }));
        t.b = Ce
    }).call(this, n(12))
}, function (e, t, n) {
    "use strict";
    e.exports = n(23)
}, function (e, t, n) {
    "use strict";

    function r(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function o(e) {
        return (o = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    n.d(t, "b", (function () {
        return a
    })), n.d(t, "a", (function () {
        return i
    }));
    var i = function (e, t) {
        return null == t && (t = document), "object" === o(e) ? e : t.querySelector(e)
    }, a = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, n, o;
        return t = e, o = [{
            key: "initClass", value: function () {
                var e;
                this.uniqid = (e = 0, {
                    get: function () {
                        return e++
                    }
                })
            }
        }, {
            key: "extend", value: function (e) {
                for (var t = e, n = arguments.length, r = new Array(n > 1 ? n - 1 : 0), o = 1; o < n; o++) r[o - 1] = arguments[o];
                for (var i = 0, a = Array.from(r); i < a.length; i++) for (var s = a[i], l = 0, c = Object.keys(s || {}); l < c.length; l++) {
                    var u = c[l];
                    t[u] = s[u]
                }
                return t
            }
        }, {
            key: "clampRGB", value: function (e) {
                return e < 0 ? 0 : e > 255 ? 255 : e
            }
        }, {
            key: "copyAttributes", value: function (e, t, n) {
                return null == n && (n = {}), function () {
                    for (var r = [], o = 0, i = Array.from(e.attributes); o < i.length; o++) {
                        var a = i[o];
                        null != n.except && Array.from(n.except).includes(a.nodeName) || r.push(t.setAttribute(a.nodeName, a.nodeValue))
                    }
                    return r
                }()
            }
        }, {
            key: "dataArray", value: function (e) {
                return null == e && (e = 0), Caman.NodeJS || null != window.Uint8Array ? new Uint8Array(e) : new Array(e)
            }
        }], (n = null) && r(t.prototype, n), o && r(t, o), e
    }();
    a.initClass()
}, function (e, t, n) {
    "use strict";
    n.d(t, "a", (function () {
        return r
    }));
    var r = new function () {
        var e, t, n, r;
        for (t = 0, n = (r = ["log", "info", "warn", "error"]).length; t < n; t++) this[e = r[t]] = function (e) {
            return function () {
                var t;
                if (t = 1 <= arguments.length ? [].slice.call(arguments, 0) : [], Caman.DEBUG) try {
                    return console[e].apply(console, t)
                } catch (n) {
                    return n, console[e](t)
                }
            }
        }(e);
        this.debug = this.log
    }
}, function (e, t, n) {
    !function (e) {
        "use strict";

        function t(e, t, n, r) {
            var o, i = !1, a = 0;

            function s() {
                o && clearTimeout(o)
            }

            function l() {
                for (var l = arguments.length, c = new Array(l), u = 0; u < l; u++) c[u] = arguments[u];
                var f = this, p = Date.now() - a;

                function d() {
                    a = Date.now(), n.apply(f, c)
                }

                function h() {
                    o = void 0
                }

                i || (r && !o && d(), s(), void 0 === r && p > e ? d() : !0 !== t && (o = setTimeout(r ? h : d, void 0 === r ? e - p : e)))
            }

            return "boolean" != typeof t && (r = n, n = t, t = void 0), l.cancel = function () {
                s(), i = !0
            }, l
        }

        e.debounce = function (e, n, r) {
            return void 0 === r ? t(e, n, !1) : t(e, r, !1 !== n)
        }, e.throttle = t, Object.defineProperty(e, "__esModule", {value: !0})
    }(t)
}, function (e, t, n) {
    "use strict";
    !function e() {
        if ("undefined" != typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" == typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE) {
            0;
            try {
                __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)
            } catch (e) {
                console.error(e)
            }
        }
    }(), e.exports = n(22)
}, function (e, t, n) {
    "use strict";
    e.exports = n(26)
}, function (e, t, n) {
    "use strict";

    function r(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var o = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, n, o;
        return t = e, o = [{
            key: "initClass", value: function () {
                this.items = {}
            }
        }, {
            key: "has", value: function (e) {
                return null != this.items[e]
            }
        }, {
            key: "get", value: function (e) {
                return this.items[e]
            }
        }, {
            key: "put", value: function (e, t) {
                return this.items[e] = t
            }
        }, {
            key: "execute", value: function (e, t) {
                var n = this;
                return setTimeout((function () {
                    return t.call(n.get(e), n.get(e))
                }), 0), this.get(e)
            }
        }, {
            key: "flush", value: function (e) {
                return null == e && (e = !1), e ? delete this.items[e] : this.items = {}
            }
        }], (n = null) && r(t.prototype, n), o && r(t, o), e
    }();
    o.initClass(), t.a = o
}, function (e, t, n) {
    "use strict";
    /*
object-assign
(c) Sindre Sorhus
@license MIT
*/
    var r = Object.getOwnPropertySymbols, o = Object.prototype.hasOwnProperty,
        i = Object.prototype.propertyIsEnumerable;

    function a(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 = {}, n = 0; n < 10; n++) t["_" + String.fromCharCode(n)] = n;
            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 n, s, l = a(e), c = 1; c < arguments.length; c++) {
            for (var u in n = Object(arguments[c])) o.call(n, u) && (l[u] = n[u]);
            if (r) {
                s = r(n);
                for (var f = 0; f < s.length; f++) i.call(n, s[f]) && (l[s[f]] = n[s[f]])
            }
        }
        return l
    }
}, function (e, t, n) {
    "use strict";
    var r = n(7), o = {
            childContextTypes: !0,
            contextType: !0,
            contextTypes: !0,
            defaultProps: !0,
            displayName: !0,
            getDefaultProps: !0,
            getDerivedStateFromError: !0,
            getDerivedStateFromProps: !0,
            mixins: !0,
            propTypes: !0,
            type: !0
        }, i = {name: !0, length: !0, prototype: !0, caller: !0, callee: !0, arguments: !0, arity: !0},
        a = {$$typeof: !0, compare: !0, defaultProps: !0, displayName: !0, propTypes: !0, type: !0}, s = {};

    function l(e) {
        return r.isMemo(e) ? a : s[e.$$typeof] || o
    }

    s[r.ForwardRef] = {$$typeof: !0, render: !0, defaultProps: !0, displayName: !0, propTypes: !0}, s[r.Memo] = a;
    var c = Object.defineProperty, u = Object.getOwnPropertyNames, f = Object.getOwnPropertySymbols,
        p = Object.getOwnPropertyDescriptor, d = Object.getPrototypeOf, h = Object.prototype;
    e.exports = function e(t, n, r) {
        if ("string" != typeof n) {
            if (h) {
                var o = d(n);
                o && o !== h && e(t, o, r)
            }
            var a = u(n);
            f && (a = a.concat(f(n)));
            for (var s = l(t), g = l(n), m = 0; m < a.length; ++m) {
                var b = a[m];
                if (!(i[b] || r && r[b] || g && g[b] || s && s[b])) {
                    var v = p(n, b);
                    try {
                        c(t, b, v)
                    } catch (e) {
                    }
                }
            }
        }
        return t
    }
}, function (e, t, n) {
    "use strict";
    var r = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|inert|itemProp|itemScope|itemType|itemID|itemRef|on|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,
        o = function (e) {
            var t = {};
            return function (n) {
                return void 0 === t[n] && (t[n] = e(n)), t[n]
            }
        }((function (e) {
            return r.test(e) || 111 === e.charCodeAt(0) && 110 === e.charCodeAt(1) && e.charCodeAt(2) < 91
        }));
    t.a = o
}, function (e, t) {
    var n, r, o = e.exports = {};

    function i() {
        throw new Error("setTimeout has not been defined")
    }

    function a() {
        throw new Error("clearTimeout has not been defined")
    }

    function s(e) {
        if (n === setTimeout) return setTimeout(e, 0);
        if ((n === i || !n) && setTimeout) return n = setTimeout, setTimeout(e, 0);
        try {
            return n(e, 0)
        } catch (t) {
            try {
                return n.call(null, e, 0)
            } catch (t) {
                return n.call(this, e, 0)
            }
        }
    }

    !function () {
        try {
            n = "function" == typeof setTimeout ? setTimeout : i
        } catch (e) {
            n = i
        }
        try {
            r = "function" == typeof clearTimeout ? clearTimeout : a
        } catch (e) {
            r = a
        }
    }();
    var l, c = [], u = !1, f = -1;

    function p() {
        u && l && (u = !1, l.length ? c = l.concat(c) : f = -1, c.length && d())
    }

    function d() {
        if (!u) {
            var e = s(p);
            u = !0;
            for (var t = c.length; t;) {
                for (l = c, c = []; ++f < t;) l && l[f].run();
                f = -1, t = c.length
            }
            l = null, u = !1, function (e) {
                if (r === clearTimeout) return clearTimeout(e);
                if ((r === a || !r) && clearTimeout) return r = clearTimeout, clearTimeout(e);
                try {
                    r(e)
                } catch (t) {
                    try {
                        return r.call(null, e)
                    } catch (t) {
                        return r.call(this, e)
                    }
                }
            }(e)
        }
    }

    function h(e, t) {
        this.fun = e, this.array = t
    }

    function g() {
    }

    o.nextTick = function (e) {
        var t = new Array(arguments.length - 1);
        if (arguments.length > 1) for (var n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];
        c.push(new h(e, t)), 1 !== c.length || u || s(d)
    }, h.prototype.run = function () {
        this.fun.apply(null, this.array)
    }, o.title = "browser", o.browser = !0, o.env = {}, o.argv = [], o.version = "", o.versions = {}, o.on = g, o.addListener = g, o.once = g, o.off = g, o.removeListener = g, o.removeAllListeners = g, o.emit = g, o.prependListener = g, o.prependOnceListener = g, o.listeners = function (e) {
        return []
    }, o.binding = function (e) {
        throw new Error("process.binding is not supported")
    }, o.cwd = function () {
        return "/"
    }, o.chdir = function (e) {
        throw new Error("process.chdir is not supported")
    }, o.umask = function () {
        return 0
    }
}, function (e, t) {
    var n;
    n = function () {
        return this
    }();
    try {
        n = n || new Function("return this")()
    } catch (e) {
        "object" == typeof window && (n = window)
    }
    e.exports = n
}, function (e, t) {
    e.exports = function (e, t, n, r) {
        var o = n ? n.call(r, e, t) : void 0;
        if (void 0 !== o) return !!o;
        if (e === t) return !0;
        if ("object" != typeof e || !e || "object" != typeof t || !t) return !1;
        var i = Object.keys(e), a = Object.keys(t);
        if (i.length !== a.length) return !1;
        for (var s = Object.prototype.hasOwnProperty.bind(t), l = 0; l < i.length; l++) {
            var c = i[l];
            if (!s(c)) return !1;
            var u = e[c], f = t[c];
            if (!1 === (o = n ? n.call(r, u, f, c) : void 0) || void 0 === o && u !== f) return !1
        }
        return !0
    }
}, function (e, t, n) {
    "use strict";
    t.a = function (e) {
        function t(e, t, r) {
            var o = t.trim().split(h);
            t = o;
            var i = o.length, a = e.length;
            switch (a) {
                case 0:
                case 1:
                    var s = 0;
                    for (e = 0 === a ? "" : e[0] + " "; s < i; ++s) t[s] = n(e, t[s], r).trim();
                    break;
                default:
                    var l = s = 0;
                    for (t = []; s < i; ++s) for (var c = 0; c < a; ++c) t[l++] = n(e[c] + " ", o[s], r).trim()
            }
            return t
        }

        function n(e, t, n) {
            var r = t.charCodeAt(0);
            switch (33 > r && (r = (t = t.trim()).charCodeAt(0)), r) {
                case 38:
                    return t.replace(g, "$1" + e.trim());
                case 58:
                    return e.trim() + t.replace(g, "$1" + e.trim());
                default:
                    if (0 < 1 * n && 0 < t.indexOf("\f")) return t.replace(g, (58 === e.charCodeAt(0) ? "" : "$1") + e.trim())
            }
            return e + t
        }

        function r(e, t, n, i) {
            var a = e + ";", s = 2 * t + 3 * n + 4 * i;
            if (944 === s) {
                e = a.indexOf(":", 9) + 1;
                var l = a.substring(e, a.length - 1).trim();
                return l = a.substring(0, e).trim() + l + ";", 1 === P || 2 === P && o(l, 1) ? "-webkit-" + l + l : l
            }
            if (0 === P || 2 === P && !o(a, 1)) return a;
            switch (s) {
                case 1015:
                    return 97 === a.charCodeAt(10) ? "-webkit-" + a + a : a;
                case 951:
                    return 116 === a.charCodeAt(3) ? "-webkit-" + a + a : a;
                case 963:
                    return 110 === a.charCodeAt(5) ? "-webkit-" + a + a : a;
                case 1009:
                    if (100 !== a.charCodeAt(4)) break;
                case 969:
                case 942:
                    return "-webkit-" + a + a;
                case 978:
                    return "-webkit-" + a + "-moz-" + a + a;
                case 1019:
                case 983:
                    return "-webkit-" + a + "-moz-" + a + "-ms-" + a + a;
                case 883:
                    if (45 === a.charCodeAt(8)) return "-webkit-" + a + a;
                    if (0 < a.indexOf("image-set(", 11)) return a.replace(j, "$1-webkit-$2") + a;
                    break;
                case 932:
                    if (45 === a.charCodeAt(4)) switch (a.charCodeAt(5)) {
                        case 103:
                            return "-webkit-box-" + a.replace("-grow", "") + "-webkit-" + a + "-ms-" + a.replace("grow", "positive") + a;
                        case 115:
                            return "-webkit-" + a + "-ms-" + a.replace("shrink", "negative") + a;
                        case 98:
                            return "-webkit-" + a + "-ms-" + a.replace("basis", "preferred-size") + a
                    }
                    return "-webkit-" + a + "-ms-" + a + a;
                case 964:
                    return "-webkit-" + a + "-ms-flex-" + a + a;
                case 1023:
                    if (99 !== a.charCodeAt(8)) break;
                    return "-webkit-box-pack" + (l = a.substring(a.indexOf(":", 15)).replace("flex-", "").replace("space-between", "justify")) + "-webkit-" + a + "-ms-flex-pack" + l + a;
                case 1005:
                    return p.test(a) ? a.replace(f, ":-webkit-") + a.replace(f, ":-moz-") + a : a;
                case 1e3:
                    switch (t = (l = a.substring(13).trim()).indexOf("-") + 1, l.charCodeAt(0) + l.charCodeAt(t)) {
                        case 226:
                            l = a.replace(y, "tb");
                            break;
                        case 232:
                            l = a.replace(y, "tb-rl");
                            break;
                        case 220:
                            l = a.replace(y, "lr");
                            break;
                        default:
                            return a
                    }
                    return "-webkit-" + a + "-ms-" + l + a;
                case 1017:
                    if (-1 === a.indexOf("sticky", 9)) break;
                case 975:
                    switch (t = (a = e).length - 10, s = (l = (33 === a.charCodeAt(t) ? a.substring(0, t) : a).substring(e.indexOf(":", 7) + 1).trim()).charCodeAt(0) + (0 | l.charCodeAt(7))) {
                        case 203:
                            if (111 > l.charCodeAt(8)) break;
                        case 115:
                            a = a.replace(l, "-webkit-" + l) + ";" + a;
                            break;
                        case 207:
                        case 102:
                            a = a.replace(l, "-webkit-" + (102 < s ? "inline-" : "") + "box") + ";" + a.replace(l, "-webkit-" + l) + ";" + a.replace(l, "-ms-" + l + "box") + ";" + a
                    }
                    return a + ";";
                case 938:
                    if (45 === a.charCodeAt(5)) switch (a.charCodeAt(6)) {
                        case 105:
                            return l = a.replace("-items", ""), "-webkit-" + a + "-webkit-box-" + l + "-ms-flex-" + l + a;
                        case 115:
                            return "-webkit-" + a + "-ms-flex-item-" + a.replace(k, "") + a;
                        default:
                            return "-webkit-" + a + "-ms-flex-line-pack" + a.replace("align-content", "").replace(k, "") + a
                    }
                    break;
                case 973:
                case 989:
                    if (45 !== a.charCodeAt(3) || 122 === a.charCodeAt(4)) break;
                case 931:
                case 953:
                    if (!0 === S.test(e)) return 115 === (l = e.substring(e.indexOf(":") + 1)).charCodeAt(0) ? r(e.replace("stretch", "fill-available"), t, n, i).replace(":fill-available", ":stretch") : a.replace(l, "-webkit-" + l) + a.replace(l, "-moz-" + l.replace("fill-", "")) + a;
                    break;
                case 962:
                    if (a = "-webkit-" + a + (102 === a.charCodeAt(5) ? "-ms-" + a : "") + a, 211 === n + i && 105 === a.charCodeAt(13) && 0 < a.indexOf("transform", 10)) return a.substring(0, a.indexOf(";", 27) + 1).replace(d, "$1-webkit-$2") + a
            }
            return a
        }

        function o(e, t) {
            var n = e.indexOf(1 === t ? ":" : "{"), r = e.substring(0, 3 !== t ? n : 10);
            return n = e.substring(n + 1, e.length - 1), A(2 !== t ? r : r.replace(O, "$1"), n, t)
        }

        function i(e, t) {
            var n = r(t, t.charCodeAt(0), t.charCodeAt(1), t.charCodeAt(2));
            return n !== t + ";" ? n.replace(x, " or ($1)").substring(4) : "(" + t + ")"
        }

        function a(e, t, n, r, o, i, a, s, c, u) {
            for (var f, p = 0, d = t; p < M; ++p) switch (f = D[p].call(l, e, d, n, r, o, i, a, s, c, u)) {
                case void 0:
                case!1:
                case!0:
                case null:
                    break;
                default:
                    d = f
            }
            if (d !== t) return d
        }

        function s(e) {
            return void 0 !== (e = e.prefix) && (A = null, e ? "function" != typeof e ? P = 1 : (P = 2, A = e) : P = 0), s
        }

        function l(e, n) {
            var s = e;
            if (33 > s.charCodeAt(0) && (s = s.trim()), s = [s], 0 < M) {
                var l = a(-1, n, s, s, _, C, 0, 0, 0, 0);
                void 0 !== l && "string" == typeof l && (n = l)
            }
            var f = function e(n, s, l, f, p) {
                for (var d, h, g, y, x, k = 0, O = 0, S = 0, j = 0, D = 0, A = 0, I = g = d = 0, z = 0, L = 0, B = 0, N = 0, F = l.length, U = F - 1, H = "", W = "", Y = "", V = ""; z < F;) {
                    if (h = l.charCodeAt(z), z === U && 0 !== O + j + S + k && (0 !== O && (h = 47 === O ? 10 : 47), j = S = k = 0, F++, U++), 0 === O + j + S + k) {
                        if (z === U && (0 < L && (H = H.replace(u, "")), 0 < H.trim().length)) {
                            switch (h) {
                                case 32:
                                case 9:
                                case 59:
                                case 13:
                                case 10:
                                    break;
                                default:
                                    H += l.charAt(z)
                            }
                            h = 59
                        }
                        switch (h) {
                            case 123:
                                for (d = (H = H.trim()).charCodeAt(0), g = 1, N = ++z; z < F;) {
                                    switch (h = l.charCodeAt(z)) {
                                        case 123:
                                            g++;
                                            break;
                                        case 125:
                                            g--;
                                            break;
                                        case 47:
                                            switch (h = l.charCodeAt(z + 1)) {
                                                case 42:
                                                case 47:
                                                    e:{
                                                        for (I = z + 1; I < U; ++I) switch (l.charCodeAt(I)) {
                                                            case 47:
                                                                if (42 === h && 42 === l.charCodeAt(I - 1) && z + 2 !== I) {
                                                                    z = I + 1;
                                                                    break e
                                                                }
                                                                break;
                                                            case 10:
                                                                if (47 === h) {
                                                                    z = I + 1;
                                                                    break e
                                                                }
                                                        }
                                                        z = I
                                                    }
                                            }
                                            break;
                                        case 91:
                                            h++;
                                        case 40:
                                            h++;
                                        case 34:
                                        case 39:
                                            for (; z++ < U && l.charCodeAt(z) !== h;) ;
                                    }
                                    if (0 === g) break;
                                    z++
                                }
                                switch (g = l.substring(N, z), 0 === d && (d = (H = H.replace(c, "").trim()).charCodeAt(0)), d) {
                                    case 64:
                                        switch (0 < L && (H = H.replace(u, "")), h = H.charCodeAt(1)) {
                                            case 100:
                                            case 109:
                                            case 115:
                                            case 45:
                                                L = s;
                                                break;
                                            default:
                                                L = R
                                        }
                                        if (N = (g = e(s, L, g, h, p + 1)).length, 0 < M && (x = a(3, g, L = t(R, H, B), s, _, C, N, h, p, f), H = L.join(""), void 0 !== x && 0 === (N = (g = x.trim()).length) && (h = 0, g = "")), 0 < N) switch (h) {
                                            case 115:
                                                H = H.replace(w, i);
                                            case 100:
                                            case 109:
                                            case 45:
                                                g = H + "{" + g + "}";
                                                break;
                                            case 107:
                                                g = (H = H.replace(m, "$1 $2")) + "{" + g + "}", g = 1 === P || 2 === P && o("@" + g, 3) ? "@-webkit-" + g + "@" + g : "@" + g;
                                                break;
                                            default:
                                                g = H + g, 112 === f && (W += g, g = "")
                                        } else g = "";
                                        break;
                                    default:
                                        g = e(s, t(s, H, B), g, f, p + 1)
                                }
                                Y += g, g = B = L = I = d = 0, H = "", h = l.charCodeAt(++z);
                                break;
                            case 125:
                            case 59:
                                if (1 < (N = (H = (0 < L ? H.replace(u, "") : H).trim()).length)) switch (0 === I && (d = H.charCodeAt(0), 45 === d || 96 < d && 123 > d) && (N = (H = H.replace(" ", ":")).length), 0 < M && void 0 !== (x = a(1, H, s, n, _, C, W.length, f, p, f)) && 0 === (N = (H = x.trim()).length) && (H = "\0\0"), d = H.charCodeAt(0), h = H.charCodeAt(1), d) {
                                    case 0:
                                        break;
                                    case 64:
                                        if (105 === h || 99 === h) {
                                            V += H + l.charAt(z);
                                            break
                                        }
                                    default:
                                        58 !== H.charCodeAt(N - 1) && (W += r(H, d, h, H.charCodeAt(2)))
                                }
                                B = L = I = d = 0, H = "", h = l.charCodeAt(++z)
                        }
                    }
                    switch (h) {
                        case 13:
                        case 10:
                            47 === O ? O = 0 : 0 === 1 + d && 107 !== f && 0 < H.length && (L = 1, H += "\0"), 0 < M * T && a(0, H, s, n, _, C, W.length, f, p, f), C = 1, _++;
                            break;
                        case 59:
                        case 125:
                            if (0 === O + j + S + k) {
                                C++;
                                break
                            }
                        default:
                            switch (C++, y = l.charAt(z), h) {
                                case 9:
                                case 32:
                                    if (0 === j + k + O) switch (D) {
                                        case 44:
                                        case 58:
                                        case 9:
                                        case 32:
                                            y = "";
                                            break;
                                        default:
                                            32 !== h && (y = " ")
                                    }
                                    break;
                                case 0:
                                    y = "\\0";
                                    break;
                                case 12:
                                    y = "\\f";
                                    break;
                                case 11:
                                    y = "\\v";
                                    break;
                                case 38:
                                    0 === j + O + k && (L = B = 1, y = "\f" + y);
                                    break;
                                case 108:
                                    if (0 === j + O + k + E && 0 < I) switch (z - I) {
                                        case 2:
                                            112 === D && 58 === l.charCodeAt(z - 3) && (E = D);
                                        case 8:
                                            111 === A && (E = A)
                                    }
                                    break;
                                case 58:
                                    0 === j + O + k && (I = z);
                                    break;
                                case 44:
                                    0 === O + S + j + k && (L = 1, y += "\r");
                                    break;
                                case 34:
                                case 39:
                                    0 === O && (j = j === h ? 0 : 0 === j ? h : j);
                                    break;
                                case 91:
                                    0 === j + O + S && k++;
                                    break;
                                case 93:
                                    0 === j + O + S && k--;
                                    break;
                                case 41:
                                    0 === j + O + k && S--;
                                    break;
                                case 40:
                                    if (0 === j + O + k) {
                                        if (0 === d) switch (2 * D + 3 * A) {
                                            case 533:
                                                break;
                                            default:
                                                d = 1
                                        }
                                        S++
                                    }
                                    break;
                                case 64:
                                    0 === O + S + j + k + I + g && (g = 1);
                                    break;
                                case 42:
                                case 47:
                                    if (!(0 < j + k + S)) switch (O) {
                                        case 0:
                                            switch (2 * h + 3 * l.charCodeAt(z + 1)) {
                                                case 235:
                                                    O = 47;
                                                    break;
                                                case 220:
                                                    N = z, O = 42
                                            }
                                            break;
                                        case 42:
                                            47 === h && 42 === D && N + 2 !== z && (33 === l.charCodeAt(N + 2) && (W += l.substring(N, z + 1)), y = "", O = 0)
                                    }
                            }
                            0 === O && (H += y)
                    }
                    A = D, D = h, z++
                }
                if (0 < (N = W.length)) {
                    if (L = s, 0 < M && (void 0 !== (x = a(2, W, L, n, _, C, N, f, p, f)) && 0 === (W = x).length)) return V + W + Y;
                    if (W = L.join(",") + "{" + W + "}", 0 != P * E) {
                        switch (2 !== P || o(W, 2) || (E = 0), E) {
                            case 111:
                                W = W.replace(v, ":-moz-$1") + W;
                                break;
                            case 112:
                                W = W.replace(b, "::-webkit-input-$1") + W.replace(b, "::-moz-$1") + W.replace(b, ":-ms-input-$1") + W
                        }
                        E = 0
                    }
                }
                return V + W + Y
            }(R, s, n, 0, 0);
            return 0 < M && (void 0 !== (l = a(-2, f, s, s, _, C, f.length, 0, 0, 0)) && (f = l)), "", E = 0, C = _ = 1, f
        }

        var c = /^\0+/g, u = /[\0\r\f]/g, f = /: */g, p = /zoo|gra/, d = /([,: ])(transform)/g, h = /,\r+?/g,
            g = /([\t\r\n ])*\f?&/g, m = /@(k\w+)\s*(\S*)\s*/, b = /::(place)/g, v = /:(read-only)/g,
            y = /[svh]\w+-[tblr]{2}/, w = /\(\s*(.*)\s*\)/g, x = /([\s\S]*?);/g, k = /-self|flex-/g,
            O = /[^]*?(:[rp][el]a[\w-]+)[^]*/, S = /stretch|:\s*\w+\-(?:conte|avail)/, j = /([^-])(image-set\()/, C = 1,
            _ = 1, E = 0, P = 1, R = [], D = [], M = 0, A = null, T = 0;
        return l.use = function e(t) {
            switch (t) {
                case void 0:
                case null:
                    M = D.length = 0;
                    break;
                default:
                    if ("function" == typeof t) D[M++] = t; else if ("object" == typeof t) for (var n = 0, r = t.length; n < r; ++n) e(t[n]); else T = 0 | !!t
            }
            return e
        }, l.set = s, void 0 !== e && s(e), l
    }
}, function (e, t, n) {
    "use strict";
    t.a = {
        animationIterationCount: 1,
        borderImageOutset: 1,
        borderImageSlice: 1,
        borderImageWidth: 1,
        boxFlex: 1,
        boxFlexGroup: 1,
        boxOrdinalGroup: 1,
        columnCount: 1,
        columns: 1,
        flex: 1,
        flexGrow: 1,
        flexPositive: 1,
        flexShrink: 1,
        flexNegative: 1,
        flexOrder: 1,
        gridRow: 1,
        gridRowEnd: 1,
        gridRowSpan: 1,
        gridRowStart: 1,
        gridColumn: 1,
        gridColumnEnd: 1,
        gridColumnSpan: 1,
        gridColumnStart: 1,
        msGridRow: 1,
        msGridRowSpan: 1,
        msGridColumn: 1,
        msGridColumnSpan: 1,
        fontWeight: 1,
        lineHeight: 1,
        opacity: 1,
        order: 1,
        orphans: 1,
        tabSize: 1,
        widows: 1,
        zIndex: 1,
        zoom: 1,
        WebkitLineClamp: 1,
        fillOpacity: 1,
        floodOpacity: 1,
        stopOpacity: 1,
        strokeDasharray: 1,
        strokeDashoffset: 1,
        strokeMiterlimit: 1,
        strokeOpacity: 1,
        strokeWidth: 1
    }
}, function (module, exports, __webpack_require__) {
    (function (process, global) {
        var __WEBPACK_AMD_DEFINE_RESULT__;
        /*
 * [js-sha1]{@link https://github.com/emn178/js-sha1}
 *
 * @version 0.6.0
 * @author Chen, Yi-Cyuan [emn178@gmail.com]
 * @copyright Chen, Yi-Cyuan 2014-2017
 * @license MIT
 */
        !function () {
            "use strict";
            var root = "object" == typeof window ? window : {},
                NODE_JS = !root.JS_SHA1_NO_NODE_JS && "object" == typeof process && process.versions && process.versions.node;
            NODE_JS && (root = global);
            var COMMON_JS = !root.JS_SHA1_NO_COMMON_JS && "object" == typeof module && module.exports,
                AMD = __webpack_require__(28), HEX_CHARS = "0123456789abcdef".split(""),
                EXTRA = [-2147483648, 8388608, 32768, 128], SHIFT = [24, 16, 8, 0],
                OUTPUT_TYPES = ["hex", "array", "digest", "arrayBuffer"], blocks = [],
                createOutputMethod = function (e) {
                    return function (t) {
                        return new Sha1(!0).update(t)[e]()
                    }
                }, createMethod = function () {
                    var e = createOutputMethod("hex");
                    NODE_JS && (e = nodeWrap(e)), e.create = function () {
                        return new Sha1
                    }, e.update = function (t) {
                        return e.create().update(t)
                    };
                    for (var t = 0; t < OUTPUT_TYPES.length; ++t) {
                        var n = OUTPUT_TYPES[t];
                        e[n] = createOutputMethod(n)
                    }
                    return e
                }, nodeWrap = function (method) {
                    var crypto = eval("require('crypto')"), Buffer = eval("require('buffer').Buffer"),
                        nodeMethod = function (e) {
                            if ("string" == typeof e) return crypto.createHash("sha1").update(e, "utf8").digest("hex");
                            if (e.constructor === ArrayBuffer) e = new Uint8Array(e); else if (void 0 === e.length) return method(e);
                            return crypto.createHash("sha1").update(new Buffer(e)).digest("hex")
                        };
                    return nodeMethod
                };

            function Sha1(e) {
                e ? (blocks[0] = blocks[16] = blocks[1] = blocks[2] = blocks[3] = blocks[4] = blocks[5] = blocks[6] = blocks[7] = blocks[8] = blocks[9] = blocks[10] = blocks[11] = blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0, this.blocks = blocks) : this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], this.h0 = 1732584193, this.h1 = 4023233417, this.h2 = 2562383102, this.h3 = 271733878, this.h4 = 3285377520, this.block = this.start = this.bytes = this.hBytes = 0, this.finalized = this.hashed = !1, this.first = !0
            }

            Sha1.prototype.update = function (e) {
                if (!this.finalized) {
                    var t = "string" != typeof e;
                    t && e.constructor === root.ArrayBuffer && (e = new Uint8Array(e));
                    for (var n, r, o = 0, i = e.length || 0, a = this.blocks; o < i;) {
                        if (this.hashed && (this.hashed = !1, a[0] = this.block, a[16] = a[1] = a[2] = a[3] = a[4] = a[5] = a[6] = a[7] = a[8] = a[9] = a[10] = a[11] = a[12] = a[13] = a[14] = a[15] = 0), t) for (r = this.start; o < i && r < 64; ++o) a[r >> 2] |= e[o] << SHIFT[3 & r++]; else for (r = this.start; o < i && r < 64; ++o) (n = e.charCodeAt(o)) < 128 ? a[r >> 2] |= n << SHIFT[3 & r++] : n < 2048 ? (a[r >> 2] |= (192 | n >> 6) << SHIFT[3 & r++], a[r >> 2] |= (128 | 63 & n) << SHIFT[3 & r++]) : n < 55296 || n >= 57344 ? (a[r >> 2] |= (224 | n >> 12) << SHIFT[3 & r++], a[r >> 2] |= (128 | n >> 6 & 63) << SHIFT[3 & r++], a[r >> 2] |= (128 | 63 & n) << SHIFT[3 & r++]) : (n = 65536 + ((1023 & n) << 10 | 1023 & e.charCodeAt(++o)), a[r >> 2] |= (240 | n >> 18) << SHIFT[3 & r++], a[r >> 2] |= (128 | n >> 12 & 63) << SHIFT[3 & r++], a[r >> 2] |= (128 | n >> 6 & 63) << SHIFT[3 & r++], a[r >> 2] |= (128 | 63 & n) << SHIFT[3 & r++]);
                        this.lastByteIndex = r, this.bytes += r - this.start, r >= 64 ? (this.block = a[16], this.start = r - 64, this.hash(), this.hashed = !0) : this.start = r
                    }
                    return this.bytes > 4294967295 && (this.hBytes += this.bytes / 4294967296 << 0, this.bytes = this.bytes % 4294967296), this
                }
            }, Sha1.prototype.finalize = function () {
                if (!this.finalized) {
                    this.finalized = !0;
                    var e = this.blocks, t = this.lastByteIndex;
                    e[16] = this.block, e[t >> 2] |= EXTRA[3 & t], this.block = e[16], t >= 56 && (this.hashed || this.hash(), e[0] = this.block, e[16] = e[1] = e[2] = e[3] = e[4] = e[5] = e[6] = e[7] = e[8] = e[9] = e[10] = e[11] = e[12] = e[13] = e[14] = e[15] = 0), e[14] = this.hBytes << 3 | this.bytes >>> 29, e[15] = this.bytes << 3, this.hash()
                }
            }, Sha1.prototype.hash = function () {
                var e, t, n = this.h0, r = this.h1, o = this.h2, i = this.h3, a = this.h4, s = this.blocks;
                for (e = 16; e < 80; ++e) t = s[e - 3] ^ s[e - 8] ^ s[e - 14] ^ s[e - 16], s[e] = t << 1 | t >>> 31;
                for (e = 0; e < 20; e += 5) n = (t = (r = (t = (o = (t = (i = (t = (a = (t = n << 5 | n >>> 27) + (r & o | ~r & i) + a + 1518500249 + s[e] << 0) << 5 | a >>> 27) + (n & (r = r << 30 | r >>> 2) | ~n & o) + i + 1518500249 + s[e + 1] << 0) << 5 | i >>> 27) + (a & (n = n << 30 | n >>> 2) | ~a & r) + o + 1518500249 + s[e + 2] << 0) << 5 | o >>> 27) + (i & (a = a << 30 | a >>> 2) | ~i & n) + r + 1518500249 + s[e + 3] << 0) << 5 | r >>> 27) + (o & (i = i << 30 | i >>> 2) | ~o & a) + n + 1518500249 + s[e + 4] << 0, o = o << 30 | o >>> 2;
                for (; e < 40; e += 5) n = (t = (r = (t = (o = (t = (i = (t = (a = (t = n << 5 | n >>> 27) + (r ^ o ^ i) + a + 1859775393 + s[e] << 0) << 5 | a >>> 27) + (n ^ (r = r << 30 | r >>> 2) ^ o) + i + 1859775393 + s[e + 1] << 0) << 5 | i >>> 27) + (a ^ (n = n << 30 | n >>> 2) ^ r) + o + 1859775393 + s[e + 2] << 0) << 5 | o >>> 27) + (i ^ (a = a << 30 | a >>> 2) ^ n) + r + 1859775393 + s[e + 3] << 0) << 5 | r >>> 27) + (o ^ (i = i << 30 | i >>> 2) ^ a) + n + 1859775393 + s[e + 4] << 0, o = o << 30 | o >>> 2;
                for (; e < 60; e += 5) n = (t = (r = (t = (o = (t = (i = (t = (a = (t = n << 5 | n >>> 27) + (r & o | r & i | o & i) + a - 1894007588 + s[e] << 0) << 5 | a >>> 27) + (n & (r = r << 30 | r >>> 2) | n & o | r & o) + i - 1894007588 + s[e + 1] << 0) << 5 | i >>> 27) + (a & (n = n << 30 | n >>> 2) | a & r | n & r) + o - 1894007588 + s[e + 2] << 0) << 5 | o >>> 27) + (i & (a = a << 30 | a >>> 2) | i & n | a & n) + r - 1894007588 + s[e + 3] << 0) << 5 | r >>> 27) + (o & (i = i << 30 | i >>> 2) | o & a | i & a) + n - 1894007588 + s[e + 4] << 0, o = o << 30 | o >>> 2;
                for (; e < 80; e += 5) n = (t = (r = (t = (o = (t = (i = (t = (a = (t = n << 5 | n >>> 27) + (r ^ o ^ i) + a - 899497514 + s[e] << 0) << 5 | a >>> 27) + (n ^ (r = r << 30 | r >>> 2) ^ o) + i - 899497514 + s[e + 1] << 0) << 5 | i >>> 27) + (a ^ (n = n << 30 | n >>> 2) ^ r) + o - 899497514 + s[e + 2] << 0) << 5 | o >>> 27) + (i ^ (a = a << 30 | a >>> 2) ^ n) + r - 899497514 + s[e + 3] << 0) << 5 | r >>> 27) + (o ^ (i = i << 30 | i >>> 2) ^ a) + n - 899497514 + s[e + 4] << 0, o = o << 30 | o >>> 2;
                this.h0 = this.h0 + n << 0, this.h1 = this.h1 + r << 0, this.h2 = this.h2 + o << 0, this.h3 = this.h3 + i << 0, this.h4 = this.h4 + a << 0
            }, Sha1.prototype.hex = function () {
                this.finalize();
                var e = this.h0, t = this.h1, n = this.h2, r = this.h3, o = this.h4;
                return HEX_CHARS[e >> 28 & 15] + HEX_CHARS[e >> 24 & 15] + HEX_CHARS[e >> 20 & 15] + HEX_CHARS[e >> 16 & 15] + HEX_CHARS[e >> 12 & 15] + HEX_CHARS[e >> 8 & 15] + HEX_CHARS[e >> 4 & 15] + HEX_CHARS[15 & e] + HEX_CHARS[t >> 28 & 15] + HEX_CHARS[t >> 24 & 15] + HEX_CHARS[t >> 20 & 15] + HEX_CHARS[t >> 16 & 15] + HEX_CHARS[t >> 12 & 15] + HEX_CHARS[t >> 8 & 15] + HEX_CHARS[t >> 4 & 15] + HEX_CHARS[15 & t] + HEX_CHARS[n >> 28 & 15] + HEX_CHARS[n >> 24 & 15] + HEX_CHARS[n >> 20 & 15] + HEX_CHARS[n >> 16 & 15] + HEX_CHARS[n >> 12 & 15] + HEX_CHARS[n >> 8 & 15] + HEX_CHARS[n >> 4 & 15] + HEX_CHARS[15 & n] + HEX_CHARS[r >> 28 & 15] + HEX_CHARS[r >> 24 & 15] + HEX_CHARS[r >> 20 & 15] + HEX_CHARS[r >> 16 & 15] + HEX_CHARS[r >> 12 & 15] + HEX_CHARS[r >> 8 & 15] + HEX_CHARS[r >> 4 & 15] + HEX_CHARS[15 & r] + HEX_CHARS[o >> 28 & 15] + HEX_CHARS[o >> 24 & 15] + HEX_CHARS[o >> 20 & 15] + HEX_CHARS[o >> 16 & 15] + HEX_CHARS[o >> 12 & 15] + HEX_CHARS[o >> 8 & 15] + HEX_CHARS[o >> 4 & 15] + HEX_CHARS[15 & o]
            }, Sha1.prototype.toString = Sha1.prototype.hex, Sha1.prototype.digest = function () {
                this.finalize();
                var e = this.h0, t = this.h1, n = this.h2, r = this.h3, o = this.h4;
                return [e >> 24 & 255, e >> 16 & 255, e >> 8 & 255, 255 & e, t >> 24 & 255, t >> 16 & 255, t >> 8 & 255, 255 & t, n >> 24 & 255, n >> 16 & 255, n >> 8 & 255, 255 & n, r >> 24 & 255, r >> 16 & 255, r >> 8 & 255, 255 & r, o >> 24 & 255, o >> 16 & 255, o >> 8 & 255, 255 & o]
            }, Sha1.prototype.array = Sha1.prototype.digest, Sha1.prototype.arrayBuffer = function () {
                this.finalize();
                var e = new ArrayBuffer(20), t = new DataView(e);
                return t.setUint32(0, this.h0), t.setUint32(4, this.h1), t.setUint32(8, this.h2), t.setUint32(12, this.h3), t.setUint32(16, this.h4), e
            };
            var exports = createMethod();
            COMMON_JS ? module.exports = exports : (root.sha1 = exports, AMD && (__WEBPACK_AMD_DEFINE_RESULT__ = function () {
                return exports
            }.call(exports, __webpack_require__, exports, module), void 0 === __WEBPACK_AMD_DEFINE_RESULT__ || (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)))
        }()
    }).call(this, __webpack_require__(12), __webpack_require__(13))
}, function (e, t, n) {
    /*!
 * Cropper.js v1.5.7
 * https://fengyuanchen.github.io/cropperjs
 *
 * Copyright 2015-present Chen Fengyuan
 * Released under the MIT license
 *
 * Date: 2020-05-23T05:23:00.081Z
 */
    e.exports = function () {
        "use strict";

        function e(t) {
            return (e = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
                return typeof e
            } : function (e) {
                return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
            })(t)
        }

        function t(e, t) {
            if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
        }

        function n(e, t) {
            for (var n = 0; n < t.length; n++) {
                var r = t[n];
                r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
            }
        }

        function r(e, t, n) {
            return t in e ? Object.defineProperty(e, t, {
                value: n,
                enumerable: !0,
                configurable: !0,
                writable: !0
            }) : e[t] = n, e
        }

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

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

        function a(e) {
            return function (e) {
                if (Array.isArray(e)) return s(e)
            }(e) || function (e) {
                if ("undefined" != typeof Symbol && Symbol.iterator in Object(e)) return Array.from(e)
            }(e) || function (e, t) {
                if (e) {
                    if ("string" == typeof e) return s(e, t);
                    var n = Object.prototype.toString.call(e).slice(8, -1);
                    return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? s(e, t) : void 0
                }
            }(e) || function () {
                throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
            }()
        }

        function s(e, t) {
            (null == t || t > e.length) && (t = e.length);
            for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
            return r
        }

        var l = "undefined" != typeof window && void 0 !== window.document, c = l ? window : {},
            u = !(!l || !c.document.documentElement) && "ontouchstart" in c.document.documentElement,
            f = !!l && "PointerEvent" in c, p = "".concat("cropper", "-crop"), d = "".concat("cropper", "-disabled"),
            h = "".concat("cropper", "-hidden"), g = "".concat("cropper", "-hide"),
            m = "".concat("cropper", "-invisible"), b = "".concat("cropper", "-modal"),
            v = "".concat("cropper", "-move"), y = "".concat("cropper", "Action"), w = "".concat("cropper", "Preview"),
            x = u ? "touchstart" : "mousedown", k = u ? "touchmove" : "mousemove",
            O = u ? "touchend touchcancel" : "mouseup", S = f ? "pointerdown" : x, j = f ? "pointermove" : k,
            C = f ? "pointerup pointercancel" : O, _ = /^e|w|s|n|se|sw|ne|nw|all|crop|move|zoom$/, E = /^data:/,
            P = /^data:image\/jpeg;base64,/, R = /^img|canvas$/i, D = {
                viewMode: 0,
                dragMode: "crop",
                initialAspectRatio: NaN,
                aspectRatio: NaN,
                data: null,
                preview: "",
                responsive: !0,
                restore: !0,
                checkCrossOrigin: !0,
                checkOrientation: !0,
                modal: !0,
                guides: !0,
                center: !0,
                highlight: !0,
                background: !0,
                autoCrop: !0,
                autoCropArea: .8,
                movable: !0,
                rotatable: !0,
                scalable: !0,
                zoomable: !0,
                zoomOnTouch: !0,
                zoomOnWheel: !0,
                wheelZoomRatio: .1,
                cropBoxMovable: !0,
                cropBoxResizable: !0,
                toggleDragModeOnDblclick: !0,
                minCanvasWidth: 0,
                minCanvasHeight: 0,
                minCropBoxWidth: 0,
                minCropBoxHeight: 0,
                minContainerWidth: 200,
                minContainerHeight: 100,
                ready: null,
                cropstart: null,
                cropmove: null,
                cropend: null,
                crop: null,
                zoom: null
            }, M = Number.isNaN || c.isNaN;

        function A(e) {
            return "number" == typeof e && !M(e)
        }

        var T = function (e) {
            return e > 0 && e < 1 / 0
        };

        function I(e) {
            return void 0 === e
        }

        function z(t) {
            return "object" === e(t) && null !== t
        }

        var L = Object.prototype.hasOwnProperty;

        function B(e) {
            if (!z(e)) return !1;
            try {
                var t = e.constructor, n = t.prototype;
                return t && n && L.call(n, "isPrototypeOf")
            } catch (e) {
                return !1
            }
        }

        function N(e) {
            return "function" == typeof e
        }

        var F = Array.prototype.slice;

        function U(e) {
            return Array.from ? Array.from(e) : F.call(e)
        }

        function H(e, t) {
            return e && N(t) && (Array.isArray(e) || A(e.length) ? U(e).forEach((function (n, r) {
                t.call(e, n, r, e)
            })) : z(e) && Object.keys(e).forEach((function (n) {
                t.call(e, e[n], n, e)
            }))), e
        }

        var W = Object.assign || function (e) {
            for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
            return z(e) && n.length > 0 && n.forEach((function (t) {
                z(t) && Object.keys(t).forEach((function (n) {
                    e[n] = t[n]
                }))
            })), e
        }, Y = /\.\d*(?:0|9){12}\d*$/;

        function V(e) {
            var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1e11;
            return Y.test(e) ? Math.round(e * t) / t : e
        }

        var q = /^width|height|left|top|marginLeft|marginTop$/;

        function X(e, t) {
            var n = e.style;
            H(t, (function (e, t) {
                q.test(t) && A(e) && (e = "".concat(e, "px")), n[t] = e
            }))
        }

        function $(e, t) {
            if (t) if (A(e.length)) H(e, (function (e) {
                $(e, t)
            })); else if (e.classList) e.classList.add(t); else {
                var n = e.className.trim();
                n ? n.indexOf(t) < 0 && (e.className = "".concat(n, " ").concat(t)) : e.className = t
            }
        }

        function K(e, t) {
            t && (A(e.length) ? H(e, (function (e) {
                K(e, t)
            })) : e.classList ? e.classList.remove(t) : e.className.indexOf(t) >= 0 && (e.className = e.className.replace(t, "")))
        }

        function Q(e, t, n) {
            t && (A(e.length) ? H(e, (function (e) {
                Q(e, t, n)
            })) : n ? $(e, t) : K(e, t))
        }

        var Z = /([a-z\d])([A-Z])/g;

        function G(e) {
            return e.replace(Z, "$1-$2").toLowerCase()
        }

        function J(e, t) {
            return z(e[t]) ? e[t] : e.dataset ? e.dataset[t] : e.getAttribute("data-".concat(G(t)))
        }

        function ee(e, t, n) {
            z(n) ? e[t] = n : e.dataset ? e.dataset[t] = n : e.setAttribute("data-".concat(G(t)), n)
        }

        var te = /\s\s*/, ne = function () {
            var e = !1;
            if (l) {
                var t = !1, n = function () {
                }, r = Object.defineProperty({}, "once", {
                    get: function () {
                        return e = !0, t
                    }, set: function (e) {
                        t = e
                    }
                });
                c.addEventListener("test", n, r), c.removeEventListener("test", n, r)
            }
            return e
        }();

        function re(e, t, n) {
            var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}, o = n;
            t.trim().split(te).forEach((function (t) {
                if (!ne) {
                    var i = e.listeners;
                    i && i[t] && i[t][n] && (o = i[t][n], delete i[t][n], 0 === Object.keys(i[t]).length && delete i[t], 0 === Object.keys(i).length && delete e.listeners)
                }
                e.removeEventListener(t, o, r)
            }))
        }

        function oe(e, t, n) {
            var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}, o = n;
            t.trim().split(te).forEach((function (t) {
                if (r.once && !ne) {
                    var i = e.listeners, a = void 0 === i ? {} : i;
                    o = function () {
                        delete a[t][n], e.removeEventListener(t, o, r);
                        for (var i = arguments.length, s = new Array(i), l = 0; l < i; l++) s[l] = arguments[l];
                        n.apply(e, s)
                    }, a[t] || (a[t] = {}), a[t][n] && e.removeEventListener(t, a[t][n], r), a[t][n] = o, e.listeners = a
                }
                e.addEventListener(t, o, r)
            }))
        }

        function ie(e, t, n) {
            var r;
            return N(Event) && N(CustomEvent) ? r = new CustomEvent(t, {
                detail: n,
                bubbles: !0,
                cancelable: !0
            }) : (r = document.createEvent("CustomEvent")).initCustomEvent(t, !0, !0, n), e.dispatchEvent(r)
        }

        function ae(e) {
            var t = e.getBoundingClientRect();
            return {
                left: t.left + (window.pageXOffset - document.documentElement.clientLeft),
                top: t.top + (window.pageYOffset - document.documentElement.clientTop)
            }
        }

        var se = c.location, le = /^(\w+:)\/\/([^:/?#]*):?(\d*)/i;

        function ce(e) {
            var t = e.match(le);
            return null !== t && (t[1] !== se.protocol || t[2] !== se.hostname || t[3] !== se.port)
        }

        function ue(e) {
            var t = "timestamp=".concat((new Date).getTime());
            return e + (-1 === e.indexOf("?") ? "?" : "&") + t
        }

        function fe(e) {
            var t = e.rotate, n = e.scaleX, r = e.scaleY, o = e.translateX, i = e.translateY, a = [];
            A(o) && 0 !== o && a.push("translateX(".concat(o, "px)")), A(i) && 0 !== i && a.push("translateY(".concat(i, "px)")), A(t) && 0 !== t && a.push("rotate(".concat(t, "deg)")), A(n) && 1 !== n && a.push("scaleX(".concat(n, ")")), A(r) && 1 !== r && a.push("scaleY(".concat(r, ")"));
            var s = a.length ? a.join(" ") : "none";
            return {WebkitTransform: s, msTransform: s, transform: s}
        }

        function pe(e, t) {
            var n = e.pageX, r = e.pageY, o = {endX: n, endY: r};
            return t ? o : i({startX: n, startY: r}, o)
        }

        function de(e) {
            var t = e.aspectRatio, n = e.height, r = e.width,
                o = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "contain", i = T(r), a = T(n);
            if (i && a) {
                var s = n * t;
                "contain" === o && s > r || "cover" === o && s < r ? n = r / t : r = n * t
            } else i ? n = r / t : a && (r = n * t);
            return {width: r, height: n}
        }

        function he(e, t, n, r) {
            var o = t.aspectRatio, i = t.naturalWidth, s = t.naturalHeight, l = t.rotate, c = void 0 === l ? 0 : l,
                u = t.scaleX, f = void 0 === u ? 1 : u, p = t.scaleY, d = void 0 === p ? 1 : p, h = n.aspectRatio,
                g = n.naturalWidth, m = n.naturalHeight, b = r.fillColor, v = void 0 === b ? "transparent" : b,
                y = r.imageSmoothingEnabled, w = void 0 === y || y, x = r.imageSmoothingQuality,
                k = void 0 === x ? "low" : x, O = r.maxWidth, S = void 0 === O ? 1 / 0 : O, j = r.maxHeight,
                C = void 0 === j ? 1 / 0 : j, _ = r.minWidth, E = void 0 === _ ? 0 : _, P = r.minHeight,
                R = void 0 === P ? 0 : P, D = document.createElement("canvas"), M = D.getContext("2d"),
                A = de({aspectRatio: h, width: S, height: C}), T = de({aspectRatio: h, width: E, height: R}, "cover"),
                I = Math.min(A.width, Math.max(T.width, g)), z = Math.min(A.height, Math.max(T.height, m)),
                L = de({aspectRatio: o, width: S, height: C}), B = de({aspectRatio: o, width: E, height: R}, "cover"),
                N = Math.min(L.width, Math.max(B.width, i)), F = Math.min(L.height, Math.max(B.height, s)),
                U = [-N / 2, -F / 2, N, F];
            return D.width = V(I), D.height = V(z), M.fillStyle = v, M.fillRect(0, 0, I, z), M.save(), M.translate(I / 2, z / 2), M.rotate(c * Math.PI / 180), M.scale(f, d), M.imageSmoothingEnabled = w, M.imageSmoothingQuality = k, M.drawImage.apply(M, [e].concat(a(U.map((function (e) {
                return Math.floor(V(e))
            }))))), M.restore(), D
        }

        var ge = String.fromCharCode, me = /^data:.*,/;

        function be(e) {
            var t, n = new DataView(e);
            try {
                var r, o, i;
                if (255 === n.getUint8(0) && 216 === n.getUint8(1)) for (var a = n.byteLength, s = 2; s + 1 < a;) {
                    if (255 === n.getUint8(s) && 225 === n.getUint8(s + 1)) {
                        o = s;
                        break
                    }
                    s += 1
                }
                if (o) {
                    var l = o + 10;
                    if ("Exif" === function (e, t, n) {
                        var r = "";
                        n += t;
                        for (var o = t; o < n; o += 1) r += ge(e.getUint8(o));
                        return r
                    }(n, o + 4, 4)) {
                        var c = n.getUint16(l);
                        if (((r = 18761 === c) || 19789 === c) && 42 === n.getUint16(l + 2, r)) {
                            var u = n.getUint32(l + 4, r);
                            u >= 8 && (i = l + u)
                        }
                    }
                }
                if (i) {
                    var f, p, d = n.getUint16(i, r);
                    for (p = 0; p < d; p += 1) if (f = i + 12 * p + 2, 274 === n.getUint16(f, r)) {
                        f += 8, t = n.getUint16(f, r), n.setUint16(f, 1, r);
                        break
                    }
                }
            } catch (e) {
                t = 1
            }
            return t
        }

        var ve = {
            render: function () {
                this.initContainer(), this.initCanvas(), this.initCropBox(), this.renderCanvas(), this.cropped && this.renderCropBox()
            }, initContainer: function () {
                var e = this.element, t = this.options, n = this.container, r = this.cropper;
                $(r, h), K(e, h);
                var o = {
                    width: Math.max(n.offsetWidth, Number(t.minContainerWidth) || 200),
                    height: Math.max(n.offsetHeight, Number(t.minContainerHeight) || 100)
                };
                this.containerData = o, X(r, {width: o.width, height: o.height}), $(e, h), K(r, h)
            }, initCanvas: function () {
                var e = this.containerData, t = this.imageData, n = this.options.viewMode,
                    r = Math.abs(t.rotate) % 180 == 90, o = r ? t.naturalHeight : t.naturalWidth,
                    i = r ? t.naturalWidth : t.naturalHeight, a = o / i, s = e.width, l = e.height;
                e.height * a > e.width ? 3 === n ? s = e.height * a : l = e.width / a : 3 === n ? l = e.width / a : s = e.height * a;
                var c = {aspectRatio: a, naturalWidth: o, naturalHeight: i, width: s, height: l};
                c.left = (e.width - s) / 2, c.top = (e.height - l) / 2, c.oldLeft = c.left, c.oldTop = c.top, this.canvasData = c, this.limited = 1 === n || 2 === n, this.limitCanvas(!0, !0), this.initialImageData = W({}, t), this.initialCanvasData = W({}, c)
            }, limitCanvas: function (e, t) {
                var n = this.options, r = this.containerData, o = this.canvasData, i = this.cropBoxData, a = n.viewMode,
                    s = o.aspectRatio, l = this.cropped && i;
                if (e) {
                    var c = Number(n.minCanvasWidth) || 0, u = Number(n.minCanvasHeight) || 0;
                    a > 1 ? (c = Math.max(c, r.width), u = Math.max(u, r.height), 3 === a && (u * s > c ? c = u * s : u = c / s)) : a > 0 && (c ? c = Math.max(c, l ? i.width : 0) : u ? u = Math.max(u, l ? i.height : 0) : l && (c = i.width, (u = i.height) * s > c ? c = u * s : u = c / s));
                    var f = de({aspectRatio: s, width: c, height: u});
                    c = f.width, u = f.height, o.minWidth = c, o.minHeight = u, o.maxWidth = 1 / 0, o.maxHeight = 1 / 0
                }
                if (t) if (a > (l ? 0 : 1)) {
                    var p = r.width - o.width, d = r.height - o.height;
                    o.minLeft = Math.min(0, p), o.minTop = Math.min(0, d), o.maxLeft = Math.max(0, p), o.maxTop = Math.max(0, d), l && this.limited && (o.minLeft = Math.min(i.left, i.left + (i.width - o.width)), o.minTop = Math.min(i.top, i.top + (i.height - o.height)), o.maxLeft = i.left, o.maxTop = i.top, 2 === a && (o.width >= r.width && (o.minLeft = Math.min(0, p), o.maxLeft = Math.max(0, p)), o.height >= r.height && (o.minTop = Math.min(0, d), o.maxTop = Math.max(0, d))))
                } else o.minLeft = -o.width, o.minTop = -o.height, o.maxLeft = r.width, o.maxTop = r.height
            }, renderCanvas: function (e, t) {
                var n = this.canvasData, r = this.imageData;
                if (t) {
                    var o = function (e) {
                            var t = e.width, n = e.height, r = e.degree;
                            if (90 == (r = Math.abs(r) % 180)) return {width: n, height: t};
                            var o = r % 90 * Math.PI / 180, i = Math.sin(o), a = Math.cos(o), s = t * a + n * i,
                                l = t * i + n * a;
                            return r > 90 ? {width: l, height: s} : {width: s, height: l}
                        }({
                            width: r.naturalWidth * Math.abs(r.scaleX || 1),
                            height: r.naturalHeight * Math.abs(r.scaleY || 1),
                            degree: r.rotate || 0
                        }), i = o.width, a = o.height, s = n.width * (i / n.naturalWidth),
                        l = n.height * (a / n.naturalHeight);
                    n.left -= (s - n.width) / 2, n.top -= (l - n.height) / 2, n.width = s, n.height = l, n.aspectRatio = i / a, n.naturalWidth = i, n.naturalHeight = a, this.limitCanvas(!0, !1)
                }
                (n.width > n.maxWidth || n.width < n.minWidth) && (n.left = n.oldLeft), (n.height > n.maxHeight || n.height < n.minHeight) && (n.top = n.oldTop), n.width = Math.min(Math.max(n.width, n.minWidth), n.maxWidth), n.height = Math.min(Math.max(n.height, n.minHeight), n.maxHeight), this.limitCanvas(!1, !0), n.left = Math.min(Math.max(n.left, n.minLeft), n.maxLeft), n.top = Math.min(Math.max(n.top, n.minTop), n.maxTop), n.oldLeft = n.left, n.oldTop = n.top, X(this.canvas, W({
                    width: n.width,
                    height: n.height
                }, fe({
                    translateX: n.left,
                    translateY: n.top
                }))), this.renderImage(e), this.cropped && this.limited && this.limitCropBox(!0, !0)
            }, renderImage: function (e) {
                var t = this.canvasData, n = this.imageData, r = n.naturalWidth * (t.width / t.naturalWidth),
                    o = n.naturalHeight * (t.height / t.naturalHeight);
                W(n, {
                    width: r,
                    height: o,
                    left: (t.width - r) / 2,
                    top: (t.height - o) / 2
                }), X(this.image, W({width: n.width, height: n.height}, fe(W({
                    translateX: n.left,
                    translateY: n.top
                }, n)))), e && this.output()
            }, initCropBox: function () {
                var e = this.options, t = this.canvasData, n = e.aspectRatio || e.initialAspectRatio,
                    r = Number(e.autoCropArea) || .8, o = {width: t.width, height: t.height};
                n && (t.height * n > t.width ? o.height = o.width / n : o.width = o.height * n), this.cropBoxData = o, this.limitCropBox(!0, !0), o.width = Math.min(Math.max(o.width, o.minWidth), o.maxWidth), o.height = Math.min(Math.max(o.height, o.minHeight), o.maxHeight), o.width = Math.max(o.minWidth, o.width * r), o.height = Math.max(o.minHeight, o.height * r), o.left = t.left + (t.width - o.width) / 2, o.top = t.top + (t.height - o.height) / 2, o.oldLeft = o.left, o.oldTop = o.top, this.initialCropBoxData = W({}, o)
            }, limitCropBox: function (e, t) {
                var n = this.options, r = this.containerData, o = this.canvasData, i = this.cropBoxData,
                    a = this.limited, s = n.aspectRatio;
                if (e) {
                    var l = Number(n.minCropBoxWidth) || 0, c = Number(n.minCropBoxHeight) || 0,
                        u = a ? Math.min(r.width, o.width, o.width + o.left, r.width - o.left) : r.width,
                        f = a ? Math.min(r.height, o.height, o.height + o.top, r.height - o.top) : r.height;
                    l = Math.min(l, r.width), c = Math.min(c, r.height), s && (l && c ? c * s > l ? c = l / s : l = c * s : l ? c = l / s : c && (l = c * s), f * s > u ? f = u / s : u = f * s), i.minWidth = Math.min(l, u), i.minHeight = Math.min(c, f), i.maxWidth = u, i.maxHeight = f
                }
                t && (a ? (i.minLeft = Math.max(0, o.left), i.minTop = Math.max(0, o.top), i.maxLeft = Math.min(r.width, o.left + o.width) - i.width, i.maxTop = Math.min(r.height, o.top + o.height) - i.height) : (i.minLeft = 0, i.minTop = 0, i.maxLeft = r.width - i.width, i.maxTop = r.height - i.height))
            }, renderCropBox: function () {
                var e = this.options, t = this.containerData, n = this.cropBoxData;
                (n.width > n.maxWidth || n.width < n.minWidth) && (n.left = n.oldLeft), (n.height > n.maxHeight || n.height < n.minHeight) && (n.top = n.oldTop), n.width = Math.min(Math.max(n.width, n.minWidth), n.maxWidth), n.height = Math.min(Math.max(n.height, n.minHeight), n.maxHeight), this.limitCropBox(!1, !0), n.left = Math.min(Math.max(n.left, n.minLeft), n.maxLeft), n.top = Math.min(Math.max(n.top, n.minTop), n.maxTop), n.oldLeft = n.left, n.oldTop = n.top, e.movable && e.cropBoxMovable && ee(this.face, y, n.width >= t.width && n.height >= t.height ? "move" : "all"), X(this.cropBox, W({
                    width: n.width,
                    height: n.height
                }, fe({
                    translateX: n.left,
                    translateY: n.top
                }))), this.cropped && this.limited && this.limitCanvas(!0, !0), this.disabled || this.output()
            }, output: function () {
                this.preview(), ie(this.element, "crop", this.getData())
            }
        }, ye = {
            initPreview: function () {
                var e = this.element, t = this.crossOrigin, n = this.options.preview,
                    r = t ? this.crossOriginUrl : this.url, o = e.alt || "The image to preview",
                    i = document.createElement("img");
                if (t && (i.crossOrigin = t), i.src = r, i.alt = o, this.viewBox.appendChild(i), this.viewBoxImage = i, n) {
                    var a = n;
                    "string" == typeof n ? a = e.ownerDocument.querySelectorAll(n) : n.querySelector && (a = [n]), this.previews = a, H(a, (function (e) {
                        var n = document.createElement("img");
                        ee(e, w, {
                            width: e.offsetWidth,
                            height: e.offsetHeight,
                            html: e.innerHTML
                        }), t && (n.crossOrigin = t), n.src = r, n.alt = o, n.style.cssText = 'display:block;width:100%;height:auto;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;image-orientation:0deg!important;"', e.innerHTML = "", e.appendChild(n)
                    }))
                }
            }, resetPreview: function () {
                H(this.previews, (function (e) {
                    var t = J(e, w);
                    X(e, {width: t.width, height: t.height}), e.innerHTML = t.html, function (e, t) {
                        if (z(e[t])) try {
                            delete e[t]
                        } catch (n) {
                            e[t] = void 0
                        } else if (e.dataset) try {
                            delete e.dataset[t]
                        } catch (n) {
                            e.dataset[t] = void 0
                        } else e.removeAttribute("data-".concat(G(t)))
                    }(e, w)
                }))
            }, preview: function () {
                var e = this.imageData, t = this.canvasData, n = this.cropBoxData, r = n.width, o = n.height,
                    i = e.width, a = e.height, s = n.left - t.left - e.left, l = n.top - t.top - e.top;
                this.cropped && !this.disabled && (X(this.viewBoxImage, W({width: i, height: a}, fe(W({
                    translateX: -s,
                    translateY: -l
                }, e)))), H(this.previews, (function (t) {
                    var n = J(t, w), c = n.width, u = n.height, f = c, p = u, d = 1;
                    r && (p = o * (d = c / r)), o && p > u && (f = r * (d = u / o), p = u), X(t, {
                        width: f,
                        height: p
                    }), X(t.getElementsByTagName("img")[0], W({width: i * d, height: a * d}, fe(W({
                        translateX: -s * d,
                        translateY: -l * d
                    }, e))))
                })))
            }
        }, we = {
            bind: function () {
                var e = this.element, t = this.options, n = this.cropper;
                N(t.cropstart) && oe(e, "cropstart", t.cropstart), N(t.cropmove) && oe(e, "cropmove", t.cropmove), N(t.cropend) && oe(e, "cropend", t.cropend), N(t.crop) && oe(e, "crop", t.crop), N(t.zoom) && oe(e, "zoom", t.zoom), oe(n, S, this.onCropStart = this.cropStart.bind(this)), t.zoomable && t.zoomOnWheel && oe(n, "wheel", this.onWheel = this.wheel.bind(this), {
                    passive: !1,
                    capture: !0
                }), t.toggleDragModeOnDblclick && oe(n, "dblclick", this.onDblclick = this.dblclick.bind(this)), oe(e.ownerDocument, j, this.onCropMove = this.cropMove.bind(this)), oe(e.ownerDocument, C, this.onCropEnd = this.cropEnd.bind(this)), t.responsive && oe(window, "resize", this.onResize = this.resize.bind(this))
            }, unbind: function () {
                var e = this.element, t = this.options, n = this.cropper;
                N(t.cropstart) && re(e, "cropstart", t.cropstart), N(t.cropmove) && re(e, "cropmove", t.cropmove), N(t.cropend) && re(e, "cropend", t.cropend), N(t.crop) && re(e, "crop", t.crop), N(t.zoom) && re(e, "zoom", t.zoom), re(n, S, this.onCropStart), t.zoomable && t.zoomOnWheel && re(n, "wheel", this.onWheel, {
                    passive: !1,
                    capture: !0
                }), t.toggleDragModeOnDblclick && re(n, "dblclick", this.onDblclick), re(e.ownerDocument, j, this.onCropMove), re(e.ownerDocument, C, this.onCropEnd), t.responsive && re(window, "resize", this.onResize)
            }
        }, xe = {
            resize: function () {
                if (!this.disabled) {
                    var e, t, n = this.options, r = this.container, o = this.containerData, i = r.offsetWidth / o.width;
                    1 === i && r.offsetHeight === o.height || (n.restore && (e = this.getCanvasData(), t = this.getCropBoxData()), this.render(), n.restore && (this.setCanvasData(H(e, (function (t, n) {
                        e[n] = t * i
                    }))), this.setCropBoxData(H(t, (function (e, n) {
                        t[n] = e * i
                    })))))
                }
            }, dblclick: function () {
                var e, t;
                this.disabled || "none" === this.options.dragMode || this.setDragMode((e = this.dragBox, t = p, (e.classList ? e.classList.contains(t) : e.className.indexOf(t) > -1) ? "move" : "crop"))
            }, wheel: function (e) {
                var t = this, n = Number(this.options.wheelZoomRatio) || .1, r = 1;
                this.disabled || (e.preventDefault(), this.wheeling || (this.wheeling = !0, setTimeout((function () {
                    t.wheeling = !1
                }), 50), e.deltaY ? r = e.deltaY > 0 ? 1 : -1 : e.wheelDelta ? r = -e.wheelDelta / 120 : e.detail && (r = e.detail > 0 ? 1 : -1), this.zoom(-r * n, e)))
            }, cropStart: function (e) {
                var t = e.buttons, n = e.button;
                if (!(this.disabled || ("mousedown" === e.type || "pointerdown" === e.type && "mouse" === e.pointerType) && (A(t) && 1 !== t || A(n) && 0 !== n || e.ctrlKey))) {
                    var r, o = this.options, i = this.pointers;
                    e.changedTouches ? H(e.changedTouches, (function (e) {
                        i[e.identifier] = pe(e)
                    })) : i[e.pointerId || 0] = pe(e), r = Object.keys(i).length > 1 && o.zoomable && o.zoomOnTouch ? "zoom" : J(e.target, y), _.test(r) && !1 !== ie(this.element, "cropstart", {
                        originalEvent: e,
                        action: r
                    }) && (e.preventDefault(), this.action = r, this.cropping = !1, "crop" === r && (this.cropping = !0, $(this.dragBox, b)))
                }
            }, cropMove: function (e) {
                var t = this.action;
                if (!this.disabled && t) {
                    var n = this.pointers;
                    e.preventDefault(), !1 !== ie(this.element, "cropmove", {
                        originalEvent: e,
                        action: t
                    }) && (e.changedTouches ? H(e.changedTouches, (function (e) {
                        W(n[e.identifier] || {}, pe(e, !0))
                    })) : W(n[e.pointerId || 0] || {}, pe(e, !0)), this.change(e))
                }
            }, cropEnd: function (e) {
                if (!this.disabled) {
                    var t = this.action, n = this.pointers;
                    e.changedTouches ? H(e.changedTouches, (function (e) {
                        delete n[e.identifier]
                    })) : delete n[e.pointerId || 0], t && (e.preventDefault(), Object.keys(n).length || (this.action = ""), this.cropping && (this.cropping = !1, Q(this.dragBox, b, this.cropped && this.options.modal)), ie(this.element, "cropend", {
                        originalEvent: e,
                        action: t
                    }))
                }
            }
        }, ke = {
            change: function (e) {
                var t, n = this.options, r = this.canvasData, o = this.containerData, a = this.cropBoxData,
                    s = this.pointers, l = this.action, c = n.aspectRatio, u = a.left, f = a.top, p = a.width,
                    d = a.height, g = u + p, m = f + d, b = 0, v = 0, y = o.width, w = o.height, x = !0;
                !c && e.shiftKey && (c = p && d ? p / d : 1), this.limited && (b = a.minLeft, v = a.minTop, y = b + Math.min(o.width, r.width, r.left + r.width), w = v + Math.min(o.height, r.height, r.top + r.height));
                var k = s[Object.keys(s)[0]], O = {x: k.endX - k.startX, y: k.endY - k.startY}, S = function (e) {
                    switch (e) {
                        case"e":
                            g + O.x > y && (O.x = y - g);
                            break;
                        case"w":
                            u + O.x < b && (O.x = b - u);
                            break;
                        case"n":
                            f + O.y < v && (O.y = v - f);
                            break;
                        case"s":
                            m + O.y > w && (O.y = w - m)
                    }
                };
                switch (l) {
                    case"all":
                        u += O.x, f += O.y;
                        break;
                    case"e":
                        if (O.x >= 0 && (g >= y || c && (f <= v || m >= w))) {
                            x = !1;
                            break
                        }
                        S("e"), (p += O.x) < 0 && (l = "w", u -= p = -p), c && (d = p / c, f += (a.height - d) / 2);
                        break;
                    case"n":
                        if (O.y <= 0 && (f <= v || c && (u <= b || g >= y))) {
                            x = !1;
                            break
                        }
                        S("n"), d -= O.y, f += O.y, d < 0 && (l = "s", f -= d = -d), c && (p = d * c, u += (a.width - p) / 2);
                        break;
                    case"w":
                        if (O.x <= 0 && (u <= b || c && (f <= v || m >= w))) {
                            x = !1;
                            break
                        }
                        S("w"), p -= O.x, u += O.x, p < 0 && (l = "e", u -= p = -p), c && (d = p / c, f += (a.height - d) / 2);
                        break;
                    case"s":
                        if (O.y >= 0 && (m >= w || c && (u <= b || g >= y))) {
                            x = !1;
                            break
                        }
                        S("s"), (d += O.y) < 0 && (l = "n", f -= d = -d), c && (p = d * c, u += (a.width - p) / 2);
                        break;
                    case"ne":
                        if (c) {
                            if (O.y <= 0 && (f <= v || g >= y)) {
                                x = !1;
                                break
                            }
                            S("n"), d -= O.y, f += O.y, p = d * c
                        } else S("n"), S("e"), O.x >= 0 ? g < y ? p += O.x : O.y <= 0 && f <= v && (x = !1) : p += O.x, O.y <= 0 ? f > v && (d -= O.y, f += O.y) : (d -= O.y, f += O.y);
                        p < 0 && d < 0 ? (l = "sw", f -= d = -d, u -= p = -p) : p < 0 ? (l = "nw", u -= p = -p) : d < 0 && (l = "se", f -= d = -d);
                        break;
                    case"nw":
                        if (c) {
                            if (O.y <= 0 && (f <= v || u <= b)) {
                                x = !1;
                                break
                            }
                            S("n"), d -= O.y, f += O.y, p = d * c, u += a.width - p
                        } else S("n"), S("w"), O.x <= 0 ? u > b ? (p -= O.x, u += O.x) : O.y <= 0 && f <= v && (x = !1) : (p -= O.x, u += O.x), O.y <= 0 ? f > v && (d -= O.y, f += O.y) : (d -= O.y, f += O.y);
                        p < 0 && d < 0 ? (l = "se", f -= d = -d, u -= p = -p) : p < 0 ? (l = "ne", u -= p = -p) : d < 0 && (l = "sw", f -= d = -d);
                        break;
                    case"sw":
                        if (c) {
                            if (O.x <= 0 && (u <= b || m >= w)) {
                                x = !1;
                                break
                            }
                            S("w"), p -= O.x, u += O.x, d = p / c
                        } else S("s"), S("w"), O.x <= 0 ? u > b ? (p -= O.x, u += O.x) : O.y >= 0 && m >= w && (x = !1) : (p -= O.x, u += O.x), O.y >= 0 ? m < w && (d += O.y) : d += O.y;
                        p < 0 && d < 0 ? (l = "ne", f -= d = -d, u -= p = -p) : p < 0 ? (l = "se", u -= p = -p) : d < 0 && (l = "nw", f -= d = -d);
                        break;
                    case"se":
                        if (c) {
                            if (O.x >= 0 && (g >= y || m >= w)) {
                                x = !1;
                                break
                            }
                            S("e"), d = (p += O.x) / c
                        } else S("s"), S("e"), O.x >= 0 ? g < y ? p += O.x : O.y >= 0 && m >= w && (x = !1) : p += O.x, O.y >= 0 ? m < w && (d += O.y) : d += O.y;
                        p < 0 && d < 0 ? (l = "nw", f -= d = -d, u -= p = -p) : p < 0 ? (l = "sw", u -= p = -p) : d < 0 && (l = "ne", f -= d = -d);
                        break;
                    case"move":
                        this.move(O.x, O.y), x = !1;
                        break;
                    case"zoom":
                        this.zoom(function (e) {
                            var t = i({}, e), n = [];
                            return H(e, (function (e, r) {
                                delete t[r], H(t, (function (t) {
                                    var r = Math.abs(e.startX - t.startX), o = Math.abs(e.startY - t.startY),
                                        i = Math.abs(e.endX - t.endX), a = Math.abs(e.endY - t.endY),
                                        s = Math.sqrt(r * r + o * o), l = (Math.sqrt(i * i + a * a) - s) / s;
                                    n.push(l)
                                }))
                            })), n.sort((function (e, t) {
                                return Math.abs(e) < Math.abs(t)
                            })), n[0]
                        }(s), e), x = !1;
                        break;
                    case"crop":
                        if (!O.x || !O.y) {
                            x = !1;
                            break
                        }
                        t = ae(this.cropper), u = k.startX - t.left, f = k.startY - t.top, p = a.minWidth, d = a.minHeight, O.x > 0 ? l = O.y > 0 ? "se" : "ne" : O.x < 0 && (u -= p, l = O.y > 0 ? "sw" : "nw"), O.y < 0 && (f -= d), this.cropped || (K(this.cropBox, h), this.cropped = !0, this.limited && this.limitCropBox(!0, !0))
                }
                x && (a.width = p, a.height = d, a.left = u, a.top = f, this.action = l, this.renderCropBox()), H(s, (function (e) {
                    e.startX = e.endX, e.startY = e.endY
                }))
            }
        }, Oe = {
            crop: function () {
                return !this.ready || this.cropped || this.disabled || (this.cropped = !0, this.limitCropBox(!0, !0), this.options.modal && $(this.dragBox, b), K(this.cropBox, h), this.setCropBoxData(this.initialCropBoxData)), this
            }, reset: function () {
                return this.ready && !this.disabled && (this.imageData = W({}, this.initialImageData), this.canvasData = W({}, this.initialCanvasData), this.cropBoxData = W({}, this.initialCropBoxData), this.renderCanvas(), this.cropped && this.renderCropBox()), this
            }, clear: function () {
                return this.cropped && !this.disabled && (W(this.cropBoxData, {
                    left: 0,
                    top: 0,
                    width: 0,
                    height: 0
                }), this.cropped = !1, this.renderCropBox(), this.limitCanvas(!0, !0), this.renderCanvas(), K(this.dragBox, b), $(this.cropBox, h)), this
            }, replace: function (e) {
                var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
                return !this.disabled && e && (this.isImg && (this.element.src = e), t ? (this.url = e, this.image.src = e, this.ready && (this.viewBoxImage.src = e, H(this.previews, (function (t) {
                    t.getElementsByTagName("img")[0].src = e
                })))) : (this.isImg && (this.replaced = !0), this.options.data = null, this.uncreate(), this.load(e))), this
            }, enable: function () {
                return this.ready && this.disabled && (this.disabled = !1, K(this.cropper, d)), this
            }, disable: function () {
                return this.ready && !this.disabled && (this.disabled = !0, $(this.cropper, d)), this
            }, destroy: function () {
                var e = this.element;
                return e.cropper ? (e.cropper = void 0, this.isImg && this.replaced && (e.src = this.originalUrl), this.uncreate(), this) : this
            }, move: function (e) {
                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : e, n = this.canvasData,
                    r = n.left, o = n.top;
                return this.moveTo(I(e) ? e : r + Number(e), I(t) ? t : o + Number(t))
            }, moveTo: function (e) {
                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : e, n = this.canvasData, r = !1;
                return e = Number(e), t = Number(t), this.ready && !this.disabled && this.options.movable && (A(e) && (n.left = e, r = !0), A(t) && (n.top = t, r = !0), r && this.renderCanvas(!0)), this
            }, zoom: function (e, t) {
                var n = this.canvasData;
                return e = (e = Number(e)) < 0 ? 1 / (1 - e) : 1 + e, this.zoomTo(n.width * e / n.naturalWidth, null, t)
            }, zoomTo: function (e, t, n) {
                var r = this.options, o = this.canvasData, i = o.width, a = o.height, s = o.naturalWidth,
                    l = o.naturalHeight;
                if ((e = Number(e)) >= 0 && this.ready && !this.disabled && r.zoomable) {
                    var c = s * e, u = l * e;
                    if (!1 === ie(this.element, "zoom", {ratio: e, oldRatio: i / s, originalEvent: n})) return this;
                    if (n) {
                        var f = this.pointers, p = ae(this.cropper), d = f && Object.keys(f).length ? function (e) {
                            var t = 0, n = 0, r = 0;
                            return H(e, (function (e) {
                                var o = e.startX, i = e.startY;
                                t += o, n += i, r += 1
                            })), {pageX: t /= r, pageY: n /= r}
                        }(f) : {pageX: n.pageX, pageY: n.pageY};
                        o.left -= (c - i) * ((d.pageX - p.left - o.left) / i), o.top -= (u - a) * ((d.pageY - p.top - o.top) / a)
                    } else B(t) && A(t.x) && A(t.y) ? (o.left -= (c - i) * ((t.x - o.left) / i), o.top -= (u - a) * ((t.y - o.top) / a)) : (o.left -= (c - i) / 2, o.top -= (u - a) / 2);
                    o.width = c, o.height = u, this.renderCanvas(!0)
                }
                return this
            }, rotate: function (e) {
                return this.rotateTo((this.imageData.rotate || 0) + Number(e))
            }, rotateTo: function (e) {
                return A(e = Number(e)) && this.ready && !this.disabled && this.options.rotatable && (this.imageData.rotate = e % 360, this.renderCanvas(!0, !0)), this
            }, scaleX: function (e) {
                var t = this.imageData.scaleY;
                return this.scale(e, A(t) ? t : 1)
            }, scaleY: function (e) {
                var t = this.imageData.scaleX;
                return this.scale(A(t) ? t : 1, e)
            }, scale: function (e) {
                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : e, n = this.imageData, r = !1;
                return e = Number(e), t = Number(t), this.ready && !this.disabled && this.options.scalable && (A(e) && (n.scaleX = e, r = !0), A(t) && (n.scaleY = t, r = !0), r && this.renderCanvas(!0, !0)), this
            }, getData: function () {
                var e, t = arguments.length > 0 && void 0 !== arguments[0] && arguments[0], n = this.options,
                    r = this.imageData, o = this.canvasData, i = this.cropBoxData;
                if (this.ready && this.cropped) {
                    e = {x: i.left - o.left, y: i.top - o.top, width: i.width, height: i.height};
                    var a = r.width / r.naturalWidth;
                    if (H(e, (function (t, n) {
                        e[n] = t / a
                    })), t) {
                        var s = Math.round(e.y + e.height), l = Math.round(e.x + e.width);
                        e.x = Math.round(e.x), e.y = Math.round(e.y), e.width = l - e.x, e.height = s - e.y
                    }
                } else e = {x: 0, y: 0, width: 0, height: 0};
                return n.rotatable && (e.rotate = r.rotate || 0), n.scalable && (e.scaleX = r.scaleX || 1, e.scaleY = r.scaleY || 1), e
            }, setData: function (e) {
                var t = this.options, n = this.imageData, r = this.canvasData, o = {};
                if (this.ready && !this.disabled && B(e)) {
                    var i = !1;
                    t.rotatable && A(e.rotate) && e.rotate !== n.rotate && (n.rotate = e.rotate, i = !0), t.scalable && (A(e.scaleX) && e.scaleX !== n.scaleX && (n.scaleX = e.scaleX, i = !0), A(e.scaleY) && e.scaleY !== n.scaleY && (n.scaleY = e.scaleY, i = !0)), i && this.renderCanvas(!0, !0);
                    var a = n.width / n.naturalWidth;
                    A(e.x) && (o.left = e.x * a + r.left), A(e.y) && (o.top = e.y * a + r.top), A(e.width) && (o.width = e.width * a), A(e.height) && (o.height = e.height * a), this.setCropBoxData(o)
                }
                return this
            }, getContainerData: function () {
                return this.ready ? W({}, this.containerData) : {}
            }, getImageData: function () {
                return this.sized ? W({}, this.imageData) : {}
            }, getCanvasData: function () {
                var e = this.canvasData, t = {};
                return this.ready && H(["left", "top", "width", "height", "naturalWidth", "naturalHeight"], (function (n) {
                    t[n] = e[n]
                })), t
            }, setCanvasData: function (e) {
                var t = this.canvasData, n = t.aspectRatio;
                return this.ready && !this.disabled && B(e) && (A(e.left) && (t.left = e.left), A(e.top) && (t.top = e.top), A(e.width) ? (t.width = e.width, t.height = e.width / n) : A(e.height) && (t.height = e.height, t.width = e.height * n), this.renderCanvas(!0)), this
            }, getCropBoxData: function () {
                var e, t = this.cropBoxData;
                return this.ready && this.cropped && (e = {
                    left: t.left,
                    top: t.top,
                    width: t.width,
                    height: t.height
                }), e || {}
            }, setCropBoxData: function (e) {
                var t, n, r = this.cropBoxData, o = this.options.aspectRatio;
                return this.ready && this.cropped && !this.disabled && B(e) && (A(e.left) && (r.left = e.left), A(e.top) && (r.top = e.top), A(e.width) && e.width !== r.width && (t = !0, r.width = e.width), A(e.height) && e.height !== r.height && (n = !0, r.height = e.height), o && (t ? r.height = r.width / o : n && (r.width = r.height * o)), this.renderCropBox()), this
            }, getCroppedCanvas: function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
                if (!this.ready || !window.HTMLCanvasElement) return null;
                var t = this.canvasData, n = he(this.image, this.imageData, t, e);
                if (!this.cropped) return n;
                var r = this.getData(), o = r.x, i = r.y, s = r.width, l = r.height,
                    c = n.width / Math.floor(t.naturalWidth);
                1 !== c && (o *= c, i *= c, s *= c, l *= c);
                var u = s / l, f = de({aspectRatio: u, width: e.maxWidth || 1 / 0, height: e.maxHeight || 1 / 0}),
                    p = de({aspectRatio: u, width: e.minWidth || 0, height: e.minHeight || 0}, "cover"), d = de({
                        aspectRatio: u,
                        width: e.width || (1 !== c ? n.width : s),
                        height: e.height || (1 !== c ? n.height : l)
                    }), h = d.width, g = d.height;
                h = Math.min(f.width, Math.max(p.width, h)), g = Math.min(f.height, Math.max(p.height, g));
                var m = document.createElement("canvas"), b = m.getContext("2d");
                m.width = V(h), m.height = V(g), b.fillStyle = e.fillColor || "transparent", b.fillRect(0, 0, h, g);
                var v = e.imageSmoothingEnabled, y = void 0 === v || v, w = e.imageSmoothingQuality;
                b.imageSmoothingEnabled = y, w && (b.imageSmoothingQuality = w);
                var x, k, O, S, j, C, _ = n.width, E = n.height, P = o, R = i;
                P <= -s || P > _ ? (P = 0, x = 0, O = 0, j = 0) : P <= 0 ? (O = -P, P = 0, j = x = Math.min(_, s + P)) : P <= _ && (O = 0, j = x = Math.min(s, _ - P)), x <= 0 || R <= -l || R > E ? (R = 0, k = 0, S = 0, C = 0) : R <= 0 ? (S = -R, R = 0, C = k = Math.min(E, l + R)) : R <= E && (S = 0, C = k = Math.min(l, E - R));
                var D = [P, R, x, k];
                if (j > 0 && C > 0) {
                    var M = h / s;
                    D.push(O * M, S * M, j * M, C * M)
                }
                return b.drawImage.apply(b, [n].concat(a(D.map((function (e) {
                    return Math.floor(V(e))
                }))))), m
            }, setAspectRatio: function (e) {
                var t = this.options;
                return this.disabled || I(e) || (t.aspectRatio = Math.max(0, e) || NaN, this.ready && (this.initCropBox(), this.cropped && this.renderCropBox())), this
            }, setDragMode: function (e) {
                var t = this.options, n = this.dragBox, r = this.face;
                if (this.ready && !this.disabled) {
                    var o = "crop" === e, i = t.movable && "move" === e;
                    e = o || i ? e : "none", t.dragMode = e, ee(n, y, e), Q(n, p, o), Q(n, v, i), t.cropBoxMovable || (ee(r, y, e), Q(r, p, o), Q(r, v, i))
                }
                return this
            }
        }, Se = c.Cropper, je = function () {
            function e(n) {
                var r = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
                if (t(this, e), !n || !R.test(n.tagName)) throw new Error("The first argument is required and must be an <img> or <canvas> element.");
                this.element = n, this.options = W({}, D, B(r) && r), this.cropped = !1, this.disabled = !1, this.pointers = {}, this.ready = !1, this.reloading = !1, this.replaced = !1, this.sized = !1, this.sizing = !1, this.init()
            }

            var r, o, i;
            return r = e, i = [{
                key: "noConflict", value: function () {
                    return window.Cropper = Se, e
                }
            }, {
                key: "setDefaults", value: function (e) {
                    W(D, B(e) && e)
                }
            }], (o = [{
                key: "init", value: function () {
                    var e, t = this.element, n = t.tagName.toLowerCase();
                    if (!t.cropper) {
                        if (t.cropper = this, "img" === n) {
                            if (this.isImg = !0, e = t.getAttribute("src") || "", this.originalUrl = e, !e) return;
                            e = t.src
                        } else "canvas" === n && window.HTMLCanvasElement && (e = t.toDataURL());
                        this.load(e)
                    }
                }
            }, {
                key: "load", value: function (e) {
                    var t = this;
                    if (e) {
                        this.url = e, this.imageData = {};
                        var n = this.element, r = this.options;
                        if (r.rotatable || r.scalable || (r.checkOrientation = !1), r.checkOrientation && window.ArrayBuffer) if (E.test(e)) P.test(e) ? this.read((o = e.replace(me, ""), i = atob(o), a = new ArrayBuffer(i.length), H(s = new Uint8Array(a), (function (e, t) {
                            s[t] = i.charCodeAt(t)
                        })), a)) : this.clone(); else {
                            var o, i, a, s, l = new XMLHttpRequest, c = this.clone.bind(this);
                            this.reloading = !0, this.xhr = l, l.onabort = c, l.onerror = c, l.ontimeout = c, l.onprogress = function () {
                                "image/jpeg" !== l.getResponseHeader("content-type") && l.abort()
                            }, l.onload = function () {
                                t.read(l.response)
                            }, l.onloadend = function () {
                                t.reloading = !1, t.xhr = null
                            }, r.checkCrossOrigin && ce(e) && n.crossOrigin && (e = ue(e)), l.open("GET", e), l.responseType = "arraybuffer", l.withCredentials = "use-credentials" === n.crossOrigin, l.send()
                        } else this.clone()
                    }
                }
            }, {
                key: "read", value: function (e) {
                    var t = this.options, n = this.imageData, r = be(e), o = 0, i = 1, a = 1;
                    if (r > 1) {
                        this.url = function (e, t) {
                            for (var n = [], r = new Uint8Array(e); r.length > 0;) n.push(ge.apply(null, U(r.subarray(0, 8192)))), r = r.subarray(8192);
                            return "data:".concat(t, ";base64,").concat(btoa(n.join("")))
                        }(e, "image/jpeg");
                        var s = function (e) {
                            var t = 0, n = 1, r = 1;
                            switch (e) {
                                case 2:
                                    n = -1;
                                    break;
                                case 3:
                                    t = -180;
                                    break;
                                case 4:
                                    r = -1;
                                    break;
                                case 5:
                                    t = 90, r = -1;
                                    break;
                                case 6:
                                    t = 90;
                                    break;
                                case 7:
                                    t = 90, n = -1;
                                    break;
                                case 8:
                                    t = -90
                            }
                            return {rotate: t, scaleX: n, scaleY: r}
                        }(r);
                        o = s.rotate, i = s.scaleX, a = s.scaleY
                    }
                    t.rotatable && (n.rotate = o), t.scalable && (n.scaleX = i, n.scaleY = a), this.clone()
                }
            }, {
                key: "clone", value: function () {
                    var e = this.element, t = this.url, n = e.crossOrigin, r = t;
                    this.options.checkCrossOrigin && ce(t) && (n || (n = "anonymous"), r = ue(t)), this.crossOrigin = n, this.crossOriginUrl = r;
                    var o = document.createElement("img");
                    n && (o.crossOrigin = n), o.src = r || t, o.alt = e.alt || "The image to crop", this.image = o, o.onload = this.start.bind(this), o.onerror = this.stop.bind(this), $(o, g), e.parentNode.insertBefore(o, e.nextSibling)
                }
            }, {
                key: "start", value: function () {
                    var e = this, t = this.image;
                    t.onload = null, t.onerror = null, this.sizing = !0;
                    var n = c.navigator && /(?:iPad|iPhone|iPod).*?AppleWebKit/i.test(c.navigator.userAgent),
                        r = function (t, n) {
                            W(e.imageData, {
                                naturalWidth: t,
                                naturalHeight: n,
                                aspectRatio: t / n
                            }), e.sizing = !1, e.sized = !0, e.build()
                        };
                    if (!t.naturalWidth || n) {
                        var o = document.createElement("img"), i = document.body || document.documentElement;
                        this.sizingImage = o, o.onload = function () {
                            r(o.width, o.height), n || i.removeChild(o)
                        }, o.src = t.src, n || (o.style.cssText = "left:0;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;opacity:0;position:absolute;top:0;z-index:-1;", i.appendChild(o))
                    } else r(t.naturalWidth, t.naturalHeight)
                }
            }, {
                key: "stop", value: function () {
                    var e = this.image;
                    e.onload = null, e.onerror = null, e.parentNode.removeChild(e), this.image = null
                }
            }, {
                key: "build", value: function () {
                    if (this.sized && !this.ready) {
                        var e = this.element, t = this.options, n = this.image, r = e.parentNode,
                            o = document.createElement("div");
                        o.innerHTML = '<div class="cropper-container" touch-action="none"><div class="cropper-wrap-box"><div class="cropper-canvas"></div></div><div class="cropper-drag-box"></div><div class="cropper-crop-box"><span class="cropper-view-box"></span><span class="cropper-dashed dashed-h"></span><span class="cropper-dashed dashed-v"></span><span class="cropper-center"></span><span class="cropper-face"></span><span class="cropper-line line-e" data-cropper-action="e"></span><span class="cropper-line line-n" data-cropper-action="n"></span><span class="cropper-line line-w" data-cropper-action="w"></span><span class="cropper-line line-s" data-cropper-action="s"></span><span class="cropper-point point-e" data-cropper-action="e"></span><span class="cropper-point point-n" data-cropper-action="n"></span><span class="cropper-point point-w" data-cropper-action="w"></span><span class="cropper-point point-s" data-cropper-action="s"></span><span class="cropper-point point-ne" data-cropper-action="ne"></span><span class="cropper-point point-nw" data-cropper-action="nw"></span><span class="cropper-point point-sw" data-cropper-action="sw"></span><span class="cropper-point point-se" data-cropper-action="se"></span></div></div>';
                        var i = o.querySelector(".".concat("cropper", "-container")),
                            a = i.querySelector(".".concat("cropper", "-canvas")),
                            s = i.querySelector(".".concat("cropper", "-drag-box")),
                            l = i.querySelector(".".concat("cropper", "-crop-box")),
                            c = l.querySelector(".".concat("cropper", "-face"));
                        this.container = r, this.cropper = i, this.canvas = a, this.dragBox = s, this.cropBox = l, this.viewBox = i.querySelector(".".concat("cropper", "-view-box")), this.face = c, a.appendChild(n), $(e, h), r.insertBefore(i, e.nextSibling), this.isImg || K(n, g), this.initPreview(), this.bind(), t.initialAspectRatio = Math.max(0, t.initialAspectRatio) || NaN, t.aspectRatio = Math.max(0, t.aspectRatio) || NaN, t.viewMode = Math.max(0, Math.min(3, Math.round(t.viewMode))) || 0, $(l, h), t.guides || $(l.getElementsByClassName("".concat("cropper", "-dashed")), h), t.center || $(l.getElementsByClassName("".concat("cropper", "-center")), h), t.background && $(i, "".concat("cropper", "-bg")), t.highlight || $(c, m), t.cropBoxMovable && ($(c, v), ee(c, y, "all")), t.cropBoxResizable || ($(l.getElementsByClassName("".concat("cropper", "-line")), h), $(l.getElementsByClassName("".concat("cropper", "-point")), h)), this.render(), this.ready = !0, this.setDragMode(t.dragMode), t.autoCrop && this.crop(), this.setData(t.data), N(t.ready) && oe(e, "ready", t.ready, {once: !0}), ie(e, "ready")
                    }
                }
            }, {
                key: "unbuild", value: function () {
                    this.ready && (this.ready = !1, this.unbind(), this.resetPreview(), this.cropper.parentNode.removeChild(this.cropper), K(this.element, h))
                }
            }, {
                key: "uncreate", value: function () {
                    this.ready ? (this.unbuild(), this.ready = !1, this.cropped = !1) : this.sizing ? (this.sizingImage.onload = null, this.sizing = !1, this.sized = !1) : this.reloading ? (this.xhr.onabort = null, this.xhr.abort()) : this.image && this.stop()
                }
            }]) && n(r.prototype, o), i && n(r, i), e
        }();
        return W(je.prototype, ve, ye, we, xe, ke, Oe), je
    }()
}, function (e, t, n) {
    "use strict";
    const r = n(32),
        o = new Set(["jpg", "png", "gif", "webp", "flif", "cr2", "tif", "bmp", "jxr", "psd", "ico", "bpg", "jp2", "jpm", "jpx", "heic", "cur", "dcm"]),
        i = e => {
            const t = r(e);
            return o.has(t && t.ext) ? t : null
        };
    e.exports = i, e.exports.default = i, Object.defineProperty(i, "minimumBytes", {value: r.minimumBytes})
}, function (e, t, n) {
    "use strict";

    function r(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var o = ["extended", "included"], i = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, n, i;
        return t = e, i = [{
            key: "extends", value: function (e) {
                for (var t in e) {
                    var n = e[t];
                    Array.from(o).includes(t) || (this[t] = n)
                }
                return null != e.extended && e.extended.apply(this), this
            }
        }, {
            key: "includes", value: function (e) {
                for (var t in e) {
                    var n = e[t];
                    Array.from(o).includes(t) || (this.prototype[t] = n)
                }
                return null != e.included && e.included.apply(this), this
            }
        }, {
            key: "delegate", value: function () {
                for (var e = this, t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
                var o = n.pop();
                return Array.from(n).map((function (t) {
                    return e.prototype[t] = o.prototype[t]
                }))
            }
        }, {
            key: "aliasFunction", value: function (e, t) {
                var n = this;
                return this.prototype[e] = function () {
                    for (var e = arguments.length, r = new Array(e), o = 0; o < e; o++) r[o] = arguments[o];
                    return n.prototype[t].apply(n, r)
                }
            }
        }, {
            key: "aliasProperty", value: function (e, t) {
                return Object.defineProperty(this.prototype, e, {
                    get: function () {
                        return this[t]
                    }, set: function (e) {
                        return this[t] = e
                    }
                })
            }
        }, {
            key: "included", value: function (e) {
                return e.call(this, this.prototype)
            }
        }], (n = null) && r(t.prototype, n), i && r(t, i), e
    }();
    t.a = i
}, function (e, t, n) {
    "use strict";
    var r = n(3), o = n(4);

    function i(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var a = function () {
        function e(t) {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e), this.processNext = this.processNext.bind(this), this.c = t, this.renderQueue = [], this.modPixelData = null
        }

        var t, n, a;
        return t = e, a = [{
            key: "initClass", value: function () {
                this.Blocks = 4
            }
        }], (n = [{
            key: "add", value: function (e) {
                if (null != e) return this.renderQueue.push(e)
            }
        }, {
            key: "processNext", value: function () {
                if (0 === this.renderQueue.length) return Caman.Event.trigger(this, "renderFinished"), null != this.finishedFn && this.finishedFn.call(this.c), this;
                switch (this.currentJob = this.renderQueue.shift(), this.currentJob.type) {
                    case Caman.Filter.Type.LayerDequeue:
                        var e = this.c.canvasQueue.shift();
                        return this.c.executeLayer(e), this.processNext();
                    case Caman.Filter.Type.LayerFinished:
                        return this.c.applyCurrentLayer(), this.c.popContext(), this.processNext();
                    case Caman.Filter.Type.LoadOverlay:
                        return this.loadOverlay(this.currentJob.layer, this.currentJob.src);
                    case Caman.Filter.Type.LoadLayerMask:
                        return this.loadLayerMask(this.currentJob.layer, this.currentJob.src);
                    case Caman.Filter.Type.Plugin:
                        return this.executePlugin();
                    default:
                        return this.executeFilter()
                }
            }
        }, {
            key: "execute", value: function (e) {
                return this.finishedFn = e, this.modPixelData = r.b.dataArray(this.c.pixelData.length), this.processNext()
            }
        }, {
            key: "eachBlock", value: function (t) {
                var n = this;
                this.blocksDone = 0;
                var r = this.c.pixelData.length, o = 4 * Math.floor(r / 4 / e.Blocks), i = o + r / 4 % e.Blocks * 4;
                return function () {
                    for (var r = [], a = 0, s = e.Blocks, l = 0 <= s; l ? a < s : a > s; l ? a++ : a--) {
                        var c = a * o, u = c + (a === e.Blocks - 1 ? i : o);
                        if (Caman.NodeJS) {
                            var f = Fiber((function () {
                                return t.call(n, a, c, u)
                            })).run();
                            r.push(n.blockFinished(f))
                        } else r.push(setTimeout(function (e, r, o) {
                            return function () {
                                return t.call(n, e, r, o)
                            }
                        }(a, c, u), 0))
                    }
                    return r
                }()
            }
        }, {
            key: "executeFilter", value: function () {
                return Caman.Event.trigger(this.c, "processStart", this.currentJob), this.currentJob.type === Caman.Filter.Type.Single ? this.eachBlock(this.renderBlock) : this.eachBlock(this.renderKernel)
            }
        }, {
            key: "executePlugin", value: function () {
                return o.a.debug("Executing plugin ".concat(this.currentJob.plugin)), Caman.Plugin.execute(this.c, this.currentJob.plugin, this.currentJob.args), o.a.debug("Plugin ".concat(this.currentJob.plugin, " finished!")), this.processNext()
            }
        }, {
            key: "renderBlock", value: function (t, n, i) {
                o.a.debug("Block #".concat(t, " - Filter: ").concat(this.currentJob.name, ", Start: ").concat(n, ", End: ").concat(i)), Caman.Event.trigger(this.c, "blockStarted", {
                    blockNum: t,
                    totalBlocks: e.Blocks,
                    startPixel: n,
                    endPixel: i
                });
                var a = new Caman.Pixel;
                a.setContext(this.c);
                for (var s = n, l = i; s < l; s += 4) a.loc = s, a.r = this.c.pixelData[s], a.g = this.c.pixelData[s + 1], a.b = this.c.pixelData[s + 2], a.a = this.c.pixelData[s + 3], this.currentJob.processFn(a), this.c.pixelData[s] = r.b.clampRGB(a.r), this.c.pixelData[s + 1] = r.b.clampRGB(a.g), this.c.pixelData[s + 2] = r.b.clampRGB(a.b), this.c.pixelData[s + 3] = r.b.clampRGB(a.a);
                return this.blockFinished(t)
            }
        }, {
            key: "renderKernel", value: function (e, t, n) {
                this.currentJob.name;
                var i = this.currentJob.bias, a = this.currentJob.divisor, s = this.c.pixelData.length,
                    l = this.currentJob.adjust, c = Math.sqrt(l.length), u = [];
                o.a.debug("Rendering kernel - Filter: ".concat(this.currentJob.name)), t = Math.max(t, 4 * this.c.dimensions.width * ((c - 1) / 2)), n = Math.min(n, s - 4 * this.c.dimensions.width * ((c - 1) / 2));
                var f = (c - 1) / 2, p = new Caman.Pixel;
                p.setContext(this.c);
                for (var d = t, h = n; d < h; d += 4) {
                    p.loc = d;
                    for (var g = 0, m = -f, b = f, v = -f <= b; v ? m <= b : m >= b; v ? m++ : m--) for (var y = f, w = -f, x = f <= w; x ? y <= w : y >= w; x ? y++ : y--) {
                        var k = p.getPixelRelative(m, y);
                        u[3 * g] = k.r, u[3 * g + 1] = k.g, u[3 * g + 2] = k.b, g++
                    }
                    var O = this.processKernel(l, u, a, i);
                    this.modPixelData[d] = r.b.clampRGB(O.r), this.modPixelData[d + 1] = r.b.clampRGB(O.g), this.modPixelData[d + 2] = r.b.clampRGB(O.b), this.modPixelData[d + 3] = this.c.pixelData[d + 3]
                }
                return this.blockFinished(e)
            }
        }, {
            key: "blockFinished", value: function (t) {
                if (t >= 0 && o.a.debug("Block #".concat(t, " finished! Filter: ").concat(this.currentJob.name)), this.blocksDone++, Caman.Event.trigger(this.c, "blockFinished", {
                    blockNum: t,
                    blocksFinished: this.blocksDone,
                    totalBlocks: e.Blocks
                }), this.blocksDone === e.Blocks) {
                    if (this.currentJob.type === Caman.Filter.Type.Kernel) for (var n = 0, r = this.c.pixelData.length, i = 0 <= r; i ? n < r : n > r; i ? n++ : n--) this.c.pixelData[n] = this.modPixelData[n];
                    return t >= 0 && o.a.debug("Filter ".concat(this.currentJob.name, " finished!")), Caman.Event.trigger(this.c, "processComplete", this.currentJob), this.processNext()
                }
            }
        }, {
            key: "processKernel", value: function (e, t, n, r) {
                for (var o = {
                    r: 0,
                    g: 0,
                    b: 0
                }, i = 0, a = e.length, s = 0 <= a; s ? i < a : i > a; s ? i++ : i--) o.r += e[i] * t[3 * i], o.g += e[i] * t[3 * i + 1], o.b += e[i] * t[3 * i + 2];
                return o.r = o.r / n + r, o.g = o.g / n + r, o.b = o.b / n + r, o
            }
        }, {
            key: "loadOverlay", value: function (e, t) {
                var n = this, r = new Image;
                r.onload = function () {
                    return e.context.drawImage(r, 0, 0, n.c.dimensions.width, n.c.dimensions.height), e.imageData = e.context.getImageData(0, 0, n.c.dimensions.width, n.c.dimensions.height), e.pixelData = e.imageData.data, n.c.pixelData = e.pixelData, n.processNext()
                };
                var o = Caman.IO.remoteCheck(t);
                return r.src = null != o ? o : t
            }
        }, {
            key: "loadLayerMask", value: function (e, t) {
                var n = this, r = new Image;
                r.onload = function () {
                    var t = document.createElement("canvas");
                    t.width = n.c.dimensions.width, t.height = n.c.dimensions.height;
                    var o = t.getContext("2d");
                    o.drawImage(r, 0, 0, n.c.dimensions.width, n.c.dimensions.height);
                    var i = o.getImageData(0, 0, n.c.dimensions.width, n.c.dimensions.height);
                    return e.maskData = i.data, n.processNext()
                };
                var o = Caman.IO.remoteCheck(t);
                return r.src = null != o ? o : t
            }
        }]) && i(t.prototype, n), a && i(t, a), e
    }();
    a.initClass(), t.a = a
}, function (e, t, n) {
    "use strict";
    /** @license React v17.0.1
     * react-dom.production.min.js
     *
     * Copyright (c) Facebook, Inc. and its affiliates.
     *
     * This source code is licensed under the MIT license found in the
     * LICENSE file in the root directory of this source tree.
     */var r = n(2), o = n(9), i = n(24);

    function a(e) {
        for (var t = "https://reactjs.org/docs/error-decoder.html?invariant=" + e, n = 1; n < arguments.length; n++) t += "&args[]=" + encodeURIComponent(arguments[n]);
        return "Minified React error #" + e + "; visit " + t + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings."
    }

    if (!r) throw Error(a(227));
    var s = new Set, l = {};

    function c(e, t) {
        u(e, t), u(e + "Capture", t)
    }

    function u(e, t) {
        for (l[e] = t, e = 0; e < t.length; e++) s.add(t[e])
    }

    var f = !("undefined" == typeof window || void 0 === window.document || void 0 === window.document.createElement),
        p = /^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,
        d = Object.prototype.hasOwnProperty, h = {}, g = {};

    function m(e, t, n, r, o, i, a) {
        this.acceptsBooleans = 2 === t || 3 === t || 4 === t, this.attributeName = r, this.attributeNamespace = o, this.mustUseProperty = n, this.propertyName = e, this.type = t, this.sanitizeURL = i, this.removeEmptyString = a
    }

    var b = {};
    "children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function (e) {
        b[e] = new m(e, 0, !1, e, null, !1, !1)
    })), [["acceptCharset", "accept-charset"], ["className", "class"], ["htmlFor", "for"], ["httpEquiv", "http-equiv"]].forEach((function (e) {
        var t = e[0];
        b[t] = new m(t, 1, !1, e[1], null, !1, !1)
    })), ["contentEditable", "draggable", "spellCheck", "value"].forEach((function (e) {
        b[e] = new m(e, 2, !1, e.toLowerCase(), null, !1, !1)
    })), ["autoReverse", "externalResourcesRequired", "focusable", "preserveAlpha"].forEach((function (e) {
        b[e] = new m(e, 2, !1, e, null, !1, !1)
    })), "allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function (e) {
        b[e] = new m(e, 3, !1, e.toLowerCase(), null, !1, !1)
    })), ["checked", "multiple", "muted", "selected"].forEach((function (e) {
        b[e] = new m(e, 3, !0, e, null, !1, !1)
    })), ["capture", "download"].forEach((function (e) {
        b[e] = new m(e, 4, !1, e, null, !1, !1)
    })), ["cols", "rows", "size", "span"].forEach((function (e) {
        b[e] = new m(e, 6, !1, e, null, !1, !1)
    })), ["rowSpan", "start"].forEach((function (e) {
        b[e] = new m(e, 5, !1, e.toLowerCase(), null, !1, !1)
    }));
    var v = /[\-:]([a-z])/g;

    function y(e) {
        return e[1].toUpperCase()
    }

    function w(e, t, n, r) {
        var o = b.hasOwnProperty(t) ? b[t] : null;
        (null !== o ? 0 === o.type : !r && (2 < t.length && ("o" === t[0] || "O" === t[0]) && ("n" === t[1] || "N" === t[1]))) || (function (e, t, n, r) {
            if (null == t || function (e, t, n, r) {
                if (null !== n && 0 === n.type) return !1;
                switch (typeof t) {
                    case"function":
                    case"symbol":
                        return !0;
                    case"boolean":
                        return !r && (null !== n ? !n.acceptsBooleans : "data-" !== (e = e.toLowerCase().slice(0, 5)) && "aria-" !== e);
                    default:
                        return !1
                }
            }(e, t, n, r)) return !0;
            if (r) return !1;
            if (null !== n) switch (n.type) {
                case 3:
                    return !t;
                case 4:
                    return !1 === t;
                case 5:
                    return isNaN(t);
                case 6:
                    return isNaN(t) || 1 > t
            }
            return !1
        }(t, n, o, r) && (n = null), r || null === o ? function (e) {
            return !!d.call(g, e) || !d.call(h, e) && (p.test(e) ? g[e] = !0 : (h[e] = !0, !1))
        }(t) && (null === n ? e.removeAttribute(t) : e.setAttribute(t, "" + n)) : o.mustUseProperty ? e[o.propertyName] = null === n ? 3 !== o.type && "" : n : (t = o.attributeName, r = o.attributeNamespace, null === n ? e.removeAttribute(t) : (n = 3 === (o = o.type) || 4 === o && !0 === n ? "" : "" + n, r ? e.setAttributeNS(r, t, n) : e.setAttribute(t, n))))
    }

    "accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function (e) {
        var t = e.replace(v, y);
        b[t] = new m(t, 1, !1, e, null, !1, !1)
    })), "xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function (e) {
        var t = e.replace(v, y);
        b[t] = new m(t, 1, !1, e, "http://www.w3.org/1999/xlink", !1, !1)
    })), ["xml:base", "xml:lang", "xml:space"].forEach((function (e) {
        var t = e.replace(v, y);
        b[t] = new m(t, 1, !1, e, "http://www.w3.org/XML/1998/namespace", !1, !1)
    })), ["tabIndex", "crossOrigin"].forEach((function (e) {
        b[e] = new m(e, 1, !1, e.toLowerCase(), null, !1, !1)
    })), b.xlinkHref = new m("xlinkHref", 1, !1, "xlink:href", "http://www.w3.org/1999/xlink", !0, !1), ["src", "href", "action", "formAction"].forEach((function (e) {
        b[e] = new m(e, 1, !1, e.toLowerCase(), null, !0, !0)
    }));
    var x = r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED, k = 60103, O = 60106, S = 60107, j = 60108, C = 60114,
        _ = 60109, E = 60110, P = 60112, R = 60113, D = 60120, M = 60115, A = 60116, T = 60121, I = 60128, z = 60129,
        L = 60130, B = 60131;
    if ("function" == typeof Symbol && Symbol.for) {
        var N = Symbol.for;
        k = N("react.element"), O = N("react.portal"), S = N("react.fragment"), j = N("react.strict_mode"), C = N("react.profiler"), _ = N("react.provider"), E = N("react.context"), P = N("react.forward_ref"), R = N("react.suspense"), D = N("react.suspense_list"), M = N("react.memo"), A = N("react.lazy"), T = N("react.block"), N("react.scope"), I = N("react.opaque.id"), z = N("react.debug_trace_mode"), L = N("react.offscreen"), B = N("react.legacy_hidden")
    }
    var F, U = "function" == typeof Symbol && Symbol.iterator;

    function H(e) {
        return null === e || "object" != typeof e ? null : "function" == typeof (e = U && e[U] || e["@@iterator"]) ? e : null
    }

    function W(e) {
        if (void 0 === F) try {
            throw Error()
        } catch (e) {
            var t = e.stack.trim().match(/\n( *(at )?)/);
            F = t && t[1] || ""
        }
        return "\n" + F + e
    }

    var Y = !1;

    function V(e, t) {
        if (!e || Y) return "";
        Y = !0;
        var n = Error.prepareStackTrace;
        Error.prepareStackTrace = void 0;
        try {
            if (t) if (t = function () {
                throw Error()
            }, Object.defineProperty(t.prototype, "props", {
                set: function () {
                    throw Error()
                }
            }), "object" == typeof Reflect && Reflect.construct) {
                try {
                    Reflect.construct(t, [])
                } catch (e) {
                    var r = e
                }
                Reflect.construct(e, [], t)
            } else {
                try {
                    t.call()
                } catch (e) {
                    r = e
                }
                e.call(t.prototype)
            } else {
                try {
                    throw Error()
                } catch (e) {
                    r = e
                }
                e()
            }
        } catch (e) {
            if (e && r && "string" == typeof e.stack) {
                for (var o = e.stack.split("\n"), i = r.stack.split("\n"), a = o.length - 1, s = i.length - 1; 1 <= a && 0 <= s && o[a] !== i[s];) s--;
                for (; 1 <= a && 0 <= s; a--, s--) if (o[a] !== i[s]) {
                    if (1 !== a || 1 !== s) do {
                        if (a--, 0 > --s || o[a] !== i[s]) return "\n" + o[a].replace(" at new ", " at ")
                    } while (1 <= a && 0 <= s);
                    break
                }
            }
        } finally {
            Y = !1, Error.prepareStackTrace = n
        }
        return (e = e ? e.displayName || e.name : "") ? W(e) : ""
    }

    function q(e) {
        switch (e.tag) {
            case 5:
                return W(e.type);
            case 16:
                return W("Lazy");
            case 13:
                return W("Suspense");
            case 19:
                return W("SuspenseList");
            case 0:
            case 2:
            case 15:
                return e = V(e.type, !1);
            case 11:
                return e = V(e.type.render, !1);
            case 22:
                return e = V(e.type._render, !1);
            case 1:
                return e = V(e.type, !0);
            default:
                return ""
        }
    }

    function X(e) {
        if (null == e) return null;
        if ("function" == typeof e) return e.displayName || e.name || null;
        if ("string" == typeof e) return e;
        switch (e) {
            case S:
                return "Fragment";
            case O:
                return "Portal";
            case C:
                return "Profiler";
            case j:
                return "StrictMode";
            case R:
                return "Suspense";
            case D:
                return "SuspenseList"
        }
        if ("object" == typeof e) switch (e.$$typeof) {
            case E:
                return (e.displayName || "Context") + ".Consumer";
            case _:
                return (e._context.displayName || "Context") + ".Provider";
            case P:
                var t = e.render;
                return t = t.displayName || t.name || "", e.displayName || ("" !== t ? "ForwardRef(" + t + ")" : "ForwardRef");
            case M:
                return X(e.type);
            case T:
                return X(e._render);
            case A:
                t = e._payload, e = e._init;
                try {
                    return X(e(t))
                } catch (e) {
                }
        }
        return null
    }

    function $(e) {
        switch (typeof e) {
            case"boolean":
            case"number":
            case"object":
            case"string":
            case"undefined":
                return e;
            default:
                return ""
        }
    }

    function K(e) {
        var t = e.type;
        return (e = e.nodeName) && "input" === e.toLowerCase() && ("checkbox" === t || "radio" === t)
    }

    function Q(e) {
        e._valueTracker || (e._valueTracker = function (e) {
            var t = K(e) ? "checked" : "value", n = Object.getOwnPropertyDescriptor(e.constructor.prototype, t),
                r = "" + e[t];
            if (!e.hasOwnProperty(t) && void 0 !== n && "function" == typeof n.get && "function" == typeof n.set) {
                var o = n.get, i = n.set;
                return Object.defineProperty(e, t, {
                    configurable: !0, get: function () {
                        return o.call(this)
                    }, set: function (e) {
                        r = "" + e, i.call(this, e)
                    }
                }), Object.defineProperty(e, t, {enumerable: n.enumerable}), {
                    getValue: function () {
                        return r
                    }, setValue: function (e) {
                        r = "" + e
                    }, stopTracking: function () {
                        e._valueTracker = null, delete e[t]
                    }
                }
            }
        }(e))
    }

    function Z(e) {
        if (!e) return !1;
        var t = e._valueTracker;
        if (!t) return !0;
        var n = t.getValue(), r = "";
        return e && (r = K(e) ? e.checked ? "true" : "false" : e.value), (e = r) !== n && (t.setValue(e), !0)
    }

    function G(e) {
        if (void 0 === (e = e || ("undefined" != typeof document ? document : void 0))) return null;
        try {
            return e.activeElement || e.body
        } catch (t) {
            return e.body
        }
    }

    function J(e, t) {
        var n = t.checked;
        return o({}, t, {
            defaultChecked: void 0,
            defaultValue: void 0,
            value: void 0,
            checked: null != n ? n : e._wrapperState.initialChecked
        })
    }

    function ee(e, t) {
        var n = null == t.defaultValue ? "" : t.defaultValue, r = null != t.checked ? t.checked : t.defaultChecked;
        n = $(null != t.value ? t.value : n), e._wrapperState = {
            initialChecked: r,
            initialValue: n,
            controlled: "checkbox" === t.type || "radio" === t.type ? null != t.checked : null != t.value
        }
    }

    function te(e, t) {
        null != (t = t.checked) && w(e, "checked", t, !1)
    }

    function ne(e, t) {
        te(e, t);
        var n = $(t.value), r = t.type;
        if (null != n) "number" === r ? (0 === n && "" === e.value || e.value != n) && (e.value = "" + n) : e.value !== "" + n && (e.value = "" + n); else if ("submit" === r || "reset" === r) return void e.removeAttribute("value");
        t.hasOwnProperty("value") ? oe(e, t.type, n) : t.hasOwnProperty("defaultValue") && oe(e, t.type, $(t.defaultValue)), null == t.checked && null != t.defaultChecked && (e.defaultChecked = !!t.defaultChecked)
    }

    function re(e, t, n) {
        if (t.hasOwnProperty("value") || t.hasOwnProperty("defaultValue")) {
            var r = t.type;
            if (!("submit" !== r && "reset" !== r || void 0 !== t.value && null !== t.value)) return;
            t = "" + e._wrapperState.initialValue, n || t === e.value || (e.value = t), e.defaultValue = t
        }
        "" !== (n = e.name) && (e.name = ""), e.defaultChecked = !!e._wrapperState.initialChecked, "" !== n && (e.name = n)
    }

    function oe(e, t, n) {
        "number" === t && G(e.ownerDocument) === e || (null == n ? e.defaultValue = "" + e._wrapperState.initialValue : e.defaultValue !== "" + n && (e.defaultValue = "" + n))
    }

    function ie(e, t) {
        return e = o({children: void 0}, t), (t = function (e) {
            var t = "";
            return r.Children.forEach(e, (function (e) {
                null != e && (t += e)
            })), t
        }(t.children)) && (e.children = t), e
    }

    function ae(e, t, n, r) {
        if (e = e.options, t) {
            t = {};
            for (var o = 0; o < n.length; o++) t["$" + n[o]] = !0;
            for (n = 0; n < e.length; n++) o = t.hasOwnProperty("$" + e[n].value), e[n].selected !== o && (e[n].selected = o), o && r && (e[n].defaultSelected = !0)
        } else {
            for (n = "" + $(n), t = null, o = 0; o < e.length; o++) {
                if (e[o].value === n) return e[o].selected = !0, void (r && (e[o].defaultSelected = !0));
                null !== t || e[o].disabled || (t = e[o])
            }
            null !== t && (t.selected = !0)
        }
    }

    function se(e, t) {
        if (null != t.dangerouslySetInnerHTML) throw Error(a(91));
        return o({}, t, {value: void 0, defaultValue: void 0, children: "" + e._wrapperState.initialValue})
    }

    function le(e, t) {
        var n = t.value;
        if (null == n) {
            if (n = t.children, t = t.defaultValue, null != n) {
                if (null != t) throw Error(a(92));
                if (Array.isArray(n)) {
                    if (!(1 >= n.length)) throw Error(a(93));
                    n = n[0]
                }
                t = n
            }
            null == t && (t = ""), n = t
        }
        e._wrapperState = {initialValue: $(n)}
    }

    function ce(e, t) {
        var n = $(t.value), r = $(t.defaultValue);
        null != n && ((n = "" + n) !== e.value && (e.value = n), null == t.defaultValue && e.defaultValue !== n && (e.defaultValue = n)), null != r && (e.defaultValue = "" + r)
    }

    function ue(e) {
        var t = e.textContent;
        t === e._wrapperState.initialValue && "" !== t && null !== t && (e.value = t)
    }

    var fe = "http://www.w3.org/1999/xhtml", pe = "http://www.w3.org/2000/svg";

    function de(e) {
        switch (e) {
            case"svg":
                return "http://www.w3.org/2000/svg";
            case"math":
                return "http://www.w3.org/1998/Math/MathML";
            default:
                return "http://www.w3.org/1999/xhtml"
        }
    }

    function he(e, t) {
        return null == e || "http://www.w3.org/1999/xhtml" === e ? de(t) : "http://www.w3.org/2000/svg" === e && "foreignObject" === t ? "http://www.w3.org/1999/xhtml" : e
    }

    var ge, me = function (e) {
        return "undefined" != typeof MSApp && MSApp.execUnsafeLocalFunction ? function (t, n, r, o) {
            MSApp.execUnsafeLocalFunction((function () {
                return e(t, n)
            }))
        } : e
    }((function (e, t) {
        if (e.namespaceURI !== pe || "innerHTML" in e) e.innerHTML = t; else {
            for ((ge = ge || document.createElement("div")).innerHTML = "<svg>" + t.valueOf().toString() + "</svg>", t = ge.firstChild; e.firstChild;) e.removeChild(e.firstChild);
            for (; t.firstChild;) e.appendChild(t.firstChild)
        }
    }));

    function be(e, t) {
        if (t) {
            var n = e.firstChild;
            if (n && n === e.lastChild && 3 === n.nodeType) return void (n.nodeValue = t)
        }
        e.textContent = t
    }

    var ve = {
        animationIterationCount: !0,
        borderImageOutset: !0,
        borderImageSlice: !0,
        borderImageWidth: !0,
        boxFlex: !0,
        boxFlexGroup: !0,
        boxOrdinalGroup: !0,
        columnCount: !0,
        columns: !0,
        flex: !0,
        flexGrow: !0,
        flexPositive: !0,
        flexShrink: !0,
        flexNegative: !0,
        flexOrder: !0,
        gridArea: !0,
        gridRow: !0,
        gridRowEnd: !0,
        gridRowSpan: !0,
        gridRowStart: !0,
        gridColumn: !0,
        gridColumnEnd: !0,
        gridColumnSpan: !0,
        gridColumnStart: !0,
        fontWeight: !0,
        lineClamp: !0,
        lineHeight: !0,
        opacity: !0,
        order: !0,
        orphans: !0,
        tabSize: !0,
        widows: !0,
        zIndex: !0,
        zoom: !0,
        fillOpacity: !0,
        floodOpacity: !0,
        stopOpacity: !0,
        strokeDasharray: !0,
        strokeDashoffset: !0,
        strokeMiterlimit: !0,
        strokeOpacity: !0,
        strokeWidth: !0
    }, ye = ["Webkit", "ms", "Moz", "O"];

    function we(e, t, n) {
        return null == t || "boolean" == typeof t || "" === t ? "" : n || "number" != typeof t || 0 === t || ve.hasOwnProperty(e) && ve[e] ? ("" + t).trim() : t + "px"
    }

    function xe(e, t) {
        for (var n in e = e.style, t) if (t.hasOwnProperty(n)) {
            var r = 0 === n.indexOf("--"), o = we(n, t[n], r);
            "float" === n && (n = "cssFloat"), r ? e.setProperty(n, o) : e[n] = o
        }
    }

    Object.keys(ve).forEach((function (e) {
        ye.forEach((function (t) {
            t = t + e.charAt(0).toUpperCase() + e.substring(1), ve[t] = ve[e]
        }))
    }));
    var ke = o({menuitem: !0}, {
        area: !0,
        base: !0,
        br: !0,
        col: !0,
        embed: !0,
        hr: !0,
        img: !0,
        input: !0,
        keygen: !0,
        link: !0,
        meta: !0,
        param: !0,
        source: !0,
        track: !0,
        wbr: !0
    });

    function Oe(e, t) {
        if (t) {
            if (ke[e] && (null != t.children || null != t.dangerouslySetInnerHTML)) throw Error(a(137, e));
            if (null != t.dangerouslySetInnerHTML) {
                if (null != t.children) throw Error(a(60));
                if ("object" != typeof t.dangerouslySetInnerHTML || !("__html" in t.dangerouslySetInnerHTML)) throw Error(a(61))
            }
            if (null != t.style && "object" != typeof t.style) throw Error(a(62))
        }
    }

    function Se(e, t) {
        if (-1 === e.indexOf("-")) return "string" == typeof t.is;
        switch (e) {
            case"annotation-xml":
            case"color-profile":
            case"font-face":
            case"font-face-src":
            case"font-face-uri":
            case"font-face-format":
            case"font-face-name":
            case"missing-glyph":
                return !1;
            default:
                return !0
        }
    }

    function je(e) {
        return (e = e.target || e.srcElement || window).correspondingUseElement && (e = e.correspondingUseElement), 3 === e.nodeType ? e.parentNode : e
    }

    var Ce = null, _e = null, Ee = null;

    function Pe(e) {
        if (e = Gr(e)) {
            if ("function" != typeof Ce) throw Error(a(280));
            var t = e.stateNode;
            t && (t = eo(t), Ce(e.stateNode, e.type, t))
        }
    }

    function Re(e) {
        _e ? Ee ? Ee.push(e) : Ee = [e] : _e = e
    }

    function De() {
        if (_e) {
            var e = _e, t = Ee;
            if (Ee = _e = null, Pe(e), t) for (e = 0; e < t.length; e++) Pe(t[e])
        }
    }

    function Me(e, t) {
        return e(t)
    }

    function Ae(e, t, n, r, o) {
        return e(t, n, r, o)
    }

    function Te() {
    }

    var Ie = Me, ze = !1, Le = !1;

    function Be() {
        null === _e && null === Ee || (Te(), De())
    }

    function Ne(e, t) {
        var n = e.stateNode;
        if (null === n) return null;
        var r = eo(n);
        if (null === r) return null;
        n = r[t];
        e:switch (t) {
            case"onClick":
            case"onClickCapture":
            case"onDoubleClick":
            case"onDoubleClickCapture":
            case"onMouseDown":
            case"onMouseDownCapture":
            case"onMouseMove":
            case"onMouseMoveCapture":
            case"onMouseUp":
            case"onMouseUpCapture":
            case"onMouseEnter":
                (r = !r.disabled) || (r = !("button" === (e = e.type) || "input" === e || "select" === e || "textarea" === e)), e = !r;
                break e;
            default:
                e = !1
        }
        if (e) return null;
        if (n && "function" != typeof n) throw Error(a(231, t, typeof n));
        return n
    }

    var Fe = !1;
    if (f) try {
        var Ue = {};
        Object.defineProperty(Ue, "passive", {
            get: function () {
                Fe = !0
            }
        }), window.addEventListener("test", Ue, Ue), window.removeEventListener("test", Ue, Ue)
    } catch (e) {
        Fe = !1
    }

    function He(e, t, n, r, o, i, a, s, l) {
        var c = Array.prototype.slice.call(arguments, 3);
        try {
            t.apply(n, c)
        } catch (e) {
            this.onError(e)
        }
    }

    var We = !1, Ye = null, Ve = !1, qe = null, Xe = {
        onError: function (e) {
            We = !0, Ye = e
        }
    };

    function $e(e, t, n, r, o, i, a, s, l) {
        We = !1, Ye = null, He.apply(Xe, arguments)
    }

    function Ke(e) {
        var t = e, n = e;
        if (e.alternate) for (; t.return;) t = t.return; else {
            e = t;
            do {
                0 != (1026 & (t = e).flags) && (n = t.return), e = t.return
            } while (e)
        }
        return 3 === t.tag ? n : null
    }

    function Qe(e) {
        if (13 === e.tag) {
            var t = e.memoizedState;
            if (null === t && (null !== (e = e.alternate) && (t = e.memoizedState)), null !== t) return t.dehydrated
        }
        return null
    }

    function Ze(e) {
        if (Ke(e) !== e) throw Error(a(188))
    }

    function Ge(e) {
        if (!(e = function (e) {
            var t = e.alternate;
            if (!t) {
                if (null === (t = Ke(e))) throw Error(a(188));
                return t !== e ? null : e
            }
            for (var n = e, r = t; ;) {
                var o = n.return;
                if (null === o) break;
                var i = o.alternate;
                if (null === i) {
                    if (null !== (r = o.return)) {
                        n = r;
                        continue
                    }
                    break
                }
                if (o.child === i.child) {
                    for (i = o.child; i;) {
                        if (i === n) return Ze(o), e;
                        if (i === r) return Ze(o), t;
                        i = i.sibling
                    }
                    throw Error(a(188))
                }
                if (n.return !== r.return) n = o, r = i; else {
                    for (var s = !1, l = o.child; l;) {
                        if (l === n) {
                            s = !0, n = o, r = i;
                            break
                        }
                        if (l === r) {
                            s = !0, r = o, n = i;
                            break
                        }
                        l = l.sibling
                    }
                    if (!s) {
                        for (l = i.child; l;) {
                            if (l === n) {
                                s = !0, n = i, r = o;
                                break
                            }
                            if (l === r) {
                                s = !0, r = i, n = o;
                                break
                            }
                            l = l.sibling
                        }
                        if (!s) throw Error(a(189))
                    }
                }
                if (n.alternate !== r) throw Error(a(190))
            }
            if (3 !== n.tag) throw Error(a(188));
            return n.stateNode.current === n ? e : t
        }(e))) return null;
        for (var t = e; ;) {
            if (5 === t.tag || 6 === t.tag) return t;
            if (t.child) t.child.return = t, t = t.child; else {
                if (t === e) break;
                for (; !t.sibling;) {
                    if (!t.return || t.return === e) return null;
                    t = t.return
                }
                t.sibling.return = t.return, t = t.sibling
            }
        }
        return null
    }

    function Je(e, t) {
        for (var n = e.alternate; null !== t;) {
            if (t === e || t === n) return !0;
            t = t.return
        }
        return !1
    }

    var et, tt, nt, rt, ot = !1, it = [], at = null, st = null, lt = null, ct = new Map, ut = new Map, ft = [],
        pt = "mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");

    function dt(e, t, n, r, o) {
        return {blockedOn: e, domEventName: t, eventSystemFlags: 16 | n, nativeEvent: o, targetContainers: [r]}
    }

    function ht(e, t) {
        switch (e) {
            case"focusin":
            case"focusout":
                at = null;
                break;
            case"dragenter":
            case"dragleave":
                st = null;
                break;
            case"mouseover":
            case"mouseout":
                lt = null;
                break;
            case"pointerover":
            case"pointerout":
                ct.delete(t.pointerId);
                break;
            case"gotpointercapture":
            case"lostpointercapture":
                ut.delete(t.pointerId)
        }
    }

    function gt(e, t, n, r, o, i) {
        return null === e || e.nativeEvent !== i ? (e = dt(t, n, r, o, i), null !== t && (null !== (t = Gr(t)) && tt(t)), e) : (e.eventSystemFlags |= r, t = e.targetContainers, null !== o && -1 === t.indexOf(o) && t.push(o), e)
    }

    function mt(e) {
        var t = Zr(e.target);
        if (null !== t) {
            var n = Ke(t);
            if (null !== n) if (13 === (t = n.tag)) {
                if (null !== (t = Qe(n))) return e.blockedOn = t, void rt(e.lanePriority, (function () {
                    i.unstable_runWithPriority(e.priority, (function () {
                        nt(n)
                    }))
                }))
            } else if (3 === t && n.stateNode.hydrate) return void (e.blockedOn = 3 === n.tag ? n.stateNode.containerInfo : null)
        }
        e.blockedOn = null
    }

    function bt(e) {
        if (null !== e.blockedOn) return !1;
        for (var t = e.targetContainers; 0 < t.length;) {
            var n = Gt(e.domEventName, e.eventSystemFlags, t[0], e.nativeEvent);
            if (null !== n) return null !== (t = Gr(n)) && tt(t), e.blockedOn = n, !1;
            t.shift()
        }
        return !0
    }

    function vt(e, t, n) {
        bt(e) && n.delete(t)
    }

    function yt() {
        for (ot = !1; 0 < it.length;) {
            var e = it[0];
            if (null !== e.blockedOn) {
                null !== (e = Gr(e.blockedOn)) && et(e);
                break
            }
            for (var t = e.targetContainers; 0 < t.length;) {
                var n = Gt(e.domEventName, e.eventSystemFlags, t[0], e.nativeEvent);
                if (null !== n) {
                    e.blockedOn = n;
                    break
                }
                t.shift()
            }
            null === e.blockedOn && it.shift()
        }
        null !== at && bt(at) && (at = null), null !== st && bt(st) && (st = null), null !== lt && bt(lt) && (lt = null), ct.forEach(vt), ut.forEach(vt)
    }

    function wt(e, t) {
        e.blockedOn === t && (e.blockedOn = null, ot || (ot = !0, i.unstable_scheduleCallback(i.unstable_NormalPriority, yt)))
    }

    function xt(e) {
        function t(t) {
            return wt(t, e)
        }

        if (0 < it.length) {
            wt(it[0], e);
            for (var n = 1; n < it.length; n++) {
                var r = it[n];
                r.blockedOn === e && (r.blockedOn = null)
            }
        }
        for (null !== at && wt(at, e), null !== st && wt(st, e), null !== lt && wt(lt, e), ct.forEach(t), ut.forEach(t), n = 0; n < ft.length; n++) (r = ft[n]).blockedOn === e && (r.blockedOn = null);
        for (; 0 < ft.length && null === (n = ft[0]).blockedOn;) mt(n), null === n.blockedOn && ft.shift()
    }

    function kt(e, t) {
        var n = {};
        return n[e.toLowerCase()] = t.toLowerCase(), n["Webkit" + e] = "webkit" + t, n["Moz" + e] = "moz" + t, n
    }

    var Ot = {
        animationend: kt("Animation", "AnimationEnd"),
        animationiteration: kt("Animation", "AnimationIteration"),
        animationstart: kt("Animation", "AnimationStart"),
        transitionend: kt("Transition", "TransitionEnd")
    }, St = {}, jt = {};

    function Ct(e) {
        if (St[e]) return St[e];
        if (!Ot[e]) return e;
        var t, n = Ot[e];
        for (t in n) if (n.hasOwnProperty(t) && t in jt) return St[e] = n[t];
        return e
    }

    f && (jt = document.createElement("div").style, "AnimationEvent" in window || (delete Ot.animationend.animation, delete Ot.animationiteration.animation, delete Ot.animationstart.animation), "TransitionEvent" in window || delete Ot.transitionend.transition);
    var _t = Ct("animationend"), Et = Ct("animationiteration"), Pt = Ct("animationstart"), Rt = Ct("transitionend"),
        Dt = new Map, Mt = new Map,
        At = ["abort", "abort", _t, "animationEnd", Et, "animationIteration", Pt, "animationStart", "canplay", "canPlay", "canplaythrough", "canPlayThrough", "durationchange", "durationChange", "emptied", "emptied", "encrypted", "encrypted", "ended", "ended", "error", "error", "gotpointercapture", "gotPointerCapture", "load", "load", "loadeddata", "loadedData", "loadedmetadata", "loadedMetadata", "loadstart", "loadStart", "lostpointercapture", "lostPointerCapture", "playing", "playing", "progress", "progress", "seeking", "seeking", "stalled", "stalled", "suspend", "suspend", "timeupdate", "timeUpdate", Rt, "transitionEnd", "waiting", "waiting"];

    function Tt(e, t) {
        for (var n = 0; n < e.length; n += 2) {
            var r = e[n], o = e[n + 1];
            o = "on" + (o[0].toUpperCase() + o.slice(1)), Mt.set(r, t), Dt.set(r, o), c(o, [r])
        }
    }

    (0, i.unstable_now)();
    var It = 8;

    function zt(e) {
        if (0 != (1 & e)) return It = 15, 1;
        if (0 != (2 & e)) return It = 14, 2;
        if (0 != (4 & e)) return It = 13, 4;
        var t = 24 & e;
        return 0 !== t ? (It = 12, t) : 0 != (32 & e) ? (It = 11, 32) : 0 !== (t = 192 & e) ? (It = 10, t) : 0 != (256 & e) ? (It = 9, 256) : 0 !== (t = 3584 & e) ? (It = 8, t) : 0 != (4096 & e) ? (It = 7, 4096) : 0 !== (t = 4186112 & e) ? (It = 6, t) : 0 !== (t = 62914560 & e) ? (It = 5, t) : 67108864 & e ? (It = 4, 67108864) : 0 != (134217728 & e) ? (It = 3, 134217728) : 0 !== (t = 805306368 & e) ? (It = 2, t) : 0 != (1073741824 & e) ? (It = 1, 1073741824) : (It = 8, e)
    }

    function Lt(e, t) {
        var n = e.pendingLanes;
        if (0 === n) return It = 0;
        var r = 0, o = 0, i = e.expiredLanes, a = e.suspendedLanes, s = e.pingedLanes;
        if (0 !== i) r = i, o = It = 15; else if (0 !== (i = 134217727 & n)) {
            var l = i & ~a;
            0 !== l ? (r = zt(l), o = It) : 0 !== (s &= i) && (r = zt(s), o = It)
        } else 0 !== (i = n & ~a) ? (r = zt(i), o = It) : 0 !== s && (r = zt(s), o = It);
        if (0 === r) return 0;
        if (r = n & ((0 > (r = 31 - Wt(r)) ? 0 : 1 << r) << 1) - 1, 0 !== t && t !== r && 0 == (t & a)) {
            if (zt(t), o <= It) return t;
            It = o
        }
        if (0 !== (t = e.entangledLanes)) for (e = e.entanglements, t &= r; 0 < t;) o = 1 << (n = 31 - Wt(t)), r |= e[n], t &= ~o;
        return r
    }

    function Bt(e) {
        return 0 !== (e = -1073741825 & e.pendingLanes) ? e : 1073741824 & e ? 1073741824 : 0
    }

    function Nt(e, t) {
        switch (e) {
            case 15:
                return 1;
            case 14:
                return 2;
            case 12:
                return 0 === (e = Ft(24 & ~t)) ? Nt(10, t) : e;
            case 10:
                return 0 === (e = Ft(192 & ~t)) ? Nt(8, t) : e;
            case 8:
                return 0 === (e = Ft(3584 & ~t)) && (0 === (e = Ft(4186112 & ~t)) && (e = 512)), e;
            case 2:
                return 0 === (t = Ft(805306368 & ~t)) && (t = 268435456), t
        }
        throw Error(a(358, e))
    }

    function Ft(e) {
        return e & -e
    }

    function Ut(e) {
        for (var t = [], n = 0; 31 > n; n++) t.push(e);
        return t
    }

    function Ht(e, t, n) {
        e.pendingLanes |= t;
        var r = t - 1;
        e.suspendedLanes &= r, e.pingedLanes &= r, (e = e.eventTimes)[t = 31 - Wt(t)] = n
    }

    var Wt = Math.clz32 ? Math.clz32 : function (e) {
        return 0 === e ? 32 : 31 - (Yt(e) / Vt | 0) | 0
    }, Yt = Math.log, Vt = Math.LN2;
    var qt = i.unstable_UserBlockingPriority, Xt = i.unstable_runWithPriority, $t = !0;

    function Kt(e, t, n, r) {
        ze || Te();
        var o = Zt, i = ze;
        ze = !0;
        try {
            Ae(o, e, t, n, r)
        } finally {
            (ze = i) || Be()
        }
    }

    function Qt(e, t, n, r) {
        Xt(qt, Zt.bind(null, e, t, n, r))
    }

    function Zt(e, t, n, r) {
        var o;
        if ($t) if ((o = 0 == (4 & t)) && 0 < it.length && -1 < pt.indexOf(e)) e = dt(null, e, t, n, r), it.push(e); else {
            var i = Gt(e, t, n, r);
            if (null === i) o && ht(e, r); else {
                if (o) {
                    if (-1 < pt.indexOf(e)) return e = dt(i, e, t, n, r), void it.push(e);
                    if (function (e, t, n, r, o) {
                        switch (t) {
                            case"focusin":
                                return at = gt(at, e, t, n, r, o), !0;
                            case"dragenter":
                                return st = gt(st, e, t, n, r, o), !0;
                            case"mouseover":
                                return lt = gt(lt, e, t, n, r, o), !0;
                            case"pointerover":
                                var i = o.pointerId;
                                return ct.set(i, gt(ct.get(i) || null, e, t, n, r, o)), !0;
                            case"gotpointercapture":
                                return i = o.pointerId, ut.set(i, gt(ut.get(i) || null, e, t, n, r, o)), !0
                        }
                        return !1
                    }(i, e, t, n, r)) return;
                    ht(e, r)
                }
                Rr(e, t, r, null, n)
            }
        }
    }

    function Gt(e, t, n, r) {
        var o = je(r);
        if (null !== (o = Zr(o))) {
            var i = Ke(o);
            if (null === i) o = null; else {
                var a = i.tag;
                if (13 === a) {
                    if (null !== (o = Qe(i))) return o;
                    o = null
                } else if (3 === a) {
                    if (i.stateNode.hydrate) return 3 === i.tag ? i.stateNode.containerInfo : null;
                    o = null
                } else i !== o && (o = null)
            }
        }
        return Rr(e, t, r, o, n), null
    }

    var Jt = null, en = null, tn = null;

    function nn() {
        if (tn) return tn;
        var e, t, n = en, r = n.length, o = "value" in Jt ? Jt.value : Jt.textContent, i = o.length;
        for (e = 0; e < r && n[e] === o[e]; e++) ;
        var a = r - e;
        for (t = 1; t <= a && n[r - t] === o[i - t]; t++) ;
        return tn = o.slice(e, 1 < t ? 1 - t : void 0)
    }

    function rn(e) {
        var t = e.keyCode;
        return "charCode" in e ? 0 === (e = e.charCode) && 13 === t && (e = 13) : e = t, 10 === e && (e = 13), 32 <= e || 13 === e ? e : 0
    }

    function on() {
        return !0
    }

    function an() {
        return !1
    }

    function sn(e) {
        function t(t, n, r, o, i) {
            for (var a in this._reactName = t, this._targetInst = r, this.type = n, this.nativeEvent = o, this.target = i, this.currentTarget = null, e) e.hasOwnProperty(a) && (t = e[a], this[a] = t ? t(o) : o[a]);
            return this.isDefaultPrevented = (null != o.defaultPrevented ? o.defaultPrevented : !1 === o.returnValue) ? on : an, this.isPropagationStopped = an, this
        }

        return o(t.prototype, {
            preventDefault: function () {
                this.defaultPrevented = !0;
                var e = this.nativeEvent;
                e && (e.preventDefault ? e.preventDefault() : "unknown" != typeof e.returnValue && (e.returnValue = !1), this.isDefaultPrevented = on)
            }, stopPropagation: function () {
                var e = this.nativeEvent;
                e && (e.stopPropagation ? e.stopPropagation() : "unknown" != typeof e.cancelBubble && (e.cancelBubble = !0), this.isPropagationStopped = on)
            }, persist: function () {
            }, isPersistent: on
        }), t
    }

    var ln, cn, un, fn = {
            eventPhase: 0, bubbles: 0, cancelable: 0, timeStamp: function (e) {
                return e.timeStamp || Date.now()
            }, defaultPrevented: 0, isTrusted: 0
        }, pn = sn(fn), dn = o({}, fn, {view: 0, detail: 0}), hn = sn(dn), gn = o({}, dn, {
            screenX: 0,
            screenY: 0,
            clientX: 0,
            clientY: 0,
            pageX: 0,
            pageY: 0,
            ctrlKey: 0,
            shiftKey: 0,
            altKey: 0,
            metaKey: 0,
            getModifierState: Cn,
            button: 0,
            buttons: 0,
            relatedTarget: function (e) {
                return void 0 === e.relatedTarget ? e.fromElement === e.srcElement ? e.toElement : e.fromElement : e.relatedTarget
            },
            movementX: function (e) {
                return "movementX" in e ? e.movementX : (e !== un && (un && "mousemove" === e.type ? (ln = e.screenX - un.screenX, cn = e.screenY - un.screenY) : cn = ln = 0, un = e), ln)
            },
            movementY: function (e) {
                return "movementY" in e ? e.movementY : cn
            }
        }), mn = sn(gn), bn = sn(o({}, gn, {dataTransfer: 0})), vn = sn(o({}, dn, {relatedTarget: 0})),
        yn = sn(o({}, fn, {animationName: 0, elapsedTime: 0, pseudoElement: 0})), wn = sn(o({}, fn, {
            clipboardData: function (e) {
                return "clipboardData" in e ? e.clipboardData : window.clipboardData
            }
        })), xn = sn(o({}, fn, {data: 0})), kn = {
            Esc: "Escape",
            Spacebar: " ",
            Left: "ArrowLeft",
            Up: "ArrowUp",
            Right: "ArrowRight",
            Down: "ArrowDown",
            Del: "Delete",
            Win: "OS",
            Menu: "ContextMenu",
            Apps: "ContextMenu",
            Scroll: "ScrollLock",
            MozPrintableKey: "Unidentified"
        }, On = {
            8: "Backspace",
            9: "Tab",
            12: "Clear",
            13: "Enter",
            16: "Shift",
            17: "Control",
            18: "Alt",
            19: "Pause",
            20: "CapsLock",
            27: "Escape",
            32: " ",
            33: "PageUp",
            34: "PageDown",
            35: "End",
            36: "Home",
            37: "ArrowLeft",
            38: "ArrowUp",
            39: "ArrowRight",
            40: "ArrowDown",
            45: "Insert",
            46: "Delete",
            112: "F1",
            113: "F2",
            114: "F3",
            115: "F4",
            116: "F5",
            117: "F6",
            118: "F7",
            119: "F8",
            120: "F9",
            121: "F10",
            122: "F11",
            123: "F12",
            144: "NumLock",
            145: "ScrollLock",
            224: "Meta"
        }, Sn = {Alt: "altKey", Control: "ctrlKey", Meta: "metaKey", Shift: "shiftKey"};

    function jn(e) {
        var t = this.nativeEvent;
        return t.getModifierState ? t.getModifierState(e) : !!(e = Sn[e]) && !!t[e]
    }

    function Cn() {
        return jn
    }

    var _n = sn(o({}, dn, {
        key: function (e) {
            if (e.key) {
                var t = kn[e.key] || e.key;
                if ("Unidentified" !== t) return t
            }
            return "keypress" === e.type ? 13 === (e = rn(e)) ? "Enter" : String.fromCharCode(e) : "keydown" === e.type || "keyup" === e.type ? On[e.keyCode] || "Unidentified" : ""
        },
        code: 0,
        location: 0,
        ctrlKey: 0,
        shiftKey: 0,
        altKey: 0,
        metaKey: 0,
        repeat: 0,
        locale: 0,
        getModifierState: Cn,
        charCode: function (e) {
            return "keypress" === e.type ? rn(e) : 0
        },
        keyCode: function (e) {
            return "keydown" === e.type || "keyup" === e.type ? e.keyCode : 0
        },
        which: function (e) {
            return "keypress" === e.type ? rn(e) : "keydown" === e.type || "keyup" === e.type ? e.keyCode : 0
        }
    })), En = sn(o({}, gn, {
        pointerId: 0,
        width: 0,
        height: 0,
        pressure: 0,
        tangentialPressure: 0,
        tiltX: 0,
        tiltY: 0,
        twist: 0,
        pointerType: 0,
        isPrimary: 0
    })), Pn = sn(o({}, dn, {
        touches: 0,
        targetTouches: 0,
        changedTouches: 0,
        altKey: 0,
        metaKey: 0,
        ctrlKey: 0,
        shiftKey: 0,
        getModifierState: Cn
    })), Rn = sn(o({}, fn, {propertyName: 0, elapsedTime: 0, pseudoElement: 0})), Dn = sn(o({}, gn, {
        deltaX: function (e) {
            return "deltaX" in e ? e.deltaX : "wheelDeltaX" in e ? -e.wheelDeltaX : 0
        }, deltaY: function (e) {
            return "deltaY" in e ? e.deltaY : "wheelDeltaY" in e ? -e.wheelDeltaY : "wheelDelta" in e ? -e.wheelDelta : 0
        }, deltaZ: 0, deltaMode: 0
    })), Mn = [9, 13, 27, 32], An = f && "CompositionEvent" in window, Tn = null;
    f && "documentMode" in document && (Tn = document.documentMode);
    var In = f && "TextEvent" in window && !Tn, zn = f && (!An || Tn && 8 < Tn && 11 >= Tn),
        Ln = String.fromCharCode(32), Bn = !1;

    function Nn(e, t) {
        switch (e) {
            case"keyup":
                return -1 !== Mn.indexOf(t.keyCode);
            case"keydown":
                return 229 !== t.keyCode;
            case"keypress":
            case"mousedown":
            case"focusout":
                return !0;
            default:
                return !1
        }
    }

    function Fn(e) {
        return "object" == typeof (e = e.detail) && "data" in e ? e.data : null
    }

    var Un = !1;
    var Hn = {
        color: !0,
        date: !0,
        datetime: !0,
        "datetime-local": !0,
        email: !0,
        month: !0,
        number: !0,
        password: !0,
        range: !0,
        search: !0,
        tel: !0,
        text: !0,
        time: !0,
        url: !0,
        week: !0
    };

    function Wn(e) {
        var t = e && e.nodeName && e.nodeName.toLowerCase();
        return "input" === t ? !!Hn[e.type] : "textarea" === t
    }

    function Yn(e, t, n, r) {
        Re(r), 0 < (t = Mr(t, "onChange")).length && (n = new pn("onChange", "change", null, n, r), e.push({
            event: n,
            listeners: t
        }))
    }

    var Vn = null, qn = null;

    function Xn(e) {
        Sr(e, 0)
    }

    function $n(e) {
        if (Z(Jr(e))) return e
    }

    function Kn(e, t) {
        if ("change" === e) return t
    }

    var Qn = !1;
    if (f) {
        var Zn;
        if (f) {
            var Gn = "oninput" in document;
            if (!Gn) {
                var Jn = document.createElement("div");
                Jn.setAttribute("oninput", "return;"), Gn = "function" == typeof Jn.oninput
            }
            Zn = Gn
        } else Zn = !1;
        Qn = Zn && (!document.documentMode || 9 < document.documentMode)
    }

    function er() {
        Vn && (Vn.detachEvent("onpropertychange", tr), qn = Vn = null)
    }

    function tr(e) {
        if ("value" === e.propertyName && $n(qn)) {
            var t = [];
            if (Yn(t, qn, e, je(e)), e = Xn, ze) e(t); else {
                ze = !0;
                try {
                    Me(e, t)
                } finally {
                    ze = !1, Be()
                }
            }
        }
    }

    function nr(e, t, n) {
        "focusin" === e ? (er(), qn = n, (Vn = t).attachEvent("onpropertychange", tr)) : "focusout" === e && er()
    }

    function rr(e) {
        if ("selectionchange" === e || "keyup" === e || "keydown" === e) return $n(qn)
    }

    function or(e, t) {
        if ("click" === e) return $n(t)
    }

    function ir(e, t) {
        if ("input" === e || "change" === e) return $n(t)
    }

    var ar = "function" == typeof Object.is ? Object.is : function (e, t) {
        return e === t && (0 !== e || 1 / e == 1 / t) || e != e && t != t
    }, sr = Object.prototype.hasOwnProperty;

    function lr(e, t) {
        if (ar(e, t)) return !0;
        if ("object" != typeof e || null === e || "object" != typeof t || null === t) return !1;
        var n = Object.keys(e), r = Object.keys(t);
        if (n.length !== r.length) return !1;
        for (r = 0; r < n.length; r++) if (!sr.call(t, n[r]) || !ar(e[n[r]], t[n[r]])) return !1;
        return !0
    }

    function cr(e) {
        for (; e && e.firstChild;) e = e.firstChild;
        return e
    }

    function ur(e, t) {
        var n, r = cr(e);
        for (e = 0; r;) {
            if (3 === r.nodeType) {
                if (n = e + r.textContent.length, e <= t && n >= t) return {node: r, offset: t - e};
                e = n
            }
            e:{
                for (; r;) {
                    if (r.nextSibling) {
                        r = r.nextSibling;
                        break e
                    }
                    r = r.parentNode
                }
                r = void 0
            }
            r = cr(r)
        }
    }

    function fr() {
        for (var e = window, t = G(); t instanceof e.HTMLIFrameElement;) {
            try {
                var n = "string" == typeof t.contentWindow.location.href
            } catch (e) {
                n = !1
            }
            if (!n) break;
            t = G((e = t.contentWindow).document)
        }
        return t
    }

    function pr(e) {
        var t = e && e.nodeName && e.nodeName.toLowerCase();
        return t && ("input" === t && ("text" === e.type || "search" === e.type || "tel" === e.type || "url" === e.type || "password" === e.type) || "textarea" === t || "true" === e.contentEditable)
    }

    var dr = f && "documentMode" in document && 11 >= document.documentMode, hr = null, gr = null, mr = null, br = !1;

    function vr(e, t, n) {
        var r = n.window === n ? n.document : 9 === n.nodeType ? n : n.ownerDocument;
        br || null == hr || hr !== G(r) || ("selectionStart" in (r = hr) && pr(r) ? r = {
            start: r.selectionStart,
            end: r.selectionEnd
        } : r = {
            anchorNode: (r = (r.ownerDocument && r.ownerDocument.defaultView || window).getSelection()).anchorNode,
            anchorOffset: r.anchorOffset,
            focusNode: r.focusNode,
            focusOffset: r.focusOffset
        }, mr && lr(mr, r) || (mr = r, 0 < (r = Mr(gr, "onSelect")).length && (t = new pn("onSelect", "select", null, t, n), e.push({
            event: t,
            listeners: r
        }), t.target = hr)))
    }

    Tt("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "), 0), Tt("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "), 1), Tt(At, 2);
    for (var yr = "change selectionchange textInput compositionstart compositionend compositionupdate".split(" "), wr = 0; wr < yr.length; wr++) Mt.set(yr[wr], 0);
    u("onMouseEnter", ["mouseout", "mouseover"]), u("onMouseLeave", ["mouseout", "mouseover"]), u("onPointerEnter", ["pointerout", "pointerover"]), u("onPointerLeave", ["pointerout", "pointerover"]), c("onChange", "change click focusin focusout input keydown keyup selectionchange".split(" ")), c("onSelect", "focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")), c("onBeforeInput", ["compositionend", "keypress", "textInput", "paste"]), c("onCompositionEnd", "compositionend focusout keydown keypress keyup mousedown".split(" ")), c("onCompositionStart", "compositionstart focusout keydown keypress keyup mousedown".split(" ")), c("onCompositionUpdate", "compositionupdate focusout keydown keypress keyup mousedown".split(" "));
    var xr = "abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),
        kr = new Set("cancel close invalid load scroll toggle".split(" ").concat(xr));

    function Or(e, t, n) {
        var r = e.type || "unknown-event";
        e.currentTarget = n, function (e, t, n, r, o, i, s, l, c) {
            if ($e.apply(this, arguments), We) {
                if (!We) throw Error(a(198));
                var u = Ye;
                We = !1, Ye = null, Ve || (Ve = !0, qe = u)
            }
        }(r, t, void 0, e), e.currentTarget = null
    }

    function Sr(e, t) {
        t = 0 != (4 & t);
        for (var n = 0; n < e.length; n++) {
            var r = e[n], o = r.event;
            r = r.listeners;
            e:{
                var i = void 0;
                if (t) for (var a = r.length - 1; 0 <= a; a--) {
                    var s = r[a], l = s.instance, c = s.currentTarget;
                    if (s = s.listener, l !== i && o.isPropagationStopped()) break e;
                    Or(o, s, c), i = l
                } else for (a = 0; a < r.length; a++) {
                    if (l = (s = r[a]).instance, c = s.currentTarget, s = s.listener, l !== i && o.isPropagationStopped()) break e;
                    Or(o, s, c), i = l
                }
            }
        }
        if (Ve) throw e = qe, Ve = !1, qe = null, e
    }

    function jr(e, t) {
        var n = to(t), r = e + "__bubble";
        n.has(r) || (Pr(t, e, 2, !1), n.add(r))
    }

    var Cr = "_reactListening" + Math.random().toString(36).slice(2);

    function _r(e) {
        e[Cr] || (e[Cr] = !0, s.forEach((function (t) {
            kr.has(t) || Er(t, !1, e, null), Er(t, !0, e, null)
        })))
    }

    function Er(e, t, n, r) {
        var o = 4 < arguments.length && void 0 !== arguments[4] ? arguments[4] : 0, i = n;
        if ("selectionchange" === e && 9 !== n.nodeType && (i = n.ownerDocument), null !== r && !t && kr.has(e)) {
            if ("scroll" !== e) return;
            o |= 2, i = r
        }
        var a = to(i), s = e + "__" + (t ? "capture" : "bubble");
        a.has(s) || (t && (o |= 4), Pr(i, e, o, t), a.add(s))
    }

    function Pr(e, t, n, r) {
        var o = Mt.get(t);
        switch (void 0 === o ? 2 : o) {
            case 0:
                o = Kt;
                break;
            case 1:
                o = Qt;
                break;
            default:
                o = Zt
        }
        n = o.bind(null, t, n, e), o = void 0, !Fe || "touchstart" !== t && "touchmove" !== t && "wheel" !== t || (o = !0), r ? void 0 !== o ? e.addEventListener(t, n, {
            capture: !0,
            passive: o
        }) : e.addEventListener(t, n, !0) : void 0 !== o ? e.addEventListener(t, n, {passive: o}) : e.addEventListener(t, n, !1)
    }

    function Rr(e, t, n, r, o) {
        var i = r;
        if (0 == (1 & t) && 0 == (2 & t) && null !== r) e:for (; ;) {
            if (null === r) return;
            var a = r.tag;
            if (3 === a || 4 === a) {
                var s = r.stateNode.containerInfo;
                if (s === o || 8 === s.nodeType && s.parentNode === o) break;
                if (4 === a) for (a = r.return; null !== a;) {
                    var l = a.tag;
                    if ((3 === l || 4 === l) && ((l = a.stateNode.containerInfo) === o || 8 === l.nodeType && l.parentNode === o)) return;
                    a = a.return
                }
                for (; null !== s;) {
                    if (null === (a = Zr(s))) return;
                    if (5 === (l = a.tag) || 6 === l) {
                        r = i = a;
                        continue e
                    }
                    s = s.parentNode
                }
            }
            r = r.return
        }
        !function (e, t, n) {
            if (Le) return e(t, n);
            Le = !0;
            try {
                Ie(e, t, n)
            } finally {
                Le = !1, Be()
            }
        }((function () {
            var r = i, o = je(n), a = [];
            e:{
                var s = Dt.get(e);
                if (void 0 !== s) {
                    var l = pn, c = e;
                    switch (e) {
                        case"keypress":
                            if (0 === rn(n)) break e;
                        case"keydown":
                        case"keyup":
                            l = _n;
                            break;
                        case"focusin":
                            c = "focus", l = vn;
                            break;
                        case"focusout":
                            c = "blur", l = vn;
                            break;
                        case"beforeblur":
                        case"afterblur":
                            l = vn;
                            break;
                        case"click":
                            if (2 === n.button) break e;
                        case"auxclick":
                        case"dblclick":
                        case"mousedown":
                        case"mousemove":
                        case"mouseup":
                        case"mouseout":
                        case"mouseover":
                        case"contextmenu":
                            l = mn;
                            break;
                        case"drag":
                        case"dragend":
                        case"dragenter":
                        case"dragexit":
                        case"dragleave":
                        case"dragover":
                        case"dragstart":
                        case"drop":
                            l = bn;
                            break;
                        case"touchcancel":
                        case"touchend":
                        case"touchmove":
                        case"touchstart":
                            l = Pn;
                            break;
                        case _t:
                        case Et:
                        case Pt:
                            l = yn;
                            break;
                        case Rt:
                            l = Rn;
                            break;
                        case"scroll":
                            l = hn;
                            break;
                        case"wheel":
                            l = Dn;
                            break;
                        case"copy":
                        case"cut":
                        case"paste":
                            l = wn;
                            break;
                        case"gotpointercapture":
                        case"lostpointercapture":
                        case"pointercancel":
                        case"pointerdown":
                        case"pointermove":
                        case"pointerout":
                        case"pointerover":
                        case"pointerup":
                            l = En
                    }
                    var u = 0 != (4 & t), f = !u && "scroll" === e, p = u ? null !== s ? s + "Capture" : null : s;
                    u = [];
                    for (var d, h = r; null !== h;) {
                        var g = (d = h).stateNode;
                        if (5 === d.tag && null !== g && (d = g, null !== p && (null != (g = Ne(h, p)) && u.push(Dr(h, g, d)))), f) break;
                        h = h.return
                    }
                    0 < u.length && (s = new l(s, c, null, n, o), a.push({event: s, listeners: u}))
                }
            }
            if (0 == (7 & t)) {
                if (l = "mouseout" === e || "pointerout" === e, (!(s = "mouseover" === e || "pointerover" === e) || 0 != (16 & t) || !(c = n.relatedTarget || n.fromElement) || !Zr(c) && !c[Kr]) && (l || s) && (s = o.window === o ? o : (s = o.ownerDocument) ? s.defaultView || s.parentWindow : window, l ? (l = r, null !== (c = (c = n.relatedTarget || n.toElement) ? Zr(c) : null) && (c !== (f = Ke(c)) || 5 !== c.tag && 6 !== c.tag) && (c = null)) : (l = null, c = r), l !== c)) {
                    if (u = mn, g = "onMouseLeave", p = "onMouseEnter", h = "mouse", "pointerout" !== e && "pointerover" !== e || (u = En, g = "onPointerLeave", p = "onPointerEnter", h = "pointer"), f = null == l ? s : Jr(l), d = null == c ? s : Jr(c), (s = new u(g, h + "leave", l, n, o)).target = f, s.relatedTarget = d, g = null, Zr(o) === r && ((u = new u(p, h + "enter", c, n, o)).target = d, u.relatedTarget = f, g = u), f = g, l && c) e:{
                        for (p = c, h = 0, d = u = l; d; d = Ar(d)) h++;
                        for (d = 0, g = p; g; g = Ar(g)) d++;
                        for (; 0 < h - d;) u = Ar(u), h--;
                        for (; 0 < d - h;) p = Ar(p), d--;
                        for (; h--;) {
                            if (u === p || null !== p && u === p.alternate) break e;
                            u = Ar(u), p = Ar(p)
                        }
                        u = null
                    } else u = null;
                    null !== l && Tr(a, s, l, u, !1), null !== c && null !== f && Tr(a, f, c, u, !0)
                }
                if ("select" === (l = (s = r ? Jr(r) : window).nodeName && s.nodeName.toLowerCase()) || "input" === l && "file" === s.type) var m = Kn; else if (Wn(s)) if (Qn) m = ir; else {
                    m = rr;
                    var b = nr
                } else (l = s.nodeName) && "input" === l.toLowerCase() && ("checkbox" === s.type || "radio" === s.type) && (m = or);
                switch (m && (m = m(e, r)) ? Yn(a, m, n, o) : (b && b(e, s, r), "focusout" === e && (b = s._wrapperState) && b.controlled && "number" === s.type && oe(s, "number", s.value)), b = r ? Jr(r) : window, e) {
                    case"focusin":
                        (Wn(b) || "true" === b.contentEditable) && (hr = b, gr = r, mr = null);
                        break;
                    case"focusout":
                        mr = gr = hr = null;
                        break;
                    case"mousedown":
                        br = !0;
                        break;
                    case"contextmenu":
                    case"mouseup":
                    case"dragend":
                        br = !1, vr(a, n, o);
                        break;
                    case"selectionchange":
                        if (dr) break;
                    case"keydown":
                    case"keyup":
                        vr(a, n, o)
                }
                var v;
                if (An) e:{
                    switch (e) {
                        case"compositionstart":
                            var y = "onCompositionStart";
                            break e;
                        case"compositionend":
                            y = "onCompositionEnd";
                            break e;
                        case"compositionupdate":
                            y = "onCompositionUpdate";
                            break e
                    }
                    y = void 0
                } else Un ? Nn(e, n) && (y = "onCompositionEnd") : "keydown" === e && 229 === n.keyCode && (y = "onCompositionStart");
                y && (zn && "ko" !== n.locale && (Un || "onCompositionStart" !== y ? "onCompositionEnd" === y && Un && (v = nn()) : (en = "value" in (Jt = o) ? Jt.value : Jt.textContent, Un = !0)), 0 < (b = Mr(r, y)).length && (y = new xn(y, e, null, n, o), a.push({
                    event: y,
                    listeners: b
                }), v ? y.data = v : null !== (v = Fn(n)) && (y.data = v))), (v = In ? function (e, t) {
                    switch (e) {
                        case"compositionend":
                            return Fn(t);
                        case"keypress":
                            return 32 !== t.which ? null : (Bn = !0, Ln);
                        case"textInput":
                            return (e = t.data) === Ln && Bn ? null : e;
                        default:
                            return null
                    }
                }(e, n) : function (e, t) {
                    if (Un) return "compositionend" === e || !An && Nn(e, t) ? (e = nn(), tn = en = Jt = null, Un = !1, e) : null;
                    switch (e) {
                        case"paste":
                            return null;
                        case"keypress":
                            if (!(t.ctrlKey || t.altKey || t.metaKey) || t.ctrlKey && t.altKey) {
                                if (t.char && 1 < t.char.length) return t.char;
                                if (t.which) return String.fromCharCode(t.which)
                            }
                            return null;
                        case"compositionend":
                            return zn && "ko" !== t.locale ? null : t.data;
                        default:
                            return null
                    }
                }(e, n)) && (0 < (r = Mr(r, "onBeforeInput")).length && (o = new xn("onBeforeInput", "beforeinput", null, n, o), a.push({
                    event: o,
                    listeners: r
                }), o.data = v))
            }
            Sr(a, t)
        }))
    }

    function Dr(e, t, n) {
        return {instance: e, listener: t, currentTarget: n}
    }

    function Mr(e, t) {
        for (var n = t + "Capture", r = []; null !== e;) {
            var o = e, i = o.stateNode;
            5 === o.tag && null !== i && (o = i, null != (i = Ne(e, n)) && r.unshift(Dr(e, i, o)), null != (i = Ne(e, t)) && r.push(Dr(e, i, o))), e = e.return
        }
        return r
    }

    function Ar(e) {
        if (null === e) return null;
        do {
            e = e.return
        } while (e && 5 !== e.tag);
        return e || null
    }

    function Tr(e, t, n, r, o) {
        for (var i = t._reactName, a = []; null !== n && n !== r;) {
            var s = n, l = s.alternate, c = s.stateNode;
            if (null !== l && l === r) break;
            5 === s.tag && null !== c && (s = c, o ? null != (l = Ne(n, i)) && a.unshift(Dr(n, l, s)) : o || null != (l = Ne(n, i)) && a.push(Dr(n, l, s))), n = n.return
        }
        0 !== a.length && e.push({event: t, listeners: a})
    }

    function Ir() {
    }

    var zr = null, Lr = null;

    function Br(e, t) {
        switch (e) {
            case"button":
            case"input":
            case"select":
            case"textarea":
                return !!t.autoFocus
        }
        return !1
    }

    function Nr(e, t) {
        return "textarea" === e || "option" === e || "noscript" === e || "string" == typeof t.children || "number" == typeof t.children || "object" == typeof t.dangerouslySetInnerHTML && null !== t.dangerouslySetInnerHTML && null != t.dangerouslySetInnerHTML.__html
    }

    var Fr = "function" == typeof setTimeout ? setTimeout : void 0,
        Ur = "function" == typeof clearTimeout ? clearTimeout : void 0;

    function Hr(e) {
        1 === e.nodeType ? e.textContent = "" : 9 === e.nodeType && (null != (e = e.body) && (e.textContent = ""))
    }

    function Wr(e) {
        for (; null != e; e = e.nextSibling) {
            var t = e.nodeType;
            if (1 === t || 3 === t) break
        }
        return e
    }

    function Yr(e) {
        e = e.previousSibling;
        for (var t = 0; e;) {
            if (8 === e.nodeType) {
                var n = e.data;
                if ("$" === n || "$!" === n || "$?" === n) {
                    if (0 === t) return e;
                    t--
                } else "/$" === n && t++
            }
            e = e.previousSibling
        }
        return null
    }

    var Vr = 0;
    var qr = Math.random().toString(36).slice(2), Xr = "__reactFiber$" + qr, $r = "__reactProps$" + qr,
        Kr = "__reactContainer$" + qr, Qr = "__reactEvents$" + qr;

    function Zr(e) {
        var t = e[Xr];
        if (t) return t;
        for (var n = e.parentNode; n;) {
            if (t = n[Kr] || n[Xr]) {
                if (n = t.alternate, null !== t.child || null !== n && null !== n.child) for (e = Yr(e); null !== e;) {
                    if (n = e[Xr]) return n;
                    e = Yr(e)
                }
                return t
            }
            n = (e = n).parentNode
        }
        return null
    }

    function Gr(e) {
        return !(e = e[Xr] || e[Kr]) || 5 !== e.tag && 6 !== e.tag && 13 !== e.tag && 3 !== e.tag ? null : e
    }

    function Jr(e) {
        if (5 === e.tag || 6 === e.tag) return e.stateNode;
        throw Error(a(33))
    }

    function eo(e) {
        return e[$r] || null
    }

    function to(e) {
        var t = e[Qr];
        return void 0 === t && (t = e[Qr] = new Set), t
    }

    var no = [], ro = -1;

    function oo(e) {
        return {current: e}
    }

    function io(e) {
        0 > ro || (e.current = no[ro], no[ro] = null, ro--)
    }

    function ao(e, t) {
        ro++, no[ro] = e.current, e.current = t
    }

    var so = {}, lo = oo(so), co = oo(!1), uo = so;

    function fo(e, t) {
        var n = e.type.contextTypes;
        if (!n) return so;
        var r = e.stateNode;
        if (r && r.__reactInternalMemoizedUnmaskedChildContext === t) return r.__reactInternalMemoizedMaskedChildContext;
        var o, i = {};
        for (o in n) i[o] = t[o];
        return r && ((e = e.stateNode).__reactInternalMemoizedUnmaskedChildContext = t, e.__reactInternalMemoizedMaskedChildContext = i), i
    }

    function po(e) {
        return null != (e = e.childContextTypes)
    }

    function ho() {
        io(co), io(lo)
    }

    function go(e, t, n) {
        if (lo.current !== so) throw Error(a(168));
        ao(lo, t), ao(co, n)
    }

    function mo(e, t, n) {
        var r = e.stateNode;
        if (e = t.childContextTypes, "function" != typeof r.getChildContext) return n;
        for (var i in r = r.getChildContext()) if (!(i in e)) throw Error(a(108, X(t) || "Unknown", i));
        return o({}, n, r)
    }

    function bo(e) {
        return e = (e = e.stateNode) && e.__reactInternalMemoizedMergedChildContext || so, uo = lo.current, ao(lo, e), ao(co, co.current), !0
    }

    function vo(e, t, n) {
        var r = e.stateNode;
        if (!r) throw Error(a(169));
        n ? (e = mo(e, t, uo), r.__reactInternalMemoizedMergedChildContext = e, io(co), io(lo), ao(lo, e)) : io(co), ao(co, n)
    }

    var yo = null, wo = null, xo = i.unstable_runWithPriority, ko = i.unstable_scheduleCallback,
        Oo = i.unstable_cancelCallback, So = i.unstable_shouldYield, jo = i.unstable_requestPaint, Co = i.unstable_now,
        _o = i.unstable_getCurrentPriorityLevel, Eo = i.unstable_ImmediatePriority,
        Po = i.unstable_UserBlockingPriority, Ro = i.unstable_NormalPriority, Do = i.unstable_LowPriority,
        Mo = i.unstable_IdlePriority, Ao = {}, To = void 0 !== jo ? jo : function () {
        }, Io = null, zo = null, Lo = !1, Bo = Co(), No = 1e4 > Bo ? Co : function () {
            return Co() - Bo
        };

    function Fo() {
        switch (_o()) {
            case Eo:
                return 99;
            case Po:
                return 98;
            case Ro:
                return 97;
            case Do:
                return 96;
            case Mo:
                return 95;
            default:
                throw Error(a(332))
        }
    }

    function Uo(e) {
        switch (e) {
            case 99:
                return Eo;
            case 98:
                return Po;
            case 97:
                return Ro;
            case 96:
                return Do;
            case 95:
                return Mo;
            default:
                throw Error(a(332))
        }
    }

    function Ho(e, t) {
        return e = Uo(e), xo(e, t)
    }

    function Wo(e, t, n) {
        return e = Uo(e), ko(e, t, n)
    }

    function Yo() {
        if (null !== zo) {
            var e = zo;
            zo = null, Oo(e)
        }
        Vo()
    }

    function Vo() {
        if (!Lo && null !== Io) {
            Lo = !0;
            var e = 0;
            try {
                var t = Io;
                Ho(99, (function () {
                    for (; e < t.length; e++) {
                        var n = t[e];
                        do {
                            n = n(!0)
                        } while (null !== n)
                    }
                })), Io = null
            } catch (t) {
                throw null !== Io && (Io = Io.slice(e + 1)), ko(Eo, Yo), t
            } finally {
                Lo = !1
            }
        }
    }

    var qo = x.ReactCurrentBatchConfig;

    function Xo(e, t) {
        if (e && e.defaultProps) {
            for (var n in t = o({}, t), e = e.defaultProps) void 0 === t[n] && (t[n] = e[n]);
            return t
        }
        return t
    }

    var $o = oo(null), Ko = null, Qo = null, Zo = null;

    function Go() {
        Zo = Qo = Ko = null
    }

    function Jo(e) {
        var t = $o.current;
        io($o), e.type._context._currentValue = t
    }

    function ei(e, t) {
        for (; null !== e;) {
            var n = e.alternate;
            if ((e.childLanes & t) === t) {
                if (null === n || (n.childLanes & t) === t) break;
                n.childLanes |= t
            } else e.childLanes |= t, null !== n && (n.childLanes |= t);
            e = e.return
        }
    }

    function ti(e, t) {
        Ko = e, Zo = Qo = null, null !== (e = e.dependencies) && null !== e.firstContext && (0 != (e.lanes & t) && (Ma = !0), e.firstContext = null)
    }

    function ni(e, t) {
        if (Zo !== e && !1 !== t && 0 !== t) if ("number" == typeof t && 1073741823 !== t || (Zo = e, t = 1073741823), t = {
            context: e,
            observedBits: t,
            next: null
        }, null === Qo) {
            if (null === Ko) throw Error(a(308));
            Qo = t, Ko.dependencies = {lanes: 0, firstContext: t, responders: null}
        } else Qo = Qo.next = t;
        return e._currentValue
    }

    var ri = !1;

    function oi(e) {
        e.updateQueue = {
            baseState: e.memoizedState,
            firstBaseUpdate: null,
            lastBaseUpdate: null,
            shared: {pending: null},
            effects: null
        }
    }

    function ii(e, t) {
        e = e.updateQueue, t.updateQueue === e && (t.updateQueue = {
            baseState: e.baseState,
            firstBaseUpdate: e.firstBaseUpdate,
            lastBaseUpdate: e.lastBaseUpdate,
            shared: e.shared,
            effects: e.effects
        })
    }

    function ai(e, t) {
        return {eventTime: e, lane: t, tag: 0, payload: null, callback: null, next: null}
    }

    function si(e, t) {
        if (null !== (e = e.updateQueue)) {
            var n = (e = e.shared).pending;
            null === n ? t.next = t : (t.next = n.next, n.next = t), e.pending = t
        }
    }

    function li(e, t) {
        var n = e.updateQueue, r = e.alternate;
        if (null !== r && n === (r = r.updateQueue)) {
            var o = null, i = null;
            if (null !== (n = n.firstBaseUpdate)) {
                do {
                    var a = {
                        eventTime: n.eventTime,
                        lane: n.lane,
                        tag: n.tag,
                        payload: n.payload,
                        callback: n.callback,
                        next: null
                    };
                    null === i ? o = i = a : i = i.next = a, n = n.next
                } while (null !== n);
                null === i ? o = i = t : i = i.next = t
            } else o = i = t;
            return n = {
                baseState: r.baseState,
                firstBaseUpdate: o,
                lastBaseUpdate: i,
                shared: r.shared,
                effects: r.effects
            }, void (e.updateQueue = n)
        }
        null === (e = n.lastBaseUpdate) ? n.firstBaseUpdate = t : e.next = t, n.lastBaseUpdate = t
    }

    function ci(e, t, n, r) {
        var i = e.updateQueue;
        ri = !1;
        var a = i.firstBaseUpdate, s = i.lastBaseUpdate, l = i.shared.pending;
        if (null !== l) {
            i.shared.pending = null;
            var c = l, u = c.next;
            c.next = null, null === s ? a = u : s.next = u, s = c;
            var f = e.alternate;
            if (null !== f) {
                var p = (f = f.updateQueue).lastBaseUpdate;
                p !== s && (null === p ? f.firstBaseUpdate = u : p.next = u, f.lastBaseUpdate = c)
            }
        }
        if (null !== a) {
            for (p = i.baseState, s = 0, f = u = c = null; ;) {
                l = a.lane;
                var d = a.eventTime;
                if ((r & l) === l) {
                    null !== f && (f = f.next = {
                        eventTime: d,
                        lane: 0,
                        tag: a.tag,
                        payload: a.payload,
                        callback: a.callback,
                        next: null
                    });
                    e:{
                        var h = e, g = a;
                        switch (l = t, d = n, g.tag) {
                            case 1:
                                if ("function" == typeof (h = g.payload)) {
                                    p = h.call(d, p, l);
                                    break e
                                }
                                p = h;
                                break e;
                            case 3:
                                h.flags = -4097 & h.flags | 64;
                            case 0:
                                if (null == (l = "function" == typeof (h = g.payload) ? h.call(d, p, l) : h)) break e;
                                p = o({}, p, l);
                                break e;
                            case 2:
                                ri = !0
                        }
                    }
                    null !== a.callback && (e.flags |= 32, null === (l = i.effects) ? i.effects = [a] : l.push(a))
                } else d = {
                    eventTime: d,
                    lane: l,
                    tag: a.tag,
                    payload: a.payload,
                    callback: a.callback,
                    next: null
                }, null === f ? (u = f = d, c = p) : f = f.next = d, s |= l;
                if (null === (a = a.next)) {
                    if (null === (l = i.shared.pending)) break;
                    a = l.next, l.next = null, i.lastBaseUpdate = l, i.shared.pending = null
                }
            }
            null === f && (c = p), i.baseState = c, i.firstBaseUpdate = u, i.lastBaseUpdate = f, Ts |= s, e.lanes = s, e.memoizedState = p
        }
    }

    function ui(e, t, n) {
        if (e = t.effects, t.effects = null, null !== e) for (t = 0; t < e.length; t++) {
            var r = e[t], o = r.callback;
            if (null !== o) {
                if (r.callback = null, r = n, "function" != typeof o) throw Error(a(191, o));
                o.call(r)
            }
        }
    }

    var fi = (new r.Component).refs;

    function pi(e, t, n, r) {
        n = null == (n = n(r, t = e.memoizedState)) ? t : o({}, t, n), e.memoizedState = n, 0 === e.lanes && (e.updateQueue.baseState = n)
    }

    var di = {
        isMounted: function (e) {
            return !!(e = e._reactInternals) && Ke(e) === e
        }, enqueueSetState: function (e, t, n) {
            e = e._reactInternals;
            var r = il(), o = al(e), i = ai(r, o);
            i.payload = t, null != n && (i.callback = n), si(e, i), sl(e, o, r)
        }, enqueueReplaceState: function (e, t, n) {
            e = e._reactInternals;
            var r = il(), o = al(e), i = ai(r, o);
            i.tag = 1, i.payload = t, null != n && (i.callback = n), si(e, i), sl(e, o, r)
        }, enqueueForceUpdate: function (e, t) {
            e = e._reactInternals;
            var n = il(), r = al(e), o = ai(n, r);
            o.tag = 2, null != t && (o.callback = t), si(e, o), sl(e, r, n)
        }
    };

    function hi(e, t, n, r, o, i, a) {
        return "function" == typeof (e = e.stateNode).shouldComponentUpdate ? e.shouldComponentUpdate(r, i, a) : !t.prototype || !t.prototype.isPureReactComponent || (!lr(n, r) || !lr(o, i))
    }

    function gi(e, t, n) {
        var r = !1, o = so, i = t.contextType;
        return "object" == typeof i && null !== i ? i = ni(i) : (o = po(t) ? uo : lo.current, i = (r = null != (r = t.contextTypes)) ? fo(e, o) : so), t = new t(n, i), e.memoizedState = null !== t.state && void 0 !== t.state ? t.state : null, t.updater = di, e.stateNode = t, t._reactInternals = e, r && ((e = e.stateNode).__reactInternalMemoizedUnmaskedChildContext = o, e.__reactInternalMemoizedMaskedChildContext = i), t
    }

    function mi(e, t, n, r) {
        e = t.state, "function" == typeof t.componentWillReceiveProps && t.componentWillReceiveProps(n, r), "function" == typeof t.UNSAFE_componentWillReceiveProps && t.UNSAFE_componentWillReceiveProps(n, r), t.state !== e && di.enqueueReplaceState(t, t.state, null)
    }

    function bi(e, t, n, r) {
        var o = e.stateNode;
        o.props = n, o.state = e.memoizedState, o.refs = fi, oi(e);
        var i = t.contextType;
        "object" == typeof i && null !== i ? o.context = ni(i) : (i = po(t) ? uo : lo.current, o.context = fo(e, i)), ci(e, n, o, r), o.state = e.memoizedState, "function" == typeof (i = t.getDerivedStateFromProps) && (pi(e, t, i, n), o.state = e.memoizedState), "function" == typeof t.getDerivedStateFromProps || "function" == typeof o.getSnapshotBeforeUpdate || "function" != typeof o.UNSAFE_componentWillMount && "function" != typeof o.componentWillMount || (t = o.state, "function" == typeof o.componentWillMount && o.componentWillMount(), "function" == typeof o.UNSAFE_componentWillMount && o.UNSAFE_componentWillMount(), t !== o.state && di.enqueueReplaceState(o, o.state, null), ci(e, n, o, r), o.state = e.memoizedState), "function" == typeof o.componentDidMount && (e.flags |= 4)
    }

    var vi = Array.isArray;

    function yi(e, t, n) {
        if (null !== (e = n.ref) && "function" != typeof e && "object" != typeof e) {
            if (n._owner) {
                if (n = n._owner) {
                    if (1 !== n.tag) throw Error(a(309));
                    var r = n.stateNode
                }
                if (!r) throw Error(a(147, e));
                var o = "" + e;
                return null !== t && null !== t.ref && "function" == typeof t.ref && t.ref._stringRef === o ? t.ref : ((t = function (e) {
                    var t = r.refs;
                    t === fi && (t = r.refs = {}), null === e ? delete t[o] : t[o] = e
                })._stringRef = o, t)
            }
            if ("string" != typeof e) throw Error(a(284));
            if (!n._owner) throw Error(a(290, e))
        }
        return e
    }

    function wi(e, t) {
        if ("textarea" !== e.type) throw Error(a(31, "[object Object]" === Object.prototype.toString.call(t) ? "object with keys {" + Object.keys(t).join(", ") + "}" : t))
    }

    function xi(e) {
        function t(t, n) {
            if (e) {
                var r = t.lastEffect;
                null !== r ? (r.nextEffect = n, t.lastEffect = n) : t.firstEffect = t.lastEffect = n, n.nextEffect = null, n.flags = 8
            }
        }

        function n(n, r) {
            if (!e) return null;
            for (; null !== r;) t(n, r), r = r.sibling;
            return null
        }

        function r(e, t) {
            for (e = new Map; null !== t;) null !== t.key ? e.set(t.key, t) : e.set(t.index, t), t = t.sibling;
            return e
        }

        function o(e, t) {
            return (e = Nl(e, t)).index = 0, e.sibling = null, e
        }

        function i(t, n, r) {
            return t.index = r, e ? null !== (r = t.alternate) ? (r = r.index) < n ? (t.flags = 2, n) : r : (t.flags = 2, n) : n
        }

        function s(t) {
            return e && null === t.alternate && (t.flags = 2), t
        }

        function l(e, t, n, r) {
            return null === t || 6 !== t.tag ? ((t = Wl(n, e.mode, r)).return = e, t) : ((t = o(t, n)).return = e, t)
        }

        function c(e, t, n, r) {
            return null !== t && t.elementType === n.type ? ((r = o(t, n.props)).ref = yi(e, t, n), r.return = e, r) : ((r = Fl(n.type, n.key, n.props, null, e.mode, r)).ref = yi(e, t, n), r.return = e, r)
        }

        function u(e, t, n, r) {
            return null === t || 4 !== t.tag || t.stateNode.containerInfo !== n.containerInfo || t.stateNode.implementation !== n.implementation ? ((t = Yl(n, e.mode, r)).return = e, t) : ((t = o(t, n.children || [])).return = e, t)
        }

        function f(e, t, n, r, i) {
            return null === t || 7 !== t.tag ? ((t = Ul(n, e.mode, r, i)).return = e, t) : ((t = o(t, n)).return = e, t)
        }

        function p(e, t, n) {
            if ("string" == typeof t || "number" == typeof t) return (t = Wl("" + t, e.mode, n)).return = e, t;
            if ("object" == typeof t && null !== t) {
                switch (t.$$typeof) {
                    case k:
                        return (n = Fl(t.type, t.key, t.props, null, e.mode, n)).ref = yi(e, null, t), n.return = e, n;
                    case O:
                        return (t = Yl(t, e.mode, n)).return = e, t
                }
                if (vi(t) || H(t)) return (t = Ul(t, e.mode, n, null)).return = e, t;
                wi(e, t)
            }
            return null
        }

        function d(e, t, n, r) {
            var o = null !== t ? t.key : null;
            if ("string" == typeof n || "number" == typeof n) return null !== o ? null : l(e, t, "" + n, r);
            if ("object" == typeof n && null !== n) {
                switch (n.$$typeof) {
                    case k:
                        return n.key === o ? n.type === S ? f(e, t, n.props.children, r, o) : c(e, t, n, r) : null;
                    case O:
                        return n.key === o ? u(e, t, n, r) : null
                }
                if (vi(n) || H(n)) return null !== o ? null : f(e, t, n, r, null);
                wi(e, n)
            }
            return null
        }

        function h(e, t, n, r, o) {
            if ("string" == typeof r || "number" == typeof r) return l(t, e = e.get(n) || null, "" + r, o);
            if ("object" == typeof r && null !== r) {
                switch (r.$$typeof) {
                    case k:
                        return e = e.get(null === r.key ? n : r.key) || null, r.type === S ? f(t, e, r.props.children, o, r.key) : c(t, e, r, o);
                    case O:
                        return u(t, e = e.get(null === r.key ? n : r.key) || null, r, o)
                }
                if (vi(r) || H(r)) return f(t, e = e.get(n) || null, r, o, null);
                wi(t, r)
            }
            return null
        }

        function g(o, a, s, l) {
            for (var c = null, u = null, f = a, g = a = 0, m = null; null !== f && g < s.length; g++) {
                f.index > g ? (m = f, f = null) : m = f.sibling;
                var b = d(o, f, s[g], l);
                if (null === b) {
                    null === f && (f = m);
                    break
                }
                e && f && null === b.alternate && t(o, f), a = i(b, a, g), null === u ? c = b : u.sibling = b, u = b, f = m
            }
            if (g === s.length) return n(o, f), c;
            if (null === f) {
                for (; g < s.length; g++) null !== (f = p(o, s[g], l)) && (a = i(f, a, g), null === u ? c = f : u.sibling = f, u = f);
                return c
            }
            for (f = r(o, f); g < s.length; g++) null !== (m = h(f, o, g, s[g], l)) && (e && null !== m.alternate && f.delete(null === m.key ? g : m.key), a = i(m, a, g), null === u ? c = m : u.sibling = m, u = m);
            return e && f.forEach((function (e) {
                return t(o, e)
            })), c
        }

        function m(o, s, l, c) {
            var u = H(l);
            if ("function" != typeof u) throw Error(a(150));
            if (null == (l = u.call(l))) throw Error(a(151));
            for (var f = u = null, g = s, m = s = 0, b = null, v = l.next(); null !== g && !v.done; m++, v = l.next()) {
                g.index > m ? (b = g, g = null) : b = g.sibling;
                var y = d(o, g, v.value, c);
                if (null === y) {
                    null === g && (g = b);
                    break
                }
                e && g && null === y.alternate && t(o, g), s = i(y, s, m), null === f ? u = y : f.sibling = y, f = y, g = b
            }
            if (v.done) return n(o, g), u;
            if (null === g) {
                for (; !v.done; m++, v = l.next()) null !== (v = p(o, v.value, c)) && (s = i(v, s, m), null === f ? u = v : f.sibling = v, f = v);
                return u
            }
            for (g = r(o, g); !v.done; m++, v = l.next()) null !== (v = h(g, o, m, v.value, c)) && (e && null !== v.alternate && g.delete(null === v.key ? m : v.key), s = i(v, s, m), null === f ? u = v : f.sibling = v, f = v);
            return e && g.forEach((function (e) {
                return t(o, e)
            })), u
        }

        return function (e, r, i, l) {
            var c = "object" == typeof i && null !== i && i.type === S && null === i.key;
            c && (i = i.props.children);
            var u = "object" == typeof i && null !== i;
            if (u) switch (i.$$typeof) {
                case k:
                    e:{
                        for (u = i.key, c = r; null !== c;) {
                            if (c.key === u) {
                                switch (c.tag) {
                                    case 7:
                                        if (i.type === S) {
                                            n(e, c.sibling), (r = o(c, i.props.children)).return = e, e = r;
                                            break e
                                        }
                                        break;
                                    default:
                                        if (c.elementType === i.type) {
                                            n(e, c.sibling), (r = o(c, i.props)).ref = yi(e, c, i), r.return = e, e = r;
                                            break e
                                        }
                                }
                                n(e, c);
                                break
                            }
                            t(e, c), c = c.sibling
                        }
                        i.type === S ? ((r = Ul(i.props.children, e.mode, l, i.key)).return = e, e = r) : ((l = Fl(i.type, i.key, i.props, null, e.mode, l)).ref = yi(e, r, i), l.return = e, e = l)
                    }
                    return s(e);
                case O:
                    e:{
                        for (c = i.key; null !== r;) {
                            if (r.key === c) {
                                if (4 === r.tag && r.stateNode.containerInfo === i.containerInfo && r.stateNode.implementation === i.implementation) {
                                    n(e, r.sibling), (r = o(r, i.children || [])).return = e, e = r;
                                    break e
                                }
                                n(e, r);
                                break
                            }
                            t(e, r), r = r.sibling
                        }
                        (r = Yl(i, e.mode, l)).return = e, e = r
                    }
                    return s(e)
            }
            if ("string" == typeof i || "number" == typeof i) return i = "" + i, null !== r && 6 === r.tag ? (n(e, r.sibling), (r = o(r, i)).return = e, e = r) : (n(e, r), (r = Wl(i, e.mode, l)).return = e, e = r), s(e);
            if (vi(i)) return g(e, r, i, l);
            if (H(i)) return m(e, r, i, l);
            if (u && wi(e, i), void 0 === i && !c) switch (e.tag) {
                case 1:
                case 22:
                case 0:
                case 11:
                case 15:
                    throw Error(a(152, X(e.type) || "Component"))
            }
            return n(e, r)
        }
    }

    var ki = xi(!0), Oi = xi(!1), Si = {}, ji = oo(Si), Ci = oo(Si), _i = oo(Si);

    function Ei(e) {
        if (e === Si) throw Error(a(174));
        return e
    }

    function Pi(e, t) {
        switch (ao(_i, t), ao(Ci, e), ao(ji, Si), e = t.nodeType) {
            case 9:
            case 11:
                t = (t = t.documentElement) ? t.namespaceURI : he(null, "");
                break;
            default:
                t = he(t = (e = 8 === e ? t.parentNode : t).namespaceURI || null, e = e.tagName)
        }
        io(ji), ao(ji, t)
    }

    function Ri() {
        io(ji), io(Ci), io(_i)
    }

    function Di(e) {
        Ei(_i.current);
        var t = Ei(ji.current), n = he(t, e.type);
        t !== n && (ao(Ci, e), ao(ji, n))
    }

    function Mi(e) {
        Ci.current === e && (io(ji), io(Ci))
    }

    var Ai = oo(0);

    function Ti(e) {
        for (var t = e; null !== t;) {
            if (13 === t.tag) {
                var n = t.memoizedState;
                if (null !== n && (null === (n = n.dehydrated) || "$?" === n.data || "$!" === n.data)) return t
            } else if (19 === t.tag && void 0 !== t.memoizedProps.revealOrder) {
                if (0 != (64 & t.flags)) return t
            } else if (null !== t.child) {
                t.child.return = t, t = t.child;
                continue
            }
            if (t === e) break;
            for (; null === t.sibling;) {
                if (null === t.return || t.return === e) return null;
                t = t.return
            }
            t.sibling.return = t.return, t = t.sibling
        }
        return null
    }

    var Ii = null, zi = null, Li = !1;

    function Bi(e, t) {
        var n = Ll(5, null, null, 0);
        n.elementType = "DELETED", n.type = "DELETED", n.stateNode = t, n.return = e, n.flags = 8, null !== e.lastEffect ? (e.lastEffect.nextEffect = n, e.lastEffect = n) : e.firstEffect = e.lastEffect = n
    }

    function Ni(e, t) {
        switch (e.tag) {
            case 5:
                var n = e.type;
                return null !== (t = 1 !== t.nodeType || n.toLowerCase() !== t.nodeName.toLowerCase() ? null : t) && (e.stateNode = t, !0);
            case 6:
                return null !== (t = "" === e.pendingProps || 3 !== t.nodeType ? null : t) && (e.stateNode = t, !0);
            case 13:
            default:
                return !1
        }
    }

    function Fi(e) {
        if (Li) {
            var t = zi;
            if (t) {
                var n = t;
                if (!Ni(e, t)) {
                    if (!(t = Wr(n.nextSibling)) || !Ni(e, t)) return e.flags = -1025 & e.flags | 2, Li = !1, void (Ii = e);
                    Bi(Ii, n)
                }
                Ii = e, zi = Wr(t.firstChild)
            } else e.flags = -1025 & e.flags | 2, Li = !1, Ii = e
        }
    }

    function Ui(e) {
        for (e = e.return; null !== e && 5 !== e.tag && 3 !== e.tag && 13 !== e.tag;) e = e.return;
        Ii = e
    }

    function Hi(e) {
        if (e !== Ii) return !1;
        if (!Li) return Ui(e), Li = !0, !1;
        var t = e.type;
        if (5 !== e.tag || "head" !== t && "body" !== t && !Nr(t, e.memoizedProps)) for (t = zi; t;) Bi(e, t), t = Wr(t.nextSibling);
        if (Ui(e), 13 === e.tag) {
            if (!(e = null !== (e = e.memoizedState) ? e.dehydrated : null)) throw Error(a(317));
            e:{
                for (e = e.nextSibling, t = 0; e;) {
                    if (8 === e.nodeType) {
                        var n = e.data;
                        if ("/$" === n) {
                            if (0 === t) {
                                zi = Wr(e.nextSibling);
                                break e
                            }
                            t--
                        } else "$" !== n && "$!" !== n && "$?" !== n || t++
                    }
                    e = e.nextSibling
                }
                zi = null
            }
        } else zi = Ii ? Wr(e.stateNode.nextSibling) : null;
        return !0
    }

    function Wi() {
        zi = Ii = null, Li = !1
    }

    var Yi = [];

    function Vi() {
        for (var e = 0; e < Yi.length; e++) Yi[e]._workInProgressVersionPrimary = null;
        Yi.length = 0
    }

    var qi = x.ReactCurrentDispatcher, Xi = x.ReactCurrentBatchConfig, $i = 0, Ki = null, Qi = null, Zi = null, Gi = !1,
        Ji = !1;

    function ea() {
        throw Error(a(321))
    }

    function ta(e, t) {
        if (null === t) return !1;
        for (var n = 0; n < t.length && n < e.length; n++) if (!ar(e[n], t[n])) return !1;
        return !0
    }

    function na(e, t, n, r, o, i) {
        if ($i = i, Ki = t, t.memoizedState = null, t.updateQueue = null, t.lanes = 0, qi.current = null === e || null === e.memoizedState ? Ea : Pa, e = n(r, o), Ji) {
            i = 0;
            do {
                if (Ji = !1, !(25 > i)) throw Error(a(301));
                i += 1, Zi = Qi = null, t.updateQueue = null, qi.current = Ra, e = n(r, o)
            } while (Ji)
        }
        if (qi.current = _a, t = null !== Qi && null !== Qi.next, $i = 0, Zi = Qi = Ki = null, Gi = !1, t) throw Error(a(300));
        return e
    }

    function ra() {
        var e = {memoizedState: null, baseState: null, baseQueue: null, queue: null, next: null};
        return null === Zi ? Ki.memoizedState = Zi = e : Zi = Zi.next = e, Zi
    }

    function oa() {
        if (null === Qi) {
            var e = Ki.alternate;
            e = null !== e ? e.memoizedState : null
        } else e = Qi.next;
        var t = null === Zi ? Ki.memoizedState : Zi.next;
        if (null !== t) Zi = t, Qi = e; else {
            if (null === e) throw Error(a(310));
            e = {
                memoizedState: (Qi = e).memoizedState,
                baseState: Qi.baseState,
                baseQueue: Qi.baseQueue,
                queue: Qi.queue,
                next: null
            }, null === Zi ? Ki.memoizedState = Zi = e : Zi = Zi.next = e
        }
        return Zi
    }

    function ia(e, t) {
        return "function" == typeof t ? t(e) : t
    }

    function aa(e) {
        var t = oa(), n = t.queue;
        if (null === n) throw Error(a(311));
        n.lastRenderedReducer = e;
        var r = Qi, o = r.baseQueue, i = n.pending;
        if (null !== i) {
            if (null !== o) {
                var s = o.next;
                o.next = i.next, i.next = s
            }
            r.baseQueue = o = i, n.pending = null
        }
        if (null !== o) {
            o = o.next, r = r.baseState;
            var l = s = i = null, c = o;
            do {
                var u = c.lane;
                if (($i & u) === u) null !== l && (l = l.next = {
                    lane: 0,
                    action: c.action,
                    eagerReducer: c.eagerReducer,
                    eagerState: c.eagerState,
                    next: null
                }), r = c.eagerReducer === e ? c.eagerState : e(r, c.action); else {
                    var f = {
                        lane: u,
                        action: c.action,
                        eagerReducer: c.eagerReducer,
                        eagerState: c.eagerState,
                        next: null
                    };
                    null === l ? (s = l = f, i = r) : l = l.next = f, Ki.lanes |= u, Ts |= u
                }
                c = c.next
            } while (null !== c && c !== o);
            null === l ? i = r : l.next = s, ar(r, t.memoizedState) || (Ma = !0), t.memoizedState = r, t.baseState = i, t.baseQueue = l, n.lastRenderedState = r
        }
        return [t.memoizedState, n.dispatch]
    }

    function sa(e) {
        var t = oa(), n = t.queue;
        if (null === n) throw Error(a(311));
        n.lastRenderedReducer = e;
        var r = n.dispatch, o = n.pending, i = t.memoizedState;
        if (null !== o) {
            n.pending = null;
            var s = o = o.next;
            do {
                i = e(i, s.action), s = s.next
            } while (s !== o);
            ar(i, t.memoizedState) || (Ma = !0), t.memoizedState = i, null === t.baseQueue && (t.baseState = i), n.lastRenderedState = i
        }
        return [i, r]
    }

    function la(e, t, n) {
        var r = t._getVersion;
        r = r(t._source);
        var o = t._workInProgressVersionPrimary;
        if (null !== o ? e = o === r : (e = e.mutableReadLanes, (e = ($i & e) === e) && (t._workInProgressVersionPrimary = r, Yi.push(t))), e) return n(t._source);
        throw Yi.push(t), Error(a(350))
    }

    function ca(e, t, n, r) {
        var o = Cs;
        if (null === o) throw Error(a(349));
        var i = t._getVersion, s = i(t._source), l = qi.current, c = l.useState((function () {
            return la(o, t, n)
        })), u = c[1], f = c[0];
        c = Zi;
        var p = e.memoizedState, d = p.refs, h = d.getSnapshot, g = p.source;
        p = p.subscribe;
        var m = Ki;
        return e.memoizedState = {refs: d, source: t, subscribe: r}, l.useEffect((function () {
            d.getSnapshot = n, d.setSnapshot = u;
            var e = i(t._source);
            if (!ar(s, e)) {
                e = n(t._source), ar(f, e) || (u(e), e = al(m), o.mutableReadLanes |= e & o.pendingLanes), e = o.mutableReadLanes, o.entangledLanes |= e;
                for (var r = o.entanglements, a = e; 0 < a;) {
                    var l = 31 - Wt(a), c = 1 << l;
                    r[l] |= e, a &= ~c
                }
            }
        }), [n, t, r]), l.useEffect((function () {
            return r(t._source, (function () {
                var e = d.getSnapshot, n = d.setSnapshot;
                try {
                    n(e(t._source));
                    var r = al(m);
                    o.mutableReadLanes |= r & o.pendingLanes
                } catch (e) {
                    n((function () {
                        throw e
                    }))
                }
            }))
        }), [t, r]), ar(h, n) && ar(g, t) && ar(p, r) || ((e = {
            pending: null,
            dispatch: null,
            lastRenderedReducer: ia,
            lastRenderedState: f
        }).dispatch = u = Ca.bind(null, Ki, e), c.queue = e, c.baseQueue = null, f = la(o, t, n), c.memoizedState = c.baseState = f), f
    }

    function ua(e, t, n) {
        return ca(oa(), e, t, n)
    }

    function fa(e) {
        var t = ra();
        return "function" == typeof e && (e = e()), t.memoizedState = t.baseState = e, e = (e = t.queue = {
            pending: null,
            dispatch: null,
            lastRenderedReducer: ia,
            lastRenderedState: e
        }).dispatch = Ca.bind(null, Ki, e), [t.memoizedState, e]
    }

    function pa(e, t, n, r) {
        return e = {
            tag: e,
            create: t,
            destroy: n,
            deps: r,
            next: null
        }, null === (t = Ki.updateQueue) ? (t = {lastEffect: null}, Ki.updateQueue = t, t.lastEffect = e.next = e) : null === (n = t.lastEffect) ? t.lastEffect = e.next = e : (r = n.next, n.next = e, e.next = r, t.lastEffect = e), e
    }

    function da(e) {
        return e = {current: e}, ra().memoizedState = e
    }

    function ha() {
        return oa().memoizedState
    }

    function ga(e, t, n, r) {
        var o = ra();
        Ki.flags |= e, o.memoizedState = pa(1 | t, n, void 0, void 0 === r ? null : r)
    }

    function ma(e, t, n, r) {
        var o = oa();
        r = void 0 === r ? null : r;
        var i = void 0;
        if (null !== Qi) {
            var a = Qi.memoizedState;
            if (i = a.destroy, null !== r && ta(r, a.deps)) return void pa(t, n, i, r)
        }
        Ki.flags |= e, o.memoizedState = pa(1 | t, n, i, r)
    }

    function ba(e, t) {
        return ga(516, 4, e, t)
    }

    function va(e, t) {
        return ma(516, 4, e, t)
    }

    function ya(e, t) {
        return ma(4, 2, e, t)
    }

    function wa(e, t) {
        return "function" == typeof t ? (e = e(), t(e), function () {
            t(null)
        }) : null != t ? (e = e(), t.current = e, function () {
            t.current = null
        }) : void 0
    }

    function xa(e, t, n) {
        return n = null != n ? n.concat([e]) : null, ma(4, 2, wa.bind(null, t, e), n)
    }

    function ka() {
    }

    function Oa(e, t) {
        var n = oa();
        t = void 0 === t ? null : t;
        var r = n.memoizedState;
        return null !== r && null !== t && ta(t, r[1]) ? r[0] : (n.memoizedState = [e, t], e)
    }

    function Sa(e, t) {
        var n = oa();
        t = void 0 === t ? null : t;
        var r = n.memoizedState;
        return null !== r && null !== t && ta(t, r[1]) ? r[0] : (e = e(), n.memoizedState = [e, t], e)
    }

    function ja(e, t) {
        var n = Fo();
        Ho(98 > n ? 98 : n, (function () {
            e(!0)
        })), Ho(97 < n ? 97 : n, (function () {
            var n = Xi.transition;
            Xi.transition = 1;
            try {
                e(!1), t()
            } finally {
                Xi.transition = n
            }
        }))
    }

    function Ca(e, t, n) {
        var r = il(), o = al(e), i = {lane: o, action: n, eagerReducer: null, eagerState: null, next: null},
            a = t.pending;
        if (null === a ? i.next = i : (i.next = a.next, a.next = i), t.pending = i, a = e.alternate, e === Ki || null !== a && a === Ki) Ji = Gi = !0; else {
            if (0 === e.lanes && (null === a || 0 === a.lanes) && null !== (a = t.lastRenderedReducer)) try {
                var s = t.lastRenderedState, l = a(s, n);
                if (i.eagerReducer = a, i.eagerState = l, ar(l, s)) return
            } catch (e) {
            }
            sl(e, o, r)
        }
    }

    var _a = {
        readContext: ni,
        useCallback: ea,
        useContext: ea,
        useEffect: ea,
        useImperativeHandle: ea,
        useLayoutEffect: ea,
        useMemo: ea,
        useReducer: ea,
        useRef: ea,
        useState: ea,
        useDebugValue: ea,
        useDeferredValue: ea,
        useTransition: ea,
        useMutableSource: ea,
        useOpaqueIdentifier: ea,
        unstable_isNewReconciler: !1
    }, Ea = {
        readContext: ni, useCallback: function (e, t) {
            return ra().memoizedState = [e, void 0 === t ? null : t], e
        }, useContext: ni, useEffect: ba, useImperativeHandle: function (e, t, n) {
            return n = null != n ? n.concat([e]) : null, ga(4, 2, wa.bind(null, t, e), n)
        }, useLayoutEffect: function (e, t) {
            return ga(4, 2, e, t)
        }, useMemo: function (e, t) {
            var n = ra();
            return t = void 0 === t ? null : t, e = e(), n.memoizedState = [e, t], e
        }, useReducer: function (e, t, n) {
            var r = ra();
            return t = void 0 !== n ? n(t) : t, r.memoizedState = r.baseState = t, e = (e = r.queue = {
                pending: null,
                dispatch: null,
                lastRenderedReducer: e,
                lastRenderedState: t
            }).dispatch = Ca.bind(null, Ki, e), [r.memoizedState, e]
        }, useRef: da, useState: fa, useDebugValue: ka, useDeferredValue: function (e) {
            var t = fa(e), n = t[0], r = t[1];
            return ba((function () {
                var t = Xi.transition;
                Xi.transition = 1;
                try {
                    r(e)
                } finally {
                    Xi.transition = t
                }
            }), [e]), n
        }, useTransition: function () {
            var e = fa(!1), t = e[0];
            return da(e = ja.bind(null, e[1])), [e, t]
        }, useMutableSource: function (e, t, n) {
            var r = ra();
            return r.memoizedState = {
                refs: {getSnapshot: t, setSnapshot: null},
                source: e,
                subscribe: n
            }, ca(r, e, t, n)
        }, useOpaqueIdentifier: function () {
            if (Li) {
                var e = !1, t = function (e) {
                    return {$$typeof: I, toString: e, valueOf: e}
                }((function () {
                    throw e || (e = !0, n("r:" + (Vr++).toString(36))), Error(a(355))
                })), n = fa(t)[1];
                return 0 == (2 & Ki.mode) && (Ki.flags |= 516, pa(5, (function () {
                    n("r:" + (Vr++).toString(36))
                }), void 0, null)), t
            }
            return fa(t = "r:" + (Vr++).toString(36)), t
        }, unstable_isNewReconciler: !1
    }, Pa = {
        readContext: ni,
        useCallback: Oa,
        useContext: ni,
        useEffect: va,
        useImperativeHandle: xa,
        useLayoutEffect: ya,
        useMemo: Sa,
        useReducer: aa,
        useRef: ha,
        useState: function () {
            return aa(ia)
        },
        useDebugValue: ka,
        useDeferredValue: function (e) {
            var t = aa(ia), n = t[0], r = t[1];
            return va((function () {
                var t = Xi.transition;
                Xi.transition = 1;
                try {
                    r(e)
                } finally {
                    Xi.transition = t
                }
            }), [e]), n
        },
        useTransition: function () {
            var e = aa(ia)[0];
            return [ha().current, e]
        },
        useMutableSource: ua,
        useOpaqueIdentifier: function () {
            return aa(ia)[0]
        },
        unstable_isNewReconciler: !1
    }, Ra = {
        readContext: ni,
        useCallback: Oa,
        useContext: ni,
        useEffect: va,
        useImperativeHandle: xa,
        useLayoutEffect: ya,
        useMemo: Sa,
        useReducer: sa,
        useRef: ha,
        useState: function () {
            return sa(ia)
        },
        useDebugValue: ka,
        useDeferredValue: function (e) {
            var t = sa(ia), n = t[0], r = t[1];
            return va((function () {
                var t = Xi.transition;
                Xi.transition = 1;
                try {
                    r(e)
                } finally {
                    Xi.transition = t
                }
            }), [e]), n
        },
        useTransition: function () {
            var e = sa(ia)[0];
            return [ha().current, e]
        },
        useMutableSource: ua,
        useOpaqueIdentifier: function () {
            return sa(ia)[0]
        },
        unstable_isNewReconciler: !1
    }, Da = x.ReactCurrentOwner, Ma = !1;

    function Aa(e, t, n, r) {
        t.child = null === e ? Oi(t, null, n, r) : ki(t, e.child, n, r)
    }

    function Ta(e, t, n, r, o) {
        n = n.render;
        var i = t.ref;
        return ti(t, o), r = na(e, t, n, r, i, o), null === e || Ma ? (t.flags |= 1, Aa(e, t, r, o), t.child) : (t.updateQueue = e.updateQueue, t.flags &= -517, e.lanes &= ~o, es(e, t, o))
    }

    function Ia(e, t, n, r, o, i) {
        if (null === e) {
            var a = n.type;
            return "function" != typeof a || Bl(a) || void 0 !== a.defaultProps || null !== n.compare || void 0 !== n.defaultProps ? ((e = Fl(n.type, null, r, t, t.mode, i)).ref = t.ref, e.return = t, t.child = e) : (t.tag = 15, t.type = a, za(e, t, a, r, o, i))
        }
        return a = e.child, 0 == (o & i) && (o = a.memoizedProps, (n = null !== (n = n.compare) ? n : lr)(o, r) && e.ref === t.ref) ? es(e, t, i) : (t.flags |= 1, (e = Nl(a, r)).ref = t.ref, e.return = t, t.child = e)
    }

    function za(e, t, n, r, o, i) {
        if (null !== e && lr(e.memoizedProps, r) && e.ref === t.ref) {
            if (Ma = !1, 0 == (i & o)) return t.lanes = e.lanes, es(e, t, i);
            0 != (16384 & e.flags) && (Ma = !0)
        }
        return Na(e, t, n, r, i)
    }

    function La(e, t, n) {
        var r = t.pendingProps, o = r.children, i = null !== e ? e.memoizedState : null;
        if ("hidden" === r.mode || "unstable-defer-without-hiding" === r.mode) if (0 == (4 & t.mode)) t.memoizedState = {baseLanes: 0}, gl(t, n); else {
            if (0 == (1073741824 & n)) return e = null !== i ? i.baseLanes | n : n, t.lanes = t.childLanes = 1073741824, t.memoizedState = {baseLanes: e}, gl(t, e), null;
            t.memoizedState = {baseLanes: 0}, gl(t, null !== i ? i.baseLanes : n)
        } else null !== i ? (r = i.baseLanes | n, t.memoizedState = null) : r = n, gl(t, r);
        return Aa(e, t, o, n), t.child
    }

    function Ba(e, t) {
        var n = t.ref;
        (null === e && null !== n || null !== e && e.ref !== n) && (t.flags |= 128)
    }

    function Na(e, t, n, r, o) {
        var i = po(n) ? uo : lo.current;
        return i = fo(t, i), ti(t, o), n = na(e, t, n, r, i, o), null === e || Ma ? (t.flags |= 1, Aa(e, t, n, o), t.child) : (t.updateQueue = e.updateQueue, t.flags &= -517, e.lanes &= ~o, es(e, t, o))
    }

    function Fa(e, t, n, r, o) {
        if (po(n)) {
            var i = !0;
            bo(t)
        } else i = !1;
        if (ti(t, o), null === t.stateNode) null !== e && (e.alternate = null, t.alternate = null, t.flags |= 2), gi(t, n, r), bi(t, n, r, o), r = !0; else if (null === e) {
            var a = t.stateNode, s = t.memoizedProps;
            a.props = s;
            var l = a.context, c = n.contextType;
            "object" == typeof c && null !== c ? c = ni(c) : c = fo(t, c = po(n) ? uo : lo.current);
            var u = n.getDerivedStateFromProps,
                f = "function" == typeof u || "function" == typeof a.getSnapshotBeforeUpdate;
            f || "function" != typeof a.UNSAFE_componentWillReceiveProps && "function" != typeof a.componentWillReceiveProps || (s !== r || l !== c) && mi(t, a, r, c), ri = !1;
            var p = t.memoizedState;
            a.state = p, ci(t, r, a, o), l = t.memoizedState, s !== r || p !== l || co.current || ri ? ("function" == typeof u && (pi(t, n, u, r), l = t.memoizedState), (s = ri || hi(t, n, s, r, p, l, c)) ? (f || "function" != typeof a.UNSAFE_componentWillMount && "function" != typeof a.componentWillMount || ("function" == typeof a.componentWillMount && a.componentWillMount(), "function" == typeof a.UNSAFE_componentWillMount && a.UNSAFE_componentWillMount()), "function" == typeof a.componentDidMount && (t.flags |= 4)) : ("function" == typeof a.componentDidMount && (t.flags |= 4), t.memoizedProps = r, t.memoizedState = l), a.props = r, a.state = l, a.context = c, r = s) : ("function" == typeof a.componentDidMount && (t.flags |= 4), r = !1)
        } else {
            a = t.stateNode, ii(e, t), s = t.memoizedProps, c = t.type === t.elementType ? s : Xo(t.type, s), a.props = c, f = t.pendingProps, p = a.context, "object" == typeof (l = n.contextType) && null !== l ? l = ni(l) : l = fo(t, l = po(n) ? uo : lo.current);
            var d = n.getDerivedStateFromProps;
            (u = "function" == typeof d || "function" == typeof a.getSnapshotBeforeUpdate) || "function" != typeof a.UNSAFE_componentWillReceiveProps && "function" != typeof a.componentWillReceiveProps || (s !== f || p !== l) && mi(t, a, r, l), ri = !1, p = t.memoizedState, a.state = p, ci(t, r, a, o);
            var h = t.memoizedState;
            s !== f || p !== h || co.current || ri ? ("function" == typeof d && (pi(t, n, d, r), h = t.memoizedState), (c = ri || hi(t, n, c, r, p, h, l)) ? (u || "function" != typeof a.UNSAFE_componentWillUpdate && "function" != typeof a.componentWillUpdate || ("function" == typeof a.componentWillUpdate && a.componentWillUpdate(r, h, l), "function" == typeof a.UNSAFE_componentWillUpdate && a.UNSAFE_componentWillUpdate(r, h, l)), "function" == typeof a.componentDidUpdate && (t.flags |= 4), "function" == typeof a.getSnapshotBeforeUpdate && (t.flags |= 256)) : ("function" != typeof a.componentDidUpdate || s === e.memoizedProps && p === e.memoizedState || (t.flags |= 4), "function" != typeof a.getSnapshotBeforeUpdate || s === e.memoizedProps && p === e.memoizedState || (t.flags |= 256), t.memoizedProps = r, t.memoizedState = h), a.props = r, a.state = h, a.context = l, r = c) : ("function" != typeof a.componentDidUpdate || s === e.memoizedProps && p === e.memoizedState || (t.flags |= 4), "function" != typeof a.getSnapshotBeforeUpdate || s === e.memoizedProps && p === e.memoizedState || (t.flags |= 256), r = !1)
        }
        return Ua(e, t, n, r, i, o)
    }

    function Ua(e, t, n, r, o, i) {
        Ba(e, t);
        var a = 0 != (64 & t.flags);
        if (!r && !a) return o && vo(t, n, !1), es(e, t, i);
        r = t.stateNode, Da.current = t;
        var s = a && "function" != typeof n.getDerivedStateFromError ? null : r.render();
        return t.flags |= 1, null !== e && a ? (t.child = ki(t, e.child, null, i), t.child = ki(t, null, s, i)) : Aa(e, t, s, i), t.memoizedState = r.state, o && vo(t, n, !0), t.child
    }

    function Ha(e) {
        var t = e.stateNode;
        t.pendingContext ? go(0, t.pendingContext, t.pendingContext !== t.context) : t.context && go(0, t.context, !1), Pi(e, t.containerInfo)
    }

    var Wa, Ya, Va, qa = {dehydrated: null, retryLane: 0};

    function Xa(e, t, n) {
        var r, o = t.pendingProps, i = Ai.current, a = !1;
        return (r = 0 != (64 & t.flags)) || (r = (null === e || null !== e.memoizedState) && 0 != (2 & i)), r ? (a = !0, t.flags &= -65) : null !== e && null === e.memoizedState || void 0 === o.fallback || !0 === o.unstable_avoidThisFallback || (i |= 1), ao(Ai, 1 & i), null === e ? (void 0 !== o.fallback && Fi(t), e = o.children, i = o.fallback, a ? (e = $a(t, e, i, n), t.child.memoizedState = {baseLanes: n}, t.memoizedState = qa, e) : "number" == typeof o.unstable_expectedLoadTime ? (e = $a(t, e, i, n), t.child.memoizedState = {baseLanes: n}, t.memoizedState = qa, t.lanes = 33554432, e) : ((n = Hl({
            mode: "visible",
            children: e
        }, t.mode, n, null)).return = t, t.child = n)) : (e.memoizedState, a ? (o = Qa(e, t, o.children, o.fallback, n), a = t.child, i = e.child.memoizedState, a.memoizedState = null === i ? {baseLanes: n} : {baseLanes: i.baseLanes | n}, a.childLanes = e.childLanes & ~n, t.memoizedState = qa, o) : (n = Ka(e, t, o.children, n), t.memoizedState = null, n))
    }

    function $a(e, t, n, r) {
        var o = e.mode, i = e.child;
        return t = {
            mode: "hidden",
            children: t
        }, 0 == (2 & o) && null !== i ? (i.childLanes = 0, i.pendingProps = t) : i = Hl(t, o, 0, null), n = Ul(n, o, r, null), i.return = e, n.return = e, i.sibling = n, e.child = i, n
    }

    function Ka(e, t, n, r) {
        var o = e.child;
        return e = o.sibling, n = Nl(o, {
            mode: "visible",
            children: n
        }), 0 == (2 & t.mode) && (n.lanes = r), n.return = t, n.sibling = null, null !== e && (e.nextEffect = null, e.flags = 8, t.firstEffect = t.lastEffect = e), t.child = n
    }

    function Qa(e, t, n, r, o) {
        var i = t.mode, a = e.child;
        e = a.sibling;
        var s = {mode: "hidden", children: n};
        return 0 == (2 & i) && t.child !== a ? ((n = t.child).childLanes = 0, n.pendingProps = s, null !== (a = n.lastEffect) ? (t.firstEffect = n.firstEffect, t.lastEffect = a, a.nextEffect = null) : t.firstEffect = t.lastEffect = null) : n = Nl(a, s), null !== e ? r = Nl(e, r) : (r = Ul(r, i, o, null)).flags |= 2, r.return = t, n.return = t, n.sibling = r, t.child = n, r
    }

    function Za(e, t) {
        e.lanes |= t;
        var n = e.alternate;
        null !== n && (n.lanes |= t), ei(e.return, t)
    }

    function Ga(e, t, n, r, o, i) {
        var a = e.memoizedState;
        null === a ? e.memoizedState = {
            isBackwards: t,
            rendering: null,
            renderingStartTime: 0,
            last: r,
            tail: n,
            tailMode: o,
            lastEffect: i
        } : (a.isBackwards = t, a.rendering = null, a.renderingStartTime = 0, a.last = r, a.tail = n, a.tailMode = o, a.lastEffect = i)
    }

    function Ja(e, t, n) {
        var r = t.pendingProps, o = r.revealOrder, i = r.tail;
        if (Aa(e, t, r.children, n), 0 != (2 & (r = Ai.current))) r = 1 & r | 2, t.flags |= 64; else {
            if (null !== e && 0 != (64 & e.flags)) e:for (e = t.child; null !== e;) {
                if (13 === e.tag) null !== e.memoizedState && Za(e, n); else if (19 === e.tag) Za(e, n); else if (null !== e.child) {
                    e.child.return = e, e = e.child;
                    continue
                }
                if (e === t) break e;
                for (; null === e.sibling;) {
                    if (null === e.return || e.return === t) break e;
                    e = e.return
                }
                e.sibling.return = e.return, e = e.sibling
            }
            r &= 1
        }
        if (ao(Ai, r), 0 == (2 & t.mode)) t.memoizedState = null; else switch (o) {
            case"forwards":
                for (n = t.child, o = null; null !== n;) null !== (e = n.alternate) && null === Ti(e) && (o = n), n = n.sibling;
                null === (n = o) ? (o = t.child, t.child = null) : (o = n.sibling, n.sibling = null), Ga(t, !1, o, n, i, t.lastEffect);
                break;
            case"backwards":
                for (n = null, o = t.child, t.child = null; null !== o;) {
                    if (null !== (e = o.alternate) && null === Ti(e)) {
                        t.child = o;
                        break
                    }
                    e = o.sibling, o.sibling = n, n = o, o = e
                }
                Ga(t, !0, n, null, i, t.lastEffect);
                break;
            case"together":
                Ga(t, !1, null, null, void 0, t.lastEffect);
                break;
            default:
                t.memoizedState = null
        }
        return t.child
    }

    function es(e, t, n) {
        if (null !== e && (t.dependencies = e.dependencies), Ts |= t.lanes, 0 != (n & t.childLanes)) {
            if (null !== e && t.child !== e.child) throw Error(a(153));
            if (null !== t.child) {
                for (n = Nl(e = t.child, e.pendingProps), t.child = n, n.return = t; null !== e.sibling;) e = e.sibling, (n = n.sibling = Nl(e, e.pendingProps)).return = t;
                n.sibling = null
            }
            return t.child
        }
        return null
    }

    function ts(e, t) {
        if (!Li) switch (e.tailMode) {
            case"hidden":
                t = e.tail;
                for (var n = null; null !== t;) null !== t.alternate && (n = t), t = t.sibling;
                null === n ? e.tail = null : n.sibling = null;
                break;
            case"collapsed":
                n = e.tail;
                for (var r = null; null !== n;) null !== n.alternate && (r = n), n = n.sibling;
                null === r ? t || null === e.tail ? e.tail = null : e.tail.sibling = null : r.sibling = null
        }
    }

    function ns(e, t, n) {
        var r = t.pendingProps;
        switch (t.tag) {
            case 2:
            case 16:
            case 15:
            case 0:
            case 11:
            case 7:
            case 8:
            case 12:
            case 9:
            case 14:
                return null;
            case 1:
                return po(t.type) && ho(), null;
            case 3:
                return Ri(), io(co), io(lo), Vi(), (r = t.stateNode).pendingContext && (r.context = r.pendingContext, r.pendingContext = null), null !== e && null !== e.child || (Hi(t) ? t.flags |= 4 : r.hydrate || (t.flags |= 256)), null;
            case 5:
                Mi(t);
                var i = Ei(_i.current);
                if (n = t.type, null !== e && null != t.stateNode) Ya(e, t, n, r), e.ref !== t.ref && (t.flags |= 128); else {
                    if (!r) {
                        if (null === t.stateNode) throw Error(a(166));
                        return null
                    }
                    if (e = Ei(ji.current), Hi(t)) {
                        r = t.stateNode, n = t.type;
                        var s = t.memoizedProps;
                        switch (r[Xr] = t, r[$r] = s, n) {
                            case"dialog":
                                jr("cancel", r), jr("close", r);
                                break;
                            case"iframe":
                            case"object":
                            case"embed":
                                jr("load", r);
                                break;
                            case"video":
                            case"audio":
                                for (e = 0; e < xr.length; e++) jr(xr[e], r);
                                break;
                            case"source":
                                jr("error", r);
                                break;
                            case"img":
                            case"image":
                            case"link":
                                jr("error", r), jr("load", r);
                                break;
                            case"details":
                                jr("toggle", r);
                                break;
                            case"input":
                                ee(r, s), jr("invalid", r);
                                break;
                            case"select":
                                r._wrapperState = {wasMultiple: !!s.multiple}, jr("invalid", r);
                                break;
                            case"textarea":
                                le(r, s), jr("invalid", r)
                        }
                        for (var c in Oe(n, s), e = null, s) s.hasOwnProperty(c) && (i = s[c], "children" === c ? "string" == typeof i ? r.textContent !== i && (e = ["children", i]) : "number" == typeof i && r.textContent !== "" + i && (e = ["children", "" + i]) : l.hasOwnProperty(c) && null != i && "onScroll" === c && jr("scroll", r));
                        switch (n) {
                            case"input":
                                Q(r), re(r, s, !0);
                                break;
                            case"textarea":
                                Q(r), ue(r);
                                break;
                            case"select":
                            case"option":
                                break;
                            default:
                                "function" == typeof s.onClick && (r.onclick = Ir)
                        }
                        r = e, t.updateQueue = r, null !== r && (t.flags |= 4)
                    } else {
                        switch (c = 9 === i.nodeType ? i : i.ownerDocument, e === fe && (e = de(n)), e === fe ? "script" === n ? ((e = c.createElement("div")).innerHTML = "<script><\/script>", e = e.removeChild(e.firstChild)) : "string" == typeof r.is ? e = c.createElement(n, {is: r.is}) : (e = c.createElement(n), "select" === n && (c = e, r.multiple ? c.multiple = !0 : r.size && (c.size = r.size))) : e = c.createElementNS(e, n), e[Xr] = t, e[$r] = r, Wa(e, t), t.stateNode = e, c = Se(n, r), n) {
                            case"dialog":
                                jr("cancel", e), jr("close", e), i = r;
                                break;
                            case"iframe":
                            case"object":
                            case"embed":
                                jr("load", e), i = r;
                                break;
                            case"video":
                            case"audio":
                                for (i = 0; i < xr.length; i++) jr(xr[i], e);
                                i = r;
                                break;
                            case"source":
                                jr("error", e), i = r;
                                break;
                            case"img":
                            case"image":
                            case"link":
                                jr("error", e), jr("load", e), i = r;
                                break;
                            case"details":
                                jr("toggle", e), i = r;
                                break;
                            case"input":
                                ee(e, r), i = J(e, r), jr("invalid", e);
                                break;
                            case"option":
                                i = ie(e, r);
                                break;
                            case"select":
                                e._wrapperState = {wasMultiple: !!r.multiple}, i = o({}, r, {value: void 0}), jr("invalid", e);
                                break;
                            case"textarea":
                                le(e, r), i = se(e, r), jr("invalid", e);
                                break;
                            default:
                                i = r
                        }
                        Oe(n, i);
                        var u = i;
                        for (s in u) if (u.hasOwnProperty(s)) {
                            var f = u[s];
                            "style" === s ? xe(e, f) : "dangerouslySetInnerHTML" === s ? null != (f = f ? f.__html : void 0) && me(e, f) : "children" === s ? "string" == typeof f ? ("textarea" !== n || "" !== f) && be(e, f) : "number" == typeof f && be(e, "" + f) : "suppressContentEditableWarning" !== s && "suppressHydrationWarning" !== s && "autoFocus" !== s && (l.hasOwnProperty(s) ? null != f && "onScroll" === s && jr("scroll", e) : null != f && w(e, s, f, c))
                        }
                        switch (n) {
                            case"input":
                                Q(e), re(e, r, !1);
                                break;
                            case"textarea":
                                Q(e), ue(e);
                                break;
                            case"option":
                                null != r.value && e.setAttribute("value", "" + $(r.value));
                                break;
                            case"select":
                                e.multiple = !!r.multiple, null != (s = r.value) ? ae(e, !!r.multiple, s, !1) : null != r.defaultValue && ae(e, !!r.multiple, r.defaultValue, !0);
                                break;
                            default:
                                "function" == typeof i.onClick && (e.onclick = Ir)
                        }
                        Br(n, r) && (t.flags |= 4)
                    }
                    null !== t.ref && (t.flags |= 128)
                }
                return null;
            case 6:
                if (e && null != t.stateNode) Va(0, t, e.memoizedProps, r); else {
                    if ("string" != typeof r && null === t.stateNode) throw Error(a(166));
                    n = Ei(_i.current), Ei(ji.current), Hi(t) ? (r = t.stateNode, n = t.memoizedProps, r[Xr] = t, r.nodeValue !== n && (t.flags |= 4)) : ((r = (9 === n.nodeType ? n : n.ownerDocument).createTextNode(r))[Xr] = t, t.stateNode = r)
                }
                return null;
            case 13:
                return io(Ai), r = t.memoizedState, 0 != (64 & t.flags) ? (t.lanes = n, t) : (r = null !== r, n = !1, null === e ? void 0 !== t.memoizedProps.fallback && Hi(t) : n = null !== e.memoizedState, r && !n && 0 != (2 & t.mode) && (null === e && !0 !== t.memoizedProps.unstable_avoidThisFallback || 0 != (1 & Ai.current) ? 0 === Ds && (Ds = 3) : (0 !== Ds && 3 !== Ds || (Ds = 4), null === Cs || 0 == (134217727 & Ts) && 0 == (134217727 & Is) || fl(Cs, Es))), (r || n) && (t.flags |= 4), null);
            case 4:
                return Ri(), null === e && _r(t.stateNode.containerInfo), null;
            case 10:
                return Jo(t), null;
            case 17:
                return po(t.type) && ho(), null;
            case 19:
                if (io(Ai), null === (r = t.memoizedState)) return null;
                if (s = 0 != (64 & t.flags), null === (c = r.rendering)) if (s) ts(r, !1); else {
                    if (0 !== Ds || null !== e && 0 != (64 & e.flags)) for (e = t.child; null !== e;) {
                        if (null !== (c = Ti(e))) {
                            for (t.flags |= 64, ts(r, !1), null !== (s = c.updateQueue) && (t.updateQueue = s, t.flags |= 4), null === r.lastEffect && (t.firstEffect = null), t.lastEffect = r.lastEffect, r = n, n = t.child; null !== n;) e = r, (s = n).flags &= 2, s.nextEffect = null, s.firstEffect = null, s.lastEffect = null, null === (c = s.alternate) ? (s.childLanes = 0, s.lanes = e, s.child = null, s.memoizedProps = null, s.memoizedState = null, s.updateQueue = null, s.dependencies = null, s.stateNode = null) : (s.childLanes = c.childLanes, s.lanes = c.lanes, s.child = c.child, s.memoizedProps = c.memoizedProps, s.memoizedState = c.memoizedState, s.updateQueue = c.updateQueue, s.type = c.type, e = c.dependencies, s.dependencies = null === e ? null : {
                                lanes: e.lanes,
                                firstContext: e.firstContext
                            }), n = n.sibling;
                            return ao(Ai, 1 & Ai.current | 2), t.child
                        }
                        e = e.sibling
                    }
                    null !== r.tail && No() > Ns && (t.flags |= 64, s = !0, ts(r, !1), t.lanes = 33554432)
                } else {
                    if (!s) if (null !== (e = Ti(c))) {
                        if (t.flags |= 64, s = !0, null !== (n = e.updateQueue) && (t.updateQueue = n, t.flags |= 4), ts(r, !0), null === r.tail && "hidden" === r.tailMode && !c.alternate && !Li) return null !== (t = t.lastEffect = r.lastEffect) && (t.nextEffect = null), null
                    } else 2 * No() - r.renderingStartTime > Ns && 1073741824 !== n && (t.flags |= 64, s = !0, ts(r, !1), t.lanes = 33554432);
                    r.isBackwards ? (c.sibling = t.child, t.child = c) : (null !== (n = r.last) ? n.sibling = c : t.child = c, r.last = c)
                }
                return null !== r.tail ? (n = r.tail, r.rendering = n, r.tail = n.sibling, r.lastEffect = t.lastEffect, r.renderingStartTime = No(), n.sibling = null, t = Ai.current, ao(Ai, s ? 1 & t | 2 : 1 & t), n) : null;
            case 23:
            case 24:
                return ml(), null !== e && null !== e.memoizedState != (null !== t.memoizedState) && "unstable-defer-without-hiding" !== r.mode && (t.flags |= 4), null
        }
        throw Error(a(156, t.tag))
    }

    function rs(e) {
        switch (e.tag) {
            case 1:
                po(e.type) && ho();
                var t = e.flags;
                return 4096 & t ? (e.flags = -4097 & t | 64, e) : null;
            case 3:
                if (Ri(), io(co), io(lo), Vi(), 0 != (64 & (t = e.flags))) throw Error(a(285));
                return e.flags = -4097 & t | 64, e;
            case 5:
                return Mi(e), null;
            case 13:
                return io(Ai), 4096 & (t = e.flags) ? (e.flags = -4097 & t | 64, e) : null;
            case 19:
                return io(Ai), null;
            case 4:
                return Ri(), null;
            case 10:
                return Jo(e), null;
            case 23:
            case 24:
                return ml(), null;
            default:
                return null
        }
    }

    function os(e, t) {
        try {
            var n = "", r = t;
            do {
                n += q(r), r = r.return
            } while (r);
            var o = n
        } catch (e) {
            o = "\nError generating stack: " + e.message + "\n" + e.stack
        }
        return {value: e, source: t, stack: o}
    }

    function is(e, t) {
        try {
            console.error(t.value)
        } catch (e) {
            setTimeout((function () {
                throw e
            }))
        }
    }

    Wa = function (e, t) {
        for (var n = t.child; null !== n;) {
            if (5 === n.tag || 6 === n.tag) e.appendChild(n.stateNode); else if (4 !== n.tag && null !== n.child) {
                n.child.return = n, n = n.child;
                continue
            }
            if (n === t) break;
            for (; null === n.sibling;) {
                if (null === n.return || n.return === t) return;
                n = n.return
            }
            n.sibling.return = n.return, n = n.sibling
        }
    }, Ya = function (e, t, n, r) {
        var i = e.memoizedProps;
        if (i !== r) {
            e = t.stateNode, Ei(ji.current);
            var a, s = null;
            switch (n) {
                case"input":
                    i = J(e, i), r = J(e, r), s = [];
                    break;
                case"option":
                    i = ie(e, i), r = ie(e, r), s = [];
                    break;
                case"select":
                    i = o({}, i, {value: void 0}), r = o({}, r, {value: void 0}), s = [];
                    break;
                case"textarea":
                    i = se(e, i), r = se(e, r), s = [];
                    break;
                default:
                    "function" != typeof i.onClick && "function" == typeof r.onClick && (e.onclick = Ir)
            }
            for (f in Oe(n, r), n = null, i) if (!r.hasOwnProperty(f) && i.hasOwnProperty(f) && null != i[f]) if ("style" === f) {
                var c = i[f];
                for (a in c) c.hasOwnProperty(a) && (n || (n = {}), n[a] = "")
            } else "dangerouslySetInnerHTML" !== f && "children" !== f && "suppressContentEditableWarning" !== f && "suppressHydrationWarning" !== f && "autoFocus" !== f && (l.hasOwnProperty(f) ? s || (s = []) : (s = s || []).push(f, null));
            for (f in r) {
                var u = r[f];
                if (c = null != i ? i[f] : void 0, r.hasOwnProperty(f) && u !== c && (null != u || null != c)) if ("style" === f) if (c) {
                    for (a in c) !c.hasOwnProperty(a) || u && u.hasOwnProperty(a) || (n || (n = {}), n[a] = "");
                    for (a in u) u.hasOwnProperty(a) && c[a] !== u[a] && (n || (n = {}), n[a] = u[a])
                } else n || (s || (s = []), s.push(f, n)), n = u; else "dangerouslySetInnerHTML" === f ? (u = u ? u.__html : void 0, c = c ? c.__html : void 0, null != u && c !== u && (s = s || []).push(f, u)) : "children" === f ? "string" != typeof u && "number" != typeof u || (s = s || []).push(f, "" + u) : "suppressContentEditableWarning" !== f && "suppressHydrationWarning" !== f && (l.hasOwnProperty(f) ? (null != u && "onScroll" === f && jr("scroll", e), s || c === u || (s = [])) : "object" == typeof u && null !== u && u.$$typeof === I ? u.toString() : (s = s || []).push(f, u))
            }
            n && (s = s || []).push("style", n);
            var f = s;
            (t.updateQueue = f) && (t.flags |= 4)
        }
    }, Va = function (e, t, n, r) {
        n !== r && (t.flags |= 4)
    };
    var as = "function" == typeof WeakMap ? WeakMap : Map;

    function ss(e, t, n) {
        (n = ai(-1, n)).tag = 3, n.payload = {element: null};
        var r = t.value;
        return n.callback = function () {
            Ws || (Ws = !0, Ys = r), is(0, t)
        }, n
    }

    function ls(e, t, n) {
        (n = ai(-1, n)).tag = 3;
        var r = e.type.getDerivedStateFromError;
        if ("function" == typeof r) {
            var o = t.value;
            n.payload = function () {
                return is(0, t), r(o)
            }
        }
        var i = e.stateNode;
        return null !== i && "function" == typeof i.componentDidCatch && (n.callback = function () {
            "function" != typeof r && (null === Vs ? Vs = new Set([this]) : Vs.add(this), is(0, t));
            var e = t.stack;
            this.componentDidCatch(t.value, {componentStack: null !== e ? e : ""})
        }), n
    }

    var cs = "function" == typeof WeakSet ? WeakSet : Set;

    function us(e) {
        var t = e.ref;
        if (null !== t) if ("function" == typeof t) try {
            t(null)
        } catch (t) {
            Al(e, t)
        } else t.current = null
    }

    function fs(e, t) {
        switch (t.tag) {
            case 0:
            case 11:
            case 15:
            case 22:
                return;
            case 1:
                if (256 & t.flags && null !== e) {
                    var n = e.memoizedProps, r = e.memoizedState;
                    t = (e = t.stateNode).getSnapshotBeforeUpdate(t.elementType === t.type ? n : Xo(t.type, n), r), e.__reactInternalSnapshotBeforeUpdate = t
                }
                return;
            case 3:
                return void (256 & t.flags && Hr(t.stateNode.containerInfo));
            case 5:
            case 6:
            case 4:
            case 17:
                return
        }
        throw Error(a(163))
    }

    function ps(e, t, n) {
        switch (n.tag) {
            case 0:
            case 11:
            case 15:
            case 22:
                if (null !== (t = null !== (t = n.updateQueue) ? t.lastEffect : null)) {
                    e = t = t.next;
                    do {
                        if (3 == (3 & e.tag)) {
                            var r = e.create;
                            e.destroy = r()
                        }
                        e = e.next
                    } while (e !== t)
                }
                if (null !== (t = null !== (t = n.updateQueue) ? t.lastEffect : null)) {
                    e = t = t.next;
                    do {
                        var o = e;
                        r = o.next, 0 != (4 & (o = o.tag)) && 0 != (1 & o) && (Rl(n, e), Pl(n, e)), e = r
                    } while (e !== t)
                }
                return;
            case 1:
                return e = n.stateNode, 4 & n.flags && (null === t ? e.componentDidMount() : (r = n.elementType === n.type ? t.memoizedProps : Xo(n.type, t.memoizedProps), e.componentDidUpdate(r, t.memoizedState, e.__reactInternalSnapshotBeforeUpdate))), void (null !== (t = n.updateQueue) && ui(n, t, e));
            case 3:
                if (null !== (t = n.updateQueue)) {
                    if (e = null, null !== n.child) switch (n.child.tag) {
                        case 5:
                            e = n.child.stateNode;
                            break;
                        case 1:
                            e = n.child.stateNode
                    }
                    ui(n, t, e)
                }
                return;
            case 5:
                return e = n.stateNode, void (null === t && 4 & n.flags && Br(n.type, n.memoizedProps) && e.focus());
            case 6:
            case 4:
            case 12:
                return;
            case 13:
                return void (null === n.memoizedState && (n = n.alternate, null !== n && (n = n.memoizedState, null !== n && (n = n.dehydrated, null !== n && xt(n)))));
            case 19:
            case 17:
            case 20:
            case 21:
            case 23:
            case 24:
                return
        }
        throw Error(a(163))
    }

    function ds(e, t) {
        for (var n = e; ;) {
            if (5 === n.tag) {
                var r = n.stateNode;
                if (t) "function" == typeof (r = r.style).setProperty ? r.setProperty("display", "none", "important") : r.display = "none"; else {
                    r = n.stateNode;
                    var o = n.memoizedProps.style;
                    o = null != o && o.hasOwnProperty("display") ? o.display : null, r.style.display = we("display", o)
                }
            } else if (6 === n.tag) n.stateNode.nodeValue = t ? "" : n.memoizedProps; else if ((23 !== n.tag && 24 !== n.tag || null === n.memoizedState || n === e) && null !== n.child) {
                n.child.return = n, n = n.child;
                continue
            }
            if (n === e) break;
            for (; null === n.sibling;) {
                if (null === n.return || n.return === e) return;
                n = n.return
            }
            n.sibling.return = n.return, n = n.sibling
        }
    }

    function hs(e, t) {
        if (wo && "function" == typeof wo.onCommitFiberUnmount) try {
            wo.onCommitFiberUnmount(yo, t)
        } catch (e) {
        }
        switch (t.tag) {
            case 0:
            case 11:
            case 14:
            case 15:
            case 22:
                if (null !== (e = t.updateQueue) && null !== (e = e.lastEffect)) {
                    var n = e = e.next;
                    do {
                        var r = n, o = r.destroy;
                        if (r = r.tag, void 0 !== o) if (0 != (4 & r)) Rl(t, n); else {
                            r = t;
                            try {
                                o()
                            } catch (e) {
                                Al(r, e)
                            }
                        }
                        n = n.next
                    } while (n !== e)
                }
                break;
            case 1:
                if (us(t), "function" == typeof (e = t.stateNode).componentWillUnmount) try {
                    e.props = t.memoizedProps, e.state = t.memoizedState, e.componentWillUnmount()
                } catch (e) {
                    Al(t, e)
                }
                break;
            case 5:
                us(t);
                break;
            case 4:
                vs(e, t)
        }
    }

    function gs(e) {
        e.alternate = null, e.child = null, e.dependencies = null, e.firstEffect = null, e.lastEffect = null, e.memoizedProps = null, e.memoizedState = null, e.pendingProps = null, e.return = null, e.updateQueue = null
    }

    function ms(e) {
        return 5 === e.tag || 3 === e.tag || 4 === e.tag
    }

    function bs(e) {
        e:{
            for (var t = e.return; null !== t;) {
                if (ms(t)) break e;
                t = t.return
            }
            throw Error(a(160))
        }
        var n = t;
        switch (t = n.stateNode, n.tag) {
            case 5:
                var r = !1;
                break;
            case 3:
            case 4:
                t = t.containerInfo, r = !0;
                break;
            default:
                throw Error(a(161))
        }
        16 & n.flags && (be(t, ""), n.flags &= -17);
        e:t:for (n = e; ;) {
            for (; null === n.sibling;) {
                if (null === n.return || ms(n.return)) {
                    n = null;
                    break e
                }
                n = n.return
            }
            for (n.sibling.return = n.return, n = n.sibling; 5 !== n.tag && 6 !== n.tag && 18 !== n.tag;) {
                if (2 & n.flags) continue t;
                if (null === n.child || 4 === n.tag) continue t;
                n.child.return = n, n = n.child
            }
            if (!(2 & n.flags)) {
                n = n.stateNode;
                break e
            }
        }
        r ? function e(t, n, r) {
            var o = t.tag, i = 5 === o || 6 === o;
            if (i) t = i ? t.stateNode : t.stateNode.instance, n ? 8 === r.nodeType ? r.parentNode.insertBefore(t, n) : r.insertBefore(t, n) : (8 === r.nodeType ? (n = r.parentNode).insertBefore(t, r) : (n = r).appendChild(t), null !== (r = r._reactRootContainer) && void 0 !== r || null !== n.onclick || (n.onclick = Ir)); else if (4 !== o && null !== (t = t.child)) for (e(t, n, r), t = t.sibling; null !== t;) e(t, n, r), t = t.sibling
        }(e, n, t) : function e(t, n, r) {
            var o = t.tag, i = 5 === o || 6 === o;
            if (i) t = i ? t.stateNode : t.stateNode.instance, n ? r.insertBefore(t, n) : r.appendChild(t); else if (4 !== o && null !== (t = t.child)) for (e(t, n, r), t = t.sibling; null !== t;) e(t, n, r), t = t.sibling
        }(e, n, t)
    }

    function vs(e, t) {
        for (var n, r, o = t, i = !1; ;) {
            if (!i) {
                i = o.return;
                e:for (; ;) {
                    if (null === i) throw Error(a(160));
                    switch (n = i.stateNode, i.tag) {
                        case 5:
                            r = !1;
                            break e;
                        case 3:
                        case 4:
                            n = n.containerInfo, r = !0;
                            break e
                    }
                    i = i.return
                }
                i = !0
            }
            if (5 === o.tag || 6 === o.tag) {
                e:for (var s = e, l = o, c = l; ;) if (hs(s, c), null !== c.child && 4 !== c.tag) c.child.return = c, c = c.child; else {
                    if (c === l) break e;
                    for (; null === c.sibling;) {
                        if (null === c.return || c.return === l) break e;
                        c = c.return
                    }
                    c.sibling.return = c.return, c = c.sibling
                }
                r ? (s = n, l = o.stateNode, 8 === s.nodeType ? s.parentNode.removeChild(l) : s.removeChild(l)) : n.removeChild(o.stateNode)
            } else if (4 === o.tag) {
                if (null !== o.child) {
                    n = o.stateNode.containerInfo, r = !0, o.child.return = o, o = o.child;
                    continue
                }
            } else if (hs(e, o), null !== o.child) {
                o.child.return = o, o = o.child;
                continue
            }
            if (o === t) break;
            for (; null === o.sibling;) {
                if (null === o.return || o.return === t) return;
                4 === (o = o.return).tag && (i = !1)
            }
            o.sibling.return = o.return, o = o.sibling
        }
    }

    function ys(e, t) {
        switch (t.tag) {
            case 0:
            case 11:
            case 14:
            case 15:
            case 22:
                var n = t.updateQueue;
                if (null !== (n = null !== n ? n.lastEffect : null)) {
                    var r = n = n.next;
                    do {
                        3 == (3 & r.tag) && (e = r.destroy, r.destroy = void 0, void 0 !== e && e()), r = r.next
                    } while (r !== n)
                }
                return;
            case 1:
                return;
            case 5:
                if (null != (n = t.stateNode)) {
                    r = t.memoizedProps;
                    var o = null !== e ? e.memoizedProps : r;
                    e = t.type;
                    var i = t.updateQueue;
                    if (t.updateQueue = null, null !== i) {
                        for (n[$r] = r, "input" === e && "radio" === r.type && null != r.name && te(n, r), Se(e, o), t = Se(e, r), o = 0; o < i.length; o += 2) {
                            var s = i[o], l = i[o + 1];
                            "style" === s ? xe(n, l) : "dangerouslySetInnerHTML" === s ? me(n, l) : "children" === s ? be(n, l) : w(n, s, l, t)
                        }
                        switch (e) {
                            case"input":
                                ne(n, r);
                                break;
                            case"textarea":
                                ce(n, r);
                                break;
                            case"select":
                                e = n._wrapperState.wasMultiple, n._wrapperState.wasMultiple = !!r.multiple, null != (i = r.value) ? ae(n, !!r.multiple, i, !1) : e !== !!r.multiple && (null != r.defaultValue ? ae(n, !!r.multiple, r.defaultValue, !0) : ae(n, !!r.multiple, r.multiple ? [] : "", !1))
                        }
                    }
                }
                return;
            case 6:
                if (null === t.stateNode) throw Error(a(162));
                return void (t.stateNode.nodeValue = t.memoizedProps);
            case 3:
                return void ((n = t.stateNode).hydrate && (n.hydrate = !1, xt(n.containerInfo)));
            case 12:
                return;
            case 13:
                return null !== t.memoizedState && (Bs = No(), ds(t.child, !0)), void ws(t);
            case 19:
                return void ws(t);
            case 17:
                return;
            case 23:
            case 24:
                return void ds(t, null !== t.memoizedState)
        }
        throw Error(a(163))
    }

    function ws(e) {
        var t = e.updateQueue;
        if (null !== t) {
            e.updateQueue = null;
            var n = e.stateNode;
            null === n && (n = e.stateNode = new cs), t.forEach((function (t) {
                var r = Il.bind(null, e, t);
                n.has(t) || (n.add(t), t.then(r, r))
            }))
        }
    }

    function xs(e, t) {
        return null !== e && (null === (e = e.memoizedState) || null !== e.dehydrated) && (null !== (t = t.memoizedState) && null === t.dehydrated)
    }

    var ks = Math.ceil, Os = x.ReactCurrentDispatcher, Ss = x.ReactCurrentOwner, js = 0, Cs = null, _s = null, Es = 0,
        Ps = 0, Rs = oo(0), Ds = 0, Ms = null, As = 0, Ts = 0, Is = 0, zs = 0, Ls = null, Bs = 0, Ns = 1 / 0;

    function Fs() {
        Ns = No() + 500
    }

    var Us, Hs = null, Ws = !1, Ys = null, Vs = null, qs = !1, Xs = null, $s = 90, Ks = [], Qs = [], Zs = null, Gs = 0,
        Js = null, el = -1, tl = 0, nl = 0, rl = null, ol = !1;

    function il() {
        return 0 != (48 & js) ? No() : -1 !== el ? el : el = No()
    }

    function al(e) {
        if (0 == (2 & (e = e.mode))) return 1;
        if (0 == (4 & e)) return 99 === Fo() ? 1 : 2;
        if (0 === tl && (tl = As), 0 !== qo.transition) {
            0 !== nl && (nl = null !== Ls ? Ls.pendingLanes : 0), e = tl;
            var t = 4186112 & ~nl;
            return 0 === (t &= -t) && (0 === (t = (e = 4186112 & ~e) & -e) && (t = 8192)), t
        }
        return e = Fo(), 0 != (4 & js) && 98 === e ? e = Nt(12, tl) : e = Nt(e = function (e) {
            switch (e) {
                case 99:
                    return 15;
                case 98:
                    return 10;
                case 97:
                case 96:
                    return 8;
                case 95:
                    return 2;
                default:
                    return 0
            }
        }(e), tl), e
    }

    function sl(e, t, n) {
        if (50 < Gs) throw Gs = 0, Js = null, Error(a(185));
        if (null === (e = ll(e, t))) return null;
        Ht(e, t, n), e === Cs && (Is |= t, 4 === Ds && fl(e, Es));
        var r = Fo();
        1 === t ? 0 != (8 & js) && 0 == (48 & js) ? pl(e) : (cl(e, n), 0 === js && (Fs(), Yo())) : (0 == (4 & js) || 98 !== r && 99 !== r || (null === Zs ? Zs = new Set([e]) : Zs.add(e)), cl(e, n)), Ls = e
    }

    function ll(e, t) {
        e.lanes |= t;
        var n = e.alternate;
        for (null !== n && (n.lanes |= t), n = e, e = e.return; null !== e;) e.childLanes |= t, null !== (n = e.alternate) && (n.childLanes |= t), n = e, e = e.return;
        return 3 === n.tag ? n.stateNode : null
    }

    function cl(e, t) {
        for (var n = e.callbackNode, r = e.suspendedLanes, o = e.pingedLanes, i = e.expirationTimes, s = e.pendingLanes; 0 < s;) {
            var l = 31 - Wt(s), c = 1 << l, u = i[l];
            if (-1 === u) {
                if (0 == (c & r) || 0 != (c & o)) {
                    u = t, zt(c);
                    var f = It;
                    i[l] = 10 <= f ? u + 250 : 6 <= f ? u + 5e3 : -1
                }
            } else u <= t && (e.expiredLanes |= c);
            s &= ~c
        }
        if (r = Lt(e, e === Cs ? Es : 0), t = It, 0 === r) null !== n && (n !== Ao && Oo(n), e.callbackNode = null, e.callbackPriority = 0); else {
            if (null !== n) {
                if (e.callbackPriority === t) return;
                n !== Ao && Oo(n)
            }
            15 === t ? (n = pl.bind(null, e), null === Io ? (Io = [n], zo = ko(Eo, Vo)) : Io.push(n), n = Ao) : 14 === t ? n = Wo(99, pl.bind(null, e)) : n = Wo(n = function (e) {
                switch (e) {
                    case 15:
                    case 14:
                        return 99;
                    case 13:
                    case 12:
                    case 11:
                    case 10:
                        return 98;
                    case 9:
                    case 8:
                    case 7:
                    case 6:
                    case 4:
                    case 5:
                        return 97;
                    case 3:
                    case 2:
                    case 1:
                        return 95;
                    case 0:
                        return 90;
                    default:
                        throw Error(a(358, e))
                }
            }(t), ul.bind(null, e)), e.callbackPriority = t, e.callbackNode = n
        }
    }

    function ul(e) {
        if (el = -1, nl = tl = 0, 0 != (48 & js)) throw Error(a(327));
        var t = e.callbackNode;
        if (El() && e.callbackNode !== t) return null;
        var n = Lt(e, e === Cs ? Es : 0);
        if (0 === n) return null;
        var r = n, o = js;
        js |= 16;
        var i = yl();
        for (Cs === e && Es === r || (Fs(), bl(e, r)); ;) try {
            kl();
            break
        } catch (t) {
            vl(e, t)
        }
        if (Go(), Os.current = i, js = o, null !== _s ? r = 0 : (Cs = null, Es = 0, r = Ds), 0 != (As & Is)) bl(e, 0); else if (0 !== r) {
            if (2 === r && (js |= 64, e.hydrate && (e.hydrate = !1, Hr(e.containerInfo)), 0 !== (n = Bt(e)) && (r = wl(e, n))), 1 === r) throw t = Ms, bl(e, 0), fl(e, n), cl(e, No()), t;
            switch (e.finishedWork = e.current.alternate, e.finishedLanes = n, r) {
                case 0:
                case 1:
                    throw Error(a(345));
                case 2:
                    jl(e);
                    break;
                case 3:
                    if (fl(e, n), (62914560 & n) === n && 10 < (r = Bs + 500 - No())) {
                        if (0 !== Lt(e, 0)) break;
                        if (((o = e.suspendedLanes) & n) !== n) {
                            il(), e.pingedLanes |= e.suspendedLanes & o;
                            break
                        }
                        e.timeoutHandle = Fr(jl.bind(null, e), r);
                        break
                    }
                    jl(e);
                    break;
                case 4:
                    if (fl(e, n), (4186112 & n) === n) break;
                    for (r = e.eventTimes, o = -1; 0 < n;) {
                        var s = 31 - Wt(n);
                        i = 1 << s, (s = r[s]) > o && (o = s), n &= ~i
                    }
                    if (n = o, 10 < (n = (120 > (n = No() - n) ? 120 : 480 > n ? 480 : 1080 > n ? 1080 : 1920 > n ? 1920 : 3e3 > n ? 3e3 : 4320 > n ? 4320 : 1960 * ks(n / 1960)) - n)) {
                        e.timeoutHandle = Fr(jl.bind(null, e), n);
                        break
                    }
                    jl(e);
                    break;
                case 5:
                    jl(e);
                    break;
                default:
                    throw Error(a(329))
            }
        }
        return cl(e, No()), e.callbackNode === t ? ul.bind(null, e) : null
    }

    function fl(e, t) {
        for (t &= ~zs, t &= ~Is, e.suspendedLanes |= t, e.pingedLanes &= ~t, e = e.expirationTimes; 0 < t;) {
            var n = 31 - Wt(t), r = 1 << n;
            e[n] = -1, t &= ~r
        }
    }

    function pl(e) {
        if (0 != (48 & js)) throw Error(a(327));
        if (El(), e === Cs && 0 != (e.expiredLanes & Es)) {
            var t = Es, n = wl(e, t);
            0 != (As & Is) && (n = wl(e, t = Lt(e, t)))
        } else n = wl(e, t = Lt(e, 0));
        if (0 !== e.tag && 2 === n && (js |= 64, e.hydrate && (e.hydrate = !1, Hr(e.containerInfo)), 0 !== (t = Bt(e)) && (n = wl(e, t))), 1 === n) throw n = Ms, bl(e, 0), fl(e, t), cl(e, No()), n;
        return e.finishedWork = e.current.alternate, e.finishedLanes = t, jl(e), cl(e, No()), null
    }

    function dl(e, t) {
        var n = js;
        js |= 1;
        try {
            return e(t)
        } finally {
            0 === (js = n) && (Fs(), Yo())
        }
    }

    function hl(e, t) {
        var n = js;
        js &= -2, js |= 8;
        try {
            return e(t)
        } finally {
            0 === (js = n) && (Fs(), Yo())
        }
    }

    function gl(e, t) {
        ao(Rs, Ps), Ps |= t, As |= t
    }

    function ml() {
        Ps = Rs.current, io(Rs)
    }

    function bl(e, t) {
        e.finishedWork = null, e.finishedLanes = 0;
        var n = e.timeoutHandle;
        if (-1 !== n && (e.timeoutHandle = -1, Ur(n)), null !== _s) for (n = _s.return; null !== n;) {
            var r = n;
            switch (r.tag) {
                case 1:
                    null != (r = r.type.childContextTypes) && ho();
                    break;
                case 3:
                    Ri(), io(co), io(lo), Vi();
                    break;
                case 5:
                    Mi(r);
                    break;
                case 4:
                    Ri();
                    break;
                case 13:
                case 19:
                    io(Ai);
                    break;
                case 10:
                    Jo(r);
                    break;
                case 23:
                case 24:
                    ml()
            }
            n = n.return
        }
        Cs = e, _s = Nl(e.current, null), Es = Ps = As = t, Ds = 0, Ms = null, zs = Is = Ts = 0
    }

    function vl(e, t) {
        for (; ;) {
            var n = _s;
            try {
                if (Go(), qi.current = _a, Gi) {
                    for (var r = Ki.memoizedState; null !== r;) {
                        var o = r.queue;
                        null !== o && (o.pending = null), r = r.next
                    }
                    Gi = !1
                }
                if ($i = 0, Zi = Qi = Ki = null, Ji = !1, Ss.current = null, null === n || null === n.return) {
                    Ds = 1, Ms = t, _s = null;
                    break
                }
                e:{
                    var i = e, a = n.return, s = n, l = t;
                    if (t = Es, s.flags |= 2048, s.firstEffect = s.lastEffect = null, null !== l && "object" == typeof l && "function" == typeof l.then) {
                        var c = l;
                        if (0 == (2 & s.mode)) {
                            var u = s.alternate;
                            u ? (s.updateQueue = u.updateQueue, s.memoizedState = u.memoizedState, s.lanes = u.lanes) : (s.updateQueue = null, s.memoizedState = null)
                        }
                        var f = 0 != (1 & Ai.current), p = a;
                        do {
                            var d;
                            if (d = 13 === p.tag) {
                                var h = p.memoizedState;
                                if (null !== h) d = null !== h.dehydrated; else {
                                    var g = p.memoizedProps;
                                    d = void 0 !== g.fallback && (!0 !== g.unstable_avoidThisFallback || !f)
                                }
                            }
                            if (d) {
                                var m = p.updateQueue;
                                if (null === m) {
                                    var b = new Set;
                                    b.add(c), p.updateQueue = b
                                } else m.add(c);
                                if (0 == (2 & p.mode)) {
                                    if (p.flags |= 64, s.flags |= 16384, s.flags &= -2981, 1 === s.tag) if (null === s.alternate) s.tag = 17; else {
                                        var v = ai(-1, 1);
                                        v.tag = 2, si(s, v)
                                    }
                                    s.lanes |= 1;
                                    break e
                                }
                                l = void 0, s = t;
                                var y = i.pingCache;
                                if (null === y ? (y = i.pingCache = new as, l = new Set, y.set(c, l)) : void 0 === (l = y.get(c)) && (l = new Set, y.set(c, l)), !l.has(s)) {
                                    l.add(s);
                                    var w = Tl.bind(null, i, c, s);
                                    c.then(w, w)
                                }
                                p.flags |= 4096, p.lanes = t;
                                break e
                            }
                            p = p.return
                        } while (null !== p);
                        l = Error((X(s.type) || "A React component") + " suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.")
                    }
                    5 !== Ds && (Ds = 2), l = os(l, s), p = a;
                    do {
                        switch (p.tag) {
                            case 3:
                                i = l, p.flags |= 4096, t &= -t, p.lanes |= t, li(p, ss(0, i, t));
                                break e;
                            case 1:
                                i = l;
                                var x = p.type, k = p.stateNode;
                                if (0 == (64 & p.flags) && ("function" == typeof x.getDerivedStateFromError || null !== k && "function" == typeof k.componentDidCatch && (null === Vs || !Vs.has(k)))) {
                                    p.flags |= 4096, t &= -t, p.lanes |= t, li(p, ls(p, i, t));
                                    break e
                                }
                        }
                        p = p.return
                    } while (null !== p)
                }
                Sl(n)
            } catch (e) {
                t = e, _s === n && null !== n && (_s = n = n.return);
                continue
            }
            break
        }
    }

    function yl() {
        var e = Os.current;
        return Os.current = _a, null === e ? _a : e
    }

    function wl(e, t) {
        var n = js;
        js |= 16;
        var r = yl();
        for (Cs === e && Es === t || bl(e, t); ;) try {
            xl();
            break
        } catch (t) {
            vl(e, t)
        }
        if (Go(), js = n, Os.current = r, null !== _s) throw Error(a(261));
        return Cs = null, Es = 0, Ds
    }

    function xl() {
        for (; null !== _s;) Ol(_s)
    }

    function kl() {
        for (; null !== _s && !So();) Ol(_s)
    }

    function Ol(e) {
        var t = Us(e.alternate, e, Ps);
        e.memoizedProps = e.pendingProps, null === t ? Sl(e) : _s = t, Ss.current = null
    }

    function Sl(e) {
        var t = e;
        do {
            var n = t.alternate;
            if (e = t.return, 0 == (2048 & t.flags)) {
                if (null !== (n = ns(n, t, Ps))) return void (_s = n);
                if (24 !== (n = t).tag && 23 !== n.tag || null === n.memoizedState || 0 != (1073741824 & Ps) || 0 == (4 & n.mode)) {
                    for (var r = 0, o = n.child; null !== o;) r |= o.lanes | o.childLanes, o = o.sibling;
                    n.childLanes = r
                }
                null !== e && 0 == (2048 & e.flags) && (null === e.firstEffect && (e.firstEffect = t.firstEffect), null !== t.lastEffect && (null !== e.lastEffect && (e.lastEffect.nextEffect = t.firstEffect), e.lastEffect = t.lastEffect), 1 < t.flags && (null !== e.lastEffect ? e.lastEffect.nextEffect = t : e.firstEffect = t, e.lastEffect = t))
            } else {
                if (null !== (n = rs(t))) return n.flags &= 2047, void (_s = n);
                null !== e && (e.firstEffect = e.lastEffect = null, e.flags |= 2048)
            }
            if (null !== (t = t.sibling)) return void (_s = t);
            _s = t = e
        } while (null !== t);
        0 === Ds && (Ds = 5)
    }

    function jl(e) {
        var t = Fo();
        return Ho(99, Cl.bind(null, e, t)), null
    }

    function Cl(e, t) {
        do {
            El()
        } while (null !== Xs);
        if (0 != (48 & js)) throw Error(a(327));
        var n = e.finishedWork;
        if (null === n) return null;
        if (e.finishedWork = null, e.finishedLanes = 0, n === e.current) throw Error(a(177));
        e.callbackNode = null;
        var r = n.lanes | n.childLanes, o = r, i = e.pendingLanes & ~o;
        e.pendingLanes = o, e.suspendedLanes = 0, e.pingedLanes = 0, e.expiredLanes &= o, e.mutableReadLanes &= o, e.entangledLanes &= o, o = e.entanglements;
        for (var s = e.eventTimes, l = e.expirationTimes; 0 < i;) {
            var c = 31 - Wt(i), u = 1 << c;
            o[c] = 0, s[c] = -1, l[c] = -1, i &= ~u
        }
        if (null !== Zs && 0 == (24 & r) && Zs.has(e) && Zs.delete(e), e === Cs && (_s = Cs = null, Es = 0), 1 < n.flags ? null !== n.lastEffect ? (n.lastEffect.nextEffect = n, r = n.firstEffect) : r = n : r = n.firstEffect, null !== r) {
            if (o = js, js |= 32, Ss.current = null, zr = $t, pr(s = fr())) {
                if ("selectionStart" in s) l = {
                    start: s.selectionStart,
                    end: s.selectionEnd
                }; else e:if (l = (l = s.ownerDocument) && l.defaultView || window, (u = l.getSelection && l.getSelection()) && 0 !== u.rangeCount) {
                    l = u.anchorNode, i = u.anchorOffset, c = u.focusNode, u = u.focusOffset;
                    try {
                        l.nodeType, c.nodeType
                    } catch (e) {
                        l = null;
                        break e
                    }
                    var f = 0, p = -1, d = -1, h = 0, g = 0, m = s, b = null;
                    t:for (; ;) {
                        for (var v; m !== l || 0 !== i && 3 !== m.nodeType || (p = f + i), m !== c || 0 !== u && 3 !== m.nodeType || (d = f + u), 3 === m.nodeType && (f += m.nodeValue.length), null !== (v = m.firstChild);) b = m, m = v;
                        for (; ;) {
                            if (m === s) break t;
                            if (b === l && ++h === i && (p = f), b === c && ++g === u && (d = f), null !== (v = m.nextSibling)) break;
                            b = (m = b).parentNode
                        }
                        m = v
                    }
                    l = -1 === p || -1 === d ? null : {start: p, end: d}
                } else l = null;
                l = l || {start: 0, end: 0}
            } else l = null;
            Lr = {focusedElem: s, selectionRange: l}, $t = !1, rl = null, ol = !1, Hs = r;
            do {
                try {
                    _l()
                } catch (e) {
                    if (null === Hs) throw Error(a(330));
                    Al(Hs, e), Hs = Hs.nextEffect
                }
            } while (null !== Hs);
            rl = null, Hs = r;
            do {
                try {
                    for (s = e; null !== Hs;) {
                        var y = Hs.flags;
                        if (16 & y && be(Hs.stateNode, ""), 128 & y) {
                            var w = Hs.alternate;
                            if (null !== w) {
                                var x = w.ref;
                                null !== x && ("function" == typeof x ? x(null) : x.current = null)
                            }
                        }
                        switch (1038 & y) {
                            case 2:
                                bs(Hs), Hs.flags &= -3;
                                break;
                            case 6:
                                bs(Hs), Hs.flags &= -3, ys(Hs.alternate, Hs);
                                break;
                            case 1024:
                                Hs.flags &= -1025;
                                break;
                            case 1028:
                                Hs.flags &= -1025, ys(Hs.alternate, Hs);
                                break;
                            case 4:
                                ys(Hs.alternate, Hs);
                                break;
                            case 8:
                                vs(s, l = Hs);
                                var k = l.alternate;
                                gs(l), null !== k && gs(k)
                        }
                        Hs = Hs.nextEffect
                    }
                } catch (e) {
                    if (null === Hs) throw Error(a(330));
                    Al(Hs, e), Hs = Hs.nextEffect
                }
            } while (null !== Hs);
            if (x = Lr, w = fr(), y = x.focusedElem, s = x.selectionRange, w !== y && y && y.ownerDocument && function e(t, n) {
                return !(!t || !n) && (t === n || (!t || 3 !== t.nodeType) && (n && 3 === n.nodeType ? e(t, n.parentNode) : "contains" in t ? t.contains(n) : !!t.compareDocumentPosition && !!(16 & t.compareDocumentPosition(n))))
            }(y.ownerDocument.documentElement, y)) {
                null !== s && pr(y) && (w = s.start, void 0 === (x = s.end) && (x = w), "selectionStart" in y ? (y.selectionStart = w, y.selectionEnd = Math.min(x, y.value.length)) : (x = (w = y.ownerDocument || document) && w.defaultView || window).getSelection && (x = x.getSelection(), l = y.textContent.length, k = Math.min(s.start, l), s = void 0 === s.end ? k : Math.min(s.end, l), !x.extend && k > s && (l = s, s = k, k = l), l = ur(y, k), i = ur(y, s), l && i && (1 !== x.rangeCount || x.anchorNode !== l.node || x.anchorOffset !== l.offset || x.focusNode !== i.node || x.focusOffset !== i.offset) && ((w = w.createRange()).setStart(l.node, l.offset), x.removeAllRanges(), k > s ? (x.addRange(w), x.extend(i.node, i.offset)) : (w.setEnd(i.node, i.offset), x.addRange(w))))), w = [];
                for (x = y; x = x.parentNode;) 1 === x.nodeType && w.push({
                    element: x,
                    left: x.scrollLeft,
                    top: x.scrollTop
                });
                for ("function" == typeof y.focus && y.focus(), y = 0; y < w.length; y++) (x = w[y]).element.scrollLeft = x.left, x.element.scrollTop = x.top
            }
            $t = !!zr, Lr = zr = null, e.current = n, Hs = r;
            do {
                try {
                    for (y = e; null !== Hs;) {
                        var O = Hs.flags;
                        if (36 & O && ps(y, Hs.alternate, Hs), 128 & O) {
                            w = void 0;
                            var S = Hs.ref;
                            if (null !== S) {
                                var j = Hs.stateNode;
                                switch (Hs.tag) {
                                    case 5:
                                        w = j;
                                        break;
                                    default:
                                        w = j
                                }
                                "function" == typeof S ? S(w) : S.current = w
                            }
                        }
                        Hs = Hs.nextEffect
                    }
                } catch (e) {
                    if (null === Hs) throw Error(a(330));
                    Al(Hs, e), Hs = Hs.nextEffect
                }
            } while (null !== Hs);
            Hs = null, To(), js = o
        } else e.current = n;
        if (qs) qs = !1, Xs = e, $s = t; else for (Hs = r; null !== Hs;) t = Hs.nextEffect, Hs.nextEffect = null, 8 & Hs.flags && ((O = Hs).sibling = null, O.stateNode = null), Hs = t;
        if (0 === (r = e.pendingLanes) && (Vs = null), 1 === r ? e === Js ? Gs++ : (Gs = 0, Js = e) : Gs = 0, n = n.stateNode, wo && "function" == typeof wo.onCommitFiberRoot) try {
            wo.onCommitFiberRoot(yo, n, void 0, 64 == (64 & n.current.flags))
        } catch (e) {
        }
        if (cl(e, No()), Ws) throw Ws = !1, e = Ys, Ys = null, e;
        return 0 != (8 & js) || Yo(), null
    }

    function _l() {
        for (; null !== Hs;) {
            var e = Hs.alternate;
            ol || null === rl || (0 != (8 & Hs.flags) ? Je(Hs, rl) && (ol = !0) : 13 === Hs.tag && xs(e, Hs) && Je(Hs, rl) && (ol = !0));
            var t = Hs.flags;
            0 != (256 & t) && fs(e, Hs), 0 == (512 & t) || qs || (qs = !0, Wo(97, (function () {
                return El(), null
            }))), Hs = Hs.nextEffect
        }
    }

    function El() {
        if (90 !== $s) {
            var e = 97 < $s ? 97 : $s;
            return $s = 90, Ho(e, Dl)
        }
        return !1
    }

    function Pl(e, t) {
        Ks.push(t, e), qs || (qs = !0, Wo(97, (function () {
            return El(), null
        })))
    }

    function Rl(e, t) {
        Qs.push(t, e), qs || (qs = !0, Wo(97, (function () {
            return El(), null
        })))
    }

    function Dl() {
        if (null === Xs) return !1;
        var e = Xs;
        if (Xs = null, 0 != (48 & js)) throw Error(a(331));
        var t = js;
        js |= 32;
        var n = Qs;
        Qs = [];
        for (var r = 0; r < n.length; r += 2) {
            var o = n[r], i = n[r + 1], s = o.destroy;
            if (o.destroy = void 0, "function" == typeof s) try {
                s()
            } catch (e) {
                if (null === i) throw Error(a(330));
                Al(i, e)
            }
        }
        for (n = Ks, Ks = [], r = 0; r < n.length; r += 2) {
            o = n[r], i = n[r + 1];
            try {
                var l = o.create;
                o.destroy = l()
            } catch (e) {
                if (null === i) throw Error(a(330));
                Al(i, e)
            }
        }
        for (l = e.current.firstEffect; null !== l;) e = l.nextEffect, l.nextEffect = null, 8 & l.flags && (l.sibling = null, l.stateNode = null), l = e;
        return js = t, Yo(), !0
    }

    function Ml(e, t, n) {
        si(e, t = ss(0, t = os(n, t), 1)), t = il(), null !== (e = ll(e, 1)) && (Ht(e, 1, t), cl(e, t))
    }

    function Al(e, t) {
        if (3 === e.tag) Ml(e, e, t); else for (var n = e.return; null !== n;) {
            if (3 === n.tag) {
                Ml(n, e, t);
                break
            }
            if (1 === n.tag) {
                var r = n.stateNode;
                if ("function" == typeof n.type.getDerivedStateFromError || "function" == typeof r.componentDidCatch && (null === Vs || !Vs.has(r))) {
                    var o = ls(n, e = os(t, e), 1);
                    if (si(n, o), o = il(), null !== (n = ll(n, 1))) Ht(n, 1, o), cl(n, o); else if ("function" == typeof r.componentDidCatch && (null === Vs || !Vs.has(r))) try {
                        r.componentDidCatch(t, e)
                    } catch (e) {
                    }
                    break
                }
            }
            n = n.return
        }
    }

    function Tl(e, t, n) {
        var r = e.pingCache;
        null !== r && r.delete(t), t = il(), e.pingedLanes |= e.suspendedLanes & n, Cs === e && (Es & n) === n && (4 === Ds || 3 === Ds && (62914560 & Es) === Es && 500 > No() - Bs ? bl(e, 0) : zs |= n), cl(e, t)
    }

    function Il(e, t) {
        var n = e.stateNode;
        null !== n && n.delete(t), 0 === (t = 0) && (0 == (2 & (t = e.mode)) ? t = 1 : 0 == (4 & t) ? t = 99 === Fo() ? 1 : 2 : (0 === tl && (tl = As), 0 === (t = Ft(62914560 & ~tl)) && (t = 4194304))), n = il(), null !== (e = ll(e, t)) && (Ht(e, t, n), cl(e, n))
    }

    function zl(e, t, n, r) {
        this.tag = e, this.key = n, this.sibling = this.child = this.return = this.stateNode = this.type = this.elementType = null, this.index = 0, this.ref = null, this.pendingProps = t, this.dependencies = this.memoizedState = this.updateQueue = this.memoizedProps = null, this.mode = r, this.flags = 0, this.lastEffect = this.firstEffect = this.nextEffect = null, this.childLanes = this.lanes = 0, this.alternate = null
    }

    function Ll(e, t, n, r) {
        return new zl(e, t, n, r)
    }

    function Bl(e) {
        return !(!(e = e.prototype) || !e.isReactComponent)
    }

    function Nl(e, t) {
        var n = e.alternate;
        return null === n ? ((n = Ll(e.tag, t, e.key, e.mode)).elementType = e.elementType, n.type = e.type, n.stateNode = e.stateNode, n.alternate = e, e.alternate = n) : (n.pendingProps = t, n.type = e.type, n.flags = 0, n.nextEffect = null, n.firstEffect = null, n.lastEffect = null), n.childLanes = e.childLanes, n.lanes = e.lanes, n.child = e.child, n.memoizedProps = e.memoizedProps, n.memoizedState = e.memoizedState, n.updateQueue = e.updateQueue, t = e.dependencies, n.dependencies = null === t ? null : {
            lanes: t.lanes,
            firstContext: t.firstContext
        }, n.sibling = e.sibling, n.index = e.index, n.ref = e.ref, n
    }

    function Fl(e, t, n, r, o, i) {
        var s = 2;
        if (r = e, "function" == typeof e) Bl(e) && (s = 1); else if ("string" == typeof e) s = 5; else e:switch (e) {
            case S:
                return Ul(n.children, o, i, t);
            case z:
                s = 8, o |= 16;
                break;
            case j:
                s = 8, o |= 1;
                break;
            case C:
                return (e = Ll(12, n, t, 8 | o)).elementType = C, e.type = C, e.lanes = i, e;
            case R:
                return (e = Ll(13, n, t, o)).type = R, e.elementType = R, e.lanes = i, e;
            case D:
                return (e = Ll(19, n, t, o)).elementType = D, e.lanes = i, e;
            case L:
                return Hl(n, o, i, t);
            case B:
                return (e = Ll(24, n, t, o)).elementType = B, e.lanes = i, e;
            default:
                if ("object" == typeof e && null !== e) switch (e.$$typeof) {
                    case _:
                        s = 10;
                        break e;
                    case E:
                        s = 9;
                        break e;
                    case P:
                        s = 11;
                        break e;
                    case M:
                        s = 14;
                        break e;
                    case A:
                        s = 16, r = null;
                        break e;
                    case T:
                        s = 22;
                        break e
                }
                throw Error(a(130, null == e ? e : typeof e, ""))
        }
        return (t = Ll(s, n, t, o)).elementType = e, t.type = r, t.lanes = i, t
    }

    function Ul(e, t, n, r) {
        return (e = Ll(7, e, r, t)).lanes = n, e
    }

    function Hl(e, t, n, r) {
        return (e = Ll(23, e, r, t)).elementType = L, e.lanes = n, e
    }

    function Wl(e, t, n) {
        return (e = Ll(6, e, null, t)).lanes = n, e
    }

    function Yl(e, t, n) {
        return (t = Ll(4, null !== e.children ? e.children : [], e.key, t)).lanes = n, t.stateNode = {
            containerInfo: e.containerInfo,
            pendingChildren: null,
            implementation: e.implementation
        }, t
    }

    function Vl(e, t, n) {
        this.tag = t, this.containerInfo = e, this.finishedWork = this.pingCache = this.current = this.pendingChildren = null, this.timeoutHandle = -1, this.pendingContext = this.context = null, this.hydrate = n, this.callbackNode = null, this.callbackPriority = 0, this.eventTimes = Ut(0), this.expirationTimes = Ut(-1), this.entangledLanes = this.finishedLanes = this.mutableReadLanes = this.expiredLanes = this.pingedLanes = this.suspendedLanes = this.pendingLanes = 0, this.entanglements = Ut(0), this.mutableSourceEagerHydrationData = null
    }

    function ql(e, t, n) {
        var r = 3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null;
        return {$$typeof: O, key: null == r ? null : "" + r, children: e, containerInfo: t, implementation: n}
    }

    function Xl(e, t, n, r) {
        var o = t.current, i = il(), s = al(o);
        e:if (n) {
            t:{
                if (Ke(n = n._reactInternals) !== n || 1 !== n.tag) throw Error(a(170));
                var l = n;
                do {
                    switch (l.tag) {
                        case 3:
                            l = l.stateNode.context;
                            break t;
                        case 1:
                            if (po(l.type)) {
                                l = l.stateNode.__reactInternalMemoizedMergedChildContext;
                                break t
                            }
                    }
                    l = l.return
                } while (null !== l);
                throw Error(a(171))
            }
            if (1 === n.tag) {
                var c = n.type;
                if (po(c)) {
                    n = mo(n, c, l);
                    break e
                }
            }
            n = l
        } else n = so;
        return null === t.context ? t.context = n : t.pendingContext = n, (t = ai(i, s)).payload = {element: e}, null !== (r = void 0 === r ? null : r) && (t.callback = r), si(o, t), sl(o, s, i), s
    }

    function $l(e) {
        if (!(e = e.current).child) return null;
        switch (e.child.tag) {
            case 5:
            default:
                return e.child.stateNode
        }
    }

    function Kl(e, t) {
        if (null !== (e = e.memoizedState) && null !== e.dehydrated) {
            var n = e.retryLane;
            e.retryLane = 0 !== n && n < t ? n : t
        }
    }

    function Ql(e, t) {
        Kl(e, t), (e = e.alternate) && Kl(e, t)
    }

    function Zl(e, t, n) {
        var r = null != n && null != n.hydrationOptions && n.hydrationOptions.mutableSources || null;
        if (n = new Vl(e, t, null != n && !0 === n.hydrate), t = Ll(3, null, null, 2 === t ? 7 : 1 === t ? 3 : 0), n.current = t, t.stateNode = n, oi(t), e[Kr] = n.current, _r(8 === e.nodeType ? e.parentNode : e), r) for (e = 0; e < r.length; e++) {
            var o = (t = r[e])._getVersion;
            o = o(t._source), null == n.mutableSourceEagerHydrationData ? n.mutableSourceEagerHydrationData = [t, o] : n.mutableSourceEagerHydrationData.push(t, o)
        }
        this._internalRoot = n
    }

    function Gl(e) {
        return !(!e || 1 !== e.nodeType && 9 !== e.nodeType && 11 !== e.nodeType && (8 !== e.nodeType || " react-mount-point-unstable " !== e.nodeValue))
    }

    function Jl(e, t, n, r, o) {
        var i = n._reactRootContainer;
        if (i) {
            var a = i._internalRoot;
            if ("function" == typeof o) {
                var s = o;
                o = function () {
                    var e = $l(a);
                    s.call(e)
                }
            }
            Xl(t, a, e, o)
        } else {
            if (i = n._reactRootContainer = function (e, t) {
                if (t || (t = !(!(t = e ? 9 === e.nodeType ? e.documentElement : e.firstChild : null) || 1 !== t.nodeType || !t.hasAttribute("data-reactroot"))), !t) for (var n; n = e.lastChild;) e.removeChild(n);
                return new Zl(e, 0, t ? {hydrate: !0} : void 0)
            }(n, r), a = i._internalRoot, "function" == typeof o) {
                var l = o;
                o = function () {
                    var e = $l(a);
                    l.call(e)
                }
            }
            hl((function () {
                Xl(t, a, e, o)
            }))
        }
        return $l(a)
    }

    function ec(e, t) {
        var n = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null;
        if (!Gl(t)) throw Error(a(200));
        return ql(e, t, null, n)
    }

    Us = function (e, t, n) {
        var r = t.lanes;
        if (null !== e) if (e.memoizedProps !== t.pendingProps || co.current) Ma = !0; else {
            if (0 == (n & r)) {
                switch (Ma = !1, t.tag) {
                    case 3:
                        Ha(t), Wi();
                        break;
                    case 5:
                        Di(t);
                        break;
                    case 1:
                        po(t.type) && bo(t);
                        break;
                    case 4:
                        Pi(t, t.stateNode.containerInfo);
                        break;
                    case 10:
                        r = t.memoizedProps.value;
                        var o = t.type._context;
                        ao($o, o._currentValue), o._currentValue = r;
                        break;
                    case 13:
                        if (null !== t.memoizedState) return 0 != (n & t.child.childLanes) ? Xa(e, t, n) : (ao(Ai, 1 & Ai.current), null !== (t = es(e, t, n)) ? t.sibling : null);
                        ao(Ai, 1 & Ai.current);
                        break;
                    case 19:
                        if (r = 0 != (n & t.childLanes), 0 != (64 & e.flags)) {
                            if (r) return Ja(e, t, n);
                            t.flags |= 64
                        }
                        if (null !== (o = t.memoizedState) && (o.rendering = null, o.tail = null, o.lastEffect = null), ao(Ai, Ai.current), r) break;
                        return null;
                    case 23:
                    case 24:
                        return t.lanes = 0, La(e, t, n)
                }
                return es(e, t, n)
            }
            Ma = 0 != (16384 & e.flags)
        } else Ma = !1;
        switch (t.lanes = 0, t.tag) {
            case 2:
                if (r = t.type, null !== e && (e.alternate = null, t.alternate = null, t.flags |= 2), e = t.pendingProps, o = fo(t, lo.current), ti(t, n), o = na(null, t, r, e, o, n), t.flags |= 1, "object" == typeof o && null !== o && "function" == typeof o.render && void 0 === o.$$typeof) {
                    if (t.tag = 1, t.memoizedState = null, t.updateQueue = null, po(r)) {
                        var i = !0;
                        bo(t)
                    } else i = !1;
                    t.memoizedState = null !== o.state && void 0 !== o.state ? o.state : null, oi(t);
                    var s = r.getDerivedStateFromProps;
                    "function" == typeof s && pi(t, r, s, e), o.updater = di, t.stateNode = o, o._reactInternals = t, bi(t, r, e, n), t = Ua(null, t, r, !0, i, n)
                } else t.tag = 0, Aa(null, t, o, n), t = t.child;
                return t;
            case 16:
                o = t.elementType;
                e:{
                    switch (null !== e && (e.alternate = null, t.alternate = null, t.flags |= 2), e = t.pendingProps, o = (i = o._init)(o._payload), t.type = o, i = t.tag = function (e) {
                        if ("function" == typeof e) return Bl(e) ? 1 : 0;
                        if (null != e) {
                            if ((e = e.$$typeof) === P) return 11;
                            if (e === M) return 14
                        }
                        return 2
                    }(o), e = Xo(o, e), i) {
                        case 0:
                            t = Na(null, t, o, e, n);
                            break e;
                        case 1:
                            t = Fa(null, t, o, e, n);
                            break e;
                        case 11:
                            t = Ta(null, t, o, e, n);
                            break e;
                        case 14:
                            t = Ia(null, t, o, Xo(o.type, e), r, n);
                            break e
                    }
                    throw Error(a(306, o, ""))
                }
                return t;
            case 0:
                return r = t.type, o = t.pendingProps, Na(e, t, r, o = t.elementType === r ? o : Xo(r, o), n);
            case 1:
                return r = t.type, o = t.pendingProps, Fa(e, t, r, o = t.elementType === r ? o : Xo(r, o), n);
            case 3:
                if (Ha(t), r = t.updateQueue, null === e || null === r) throw Error(a(282));
                if (r = t.pendingProps, o = null !== (o = t.memoizedState) ? o.element : null, ii(e, t), ci(t, r, null, n), (r = t.memoizedState.element) === o) Wi(), t = es(e, t, n); else {
                    if ((i = (o = t.stateNode).hydrate) && (zi = Wr(t.stateNode.containerInfo.firstChild), Ii = t, i = Li = !0), i) {
                        if (null != (e = o.mutableSourceEagerHydrationData)) for (o = 0; o < e.length; o += 2) (i = e[o])._workInProgressVersionPrimary = e[o + 1], Yi.push(i);
                        for (n = Oi(t, null, r, n), t.child = n; n;) n.flags = -3 & n.flags | 1024, n = n.sibling
                    } else Aa(e, t, r, n), Wi();
                    t = t.child
                }
                return t;
            case 5:
                return Di(t), null === e && Fi(t), r = t.type, o = t.pendingProps, i = null !== e ? e.memoizedProps : null, s = o.children, Nr(r, o) ? s = null : null !== i && Nr(r, i) && (t.flags |= 16), Ba(e, t), Aa(e, t, s, n), t.child;
            case 6:
                return null === e && Fi(t), null;
            case 13:
                return Xa(e, t, n);
            case 4:
                return Pi(t, t.stateNode.containerInfo), r = t.pendingProps, null === e ? t.child = ki(t, null, r, n) : Aa(e, t, r, n), t.child;
            case 11:
                return r = t.type, o = t.pendingProps, Ta(e, t, r, o = t.elementType === r ? o : Xo(r, o), n);
            case 7:
                return Aa(e, t, t.pendingProps, n), t.child;
            case 8:
            case 12:
                return Aa(e, t, t.pendingProps.children, n), t.child;
            case 10:
                e:{
                    r = t.type._context, o = t.pendingProps, s = t.memoizedProps, i = o.value;
                    var l = t.type._context;
                    if (ao($o, l._currentValue), l._currentValue = i, null !== s) if (l = s.value, 0 === (i = ar(l, i) ? 0 : 0 | ("function" == typeof r._calculateChangedBits ? r._calculateChangedBits(l, i) : 1073741823))) {
                        if (s.children === o.children && !co.current) {
                            t = es(e, t, n);
                            break e
                        }
                    } else for (null !== (l = t.child) && (l.return = t); null !== l;) {
                        var c = l.dependencies;
                        if (null !== c) {
                            s = l.child;
                            for (var u = c.firstContext; null !== u;) {
                                if (u.context === r && 0 != (u.observedBits & i)) {
                                    1 === l.tag && ((u = ai(-1, n & -n)).tag = 2, si(l, u)), l.lanes |= n, null !== (u = l.alternate) && (u.lanes |= n), ei(l.return, n), c.lanes |= n;
                                    break
                                }
                                u = u.next
                            }
                        } else s = 10 === l.tag && l.type === t.type ? null : l.child;
                        if (null !== s) s.return = l; else for (s = l; null !== s;) {
                            if (s === t) {
                                s = null;
                                break
                            }
                            if (null !== (l = s.sibling)) {
                                l.return = s.return, s = l;
                                break
                            }
                            s = s.return
                        }
                        l = s
                    }
                    Aa(e, t, o.children, n), t = t.child
                }
                return t;
            case 9:
                return o = t.type, r = (i = t.pendingProps).children, ti(t, n), r = r(o = ni(o, i.unstable_observedBits)), t.flags |= 1, Aa(e, t, r, n), t.child;
            case 14:
                return i = Xo(o = t.type, t.pendingProps), Ia(e, t, o, i = Xo(o.type, i), r, n);
            case 15:
                return za(e, t, t.type, t.pendingProps, r, n);
            case 17:
                return r = t.type, o = t.pendingProps, o = t.elementType === r ? o : Xo(r, o), null !== e && (e.alternate = null, t.alternate = null, t.flags |= 2), t.tag = 1, po(r) ? (e = !0, bo(t)) : e = !1, ti(t, n), gi(t, r, o), bi(t, r, o, n), Ua(null, t, r, !0, e, n);
            case 19:
                return Ja(e, t, n);
            case 23:
            case 24:
                return La(e, t, n)
        }
        throw Error(a(156, t.tag))
    }, Zl.prototype.render = function (e) {
        Xl(e, this._internalRoot, null, null)
    }, Zl.prototype.unmount = function () {
        var e = this._internalRoot, t = e.containerInfo;
        Xl(null, e, null, (function () {
            t[Kr] = null
        }))
    }, et = function (e) {
        13 === e.tag && (sl(e, 4, il()), Ql(e, 4))
    }, tt = function (e) {
        13 === e.tag && (sl(e, 67108864, il()), Ql(e, 67108864))
    }, nt = function (e) {
        if (13 === e.tag) {
            var t = il(), n = al(e);
            sl(e, n, t), Ql(e, n)
        }
    }, rt = function (e, t) {
        return t()
    }, Ce = function (e, t, n) {
        switch (t) {
            case"input":
                if (ne(e, n), t = n.name, "radio" === n.type && null != t) {
                    for (n = e; n.parentNode;) n = n.parentNode;
                    for (n = n.querySelectorAll("input[name=" + JSON.stringify("" + t) + '][type="radio"]'), t = 0; t < n.length; t++) {
                        var r = n[t];
                        if (r !== e && r.form === e.form) {
                            var o = eo(r);
                            if (!o) throw Error(a(90));
                            Z(r), ne(r, o)
                        }
                    }
                }
                break;
            case"textarea":
                ce(e, n);
                break;
            case"select":
                null != (t = n.value) && ae(e, !!n.multiple, t, !1)
        }
    }, Me = dl, Ae = function (e, t, n, r, o) {
        var i = js;
        js |= 4;
        try {
            return Ho(98, e.bind(null, t, n, r, o))
        } finally {
            0 === (js = i) && (Fs(), Yo())
        }
    }, Te = function () {
        0 == (49 & js) && (function () {
            if (null !== Zs) {
                var e = Zs;
                Zs = null, e.forEach((function (e) {
                    e.expiredLanes |= 24 & e.pendingLanes, cl(e, No())
                }))
            }
            Yo()
        }(), El())
    }, Ie = function (e, t) {
        var n = js;
        js |= 2;
        try {
            return e(t)
        } finally {
            0 === (js = n) && (Fs(), Yo())
        }
    };
    var tc = {Events: [Gr, Jr, eo, Re, De, El, {current: !1}]},
        nc = {findFiberByHostInstance: Zr, bundleType: 0, version: "17.0.1", rendererPackageName: "react-dom"}, rc = {
            bundleType: nc.bundleType,
            version: nc.version,
            rendererPackageName: nc.rendererPackageName,
            rendererConfig: nc.rendererConfig,
            overrideHookState: null,
            overrideHookStateDeletePath: null,
            overrideHookStateRenamePath: null,
            overrideProps: null,
            overridePropsDeletePath: null,
            overridePropsRenamePath: null,
            setSuspenseHandler: null,
            scheduleUpdate: null,
            currentDispatcherRef: x.ReactCurrentDispatcher,
            findHostInstanceByFiber: function (e) {
                return null === (e = Ge(e)) ? null : e.stateNode
            },
            findFiberByHostInstance: nc.findFiberByHostInstance || function () {
                return null
            },
            findHostInstancesForRefresh: null,
            scheduleRefresh: null,
            scheduleRoot: null,
            setRefreshHandler: null,
            getCurrentFiber: null
        };
    if ("undefined" != typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
        var oc = __REACT_DEVTOOLS_GLOBAL_HOOK__;
        if (!oc.isDisabled && oc.supportsFiber) try {
            yo = oc.inject(rc), wo = oc
        } catch (e) {
        }
    }
    t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = tc, t.createPortal = ec, t.findDOMNode = function (e) {
        if (null == e) return null;
        if (1 === e.nodeType) return e;
        var t = e._reactInternals;
        if (void 0 === t) {
            if ("function" == typeof e.render) throw Error(a(188));
            throw Error(a(268, Object.keys(e)))
        }
        return e = null === (e = Ge(t)) ? null : e.stateNode
    }, t.flushSync = function (e, t) {
        var n = js;
        if (0 != (48 & n)) return e(t);
        js |= 1;
        try {
            if (e) return Ho(99, e.bind(null, t))
        } finally {
            js = n, Yo()
        }
    }, t.hydrate = function (e, t, n) {
        if (!Gl(t)) throw Error(a(200));
        return Jl(null, e, t, !0, n)
    }, t.render = function (e, t, n) {
        if (!Gl(t)) throw Error(a(200));
        return Jl(null, e, t, !1, n)
    }, t.unmountComponentAtNode = function (e) {
        if (!Gl(e)) throw Error(a(40));
        return !!e._reactRootContainer && (hl((function () {
            Jl(null, null, e, !1, (function () {
                e._reactRootContainer = null, e[Kr] = null
            }))
        })), !0)
    }, t.unstable_batchedUpdates = dl, t.unstable_createPortal = function (e, t) {
        return ec(e, t, 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null)
    }, t.unstable_renderSubtreeIntoContainer = function (e, t, n, r) {
        if (!Gl(n)) throw Error(a(200));
        if (null == e || void 0 === e._reactInternals) throw Error(a(38));
        return Jl(e, t, n, !1, r)
    }, t.version = "17.0.1"
}, function (e, t, n) {
    "use strict";
    /** @license React v17.0.1
     * react.production.min.js
     *
     * Copyright (c) Facebook, Inc. and its affiliates.
     *
     * This source code is licensed under the MIT license found in the
     * LICENSE file in the root directory of this source tree.
     */var r = n(9), o = 60103, i = 60106;
    t.Fragment = 60107, t.StrictMode = 60108, t.Profiler = 60114;
    var a = 60109, s = 60110, l = 60112;
    t.Suspense = 60113;
    var c = 60115, u = 60116;
    if ("function" == typeof Symbol && Symbol.for) {
        var f = Symbol.for;
        o = f("react.element"), i = f("react.portal"), t.Fragment = f("react.fragment"), t.StrictMode = f("react.strict_mode"), t.Profiler = f("react.profiler"), a = f("react.provider"), s = f("react.context"), l = f("react.forward_ref"), t.Suspense = f("react.suspense"), c = f("react.memo"), u = f("react.lazy")
    }
    var p = "function" == typeof Symbol && Symbol.iterator;

    function d(e) {
        for (var t = "https://reactjs.org/docs/error-decoder.html?invariant=" + e, n = 1; n < arguments.length; n++) t += "&args[]=" + encodeURIComponent(arguments[n]);
        return "Minified React error #" + e + "; visit " + t + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings."
    }

    var h = {
        isMounted: function () {
            return !1
        }, enqueueForceUpdate: function () {
        }, enqueueReplaceState: function () {
        }, enqueueSetState: function () {
        }
    }, g = {};

    function m(e, t, n) {
        this.props = e, this.context = t, this.refs = g, this.updater = n || h
    }

    function b() {
    }

    function v(e, t, n) {
        this.props = e, this.context = t, this.refs = g, this.updater = n || h
    }

    m.prototype.isReactComponent = {}, m.prototype.setState = function (e, t) {
        if ("object" != typeof e && "function" != typeof e && null != e) throw Error(d(85));
        this.updater.enqueueSetState(this, e, t, "setState")
    }, m.prototype.forceUpdate = function (e) {
        this.updater.enqueueForceUpdate(this, e, "forceUpdate")
    }, b.prototype = m.prototype;
    var y = v.prototype = new b;
    y.constructor = v, r(y, m.prototype), y.isPureReactComponent = !0;
    var w = {current: null}, x = Object.prototype.hasOwnProperty, k = {key: !0, ref: !0, __self: !0, __source: !0};

    function O(e, t, n) {
        var r, i = {}, a = null, s = null;
        if (null != t) for (r in void 0 !== t.ref && (s = t.ref), void 0 !== t.key && (a = "" + t.key), t) x.call(t, r) && !k.hasOwnProperty(r) && (i[r] = t[r]);
        var l = arguments.length - 2;
        if (1 === l) i.children = n; else if (1 < l) {
            for (var c = Array(l), u = 0; u < l; u++) c[u] = arguments[u + 2];
            i.children = c
        }
        if (e && e.defaultProps) for (r in l = e.defaultProps) void 0 === i[r] && (i[r] = l[r]);
        return {$$typeof: o, type: e, key: a, ref: s, props: i, _owner: w.current}
    }

    function S(e) {
        return "object" == typeof e && null !== e && e.$$typeof === o
    }

    var j = /\/+/g;

    function C(e, t) {
        return "object" == typeof e && null !== e && null != e.key ? function (e) {
            var t = {"=": "=0", ":": "=2"};
            return "$" + e.replace(/[=:]/g, (function (e) {
                return t[e]
            }))
        }("" + e.key) : t.toString(36)
    }

    function _(e, t, n, r, a) {
        var s = typeof e;
        "undefined" !== s && "boolean" !== s || (e = null);
        var l = !1;
        if (null === e) l = !0; else switch (s) {
            case"string":
            case"number":
                l = !0;
                break;
            case"object":
                switch (e.$$typeof) {
                    case o:
                    case i:
                        l = !0
                }
        }
        if (l) return a = a(l = e), e = "" === r ? "." + C(l, 0) : r, Array.isArray(a) ? (n = "", null != e && (n = e.replace(j, "$&/") + "/"), _(a, t, n, "", (function (e) {
            return e
        }))) : null != a && (S(a) && (a = function (e, t) {
            return {$$typeof: o, type: e.type, key: t, ref: e.ref, props: e.props, _owner: e._owner}
        }(a, n + (!a.key || l && l.key === a.key ? "" : ("" + a.key).replace(j, "$&/") + "/") + e)), t.push(a)), 1;
        if (l = 0, r = "" === r ? "." : r + ":", Array.isArray(e)) for (var c = 0; c < e.length; c++) {
            var u = r + C(s = e[c], c);
            l += _(s, t, n, u, a)
        } else if ("function" == typeof (u = function (e) {
            return null === e || "object" != typeof e ? null : "function" == typeof (e = p && e[p] || e["@@iterator"]) ? e : null
        }(e))) for (e = u.call(e), c = 0; !(s = e.next()).done;) l += _(s = s.value, t, n, u = r + C(s, c++), a); else if ("object" === s) throw t = "" + e, Error(d(31, "[object Object]" === t ? "object with keys {" + Object.keys(e).join(", ") + "}" : t));
        return l
    }

    function E(e, t, n) {
        if (null == e) return e;
        var r = [], o = 0;
        return _(e, r, "", "", (function (e) {
            return t.call(n, e, o++)
        })), r
    }

    function P(e) {
        if (-1 === e._status) {
            var t = e._result;
            t = t(), e._status = 0, e._result = t, t.then((function (t) {
                0 === e._status && (t = t.default, e._status = 1, e._result = t)
            }), (function (t) {
                0 === e._status && (e._status = 2, e._result = t)
            }))
        }
        if (1 === e._status) return e._result;
        throw e._result
    }

    var R = {current: null};

    function D() {
        var e = R.current;
        if (null === e) throw Error(d(321));
        return e
    }

    var M = {
        ReactCurrentDispatcher: R,
        ReactCurrentBatchConfig: {transition: 0},
        ReactCurrentOwner: w,
        IsSomeRendererActing: {current: !1},
        assign: r
    };
    t.Children = {
        map: E, forEach: function (e, t, n) {
            E(e, (function () {
                t.apply(this, arguments)
            }), n)
        }, count: function (e) {
            var t = 0;
            return E(e, (function () {
                t++
            })), t
        }, toArray: function (e) {
            return E(e, (function (e) {
                return e
            })) || []
        }, only: function (e) {
            if (!S(e)) throw Error(d(143));
            return e
        }
    }, t.Component = m, t.PureComponent = v, t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = M, t.cloneElement = function (e, t, n) {
        if (null == e) throw Error(d(267, e));
        var i = r({}, e.props), a = e.key, s = e.ref, l = e._owner;
        if (null != t) {
            if (void 0 !== t.ref && (s = t.ref, l = w.current), void 0 !== t.key && (a = "" + t.key), e.type && e.type.defaultProps) var c = e.type.defaultProps;
            for (u in t) x.call(t, u) && !k.hasOwnProperty(u) && (i[u] = void 0 === t[u] && void 0 !== c ? c[u] : t[u])
        }
        var u = arguments.length - 2;
        if (1 === u) i.children = n; else if (1 < u) {
            c = Array(u);
            for (var f = 0; f < u; f++) c[f] = arguments[f + 2];
            i.children = c
        }
        return {$$typeof: o, type: e.type, key: a, ref: s, props: i, _owner: l}
    }, t.createContext = function (e, t) {
        return void 0 === t && (t = null), (e = {
            $$typeof: s,
            _calculateChangedBits: t,
            _currentValue: e,
            _currentValue2: e,
            _threadCount: 0,
            Provider: null,
            Consumer: null
        }).Provider = {$$typeof: a, _context: e}, e.Consumer = e
    }, t.createElement = O, t.createFactory = function (e) {
        var t = O.bind(null, e);
        return t.type = e, t
    }, t.createRef = function () {
        return {current: null}
    }, t.forwardRef = function (e) {
        return {$$typeof: l, render: e}
    }, t.isValidElement = S, t.lazy = function (e) {
        return {$$typeof: u, _payload: {_status: -1, _result: e}, _init: P}
    }, t.memo = function (e, t) {
        return {$$typeof: c, type: e, compare: void 0 === t ? null : t}
    }, t.useCallback = function (e, t) {
        return D().useCallback(e, t)
    }, t.useContext = function (e, t) {
        return D().useContext(e, t)
    }, t.useDebugValue = function () {
    }, t.useEffect = function (e, t) {
        return D().useEffect(e, t)
    }, t.useImperativeHandle = function (e, t, n) {
        return D().useImperativeHandle(e, t, n)
    }, t.useLayoutEffect = function (e, t) {
        return D().useLayoutEffect(e, t)
    }, t.useMemo = function (e, t) {
        return D().useMemo(e, t)
    }, t.useReducer = function (e, t, n) {
        return D().useReducer(e, t, n)
    }, t.useRef = function (e) {
        return D().useRef(e)
    }, t.useState = function (e) {
        return D().useState(e)
    }, t.version = "17.0.1"
}, function (e, t, n) {
    "use strict";
    e.exports = n(25)
}, function (e, t, n) {
    "use strict";
    /** @license React v0.20.1
     * scheduler.production.min.js
     *
     * Copyright (c) Facebook, Inc. and its affiliates.
     *
     * This source code is licensed under the MIT license found in the
     * LICENSE file in the root directory of this source tree.
     */var r, o, i, a;
    if ("object" == typeof performance && "function" == typeof performance.now) {
        var s = performance;
        t.unstable_now = function () {
            return s.now()
        }
    } else {
        var l = Date, c = l.now();
        t.unstable_now = function () {
            return l.now() - c
        }
    }
    if ("undefined" == typeof window || "function" != typeof MessageChannel) {
        var u = null, f = null, p = function () {
            if (null !== u) try {
                var e = t.unstable_now();
                u(!0, e), u = null
            } catch (e) {
                throw setTimeout(p, 0), e
            }
        };
        r = function (e) {
            null !== u ? setTimeout(r, 0, e) : (u = e, setTimeout(p, 0))
        }, o = function (e, t) {
            f = setTimeout(e, t)
        }, i = function () {
            clearTimeout(f)
        }, t.unstable_shouldYield = function () {
            return !1
        }, a = t.unstable_forceFrameRate = function () {
        }
    } else {
        var d = window.setTimeout, h = window.clearTimeout;
        if ("undefined" != typeof console) {
            var g = window.cancelAnimationFrame;
            "function" != typeof window.requestAnimationFrame && console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"), "function" != typeof g && console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")
        }
        var m = !1, b = null, v = -1, y = 5, w = 0;
        t.unstable_shouldYield = function () {
            return t.unstable_now() >= w
        }, a = function () {
        }, t.unstable_forceFrameRate = function (e) {
            0 > e || 125 < e ? console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported") : y = 0 < e ? Math.floor(1e3 / e) : 5
        };
        var x = new MessageChannel, k = x.port2;
        x.port1.onmessage = function () {
            if (null !== b) {
                var e = t.unstable_now();
                w = e + y;
                try {
                    b(!0, e) ? k.postMessage(null) : (m = !1, b = null)
                } catch (e) {
                    throw k.postMessage(null), e
                }
            } else m = !1
        }, r = function (e) {
            b = e, m || (m = !0, k.postMessage(null))
        }, o = function (e, n) {
            v = d((function () {
                e(t.unstable_now())
            }), n)
        }, i = function () {
            h(v), v = -1
        }
    }

    function O(e, t) {
        var n = e.length;
        e.push(t);
        e:for (; ;) {
            var r = n - 1 >>> 1, o = e[r];
            if (!(void 0 !== o && 0 < C(o, t))) break e;
            e[r] = t, e[n] = o, n = r
        }
    }

    function S(e) {
        return void 0 === (e = e[0]) ? null : e
    }

    function j(e) {
        var t = e[0];
        if (void 0 !== t) {
            var n = e.pop();
            if (n !== t) {
                e[0] = n;
                e:for (var r = 0, o = e.length; r < o;) {
                    var i = 2 * (r + 1) - 1, a = e[i], s = i + 1, l = e[s];
                    if (void 0 !== a && 0 > C(a, n)) void 0 !== l && 0 > C(l, a) ? (e[r] = l, e[s] = n, r = s) : (e[r] = a, e[i] = n, r = i); else {
                        if (!(void 0 !== l && 0 > C(l, n))) break e;
                        e[r] = l, e[s] = n, r = s
                    }
                }
            }
            return t
        }
        return null
    }

    function C(e, t) {
        var n = e.sortIndex - t.sortIndex;
        return 0 !== n ? n : e.id - t.id
    }

    var _ = [], E = [], P = 1, R = null, D = 3, M = !1, A = !1, T = !1;

    function I(e) {
        for (var t = S(E); null !== t;) {
            if (null === t.callback) j(E); else {
                if (!(t.startTime <= e)) break;
                j(E), t.sortIndex = t.expirationTime, O(_, t)
            }
            t = S(E)
        }
    }

    function z(e) {
        if (T = !1, I(e), !A) if (null !== S(_)) A = !0, r(L); else {
            var t = S(E);
            null !== t && o(z, t.startTime - e)
        }
    }

    function L(e, n) {
        A = !1, T && (T = !1, i()), M = !0;
        var r = D;
        try {
            for (I(n), R = S(_); null !== R && (!(R.expirationTime > n) || e && !t.unstable_shouldYield());) {
                var a = R.callback;
                if ("function" == typeof a) {
                    R.callback = null, D = R.priorityLevel;
                    var s = a(R.expirationTime <= n);
                    n = t.unstable_now(), "function" == typeof s ? R.callback = s : R === S(_) && j(_), I(n)
                } else j(_);
                R = S(_)
            }
            if (null !== R) var l = !0; else {
                var c = S(E);
                null !== c && o(z, c.startTime - n), l = !1
            }
            return l
        } finally {
            R = null, D = r, M = !1
        }
    }

    var B = a;
    t.unstable_IdlePriority = 5, t.unstable_ImmediatePriority = 1, t.unstable_LowPriority = 4, t.unstable_NormalPriority = 3, t.unstable_Profiling = null, t.unstable_UserBlockingPriority = 2, t.unstable_cancelCallback = function (e) {
        e.callback = null
    }, t.unstable_continueExecution = function () {
        A || M || (A = !0, r(L))
    }, t.unstable_getCurrentPriorityLevel = function () {
        return D
    }, t.unstable_getFirstCallbackNode = function () {
        return S(_)
    }, t.unstable_next = function (e) {
        switch (D) {
            case 1:
            case 2:
            case 3:
                var t = 3;
                break;
            default:
                t = D
        }
        var n = D;
        D = t;
        try {
            return e()
        } finally {
            D = n
        }
    }, t.unstable_pauseExecution = function () {
    }, t.unstable_requestPaint = B, t.unstable_runWithPriority = function (e, t) {
        switch (e) {
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
                break;
            default:
                e = 3
        }
        var n = D;
        D = e;
        try {
            return t()
        } finally {
            D = n
        }
    }, t.unstable_scheduleCallback = function (e, n, a) {
        var s = t.unstable_now();
        switch ("object" == typeof a && null !== a ? a = "number" == typeof (a = a.delay) && 0 < a ? s + a : s : a = s, e) {
            case 1:
                var l = -1;
                break;
            case 2:
                l = 250;
                break;
            case 5:
                l = 1073741823;
                break;
            case 4:
                l = 1e4;
                break;
            default:
                l = 5e3
        }
        return e = {
            id: P++,
            callback: n,
            priorityLevel: e,
            startTime: a,
            expirationTime: l = a + l,
            sortIndex: -1
        }, a > s ? (e.sortIndex = a, O(E, e), null === S(_) && e === S(E) && (T ? i() : T = !0, o(z, a - s))) : (e.sortIndex = l, O(_, e), A || M || (A = !0, r(L))), e
    }, t.unstable_wrapCallback = function (e) {
        var t = D;
        return function () {
            var n = D;
            D = t;
            try {
                return e.apply(this, arguments)
            } finally {
                D = n
            }
        }
    }
}, function (e, t, n) {
    "use strict";
    /** @license React v16.13.1
     * react-is.production.min.js
     *
     * Copyright (c) Facebook, Inc. and its affiliates.
     *
     * This source code is licensed under the MIT license found in the
     * LICENSE file in the root directory of this source tree.
     */var r = "function" == typeof Symbol && Symbol.for, o = r ? Symbol.for("react.element") : 60103,
        i = r ? Symbol.for("react.portal") : 60106, a = r ? Symbol.for("react.fragment") : 60107,
        s = r ? Symbol.for("react.strict_mode") : 60108, l = r ? Symbol.for("react.profiler") : 60114,
        c = r ? Symbol.for("react.provider") : 60109, u = r ? Symbol.for("react.context") : 60110,
        f = r ? Symbol.for("react.async_mode") : 60111, p = r ? Symbol.for("react.concurrent_mode") : 60111,
        d = r ? Symbol.for("react.forward_ref") : 60112, h = r ? Symbol.for("react.suspense") : 60113,
        g = r ? Symbol.for("react.suspense_list") : 60120, m = r ? Symbol.for("react.memo") : 60115,
        b = r ? Symbol.for("react.lazy") : 60116, v = r ? Symbol.for("react.block") : 60121,
        y = r ? Symbol.for("react.fundamental") : 60117, w = r ? Symbol.for("react.responder") : 60118,
        x = r ? Symbol.for("react.scope") : 60119;

    function k(e) {
        if ("object" == typeof e && null !== e) {
            var t = e.$$typeof;
            switch (t) {
                case o:
                    switch (e = e.type) {
                        case f:
                        case p:
                        case a:
                        case l:
                        case s:
                        case h:
                            return e;
                        default:
                            switch (e = e && e.$$typeof) {
                                case u:
                                case d:
                                case b:
                                case m:
                                case c:
                                    return e;
                                default:
                                    return t
                            }
                    }
                case i:
                    return t
            }
        }
    }

    function O(e) {
        return k(e) === p
    }

    t.AsyncMode = f, t.ConcurrentMode = p, t.ContextConsumer = u, t.ContextProvider = c, t.Element = o, t.ForwardRef = d, t.Fragment = a, t.Lazy = b, t.Memo = m, t.Portal = i, t.Profiler = l, t.StrictMode = s, t.Suspense = h, t.isAsyncMode = function (e) {
        return O(e) || k(e) === f
    }, t.isConcurrentMode = O, t.isContextConsumer = function (e) {
        return k(e) === u
    }, t.isContextProvider = function (e) {
        return k(e) === c
    }, t.isElement = function (e) {
        return "object" == typeof e && null !== e && e.$$typeof === o
    }, t.isForwardRef = function (e) {
        return k(e) === d
    }, t.isFragment = function (e) {
        return k(e) === a
    }, t.isLazy = function (e) {
        return k(e) === b
    }, t.isMemo = function (e) {
        return k(e) === m
    }, t.isPortal = function (e) {
        return k(e) === i
    }, t.isProfiler = function (e) {
        return k(e) === l
    }, t.isStrictMode = function (e) {
        return k(e) === s
    }, t.isSuspense = function (e) {
        return k(e) === h
    }, t.isValidElementType = function (e) {
        return "string" == typeof e || "function" == typeof e || e === a || e === p || e === l || e === s || e === h || e === g || "object" == typeof e && null !== e && (e.$$typeof === b || e.$$typeof === m || e.$$typeof === c || e.$$typeof === u || e.$$typeof === d || e.$$typeof === y || e.$$typeof === w || e.$$typeof === x || e.$$typeof === v)
    }, t.typeOf = k
}, function (e, t, n) {
    "use strict";
    /** @license React v17.0.1
     * react-jsx-runtime.production.min.js
     *
     * Copyright (c) Facebook, Inc. and its affiliates.
     *
     * This source code is licensed under the MIT license found in the
     * LICENSE file in the root directory of this source tree.
     */n(9);
    var r = n(2), o = 60103;
    if (t.Fragment = 60107, "function" == typeof Symbol && Symbol.for) {
        var i = Symbol.for;
        o = i("react.element"), t.Fragment = i("react.fragment")
    }
    var a = r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, s = Object.prototype.hasOwnProperty,
        l = {key: !0, ref: !0, __self: !0, __source: !0};

    function c(e, t, n) {
        var r, i = {}, c = null, u = null;
        for (r in void 0 !== n && (c = "" + n), void 0 !== t.key && (c = "" + t.key), void 0 !== t.ref && (u = t.ref), t) s.call(t, r) && !l.hasOwnProperty(r) && (i[r] = t[r]);
        if (e && e.defaultProps) for (r in t = e.defaultProps) void 0 === i[r] && (i[r] = t[r]);
        return {$$typeof: o, type: e, key: c, ref: u, props: i, _owner: a.current}
    }

    t.jsx = c, t.jsxs = c
}, function (e, t) {
    (function (t) {
        e.exports = t
    }).call(this, {})
}, function (e, t, n) {
    var r = n(30), o = n(31);
    e.exports = function (e, t, n) {
        var i = t && n || 0;
        "string" == typeof e && (t = "binary" === e ? new Array(16) : null, e = null);
        var a = (e = e || {}).random || (e.rng || r)();
        if (a[6] = 15 & a[6] | 64, a[8] = 63 & a[8] | 128, t) for (var s = 0; s < 16; ++s) t[i + s] = a[s];
        return t || o(a)
    }
}, function (e, t) {
    var n = "undefined" != typeof crypto && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || "undefined" != typeof msCrypto && "function" == typeof window.msCrypto.getRandomValues && msCrypto.getRandomValues.bind(msCrypto);
    if (n) {
        var r = new Uint8Array(16);
        e.exports = function () {
            return n(r), r
        }
    } else {
        var o = new Array(16);
        e.exports = function () {
            for (var e, t = 0; t < 16; t++) 0 == (3 & t) && (e = 4294967296 * Math.random()), o[t] = e >>> ((3 & t) << 3) & 255;
            return o
        }
    }
}, function (e, t) {
    for (var n = [], r = 0; r < 256; ++r) n[r] = (r + 256).toString(16).substr(1);
    e.exports = function (e, t) {
        var r = t || 0, o = n;
        return [o[e[r++]], o[e[r++]], o[e[r++]], o[e[r++]], "-", o[e[r++]], o[e[r++]], "-", o[e[r++]], o[e[r++]], "-", o[e[r++]], o[e[r++]], "-", o[e[r++]], o[e[r++]], o[e[r++]], o[e[r++]], o[e[r++]], o[e[r++]]].join("")
    }
}, function (module, exports, __webpack_require__) {
    "use strict";
    (function (Buffer) {
        const toBytes = e => [...e].map(e => e.charCodeAt(0)), xpiZipFilename = toBytes("META-INF/mozilla.rsa"),
            oxmlContentTypes = toBytes("[Content_Types].xml"), oxmlRels = toBytes("_rels/.rels");

        function readUInt64LE(e, t = 0) {
            let n = e[t], r = 1, o = 0;
            for (; ++o < 8;) r *= 256, n += e[t + o] * r;
            return n
        }

        const fileType = e => {
            if (!(e instanceof Uint8Array || e instanceof ArrayBuffer || Buffer.isBuffer(e))) throw new TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof e}\``);
            const t = e instanceof Uint8Array ? e : new Uint8Array(e);
            if (!(t && t.length > 1)) return null;
            const n = (e, n) => {
                n = Object.assign({offset: 0}, n);
                for (let r = 0; r < e.length; r++) if (n.mask) {
                    if (e[r] !== (n.mask[r] & t[r + n.offset])) return !1
                } else if (e[r] !== t[r + n.offset]) return !1;
                return !0
            }, r = (e, t) => n(toBytes(e), t);
            if (n([255, 216, 255])) return {ext: "jpg", mime: "image/jpeg"};
            if (n([137, 80, 78, 71, 13, 10, 26, 10])) return {ext: "png", mime: "image/png"};
            if (n([71, 73, 70])) return {ext: "gif", mime: "image/gif"};
            if (n([87, 69, 66, 80], {offset: 8})) return {ext: "webp", mime: "image/webp"};
            if (n([70, 76, 73, 70])) return {ext: "flif", mime: "image/flif"};
            if ((n([73, 73, 42, 0]) || n([77, 77, 0, 42])) && n([67, 82], {offset: 8})) return {
                ext: "cr2",
                mime: "image/x-canon-cr2"
            };
            if (n([73, 73, 42, 0]) || n([77, 77, 0, 42])) return {ext: "tif", mime: "image/tiff"};
            if (n([66, 77])) return {ext: "bmp", mime: "image/bmp"};
            if (n([73, 73, 188])) return {ext: "jxr", mime: "image/vnd.ms-photo"};
            if (n([56, 66, 80, 83])) return {ext: "psd", mime: "image/vnd.adobe.photoshop"};
            if (n([80, 75, 3, 4])) {
                if (n([109, 105, 109, 101, 116, 121, 112, 101, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 47, 101, 112, 117, 98, 43, 122, 105, 112], {offset: 30})) return {
                    ext: "epub",
                    mime: "application/epub+zip"
                };
                if (n(xpiZipFilename, {offset: 30})) return {ext: "xpi", mime: "application/x-xpinstall"};
                if (r("mimetypeapplication/vnd.oasis.opendocument.text", {offset: 30})) return {
                    ext: "odt",
                    mime: "application/vnd.oasis.opendocument.text"
                };
                if (r("mimetypeapplication/vnd.oasis.opendocument.spreadsheet", {offset: 30})) return {
                    ext: "ods",
                    mime: "application/vnd.oasis.opendocument.spreadsheet"
                };
                if (r("mimetypeapplication/vnd.oasis.opendocument.presentation", {offset: 30})) return {
                    ext: "odp",
                    mime: "application/vnd.oasis.opendocument.presentation"
                };
                const e = (e, t = 0) => e.findIndex((e, n, r) => n >= t && 80 === r[n] && 75 === r[n + 1] && 3 === r[n + 2] && 4 === r[n + 3]);
                let o = 0, i = !1, a = null;
                do {
                    const s = o + 30;
                    if (i || (i = n(oxmlContentTypes, {offset: s}) || n(oxmlRels, {offset: s})), a || (r("word/", {offset: s}) ? a = {
                        ext: "docx",
                        mime: "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
                    } : r("ppt/", {offset: s}) ? a = {
                        ext: "pptx",
                        mime: "application/vnd.openxmlformats-officedocument.presentationml.presentation"
                    } : r("xl/", {offset: s}) && (a = {
                        ext: "xlsx",
                        mime: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
                    })), i && a) return a;
                    o = e(t, s)
                } while (o >= 0);
                if (a) return a
            }
            if (n([80, 75]) && (3 === t[2] || 5 === t[2] || 7 === t[2]) && (4 === t[3] || 6 === t[3] || 8 === t[3])) return {
                ext: "zip",
                mime: "application/zip"
            };
            if (n([117, 115, 116, 97, 114], {offset: 257})) return {ext: "tar", mime: "application/x-tar"};
            if (n([82, 97, 114, 33, 26, 7]) && (0 === t[6] || 1 === t[6])) return {
                ext: "rar",
                mime: "application/x-rar-compressed"
            };
            if (n([31, 139, 8])) return {ext: "gz", mime: "application/gzip"};
            if (n([66, 90, 104])) return {ext: "bz2", mime: "application/x-bzip2"};
            if (n([55, 122, 188, 175, 39, 28])) return {ext: "7z", mime: "application/x-7z-compressed"};
            if (n([120, 1])) return {ext: "dmg", mime: "application/x-apple-diskimage"};
            if (n([51, 103, 112, 53]) || n([0, 0, 0]) && n([102, 116, 121, 112], {offset: 4}) && (n([109, 112, 52, 49], {offset: 8}) || n([109, 112, 52, 50], {offset: 8}) || n([105, 115, 111, 109], {offset: 8}) || n([105, 115, 111, 50], {offset: 8}) || n([109, 109, 112, 52], {offset: 8}) || n([77, 52, 86], {offset: 8}) || n([100, 97, 115, 104], {offset: 8}))) return {
                ext: "mp4",
                mime: "video/mp4"
            };
            if (n([77, 84, 104, 100])) return {ext: "mid", mime: "audio/midi"};
            if (n([26, 69, 223, 163])) {
                const e = t.subarray(4, 4100), n = e.findIndex((e, t, n) => 66 === n[t] && 130 === n[t + 1]);
                if (-1 !== n) {
                    const t = n + 3, r = n => [...n].every((n, r) => e[t + r] === n.charCodeAt(0));
                    if (r("matroska")) return {ext: "mkv", mime: "video/x-matroska"};
                    if (r("webm")) return {ext: "webm", mime: "video/webm"}
                }
            }
            if (n([0, 0, 0, 20, 102, 116, 121, 112, 113, 116, 32, 32]) || n([102, 114, 101, 101], {offset: 4}) || n([102, 116, 121, 112, 113, 116, 32, 32], {offset: 4}) || n([109, 100, 97, 116], {offset: 4}) || n([109, 111, 111, 118], {offset: 4}) || n([119, 105, 100, 101], {offset: 4})) return {
                ext: "mov",
                mime: "video/quicktime"
            };
            if (n([82, 73, 70, 70])) {
                if (n([65, 86, 73], {offset: 8})) return {ext: "avi", mime: "video/vnd.avi"};
                if (n([87, 65, 86, 69], {offset: 8})) return {ext: "wav", mime: "audio/vnd.wave"};
                if (n([81, 76, 67, 77], {offset: 8})) return {ext: "qcp", mime: "audio/qcelp"}
            }
            if (n([48, 38, 178, 117, 142, 102, 207, 17, 166, 217])) {
                let e = 30;
                do {
                    const r = readUInt64LE(t, e + 16);
                    if (n([145, 7, 220, 183, 183, 169, 207, 17, 142, 230, 0, 192, 12, 32, 83, 101], {offset: e})) {
                        if (n([64, 158, 105, 248, 77, 91, 207, 17, 168, 253, 0, 128, 95, 92, 68, 43], {offset: e + 24})) return {
                            ext: "wma",
                            mime: "audio/x-ms-wma"
                        };
                        if (n([192, 239, 25, 188, 77, 91, 207, 17, 168, 253, 0, 128, 95, 92, 68, 43], {offset: e + 24})) return {
                            ext: "wmv",
                            mime: "video/x-ms-asf"
                        };
                        break
                    }
                    e += r
                } while (e + 24 <= t.length);
                return {ext: "asf", mime: "application/vnd.ms-asf"}
            }
            if (n([0, 0, 1, 186]) || n([0, 0, 1, 179])) return {ext: "mpg", mime: "video/mpeg"};
            if (n([102, 116, 121, 112, 51, 103], {offset: 4})) return {ext: "3gp", mime: "video/3gpp"};
            for (let e = 0; e < 2 && e < t.length - 16; e++) {
                if (n([73, 68, 51], {offset: e}) || n([255, 226], {offset: e, mask: [255, 226]})) return {
                    ext: "mp3",
                    mime: "audio/mpeg"
                };
                if (n([255, 228], {offset: e, mask: [255, 228]})) return {ext: "mp2", mime: "audio/mpeg"};
                if (n([255, 248], {offset: e, mask: [255, 252]})) return {ext: "mp2", mime: "audio/mpeg"};
                if (n([255, 240], {offset: e, mask: [255, 252]})) return {ext: "mp4", mime: "audio/mpeg"}
            }
            if (n([102, 116, 121, 112, 77, 52, 65], {offset: 4})) return {ext: "m4a", mime: "audio/mp4"};
            if (n([79, 112, 117, 115, 72, 101, 97, 100], {offset: 28})) return {ext: "opus", mime: "audio/opus"};
            if (n([79, 103, 103, 83])) return n([128, 116, 104, 101, 111, 114, 97], {offset: 28}) ? {
                ext: "ogv",
                mime: "video/ogg"
            } : n([1, 118, 105, 100, 101, 111, 0], {offset: 28}) ? {
                ext: "ogm",
                mime: "video/ogg"
            } : n([127, 70, 76, 65, 67], {offset: 28}) ? {
                ext: "oga",
                mime: "audio/ogg"
            } : n([83, 112, 101, 101, 120, 32, 32], {offset: 28}) ? {
                ext: "spx",
                mime: "audio/ogg"
            } : n([1, 118, 111, 114, 98, 105, 115], {offset: 28}) ? {ext: "ogg", mime: "audio/ogg"} : {
                ext: "ogx",
                mime: "application/ogg"
            };
            if (n([102, 76, 97, 67])) return {ext: "flac", mime: "audio/x-flac"};
            if (n([77, 65, 67, 32])) return {ext: "ape", mime: "audio/ape"};
            if (n([119, 118, 112, 107])) return {ext: "wv", mime: "audio/wavpack"};
            if (n([35, 33, 65, 77, 82, 10])) return {ext: "amr", mime: "audio/amr"};
            if (n([37, 80, 68, 70])) return {ext: "pdf", mime: "application/pdf"};
            if (n([77, 90])) return {ext: "exe", mime: "application/x-msdownload"};
            if ((67 === t[0] || 70 === t[0]) && n([87, 83], {offset: 1})) return {
                ext: "swf",
                mime: "application/x-shockwave-flash"
            };
            if (n([123, 92, 114, 116, 102])) return {ext: "rtf", mime: "application/rtf"};
            if (n([0, 97, 115, 109])) return {ext: "wasm", mime: "application/wasm"};
            if (n([119, 79, 70, 70]) && (n([0, 1, 0, 0], {offset: 4}) || n([79, 84, 84, 79], {offset: 4}))) return {
                ext: "woff",
                mime: "font/woff"
            };
            if (n([119, 79, 70, 50]) && (n([0, 1, 0, 0], {offset: 4}) || n([79, 84, 84, 79], {offset: 4}))) return {
                ext: "woff2",
                mime: "font/woff2"
            };
            if (n([76, 80], {offset: 34}) && (n([0, 0, 1], {offset: 8}) || n([1, 0, 2], {offset: 8}) || n([2, 0, 2], {offset: 8}))) return {
                ext: "eot",
                mime: "application/vnd.ms-fontobject"
            };
            if (n([0, 1, 0, 0, 0])) return {ext: "ttf", mime: "font/ttf"};
            if (n([79, 84, 84, 79, 0])) return {ext: "otf", mime: "font/otf"};
            if (n([0, 0, 1, 0])) return {ext: "ico", mime: "image/x-icon"};
            if (n([0, 0, 2, 0])) return {ext: "cur", mime: "image/x-icon"};
            if (n([70, 76, 86, 1])) return {ext: "flv", mime: "video/x-flv"};
            if (n([37, 33])) return {ext: "ps", mime: "application/postscript"};
            if (n([253, 55, 122, 88, 90, 0])) return {ext: "xz", mime: "application/x-xz"};
            if (n([83, 81, 76, 105])) return {ext: "sqlite", mime: "application/x-sqlite3"};
            if (n([78, 69, 83, 26])) return {ext: "nes", mime: "application/x-nintendo-nes-rom"};
            if (n([67, 114, 50, 52])) return {ext: "crx", mime: "application/x-google-chrome-extension"};
            if (n([77, 83, 67, 70]) || n([73, 83, 99, 40])) return {
                ext: "cab",
                mime: "application/vnd.ms-cab-compressed"
            };
            if (n([33, 60, 97, 114, 99, 104, 62, 10, 100, 101, 98, 105, 97, 110, 45, 98, 105, 110, 97, 114, 121])) return {
                ext: "deb",
                mime: "application/x-deb"
            };
            if (n([33, 60, 97, 114, 99, 104, 62])) return {ext: "ar", mime: "application/x-unix-archive"};
            if (n([237, 171, 238, 219])) return {ext: "rpm", mime: "application/x-rpm"};
            if (n([31, 160]) || n([31, 157])) return {ext: "Z", mime: "application/x-compress"};
            if (n([76, 90, 73, 80])) return {ext: "lz", mime: "application/x-lzip"};
            if (n([208, 207, 17, 224, 161, 177, 26, 225])) return {ext: "msi", mime: "application/x-msi"};
            if (n([6, 14, 43, 52, 2, 5, 1, 1, 13, 1, 2, 1, 1, 2])) return {ext: "mxf", mime: "application/mxf"};
            if (n([71], {offset: 4}) && (n([71], {offset: 192}) || n([71], {offset: 196}))) return {
                ext: "mts",
                mime: "video/mp2t"
            };
            if (n([66, 76, 69, 78, 68, 69, 82])) return {ext: "blend", mime: "application/x-blender"};
            if (n([66, 80, 71, 251])) return {ext: "bpg", mime: "image/bpg"};
            if (n([0, 0, 0, 12, 106, 80, 32, 32, 13, 10, 135, 10])) {
                if (n([106, 112, 50, 32], {offset: 20})) return {ext: "jp2", mime: "image/jp2"};
                if (n([106, 112, 120, 32], {offset: 20})) return {ext: "jpx", mime: "image/jpx"};
                if (n([106, 112, 109, 32], {offset: 20})) return {ext: "jpm", mime: "image/jpm"};
                if (n([109, 106, 112, 50], {offset: 20})) return {ext: "mj2", mime: "image/mj2"}
            }
            if (n([70, 79, 82, 77])) return {ext: "aif", mime: "audio/aiff"};
            if (r("<?xml ")) return {ext: "xml", mime: "application/xml"};
            if (n([66, 79, 79, 75, 77, 79, 66, 73], {offset: 60})) return {
                ext: "mobi",
                mime: "application/x-mobipocket-ebook"
            };
            if (n([102, 116, 121, 112], {offset: 4})) {
                if (n([109, 105, 102, 49], {offset: 8})) return {ext: "heic", mime: "image/heif"};
                if (n([109, 115, 102, 49], {offset: 8})) return {ext: "heic", mime: "image/heif-sequence"};
                if (n([104, 101, 105, 99], {offset: 8}) || n([104, 101, 105, 120], {offset: 8})) return {
                    ext: "heic",
                    mime: "image/heic"
                };
                if (n([104, 101, 118, 99], {offset: 8}) || n([104, 101, 118, 120], {offset: 8})) return {
                    ext: "heic",
                    mime: "image/heic-sequence"
                }
            }
            return n([171, 75, 84, 88, 32, 49, 49, 187, 13, 10, 26, 10]) ? {
                ext: "ktx",
                mime: "image/ktx"
            } : n([68, 73, 67, 77], {offset: 128}) ? {
                ext: "dcm",
                mime: "application/dicom"
            } : n([77, 80, 43]) || n([77, 80, 67, 75]) ? {
                ext: "mpc",
                mime: "audio/x-musepack"
            } : n([66, 69, 71, 73, 78, 58]) ? {
                ext: "ics",
                mime: "text/calendar"
            } : n([103, 108, 84, 70, 2, 0, 0, 0]) ? {
                ext: "glb",
                mime: "model/gltf-binary"
            } : n([212, 195, 178, 161]) || n([161, 178, 195, 212]) ? {
                ext: "pcap",
                mime: "application/vnd.tcpdump.pcap"
            } : null
        };
        module.exports = fileType, module.exports.default = fileType, Object.defineProperty(fileType, "minimumBytes", {value: 4100}), module.exports.stream = readableStream => new Promise((resolve, reject) => {
            const stream = eval("require")("stream");
            readableStream.once("readable", () => {
                const e = new stream.PassThrough,
                    t = readableStream.read(module.exports.minimumBytes) || readableStream.read();
                try {
                    e.fileType = fileType(t)
                } catch (e) {
                    reject(e)
                }
                readableStream.unshift(t), stream.pipeline ? resolve(stream.pipeline(readableStream, e, () => {
                })) : resolve(readableStream.pipe(e))
            })
        })
    }).call(this, __webpack_require__(33).Buffer)
}, function (e, t, n) {
    "use strict";
    (function (e) {
        /*!
 * The buffer module from node.js, for the browser.
 *
 * @author   Feross Aboukhadijeh <http://feross.org>
 * @license  MIT
 */
        var r = n(34), o = n(35), i = n(36);

        function a() {
            return l.TYPED_ARRAY_SUPPORT ? 2147483647 : 1073741823
        }

        function s(e, t) {
            if (a() < t) throw new RangeError("Invalid typed array length");
            return l.TYPED_ARRAY_SUPPORT ? (e = new Uint8Array(t)).__proto__ = l.prototype : (null === e && (e = new l(t)), e.length = t), e
        }

        function l(e, t, n) {
            if (!(l.TYPED_ARRAY_SUPPORT || this instanceof l)) return new l(e, t, n);
            if ("number" == typeof e) {
                if ("string" == typeof t) throw new Error("If encoding is specified then the first argument must be a string");
                return f(this, e)
            }
            return c(this, e, t, n)
        }

        function c(e, t, n, r) {
            if ("number" == typeof t) throw new TypeError('"value" argument must not be a number');
            return "undefined" != typeof ArrayBuffer && t instanceof ArrayBuffer ? function (e, t, n, r) {
                if (t.byteLength, n < 0 || t.byteLength < n) throw new RangeError("'offset' is out of bounds");
                if (t.byteLength < n + (r || 0)) throw new RangeError("'length' is out of bounds");
                t = void 0 === n && void 0 === r ? new Uint8Array(t) : void 0 === r ? new Uint8Array(t, n) : new Uint8Array(t, n, r);
                l.TYPED_ARRAY_SUPPORT ? (e = t).__proto__ = l.prototype : e = p(e, t);
                return e
            }(e, t, n, r) : "string" == typeof t ? function (e, t, n) {
                "string" == typeof n && "" !== n || (n = "utf8");
                if (!l.isEncoding(n)) throw new TypeError('"encoding" must be a valid string encoding');
                var r = 0 | h(t, n), o = (e = s(e, r)).write(t, n);
                o !== r && (e = e.slice(0, o));
                return e
            }(e, t, n) : function (e, t) {
                if (l.isBuffer(t)) {
                    var n = 0 | d(t.length);
                    return 0 === (e = s(e, n)).length || t.copy(e, 0, 0, n), e
                }
                if (t) {
                    if ("undefined" != typeof ArrayBuffer && t.buffer instanceof ArrayBuffer || "length" in t) return "number" != typeof t.length || (r = t.length) != r ? s(e, 0) : p(e, t);
                    if ("Buffer" === t.type && i(t.data)) return p(e, t.data)
                }
                var r;
                throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")
            }(e, t)
        }

        function u(e) {
            if ("number" != typeof e) throw new TypeError('"size" argument must be a number');
            if (e < 0) throw new RangeError('"size" argument must not be negative')
        }

        function f(e, t) {
            if (u(t), e = s(e, t < 0 ? 0 : 0 | d(t)), !l.TYPED_ARRAY_SUPPORT) for (var n = 0; n < t; ++n) e[n] = 0;
            return e
        }

        function p(e, t) {
            var n = t.length < 0 ? 0 : 0 | d(t.length);
            e = s(e, n);
            for (var r = 0; r < n; r += 1) e[r] = 255 & t[r];
            return e
        }

        function d(e) {
            if (e >= a()) throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + a().toString(16) + " bytes");
            return 0 | e
        }

        function h(e, t) {
            if (l.isBuffer(e)) return e.length;
            if ("undefined" != typeof ArrayBuffer && "function" == typeof ArrayBuffer.isView && (ArrayBuffer.isView(e) || e instanceof ArrayBuffer)) return e.byteLength;
            "string" != typeof e && (e = "" + e);
            var n = e.length;
            if (0 === n) return 0;
            for (var r = !1; ;) switch (t) {
                case"ascii":
                case"latin1":
                case"binary":
                    return n;
                case"utf8":
                case"utf-8":
                case void 0:
                    return F(e).length;
                case"ucs2":
                case"ucs-2":
                case"utf16le":
                case"utf-16le":
                    return 2 * n;
                case"hex":
                    return n >>> 1;
                case"base64":
                    return U(e).length;
                default:
                    if (r) return F(e).length;
                    t = ("" + t).toLowerCase(), r = !0
            }
        }

        function g(e, t, n) {
            var r = !1;
            if ((void 0 === t || t < 0) && (t = 0), t > this.length) return "";
            if ((void 0 === n || n > this.length) && (n = this.length), n <= 0) return "";
            if ((n >>>= 0) <= (t >>>= 0)) return "";
            for (e || (e = "utf8"); ;) switch (e) {
                case"hex":
                    return P(this, t, n);
                case"utf8":
                case"utf-8":
                    return C(this, t, n);
                case"ascii":
                    return _(this, t, n);
                case"latin1":
                case"binary":
                    return E(this, t, n);
                case"base64":
                    return j(this, t, n);
                case"ucs2":
                case"ucs-2":
                case"utf16le":
                case"utf-16le":
                    return R(this, t, n);
                default:
                    if (r) throw new TypeError("Unknown encoding: " + e);
                    e = (e + "").toLowerCase(), r = !0
            }
        }

        function m(e, t, n) {
            var r = e[t];
            e[t] = e[n], e[n] = r
        }

        function b(e, t, n, r, o) {
            if (0 === e.length) return -1;
            if ("string" == typeof n ? (r = n, n = 0) : n > 2147483647 ? n = 2147483647 : n < -2147483648 && (n = -2147483648), n = +n, isNaN(n) && (n = o ? 0 : e.length - 1), n < 0 && (n = e.length + n), n >= e.length) {
                if (o) return -1;
                n = e.length - 1
            } else if (n < 0) {
                if (!o) return -1;
                n = 0
            }
            if ("string" == typeof t && (t = l.from(t, r)), l.isBuffer(t)) return 0 === t.length ? -1 : v(e, t, n, r, o);
            if ("number" == typeof t) return t &= 255, l.TYPED_ARRAY_SUPPORT && "function" == typeof Uint8Array.prototype.indexOf ? o ? Uint8Array.prototype.indexOf.call(e, t, n) : Uint8Array.prototype.lastIndexOf.call(e, t, n) : v(e, [t], n, r, o);
            throw new TypeError("val must be string, number or Buffer")
        }

        function v(e, t, n, r, o) {
            var i, a = 1, s = e.length, l = t.length;
            if (void 0 !== r && ("ucs2" === (r = String(r).toLowerCase()) || "ucs-2" === r || "utf16le" === r || "utf-16le" === r)) {
                if (e.length < 2 || t.length < 2) return -1;
                a = 2, s /= 2, l /= 2, n /= 2
            }

            function c(e, t) {
                return 1 === a ? e[t] : e.readUInt16BE(t * a)
            }

            if (o) {
                var u = -1;
                for (i = n; i < s; i++) if (c(e, i) === c(t, -1 === u ? 0 : i - u)) {
                    if (-1 === u && (u = i), i - u + 1 === l) return u * a
                } else -1 !== u && (i -= i - u), u = -1
            } else for (n + l > s && (n = s - l), i = n; i >= 0; i--) {
                for (var f = !0, p = 0; p < l; p++) if (c(e, i + p) !== c(t, p)) {
                    f = !1;
                    break
                }
                if (f) return i
            }
            return -1
        }

        function y(e, t, n, r) {
            n = Number(n) || 0;
            var o = e.length - n;
            r ? (r = Number(r)) > o && (r = o) : r = o;
            var i = t.length;
            if (i % 2 != 0) throw new TypeError("Invalid hex string");
            r > i / 2 && (r = i / 2);
            for (var a = 0; a < r; ++a) {
                var s = parseInt(t.substr(2 * a, 2), 16);
                if (isNaN(s)) return a;
                e[n + a] = s
            }
            return a
        }

        function w(e, t, n, r) {
            return H(F(t, e.length - n), e, n, r)
        }

        function x(e, t, n, r) {
            return H(function (e) {
                for (var t = [], n = 0; n < e.length; ++n) t.push(255 & e.charCodeAt(n));
                return t
            }(t), e, n, r)
        }

        function k(e, t, n, r) {
            return x(e, t, n, r)
        }

        function O(e, t, n, r) {
            return H(U(t), e, n, r)
        }

        function S(e, t, n, r) {
            return H(function (e, t) {
                for (var n, r, o, i = [], a = 0; a < e.length && !((t -= 2) < 0); ++a) n = e.charCodeAt(a), r = n >> 8, o = n % 256, i.push(o), i.push(r);
                return i
            }(t, e.length - n), e, n, r)
        }

        function j(e, t, n) {
            return 0 === t && n === e.length ? r.fromByteArray(e) : r.fromByteArray(e.slice(t, n))
        }

        function C(e, t, n) {
            n = Math.min(e.length, n);
            for (var r = [], o = t; o < n;) {
                var i, a, s, l, c = e[o], u = null, f = c > 239 ? 4 : c > 223 ? 3 : c > 191 ? 2 : 1;
                if (o + f <= n) switch (f) {
                    case 1:
                        c < 128 && (u = c);
                        break;
                    case 2:
                        128 == (192 & (i = e[o + 1])) && (l = (31 & c) << 6 | 63 & i) > 127 && (u = l);
                        break;
                    case 3:
                        i = e[o + 1], a = e[o + 2], 128 == (192 & i) && 128 == (192 & a) && (l = (15 & c) << 12 | (63 & i) << 6 | 63 & a) > 2047 && (l < 55296 || l > 57343) && (u = l);
                        break;
                    case 4:
                        i = e[o + 1], a = e[o + 2], s = e[o + 3], 128 == (192 & i) && 128 == (192 & a) && 128 == (192 & s) && (l = (15 & c) << 18 | (63 & i) << 12 | (63 & a) << 6 | 63 & s) > 65535 && l < 1114112 && (u = l)
                }
                null === u ? (u = 65533, f = 1) : u > 65535 && (u -= 65536, r.push(u >>> 10 & 1023 | 55296), u = 56320 | 1023 & u), r.push(u), o += f
            }
            return function (e) {
                var t = e.length;
                if (t <= 4096) return String.fromCharCode.apply(String, e);
                var n = "", r = 0;
                for (; r < t;) n += String.fromCharCode.apply(String, e.slice(r, r += 4096));
                return n
            }(r)
        }

        t.Buffer = l, t.SlowBuffer = function (e) {
            +e != e && (e = 0);
            return l.alloc(+e)
        }, t.INSPECT_MAX_BYTES = 50, l.TYPED_ARRAY_SUPPORT = void 0 !== e.TYPED_ARRAY_SUPPORT ? e.TYPED_ARRAY_SUPPORT : function () {
            try {
                var e = new Uint8Array(1);
                return e.__proto__ = {
                    __proto__: Uint8Array.prototype, foo: function () {
                        return 42
                    }
                }, 42 === e.foo() && "function" == typeof e.subarray && 0 === e.subarray(1, 1).byteLength
            } catch (e) {
                return !1
            }
        }(), t.kMaxLength = a(), l.poolSize = 8192, l._augment = function (e) {
            return e.__proto__ = l.prototype, e
        }, l.from = function (e, t, n) {
            return c(null, e, t, n)
        }, l.TYPED_ARRAY_SUPPORT && (l.prototype.__proto__ = Uint8Array.prototype, l.__proto__ = Uint8Array, "undefined" != typeof Symbol && Symbol.species && l[Symbol.species] === l && Object.defineProperty(l, Symbol.species, {
            value: null,
            configurable: !0
        })), l.alloc = function (e, t, n) {
            return function (e, t, n, r) {
                return u(t), t <= 0 ? s(e, t) : void 0 !== n ? "string" == typeof r ? s(e, t).fill(n, r) : s(e, t).fill(n) : s(e, t)
            }(null, e, t, n)
        }, l.allocUnsafe = function (e) {
            return f(null, e)
        }, l.allocUnsafeSlow = function (e) {
            return f(null, e)
        }, l.isBuffer = function (e) {
            return !(null == e || !e._isBuffer)
        }, l.compare = function (e, t) {
            if (!l.isBuffer(e) || !l.isBuffer(t)) throw new TypeError("Arguments must be Buffers");
            if (e === t) return 0;
            for (var n = e.length, r = t.length, o = 0, i = Math.min(n, r); o < i; ++o) if (e[o] !== t[o]) {
                n = e[o], r = t[o];
                break
            }
            return n < r ? -1 : r < n ? 1 : 0
        }, l.isEncoding = function (e) {
            switch (String(e).toLowerCase()) {
                case"hex":
                case"utf8":
                case"utf-8":
                case"ascii":
                case"latin1":
                case"binary":
                case"base64":
                case"ucs2":
                case"ucs-2":
                case"utf16le":
                case"utf-16le":
                    return !0;
                default:
                    return !1
            }
        }, l.concat = function (e, t) {
            if (!i(e)) throw new TypeError('"list" argument must be an Array of Buffers');
            if (0 === e.length) return l.alloc(0);
            var n;
            if (void 0 === t) for (t = 0, n = 0; n < e.length; ++n) t += e[n].length;
            var r = l.allocUnsafe(t), o = 0;
            for (n = 0; n < e.length; ++n) {
                var a = e[n];
                if (!l.isBuffer(a)) throw new TypeError('"list" argument must be an Array of Buffers');
                a.copy(r, o), o += a.length
            }
            return r
        }, l.byteLength = h, l.prototype._isBuffer = !0, l.prototype.swap16 = function () {
            var e = this.length;
            if (e % 2 != 0) throw new RangeError("Buffer size must be a multiple of 16-bits");
            for (var t = 0; t < e; t += 2) m(this, t, t + 1);
            return this
        }, l.prototype.swap32 = function () {
            var e = this.length;
            if (e % 4 != 0) throw new RangeError("Buffer size must be a multiple of 32-bits");
            for (var t = 0; t < e; t += 4) m(this, t, t + 3), m(this, t + 1, t + 2);
            return this
        }, l.prototype.swap64 = function () {
            var e = this.length;
            if (e % 8 != 0) throw new RangeError("Buffer size must be a multiple of 64-bits");
            for (var t = 0; t < e; t += 8) m(this, t, t + 7), m(this, t + 1, t + 6), m(this, t + 2, t + 5), m(this, t + 3, t + 4);
            return this
        }, l.prototype.toString = function () {
            var e = 0 | this.length;
            return 0 === e ? "" : 0 === arguments.length ? C(this, 0, e) : g.apply(this, arguments)
        }, l.prototype.equals = function (e) {
            if (!l.isBuffer(e)) throw new TypeError("Argument must be a Buffer");
            return this === e || 0 === l.compare(this, e)
        }, l.prototype.inspect = function () {
            var e = "", n = t.INSPECT_MAX_BYTES;
            return this.length > 0 && (e = this.toString("hex", 0, n).match(/.{2}/g).join(" "), this.length > n && (e += " ... ")), "<Buffer " + e + ">"
        }, l.prototype.compare = function (e, t, n, r, o) {
            if (!l.isBuffer(e)) throw new TypeError("Argument must be a Buffer");
            if (void 0 === t && (t = 0), void 0 === n && (n = e ? e.length : 0), void 0 === r && (r = 0), void 0 === o && (o = this.length), t < 0 || n > e.length || r < 0 || o > this.length) throw new RangeError("out of range index");
            if (r >= o && t >= n) return 0;
            if (r >= o) return -1;
            if (t >= n) return 1;
            if (this === e) return 0;
            for (var i = (o >>>= 0) - (r >>>= 0), a = (n >>>= 0) - (t >>>= 0), s = Math.min(i, a), c = this.slice(r, o), u = e.slice(t, n), f = 0; f < s; ++f) if (c[f] !== u[f]) {
                i = c[f], a = u[f];
                break
            }
            return i < a ? -1 : a < i ? 1 : 0
        }, l.prototype.includes = function (e, t, n) {
            return -1 !== this.indexOf(e, t, n)
        }, l.prototype.indexOf = function (e, t, n) {
            return b(this, e, t, n, !0)
        }, l.prototype.lastIndexOf = function (e, t, n) {
            return b(this, e, t, n, !1)
        }, l.prototype.write = function (e, t, n, r) {
            if (void 0 === t) r = "utf8", n = this.length, t = 0; else if (void 0 === n && "string" == typeof t) r = t, n = this.length, t = 0; else {
                if (!isFinite(t)) throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");
                t |= 0, isFinite(n) ? (n |= 0, void 0 === r && (r = "utf8")) : (r = n, n = void 0)
            }
            var o = this.length - t;
            if ((void 0 === n || n > o) && (n = o), e.length > 0 && (n < 0 || t < 0) || t > this.length) throw new RangeError("Attempt to write outside buffer bounds");
            r || (r = "utf8");
            for (var i = !1; ;) switch (r) {
                case"hex":
                    return y(this, e, t, n);
                case"utf8":
                case"utf-8":
                    return w(this, e, t, n);
                case"ascii":
                    return x(this, e, t, n);
                case"latin1":
                case"binary":
                    return k(this, e, t, n);
                case"base64":
                    return O(this, e, t, n);
                case"ucs2":
                case"ucs-2":
                case"utf16le":
                case"utf-16le":
                    return S(this, e, t, n);
                default:
                    if (i) throw new TypeError("Unknown encoding: " + r);
                    r = ("" + r).toLowerCase(), i = !0
            }
        }, l.prototype.toJSON = function () {
            return {type: "Buffer", data: Array.prototype.slice.call(this._arr || this, 0)}
        };

        function _(e, t, n) {
            var r = "";
            n = Math.min(e.length, n);
            for (var o = t; o < n; ++o) r += String.fromCharCode(127 & e[o]);
            return r
        }

        function E(e, t, n) {
            var r = "";
            n = Math.min(e.length, n);
            for (var o = t; o < n; ++o) r += String.fromCharCode(e[o]);
            return r
        }

        function P(e, t, n) {
            var r = e.length;
            (!t || t < 0) && (t = 0), (!n || n < 0 || n > r) && (n = r);
            for (var o = "", i = t; i < n; ++i) o += N(e[i]);
            return o
        }

        function R(e, t, n) {
            for (var r = e.slice(t, n), o = "", i = 0; i < r.length; i += 2) o += String.fromCharCode(r[i] + 256 * r[i + 1]);
            return o
        }

        function D(e, t, n) {
            if (e % 1 != 0 || e < 0) throw new RangeError("offset is not uint");
            if (e + t > n) throw new RangeError("Trying to access beyond buffer length")
        }

        function M(e, t, n, r, o, i) {
            if (!l.isBuffer(e)) throw new TypeError('"buffer" argument must be a Buffer instance');
            if (t > o || t < i) throw new RangeError('"value" argument is out of bounds');
            if (n + r > e.length) throw new RangeError("Index out of range")
        }

        function A(e, t, n, r) {
            t < 0 && (t = 65535 + t + 1);
            for (var o = 0, i = Math.min(e.length - n, 2); o < i; ++o) e[n + o] = (t & 255 << 8 * (r ? o : 1 - o)) >>> 8 * (r ? o : 1 - o)
        }

        function T(e, t, n, r) {
            t < 0 && (t = 4294967295 + t + 1);
            for (var o = 0, i = Math.min(e.length - n, 4); o < i; ++o) e[n + o] = t >>> 8 * (r ? o : 3 - o) & 255
        }

        function I(e, t, n, r, o, i) {
            if (n + r > e.length) throw new RangeError("Index out of range");
            if (n < 0) throw new RangeError("Index out of range")
        }

        function z(e, t, n, r, i) {
            return i || I(e, 0, n, 4), o.write(e, t, n, r, 23, 4), n + 4
        }

        function L(e, t, n, r, i) {
            return i || I(e, 0, n, 8), o.write(e, t, n, r, 52, 8), n + 8
        }

        l.prototype.slice = function (e, t) {
            var n, r = this.length;
            if ((e = ~~e) < 0 ? (e += r) < 0 && (e = 0) : e > r && (e = r), (t = void 0 === t ? r : ~~t) < 0 ? (t += r) < 0 && (t = 0) : t > r && (t = r), t < e && (t = e), l.TYPED_ARRAY_SUPPORT) (n = this.subarray(e, t)).__proto__ = l.prototype; else {
                var o = t - e;
                n = new l(o, void 0);
                for (var i = 0; i < o; ++i) n[i] = this[i + e]
            }
            return n
        }, l.prototype.readUIntLE = function (e, t, n) {
            e |= 0, t |= 0, n || D(e, t, this.length);
            for (var r = this[e], o = 1, i = 0; ++i < t && (o *= 256);) r += this[e + i] * o;
            return r
        }, l.prototype.readUIntBE = function (e, t, n) {
            e |= 0, t |= 0, n || D(e, t, this.length);
            for (var r = this[e + --t], o = 1; t > 0 && (o *= 256);) r += this[e + --t] * o;
            return r
        }, l.prototype.readUInt8 = function (e, t) {
            return t || D(e, 1, this.length), this[e]
        }, l.prototype.readUInt16LE = function (e, t) {
            return t || D(e, 2, this.length), this[e] | this[e + 1] << 8
        }, l.prototype.readUInt16BE = function (e, t) {
            return t || D(e, 2, this.length), this[e] << 8 | this[e + 1]
        }, l.prototype.readUInt32LE = function (e, t) {
            return t || D(e, 4, this.length), (this[e] | this[e + 1] << 8 | this[e + 2] << 16) + 16777216 * this[e + 3]
        }, l.prototype.readUInt32BE = function (e, t) {
            return t || D(e, 4, this.length), 16777216 * this[e] + (this[e + 1] << 16 | this[e + 2] << 8 | this[e + 3])
        }, l.prototype.readIntLE = function (e, t, n) {
            e |= 0, t |= 0, n || D(e, t, this.length);
            for (var r = this[e], o = 1, i = 0; ++i < t && (o *= 256);) r += this[e + i] * o;
            return r >= (o *= 128) && (r -= Math.pow(2, 8 * t)), r
        }, l.prototype.readIntBE = function (e, t, n) {
            e |= 0, t |= 0, n || D(e, t, this.length);
            for (var r = t, o = 1, i = this[e + --r]; r > 0 && (o *= 256);) i += this[e + --r] * o;
            return i >= (o *= 128) && (i -= Math.pow(2, 8 * t)), i
        }, l.prototype.readInt8 = function (e, t) {
            return t || D(e, 1, this.length), 128 & this[e] ? -1 * (255 - this[e] + 1) : this[e]
        }, l.prototype.readInt16LE = function (e, t) {
            t || D(e, 2, this.length);
            var n = this[e] | this[e + 1] << 8;
            return 32768 & n ? 4294901760 | n : n
        }, l.prototype.readInt16BE = function (e, t) {
            t || D(e, 2, this.length);
            var n = this[e + 1] | this[e] << 8;
            return 32768 & n ? 4294901760 | n : n
        }, l.prototype.readInt32LE = function (e, t) {
            return t || D(e, 4, this.length), this[e] | this[e + 1] << 8 | this[e + 2] << 16 | this[e + 3] << 24
        }, l.prototype.readInt32BE = function (e, t) {
            return t || D(e, 4, this.length), this[e] << 24 | this[e + 1] << 16 | this[e + 2] << 8 | this[e + 3]
        }, l.prototype.readFloatLE = function (e, t) {
            return t || D(e, 4, this.length), o.read(this, e, !0, 23, 4)
        }, l.prototype.readFloatBE = function (e, t) {
            return t || D(e, 4, this.length), o.read(this, e, !1, 23, 4)
        }, l.prototype.readDoubleLE = function (e, t) {
            return t || D(e, 8, this.length), o.read(this, e, !0, 52, 8)
        }, l.prototype.readDoubleBE = function (e, t) {
            return t || D(e, 8, this.length), o.read(this, e, !1, 52, 8)
        }, l.prototype.writeUIntLE = function (e, t, n, r) {
            (e = +e, t |= 0, n |= 0, r) || M(this, e, t, n, Math.pow(2, 8 * n) - 1, 0);
            var o = 1, i = 0;
            for (this[t] = 255 & e; ++i < n && (o *= 256);) this[t + i] = e / o & 255;
            return t + n
        }, l.prototype.writeUIntBE = function (e, t, n, r) {
            (e = +e, t |= 0, n |= 0, r) || M(this, e, t, n, Math.pow(2, 8 * n) - 1, 0);
            var o = n - 1, i = 1;
            for (this[t + o] = 255 & e; --o >= 0 && (i *= 256);) this[t + o] = e / i & 255;
            return t + n
        }, l.prototype.writeUInt8 = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 1, 255, 0), l.TYPED_ARRAY_SUPPORT || (e = Math.floor(e)), this[t] = 255 & e, t + 1
        }, l.prototype.writeUInt16LE = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 2, 65535, 0), l.TYPED_ARRAY_SUPPORT ? (this[t] = 255 & e, this[t + 1] = e >>> 8) : A(this, e, t, !0), t + 2
        }, l.prototype.writeUInt16BE = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 2, 65535, 0), l.TYPED_ARRAY_SUPPORT ? (this[t] = e >>> 8, this[t + 1] = 255 & e) : A(this, e, t, !1), t + 2
        }, l.prototype.writeUInt32LE = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 4, 4294967295, 0), l.TYPED_ARRAY_SUPPORT ? (this[t + 3] = e >>> 24, this[t + 2] = e >>> 16, this[t + 1] = e >>> 8, this[t] = 255 & e) : T(this, e, t, !0), t + 4
        }, l.prototype.writeUInt32BE = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 4, 4294967295, 0), l.TYPED_ARRAY_SUPPORT ? (this[t] = e >>> 24, this[t + 1] = e >>> 16, this[t + 2] = e >>> 8, this[t + 3] = 255 & e) : T(this, e, t, !1), t + 4
        }, l.prototype.writeIntLE = function (e, t, n, r) {
            if (e = +e, t |= 0, !r) {
                var o = Math.pow(2, 8 * n - 1);
                M(this, e, t, n, o - 1, -o)
            }
            var i = 0, a = 1, s = 0;
            for (this[t] = 255 & e; ++i < n && (a *= 256);) e < 0 && 0 === s && 0 !== this[t + i - 1] && (s = 1), this[t + i] = (e / a >> 0) - s & 255;
            return t + n
        }, l.prototype.writeIntBE = function (e, t, n, r) {
            if (e = +e, t |= 0, !r) {
                var o = Math.pow(2, 8 * n - 1);
                M(this, e, t, n, o - 1, -o)
            }
            var i = n - 1, a = 1, s = 0;
            for (this[t + i] = 255 & e; --i >= 0 && (a *= 256);) e < 0 && 0 === s && 0 !== this[t + i + 1] && (s = 1), this[t + i] = (e / a >> 0) - s & 255;
            return t + n
        }, l.prototype.writeInt8 = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 1, 127, -128), l.TYPED_ARRAY_SUPPORT || (e = Math.floor(e)), e < 0 && (e = 255 + e + 1), this[t] = 255 & e, t + 1
        }, l.prototype.writeInt16LE = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 2, 32767, -32768), l.TYPED_ARRAY_SUPPORT ? (this[t] = 255 & e, this[t + 1] = e >>> 8) : A(this, e, t, !0), t + 2
        }, l.prototype.writeInt16BE = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 2, 32767, -32768), l.TYPED_ARRAY_SUPPORT ? (this[t] = e >>> 8, this[t + 1] = 255 & e) : A(this, e, t, !1), t + 2
        }, l.prototype.writeInt32LE = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 4, 2147483647, -2147483648), l.TYPED_ARRAY_SUPPORT ? (this[t] = 255 & e, this[t + 1] = e >>> 8, this[t + 2] = e >>> 16, this[t + 3] = e >>> 24) : T(this, e, t, !0), t + 4
        }, l.prototype.writeInt32BE = function (e, t, n) {
            return e = +e, t |= 0, n || M(this, e, t, 4, 2147483647, -2147483648), e < 0 && (e = 4294967295 + e + 1), l.TYPED_ARRAY_SUPPORT ? (this[t] = e >>> 24, this[t + 1] = e >>> 16, this[t + 2] = e >>> 8, this[t + 3] = 255 & e) : T(this, e, t, !1), t + 4
        }, l.prototype.writeFloatLE = function (e, t, n) {
            return z(this, e, t, !0, n)
        }, l.prototype.writeFloatBE = function (e, t, n) {
            return z(this, e, t, !1, n)
        }, l.prototype.writeDoubleLE = function (e, t, n) {
            return L(this, e, t, !0, n)
        }, l.prototype.writeDoubleBE = function (e, t, n) {
            return L(this, e, t, !1, n)
        }, l.prototype.copy = function (e, t, n, r) {
            if (n || (n = 0), r || 0 === r || (r = this.length), t >= e.length && (t = e.length), t || (t = 0), r > 0 && r < n && (r = n), r === n) return 0;
            if (0 === e.length || 0 === this.length) return 0;
            if (t < 0) throw new RangeError("targetStart out of bounds");
            if (n < 0 || n >= this.length) throw new RangeError("sourceStart out of bounds");
            if (r < 0) throw new RangeError("sourceEnd out of bounds");
            r > this.length && (r = this.length), e.length - t < r - n && (r = e.length - t + n);
            var o, i = r - n;
            if (this === e && n < t && t < r) for (o = i - 1; o >= 0; --o) e[o + t] = this[o + n]; else if (i < 1e3 || !l.TYPED_ARRAY_SUPPORT) for (o = 0; o < i; ++o) e[o + t] = this[o + n]; else Uint8Array.prototype.set.call(e, this.subarray(n, n + i), t);
            return i
        }, l.prototype.fill = function (e, t, n, r) {
            if ("string" == typeof e) {
                if ("string" == typeof t ? (r = t, t = 0, n = this.length) : "string" == typeof n && (r = n, n = this.length), 1 === e.length) {
                    var o = e.charCodeAt(0);
                    o < 256 && (e = o)
                }
                if (void 0 !== r && "string" != typeof r) throw new TypeError("encoding must be a string");
                if ("string" == typeof r && !l.isEncoding(r)) throw new TypeError("Unknown encoding: " + r)
            } else "number" == typeof e && (e &= 255);
            if (t < 0 || this.length < t || this.length < n) throw new RangeError("Out of range index");
            if (n <= t) return this;
            var i;
            if (t >>>= 0, n = void 0 === n ? this.length : n >>> 0, e || (e = 0), "number" == typeof e) for (i = t; i < n; ++i) this[i] = e; else {
                var a = l.isBuffer(e) ? e : F(new l(e, r).toString()), s = a.length;
                for (i = 0; i < n - t; ++i) this[i + t] = a[i % s]
            }
            return this
        };
        var B = /[^+\/0-9A-Za-z-_]/g;

        function N(e) {
            return e < 16 ? "0" + e.toString(16) : e.toString(16)
        }

        function F(e, t) {
            var n;
            t = t || 1 / 0;
            for (var r = e.length, o = null, i = [], a = 0; a < r; ++a) {
                if ((n = e.charCodeAt(a)) > 55295 && n < 57344) {
                    if (!o) {
                        if (n > 56319) {
                            (t -= 3) > -1 && i.push(239, 191, 189);
                            continue
                        }
                        if (a + 1 === r) {
                            (t -= 3) > -1 && i.push(239, 191, 189);
                            continue
                        }
                        o = n;
                        continue
                    }
                    if (n < 56320) {
                        (t -= 3) > -1 && i.push(239, 191, 189), o = n;
                        continue
                    }
                    n = 65536 + (o - 55296 << 10 | n - 56320)
                } else o && (t -= 3) > -1 && i.push(239, 191, 189);
                if (o = null, n < 128) {
                    if ((t -= 1) < 0) break;
                    i.push(n)
                } else if (n < 2048) {
                    if ((t -= 2) < 0) break;
                    i.push(n >> 6 | 192, 63 & n | 128)
                } else if (n < 65536) {
                    if ((t -= 3) < 0) break;
                    i.push(n >> 12 | 224, n >> 6 & 63 | 128, 63 & n | 128)
                } else {
                    if (!(n < 1114112)) throw new Error("Invalid code point");
                    if ((t -= 4) < 0) break;
                    i.push(n >> 18 | 240, n >> 12 & 63 | 128, n >> 6 & 63 | 128, 63 & n | 128)
                }
            }
            return i
        }

        function U(e) {
            return r.toByteArray(function (e) {
                if ((e = function (e) {
                    return e.trim ? e.trim() : e.replace(/^\s+|\s+$/g, "")
                }(e).replace(B, "")).length < 2) return "";
                for (; e.length % 4 != 0;) e += "=";
                return e
            }(e))
        }

        function H(e, t, n, r) {
            for (var o = 0; o < r && !(o + n >= t.length || o >= e.length); ++o) t[o + n] = e[o];
            return o
        }
    }).call(this, n(13))
}, function (e, t, n) {
    "use strict";
    t.byteLength = function (e) {
        var t = c(e), n = t[0], r = t[1];
        return 3 * (n + r) / 4 - r
    }, t.toByteArray = function (e) {
        var t, n, r = c(e), a = r[0], s = r[1], l = new i(function (e, t, n) {
            return 3 * (t + n) / 4 - n
        }(0, a, s)), u = 0, f = s > 0 ? a - 4 : a;
        for (n = 0; n < f; n += 4) t = o[e.charCodeAt(n)] << 18 | o[e.charCodeAt(n + 1)] << 12 | o[e.charCodeAt(n + 2)] << 6 | o[e.charCodeAt(n + 3)], l[u++] = t >> 16 & 255, l[u++] = t >> 8 & 255, l[u++] = 255 & t;
        2 === s && (t = o[e.charCodeAt(n)] << 2 | o[e.charCodeAt(n + 1)] >> 4, l[u++] = 255 & t);
        1 === s && (t = o[e.charCodeAt(n)] << 10 | o[e.charCodeAt(n + 1)] << 4 | o[e.charCodeAt(n + 2)] >> 2, l[u++] = t >> 8 & 255, l[u++] = 255 & t);
        return l
    }, t.fromByteArray = function (e) {
        for (var t, n = e.length, o = n % 3, i = [], a = 0, s = n - o; a < s; a += 16383) i.push(u(e, a, a + 16383 > s ? s : a + 16383));
        1 === o ? (t = e[n - 1], i.push(r[t >> 2] + r[t << 4 & 63] + "==")) : 2 === o && (t = (e[n - 2] << 8) + e[n - 1], i.push(r[t >> 10] + r[t >> 4 & 63] + r[t << 2 & 63] + "="));
        return i.join("")
    };
    for (var r = [], o = [], i = "undefined" != typeof Uint8Array ? Uint8Array : Array, a = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", s = 0, l = a.length; s < l; ++s) r[s] = a[s], o[a.charCodeAt(s)] = s;

    function c(e) {
        var t = e.length;
        if (t % 4 > 0) throw new Error("Invalid string. Length must be a multiple of 4");
        var n = e.indexOf("=");
        return -1 === n && (n = t), [n, n === t ? 0 : 4 - n % 4]
    }

    function u(e, t, n) {
        for (var o, i, a = [], s = t; s < n; s += 3) o = (e[s] << 16 & 16711680) + (e[s + 1] << 8 & 65280) + (255 & e[s + 2]), a.push(r[(i = o) >> 18 & 63] + r[i >> 12 & 63] + r[i >> 6 & 63] + r[63 & i]);
        return a.join("")
    }

    o["-".charCodeAt(0)] = 62, o["_".charCodeAt(0)] = 63
}, function (e, t) {
    t.read = function (e, t, n, r, o) {
        var i, a, s = 8 * o - r - 1, l = (1 << s) - 1, c = l >> 1, u = -7, f = n ? o - 1 : 0, p = n ? -1 : 1,
            d = e[t + f];
        for (f += p, i = d & (1 << -u) - 1, d >>= -u, u += s; u > 0; i = 256 * i + e[t + f], f += p, u -= 8) ;
        for (a = i & (1 << -u) - 1, i >>= -u, u += r; u > 0; a = 256 * a + e[t + f], f += p, u -= 8) ;
        if (0 === i) i = 1 - c; else {
            if (i === l) return a ? NaN : 1 / 0 * (d ? -1 : 1);
            a += Math.pow(2, r), i -= c
        }
        return (d ? -1 : 1) * a * Math.pow(2, i - r)
    }, t.write = function (e, t, n, r, o, i) {
        var a, s, l, c = 8 * i - o - 1, u = (1 << c) - 1, f = u >> 1,
            p = 23 === o ? Math.pow(2, -24) - Math.pow(2, -77) : 0, d = r ? 0 : i - 1, h = r ? 1 : -1,
            g = t < 0 || 0 === t && 1 / t < 0 ? 1 : 0;
        for (t = Math.abs(t), isNaN(t) || t === 1 / 0 ? (s = isNaN(t) ? 1 : 0, a = u) : (a = Math.floor(Math.log(t) / Math.LN2), t * (l = Math.pow(2, -a)) < 1 && (a--, l *= 2), (t += a + f >= 1 ? p / l : p * Math.pow(2, 1 - f)) * l >= 2 && (a++, l /= 2), a + f >= u ? (s = 0, a = u) : a + f >= 1 ? (s = (t * l - 1) * Math.pow(2, o), a += f) : (s = t * Math.pow(2, f - 1) * Math.pow(2, o), a = 0)); o >= 8; e[n + d] = 255 & s, d += h, s /= 256, o -= 8) ;
        for (a = a << o | s, c += o; c > 0; e[n + d] = 255 & a, d += h, a /= 256, c -= 8) ;
        e[n + d - h] |= 128 * g
    }
}, function (e, t) {
    var n = {}.toString;
    e.exports = Array.isArray || function (e) {
        return "[object Array]" == n.call(e)
    }
}, function (module, __webpack_exports__, __webpack_require__) {
    "use strict";
    var _module__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20),
        _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3),
        _logger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4),
        _store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(8),
        _renderer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(21);

    function _typeof(e) {
        return (_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function _classCallCheck(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function _defineProperties(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function _createClass(e, t, n) {
        return t && _defineProperties(e.prototype, t), n && _defineProperties(e, n), e
    }

    function _inherits(e, t) {
        if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
        e.prototype = Object.create(t && t.prototype, {
            constructor: {
                value: e,
                writable: !0,
                configurable: !0
            }
        }), t && _setPrototypeOf(e, t)
    }

    function _setPrototypeOf(e, t) {
        return (_setPrototypeOf = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function _createSuper(e) {
        var t = _isNativeReflectConstruct();
        return function () {
            var n, r = _getPrototypeOf(e);
            if (t) {
                var o = _getPrototypeOf(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return _possibleConstructorReturn(this, n)
        }
    }

    function _possibleConstructorReturn(e, t) {
        return !t || "object" !== _typeof(t) && "function" != typeof t ? _assertThisInitialized(e) : t
    }

    function _assertThisInitialized(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function _isNativeReflectConstruct() {
        if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
        if (Reflect.construct.sham) return !1;
        if ("function" == typeof Proxy) return !0;
        try {
            return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
            }))), !0
        } catch (e) {
            return !1
        }
    }

    function _getPrototypeOf(e) {
        return (_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var Caman = function (_Module) {
        _inherits(Caman, _Module);
        var _super = _createSuper(Caman);

        function Caman() {
            var _this;
            _classCallCheck(this, Caman);
            var thisFn = function () {
                return _assertThisInitialized(_this)
            }.toString(), thisName = thisFn.match(/return (?:_assertThisInitialized\()*(\w+)\)*;?/)[1];
            if (eval("".concat(thisName, " = this;")), 0 === arguments.length) throw"Invalid arguments";
            if (_assertThisInitialized(_this) instanceof Caman) {
                var id;
                _this.finishInit = _this.finishInit.bind(_assertThisInitialized(_this)), _this.imageLoaded = _this.imageLoaded.bind(_assertThisInitialized(_this));
                var args = Array.prototype.slice.call(arguments, 0);
                id = parseInt(Caman.getAttrId(args[0]), 10);
                var callback = "function" == typeof args[1] ? args[1] : "function" == typeof args[2] ? args[2] : function () {
                };
                return !isNaN(id) && _store__WEBPACK_IMPORTED_MODULE_3__.a.has(id) ? _possibleConstructorReturn(_this, _store__WEBPACK_IMPORTED_MODULE_3__.a.execute(id, callback)) : (_this.id = _util__WEBPACK_IMPORTED_MODULE_1__.b.uniqid.get(), _this.initializedPixelData = _this.originalPixelData = null, _this.cropCoordinates = {
                    x: 0,
                    y: 0
                }, _this.cropped = !1, _this.resized = !1, _this.pixelStack = [], _this.layerStack = [], _this.canvasQueue = [], _this.currentLayer = null, _this.scaled = !1, _this.renderer = new _renderer__WEBPACK_IMPORTED_MODULE_4__.a(_assertThisInitialized(_this)), _this.domIsLoaded((function () {
                    return _this.parseArguments(args), _this.setup()
                })), _possibleConstructorReturn(_this, _assertThisInitialized(_this)))
            }
            return _possibleConstructorReturn(_this, new Caman(arguments))
        }

        return _createClass(Caman, [{
            key: "domIsLoaded", value: function (e) {
                var t = this;
                if ("complete" === document.readyState) return _logger__WEBPACK_IMPORTED_MODULE_2__.a.debug("DOM initialized"), setTimeout((function () {
                    return e.call(t)
                }), 0);
                return document.addEventListener("readystatechange", (function () {
                    if ("complete" === document.readyState) return _logger__WEBPACK_IMPORTED_MODULE_2__.a.debug("DOM initialized"), e.call(t)
                }), !1)
            }
        }, {
            key: "parseArguments", value: function (e) {
                var t = this;
                if (0 === e.length) throw"Invalid arguments given";
                if (this.initObj = null, this.initType = null, this.imageUrl = null, this.callback = function () {
                }, this.setInitObject(e[0]), 1 !== e.length) {
                    switch (_typeof(e[1])) {
                        case"string":
                            this.imageUrl = e[1];
                            break;
                        case"function":
                            this.callback = e[1]
                    }
                    if (2 !== e.length) return this.callback = e[2], 4 === e.length ? function () {
                        for (var n = [], r = 0, o = Object.keys(e[4] || {}); r < o.length; r++) {
                            var i = o[r], a = e[4][i];
                            n.push(t.options[i] = a)
                        }
                        return n
                    }() : void 0
                }
            }
        }, {
            key: "setInitObject", value: function (e) {
                if ("object" === _typeof(e) ? this.initObj = e : this.initObj = Object(_util__WEBPACK_IMPORTED_MODULE_1__.a)(e), null == this.initObj) throw"Could not find image or canvas for initialization.";
                return this.initType = this.initObj.nodeName.toLowerCase()
            }
        }, {
            key: "setup", value: function () {
                switch (this.initType) {
                    case"node":
                        return this.initNode();
                    case"img":
                        return this.initImage();
                    case"canvas":
                        return this.initCanvas()
                }
            }
        }, {
            key: "initImage", value: function () {
                return this.image = this.initObj, this.canvas = document.createElement("canvas"), this.context = this.canvas.getContext("2d"), _util__WEBPACK_IMPORTED_MODULE_1__.b.copyAttributes(this.image, this.canvas, {except: ["src"]}), null != this.image.parentNode && this.image.parentNode.replaceChild(this.canvas, this.image), this.imageAdjustments(), this.waitForImageLoaded()
            }
        }, {
            key: "initCanvas", value: function () {
                return this.canvas = this.initObj, this.context = this.canvas.getContext("2d"), null != this.imageUrl ? (this.image = document.createElement("img"), this.image.src = this.imageUrl, this.imageAdjustments(), this.waitForImageLoaded()) : this.finishInit()
            }
        }, {
            key: "imageAdjustments", value: function () {
                if (this.needsHiDPISwap() && (_logger__WEBPACK_IMPORTED_MODULE_2__.a.debug(this.image.src, "->", this.hiDPIReplacement()), this.swapped = !0, this.image.src = this.hiDPIReplacement()), Caman.IO.isRemote(this.image)) return this.image.src = Caman.IO.proxyUrl(this.image.src), _logger__WEBPACK_IMPORTED_MODULE_2__.a.debug("Remote image detected, using URL = ".concat(this.image.src))
            }
        }, {
            key: "waitForImageLoaded", value: function () {
                return this.isImageLoaded() ? this.imageLoaded() : this.image.onload = this.imageLoaded
            }
        }, {
            key: "isImageLoaded", value: function () {
                return !!this.image.complete && (null == this.image.naturalWidth || 0 !== this.image.naturalWidth)
            }
        }, {
            key: "imageWidth", value: function () {
                return this.image.width || this.image.naturalWidth
            }
        }, {
            key: "imageHeight", value: function () {
                return this.image.height || this.image.naturalHeight
            }
        }, {
            key: "imageLoaded", value: function () {
                return _logger__WEBPACK_IMPORTED_MODULE_2__.a.debug("Image loaded. Width = ".concat(this.imageWidth(), ", Height = ").concat(this.imageHeight())), this.swapped ? (this.canvas.width = this.imageWidth() / this.hiDPIRatio(), this.canvas.height = this.imageHeight() / this.hiDPIRatio()) : (this.canvas.width = this.imageWidth(), this.canvas.height = this.imageHeight()), this.finishInit()
            }
        }, {
            key: "finishInit", value: function () {
                if (null == this.context && (this.context = this.canvas.getContext("2d")), this.originalWidth = this.preScaledWidth = this.width = this.canvas.width, this.originalHeight = this.preScaledHeight = this.height = this.canvas.height, this.hiDPIAdjustments(), this.hasId() || this.assignId(), null != this.image && this.context.drawImage(this.image, 0, 0, this.imageWidth(), this.imageHeight(), 0, 0, this.preScaledWidth, this.preScaledHeight), this.imageData = this.context.getImageData(0, 0, this.canvas.width, this.canvas.height), this.pixelData = this.imageData.data, Caman.allowRevert) {
                    this.initializedPixelData = _util__WEBPACK_IMPORTED_MODULE_1__.b.dataArray(this.pixelData.length), this.originalPixelData = _util__WEBPACK_IMPORTED_MODULE_1__.b.dataArray(this.pixelData.length);
                    for (var e = 0; e < this.pixelData.length; e++) {
                        var t = this.pixelData[e];
                        this.initializedPixelData[e] = t, this.originalPixelData[e] = t
                    }
                }
                return this.dimensions = {
                    width: this.canvas.width,
                    height: this.canvas.height
                }, _store__WEBPACK_IMPORTED_MODULE_3__.a.put(this.id, this), this.callback.call(this, this), this.callback = function () {
                }
            }
        }, {
            key: "reloadCanvasData", value: function () {
                return this.imageData = this.context.getImageData(0, 0, this.canvas.width, this.canvas.height), this.pixelData = this.imageData.data
            }
        }, {
            key: "resetOriginalPixelData", value: function () {
                var e = this;
                if (!Caman.allowRevert) throw"Revert disabled";
                return this.originalPixelData = _util__WEBPACK_IMPORTED_MODULE_1__.b.dataArray(this.pixelData.length), Array.from(this.pixelData).map((function (t, n) {
                    return e.originalPixelData[n] = t
                }))
            }
        }, {
            key: "hasId", value: function () {
                return null != Caman.getAttrId(this.canvas)
            }
        }, {
            key: "assignId", value: function () {
                if (!this.canvas.getAttribute("data-caman-id")) return this.canvas.setAttribute("data-caman-id", this.id)
            }
        }, {
            key: "hiDPIDisabled", value: function () {
                return null !== this.canvas.getAttribute("data-caman-hidpi-disabled")
            }
        }, {
            key: "hiDPIAdjustments", value: function () {
                if (this.needsHiDPISwap()) {
                    var e = this.hiDPIRatio();
                    return 1 !== e ? (_logger__WEBPACK_IMPORTED_MODULE_2__.a.debug("HiDPI ratio = ".concat(e)), this.scaled = !0, this.preScaledWidth = this.canvas.width, this.preScaledHeight = this.canvas.height, this.canvas.width = this.preScaledWidth * e, this.canvas.height = this.preScaledHeight * e, this.canvas.style.width = "".concat(this.preScaledWidth, "px"), this.canvas.style.height = "".concat(this.preScaledHeight, "px"), this.context.scale(e, e), this.width = this.originalWidth = this.canvas.width, this.height = this.originalHeight = this.canvas.height) : void 0
                }
            }
        }, {
            key: "hiDPIRatio", value: function () {
                return (window.devicePixelRatio || 1) / (this.context.webkitBackingStorePixelRatio || this.context.mozBackingStorePixelRatio || this.context.msBackingStorePixelRatio || this.context.oBackingStorePixelRatio || this.context.backingStorePixelRatio || 1)
            }
        }, {
            key: "hiDPICapable", value: function () {
                return null != window.devicePixelRatio && 1 !== window.devicePixelRatio
            }
        }, {
            key: "needsHiDPISwap", value: function () {
                return !(this.hiDPIDisabled() || !this.hiDPICapable()) && null !== this.hiDPIReplacement()
            }
        }, {
            key: "hiDPIReplacement", value: function () {
                return null == this.image ? null : this.image.getAttribute("data-caman-hidpi")
            }
        }, {
            key: "replaceCanvas", value: function (e) {
                var t = this.canvas, n = t.getContext("2d");
                return this.width = e.width, this.height = e.height, n.clearRect(0, 0, t.width, t.height), t.width = e.width, t.height = e.height, n.drawImage(e, 0, 0), this.reloadCanvasData(), this.dimensions = {
                    width: e.width,
                    height: e.height
                }
            }
        }, {
            key: "render", value: function (e) {
                var t = this;
                return null == e && (e = function () {
                }), Caman.Event.trigger(this, "renderStart"), this.renderer.execute((function () {
                    return t.context.putImageData(t.imageData, 0, 0), e.call(t)
                }))
            }
        }, {
            key: "revert", value: function (e) {
                if (null == e && (e = !0), !Caman.allowRevert) throw"Revert disabled";
                for (var t = this.originalVisiblePixels(), n = 0; n < t.length; n++) {
                    var r = t[n];
                    this.pixelData[n] = r
                }
                if (e) return this.context.putImageData(this.imageData, 0, 0)
            }
        }, {
            key: "reset", value: function () {
                var e = document.createElement("canvas");
                _util__WEBPACK_IMPORTED_MODULE_1__.b.copyAttributes(this.canvas, e), e.width = this.originalWidth, e.height = this.originalHeight;
                for (var t = e.getContext("2d"), n = t.getImageData(0, 0, e.width, e.height), r = n.data, o = 0; o < this.initializedPixelData.length; o++) {
                    var i = this.initializedPixelData[o];
                    r[o] = i
                }
                return t.putImageData(n, 0, 0), this.cropCoordinates = {
                    x: 0,
                    y: 0
                }, this.resized = !1, this.angle = 0, this.rotated = !1, this.replaceCanvas(e)
            }
        }, {
            key: "originalVisiblePixels", value: function () {
                var e, t, n, r;
                if (!Caman.allowRevert) throw"Revert disabled";
                var o = [], i = this.cropCoordinates.x, a = i + this.width, s = this.cropCoordinates.y,
                    l = s + this.height;
                if (this.resized) {
                    var c = document.createElement("canvas");
                    c.width = this.originalWidth, c.height = this.originalHeight;
                    var u = c.getContext("2d"), f = u.getImageData(0, 0, c.width, c.height);
                    for (t = f.data, e = 0; e < this.originalPixelData.length; e++) {
                        var p = this.originalPixelData[e];
                        t[e] = p
                    }
                    u.putImageData(f, 0, 0);
                    var d = document.createElement("canvas");
                    d.width = this.width, d.height = this.height, (u = d.getContext("2d")).drawImage(c, 0, 0, this.originalWidth, this.originalHeight, 0, 0, this.width, this.height), t = u.getImageData(0, 0, this.width, this.height).data, n = this.width
                } else if (this.rotated) {
                    var h = document.createElement("canvas");
                    h.width = this.originalWidth, h.height = this.originalHeight;
                    var g = h.getContext("2d"), m = g.getImageData(0, 0, h.width, h.height);
                    t = m.data;
                    var b, v, y, w, x = this.originalPixelData;
                    for (b = v = 0, y = x.length; v < y; b = ++v) w = x[b], t[b] = w;
                    g.putImageData(m, 0, 0);
                    var k = document.createElement("canvas"), O = k.getContext("2d");
                    k.width = this.canvas.width, k.height = this.canvas.height;
                    var S = k.width / 2, j = k.height / 2;
                    O.save(), O.translate(S, j), O.rotate(this.angle * Math.PI / 180), O.drawImage(h, -h.width / 2, -h.height / 2, h.width, h.height), O.restore(), t = O.getImageData(0, 0, k.width, k.height).data, n = k.width
                } else t = this.originalPixelData, n = this.originalWidth;
                for (e = 0, r = t.length; e < r; e += 4) {
                    var C = Caman.Pixel.locationToCoordinates(e, n);
                    i <= C.x && C.x < a && s <= C.y && C.y < l && o.push(t[e], t[e + 1], t[e + 2], t[e + 3])
                }
                return o
            }
        }, {
            key: "process", value: function (e, t) {
                return this.renderer.add({type: Caman.Filter.Type.Single, name: e, processFn: t}), this
            }
        }, {
            key: "processKernel", value: function (e, t) {
                var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null,
                    r = arguments.length > 3 ? arguments[3] : void 0;
                if (null == r && (r = 0), null == n) {
                    n = 0;
                    for (var o = 0, i = t.length, a = 0 <= i; a ? o < i : o > i; a ? o++ : o--) n += t[o]
                }
                return this.renderer.add({
                    type: Caman.Filter.Type.Kernel,
                    name: e,
                    adjust: t,
                    divisor: n,
                    bias: r
                }), this
            }
        }, {
            key: "processPlugin", value: function (e, t) {
                return this.renderer.add({type: Caman.Filter.Type.Plugin, plugin: e, args: t}), this
            }
        }, {
            key: "newLayer", value: function (e) {
                var t = new Caman.Layer(this);
                return this.canvasQueue.push(t), this.renderer.add({type: Caman.Filter.Type.LayerDequeue}), e.call(t), this.renderer.add({type: Caman.Filter.Type.LayerFinished}), this
            }
        }, {
            key: "executeLayer", value: function (e) {
                return this.pushContext(e)
            }
        }, {
            key: "pushContext", value: function (e) {
                return this.layerStack.push(this.currentLayer), this.pixelStack.push(this.pixelData), this.currentLayer = e, this.pixelData = e.pixelData
            }
        }, {
            key: "popContext", value: function () {
                return this.pixelData = this.pixelStack.pop(), this.currentLayer = this.layerStack.pop()
            }
        }, {
            key: "applyCurrentLayer", value: function () {
                return this.currentLayer.applyToParent()
            }
        }, {
            key: "save", value: function () {
                return this.browserSave.apply(this, arguments)
            }
        }, {
            key: "browserSave", value: function (e) {
                null == e && (e = "png"), e = e.toLowerCase();
                var t = this.toBase64(e).replace("image/".concat(e), "image/octet-stream");
                return document.location.href = t
            }
        }, {
            key: "toImage", value: function (e) {
                var t = new Image;
                return t.src = this.toBase64(e), t.width = this.dimensions.width, t.height = this.dimensions.height, window.devicePixelRatio && (t.width /= window.devicePixelRatio, t.height /= window.devicePixelRatio), t
            }
        }, {
            key: "toBase64", value: function (e) {
                return null == e && (e = "png"), e = e.toLowerCase(), this.canvas.toDataURL("image/".concat(e))
            }
        }], [{
            key: "initClass", value: function () {
                this.version = {
                    release: "4.1.2",
                    date: "7/27/2013"
                }, this.DEBUG = !1, this.allowRevert = !0, this.crossOrigin = "anonymous", this.remoteProxy = "", this.proxyParam = "camanProxyUrl", this.autoload = !0, this.angle = 0, this.rotated = !1
            }
        }, {
            key: "toString", value: function () {
                return "Version ".concat(Caman.version.release, ", Released ").concat(Caman.version.date)
            }
        }, {
            key: "getAttrId", value: function (e) {
                return "string" == typeof e && (e = Object(_util__WEBPACK_IMPORTED_MODULE_1__.a)(e)), null == e || null == e.getAttribute ? null : e.getAttribute("data-caman-id")
            }
        }]), Caman
    }(_module__WEBPACK_IMPORTED_MODULE_0__.a);
    Caman.initClass(), window.Caman = Caman;
    var _unused_webpack_default_export = Caman
}, function (e, t) {
    function n(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var r = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, r, o;
        return t = e, o = [{
            key: "distance", value: function (e, t, n, r) {
                return Math.sqrt(Math.pow(n - e, 2) + Math.pow(r - t, 2))
            }
        }, {
            key: "randomRange", value: function (e, t, n) {
                null == n && (n = !1);
                var r = e + Math.random() * (t - e);
                return n ? r.toFixed(n) : Math.round(r)
            }
        }, {
            key: "luminance", value: function (e) {
                return .299 * e.r + .587 * e.g + .114 * e.b
            }
        }, {
            key: "bezier", value: function (e, t, n, r, o, i) {
                var a;
                if (null == o && (o = 0), null == i && (i = 255), e[0] instanceof Array ? (a = e, o = t, i = n) : a = [e, t, n, r], a.length < 2) throw"Invalid number of arguments to bezier";
                for (var s, l, c, u = {}, f = function (e, t, n) {
                    return e * (1 - n) + t * n
                }, p = 0; p < 1e3; p++) {
                    for (var d = p / 1e3, h = a; h.length > 1;) {
                        for (var g = [], m = 0, b = h.length - 2, v = 0 <= b; v ? m <= b : m >= b; v ? m++ : m--) g.push([f(h[m][0], h[m + 1][0], d), f(h[m][1], h[m + 1][1], d)]);
                        h = g
                    }
                    u[Math.round(h[0][0])] = Math.round((s = h[0][1], l = o, c = i, Math.min(Math.max(s, l), c)))
                }
                var y = a[a.length - 1][0];
                return u = Caman.Calculate.missingValues(u, y), null == u[y] && (u[y] = u[y - 1]), u
            }
        }, {
            key: "hermite", value: function (e, t, n) {
                if (e.length < 2) throw"Invalid number of arguments to hermite";
                for (var r, o, i, a, s = {}, l = function (e, t) {
                    return [e[0] * t[0], e[1] * t[1]]
                }, c = function (e, t) {
                    return [e[0] - t[0], e[1] - t[1]]
                }, u = function (e, t, n) {
                    return Math.min(Math.max(e, t), n)
                }, f = 0, p = e.length - 2, d = 0 <= p; d ? f <= p : f >= p; d ? f++ : f--) {
                    var h = e[f], g = e[f + 1], m = g[0] - h[0], b = 1 / m;
                    f === e.length - 2 && (b = 1 / (m - 1));
                    for (var v = f > 0 ? e[f - 1] : h, y = l(c(g, v), [.5, .5]), w = l(c(v = f < e.length - 2 ? e[f + 2] : g, h), [.5, .5]), x = 0, k = m, O = 0 <= k; O ? x <= k : x >= k; O ? x++ : x--) {
                        var S = x * b, j = 2 * S * S * S - 3 * S * S + 1, C = S * S * S - 2 * S * S + S,
                            _ = -2 * S * S * S + 3 * S * S, E = S * S * S - S * S,
                            P = (r = l(h, [j, j]), o = l(y, [C, C]), i = l(g, [_, _]), a = l(w, [E, E]), [r[0] + o[0] + i[0] + a[0], r[1] + o[1] + i[1] + a[1]]);
                        s[Math.round(P[0])] = Math.round(u(P[1], t, n))
                    }
                }
                var R = e[e.length - 1][0];
                return s = Caman.Calculate.missingValues(s, R)
            }
        }, {
            key: "missingValues", value: function (e, t) {
                var n, r, o, i, a, s, l;
                if (Object.keys(e).length < t + 1) {
                    for (i = {}, n = s = 0; 0 <= t ? s <= t : s >= t; n = 0 <= t ? ++s : --s) if (null != e[n]) i[n] = e[n]; else {
                        for (o = [n - 1, i[n - 1]], r = l = n; n <= t ? l <= t : l >= t; r = n <= t ? ++l : --l) if (null != e[r]) {
                            a = [r, e[r]];
                            break
                        }
                        a || (a = [0, 0]), i[n] = o[1] + (a[1] - o[1]) / (a[0] - o[0]) * (n - o[0])
                    }
                    return i
                }
                return e
            }
        }], (r = null) && n(t.prototype, r), o && n(t, o), e
    }();
    Caman.Calculate = r
}, function (e, t) {
    function n(e) {
        return (n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function r(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var o = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, o, i;
        return t = e, i = [{
            key: "hexToRGB", value: function (e) {
                return "#" === e.charAt(0) && (e = e.substr(1)), {
                    r: parseInt(e.substr(0, 2), 16),
                    g: parseInt(e.substr(2, 2), 16),
                    b: parseInt(e.substr(4, 2), 16)
                }
            }
        }, {
            key: "rgbToHSL", value: function (e, t, r) {
                var o, i;
                "object" === n(e) && (t = e.g, r = e.b, e = e.r), e /= 255, t /= 255, r /= 255;
                var a = Math.max(e, t, r), s = Math.min(e, t, r), l = (a + s) / 2;
                if (a === s) o = i = 0; else {
                    var c = a - s;
                    i = l > .5 ? c / (2 - a - s) : c / (a + s), o = function () {
                        switch (a) {
                            case e:
                                return (t - r) / c + (t < r ? 6 : 0);
                            case t:
                                return (r - e) / c + 2;
                            case r:
                                return (e - t) / c + 4
                        }
                    }(), o /= 6
                }
                return {h: o, s: i, l: l}
            }
        }, {
            key: "hslToRGB", value: function (e, t, r) {
                var o, i, a;
                if ("object" === n(e) && (t = e.s, r = e.l, e = e.h), 0 === t) a = i = o = r; else {
                    var s = r < .5 ? r * (1 + t) : r + t - r * t, l = 2 * r - s;
                    a = this.hueToRGB(l, s, e + 1 / 3), i = this.hueToRGB(l, s, e), o = this.hueToRGB(l, s, e - 1 / 3)
                }
                return {r: 255 * a, g: 255 * i, b: 255 * o}
            }
        }, {
            key: "hueToRGB", value: function (e, t, n) {
                return n < 0 && (n += 1), n > 1 && (n -= 1), n < 1 / 6 ? e + 6 * (t - e) * n : n < .5 ? t : n < 2 / 3 ? e + (t - e) * (2 / 3 - n) * 6 : e
            }
        }, {
            key: "rgbToHSV", value: function (e, t, n) {
                var r;
                e /= 255, t /= 255, n /= 255;
                var o = Math.max(e, t, n), i = Math.min(e, t, n), a = o, s = o - i, l = 0 === o ? 0 : s / o;
                return o === i ? r = 0 : (r = function () {
                    switch (o) {
                        case e:
                            return (t - n) / s + (t < n ? 6 : 0);
                        case t:
                            return (n - e) / s + 2;
                        case n:
                            return (e - t) / s + 4
                    }
                }(), r /= 6), {h: r, s: l, v: a}
            }
        }, {
            key: "hsvToRGB", value: function (e, t, n) {
                var r, o, i, a = Math.floor(6 * e), s = 6 * e - a, l = n * (1 - t), c = n * (1 - s * t),
                    u = n * (1 - (1 - s) * t);
                switch (a % 6) {
                    case 0:
                        i = n, o = u, r = l;
                        break;
                    case 1:
                        i = c, o = n, r = l;
                        break;
                    case 2:
                        i = l, o = n, r = u;
                        break;
                    case 3:
                        i = l, o = c, r = n;
                        break;
                    case 4:
                        i = u, o = l, r = n;
                        break;
                    case 5:
                        i = n, o = l, r = c
                }
                return {r: Math.floor(255 * i), g: Math.floor(255 * o), b: Math.floor(255 * r)}
            }
        }, {
            key: "rgbToXYZ", value: function (e, t, n) {
                return t /= 255, n /= 255, (e /= 255) > .04045 ? e = Math.pow((e + .055) / 1.055, 2.4) : e /= 12.92, t > .04045 ? t = Math.pow((t + .055) / 1.055, 2.4) : t /= 12.92, n > .04045 ? n = Math.pow((n + .055) / 1.055, 2.4) : n /= 12.92, {
                    x: 100 * (.4124 * e + .3576 * t + .1805 * n),
                    y: 100 * (.2126 * e + .7152 * t + .0722 * n),
                    z: 100 * (.0193 * e + .1192 * t + .9505 * n)
                }
            }
        }, {
            key: "xyzToRGB", value: function (e, t, n) {
                var r = 3.2406 * (e /= 100) + -1.5372 * (t /= 100) + -.4986 * (n /= 100),
                    o = -.9689 * e + 1.8758 * t + .0415 * n, i = .0557 * e + -.204 * t + 1.057 * n;
                return r > .0031308 ? r = 1.055 * Math.pow(r, .4166666667) - .055 : r *= 12.92, o > .0031308 ? o = 1.055 * Math.pow(o, .4166666667) - .055 : o *= 12.92, i > .0031308 ? i = 1.055 * Math.pow(i, .4166666667) - .055 : i *= 12.92, {
                    r: 255 * r,
                    g: 255 * o,
                    b: 255 * i
                }
            }
        }, {
            key: "xyzToLab", value: function (e, t, r) {
                return "object" === n(e) && (t = e.y, r = e.z, e = e.x), t /= 100, r /= 108.883, e = (e /= 95.047) > .008856451679 ? Math.pow(e, .3333333333) : 7.787037037 * e + .1379310345, {
                    l: 116 * (t = t > .008856451679 ? Math.pow(t, .3333333333) : 7.787037037 * t + .1379310345) - 16,
                    a: 500 * (e - t),
                    b: 200 * (t - (r = r > .008856451679 ? Math.pow(r, .3333333333) : 7.787037037 * r + .1379310345))
                }
            }
        }, {
            key: "labToXYZ", value: function (e, t, r) {
                "object" === n(e) && (t = e.a, r = e.b, e = e.l);
                var o = (e + 16) / 116, i = o + t / 500, a = o - r / 200;
                return i > .2068965517 ? i *= i * i : i = .1284185493 * (i - .1379310345), o > .2068965517 ? o *= o * o : o = .1284185493 * (o - .1379310345), a > .2068965517 ? a *= a * a : a = .1284185493 * (a - .1379310345), {
                    x: 95.047 * i,
                    y: 100 * o,
                    z: 108.883 * a
                }
            }
        }, {
            key: "rgbToLab", value: function (e, t, r) {
                "object" === n(e) && (t = e.g, r = e.b, e = e.r);
                var o = this.rgbToXYZ(e, t, r);
                return this.xyzToLab(o)
            }
        }, {
            key: "labToRGB", value: function (e, t, n) {
            }
        }], (o = null) && r(t.prototype, o), i && r(t, i), e
    }();
    Caman.Convert = o
}, function (e, t) {
    function n(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var r = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, r, o;
        return t = e, o = [{
            key: "initClass", value: function () {
                this.events = {}, this.types = ["processStart", "processComplete", "renderStart", "renderFinished", "blockStarted", "blockFinished"]
            }
        }, {
            key: "trigger", value: function (e, t) {
                var n = this, r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null;
                if (this.events[t] && this.events[t].length) return function () {
                    for (var o = [], i = 0, a = Array.from(n.events[t]); i < a.length; i++) {
                        var s = a[i];
                        null === s.target || e.id === s.target.id ? o.push(s.fn.call(e, r)) : o.push(void 0)
                    }
                    return o
                }()
            }
        }, {
            key: "listen", value: function (e, t, n) {
                if ("string" == typeof e) {
                    var r = e, o = t;
                    e = null, t = r, n = o
                }
                return !!Array.from(this.types).includes(t) && (this.events[t] || (this.events[t] = []), this.events[t].push({
                    target: e,
                    fn: n
                }), !0)
            }
        }], (r = null) && n(t.prototype, r), o && n(t, o), e
    }();
    r.initClass(), Caman.Event = r
}, function (e, t) {
    function n(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var r = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, r, o;
        return t = e, o = [{
            key: "initClass", value: function () {
                this.Type = {
                    Single: 1,
                    Kernel: 2,
                    LayerDequeue: 3,
                    LayerFinished: 4,
                    LoadOverlay: 5,
                    LoadLayerMask: 7,
                    Plugin: 6
                }
            }
        }, {
            key: "register", value: function (e, t) {
                return window.Caman.prototype[e] = t
            }
        }], (r = null) && n(t.prototype, r), o && n(t, o), e
    }();
    r.initClass(), Caman.Filter = r
}, function (e, t) {
    function n(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function r(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var o = function () {
        function e(t, r, o, i) {
            var a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null;
            n(this, e), null == t && (t = 0), this.r = t, null == r && (r = 0), this.g = r, null == o && (o = 0), this.b = o, null == i && (i = 255), this.a = i, this.c = a, this.loc = 0
        }

        var t, o, i;
        return t = e, i = [{
            key: "coordinatesToLocation", value: function (e, t, n) {
                return 4 * (t * n + e)
            }
        }, {
            key: "locationToCoordinates", value: function (e, t) {
                return {x: e % (4 * t) / 4, y: Math.floor(e / (4 * t))}
            }
        }], (o = [{
            key: "setContext", value: function (e) {
                return this.c = e
            }
        }, {
            key: "locationXY", value: function () {
                if (null == this.c) throw"Requires a CamanJS context";
                var e = this.c.dimensions.height - Math.floor(this.loc / (4 * this.c.dimensions.width));
                return {x: this.loc % (4 * this.c.dimensions.width) / 4, y: e}
            }
        }, {
            key: "pixelAtLocation", value: function (t) {
                if (null == this.c) throw"Requires a CamanJS context";
                return new e(this.c.pixelData[t], this.c.pixelData[t + 1], this.c.pixelData[t + 2], this.c.pixelData[t + 3], this.c)
            }
        }, {
            key: "getPixelRelative", value: function (t, n) {
                if (null == this.c) throw"Requires a CamanJS context";
                var r = this.loc + 4 * this.c.dimensions.width * (-1 * n) + 4 * t;
                return r > this.c.pixelData.length || r < 0 ? new e(0, 0, 0, 255, this.c) : this.pixelAtLocation(r)
            }
        }, {
            key: "putPixelRelative", value: function (e, t, n) {
                if (null == this.c) throw"Requires a CamanJS context";
                if (this.loc, this.c.dimensions.width, !(newLoc > this.c.pixelData.length || newLoc < 0)) return this.c.pixelData[newLoc] = n.r, this.c.pixelData[newLoc + 1] = n.g, this.c.pixelData[newLoc + 2] = n.b, this.c.pixelData[newLoc + 3] = n.a, !0
            }
        }, {
            key: "getPixel", value: function (e, t) {
                if (null == this.c) throw"Requires a CamanJS context";
                var n = this.coordinatesToLocation(e, t, this.width);
                return this.pixelAtLocation(n)
            }
        }, {
            key: "putPixel", value: function (e, t, n) {
                if (null == this.c) throw"Requires a CamanJS context";
                var r = this.coordinatesToLocation(e, t, this.width);
                return this.c.pixelData[r] = n.r, this.c.pixelData[r + 1] = n.g, this.c.pixelData[r + 2] = n.b, this.c.pixelData[r + 3] = n.a
            }
        }, {
            key: "toString", value: function () {
                return this.toKey()
            }
        }, {
            key: "toHex", value: function (e) {
                null == e && (e = !1);
                var t = "#" + this.r.toString(16) + this.g.toString(16) + this.b.toString(16);
                return e ? t + this.a.toString(16) : t
            }
        }]) && r(t.prototype, o), i && r(t, i), e
    }();
    Caman.Pixel = o
}, function (e, t) {
    function n(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var r = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, r, o;
        return t = e, o = [{
            key: "initClass", value: function () {
                this.plugins = {}
            }
        }, {
            key: "register", value: function (e, t) {
                return this.plugins[e] = t
            }
        }, {
            key: "execute", value: function (e, t, n) {
                return this.plugins[t].apply(e, n)
            }
        }], (r = null) && n(t.prototype, r), o && n(t, o), e
    }();
    r.initClass(), Caman.Plugin = r
}, function (e, t) {
    function n(e) {
        return (n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    Caman.Filter.register("fillColor", (function () {
        var e;
        return e = 1 === arguments.length ? Caman.Convert.hexToRGB(arguments[0]) : {
            r: arguments[0],
            g: arguments[1],
            b: arguments[2]
        }, this.process("fillColor", (function (t) {
            return t.r = e.r, t.g = e.g, t.b = e.b, t.a = 255, t
        }))
    })), Caman.Filter.register("brightness", (function (e) {
        return e = Math.floor(e / 100 * 255), this.process("brightness", (function (t) {
            return t.r += e, t.g += e, t.b += e, t
        }))
    })), Caman.Filter.register("saturation", (function (e) {
        return e *= -.01, this.process("saturation", (function (t) {
            var n;
            return n = Math.max(t.r, t.g, t.b), t.r !== n && (t.r += (n - t.r) * e), t.g !== n && (t.g += (n - t.g) * e), t.b !== n && (t.b += (n - t.b) * e), t
        }))
    })), Caman.Filter.register("vibrance", (function (e) {
        return e *= -1, this.process("vibrance", (function (t) {
            var n, r, o;
            return o = Math.max(t.r, t.g, t.b), r = (t.r + t.g + t.b) / 3, n = 2 * Math.abs(o - r) / 255 * e / 100, t.r !== o && (t.r += (o - t.r) * n), t.g !== o && (t.g += (o - t.g) * n), t.b !== o && (t.b += (o - t.b) * n), t
        }))
    })), Caman.Filter.register("greyscale", (function (e) {
        return this.process("greyscale", (function (e) {
            var t;
            return t = Caman.Calculate.luminance(e), e.r = t, e.g = t, e.b = t, e
        }))
    })), Caman.Filter.register("contrast", (function (e) {
        return e = Math.pow((e + 100) / 100, 2), this.process("contrast", (function (t) {
            return t.r /= 255, t.r -= .5, t.r *= e, t.r += .5, t.r *= 255, t.g /= 255, t.g -= .5, t.g *= e, t.g += .5, t.g *= 255, t.b /= 255, t.b -= .5, t.b *= e, t.b += .5, t.b *= 255, t
        }))
    })), Caman.Filter.register("hue", (function (e) {
        return this.process("hue", (function (t) {
            var n, r, o, i, a, s;
            return o = 100 * (i = Caman.Convert.rgbToHSV(t.r, t.g, t.b)).h, o += Math.abs(e), o %= 100, o /= 100, i.h = o, a = (s = Caman.Convert.hsvToRGB(i.h, i.s, i.v)).r, r = s.g, n = s.b, t.r = a, t.g = r, t.b = n, t
        }))
    })), Caman.Filter.register("colorize", (function () {
        var e, t;
        return 2 === arguments.length ? (t = Caman.Convert.hexToRGB(arguments[0]), e = arguments[1]) : 4 === arguments.length && (t = {
            r: arguments[0],
            g: arguments[1],
            b: arguments[2]
        }, e = arguments[3]), this.process("colorize", (function (n) {
            return n.r -= (n.r - t.r) * (e / 100), n.g -= (n.g - t.g) * (e / 100), n.b -= (n.b - t.b) * (e / 100), n
        }))
    })), Caman.Filter.register("invert", (function () {
        return this.process("invert", (function (e) {
            return e.r = 255 - e.r, e.g = 255 - e.g, e.b = 255 - e.b, e
        }))
    })), Caman.Filter.register("sepia", (function (e) {
        return null == e && (e = 100), e /= 100, this.process("sepia", (function (t) {
            return t.r = Math.min(255, t.r * (1 - .607 * e) + t.g * (.769 * e) + t.b * (.189 * e)), t.g = Math.min(255, t.r * (.349 * e) + t.g * (1 - .314 * e) + t.b * (.168 * e)), t.b = Math.min(255, t.r * (.272 * e) + t.g * (.534 * e) + t.b * (1 - .869 * e)), t
        }))
    })), Caman.Filter.register("gamma", (function (e) {
        return this.process("gamma", (function (t) {
            return t.r = 255 * Math.pow(t.r / 255, e), t.g = 255 * Math.pow(t.g / 255, e), t.b = 255 * Math.pow(t.b / 255, e), t
        }))
    })), Caman.Filter.register("noise", (function (e) {
        return e = 2.55 * Math.abs(e), this.process("noise", (function (t) {
            var n;
            return n = Caman.Calculate.randomRange(-1 * e, e), t.r += n, t.g += n, t.b += n, t
        }))
    })), Caman.Filter.register("clip", (function (e) {
        return e = 2.55 * Math.abs(e), this.process("clip", (function (t) {
            return t.r > 255 - e ? t.r = 255 : t.r < e && (t.r = 0), t.g > 255 - e ? t.g = 255 : t.g < e && (t.g = 0), t.b > 255 - e ? t.b = 255 : t.b < e && (t.b = 0), t
        }))
    })), Caman.Filter.register("channels", (function (e) {
        var t;
        if ("object" !== n(e)) return this;
        for (t in e) ({}).hasOwnProperty.call(e, t) && (0 !== e[t] ? e[t] /= 100 : delete e[t]);
        return 0 === e.length ? this : this.process("channels", (function (t) {
            return null != e.red && (e.red > 0 ? t.r += (255 - t.r) * e.red : t.r -= t.r * Math.abs(e.red)), null != e.green && (e.green > 0 ? t.g += (255 - t.g) * e.green : t.g -= t.g * Math.abs(e.green)), null != e.blue && (e.blue > 0 ? t.b += (255 - t.b) * e.blue : t.b -= t.b * Math.abs(e.blue)), t
        }))
    })), Caman.Filter.register("curves", (function () {
        var e, t, n, r, o, i, a, s, l, c, u, f;
        if (n = arguments[0], "function" == typeof (a = (r = 2 <= arguments.length ? [].slice.call(arguments, 1) : [])[r.length - 1]) ? (e = a, r.pop()) : "string" == typeof a ? (e = Caman.Calculate[a], r.pop()) : e = Caman.Calculate.bezier, "string" == typeof n && (n = n.split("")), "v" === n[0] && (n = ["r", "g", "b"]), r.length < 2) throw"Invalid number of arguments to curves filter";
        if (t = e(r, 0, 255), (s = r[0])[0] > 0) for (i = l = 0, u = s[0]; 0 <= u ? l < u : l > u; i = 0 <= u ? ++l : --l) t[i] = s[1];
        if ((o = r[r.length - 1])[0] < 255) for (i = c = f = o[0]; f <= 255 ? c <= 255 : c >= 255; i = f <= 255 ? ++c : --c) t[i] = o[1];
        return this.process("curves", (function (e) {
            var r, o;
            for (i = r = 0, o = n.length; 0 <= o ? r < o : r > o; i = 0 <= o ? ++r : --r) e[n[i]] = t[e[n[i]]];
            return e
        }))
    })), Caman.Filter.register("exposure", (function (e) {
        var t, n, r;
        return t = [0, 255 * (r = Math.abs(e) / 100)], n = [255 - 255 * r, 255], e < 0 && (t = t.reverse(), n = n.reverse()), this.curves("rgb", [0, 0], t, n, [255, 255])
    }))
}, function (e, t) {
    Caman.Filter.register("boxBlur", (function () {
        return this.processKernel("Box Blur", [1, 1, 1, 1, 1, 1, 1, 1, 1])
    })), Caman.Filter.register("heavyRadialBlur", (function () {
        return this.processKernel("Heavy Radial Blur", [0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0])
    })), Caman.Filter.register("gaussianBlur", (function () {
        return this.processKernel("Gaussian Blur", [1, 4, 6, 4, 1, 4, 16, 24, 16, 4, 6, 24, 36, 24, 6, 4, 16, 24, 16, 4, 1, 4, 6, 4, 1])
    })), Caman.Filter.register("motionBlur", (function (e) {
        var t;
        return t = 0 === e || 180 === e ? [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0] : e > 0 && e < 90 || e > 180 && e < 270 ? [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0] : 90 === e || 270 === e ? [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] : [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1], this.processKernel("Motion Blur", t)
    })), Caman.Filter.register("sharpen", (function (e) {
        return null == e && (e = 100), e /= 100, this.processKernel("Sharpen", [0, -e, 0, -e, 4 * e + 1, -e, 0, -e, 0])
    }))
}, function (e, t) {
    Caman.Filter.register("vignette", (function (e, t) {
        var n, r, o, i;
        return null == t && (t = 60), "string" == typeof e && "%" === e.substr(-1) && (e = this.dimensions.height > this.dimensions.width ? this.dimensions.width * (parseInt(e.substr(0, e.length - 1), 10) / 100) : this.dimensions.height * (parseInt(e.substr(0, e.length - 1), 10) / 100)), t /= 100, r = [this.dimensions.width / 2, this.dimensions.height / 2], i = Math.sqrt(Math.pow(r[0], 2) + Math.pow(r[1], 2)), o = i - e, n = Caman.Calculate.bezier([0, 1], [30, 30], [70, 60], [100, 80]), this.process("vignette", (function (i) {
            var a, s, l;
            return l = i.locationXY(), (a = Caman.Calculate.distance(l.x, l.y, r[0], r[1])) > o && (s = Math.max(1, n[Math.round((a - o) / e * 100)] / 10 * t), i.r = 255 * Math.pow(i.r / 255, s), i.g = 255 * Math.pow(i.g / 255, s), i.b = 255 * Math.pow(i.b / 255, s)), i
        }))
    }))
}, function (e, t) {
    Caman.Filter.register("posterize", (function (e) {
        var t, n;
        return t = 256 / e, n = 255 / (e - 1), this.process("posterize", (function (e) {
            return e.r = Math.floor(Math.floor(e.r / t) * n), e.g = Math.floor(Math.floor(e.g / t) * n), e.b = Math.floor(Math.floor(e.b / t) * n), e
        }))
    }))
}, function (e, t) {
    Caman.Filter.register("edgeEnhance", (function () {
        return this.processKernel("Edge Enhance", [0, 0, 0, -1, 1, 0, 0, 0, 0])
    })), Caman.Filter.register("edgeDetect", (function () {
        return this.processKernel("Edge Detect", [-1, -1, -1, -1, 8, -1, -1, -1, -1])
    })), Caman.Filter.register("emboss", (function () {
        return this.processKernel("Emboss", [-2, -1, 0, -1, 1, 1, 0, 1, 2])
    }))
}, function (e, t) {
    Caman.Filter.register("grungy", (function () {
        return this.gamma(1.5), this.clip(25), this.saturation(-60), this.contrast(5), this.noise(5), this.vignette("50%", 30)
    }))
}, function (e, t) {
    Caman.Filter.register("hazyDays", (function () {
        return this.gamma(1.2), this.newLayer((function () {
            return this.setBlendingMode("overlay"), this.opacity(60), this.copyParent(), this.filter.channels({red: 5}), this.filter.stackBlur(15)
        })), this.newLayer((function () {
            return this.setBlendingMode("addition"), this.opacity(40), this.fillColor("#6899ba")
        })), this.newLayer((function () {
            return this.setBlendingMode("multiply"), this.opacity(35), this.copyParent(), this.filter.brightness(40), this.filter.vibrance(40), this.filter.exposure(30), this.filter.contrast(15), this.filter.curves("r", [0, 40], [128, 128], [128, 128], [255, 215]), this.filter.curves("g", [0, 40], [128, 128], [128, 128], [255, 215]), this.filter.curves("b", [0, 40], [128, 128], [128, 128], [255, 215]), this.filter.stackBlur(5)
        })), this.curves("r", [20, 0], [128, 158], [128, 128], [235, 255]), this.curves("g", [20, 0], [128, 128], [128, 128], [235, 255]), this.curves("b", [20, 0], [128, 108], [128, 128], [235, 255]), this.vignette("45%", 20)
    }))
}, function (e, t) {
    Caman.Filter.register("lomo", (function (e) {
        return null == e && (e = !0), this.brightness(15), this.exposure(15), this.curves("rgb", [0, 0], [200, 0], [155, 255], [255, 255]), this.saturation(-20), this.gamma(1.8), e && this.vignette("50%", 60), this.brightness(5)
    }))
}, function (e, t) {
    Caman.Filter.register("sinCity", (function () {
        return this.contrast(100), this.brightness(15), this.exposure(10), this.posterize(80), this.clip(30), this.greyscale()
    }))
}, function (e, t) {
    Caman.Filter.register("crossProcess", (function () {
        return this.exposure(5), this.colorize("#e87b22", 4), this.sepia(20), this.channels({
            blue: 8,
            red: 3
        }), this.curves("b", [0, 0], [100, 150], [180, 180], [255, 255]), this.contrast(15), this.vibrance(75), this.gamma(1.6)
    }))
}, function (e, t) {
    Caman.Filter.register("glowingSun", (function (e) {
        if (null == e && (e = !0), this.brightness(10), this.newLayer((function () {
            return this.setBlendingMode("multiply"), this.opacity(80), this.copyParent(), this.filter.gamma(.8), this.filter.contrast(50), this.filter.exposure(10)
        })), this.newLayer((function () {
            return this.setBlendingMode("softLight"), this.opacity(80), this.fillColor("#f49600")
        })), this.exposure(20), this.gamma(.8), e) return this.vignette("45%", 20)
    }))
}, function (e, t) {
    Caman.Filter.register("jarques", (function () {
        return this.saturation(-35), this.curves("b", [20, 0], [90, 120], [186, 144], [255, 230]), this.curves("r", [0, 0], [144, 90], [138, 120], [255, 255]), this.curves("g", [10, 0], [115, 105], [148, 100], [255, 248]), this.curves("rgb", [0, 0], [120, 100], [128, 140], [255, 255]), this.sharpen(20)
    }))
}, function (e, t) {
    Caman.Filter.register("love", (function () {
        return this.brightness(5), this.exposure(8), this.contrast(4), this.colorize("#c42007", 30), this.vibrance(50), this.gamma(1.3)
    }))
}, function (e, t) {
    Caman.Filter.register("oldBoot", (function () {
        return this.saturation(-20), this.vibrance(-50), this.gamma(1.1), this.sepia(30), this.channels({
            red: -10,
            blue: 5
        }), this.curves("rgb", [0, 0], [80, 50], [128, 230], [255, 255]), this.vignette("60%", 30)
    }))
}, function (e, t) {
    Caman.Filter.register("orangePeel", (function () {
        return this.curves("rgb", [0, 0], [100, 50], [140, 200], [255, 255]), this.vibrance(-30), this.saturation(-30), this.colorize("#ff9000", 30), this.contrast(-5), this.gamma(1.4)
    }))
}, function (e, t) {
    Caman.Filter.register("pinhole", (function () {
        return this.greyscale(), this.sepia(10), this.exposure(10), this.contrast(15), this.vignette("60%", 35)
    }))
}, function (e, t) {
    Caman.Filter.register("sunrise", (function () {
        return this.exposure(3.5), this.saturation(-5), this.vibrance(50), this.sepia(60), this.colorize("#e87b22", 10), this.channels({
            red: 8,
            blue: 8
        }), this.contrast(5), this.gamma(1.2), this.vignette("55%", 25)
    }))
}, function (e, t) {
    Caman.Filter.register("vintage", (function (e) {
        if (null == e && (e = !0), this.greyscale(), this.contrast(5), this.noise(3), this.sepia(100), this.channels({
            red: 8,
            blue: 2,
            green: 4
        }), this.gamma(.87), e) return this.vignette("40%", 30)
    }))
}, function (e, t) {
    var n, r, o;
    r = [512, 512, 456, 512, 328, 456, 335, 512, 405, 328, 271, 456, 388, 335, 292, 512, 454, 405, 364, 328, 298, 271, 496, 456, 420, 388, 360, 335, 312, 292, 273, 512, 482, 454, 428, 405, 383, 364, 345, 328, 312, 298, 284, 271, 259, 496, 475, 456, 437, 420, 404, 388, 374, 360, 347, 335, 323, 312, 302, 292, 282, 273, 265, 512, 497, 482, 468, 454, 441, 428, 417, 405, 394, 383, 373, 364, 354, 345, 337, 328, 320, 312, 305, 298, 291, 284, 278, 271, 265, 259, 507, 496, 485, 475, 465, 456, 446, 437, 428, 420, 412, 404, 396, 388, 381, 374, 367, 360, 354, 347, 341, 335, 329, 323, 318, 312, 307, 302, 297, 292, 287, 282, 278, 273, 269, 265, 261, 512, 505, 497, 489, 482, 475, 468, 461, 454, 447, 441, 435, 428, 422, 417, 411, 405, 399, 394, 389, 383, 378, 373, 368, 364, 359, 354, 350, 345, 341, 337, 332, 328, 324, 320, 316, 312, 309, 305, 301, 298, 294, 291, 287, 284, 281, 278, 274, 271, 268, 265, 262, 259, 257, 507, 501, 496, 491, 485, 480, 475, 470, 465, 460, 456, 451, 446, 442, 437, 433, 428, 424, 420, 416, 412, 408, 404, 400, 396, 392, 388, 385, 381, 377, 374, 370, 367, 363, 360, 357, 354, 350, 347, 344, 341, 338, 335, 332, 329, 326, 323, 320, 318, 315, 312, 310, 307, 304, 302, 299, 297, 294, 292, 289, 287, 285, 282, 280, 278, 275, 273, 271, 269, 267, 265, 263, 261, 259], o = [9, 11, 12, 13, 13, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24], n = function () {
        return this.r = 0, this.g = 0, this.b = 0, this.a = 0, this.next = null
    }, Caman.Plugin.register("stackBlur", (function (e) {
        var t, i, a, s, l, c, u, f, p, d, h, g, m, b, v, y, w, x, k, O, S, j, C, _, E, P, R, D, M, A, T, I, z, L, B, N,
            F, U, H, W, Y, V, q, X;
        if (!(isNaN(e) || e < 1)) {
            for (e |= 0, v = this.pixelData, s = e + e + 1, (M = this.dimensions.width) << 2, A = M - 1, p = (f = this.dimensions.height) - 1, D = (O = e + 1) * (O + 1) / 2, C = R = new n, d = N = 1; 1 <= s ? N < s : N > s; d = 1 <= s ? ++N : --N) C = C.next = new n, d === O && (_ = C);
            for (C.next = R, E = null, P = null, B = z = 0, h = r[e], j = o[e], I = F = 0; 0 <= f ? F < f : F > f; I = 0 <= f ? ++F : --F) {
                for (w = l = t = k = u = a = 0, x = O * (y = v[z]), c = O * (b = v[z + 1]), i = O * (m = v[z + 2]), k += D * y, u += D * b, a += D * m, C = R, d = U = 0; 0 <= O ? U < O : U > O; d = 0 <= O ? ++U : --U) C.r = y, C.g = b, C.b = m, C = C.next;
                for (d = H = 1; 1 <= O ? H < O : H > O; d = 1 <= O ? ++H : --H) g = z + ((A < d ? A : d) << 2), k += (C.r = y = v[g]) * (S = O - d), u += (C.g = b = v[g + 1]) * S, a += (C.b = m = v[g + 2]) * S, w += y, l += b, t += m, C = C.next;
                for (E = R, P = _, T = W = 0; 0 <= M ? W < M : W > M; T = 0 <= M ? ++W : --W) v[z] = k * h >> j, v[z + 1] = u * h >> j, v[z + 2] = a * h >> j, k -= x, u -= c, a -= i, x -= E.r, c -= E.g, i -= E.b, g = B + ((g = T + e + 1) < A ? g : A) << 2, k += w += E.r = v[g], u += l += E.g = v[g + 1], a += t += E.b = v[g + 2], E = E.next, x += y = P.r, c += b = P.g, i += m = P.b, w -= y, l -= b, t -= m, P = P.next, z += 4;
                B += M
            }
            for (T = Y = 0; 0 <= M ? Y < M : Y > M; T = 0 <= M ? ++Y : --Y) {
                for (l = t = w = u = a = k = 0, x = O * (y = v[z = T << 2]), c = O * (b = v[z + 1]), i = O * (m = v[z + 2]), k += D * y, u += D * b, a += D * m, C = R, d = V = 0; 0 <= O ? V < O : V > O; d = 0 <= O ? ++V : --V) C.r = y, C.g = b, C.b = m, C = C.next;
                for (L = M, d = q = 1; 1 <= e ? q <= e : q >= e; d = 1 <= e ? ++q : --q) z = L + T << 2, k += (C.r = y = v[z]) * (S = O - d), u += (C.g = b = v[z + 1]) * S, a += (C.b = m = v[z + 2]) * S, w += y, l += b, t += m, C = C.next, d < p && (L += M);
                for (z = T, E = R, P = _, I = X = 0; 0 <= f ? X < f : X > f; I = 0 <= f ? ++X : --X) v[g = z << 2] = k * h >> j, v[g + 1] = u * h >> j, v[g + 2] = a * h >> j, k -= x, u -= c, a -= i, x -= E.r, c -= E.g, i -= E.b, g = T + ((g = I + O) < p ? g : p) * M << 2, k += w += E.r = v[g], u += l += E.g = v[g + 1], a += t += E.b = v[g + 2], E = E.next, x += y = P.r, c += b = P.g, i += m = P.b, w -= y, l -= b, t -= m, P = P.next, z += M
            }
            return this
        }
    })), Caman.Filter.register("stackBlur", (function (e) {
        return this.processPlugin("stackBlur", [e])
    }))
}, function (e, t) {
    Caman.Plugin.register("flip", (function (e) {
        var t, n, r, o;
        return r = this.canvas.width, o = this.canvas.height, (t = document.createElement("canvas")).width = r, t.height = o, t.id = this.canvas.id, n = t.getContext("2d"), "x" === e ? (n.translate(r, 0), n.scale(-1, 1)) : "y" === e && (n.translate(0, o), n.scale(1, -1)), n.drawImage(this.canvas, 0, 0), this.replaceCanvas(t), this
    })), Caman.Filter.register("flip", (function () {
        return this.processPlugin("flip", arguments)
    }))
}, function (e, t, n) {
    var r = n(65);
    "string" == typeof r && (r = [[e.i, r, ""]]);
    var o = {hmr: !0, transform: void 0};
    n(67)(r, o);
    r.locals && (e.exports = r.locals)
}, function (e, t, n) {
    (e.exports = n(66)(void 0)).push([e.i, '@font-face {\r\n  font-family: \'filerobot-image-editor-font\';\r\n  src:  url(\'https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/fonts/filerobot-image-editor-font/v5/filerobot-image-editor-font.eot?ua0hzun3\');\r\n  src:  url(\'https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/fonts/filerobot-image-editor-font/v5/filerobot-image-editor-font.eot?ua0hzun3#iefix\') format(\'embedded-opentype\'),\r\n  url(\'https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/fonts/filerobot-image-editor-font/v5/filerobot-image-editor-font.ttf?ua0hzun3\') format(\'truetype\'),\r\n  url(\'https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/fonts/filerobot-image-editor-font/v5/filerobot-image-editor-font.woff?ua0hzun3\') format(\'woff\'),\r\n  url(\'https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/fonts/filerobot-image-editor-font/v5/filerobot-image-editor-font.svg?ua0hzun3#filerobot-image-editor-font\') format(\'svg\');\r\n  font-weight: normal;\r\n  font-style: normal;\r\n}\r\n\r\n[class^="sf-i-"], [class*=" sf-i-"] {\r\n  /* use !important to prevent issues with browser extensions that change fonts */\r\n  font-family: \'filerobot-image-editor-font\' !important;\r\n  speak: none;\r\n  font-style: normal;\r\n  font-weight: normal;\r\n  font-variant: normal;\r\n  text-transform: none;\r\n  line-height: 1;\r\n\r\n  /* Better Font Rendering =========== */\r\n  -webkit-font-smoothing: antialiased;\r\n  -moz-osx-font-smoothing: grayscale;\r\n}\r\n\r\n.sf-i-shape:before {\r\n  content: "\\E91B";\r\n}\r\n.sf-i-image:before {\r\n  content: "\\E91A";\r\n}\r\n.sf-i-focus-point:before {\r\n  content: "\\E919";\r\n}\r\n.sf-i-watermark:before {\r\n  content: "\\E918";\r\n}\r\n.sf-i-attention:before {\r\n  content: "\\E917";\r\n}\r\n.sf-i-reset:before {\r\n  content: "\\E912";\r\n}\r\n.sf-i-rotate-right:before {\r\n  content: "\\E913";\r\n}\r\n.sf-i-flip-vertically:before {\r\n  content: "\\E914";\r\n}\r\n.sf-i-rotate-left:before {\r\n  content: "\\E915";\r\n}\r\n.sf-i-flip-horizontally:before {\r\n  content: "\\E916";\r\n}\r\n.sf-i-arrows-back:before {\r\n  content: "\\E905";\r\n}\r\n.sf-i-arrows-forward:before {\r\n  content: "\\E906";\r\n}\r\n.sf-i-filter:before {\r\n  content: "\\E904";\r\n}\r\n.sf-i-minus:before {\r\n  content: "\\E910";\r\n}\r\n.sf-i-plus:before {\r\n  content: "\\E911";\r\n}\r\n.sf-i-effects:before {\r\n  content: "\\E900";\r\n}\r\n.sf-i-crop:before {\r\n  content: "\\E901";\r\n}\r\n.sf-i-rotation-left:before {\r\n  content: "\\E902";\r\n}\r\n.sf-i-mirror-vertical:before {\r\n  content: "\\E903";\r\n}\r\n.sf-i-resize:before {\r\n  content: "\\E907";\r\n}\r\n.sf-i-rotation-right:before {\r\n  content: "\\E908";\r\n}\r\n.sf-i-mirrot-horizontal:before {\r\n  content: "\\E909";\r\n}\r\n.sf-i-adjust:before {\r\n  content: "\\E90A";\r\n}\r\n.sf-i-orientation:before {\r\n  content: "\\E90B";\r\n}\r\n.sf-i-cross:before {\r\n  content: "\\E90C";\r\n}\r\n.sf-i-point-orientation:before {\r\n  content: "\\E90D";\r\n}\r\n.sf-i-link:before {\r\n  content: "\\E90E";\r\n}\r\n.sf-i-without-link:before {\r\n  content: "\\E90F";\r\n}\r\n', ""])
}, function (e, t) {
    e.exports = function (e) {
        var t = [];
        return t.toString = function () {
            return this.map((function (t) {
                var n = function (e, t) {
                    var n = e[1] || "", r = e[3];
                    if (!r) return n;
                    if (t && "function" == typeof btoa) {
                        var o = (a = r, "/*# sourceMappingURL=data:application/json;charset=utf-8;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(a)))) + " */"),
                            i = r.sources.map((function (e) {
                                return "/*# sourceURL=" + r.sourceRoot + e + " */"
                            }));
                        return [n].concat(i).concat([o]).join("\n")
                    }
                    var a;
                    return [n].join("\n")
                }(t, e);
                return t[2] ? "@media " + t[2] + "{" + n + "}" : n
            })).join("")
        }, t.i = function (e, n) {
            "string" == typeof e && (e = [[null, e, ""]]);
            for (var r = {}, o = 0; o < this.length; o++) {
                var i = this[o][0];
                "number" == typeof i && (r[i] = !0)
            }
            for (o = 0; o < e.length; o++) {
                var a = e[o];
                "number" == typeof a[0] && r[a[0]] || (n && !a[2] ? a[2] = n : n && (a[2] = "(" + a[2] + ") and (" + n + ")"), t.push(a))
            }
        }, t
    }
}, function (e, t, n) {
    var r, o, i = {}, a = (r = function () {
        return window && document && document.all && !window.atob
    }, function () {
        return void 0 === o && (o = r.apply(this, arguments)), o
    }), s = function (e) {
        var t = {};
        return function (n) {
            if (void 0 === t[n]) {
                var r = e.call(this, n);
                if (r instanceof window.HTMLIFrameElement) try {
                    r = r.contentDocument.head
                } catch (e) {
                    r = null
                }
                t[n] = r
            }
            return t[n]
        }
    }((function (e) {
        return document.querySelector(e)
    })), l = null, c = 0, u = [], f = n(68);

    function p(e, t) {
        for (var n = 0; n < e.length; n++) {
            var r = e[n], o = i[r.id];
            if (o) {
                o.refs++;
                for (var a = 0; a < o.parts.length; a++) o.parts[a](r.parts[a]);
                for (; a < r.parts.length; a++) o.parts.push(v(r.parts[a], t))
            } else {
                var s = [];
                for (a = 0; a < r.parts.length; a++) s.push(v(r.parts[a], t));
                i[r.id] = {id: r.id, refs: 1, parts: s}
            }
        }
    }

    function d(e, t) {
        for (var n = [], r = {}, o = 0; o < e.length; o++) {
            var i = e[o], a = t.base ? i[0] + t.base : i[0], s = {css: i[1], media: i[2], sourceMap: i[3]};
            r[a] ? r[a].parts.push(s) : n.push(r[a] = {id: a, parts: [s]})
        }
        return n
    }

    function h(e, t) {
        var n = s(e.insertInto);
        if (!n) throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.");
        var r = u[u.length - 1];
        if ("top" === e.insertAt) r ? r.nextSibling ? n.insertBefore(t, r.nextSibling) : n.appendChild(t) : n.insertBefore(t, n.firstChild), u.push(t); else if ("bottom" === e.insertAt) n.appendChild(t); else {
            if ("object" != typeof e.insertAt || !e.insertAt.before) throw new Error("[Style Loader]\n\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\n Must be 'top', 'bottom', or Object.\n (https://github.com/webpack-contrib/style-loader#insertat)\n");
            var o = s(e.insertInto + " " + e.insertAt.before);
            n.insertBefore(t, o)
        }
    }

    function g(e) {
        if (null === e.parentNode) return !1;
        e.parentNode.removeChild(e);
        var t = u.indexOf(e);
        t >= 0 && u.splice(t, 1)
    }

    function m(e) {
        var t = document.createElement("style");
        return e.attrs.type = "text/css", b(t, e.attrs), h(e, t), t
    }

    function b(e, t) {
        Object.keys(t).forEach((function (n) {
            e.setAttribute(n, t[n])
        }))
    }

    function v(e, t) {
        var n, r, o, i;
        if (t.transform && e.css) {
            if (!(i = t.transform(e.css))) return function () {
            };
            e.css = i
        }
        if (t.singleton) {
            var a = c++;
            n = l || (l = m(t)), r = x.bind(null, n, a, !1), o = x.bind(null, n, a, !0)
        } else e.sourceMap && "function" == typeof URL && "function" == typeof URL.createObjectURL && "function" == typeof URL.revokeObjectURL && "function" == typeof Blob && "function" == typeof btoa ? (n = function (e) {
            var t = document.createElement("link");
            return e.attrs.type = "text/css", e.attrs.rel = "stylesheet", b(t, e.attrs), h(e, t), t
        }(t), r = O.bind(null, n, t), o = function () {
            g(n), n.href && URL.revokeObjectURL(n.href)
        }) : (n = m(t), r = k.bind(null, n), o = function () {
            g(n)
        });
        return r(e), function (t) {
            if (t) {
                if (t.css === e.css && t.media === e.media && t.sourceMap === e.sourceMap) return;
                r(e = t)
            } else o()
        }
    }

    e.exports = function (e, t) {
        if ("undefined" != typeof DEBUG && DEBUG && "object" != typeof document) throw new Error("The style-loader cannot be used in a non-browser environment");
        (t = t || {}).attrs = "object" == typeof t.attrs ? t.attrs : {}, t.singleton || (t.singleton = a()), t.insertInto || (t.insertInto = "head"), t.insertAt || (t.insertAt = "bottom");
        var n = d(e, t);
        return p(n, t), function (e) {
            for (var r = [], o = 0; o < n.length; o++) {
                var a = n[o];
                (s = i[a.id]).refs--, r.push(s)
            }
            e && p(d(e, t), t);
            for (o = 0; o < r.length; o++) {
                var s;
                if (0 === (s = r[o]).refs) {
                    for (var l = 0; l < s.parts.length; l++) s.parts[l]();
                    delete i[s.id]
                }
            }
        }
    };
    var y, w = (y = [], function (e, t) {
        return y[e] = t, y.filter(Boolean).join("\n")
    });

    function x(e, t, n, r) {
        var o = n ? "" : r.css;
        if (e.styleSheet) e.styleSheet.cssText = w(t, o); else {
            var i = document.createTextNode(o), a = e.childNodes;
            a[t] && e.removeChild(a[t]), a.length ? e.insertBefore(i, a[t]) : e.appendChild(i)
        }
    }

    function k(e, t) {
        var n = t.css, r = t.media;
        if (r && e.setAttribute("media", r), e.styleSheet) e.styleSheet.cssText = n; else {
            for (; e.firstChild;) e.removeChild(e.firstChild);
            e.appendChild(document.createTextNode(n))
        }
    }

    function O(e, t, n) {
        var r = n.css, o = n.sourceMap, i = void 0 === t.convertToAbsoluteUrls && o;
        (t.convertToAbsoluteUrls || i) && (r = f(r)), o && (r += "\n/*# sourceMappingURL=data:application/json;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(o)))) + " */");
        var a = new Blob([r], {type: "text/css"}), s = e.href;
        e.href = URL.createObjectURL(a), s && URL.revokeObjectURL(s)
    }
}, function (e, t) {
    e.exports = function (e) {
        var t = "undefined" != typeof window && window.location;
        if (!t) throw new Error("fixUrls requires window.location");
        if (!e || "string" != typeof e) return e;
        var n = t.protocol + "//" + t.host, r = n + t.pathname.replace(/\/[^\/]*$/, "/");
        return e.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi, (function (e, t) {
            var o, i = t.trim().replace(/^"(.*)"$/, (function (e, t) {
                return t
            })).replace(/^'(.*)'$/, (function (e, t) {
                return t
            }));
            return /^(#|data:|http:\/\/|https:\/\/|file:\/\/\/)/i.test(i) ? e : (o = 0 === i.indexOf("//") ? i : 0 === i.indexOf("/") ? n + i : r + i.replace(/^\.\//, ""), "url(" + JSON.stringify(o) + ")")
        }))
    }
}, function (e, t, n) {
    "use strict";
    n.r(t);
    var r = n(6), o = n(2), i = n(1);

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

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

    function l(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var c = {
        textFontSize: "14px",
        colors: {
            success: "#5cb85c",
            warning: "#f0ad4e",
            error: "#d9534f",
            muted: "#636c72",
            base: "light",
            light: {base: "#F9FAFB", dark: "#F4F6F8", darker: "#DFE4E8"},
            dark: {base: "#1e262c", light: "#454F5B", lighter: "#637381"},
            primary: {
                base: "#181830",
                light: "#263138",
                lighter: "#34444c",
                dark: "#101021",
                darker: "#090912",
                text: "#F9FAFB"
            },
            secondary: {
                base: "#00707c",
                light: "#007E8A",
                lighter: "#008D99",
                dark: "#00616D",
                darker: "#005662",
                text: "#F9FAFB"
            },
            text: {base: "#F9FAFB", dark: "#F4F6F8", mute: "#aaa", light: "#fff"},
            background: {base: "#f1f1f1"},
            border: {base: "#ccc"},
            link: {base: "#00707c", over: "#00616D"},
            brand: {success: "#5cb85c", warning: "#f0ad4e", error: "#d9534f", muted: "#636c72"}
        },
        modal: {
            borderRadius: "4px",
            fluid: {xs: "35%", sm: "45%", md: "60%", lg: "80%", xl: "90%"},
            fixed: {xs: "200px", sm: "300px", md: "450px", lg: "650px", xl: "800px"}
        },
        button: {tt: "none"}
    }, u = s(s({}, c), {}, {
        radii: [0, "0.2rem", "0.25rem", ".3rem"],
        mainBackgroundColor: "#1e262c",
        mainBackgroundColorHover: "#263138",
        mainBackgroundColorActive: "#34444c",
        secondBackgroundColor: "#263138",
        textColor: "#e7f1f4",
        textColorHover: "#fff",
        textMuted: "#70777f",
        borderColor: "#70777f",
        borderDarkColor: "#161e23",
        fieldWidth: "120px",
        borderInputColor: "#3b4d54",
        borderInputColorHover: "#52686d",
        borderInputColorActive: "#52686d",
        inputBackgroundColor: "#34444c",
        inputBoxShadowColor: "#03a9bb",
        inputPlaceholderColor: "#888d94",
        mainThemeColor: "#00707c",
        mainThemeColorHover: "#00616D",
        mainThemeColorOpacity: "rgba(0, 112, 124, 0.5)",
        btnSaveColor: "#009345",
        btnSaveColorHover: "#00b549",
        btnThemeColor: "#34444c",
        btnPaddingSm: "2px 14px",
        btnFontSizeSm: "12px",
        btnBorderRadius: "2px",
        modalOverlayColor: "#484848",
        btnMainColor: function (e) {
            return "\n    color: #fff;\n    background-color: #00707c;\n    border-color: #00707c;\n\n    &:hover {\n      color: #fff;\n      background-color: #00616D;\n      border-color: #00616D;\n    }\n\n    &:focus {\n      -webkit-box-shadow: 0 0 0 2px rgba(0, 112, 124, 0.5);\n              box-shadow: 0 0 0 2px rgba(0, 112, 124, 0.5);\n    }\n\n    :active {\n      color: #fff;\n      background-color: #00616D;\n      background-image: none;\n      border-color: #00616D;\n    }\n\n    ".concat(e.disabled ? "\n      background-color: rgba(0, 112, 124, 0.5);\n      border-color: rgba(0, 112, 124, 0.5);\n    " : "", "\n\n    ").concat(e.active ? "\n       color: #fff;\n      background-color: #00616D;\n      background-image: none;\n      border-color: #00616D;\n    " : "", "\n  ")
        },
        button: s(s({}, c.button), {}, {
            sm: {p: "4px 10px", fz: "12px", lh: "1.5", br: "2px"},
            md: {p: "6px 12px", fz: "14px", lh: "1.5", br: "2px"},
            lg: {p: "8px 14px", fz: "16px", lh: "1.5", br: "3px"}
        }),
        modal: s(s({}, c.modal), {}, {
            backgroundColor: "#1e262c",
            color: "#e7f1f4",
            colorMuted: "#70777f",
            colorMutedHover: "#e7f1f4"
        })
    });

    function f(e) {
        return "\n    font-family: 'filerobot-image-editor-font' !important;\n    color: ".concat(e.muted ? e.theme.colors.textMute : e.theme.colors.text, ";\n    speak: none;\n    font-style: normal;\n    font-weight: normal;\n    font-variant: normal;\n    text-transform: none;\n    line-height: 1;\n\n    /* Better Font Rendering =========== */\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n\n    &:hover {\n      color: ").concat(e.muted ? e.theme.colors.textMute : e.theme.colors.text, ";\n    }\n  ")
    }

    function p(e, t, n) {
        if ("number" != typeof e || e < -1 || e > 1 || "string" != typeof t || "r" != t[0] && "#" != t[0] || "string" != typeof n && void 0 !== n) return null;
        window.sbcRip || (window.sbcRip = function (e) {
            var t = e.length, n = new Object;
            if (t > 9) {
                if ((e = e.split(",")).length < 3 || e.length > 4) return null;
                n[0] = r(e[0].slice(4)), n[1] = r(e[1]), n[2] = r(e[2]), n[3] = e[3] ? parseFloat(e[3]) : -1
            } else {
                if (8 == t || 6 == t || t < 4) return null;
                t < 6 && (e = "#" + e[1] + e[1] + e[2] + e[2] + e[3] + e[3] + (t > 4 ? e[4] + "" + e[4] : "")), e = r(e.slice(1), 16), n[0] = e >> 16 & 255, n[1] = e >> 8 & 255, n[2] = 255 & e, n[3] = 9 == t || 5 == t ? o((e >> 24 & 255) / 255 * 1e4) / 1e4 : -1
            }
            return n
        });
        var r = parseInt, o = Math.round, i = t.length > 9,
            a = (i = "string" == typeof n ? n.length > 9 || "c" == n && !i : i, e < 0),
            s = (e = a ? -1 * e : e, n = n && "c" != n ? n : a ? "#000000" : "#FFFFFF", window.sbcRip(t)),
            l = window.sbcRip(n);
        return s && l ? i ? "rgb(" + o((l[0] - s[0]) * e + s[0]) + "," + o((l[1] - s[1]) * e + s[1]) + "," + o((l[2] - s[2]) * e + s[2]) + (s[3] < 0 && l[3] < 0 ? ")" : "," + (s[3] > -1 && l[3] > -1 ? o(1e4 * ((l[3] - s[3]) * e + s[3])) / 1e4 : l[3] < 0 ? s[3] : l[3]) + ")") : "#" + (4294967296 + 16777216 * (s[3] > -1 && l[3] > -1 ? o(255 * ((l[3] - s[3]) * e + s[3])) : l[3] > -1 ? o(255 * l[3]) : s[3] > -1 ? o(255 * s[3]) : 255) + 65536 * o((l[0] - s[0]) * e + s[0]) + 256 * o((l[1] - s[1]) * e + s[1]) + o((l[2] - s[2]) * e + s[2])).toString(16).slice(s[3] > -1 || l[3] > -1 ? 1 : 3) : null
    }

    var d, h, g, m, b, v, y, w, x = function (e, t) {
        if (!e) return null;
        var n = function (e) {
            return /^#?([a-f\d])([a-f\d])([a-f\d])$/i.test(e) || /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.test(e)
        }(e) ? e : p(0, e, "c");
        if (!n) return null;
        var r = function (e) {
            e = e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i, (function (e, t, n, r) {
                return t + t + n + n + r + r
            }));
            var t = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);
            return t ? {r: parseInt(t[1], 16), g: parseInt(t[2], 16), b: parseInt(t[3], 16)} : null
        }(n);
        return r ? "rgba(".concat(r.r, ", ").concat(r.g, ", ").concat(r.b, ", ").concat(t, ")") : e
    };

    function k(e) {
        var t = "";
        switch (e) {
            case"watermark":
                t = "\\e918";
                break;
            case"reset":
                t = "\\e912";
                break;
            case"flip-v":
                t = "\\e916";
                break;
            case"flip-h":
                t = "\\e914";
                break;
            case"cross":
                t = "\\e90c";
                break;
            case"effects":
                t = "\\e900";
                break;
            case"filters":
                t = "\\e904";
                break;
            case"adjust":
                t = "\\e90a";
                break;
            case"crop":
                t = "\\e901";
                break;
            case"resize":
                t = "\\e907";
                break;
            case"rotate":
                t = "\\e90b";
                break;
            case"previous":
                t = "\\e905";
                break;
            case"next":
                t = "\\e906";
                break;
            case"ratio":
                t = "\\e90e";
                break;
            case"no-ratio":
                t = "\\e90f";
                break;
            case"left-rotate":
                t = "\\e902";
                break;
            case"right-rotate":
                t = "\\e908";
                break;
            case"focus_point":
                t = "\\e919";
                break;
            case"shapes":
                t = "\\e91b";
                break;
            case"image":
                t = "\\e91a";
                break;
            case"text":
                t = "T";
                break;
            case"full-screen":
                t = "\\e91c";
                break;
            default:
                return
        }
        return "\n    &:before {\n      content: '".concat(t, "'\n    }\n  ")
    }

    function O(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var S, j,
        C = i.b.div(d || (d = O(["\n#filerobot-image-editor-root & {\n  height: 100px;\n  width: 100%;\n  overflow-x: ", ";\n  overflow-y: ", ";\n  white-space: nowrap;\n  text-align: center;\n}\n  \n  #filerobot-image-editor-root & ::-webkit-scrollbar {\n    height: 10px !important;\n  }\n  \n  #filerobot-image-editor-root & ::-webkit-scrollbar-thumb {\n    background: ", ";\n    border-radius: 5px;\n  }\n  \n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    width: 100%;\n    height: initial;\n    padding: 0 10px\n}\n  }\n"])), (function (e) {
            return e.overlayYHidden ? "auto" : "none"
        }), (function (e) {
            return e.overlayYHidden ? "hidden" : "visible"
        }), (function (e) {
            return e.theme.colors.border || "#3b4d54"
        })),
        _ = i.b.div(h || (h = O(["\n#filerobot-image-editor-root & {\n  padding: 20px 10px;\n  cursor: pointer;\n  display: inline-block;\n  min-width: 80px;\n  min-height: 100px;\n  text-align: center;\n  font-size: 12px;\n  color: ", ";\n  text-transform: ", ";\n  background: ", ";\n}\n  \n  #filerobot-image-editor-root &:hover {\n    color: ", ";\n    background: ", ";\n  }\n"])), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.noCapitalStrs ? "none" : e.tt || "capitalize"
        }), (function (e) {
            return e.active ? e.theme.colors.secondaryBg : "inherit"
        }), (function (e) {
            return e.theme.colors.textHover
        }), (function (e) {
            return e.theme.colors.secondaryBg
        })),
        E = i.b.div(g || (g = O(["\n#filerobot-image-editor-root & {\n  height: 40px;\n  font-size: 40px;\n  \n  ", ";\n  ", ";\n}\n"])), (function (e) {
            return f(e)
        }), (function (e) {
            return k(e.name)
        })),
        P = i.b.div(m || (m = O(["\n#filerobot-image-editor-root & {\n  height: 20px;\n  line-height: 20px;\n}\n"]))),
        R = i.b.div(b || (b = O(["\n#filerobot-image-editor-root & {\n  overflow-x: auto;\n  overflow-y: hidden;\n  white-space: nowrap;\n}\n  \n  #filerobot-image-editor-root & ::-webkit-scrollbar {\n    height: 10px !important;\n  }\n  \n  #filerobot-image-editor-root & ::-webkit-scrollbar-thumb {\n    background: ", ";\n    border-radius: 5px;\n  }\n"])), (function (e) {
            return e.theme.colors.border || "#3b4d54"
        })),
        D = i.b.div(v || (v = O(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  vertical-align: top;\n  padding: 10px;\n  text-align: center;\n  min-width: 90px;\n  height: 90px;\n  cursor: pointer;\n  color: ", ";\n  font-size: 12px;\n  background: ", ";\n}\n  \n  #filerobot-image-editor-root &:hover {\n    background: ", ";\n  }\n"])), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.active ? e.theme.colors.secondaryBgHover : "transparent"
        }), (function (e) {
            return e.theme.colors.secondaryBgHover
        })),
        M = i.b.div(y || (y = O(["\n#filerobot-image-editor-root & {\n  background: url('", "') 50% 50% / cover no-repeat;\n  width: 55px;\n  height: 55px;\n  border-radius: 2px;\n  overflow: hidden;\n  display: inline-block;\n}\n"])), (function (e) {
            return e.src
        })),
        A = i.b.div(w || (w = O(["\n#filerobot-image-editor-root & {\n  text-transform: ", ";\n  height: 20px;\n  line-height: 20px;\n}\n"])), (function (e) {
            return e.noCapitalStrs ? "none" : "capitalize"
        }));

    function T(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var I, z, L, B, N, F, U, H, W, Y, V, q,
        X = Object(i.b)("div")(S || (S = T(["\n#filerobot-image-editor-root & {\n  height: 100%;\n  width: 100%;\n  overflow-y: auto;\n}\n  \n  #filerobot-image-editor-root & ::-webkit-scrollbar {\n    height: 10px !important;\n    width: 10px !important;\n  }\n  \n  #filerobot-image-editor-root & ::-webkit-scrollbar-thumb {\n    background: ", ";\n    border-radius: 5px;\n  }\n  \n  #filerobot-image-editor-root & *, #filerobot-image-editor-root & *:after, #filerobot-image-editor-root & *:before, #filerobot-image-editor-root & *::after, #filerobot-image-editor-root & *::before {\n    box-sizing: border-box;\n  }\n  \n  #filerobot-image-editor-root & *:after, #filerobot-image-editor-root & *:before, #filerobot-image-editor-root & *::after, #filerobot-image-editor-root & *::before {\n    padding: 0;\n    margin: 0;\n    outline: 0;\n    box-sizing: border-box;\n  }\n  \n  /* cyrillic-ext */\n  \n  @font-face {\n    font-family: 'Roboto Mono';\n    font-style: normal;\n    font-weight: 400;\n    src: local('Roboto Mono'), local('RobotoMono-Regular'), url(https://fonts.gstatic.com/s/robotomono/v5/hMqPNLsu_dywMa4C_DEpY_ZraR2Tg8w2lzm7kLNL0-w.woff2) format('woff2');\n    unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;\n  }\n  \n  /* cyrillic */\n  \n  @font-face {\n    font-family: 'Roboto Mono';\n    font-style: normal;\n    font-weight: 400;\n    src: local('Roboto Mono'), local('RobotoMono-Regular'), url(https://fonts.gstatic.com/s/robotomono/v5/hMqPNLsu_dywMa4C_DEpY14sYYdJg5dU2qzJEVSuta0.woff2) format('woff2');\n    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n  }\n  \n  /* greek-ext */\n  \n  @font-face {\n    font-family: 'Roboto Mono';\n    font-style: normal;\n    font-weight: 400;\n    src: local('Roboto Mono'), local('RobotoMono-Regular'), url(https://fonts.gstatic.com/s/robotomono/v5/hMqPNLsu_dywMa4C_DEpY1BW26QxpSj-_ZKm_xT4hWw.woff2) format('woff2');\n    unicode-range: U+1F00-1FFF;\n  }\n  \n  /* greek */\n  \n  @font-face {\n    font-family: 'Roboto Mono';\n    font-style: normal;\n    font-weight: 400;\n    src: local('Roboto Mono'), local('RobotoMono-Regular'), url(https://fonts.gstatic.com/s/robotomono/v5/hMqPNLsu_dywMa4C_DEpYwt_Rm691LTebKfY2ZkKSmI.woff2) format('woff2');\n    unicode-range: U+0370-03FF;\n  }\n  \n  /* vietnamese */\n  \n  @font-face {\n    font-family: 'Roboto Mono';\n    font-style: normal;\n    font-weight: 400;\n    src: local('Roboto Mono'), local('RobotoMono-Regular'), url(https://fonts.gstatic.com/s/robotomono/v5/hMqPNLsu_dywMa4C_DEpY9DiNsR5a-9Oe_Ivpu8XWlY.woff2) format('woff2');\n    unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;\n  }\n  \n  /* latin-ext */\n  \n  @font-face {\n    font-family: 'Roboto Mono';\n    font-style: normal;\n    font-weight: 400;\n    src: local('Roboto Mono'), local('RobotoMono-Regular'), url(https://fonts.gstatic.com/s/robotomono/v5/hMqPNLsu_dywMa4C_DEpY6E8kM4xWR1_1bYURRojRGc.woff2) format('woff2');\n    unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;\n  }\n  \n  /* latin */\n  \n  @font-face {\n    font-family: 'Roboto Mono';\n    font-style: normal;\n    font-weight: 400;\n    src: local('Roboto Mono'), local('RobotoMono-Regular'), url(https://fonts.gstatic.com/s/robotomono/v5/hMqPNLsu_dywMa4C_DEpY4gp9Q8gbYrhqGlRav_IXfk.woff2) format('woff2');\n    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;\n  }\n"])), (function (e) {
            return e.theme.colors.border || "#3b4d54"
        })),
        $ = i.b.div(j || (j = T(["\n#filerobot-image-editor-root & {\n  position: relative;\n  background: ", ";\n  z-index: 1050;\n  width: 100%;\n  height: 100%;\n  min-height: 520px;\n  overflow: ", ";\n  font-size: 12px;\n  display: flex;\n  flex-direction: column;\n}\n  \n  #filerobot-image-editor-root & .filerobot-original-canvas {\n    visibility: hidden;\n    position: absolute;\n    left: -99999px;\n    display: none;\n  }\n  \n  #filerobot-image-editor-root & .cropper-container {\n    direction: ltr;\n    font-size: 0;\n    line-height: 0;\n    position: relative;\n    -ms-touch-action: none;\n    touch-action: none;\n    -webkit-user-select: none;\n    -moz-user-select: none;\n    -ms-user-select: none;\n    user-select: none;\n  }\n  \n  #filerobot-image-editor-root & .cropper-container img {/*Avoid margin top issue (Occur only when margin-top <= -height)*/\n    display: block;\n    height: 100%;\n    image-orientation: 0deg;\n    max-height: none !important;\n    max-width: none !important;\n    min-height: 0 !important;\n    min-width: 0 !important;\n    width: 100%;\n  }\n  \n  #filerobot-image-editor-root & .cropper-wrap-box,\n  #filerobot-image-editor-root & .cropper-canvas,\n  #filerobot-image-editor-root & .cropper-drag-box,\n  #filerobot-image-editor-root & .cropper-crop-box,\n  #filerobot-image-editor-root & .cropper-modal {\n    bottom: 0;\n    left: 0;\n    position: absolute;\n    right: 0;\n    top: 0;\n  }\n  \n  #filerobot-image-editor-root & .cropper-wrap-box,\n  #filerobot-image-editor-root & .cropper-canvas {\n    overflow: hidden;\n  }\n  \n  #filerobot-image-editor-root & .cropper-drag-box {\n    background-color: #fff;\n    opacity: 0;\n  }\n  \n  #filerobot-image-editor-root & .cropper-modal {\n    background-color: #000;\n    opacity: .5;\n  }\n  \n  #filerobot-image-editor-root & .cropper-view-box {\n    display: block;\n    height: 100%;\n    outline-color: rgba(255, 255, 255, 0.75);\n    outline: 1px solid #fff;\n    overflow: hidden;\n    width: 100%;\n    ", ";\n  }\n  \n  #filerobot-image-editor-root & .cropper-dashed {\n    border: 0 dashed #eee;\n    display: block;\n    opacity: .5;\n    position: absolute;\n  }\n  \n  #filerobot-image-editor-root & .cropper-dashed.dashed-h {\n    border-bottom-width: 1px;\n    border-top-width: 1px;\n    height: 33.33333%;\n    left: 0;\n    top: 33.33333%;\n    width: 100%;\n  }\n  \n  #filerobot-image-editor-root & .cropper-dashed.dashed-v {\n    border-left-width: 1px;\n    border-right-width: 1px;\n    height: 100%;\n    left: 33.33333%;\n    top: 0;\n    width: 33.33333%;\n  }\n  \n  #filerobot-image-editor-root & .cropper-center {\n    display: block;\n    height: 0;\n    left: 50%;\n    opacity: .75;\n    position: absolute;\n    top: 50%;\n    width: 0;\n  }\n  \n  #filerobot-image-editor-root & .cropper-center:before,\n  #filerobot-image-editor-root & .cropper-center:after {\n    background-color: #fff;\n    content: ' ';\n    display: block;\n    position: absolute;\n  }\n  \n  #filerobot-image-editor-root & .cropper-center:before {\n    height: 1px;\n    left: -10px;\n    top: 0;\n    width: 20px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-center:after {\n    height: 20px;\n    left: 0;\n    top: -10px;\n    width: 1px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-face,\n  #filerobot-image-editor-root & .cropper-line,\n  #filerobot-image-editor-root & .cropper-point {\n    display: block;\n    height: 100%;\n    opacity: .1;\n    position: absolute;\n    width: 100%;\n  }\n  \n  #filerobot-image-editor-root & .cropper-face {\n    background-color: #fff;\n    left: 0;\n    top: 0;\n    ", ";\n  }\n  \n  #filerobot-image-editor-root & .cropper-line {\n    background-color: #fff;\n  }\n  \n  #filerobot-image-editor-root & .cropper-line.line-e {\n    cursor: ew-resize;\n    right: -3px;\n    top: 0;\n    width: 5px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-line.line-n {\n    cursor: ns-resize;\n    height: 5px;\n    left: 0;\n    top: -3px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-line.line-w {\n    cursor: ew-resize;\n    left: -3px;\n    top: 0;\n    width: 5px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-line.line-s {\n    bottom: -3px;\n    cursor: ns-resize;\n    height: 5px;\n    left: 0;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point {\n    background-color: #fff;\n    height: 20px;\n    opacity: .90;\n    width: 20px;\n    border-radius: 50%;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point:before {\n      content: '';\n      display: table;\n      width: 8px;\n      height: 8px;\n      border-radius: 50%;\n      background: black;\n      opacity: 0.8;\n      z-index: 11;\n      position: absolute;\n      top: calc(50% - 4px);\n      left: calc(50% - 4px);\n    }\n  \n  #filerobot-image-editor-root & .cropper-point.point-e {\n    cursor: ew-resize;\n    margin-top: -10px;\n    right: -10px;\n    top: 50%;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point.point-n {\n    cursor: ns-resize;\n    left: 50%;\n    margin-left: -10px;\n    top: -10px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point.point-w {\n    cursor: ew-resize;\n    left: -10px;\n    margin-top: -10px;\n    top: 50%;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point.point-s {\n    bottom: -10px;\n    cursor: s-resize;\n    left: 50%;\n    margin-left: -10px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point.point-ne {\n    cursor: nesw-resize;\n    right: -10px;\n    top: -10px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point.point-nw {\n    cursor: nwse-resize;\n    left: -10px;\n    top: -10px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point.point-sw {\n    bottom: -10px;\n    cursor: nesw-resize;\n    left: -10px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point.point-se {\n    bottom: -10px;\n    cursor: nwse-resize;\n    height: 20px;\n    right: -10px;\n    width: 20px;\n  }\n  \n  #filerobot-image-editor-root & .cropper-point.point-se:before {\n    content: '';\n    display: table;\n    width: 8px;\n    height: 8px;\n    border-radius: 50%;\n    background: black;\n    opacity: 0.8;\n    z-index: 11;\n    position: absolute;\n    top: calc(50% - 4px);\n    left: calc(50% - 4px);\n  }\n  \n  #filerobot-image-editor-root & .cropper-invisible {\n    opacity: 0;\n  }\n  \n  #filerobot-image-editor-root & .cropper-bg {\n    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC');\n  }\n  \n  #filerobot-image-editor-root & .cropper-hide {\n    display: block;\n    height: 0;\n    position: absolute;\n    width: 0;\n  }\n  \n  #filerobot-image-editor-root & .cropper-hidden {\n    display: none !important;\n  }\n  \n  #filerobot-image-editor-root & .cropper-move {\n    cursor: move;\n  }\n  \n  #filerobot-image-editor-root & .cropper-crop {\n    cursor: crosshair;\n  }\n  \n  #filerobot-image-editor-root & .cropper-disabled .cropper-drag-box,\n  #filerobot-image-editor-root & .cropper-disabled .cropper-face,\n  #filerobot-image-editor-root & .cropper-disabled .cropper-line,\n  #filerobot-image-editor-root & .cropper-disabled .cropper-point {\n    cursor: not-allowed;\n  }\n  \n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    display: flex;\n    flex-direction: column;\n    justify-content: space-between\n}\n  }\n"])), (function (e) {
            return e.theme.colors.primaryBg
        }), (function (e) {
            return e.isLoading ? "hidden" : "auto"
        }), (function (e) {
            return e.roundCrop && "border-radius: 50%"
        }), (function (e) {
            return e.roundCrop && "\n      border-radius: 50%;\n      box-shadow: 0 0 80px 15px #000;\n      border: 2px solid #000;"
        })), K = n(0);

    function Q(e, t) {
        if (null == e) return {};
        var n, r, o = function (e, t) {
            if (null == e) return {};
            var n, r, o = {}, i = Object.keys(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || (o[n] = e[n]);
            return o
        }(e, t);
        if (Object.getOwnPropertySymbols) {
            var i = Object.getOwnPropertySymbols(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || Object.prototype.propertyIsEnumerable.call(e, n) && (o[n] = e[n])
        }
        return o
    }

    function Z(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var G, J, ee, te, ne,
        re = i.b.div(I || (I = Z(["\n#filerobot-image-editor-root & {\n  background: ", ";\n  border-top: 1px solid ", ";\n  height: 35px;\n  position: relative;\n  z-index: 1;\n}\n"])), (function (e) {
            return e.theme.colors.secondaryBg
        }), (function (e) {
            return e.theme.colors.border
        })),
        oe = i.b.div(z || (z = Z(["\n#filerobot-image-editor-root & {\n  ", ";\n  ", ";\n  \n  ", ";\n}\n"])), (function (e) {
            return f(e)
        }), k("previous"), (function (e) {
            return me(e)
        })),
        ie = i.b.div(L || (L = Z(["\n#filerobot-image-editor-root & {\n  ", ";\n  ", ";\n  \n  ", ";\n}\n"])), (function (e) {
            return f(e)
        }), k("next"), (function (e) {
            return me(e)
        })),
        ae = i.b.div(B || (B = Z(["\n#filerobot-image-editor-root & {\n  ", ";\n  ", ";\n  \n  ", ";\n}\n"])), (function (e) {
            return f(e)
        }), k("reset"), (function (e) {
            return me(e)
        })),
        se = i.b.div(N || (N = Z(["\n#filerobot-image-editor-root & {\n  ", ";\n  ", ";\n  \n  ", ";\n}\n"])), (function (e) {
            return f(e)
        }), k("full-screen"), (function (e) {
            return me(e)
        })),
        le = i.b.div(F || (F = Z(["\n#filerobot-image-editor-root & {\n  position: relative; \n  display: inline-block;\n  vertical-align: middle;\n  width: 60px;\n  margin-bottom: 2px;\n  -webkit-user-select: none; \n  -moz-user-select: none; \n  -ms-user-select: none;\n}\n"]))),
        ce = i.b.input(U || (U = Z(["\n#filerobot-image-editor-root & {\n  display: none !important;\n}\n  \n  #filerobot-image-editor-root & :checked + .onoffswitch-label .onoffswitch-inner {\n    margin-left: 0;\n}\n"]))),
        ue = i.b.label(H || (H = Z(["\n#filerobot-image-editor-root & {\n  display: block; \n  overflow: hidden; \n  cursor: pointer;\n  border: 1px solid ", "; \n  border-radius: 4px;\n  margin: 0;\n}\n"])), (function (e) {
            return e.theme.colors.border
        })),
        fe = i.b.span(W || (W = Z(["\n#filerobot-image-editor-root & {\n  display: block; \n  width: 200%; \n  margin-left: ", ';\n  transition: margin 0.3s ease-in 0s;\n}\n  \n  #filerobot-image-editor-root &:before, #filerobot-image-editor-root &:after {\n    display: block; float: left; width: 50%; height: 19px; padding: 0; line-height: 19px;\n    font-size: 10px; color: white; font-family: Trebuchet, Arial, sans-serif; font-weight: bold;\n    box-sizing: border-box;\n  }\n  \n  #filerobot-image-editor-root &:before {\n    content: "ON";\n    padding-left: 10px !important;\n    background-color: ', '; \n    color: #fff;\n  }\n  \n  #filerobot-image-editor-root &:after {\n    content: "OFF";\n    padding-right: 10px !important;\n    background-color: ', "; \n    color: #aaa;\n    text-align: right;\n  }\n"])), (function (e) {
            return e.checked ? "0" : "-100%"
        }), (function (e) {
            var t;
            return (null === (t = e.theme.colors.button) || void 0 === t ? void 0 : t.primary) || "#01717d"
        }), (function (e) {
            return e.theme.colors.primaryBg
        })),
        pe = i.b.span(Y || (Y = Z(["\n#filerobot-image-editor-root & {\n    display: block; \n    width: 10px;\n    height: 10px;\n    margin: 5.5px;\n    background: ", ";\n    position: absolute; top: 0; bottom: 0;\n    right:  ", ";\n    border: 1px solid ", "; \n    border-radius: 12px;\n    transition: all 0.3s ease-in 0s;\n}\n"])), (function (e) {
            return e.theme.colors.accent
        }), (function (e) {
            return e.checked ? "0" : "37px"
        }), (function (e) {
            return e.theme.colors.accent
        })), de = Object(i.b)("div").attrs((function () {
            return {className: "cloudimage-url-generator-switch"}
        }))(V || (V = Z(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  vertical-align: middle;\n  line-height: 30px;\n  margin-right: 10px;\n  float: right;\n}\n"]))),
        he = Object(i.b)("div")(q || (q = Z(["\n#filerobot-image-editor-root & {\n  margin-left: 8px;\n  display: inline-block;\n  vertical-align: middle;\n  color: ", ";\n  margin-bottom: 3px;\n  cursor: pointer;\n}\n"])), (function (e) {
            return e.theme.colors.text
        })), ge = function (e) {
            var t = e.id, n = e.handleChange, r = e.text, o = e.checked, i = e.style;
            Q(e, ["id", "handleChange", "text", "checked", "style"]);
            return Object(K.jsxs)(de, {
                style: i,
                children: [Object(K.jsxs)(le, {
                    children: [Object(K.jsx)(ce, {
                        type: "checkbox",
                        name: t,
                        id: t,
                        onChange: function () {
                            n(!o)
                        },
                        checked: o
                    }), Object(K.jsxs)(ue, {
                        htmlFor: t,
                        children: [Object(K.jsx)(fe, {checked: o}), Object(K.jsx)(pe, {checked: o})]
                    })]
                }), r && Object(K.jsx)(he, {
                    onClick: function () {
                        n(!o)
                    }, children: r
                })]
            })
        };

    function me(e) {
        return "\n    display: inline-block;\n    height: 34px;\n    width: 34px;\n    cursor: ".concat(e.muted ? "not-allowed" : "pointer", ";\n    text-align: center;\n    line-height: 34px;\n    border-right: 1px solid ").concat(e.theme.colors.border, ";\n    \n    &:hover {\n      background: ").concat(e.muted ? "inherit" : e.theme.colors.secondaryBgHover, ";\n    }\n  ")
    }

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

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

    function ye(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    function we(e, t) {
        if (null == e) return {};
        var n, r, o = function (e, t) {
            if (null == e) return {};
            var n, r, o = {}, i = Object.keys(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || (o[n] = e[n]);
            return o
        }(e, t);
        if (Object.getOwnPropertySymbols) {
            var i = Object.getOwnPropertySymbols(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || Object.prototype.propertyIsEnumerable.call(e, n) && (o[n] = e[n])
        }
        return o
    }

    function xe(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var ke,
        Oe = i.b.div(G || (G = xe(["\n#filerobot-image-editor-root & {\n  height: calc(100% - 187px);\n  text-align: center;\n  line-height: calc(100% - 187px);\n  padding: 10px;\n  position: relative;\n  flex-grow: 1;\n  overflow: auto;\n}\n\n  #filerobot-image-editor-root &:before {\n    content: '';\n    display: inline-block;\n    height: 100%;\n    vertical-align: middle;\n  }\n"]))),
        Se = Object(i.b)("div")(J || (J = xe(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  vertical-align: middle;\n  width: 100%;\n}\n"]))),
        je = i.b.div(ee || (ee = xe(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  max-height: 100%;\n  max-width: 100%;\n  height: 100%;\n  vertical-align: middle;\n  overflow: hidden;\n\n  ", ";\n\n   ", ";\n}\n\n  /* Limit image width to avoid overflow the container */\n\n  #filerobot-image-editor-root & img {\n    max-width: 100% !important; /* This rule is very important, please do not ignore this! */\n  }\n\n  #filerobot-image-editor-root & .filerobot-edit-canvas {\n    display: ", ";\n    max-height: 100%;\n    max-width: 100%;\n    vertical-align: middle;\n  }\n"])), (function (e) {
            return e.hideCanvas ? "\n  canvas {\n    position: relative;\n    left: -9999px;\n  }\n  " : "\n  &:before {\n    content: '';\n    display: inline-block;\n    height: 100%;\n    vertical-align: middle;\n  }"
        }), (function (e) {
            return e.isShowWatermark && "\ncanvas:after {\n    content: '';\n    position: absolute;\n    top: 0;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    background: red;\n    opacity: 0.5;\n  }"
        }), (function (e) {
            return e.hide ? "none" : "inline-block"
        })),
        Ce = Object(i.b)("canvas")(te || (te = xe(["\n#filerobot-image-editor-root & {\n  width: ", "px;\n  height: ", "px;\n  display: inline-block;\n  max-height: 100%;\n  max-width: 100%;\n  vertical-align: middle;\n  position: absolute;\n  top: 0;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  margin: auto;\n  outline: 0;\n}\n"])), (function (e) {
            return e.width || 0
        }), (function (e) {
            return e.height || 0
        })), _e = Object(i.b)(Object(o.forwardRef)((function (e, t) {
            e.width, e.height;
            var n = we(e, ["width", "height"]);
            return Object(K.jsx)("div", ve(ve({className: "focus-point"}, n), {}, {ref: t}))
        })))((function (e) {
            return {
                width: e.width,
                height: e.height,
                position: "absolute",
                margin: "auto",
                top: 0,
                bottom: 0,
                left: 0,
                right: 0,
                display: "inline-block",
                maxHeight: "100%",
                maxWidth: "100%",
                verticalAlign: "middle"
            }
        })), Ee = Object(i.b)((function (e) {
            e.image;
            var t = we(e, ["image"]);
            return Object(K.jsx)("div", ve({}, t))
        }))((function (e) {
            var t = e.image;
            return ve({
                position: "relative",
                height: "100%",
                width: "100%",
                cursor: "crosshair"
            }, t ? {backgroundImage: "url(".concat(t, ")"), backgroundSize: "contain"} : {})
        })), Pe = Object(i.b)((function (e) {
            e.x, e.y, e.visible;
            var t = we(e, ["x", "y", "visible"]);
            return Object(K.jsx)("span", ve({}, t))
        }))((function (e) {
            var t = e.x, n = void 0 === t ? 0 : t, r = e.y, o = void 0 === r ? 0 : r, i = e.visible;
            return {
                position: "absolute",
                top: o,
                left: n,
                visibility: void 0 === i || i ? "visible" : "hidden",
                display: "inline-block",
                width: 30,
                height: 30,
                transform: "translate(-50%, -50%)",
                fontFamily: "filerobot-image-editor-font !important",
                color: "#fff",
                fontSize: 30,
                "::before": {
                    content: "'\\e919'",
                    position: "absolute",
                    top: "50%",
                    left: 0,
                    textShadow: "0px 0px 3px #000000"
                }
            }
        })), Re = Object(i.b)((function (e) {
            e.visible;
            var t = we(e, ["visible"]);
            return Object(K.jsx)("img", ve({}, t))
        }))((function (e) {
            return {visibility: e.visible ? "visible" : "hidden", maxWidth: "100%", maxHeight: "100%"}
        })), De = i.b.canvas.attrs((function () {
            return {}
        }))(ne || (ne = xe(["\n#filerobot-image-editor-root & {\n  display: ", ";\n  max-height: 100%;\n  max-width: 100%;\n  vertical-align: middle;\n}\n"])), (function (e) {
            return e.hide ? "none" : "inline-block"
        }));
    var Me, Ae, Te, Ie, ze, Le, Be, Ne, Fe, Ue,
        He = i.b.button(ke || (Me = ["\n#filerobot-image-editor-root & {\n  text-transform: ", ";\n  display: ", ";\n  padding: ", ";\n  font-size: ", ";\n  line-height:  ", ";\n  min-width: ", ";\n  height: 32px;\n  font-weight: 400;\n  text-align: center;\n  white-space: nowrap;\n  vertical-align: middle;\n  touch-action: manipulation;\n  cursor: pointer;\n  user-select: none;\n  -webkit-user-select: none;\n     -moz-user-select: none;\n      -ms-user-select: none;\n          user-select: none;\n  -webkit-transition: all 0.2s ease-in-out;\n  -o-transition: all 0.2s ease-in-out;\n  transition: all 0.2s ease-in-out;\n  border-radius: ", ";\n  border: 0;\n  \n  ", ";\n  \n  ", ";\n}\n  \n  #filerobot-image-editor-root &:focus, #filerobot-image-editor-root &:hover {\n    text-decoration: none;\n  }\n  \n  #filerobot-image-editor-root &:focus {\n    outline: 0;\n    -webkit-box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.25);\n            box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.25);\n  }\n"], Ae || (Ae = Me.slice(0)), ke = Object.freeze(Object.defineProperties(Me, {raw: {value: Object.freeze(Ae)}}))), (function (e) {
            return e.tt || u.button && u.button.tt || "none"
        }), (function (e) {
            return e.hide ? "none" : "inline-block"
        }), (function (e) {
            return We(e, "button", "p")
        }), (function (e) {
            return We(e, "button", "fz")
        }), (function (e) {
            return We(e, "button", "lh")
        }), (function (e) {
            return e.fullSize ? "100%" : "62px"
        }), (function (e) {
            return e.borderRadius || We(e, "button", "br")
        }), (function (e) {
            return function (e) {
                return e.disabled ? "\n    cursor: not-allowed;\n    opacity: .65;\n  " : ""
            }(e)
        }), (function (e) {
            return function (e) {
                var t, n, r, o, i, a;
                return e.success ? "\n    color: #fff;\n    background-color: #28a745;\n    border-color: ##28a745;\n    \n    &:hover {\n      color: #fff;\n      background-color: #218838;\n      border-color: #1e7e34;\n    }\n    \n    &:focus {\n      -webkit-box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);\n              box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);\n    }\n    \n    :active {\n      color: #fff;\n      background-color: #1e7e34;\n      background-image: none;\n      border-color: #1c7430;\n    }\n    \n    ".concat(e.disabled ? "\n      background-color: #009345;\n      border-color: #009345;\n      \n      &:hover {\n        background-color: #009345;\n        border-color: #009345;\n      }\n    " : "", "\n    \n    ").concat(e.active ? "\n      color: #fff;\n      background-color: #1e7e34;\n      background-image: none;\n      border-color: #1c7430;\n    " : "", "\n  ") : e.primary ? "\n    color: #fff;\n    background-color: #0275d8;\n    border-color: #0275d8;\n    \n    &:hover {\n      color: #fff;\n      background-color: #025aa5;\n      border-color: #01549b;\n    }\n    \n    &:focus {\n      -webkit-box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.5);\n              box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.5);\n    }\n    \n    :active {\n      color: #fff;\n      background-color: #025aa5;\n      background-image: none;\n      border-color: #01549b;\n    }\n    \n    ".concat(e.disabled ? "\n      background-color: #0275d8;\n      border-color: #0275d8;\n      \n      &:hover {\n        background-color: #0275d8;\n        border-color: #0275d8;\n      }\n    " : "", "\n    \n    ").concat(e.active ? "\n      color: #fff;\n      background-color: #025aa5;\n      background-image: none;\n      border-color: #01549b;\n    " : "", "\n  ") : e.info ? "\n    color: #fff;\n    background-color: #5bc0de;\n    border-color: #5bc0de;\n    \n    &:hover {\n      color: #fff;\n      background-color: #31b0d5;\n      border-color: #2aabd2;\n    }\n    \n    &:focus {\n      -webkit-box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);\n              box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);\n    }\n    \n    :active {\n      color: #fff;\n      background-color: #31b0d5;\n      background-image: none;\n      border-color: #2aabd2;\n    }\n    \n    ".concat(e.disabled ? "\n      background-color: #5bc0de;\n      border-color: #5bc0de;\n      \n      &:hover {\n        background-color: #5bc0de;\n        border-color: #5bc0de;\n      }\n    " : "", "\n    \n    ").concat(e.active ? "\n      color: #fff;\n      background-color: #31b0d5;\n      background-image: none;\n      border-color: #2aabd2;\n    " : "", "\n  ") : e.warning ? "\n    color: #fff;\n    background-color: #f0ad4e;\n    border-color: #f0ad4e;\n    \n    &:hover {\n      color: #fff;\n      background-color: #ec971f;\n      border-color: #eb9316;\n    }\n    \n    &:focus {\n      -webkit-box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);\n              box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);\n    }\n    \n    :active {\n      color: #fff;\n      background-color: #ec971f;\n      background-image: none;\n      border-color: #eb9316;\n    }\n    \n    ".concat(e.disabled ? "\n      background-color: #f0ad4e;\n      border-color: #f0ad4e;\n      \n      &:hover {\n        background-color: #f0ad4e;\n        border-color: #f0ad4e;\n      }\n    " : "", "\n    \n    ").concat(e.active ? "\n      color: #fff;\n      background-color: #ec971f;\n      background-image: none;\n      border-color: #eb9316;\n    " : "", "\n  ") : e.danger ? "\n    color: #fff;\n    background-color: #d9534f;\n    border-color: #d9534f;\n    \n    &:hover {\n      color: #fff;\n      background-color: #c9302c;\n      border-color: #c12e2a;\n    }\n    \n    &:focus {\n      -webkit-box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);\n              box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);\n    }\n    \n    :active {\n      color: #fff;\n      background-color: #c9302c;\n      background-image: none;\n      border-color: #c12e2a;\n    }\n    \n    ".concat(e.disabled ? "\n      background-color: #d9534f;\n      border-color: #d9534f;\n      \n      &:hover {\n        background-color: #d9534f;\n        border-color: #d9534f;\n      }\n    " : "", "\n    \n    ").concat(e.active ? "\n      color: #fff;\n      background-color: #c9302c;\n      background-image: none;\n      border-color: #c12e2a;\n    " : "", "\n  ") : e.link ? "\n    font-weight: normal;\n    color: ".concat(Ve(e), "; \n    border-radius: 0;\n    background-color: transparent;\n    outline: none;\n    box-shadow: none;\n    \n    &:hover {\n      border-color: transparent;\n      color: ").concat(Ve(e, "over"), ";\n      background-color: transparent;\n      outline: none;\n      box-shadow: none;\n    }\n    \n    &:focus {\n      border-color: transparent;\n      outline: none;\n      box-shadow: none;\n    }\n    \n    :active {\n      background-color: transparent;\n      outline: none;\n      box-shadow: none;\n    }\n    \n    ").concat(e.disabled ? "\n      color: ".concat(Ve(e, "over"), ";\n      background-color: transparent;\n      \n      &:hover {\n        color: ").concat(Ve(e, "over"), ";\n        background-color: transparent;\n      }\n    ") : "", "\n    \n    ").concat(e.active ? "\n      background-color: transparent;\n      color: ".concat(Ve(e, "over"), ";\n    ") : "", "\n    \n    :disabled:focus, :disabled:hover {\n      text-decoration: none;\n      outline: none;\n      box-shadow: none;\n    }\n  ") : e.themeColor ? "\n    color: ".concat(Ye(e, "secondary", "text"), ";\n    background-color: ").concat((null === (t = e.theme.colors.button) || void 0 === t ? void 0 : t.primary) || Ye(e, "secondary"), ";\n    border-color: ").concat((null === (n = e.theme.colors.button) || void 0 === n ? void 0 : n.border) || Ye(e, "secondary", null, !0, !0), ";\n    \n    &:hover {\n      color: ").concat(Ye(e, "secondary", "text"), ";\n      background-color: ").concat((null === (r = e.theme.colors.button) || void 0 === r ? void 0 : r.hover) || Ye(e, "secondary", null, !0), ";\n      border-color: ").concat((null === (o = e.theme.colors.button) || void 0 === o ? void 0 : o.borderHover) || Ye(e, "secondary", null, !0, !0), ";\n    }\n    \n    &:focus {\n      -webkit-box-shadow: 0 0 0 2px ").concat(x(Ye(e, "secondary"), .5), ";\n              box-shadow: 0 0 0 2px ").concat(x(Ye(e, "secondary"), .5), ";\n    }\n    \n    :active {\n      color: ").concat(Ye(e, "secondary", "text"), ";\n      background-color: ").concat((null === (i = e.theme.colors.button) || void 0 === i ? void 0 : i.active) || Ye(e, "secondary", null, !0), ";\n      background-image: none;\n      border-color: ").concat((null === (a = e.theme.colors.button) || void 0 === a ? void 0 : a.borderActive) || Ye(e, "secondary", null, !0, !0), ";\n    }\n    \n    ").concat(e.disabled ? "\n      background-color: ".concat(x(Ye(e, "secondary"), .5), ";\n      border-color: ").concat(x(Ye(e, "secondary"), .5), ";\n      \n      &:hover {\n        background-color: ").concat(x(Ye(e, "secondary"), .5), ";\n        border-color: ").concat(x(Ye(e, "secondary"), .5), ";\n      }\n    ") : "", "\n    \n    ").concat(e.active ? "\n      color: ".concat(Ye(e, "secondary", "text"), ";\n      background-color: ").concat(Ye(e, "secondary", null, !0), ";\n      background-image: none;\n      border-color: ").concat(Ye(e, "secondary", null, !0, !0), ";\n    ") : "", "\n  ") : "\n    background: #fff;\n    color: #1e262c;\n    border-color: #B0B0B0;\n    \n    &:hover {\n      color: #1e262c;\n      background-color: #E1E2E3;\n      border-color: #B0B0B0;\n    }\n    \n    &:focus {\n      -webkit-box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);\n              box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);\n    }\n    \n    :active {\n      color: #1e262c;\n      background-color: #E1E2E3;\n      border-color: #B0B0B0;\n    }\n    \n    ".concat(e.disabled ? "\n      background-color: #fff;\n      border-color: #1e262c;\n      opacity: 0.6;\n      \n      &:hover {\n        background-color: #fff;\n        border-color: #1e262c;\n        opacity: 0.6;\n      }\n    " : "", "\n    \n    ").concat(e.active ? "\n      color: #1e262c;\n      background-color: #E1E2E3;\n      border-color: #B0B0B0;\n    " : "", "\n  ")
            }(e)
        }));

    function We(e, t, n) {
        var r = e.sm, o = e.lg, i = r ? "sm" : o ? "lg" : "md";
        return u[t] && u[t][i] && u[t][i][n]
    }

    function Ye(e, t) {
        var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "base",
            r = arguments.length > 3 ? arguments[3] : void 0, o = arguments.length > 4 ? arguments[4] : void 0,
            i = r ? u.colors.base : null;
        return u.colors[t][i ? i + (o ? "er" : "") : n]
    }

    function Ve(e) {
        var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "base",
            n = e.light ? "light" : e.dark ? "dark" : null, r = "base" !== t, o = u.colors.base;
        return n ? u.colors[n][r ? o : "base"] : u.colors.link[t]
    }

    function qe(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var Xe, $e, Ke, Qe, Ze, Ge, Je, et, tt, nt, rt, ot, it, at, st, lt,
        ct = i.b.div(Te || (Te = qe(["\n#filerobot-image-editor-root & {\n  background: ", ";\n}\n"])), (function (e) {
            return e.theme.colors.secondaryBg
        })),
        ut = i.b.div(Ie || (Ie = qe(["\n#filerobot-image-editor-root & {\n  border-bottom: 1px solid ", ";\n  background: ", ";\n  height: 46px;\n  line-height: 46px;\n  position: relative;\n}\n"])), (function (e) {
            return e.theme.colors.primaryBg
        }), (function (e) {
            return e.theme.colors.primaryBg
        })),
        ft = i.b.div(ze || (ze = qe(["\n#filerobot-image-editor-root & {\n  text-align: center;\n  text-transform: ", ";\n  color: ", ";\n}\n"])), (function (e) {
            return e.noCapitalStrs ? "none" : "capitalize"
        }), (function (e) {
            return e.theme.colors.text
        })),
        pt = i.b.div(Le || (Le = qe(["\n#filerobot-image-editor-root & {\n  position: absolute;\n  top: 7px;\n  left: 12px;\n  display: flex;\n  align-items: center;\n}\n"]))),
        dt = i.b.div(Be || (Be = qe(["\n#filerobot-image-editor-root & {\n  height: 32px;\n  display: flex;\n  align-items: center;\n}\n\n  #filerobot-image-editor-root & svg {\n    cursor: pointer;\n    padding: 9px 12px 9px 0;\n    width: 38px;\n    height: 32px;\n  }\n\n  #filerobot-image-editor-root & svg path {\n      fill: ", ";\n    }\n\n  #filerobot-image-editor-root & svg:hover {\n      filter: brightness(0.7);\n    }\n"])), (function (e) {
            return e.theme.colors.text
        })),
        ht = i.b.div(Ne || (Ne = qe(["\n#filerobot-image-editor-root & {\n  height: 100%;\n  width: 1px;\n  display: inline-block;\n  margin-right: 12px;\n  background: ", ";\n}\n"])), (function (e) {
            return e.theme.colors.border
        })),
        gt = Object(i.b)(He)(Fe || (Fe = qe(["\n#filerobot-image-editor-root & {\n  background: ", ";\n  border-color: ", ";\n  color: ", ";\n  text-transform: ", ";\n  min-width: 62px;\n  height: 32px;\n  margin-right: 8px;\n  border: 0;\n}\n\n  #filerobot-image-editor-root &:hover {\n    background: ", ";\n    border-color: ", ";\n    color: ", ";  \n  }\n"])), (function (e) {
            return e.theme.colors.primaryBg
        }), (function (e) {
            return e.theme.colors.primaryBg
        }), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.noCapitalStrs ? "none" : "capitalize"
        }), (function (e) {
            return function (e) {
                if (!e) return null;
                var t = p(-.1, e) || "";
                return t.toLowerCase() === e.toLowerCase() ? p(.25, e) : t
            }(e.theme.colors.primaryBg)
        }), (function (e) {
            return e.theme.colors.primaryBg
        }), (function (e) {
            return e.theme.colors.text
        })),
        mt = i.b.div(Ue || (Ue = qe(["\n#filerobot-image-editor-root & {\n  position: relative;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  height: 100px;\n  background: ", ";\n}\n  \n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    flex-direction: column;\n    height: initial\n}\n  }\n"])), (function (e) {
            return e.theme.colors.secondaryBg
        }));

    function bt(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var vt, yt, wt, xt, kt, Ot, St,
        jt = i.b.div(Xe || (Xe = bt(["\n#filerobot-image-editor-root & {\n  color: ", ";\n  display: flex;\n}\n  \n  @media (min-widthL 768px) {\n#filerobot-image-editor-root & {\n    overflow-x: auto;\n    overflow-y: hidden;\n    white-space: nowrap\n}\n  }\n  \n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    flex-direction: column\n}\n  }\n"])), (function (e) {
            return e.theme.colors.text
        })),
        Ct = Object(i.b)("div")($e || ($e = bt(["\n@media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    width: 100%;\n    overflow-x: scroll\n}\n  }\n"]))),
        _t = i.b.div(Ke || (Ke = bt(["\n#filerobot-image-editor-root & {\n  display: block;\n  color: ", ";\n  height: 30px;\n  line-height: 30px;\n}\n"])), (function (e) {
            return e.theme.colors.text
        })),
        Et = i.b.div(Qe || (Qe = bt(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  width: 100px;\n  padding-top: 10px;\n  text-align: center;\n}\n"]))),
        Pt = i.b.label(Ze || (Ze = bt(["\n#filerobot-image-editor-root & {\n  display: block;\n  margin-bottom: 5px;\n  line-height: 15px;\n}\n"]))),
        Rt = i.b.input.attrs((function (e) {
            return {type: e.type ? e.type : "text"}
        }))(Ge || (Ge = bt(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  width: ", ";\n  ", ";\n  height: 30px;\n  padding: 6px 12px;\n  font-size: 12px;\n  line-height: 30px;\n  color: ", ";\n  background: ", ";\n  border-radius: 2px;\n  transition: border-color 0.15s ease-in-out;\n  vertical-align: middle;\n  font-family: Roboto, sans-serif;\n  border: 1px solid ", ";\n  \n  ", ";\n}\n  \n  #filerobot-image-editor-root &:hover {\n    outline: none;\n  }\n  \n  #filerobot-image-editor-root &:focus {\n    outline: none;\n  }\n"])), (function (e) {
            return e.fullSize ? "100%" : e.theme.fieldWidth
        }), (function (e) {
            return !e.fullSize && "max-width: 400px;"
        }), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.primaryBg
        }), (function (e) {
            return e.theme.colors.border
        }), (function (e) {
            return "number" === e.type && "::-webkit-inner-spin-button {\n    -webkit-appearance: none;\n  }"
        })), Dt = Object(i.b)("input").attrs((function (e) {
            return {type: e.type ? e.type : "file"}
        }))(Je || (Je = bt(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  width: ", ";\n  height: 30px;\n  padding: 6px 12px;\n  font-size: 12px;\n  line-height: 1;\n  color: ", ";\n  background: ", ";\n  border-radius: 2px;\n  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n  vertical-align: middle;\n  border: 0px solid transparent;\n  font-family: Roboto, sans-serif;\n  border: 1px solid ", ";\n  overflow: hidden;\n  white-space: nowrap;\n  text-overflow: ellipsis;\n}\n  \n  #filerobot-image-editor-root &:hover {\n    outline: none;\n  }\n  \n  #filerobot-image-editor-root &:focus {\n    outline: none;\n  }\n"])), (function (e) {
            return e.fullSize ? "100%" : e.theme.fieldWidth
        }), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.primaryBg
        }), (function (e) {
            return e.theme.colors.border
        })),
        Mt = i.b.div(et || (et = bt(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  padding: 0 5px;\n}\n"]))),
        At = Object(i.b)(He)(tt || (tt = bt(["\n#filerobot-image-editor-root & {\n  padding: 0;\n}\n  \n  #filerobot-image-editor-root & > span {\n    color: ", " !important;\n   }\n"])), (function (e) {
            return e.active ? e.theme.colors.text : e.theme.colors.textMute
        })),
        Tt = i.b.span(nt || (nt = bt(["\n#filerobot-image-editor-root & {\n  cursor: pointer;\n  position: relative;\n  font-weight: bold;\n  font-size: ", ";\n\n  ", ";\n  ", ";\n  \n  color: ", ";\n}\n"])), (function (e) {
            return e.fz || "28px"
        }), (function (e) {
            return f(e)
        }), (function (e) {
            return k(e.active ? "ratio" : "no-ratio")
        }), (function (e) {
            return e.theme.textMuted
        })),
        It = i.b.div(rt || (rt = bt(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  vertical-align: top;\n  text-align: center;\n  padding: 0 20px;\n  cursor: pointer;\n  background: ", ";\n}\n"])), (function (e) {
            return e.active ? e.theme.colors.secondaryBgHover : "transparent"
        })),
        zt = i.b.div(ot || (ot = bt(["\n#filerobot-image-editor-root & {\n  padding: 15px 0;\n  height: 90px;\n  line-height: 100px;\n}\n"]))),
        Lt = i.b.div(it || (it = bt(["\n#filerobot-image-editor-root & {\n  height: ", "px;\n  border: 1px solid ", ";\n  width: ", "px;\n  margin: 0 auto;\n  display: inline-block;\n  vertical-align: middle;\n  ", ";\n}\n"])), (function (e) {
            return Ht(e.ratio)
        }), (function (e) {
            return e.theme.textColor
        }), (function (e) {
            return Ut(e.ratio)
        }), (function (e) {
            var t = e.radius;
            return t && "border-radius: ".concat(t, "%;")
        })),
        Bt = Object(i.b)("div")(at || (at = bt(["\n#filerobot-image-editor-root & {\n  height: 50px;\n  line-height: 50px;\n}\n"]))),
        Nt = Object(i.b)("div")(st || (st = bt(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  vertical-align: middle;\n  height: 50px;\n}\n"]))),
        Ft = i.b.div(lt || (lt = bt(["\n#filerobot-image-editor-root & {\n  height: 20px;\n  line-height: 20px;\n}\n"]))),
        Ut = function (e) {
            var t = 50 * e;
            return t > 200 && (t = 200), t
        }, Ht = function (e) {
            var t = 50;
            return 50 * e > 200 && (t = 200 / e), t
        };

    function Wt(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var Yt, Vt, qt, Xt, $t, Kt,
        Qt = i.b.div(vt || (vt = Wt(["\n#filerobot-image-editor-root & {\n  color: ", ";\n  text-align: center;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n  \n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    flex-direction: column\n}\n  }\n"])), (function (e) {
            return e.theme.colors.text
        })),
        Zt = i.b.div(yt || (yt = Wt(["\n#filerobot-image-editor-root & {\n  display: flex;\n  width: 100%;\n  justify-content: center;\n  align-items: flex-end;\n  padding: 8px 0 20px;\n  margin: 0 auto;\n}\n\n  @media (min-width: 768px) {\n#filerobot-image-editor-root & {\n    width: 500px;\n    margin: 0\n}\n  }\n"]))),
        Gt = Object(i.b)("div")(wt || (wt = Wt(["\n#filerobot-image-editor-root & button {\n    min-width: 240px;\n  }\n\n    @media(max-width: 768px) {\n#filerobot-image-editor-root & button {\n      min-width: 174px\n  }\n    }\n"]))),
        Jt = Object(i.b)("p")(xt || (xt = Wt(["\n#filerobot-image-editor-root & {\n  color: ", ";\n  font-size: 14px;\n  max-width: 600px;\n  line-height: 1.4;\n  margin: 0 auto;\n  background: ", ";\n  border-radius: 4px;\n  padding: 15px 15px 15px 55px;\n  position: relative;\n  font-weight: normal;\n  text-align: left;\n}\n  \n  #filerobot-image-editor-root &:before {\n    content: '\\e917';\n    font-family: filerobot-image-editor-font;\n    position: absolute;\n    font-size: 20px;\n    line-height: 20px;\n    left: 20px;\n    top: 50%;\n    margin-top: -10px;\n  }\n"], ["\n#filerobot-image-editor-root & {\n  color: ", ";\n  font-size: 14px;\n  max-width: 600px;\n  line-height: 1.4;\n  margin: 0 auto;\n  background: ", ";\n  border-radius: 4px;\n  padding: 15px 15px 15px 55px;\n  position: relative;\n  font-weight: normal;\n  text-align: left;\n}\n  \n  #filerobot-image-editor-root &:before {\n    content: '\\\\e917';\n    font-family: filerobot-image-editor-font;\n    position: absolute;\n    font-size: 20px;\n    line-height: 20px;\n    left: 20px;\n    top: 50%;\n    margin-top: -10px;\n  }\n"])), (function (e) {
            return e.theme.colors.textWarn
        }), (function (e) {
            return e.theme.colors.secondaryBg
        })),
        en = Object(i.b)("div")(kt || (kt = Wt(["\n#filerobot-image-editor-root & {\n  max-width: 600px;\n  margin: 15px auto;\n  background: ", ";\n  border-radius: 4px;\n  padding: 2px;\n}\n  \n  #filerobot-image-editor-root & h4 {\n    line-height: 1.4;\n    margin: 0;\n    font-size: 16px;\n    color: ", ";\n  }\n"])), (function (e) {
            return e.theme.colors.secondaryBg
        }), (function (e) {
            return e.theme.colors.text
        })),
        tn = Object(i.b)("div")(Ot || (Ot = Wt(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n}\n"]))),
        nn = Object(i.b)("div")(St || (St = Wt(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  background: ", ";\n  padding: 15px;\n  margin: 5px;\n  border-radius: 4px;\n  cursor: pointer;\n}\n  \n  #filerobot-image-editor-root &:hover {\n    background-color: ", ";\n  }\n"])), (function (e) {
            return e.theme.colors.primaryBg
        }), (function (e) {
            return e.theme.colors.primaryBgHover
        }));

    function rn(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var on,
        an = i.b.div(Yt || (Yt = rn(["\n#filerobot-image-editor-root & {\n  color: ", ";\n  text-align: center;\n}\n  \n  #filerobot-image-editor-root & svg {\n    margin-top: -7px;\n    width: 750px;\n  }\n  \n  #filerobot-image-editor-root & svg text {\n      font-size: 2px;\n    }\n  \n  #filerobot-image-editor-root & .image-editor-range-wrapper {\n    width: 280px;\n    padding: 0;\n    margin: 12px auto 0;\n  }\n  \n  #filerobot-image-editor-root & .image-editor-range-wrapper input#range {\n      background: none;\n      width: 280px;\n    }\n  \n  #filerobot-image-editor-root & .image-editor-range-wrapper input#range::-webkit-slider-thumb {\n        -webkit-appearance: none;\n        width: 9px;\n        height: 18px;\n        border-radius: 50%;\n        background: ", ";\n      }\n  \n  #filerobot-image-editor-root & .image-editor-range-wrapper input#range::-moz-range-thumb {\n        border: none;\n        width: 9px;\n        height: 18px;\n        border-radius: 50%;\n        background: ", ";\n        cursor: pointer;\n      }\n  \n  #filerobot-image-editor-root & .image-editor-range-wrapper label {\n      display: none;\n    }\n  \n  #filerobot-image-editor-root & .image-editor-range-wrapper :after {\n      display: none;\n    }\n  \n  @media (max-width: 768px) {\n    #filerobot-image-editor-root & svg {\n      width: 100%;\n    }\n  }\n"])), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.text
        })),
        sn = i.b.div(Vt || (Vt = rn(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  width: 100%;\n}\n"]))),
        ln = i.b.div(qt || (qt = rn(["\n#filerobot-image-editor-root & {\n  margin-top: 10px;\n  width: 100%;\n}\n  \n  #filerobot-image-editor-root & button {\n    text-transform: none;\n    font-size: 12px;\n    min-width: 142px;\n    margin-right: 5px;\n  }\n  \n  #filerobot-image-editor-root & button:focus,  #filerobot-image-editor-root & button:active {\n    outline: none !important;\n    box-shadow: none !important;\n  }\n"]))),
        cn = Object(i.b)("div")(Xt || (Xt = rn(["\n#filerobot-image-editor-root & {\n  display: flex;\n  width: 100%;\n  flex-wrap: wrap;\n  justify-content: center;\n}\n"]))),
        un = i.b.span($t || ($t = rn(["\n#filerobot-image-editor-root & {\n  ", ";\n  ", ";\n  height: 16px;\n  font-size: 16px;\n  margin-top: -4px;\n  display: inline-block;\n  vertical-align: middle;\n  color: ", ";\n  margin-right: 5px;\n}\n"])), (function (e) {
            return f(e)
        }), (function (e) {
            return k(e.name)
        }), (function (e) {
            return e.theme.colors.text
        })),
        fn = Object(i.b)(gt)(Kt || (Kt = rn(["\n@media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    width: 50%;\n    margin-right: 0 !important\n}\n  }\n"])));
    var pn, dn, hn = i.b.div(on || (on = function (e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }(["\n#filerobot-image-editor-root & {\n  color: ", ";\n  text-align: center;\n  display: flex;\n  justify-content: center;\n  width: fit-content;\n  margin: 0 auto;\n}\n\n  #filerobot-image-editor-root & div {\n    margin-left: 10px;\n  }\n\n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    flex-wrap: wrap\n}\n    \n    #filerobot-image-editor-root & .image-editor-range-wrapper {\n      width: 50%;\n    }\n      \n      #filerobot-image-editor-root & .image-editor-range-wrapper input {\n        width: 100% !important;\n      }\n  }\n"])), (function (e) {
        return e.theme.colors.text
    }));

    function gn(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var mn,
        bn = i.b.div(pn || (pn = gn(["\n#filerobot-image-editor-root & {\n  position: absolute;\n  z-index: 999;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  cursor: wait;\n}\n"]))),
        vn = Object(i.b)("div")(dn || (dn = gn(["\n#filerobot-image-editor-root & {\n  position: absolute;\n  z-index: 999;\n  top: 36px;\n  left: 0;\n  right: 0;\n  height: 104px;\n  cursor: not-allowed;\n}\n"])));
    var yn, wn, xn = i.b.span.attrs((function () {
        return {role: "button"}
    }))(mn || (mn = function (e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }(["\n#filerobot-image-editor-root & {\n  cursor: pointer;\n  position: absolute;\n  font-weight: normal;\n  top: ", ";\n  right: ", ";\n  left: ", ";\n  bottom: ", ";\n  font-size: ", ";\n  z-index: 10;\n  speak: none;\n  color: ", ";\n  font-family: 'filerobot-image-editor-font' !important;\n  font-style: normal;\n  font-variant: normal;\n  text-transform: none;\n\n  /* Better Font Rendering =========== */\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n}\n  \n  #filerobot-image-editor-root &:hover {\n    filter: brightness(0.7);\n  }\n  \n  #filerobot-image-editor-root &:before {\n    content: '\\e90c';\n  }\n"], ["\n#filerobot-image-editor-root & {\n  cursor: pointer;\n  position: absolute;\n  font-weight: normal;\n  top: ", ";\n  right: ", ";\n  left: ", ";\n  bottom: ", ";\n  font-size: ", ";\n  z-index: 10;\n  speak: none;\n  color: ", ";\n  font-family: 'filerobot-image-editor-font' !important;\n  font-style: normal;\n  font-variant: normal;\n  text-transform: none;\n\n  /* Better Font Rendering =========== */\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n}\n  \n  #filerobot-image-editor-root &:hover {\n    filter: brightness(0.7);\n  }\n  \n  #filerobot-image-editor-root &:before {\n    content: '\\\\e90c';\n  }\n"])), (function (e) {
        return e.t || 0
    }), (function (e) {
        return e.r || "12px"
    }), (function (e) {
        return e.l
    }), (function (e) {
        return e.b || "auto"
    }), (function (e) {
        return e.fz || "22px"
    }), (function (e) {
        return e.theme.colors.text
    }));

    function kn(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var On, Sn, jn, Cn, _n, En, Pn, Rn, Dn, Mn, An,
        Tn = i.b.div(yn || (yn = kn(["\n#filerobot-image-editor-root & {\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  overflow: hidden;\n  position: ", ";\n  background: ", " !important;\n  opacity: ", " !important;\n  z-index: 1042;\n}\n"])), (function (e) {
            return e.fullScreen ? "fixed" : "absolute"
        }), (function (e) {
            return e.overlay ? "rgba(10,10,10,0.26)" : "transparent"
        }), (function (e) {
            return e.overlay ? "0.25" : "0"
        })),
        In = Object(i.b)("div")(wn || (wn = kn(["\n#filerobot-image-editor-root & {\n    position: absolute;\n    top: 0;\n    bottom: 0;\n    left: 0;\n    right: 0;\n    width: 200px;\n    height: 200px;\n    margin: auto;\n    padding: 40px;\n    border-radius: 50%;\n    background: ", ";\n}\n    \n    #filerobot-image-editor-root & .svg-spin-icon {\n      fill: ", ";\n    }\n    \n    #filerobot-image-editor-root & p {\n      color: ", ";\n    }\n"])), (function (e) {
            return e.theme.colors.secondaryBgOpacity
        }), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.text
        })), zn = function (e) {
            return e.show ? Object(K.jsxs)(o.Fragment, {
                children: [Object(K.jsx)(Tn, {fullScreen: e.fullScreen, overlay: e.overlay}), Object(K.jsxs)(In, {
                    children: [Object(K.jsxs)("svg", {
                        id: "Layer_1",
                        x: "0px",
                        y: "0px",
                        viewBox: "0 0 150 150",
                        style: {enableBackground: "new 0 0 150 150"},
                        children: [Object(K.jsx)("path", {
                            className: "svg-spin-icon",
                            d: "M74.9,14.8c-12.2,0-24.3,0-36.5,0c-2.4,0-3.9-1-4.8-3.1c-1.3-3-1.2-6,0.6-8.9c0.8-1.3,2-2,3.5-2\r c1.1,0,2.3,0,3.4,0c23.3,0,46.7,0,70-0.1c3.9,0,5.3,1.9,6,4.7c0.5,2.1,0.4,4.2-0.5,6.3c-0.9,2.2-2.5,3.1-4.8,3c-2.9,0-5.7,0-8.6,0\r C93.9,14.8,84.4,14.8,74.9,14.8z"
                        }), Object(K.jsx)("path", {
                            className: "svg-spin-icon",
                            d: "M75.1,118.1c12,0,24,0,35.9,0c4,0,5.9,1.7,6.3,5.7c0.1,1.4,0,2.9-0.3,4.2c-0.7,2.9-2.4,4.1-5.3,4.1\r c-24.1,0-48.3,0-72.4,0c-3.7,0-5.4-1.2-6.3-5.3c-0.4-2-0.1-3.9,0.7-5.7c0.9-2,2.4-3.1,4.7-3C50.6,118.1,62.9,118.1,75.1,118.1z"
                        }), Object(K.jsx)("path", {
                            className: "svg-spin-icon",
                            d: "M75.3,76.3c0.2,0.4,3.1,9.3,7.2,14.1c3.9,4.7,8.9,8.5,13,12.5c3.2,3.2,5.4,7,6.8,11.2c0.5,1.6,0.3,1.9-1.4,1.9\r c-17.3,0-34.5,0-51.8,0c-1.7,0-1.9-0.2-1.3-1.8c1.8-5.5,5.2-10,9.4-13.9c3.5-3.3,7.7-6.1,10.6-9.9c3.5-4.7,6.8-13.3,7.1-14.1\r C75.1,76.3,75.2,76.3,75.3,76.3z"
                        }), Object(K.jsx)("path", {
                            className: "svg-spin-icon",
                            d: "M45.5,23.6c0,3.8-0.1,7.6,1.2,11.3c1,2.9,2.8,5.2,4.9,7.3c5,5.3,10.2,10.5,15.2,15.8c1.1,1.2,2,2.6,3.1,3.9\r c2,2.5,2.2,7.6-0.2,10.5c-1.8,2.2-3.6,4.3-5.5,6.4C59.5,84,54.7,89.1,50,94.2c-3.1,3.4-4.4,7.5-4.5,12c0,2.8-0.1,5.6,0,8.4\r c0,1-0.3,1.4-1.4,1.4c-1.7,0-2.3,0-3.7,0c-0.9,0-1.3-0.4-1.3-1.3c0-5-0.3-10,0.8-14.9c0.8-3.5,2.5-6.6,4.8-9.3\r c3.6-4.2,7.5-8.2,11.3-12.3c1.7-1.8,3.3-3.7,4.9-5.5c0.9-1,1.9-2,2.7-3c1.8-2.3,1.6-4.3-0.4-6.4c-5.2-5.4-10.4-11-15.8-16.3\r c-5.7-5.7-8.4-12.4-8.3-20.4c0-2.9,0-5.7,0-8.6c0-1.1,0.4-1.6,1.5-1.5c1.3,0,2.6,0,3.8,0c0.8,0,1.1,0.3,1.1,1.2\r C45.5,19.8,45.5,21.7,45.5,23.6z"
                        }), Object(K.jsx)("path", {
                            className: "svg-spin-icon",
                            d: "M109.9,35.9c-0.6,2.7-2.1,5.3-3.9,7.5c-3.5,4.2-7.5,8.1-11.2,12.1c-3,3.2-5.9,6.5-8.8,9.7\r c-0.9,1-0.9,2.1-0.2,3.1c1.2,1.7,2.5,3.3,3.8,4.8c1.5,1.8,3,3.6,4.6,5.3c3.4,3.6,6.8,7.1,10.1,10.7c4.7,5.1,6.8,11.2,6.9,18.1\r c0,2.4,0,5,0,7.5c0,1.3-0.3,1.5-1.6,1.5c-1.3,0-2.1,0-3.3,0c-1.1,0-1.5-0.4-1.5-1.5c0-3.4-0.2-6.7-0.3-10.1\r c-0.1-4.1-1.9-7.5-4.5-10.5c-3.3-3.8-6.8-7.4-10.2-11.1c-3.3-3.5-6.9-6.6-9.3-10.8c-0.8-1.5-1.4-3.2-1.7-4.9c-0.4-2.1,0.7-4,1.9-5.5\r c3.1-3.8,6.5-7.4,9.8-11.1c2.9-3.2,6-6.2,9-9.3c3.5-3.6,5.1-8,5.2-13c0-3.4,0.1-6.7,0.1-10.1c0-1.1,0.3-1.5,1.3-1.4\r c1.2,0,2.4,0,3.6,0c1.2,0,1.6,0.5,1.6,1.6c-0.1,1.6,0,3.1,0,4.7C111.4,23,110.9,31.7,109.9,35.9z"
                        }), Object(K.jsx)("path", {
                            className: "svg-spin-icon",
                            d: "M74.8,67.9c-0.2-1.3-1.1-5.7-1.5-7C71.4,54,59.7,44.3,54.3,39c-0.7-0.7-1.3-1.5-1.8-2.5\r c7.1,3.4,14.4,6.1,22.6,6.1c8.2,0,15.5-2.6,22.4-6.2c0.1,0.1,0.2,0.2,0.3,0.3c-0.5,0.6-0.9,1.2-1.4,1.8c-4.5,4.5-18.7,15.5-20,22.4\r c-0.2,0.8-1,6.2-1.2,7C75.1,67.9,75,67.9,74.8,67.9z"
                        }), Object(K.jsx)("g", {})]
                    }), Object(K.jsx)("p", {style: {textAlign: "center"}, children: e.label})]
                })]
            }) : null
        };

    function Ln(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var Bn, Nn, Fn, Un, Hn,
        Wn = i.b.div(On || (On = Ln(["\n#filerobot-image-editor-root & {\n  position: relative;\n  color: ", ";\n  text-align: left;\n  white-space: normal;\n  width: fit-content;\n  margin: 0 auto;\n}\n  \n  #filerobot-image-editor-root & .image-editor-range {\n    display: inline-block;\n    padding: 5px;\n    vertical-align: middle;\n  }\n  \n  #filerobot-image-editor-root & .image-editor-range :after {\n      display: none;\n    }\n  \n  #filerobot-image-editor-root & .image-editor-range label {\n      display: none;\n    }\n  \n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    display: flex;\n    flex-direction: column;\n    align-items: center\n}\n    \n    #filerobot-image-editor-root & .image-editor-range {\n      width: 100%;\n    }\n      \n      #filerobot-image-editor-root & .image-editor-range input {\n        width: 100% !important;\n      }\n  }\n"])), (function (e) {
            return e.theme.colors.text
        })),
        Yn = Object(i.b)("div")(Sn || (Sn = Ln(["\n#filerobot-image-editor-root & {\n  padding: 10px;\n}\n  \n  #filerobot-image-editor-root & label {\n    min-width: 120px;\n    display: inline-block;\n    vertical-align: middle;\n    margin: 0;\n  }\n  \n  #filerobot-image-editor-root & input {\n    width: 100%;\n  }\n"]))),
        Vn = Object(i.b)("div")(jn || (jn = Ln(["\n#filerobot-image-editor-root & {\n  ", ";\n}\n"])), (function (e) {
            return "right" === e.switcherPosition ? ".cloudimage-url-generator-switch {\n        margin-left: 100px;\n        margin-top: -6px;\n        \n        label {\n          min-width: auto;\n        }\n        \n        @media (max-width: 768px) {\n          margin-left: 4px;\n        }\n      }" : "padding: 10px;"
        })),
        qn = Object(i.b)("div")(Cn || (Cn = Ln(["\n#filerobot-image-editor-root & {\n  display: inline;\n  vertical-align: middle;\n  padding: 10px;\n}\n\n  #filerobot-image-editor-root & label {\n    min-width: 120px;\n    display: inline-block;\n    vertical-align: middle;\n  }\n"]))),
        Xn = Object(i.b)("div")(_n || (_n = Ln(["\n#filerobot-image-editor-root & {\n  width: calc(100% - 200px);\n  display: inline-block;\n  vertical-align: top;\n  padding: 0 40px;\n}\n  \n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    width: 100%;\n    padding: 0\n}\n  }\n"]))),
        $n = Object(i.b)("div")(En || (En = Ln(["\n#filerobot-image-editor-root & {\n  width: 100px;\n  padding: 5px;\n  display: inline-block;\n  font-size: 0;\n}\n  \n  #filerobot-image-editor-root & div:nth-child(1) {\n    border-radius: 4px 0 0 0;\n  }\n  \n  #filerobot-image-editor-root & div:nth-child(3) {\n    border-radius: 0 4px 0 0;\n  }\n  \n  #filerobot-image-editor-root & div:nth-child(7) {\n    border-radius: 0 0 0 4px;\n  }\n  \n  #filerobot-image-editor-root & div:nth-child(9) {\n    border-radius: 0 0 4px 0;\n  }\n"]))),
        Kn = Object(i.b)("div")(Pn || (Pn = Ln(["\n#filerobot-image-editor-root & {\n  width: 100px;\n  padding: 10px;\n  display: inline-block;\n  vertical-align: top;\n}\n  \n  /* The container */\n  \n  #filerobot-image-editor-root & label {\n    display: block;\n    position: relative;\n    line-height: 12px;\n    padding-left: 15px;\n    margin-bottom: 12px;\n    cursor: pointer;\n    user-select: none;\n  }\n  \n  /* Hide the browser's default radio button */\n  \n  #filerobot-image-editor-root & label input {\n    position: absolute;\n    opacity: 0;\n    cursor: pointer;\n  }\n  \n  /* Create a custom radio button */\n  \n  #filerobot-image-editor-root & span {\n    position: absolute;\n    top: 0;\n    left: 0;\n    height: 10px;\n    width: 10px;\n    background-color: ", ";\n    border-radius: 50%;\n  }\n  \n  /* On mouse-over, add a grey background color */\n  \n  #filerobot-image-editor-root & label:hover input ~ span {\n    /* background-color: #ccc; */\n  }\n  \n  /* When the radio button is checked, add a blue background */\n  \n  #filerobot-image-editor-root & label input:checked ~ span {\n    background-color: ", ";\n  }\n  \n  #filerobot-image-editor-root & label input:checked ~ span:after {\n    background-color: ", ';\n  }\n  \n  /* Create the indicator (the dot/circle - hidden when not checked) */\n  \n  #filerobot-image-editor-root & span:after {\n    content: "";\n    position: absolute;\n    display: none;\n  }\n  \n  /* Show the indicator (dot/circle) when checked */\n  \n  #filerobot-image-editor-root & label input:checked ~ span:after {\n    display: block;\n  }\n  \n  /* Style the indicator (dot/circle) */\n  \n  #filerobot-image-editor-root & label span:after {\n    top: 3px;\n    left: 2px;\n    width: 6px;\n    height: 5px;\n    border-radius: 50%;\n    background: ', ";\n  }\n  \n  @media (max-width: 768px) {\n#filerobot-image-editor-root & {\n    width: 100%\n}\n    \n    #filerobot-image-editor-root & label {\n      display: inline-block;\n      margin-right: 10px;\n    }\n  }\n"])), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.accent
        }), (function (e) {
            return e.theme.colors.text
        })),
        Qn = Object(i.b)("div")(Rn || (Rn = Ln(["\n#filerobot-image-editor-root & {\n  width: 30px;\n  height: 30px;\n  display: inline-block;\n  vertical-align: top;\n  border: 1px solid ", ";\n  background: ", ";\n  cursor: ", ";\n  \n  ", ";\n}\n"])), (function (e) {
            return e.theme.colors.secondaryBgHover
        }), (function (e) {
            var t;
            return e.clickable ? e.active ? (null === (t = e.theme.colors.button) || void 0 === t ? void 0 : t.primary) || e.theme.colors.primaryBg : e.theme.colors.accent : e.theme.colors.disabledBg
        }), (function (e) {
            return e.clickable ? "pointer" : "not-allowed"
        }), (function (e) {
            if (0 !== e.clickable && !e.active) return "\n        &:hover {\n          background: ".concat(e.theme.colors.primaryBg, ";\n        }\n      ")
        })),
        Zn = (Object(i.b)("div")(Dn || (Dn = Ln(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  vertical-align: middle;\n  margin-left: 20px;\n  cursor: pointer;\n}\n"]))), Object(i.b)("div")(Mn || (Mn = Ln(["\n#filerobot-image-editor-root & {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  line-height: 100px;\n  background: ", ";\n}\n"])), (function (e) {
            return e.theme.colors.secondaryBg
        }))),
        Gn = Object(i.b)("div")(An || (An = Ln(["\n#filerobot-image-editor-root & {\n  width: 200px;\n  height: 70px;\n  display: inline-block;\n  vertical-align: middle;\n  background: ", " url(", ") 50% 50% / contain no-repeat; \n  margin: 10px;\n  padding: 20px;\n  border-radius: 4px;\n  cursor: pointer;\n}\n  \n  #filerobot-image-editor-root &:hover {\n    background-color: ", ";\n  }\n"])), (function (e) {
            return e.theme.colors.primaryBgHover
        }), (function (e) {
            return e.src
        }), (function (e) {
            return e.theme.colors.secondaryBgHover
        }));

    function Jn(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var er = i.b.div(Bn || (Bn = Jn(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  margin-left: 1px;\n}\n"]))),
        tr = Object(i.b)(He)(Nn || (Nn = Jn(["\n#filerobot-image-editor-root & {\n  height: 32px;\n  width: 32px;\n  min-width: 32px;\n  border-radius: 0px 2px 2px 0px;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n}\n\n  #filerobot-image-editor-root & i {\n    border: solid #fff;\n    border-width: 0 2px 2px 0;\n    display: inline-block;\n    padding: 2px;\n    transform: rotate(45deg);\n  }\n"]))),
        nr = i.b.div(Fn || (Fn = Jn(["\n#filerobot-image-editor-root & {\n  position: absolute;\n  top: 31px;\n  left: 0;\n  min-width: 146px;\n  z-index: 1111;\n  box-shadow: 0 2px 4px rgba(77, 78, 78, 0.25);\n  border-radius: 0 0 2px 2px;\n  background: ", ";\n  color: ", ";\n}\n"])), (function (e) {
            var t, n, r;
            return (null === (t = e.theme.colors) || void 0 === t || null === (n = t.button) || void 0 === n ? void 0 : n.secondary) || (null === (r = e.theme.colors) || void 0 === r ? void 0 : r.accent) || "#ccc"
        }), (function (e) {
            return e.theme.colors.text || "#fff"
        })),
        rr = i.b.div(Un || (Un = Jn(["\n#filerobot-image-editor-root & {\n  cursor: pointer;\n  font-size: 12px;\n  line-height: 14px;\n  padding: 9px 12px;\n  text-align: center;\n}\n\n  #filerobot-image-editor-root &:hover {\n    backdrop-filter: brightness(0.95);\n  }\n"]))),
        or = i.b.div(Hn || (Hn = Jn(["\n#filerobot-image-editor-root & {\n  position: fixed;\n  top: 0;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  z-index: 1110;\n}\n"]))),
        ir = "filerobot-image-editor-modal", ar = "filerobot-image-edit-box",
        sr = ["adjust", "effects", "filters", "rotate", "crop", "resize", "watermark", "shapes", "image", "text"],
        lr = ["edge_enhance", "emboss", "grungy", "hazy", "lomo", "radial_blur", "sin_city", "tilt_shift"],
        cr = ["cross_process", "glow_sun", "jarques", "love", "old_boot", "orange_peel", "pin_hole", "sepia", "sun_rise", "vintage"],
        ur = ["crop", "resize", "rotate", "watermark", "focus_point"],
        fr = ["left-top", "center-top", "right-top", "left-center", "center", "right-center", "left-bottom", "center-bottom", "right-bottom"],
        pr = {
            corners: [1, 0, 1, 0, 0, 0, 1, 0, 1],
            star: [0, 1, 0, 1, 1, 1, 0, 1, 0],
            center: [0, 0, 0, 0, 1, 0, 0, 0, 0],
            "top-row": [1, 1, 1, 0, 0, 0, 0, 0, 0],
            "center-row": [0, 0, 0, 1, 1, 1, 0, 0, 0],
            "bottom-row": [0, 0, 0, 0, 0, 0, 1, 1, 1]
        }, dr = {opacity: .7, position: "center", url: "", applyByDefault: !1},
        hr = [{label: "Arial", value: "Arial"}, {label: "Tahoma", value: "Tahoma"}, {
            label: "Times New Roman",
            value: "Times New Roman"
        }, {label: "Courier", value: "Courier"}, {label: "Courier New", value: "Courier New"}, {
            label: "Verdana",
            value: "Verdana"
        }, {label: "Georgia", value: "Georgia"}, {label: "Palatino", value: "Palatino"}, {
            label: "Garamond",
            value: "Garamond"
        }, {label: "Bookman", value: "Bookman"}, {label: "Comic Sans MS", value: "Comic Sans MS"}, {
            label: "Candara",
            value: "Candara"
        }, {label: "Impact", value: "Impact"}],
        gr = [{label: "Arial", value: "Arial"}, {label: "Arial Bold", value: "Arial-Bold"}, {
            label: "Arial Black",
            value: "Arial-Black"
        }, {label: "AvantGarde Book", value: "AvantGarde-Book"}, {
            label: "Bitstream Charter",
            value: "Bitstream-Charter"
        }, {label: "Bitstream Charter Bold", value: "Bitstream-Charter-Bold"}, {
            label: "Bookman Demi",
            value: "Bookman-Demi"
        }, {label: "Comic Sans MS", value: "Comic-Sans-MS"}, {
            label: "Courier",
            value: "Courier"
        }, {label: "Courier Bold", value: "Courier-Bold"}, {
            label: "Courier New",
            value: "Courier-New\t"
        }, {label: "Courier New Bold", value: "Courier-New-bold"}, {
            label: "DejaVu Sans",
            value: "DejaVu-Sans"
        }, {label: "DejaVu Sans Bold", value: "DejaVu-Sans-bold"}, {
            label: "Dingbats",
            value: "Dingbats"
        }, {label: "fixed", value: "fixed"}, {label: "FreeMono", value: "FreeMono"}, {
            label: "FreeMono Bold",
            value: "FreeMono-Bold"
        }, {label: "FreeSans", value: "FreeSans-Bold"}, {label: "Halvetica", value: "Halvetica"}, {
            label: "Georgia",
            value: "Georgia"
        }, {label: "Impact", value: "Impact"}, {label: "Noto mono", value: "Noto-Mono"}], mr = "rect", br = "square",
        vr = "circle", yr = "image", wr = "text", xr = {
            hideCloudimageSwitcher: !0,
            processWithCloudimage: !1,
            uploadWithCloudimageLink: !1,
            elementId: null,
            isLowQualityPreview: !0,
            reduceBeforeEdit: {mode: "manual", widthLimit: 2e3, heightLimit: 2e3},
            cropBeforeEdit: null,
            cropPresets: [{name: "original", value: 0}, {name: "square", value: 1}, {
                name: "banner",
                value: 7.8
            }, {name: "round", value: 1, radius: 50}, {name: "5 : 4", value: 1.25}, {
                name: "4 : 3",
                value: 1.33333
            }, {name: "6 : 4", value: 1.5}, {name: "16 : 9", value: 1.7777}],
            resizePresets: [{name: "big square", width: 600, height: 600, ratio: 1}, {
                name: "middle square",
                width: 400,
                height: 400,
                ratio: 1
            }, {name: "small square", width: 200, height: 200, ratio: 1}, {
                name: "small size",
                width: 1200,
                height: 960,
                ratio: 1.25
            }, {name: "better quality", width: 1920, height: 1536, ratio: 1.25}, {
                name: "small size",
                width: 1200,
                height: 900,
                ratio: 1.33333
            }, {name: "better quality", width: 1920, height: 1440, ratio: 1.33333}, {
                name: "small size",
                width: 1200,
                height: 800,
                ratio: 1.5
            }, {name: "better quality", width: 1920, height: 1280, ratio: 1.5}, {
                name: "small size",
                width: 1200,
                height: 675,
                ratio: 1.7777
            }, {name: "better quality", width: 1920, height: 1080, ratio: 1.7777}, {
                name: "small banner",
                width: 468,
                height: 60,
                ratio: 7.8
            }, {name: "big banner", width: 936, height: 120, ratio: 7.8}]
        }, kr = "close-button-clicked", Or = "toolbar-cancel-button-clicked", Sr = "esc-key-pressed",
        jr = "modal-overlay-clicked", Cr = "image-edits-completed", _r = "image-downloaded",
        Er = "image-uploaded-filerobot", Pr = "image-uploaded-cloudimage", Rr = "image-uploading-fail-filerobot",
        Dr = function (e) {
            var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],
                n = document.querySelectorAll("#".concat(e || ir)), r = n[n.length - 1];
            r && (document.fullscreenElement = document.fullscreenElement || document.mozFullscreenElement || document.msFullscreenElement || document.webkitFullscreenDocument, document.exitFullscreen = document.exitFullscreen || document.mozExitFullscreen || document.msExitFullscreen || document.webkitExitFullscreen, r.requestFullscreen = r.requestFullscreen || r.mozRequestFullscreen || r.msRequestFullscreen || r.webkitRequestFullscreen, document.fullscreenElement || t ? document.exitFullscreen && document.fullscreenElement && document.exitFullscreen() : r.requestFullscreen().catch((function (e) {
                alert("Error attempting to enable full-screen mode: ".concat(e.message, " (").concat(e.name, ")"))
            })))
        };

    function Mr(e) {
        return (Mr = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function Ir(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function zr(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Lr(e, t) {
        return (Lr = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Br(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Ur(e);
            if (t) {
                var o = Ur(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Nr(this, n)
        }
    }

    function Nr(e, t) {
        return !t || "object" !== Mr(t) && "function" != typeof t ? Fr(e) : t
    }

    function Fr(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Ur(e) {
        return (Ur = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Hr(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Wr = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Lr(e, t)
        }(i, e);
        var t, n, r, o = Br(i);

        function i() {
            var e;
            Ir(this, i);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return Hr(Fr(e = o.call.apply(o, [this].concat(n))), "onApplyWatermarkChange", (function () {
                e.props.updateState({watermark: Tr(Tr({}, e.props.watermark), {}, {applyByDefault: !e.props.watermark.applyByDefault})})
            })), e
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.initialZoom, n = e.operations, r = e.operationsZoomed, o = e.currentOperation,
                    i = void 0 === o ? null : o, a = e.redoOperation, s = e.resetOperations, l = e.activeBody, c = e.t,
                    u = e.logoImage, f = e.watermark, p = e.config.elementId, d = 1 === t ? n : r,
                    h = d.findIndex((function (e) {
                        return e === i
                    })), g = i && d[d.length - 1] === i, m = d.length < 1 || -1 === h,
                    b = (d.length < 2 || d.length > 1 && g) && (-1 !== h || 1 !== d.length);
                return Object(K.jsxs)(re, {
                    children: [Object(K.jsx)(ae, {
                        muted: "preview" !== l, onClick: function () {
                            "preview" === l && s()
                        }, title: c["footer.reset"]
                    }), Object(K.jsx)(oe, {
                        onClick: function () {
                            !m && a({operationIndex: h - 1, operationObject: Tr(Tr({}, d[h]), {}, {index: h})})
                        }, muted: m, title: c["footer.undo"]
                    }), Object(K.jsx)(ie, {
                        onClick: function () {
                            !b && a({operationIndex: h + 1, operationObject: Tr(Tr({}, d[h]), {}, {index: h})})
                        }, muted: b, title: c["footer.redo"]
                    }), Object(K.jsx)(se, {
                        onClick: function () {
                            return Dr(p)
                        }, title: c["header.toggle_fullscreen"]
                    }), u && f && Object(K.jsx)(ge, {
                        id: "switch-watermark-footer",
                        checked: f && f.applyByDefault,
                        handleChange: this.onApplyWatermarkChange,
                        text: c["common.apply_watermark"]
                    })]
                })
            }
        }]) && zr(t.prototype, n), r && zr(t, r), i
    }(o.Component), Yr = function (e, t, n) {
        t = t || "", n = n || 512;
        for (var r = atob(e), o = [], i = 0; i < r.length; i += n) {
            for (var a = r.slice(i, i + n), s = new Array(a.length), l = 0; l < a.length; l++) s[l] = a.charCodeAt(l);
            var c = new Uint8Array(s);
            o.push(c)
        }
        return new Blob(o, {type: t})
    }, Vr = function (e, t, n) {
        return e ? e + "/" : qr(t, n)
    }, qr = function (e) {
        var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "filerobot";
        return "filerobot" === t ? "https://api.filerobot.com/".concat(e, "/v3/") : "https://".concat(e, ".api.airstore.io/v1/")
    }, Xr = function (e, t) {
        var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
        return window.document.querySelector("#".concat(e, "_").concat(t || (n ? "filerobot-image-edit-box-original" : ar)))
    }, $r = function (e) {
        switch (e) {
            case"colorize":
                return "colorize";
            case"contrast":
                return "contrast";
            case"cross_process":
                return "crossProcess";
            case"glow_sun":
                return "glowingSun";
            case"hdr_effect":
                return "hdr";
            case"jarques":
                return "jarques";
            case"love":
                return "love";
            case"old_boot":
                return "oldBoot";
            case"orange_peel":
                return "orangePeel";
            case"pin_hole":
                return "pinhole";
            case"pleasant":
                return "pleasant";
            case"sepia":
                return "sepia";
            case"sun_rise":
                return "sunrise";
            case"vintage":
                return "vintage";
            case"clarity":
                return "";
            case"edge_enhance":
                return "edgeEnhance";
            case"emboss":
                return "emboss";
            case"grungy":
                return "grungy";
            case"hazy":
                return "hazyDays";
            case"lomo":
                return "lomo";
            case"noise":
                return "noise";
            case"old_paper":
                return "oldPaper";
            case"posterize":
                return "posterize";
            case"radial_blur":
                return "radialBlur";
            case"sin_city":
                return "sinCity";
            case"tilt_shift":
                return "tiltShift";
            default:
                return null
        }
    }, Kr = function (e) {
        switch (e) {
            case"colorize":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/colorize.jpg";
            case"contrast":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/contrast.png";
            case"cross_process":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/cross_process.png";
            case"glow_sun":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/glow_sun.png";
            case"hdr_effect":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/hdr_effect.png";
            case"jarques":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/jarques.png";
            case"love":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/love.png";
            case"old_boot":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/old_boot.png";
            case"orange_peel":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/orange_peel.png";
            case"pin_hole":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/pin_hole.png";
            case"pleasant":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/pleasant.png";
            case"sepia":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/sepia.png";
            case"sun_rise":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/sun_rise.png";
            case"vintage":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/filters/vintage.png";
            case"clarity":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/clarity.png";
            case"edge_enhance":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/edge_enhance.png";
            case"emboss":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/emboss.png";
            case"grungy":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/grungy.png";
            case"hazy":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/hazy.png";
            case"lomo":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/lomo.png";
            case"noise":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/noise.png";
            case"old_paper":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/old_paper.png";
            case"posterize":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/posterize.png";
            case"radial_blur":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/radial_blur.png";
            case"sin_city":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/sin_city.png";
            case"tilt_shift":
                return "https://cdn.scaleflex.it/plugins/filerobot-image-editor/assets/images/effects/tilt_shift.png";
            default:
                return ""
        }
    }, Qr = function () {
        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "";
        return e.replace(/_/g, " ")
    }, Zr = function () {
        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "filerobot";
        return "filerobot" === e ? "X-Filerobot-Key" : "X-Airstore-Secret-Key"
    };

    function Gr(e) {
        return function (e) {
            if (Array.isArray(e)) return Jr(e)
        }(e) || function (e) {
            if ("undefined" != typeof Symbol && Symbol.iterator in Object(e)) return Array.from(e)
        }(e) || function (e, t) {
            if (!e) return;
            if ("string" == typeof e) return Jr(e, t);
            var n = Object.prototype.toString.call(e).slice(8, -1);
            "Object" === n && e.constructor && (n = e.constructor.name);
            if ("Map" === n || "Set" === n) return Array.from(e);
            if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Jr(e, t)
        }(e) || function () {
            throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
        }()
    }

    function Jr(e, t) {
        (null == t || t > e.length) && (t = e.length);
        for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
        return r
    }

    var eo = function () {
        var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "center",
            t = arguments.length > 1 ? arguments[1] : void 0, n = arguments.length > 2 ? arguments[2] : void 0,
            r = arguments.length > 3 ? arguments[3] : void 0, o = t.getBoundingClientRect(), i = .3, a = o.height * i,
            s = o.width * i;
        if (s < n || a < r) {
            var l = n / r;
            r > n ? n = (r = a) * l : r = (n = s) / l
        }
        var c = o.width / 2 - n / 2, u = o.height / 2 - r / 2;
        if ("center" === e) return [c, u, n, r];
        e = e.split("-");
        var f = .015, p = o.width * f, d = o.height * f, h = o.width - n - p, g = o.height - r - d;
        return [].concat(Gr(e.map((function (e, t) {
            return "center" === e ? 0 === t ? c : u : "right" === e ? h : "bottom" === e ? g : "left" === e ? p : "top" === e ? d : void 0
        }))), [n, r])
    }, to = n(17), no = n.n(to);

    function ro(e, t) {
        return function (e) {
            if (Array.isArray(e)) return e
        }(e) || function (e, t) {
            if ("undefined" == typeof Symbol || !(Symbol.iterator in Object(e))) return;
            var n = [], r = !0, o = !1, i = void 0;
            try {
                for (var a, s = e[Symbol.iterator](); !(r = (a = s.next()).done) && (n.push(a.value), !t || n.length !== t); r = !0) ;
            } catch (e) {
                o = !0, i = e
            } finally {
                try {
                    r || null == s.return || s.return()
                } finally {
                    if (o) throw i
                }
            }
            return n
        }(e, t) || function (e, t) {
            if (!e) return;
            if ("string" == typeof e) return oo(e, t);
            var n = Object.prototype.toString.call(e).slice(8, -1);
            "Object" === n && e.constructor && (n = e.constructor.name);
            if ("Map" === n || "Set" === n) return Array.from(e);
            if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return oo(e, t)
        }(e, t) || function () {
            throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
        }()
    }

    function oo(e, t) {
        (null == t || t > e.length) && (t = e.length);
        for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
        return r
    }

    function io(e, t, n, r) {
        var o = btoa(e).replace(/=*$/g, ""), i = function (e, t) {
            return no()(e).slice(0, t)
        }(t + o + n, r);
        return [i ? "ci_seal=".concat(i) : "", o ? "ci_eqs=".concat(o) : ""].filter((function (e) {
            return e
        })).join("&")
    }

    var ao = function (e) {
        var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 2;
        return parseFloat(e).toFixed(t)
    }, so = n(18), lo = n.n(so);
    n(29);
    CanvasRenderingContext2D.prototype.roundRect = function (e, t, n, r) {
        var o = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : void 0;
        return o ? (n < 2 * o && (o = n / 2), r < 2 * o && (o = r / 2)) : o = n >= r ? n / 2 : r / 2, this.beginPath(), this.moveTo(e + o, t), this.arcTo(e + n, t, e + n, t + r, o), this.arcTo(e + n, t + r, e, t + r, o), this.arcTo(e, t + r, e, t, o), this.arcTo(e, t, e + n, t, o), this.closePath(), this
    }, CanvasRenderingContext2D.prototype.round = function () {
        var e = this.canvas, t = e.width, n = e.height;
        return this.imageSmoothingEnabled = !0, this.globalCompositeOperation = "destination-in", this.strokeStyle = "transparent", this.lineWidth = 1, this.beginPath(), this.roundRect(0, 0, t, n, Math.max(t, n)), this.fill(), this.globalCompositeOperation = "source-over", this
    };
    CanvasRenderingContext2D, Number.prototype.mapNumber = function (e, t, n, r) {
        return (this - e) * (r - n) / (t - e) + n
    };

    function co(e) {
        return (co = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function uo(e) {
        return function (e) {
            if (Array.isArray(e)) return fo(e)
        }(e) || function (e) {
            if ("undefined" != typeof Symbol && Symbol.iterator in Object(e)) return Array.from(e)
        }(e) || function (e, t) {
            if (!e) return;
            if ("string" == typeof e) return fo(e, t);
            var n = Object.prototype.toString.call(e).slice(8, -1);
            "Object" === n && e.constructor && (n = e.constructor.name);
            if ("Map" === n || "Set" === n) return Array.from(e);
            if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return fo(e, t)
        }(e) || function () {
            throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
        }()
    }

    function fo(e, t) {
        (null == t || t > e.length) && (t = e.length);
        for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
        return r
    }

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

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

    function go(e, t) {
        if (null == e) return {};
        var n, r, o = function (e, t) {
            if (null == e) return {};
            var n, r, o = {}, i = Object.keys(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || (o[n] = e[n]);
            return o
        }(e, t);
        if (Object.getOwnPropertySymbols) {
            var i = Object.getOwnPropertySymbols(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || Object.prototype.propertyIsEnumerable.call(e, n) && (o[n] = e[n])
        }
        return o
    }

    function mo(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function bo(e, t) {
        return (bo = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function vo(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = xo(e);
            if (t) {
                var o = xo(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return yo(this, n)
        }
    }

    function yo(e, t) {
        return !t || "object" !== co(t) && "function" != typeof t ? wo(e) : t
    }

    function wo(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function xo(e) {
        return (xo = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function ko(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Oo = {
        effect: null,
        filter: null,
        crop: null,
        resize: null,
        rotate: null,
        correctionDegree: 0,
        flipX: !1,
        flipY: !1,
        adjust: {brightness: 0, contrast: 0, saturation: 0, exposure: 0},
        canvasDimensions: {width: 300, height: 200, ratio: 1.5}
    }, So = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && bo(e, t)
        }(a, e);
        var t, n, r, i = vo(a);

        function a() {
            var e;
            return function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, a), ko(wo(e = i.call(this)), "initializeCanvases", (function (t) {
                var n = wo(e), r = e.props, o = r.config, i = (o = void 0 === o ? {} : o).isLowQualityPreview,
                    a = r.updateState, s = 1;
                if (i && t.height > 1050) {
                    var l = e.originalCanvas.current, c = l.getContext("2d");
                    l.width = t.width, l.height = t.height, c.drawImage(t, 0, 0, t.width, t.height), s = t.height / 800;
                    var u = t.width / s, f = t.height / s;
                    a({initialZoom: s, canvasOriginal: n.cloneCanvas(l)}), setTimeout((function () {
                        new window.Caman(e.editedCanvas.current, (function () {
                            this.resize({width: u, height: f}), this.render((function () {
                                n.tempCanvasElement = n.editedCanvas.current, n.setState({canvasKey: parseInt(n.state.canvasKey) + 1}, (function () {
                                    var e = n.applyTransformationsToNewCanvas();
                                    n.CamanInstanceZoomed = new window.Caman(e, (function () {
                                        n.CamanInstanceOriginal = new window.Caman(n.originalCanvas.current, (function () {
                                        })), a({isShowSpinner: !1, canvasZoomed: n.cloneCanvas(e)})
                                    }))
                                }))
                            }))
                        }))
                    }))
                } else setTimeout((function () {
                    n.CamanInstance = new window.Caman(n.editedCanvas.current, (function () {
                        a({isShowSpinner: !1, canvasOriginal: n.cloneCanvas(n.editedCanvas.current)})
                    }))
                }))
            })), ko(wo(e), "mergeCanvases", (function (t) {
                var n = e.props.shapeOperations, r = t.getContext("2d"), o = n.prepareFinalCanvas(t);
                return r.drawImage(o, 0, 0), t.toDataURL()
            })), ko(wo(e), "cloneCanvas", (function (e) {
                var t = document.createElement("canvas"), n = t.getContext("2d");
                return t.width = e.width, t.height = e.height, t.id = e.id, t.className = e.className, n.drawImage(e, 0, 0), t
            })), ko(wo(e), "applyTransformationsToNewCanvas", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] && arguments[0],
                    n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : e.tempCanvasElement,
                    r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : e.editedCanvas.current;
                if (n === r) return r;
                var o = n.width, i = n.height, a = r.getContext("2d");
                return r.width = o, r.height = i, a.drawImage(n, 0, 0), t && a.round(), r
            })), ko(wo(e), "replaceCanvas", (function (t) {
                var n = e.editedCanvas.current, r = n.getContext("2d");
                return r.clearRect(0, 0, n.width, n.height), n.width = t.width, n.height = t.height, r.drawImage(t, 0, 0), n
            })), ko(wo(e), "saveImage", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] && arguments[0], n = e.props, r = n.onComplete,
                    o = n.onClose, i = n.updateState, a = n.closeOnLoad, s = n.config, l = n.processWithCloudService,
                    c = n.uploadCloudimageImage, u = n.operations, f = n.initialZoom, p = n.operationsOriginal,
                    d = e.getFinalImageMime(), h = e.getFinalImageName(), g = s.filerobot, m = void 0 === g ? {} : g,
                    b = s.platform, v = void 0 === b ? "filerobot" : b, y = s.elementId, w = s.cloudimage,
                    x = void 0 === w ? {} : w, k = m.uploadParams || {}, O = k.dir, S = go(k, ["dir"]),
                    j = 1 !== f ? e.originalCanvas.current : e.editedCanvas.current, C = Vr(m.baseAPI, m.container, v),
                    _ = wo(e);
                if (l) {
                    var E = x.dontCleanQuery ? e.props.src : e.props.src.split("?")[0], P = 1 !== f ? p : u,
                        R = P.filter((function (e) {
                            var t = e.operation;
                            return ur.includes(t)
                        })), D = e.generateCloudimageURL(R, E.replace(/https?:\/\/scaleflex.ultrafast.io\//, ""));
                    if (c) {
                        var M = new XMLHttpRequest;
                        M.addEventListener("load", e.onFileLoad), M.open("POST", [C, "upload?dir=".concat(O)].join("")), M.setRequestHeader(Zr(v), m.uploadKey), M.setRequestHeader("Content-Type", "application/json"), M.send(JSON.stringify({files_urls: [D]}))
                    } else i({isShowSpinner: !1, isHideCanvas: !1}), r(D, {
                        url_permalink: D,
                        url_public: D,
                        url: {public: D, permalink: D}
                    }), a && o(Pr)
                } else {
                    var A = function () {
                        var n = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, r = S.imageName,
                            o = S.imageMeta, a = S.imageProperties, s = S.keepPropsAndMeta, l = void 0 !== s && s;
                        e.mergeCanvases(j);
                        var c = j.toDataURL(d), u = c.split(";"), f = u[1].split(",")[1], p = Yr(f, d, null);
                        t && i({isShowSpinner: !0});
                        var g = n.imageName || r || h, b = n.dir || O || "image-editor", y = {}, w = {},
                            x = new FormData;
                        x.append("file", p, g), (n.keepPropsAndMeta || !1 !== n.keepPropsAndMeta && l) && (y = ho({}, a), w = ho({}, o)), n.imageProperties && Object.keys(n.imageProperties).length > 0 && (y = ho(ho({}, y), n.imageProperties)), n.meta && Object.keys(n.meta).length > 0 && (w = ho(ho({}, w), n.imageMeta)), Object.keys(y).length > 0 && x.append("properties[file]", JSON.stringify(y)), Object.keys(w).length > 0 && x.append("meta[file]", JSON.stringify(w));
                        var k = new XMLHttpRequest;
                        k.addEventListener("load", _.onFileLoad), k.open("POST", [C, "upload?dir=".concat(b)].join("")), k.setRequestHeader(Zr(v), m.uploadKey), k.send(x)
                    };
                    if (t && m.onSaveAs) {
                        var T = function () {
                            return Dr(y, !0)
                        };
                        m.onSaveAs(A, T)
                    } else A()
                }
            })), ko(wo(e), "getResultCanvas", (function () {
                var t = 1 !== e.props.initialZoom ? e.originalCanvas.current : e.editedCanvas.current;
                return e.mergeCanvases(t), t
            })), ko(wo(e), "getFinalImageMime", (function () {
                var t = e.props, n = t.roundCrop, r = t.imageMime;
                return n ? "image/png" : r
            })), ko(wo(e), "getFinalImageName", (function () {
                var t = e.props.roundCrop, n = e.state.imageName;
                return t && (n = n.replace(n.substr(n.lastIndexOf(".") + 1), "png")), n
            })), ko(wo(e), "downloadImage", (function (t) {
                var n, r = e.getResultCanvas(), o = e.getFinalImageName(), i = e.getFinalImageMime(),
                    a = document.createElement("a");
                a.download = o, a.href = r.toDataURL(i, .8), document.createEvent ? ((n = document.createEvent("MouseEvents")).initMouseEvent("click", !0, !0, window, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), a.dispatchEvent(n)) : a.fireEvent && a.fireEvent("onclick"), t && t()
            })), ko(wo(e), "onFileLoad", (function (t) {
                var n = e.props, r = n.onComplete, o = n.onClose, i = n.onError, a = n.updateState, s = n.closeOnLoad,
                    l = t.srcElement, c = (void 0 === l ? {} : l).response, u = void 0 === c ? "{}" : c,
                    f = JSON.parse(u) || {};
                if ("success" === f.status) {
                    var p = f.file, d = void 0 === p ? {} : p, h = function (e) {
                        return e.url && e.url.public ? e.url.public : e.url_public ? e.url_public : ""
                    }(d);
                    if (!h) return;
                    a({isShowSpinner: !1, isHideCanvas: !1}), r(h, d), s && o(Er)
                } else a({isShowSpinner: !1, isHideCanvas: !1}), i(f), s && o(Rr)
            })), ko(wo(e), "generateCloudimageURL", (function (t, n) {
                var r = e.props, o = r.config, i = r.watermark, a = r.logoImage, s = r.processWithCloudimage,
                    l = r.processWithFilerobot, c = r.imageSealing, u = o.cloudimage, f = void 0 === u ? {} : u,
                    p = o.filerobot, d = void 0 === p ? {} : p,
                    h = s && f.token + ".cloudimg.io/" + (f.version ? "".concat(f.version, "/") : "v7/"),
                    g = l && d.token + ".filerobot.com/" + (d.version ? "".concat(d.version, "/") : ""),
                    m = g || h || "";
                m = (m ? "https://" : "") + m;
                var b = (g ? d.doNotPrefixURL : f.doNotPrefixURL) ? "" : m, v = e.isOperationExist(t, "crop"),
                    y = e.isOperationExist(t, "resize"), w = e.isOperationExist(t, "rotate"),
                    x = e.isOperationExist(t, "focus_point"), k = i && (a || i.text) && i.applyByDefault, O = "",
                    S = "", j = "", C = "", _ = "";
                v && (O = e.getCropArguments(v.props)), y && (S = (O ? "&" : "") + e.getResizeArguments(y.props)), w && (j = (O || S ? "&" : "") + e.getOrientationArguments(w.props)), k && (C = (O || S || j ? "&" : "") + e.getWatermarkArguments()), x && (_ = (O || S || j || C ? "&" : "") + e.getFocusPointArguments(x.props)), f.dontCleanQuery || (n = n.split("?")[0]), n = n.replace(b, "");
                var E = O + S + j + C + _;
                c.enabled && (E = function (e, t, n) {
                    var r = t || {}, o = r.salt, i = r.char_count, a = r.include_params, s = Array.isArray(a);
                    if (s && 0 === a.length) return e;
                    var l = "", c = "";
                    if (s) {
                        var u = [], f = [];
                        e.split("&").forEach((function (e) {
                            var t = ro(e.split("="), 1)[0];
                            a.indexOf(t) > -1 ? u.push(e) : f.push(e)
                        })), f.length > 0 && (c = f.join("&")), l = io(u.join("&"), n, o, i)
                    } else l = io(e, n, o, i);
                    return [l, c].filter((function (e) {
                        return e
                    })).join("&")
                }(E, c, n.replace(m, "")));
                var P = b + n, R = -1 === P.indexOf("?") ? "?" : "&";
                return "".concat(P).concat(E ? "".concat(R).concat(E.replace(/&$/, "")) : "")
            })), ko(wo(e), "initFiltersOrEffects", (function () {
            })), ko(wo(e), "applyFilterOrEffect", (function (t) {
                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : function () {
                }, r = e.props, o = r.updateState, i = r.initialZoom;
                e.props[t] && o({isHideCanvas: !0, isShowSpinner: !0}, (function () {
                    1 !== i ? (e.CamanInstanceOriginal.revert(!1), e.CamanInstanceOriginal[$r(e.props[t])](), e.CamanInstanceOriginal.render((function () {
                        o(ko({}, t, null), (function () {
                            e.makeCanvasSnapshot({operation: t}, n)
                        }))
                    }))) : o(ko({}, t, null), (function () {
                        e.makeCanvasSnapshot({operation: t}, n)
                    }))
                }))
            })), ko(wo(e), "applyAdjust", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function () {
                    }, n = e.props, r = n.updateState, o = n.initialZoom, i = n.adjust, a = i.brightness, s = i.contrast,
                    l = i.saturation, c = i.exposure, u = {brightness: 0, contrast: 0, saturation: 0, exposure: 0};
                r({isHideCanvas: !0, isShowSpinner: !0}, (function () {
                    1 !== o ? (e.CamanInstanceOriginal.revert(!1), "0" !== a.toString() && e.CamanInstanceOriginal.brightness(parseInt(a || "0")), "0" !== s.toString() && e.CamanInstanceOriginal.contrast(parseInt(s || "0")), "0" !== l.toString() && e.CamanInstanceOriginal.saturation(parseInt(l || "0")), "0" !== c.toString() && e.CamanInstanceOriginal.exposure(parseInt(c || "0")), e.CamanInstanceOriginal.render((function () {
                        r({adjust: ho({}, u)}, (function () {
                            e.makeCanvasSnapshot({operation: "adjust"}, t)
                        }))
                    }))) : r({adjust: ho({}, u)}, (function () {
                        e.makeCanvasSnapshot({operation: "adjust"}, t)
                    }))
                }))
            })), ko(wo(e), "initOrientation", (function () {
                var t = e.props, n = t.config, r = t.redoOperation, o = t.operations, i = t.operationsZoomed,
                    a = 1 !== t.initialZoom ? i : o;
                if (n.processWithCloudService && a.length >= 1) {
                    var s = a.findIndex((function (e) {
                        return "rotate" === e.operation
                    }));
                    s > -1 && r({
                        operationIndex: s - 1, callback: function () {
                        }, resetActiveTab: !1
                    })
                }
            })), ko(wo(e), "onRotate", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0,
                    n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0,
                    r = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],
                    o = arguments.length > 3 && void 0 !== arguments[3] && arguments[3], i = e.props, a = i.initialZoom,
                    s = i.rotate, l = i.updateState, c = s + t;
                l({
                    isHideCanvas: !0,
                    isShowSpinner: !0,
                    rotate: c,
                    correctionDegree: n,
                    flipX: r,
                    flipY: o
                }, (function () {
                    var t = e.editedCanvas.current;
                    1 !== a ? (e.CamanInstanceZoomed.reset(), r && e.CamanInstanceZoomed.flip("x"), o && e.CamanInstanceZoomed.flip("y"), (c || n) && e.CamanInstanceZoomed.rotate((c || 0) + (n || 0)), e.CamanInstanceZoomed.render((function () {
                        e.editedCanvas.current.className = t.className, l({isHideCanvas: !1, isShowSpinner: !1})
                    }))) : (e.CamanInstance.reset(), r && e.CamanInstance.flip("x"), o && e.CamanInstance.flip("y"), (c || n) && e.CamanInstance.rotate((c || 0) + (n || 0)), e.CamanInstance.render((function () {
                        e.editedCanvas.current.className = t.className, l({isHideCanvas: !1, isShowSpinner: !1})
                    })))
                }))
            })), ko(wo(e), "applyOrientation", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function () {
                    }, n = e.props, r = n.updateState, o = n.initialZoom, i = n.rotate, a = n.correctionDegree, s = n.flipX,
                    l = n.flipY;
                r({isHideCanvas: !0, isShowSpinner: !0}, (function () {
                    var n = e.originalCanvas.current, c = (i || 0) + (a || 0);
                    1 !== o ? (e.CamanInstanceOriginal.reset(), s && e.CamanInstanceOriginal.flip("x"), l && e.CamanInstanceOriginal.flip("y"), (i || a) && e.CamanInstanceOriginal.rotate(c), e.CamanInstanceOriginal.render((function () {
                        e.originalCanvas.current.className = n.className, r({
                            rotate: 0,
                            flipX: !1,
                            flipY: !1,
                            correctionDegree: 0
                        }, (function () {
                            e.makeCanvasSnapshot({operation: "rotate", props: {rotate: c}}, t)
                        }))
                    }))) : (e.originalCanvas.current.className = n.className, r({
                        rotate: 0,
                        flipX: !1,
                        flipY: !1,
                        correctionDegree: 0
                    }, (function () {
                        e.makeCanvasSnapshot({operation: "rotate", props: {rotate: c}}, t)
                    })))
                }))
            })), ko(wo(e), "getOrientationArguments", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, t = e.rotate;
                switch (t) {
                    case 90:
                        return "r=270";
                    case-90:
                        return "r=90";
                    default:
                        return "r=".concat(t)
                }
            })), ko(wo(e), "initCrop", (function () {
                var t = e.props, n = t.config, r = t.redoOperation, o = t.operations, i = t.operationsZoomed,
                    a = 1 !== t.initialZoom ? i : o;
                if (n.processWithCloudService && a.length >= 1) {
                    var s = a.findIndex((function (e) {
                        return "crop" === e.operation
                    }));
                    s > -1 && r({operationIndex: s - 1, callback: e.onInitCrop, resetActiveTab: !1})
                } else e.onInitCrop()
            })), ko(wo(e), "onInitCrop", (function () {
                var t = e.props, n = t.updateState, r = t.config, o = r.beginCropArea, i = void 0 === o ? 1 : o,
                    a = r.minCropAreaWidth, s = r.minCropAreaHeight;
                n({isHideCanvas: !0, isShowSpinner: !0}, (function () {
                    var t = e.editedCanvas.current, r = t.getBoundingClientRect(), o = t.width / r.width;
                    e.cropper = new lo.a(t, {
                        viewMode: 1,
                        modal: !1,
                        background: !1,
                        rotatable: !1,
                        scalable: !1,
                        zoomable: !1,
                        movable: !1,
                        autoCropArea: i,
                        minCropBoxWidth: a,
                        minCropBoxHeight: s,
                        crop: function (t) {
                            e.props.updateState({cropDetails: t.detail})
                        }
                    }), window.scaleflexPlugins = window.scaleflexPlugins || {}, window.scaleflexPlugins.zoom = o, window.scaleflexPlugins.cropperjs = e.cropper, n({
                        isHideCanvas: !1,
                        isShowSpinner: !1
                    })
                    document.querySelector('.sc-fzoYkl .sc-fzoJMP').click();
                }))
            })), ko(wo(e), "applyCrop", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function () {
                }, n = e.props, r = n.initialZoom, o = n.updateState, i = n.cropDetails, a = n.roundCrop;
                Object.keys(i).forEach((function (e) {
                    i[e] = Math.round(i[e])
                }));
                var s = i.width, l = i.height, c = i.x, u = i.y;
                o({isShowSpinner: !0}, (function () {
                    var n, o, i;
                    (e.destroyCrop(), 1 !== r) ? (n = [s, l, c, u].map((function (e) {
                        return e * r
                    })), e.CamanInstanceZoomed.crop(s, l, c, u), (o = e.CamanInstanceOriginal).crop.apply(o, uo(n))) : (n = [s, l, c, u], (i = e.CamanInstance).crop.apply(i, uo(n)));
                    e.makeCanvasSnapshot({
                        operation: "crop",
                        props: {width: n[0], height: n[1], x: n[2], y: n[3], roundCrop: a}
                    }, t)
                }))
            })), ko(wo(e), "makeCanvasSnapshot", (function (t) {
                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : function () {
                    }, r = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], o = e.props, i = o.updateState,
                    a = o.initialZoom, s = o.operationsZoomed, l = o.currentOperation, c = o.operationsOriginal,
                    u = o.operations, f = o.roundCrop, p = 1 !== a;
                if (r) {
                    var d = (p ? s : u).indexOf(l) + 1, h = e.cloneCanvas(e.editedCanvas.current),
                        g = ho(ho({}, t), {}, {previewCanvas: !0, canvas: h}),
                        m = {isHideCanvas: !1, isShowSpinner: !1, currentOperation: g};
                    return p ? (m.operationsZoomed = [].concat(uo(s.slice(0, d)), [g]), m.operationsOriginal = [].concat(uo(c.slice(0, d)), [ho(ho({}, g), {}, {canvas: e.cloneCanvas(e.originalCanvas.current)})]), m.isHideCanvasOriginal = !1, m.isShowSpinnerOriginal = !1) : m.operations = [].concat(uo(u.slice(0, d)), [g]), void i(m, n)
                }
                if (p) {
                    var b = s.indexOf(l) + 1;
                    e.CamanInstanceOriginal.render((function () {
                        e.tempCanvasOriginalElement = e.originalCanvas.current, e.setState({canvasKey: parseInt(e.state.canvasOriginalKey) + 1}, (function () {
                            var r = e.applyTransformationsToNewCanvas(f, e.tempCanvasOriginalElement, e.originalCanvas.current),
                                o = ho(ho({}, t), {}, {canvas: e.cloneCanvas(e.originalCanvas.current)});
                            e.CamanInstanceOriginal = new window.Caman(r, (function () {
                                i({
                                    isHideCanvasOriginal: !1,
                                    isShowSpinnerOriginal: !1,
                                    operationsOriginal: [].concat(uo(c.slice(0, b)), [o])
                                }, n)
                            }))
                        }))
                    })), e.CamanInstanceZoomed.render((function () {
                        e.tempCanvasElement = e.editedCanvas.current, e.setState({canvasKey: parseInt(e.state.canvasKey) + 1}, (function () {
                            var n = e.applyTransformationsToNewCanvas(f),
                                r = ho(ho({}, t), {}, {canvas: e.cloneCanvas(e.editedCanvas.current)});
                            e.CamanInstanceZoomed = new window.Caman(n, (function () {
                                i({
                                    isHideCanvas: !1,
                                    isShowSpinner: !1,
                                    operationsZoomed: [].concat(uo(s.slice(0, b)), [r]),
                                    currentOperation: r
                                })
                            }))
                        }))
                    }))
                } else {
                    var v = u.indexOf(l) + 1;
                    e.CamanInstance.render((function () {
                        e.tempCanvasElement = e.editedCanvas.current, e.setState({canvasKey: parseInt(e.state.canvasKey) + 1}, (function () {
                            var r = e.applyTransformationsToNewCanvas(f),
                                o = ho(ho({}, t), {}, {canvas: e.cloneCanvas(e.editedCanvas.current)});
                            e.CamanInstance = new window.Caman(r, (function () {
                                i({
                                    isHideCanvas: !1,
                                    isShowSpinner: !1,
                                    operations: [].concat(uo(u.slice(0, v)), [o]),
                                    currentOperation: o
                                }, n)
                            }))
                        }))
                    }))
                }
            })), ko(wo(e), "destroyCrop", (function () {
                e.cropper.destroy()
            })), ko(wo(e), "getCropArguments", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, t = e.width, n = e.height,
                    r = e.x, o = e.y, i = e.roundCrop;
                return "tl_px=".concat(Math.round(r), ",").concat(Math.round(o), "&br_px=").concat(Math.round(r + t), ",").concat(Math.round(o + n)).concat(i ? "&radius=".concat(Math.round(Math.max(t, n)), "&force_format=png") : "")
            })), ko(wo(e), "initResize", (function () {
                var t = e.props, n = t.initialZoom, r = t.updateState,
                    o = 1 !== n ? e.originalCanvas.current : e.editedCanvas.current;
                r({canvasDimensions: {width: o.width, height: o.height, ratio: o.width / o.height}})
            })), ko(wo(e), "applyResize", (function () {
                var t = e.props, n = t.initialZoom, r = t.canvasDimensions, o = t.updateState, i = t.handleSave,
                    a = t.operations, s = t.operationsOriginal;
                o({
                    isHideCanvas: !0,
                    isShowSpinner: !0,
                    operationsOriginal: [].concat(uo(s), [{operation: "resize", props: r}]),
                    operations: [].concat(uo(a), [{operation: "resize", props: r}])
                }, (function () {
                    1 !== n ? (e.CamanInstanceOriginal.resize(r), e.CamanInstanceOriginal.render((function () {
                        i()
                    }))) : (e.CamanInstance.resize(r), e.CamanInstance.render((function () {
                        i()
                    })))
                }))
            })), ko(wo(e), "getResizeArguments", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, t = e.width, n = e.height;
                return "w=".concat(t, "&h=").concat(n)
            })), ko(wo(e), "initAdjust", (function () {
            })), ko(wo(e), "onAdjust", (function (t, n) {
                var r, o = e.props, i = o.updateState, a = o.adjust;
                i({adjust: ho(ho({}, a), {}, (r = {}, ko(r, t, n), ko(r, "isHideCanvas", !0), ko(r, "isShowSpinner", !0), r))}, (function () {
                    e.applyCorrections((function () {
                        i({isHideCanvas: !1, isShowSpinner: !1})
                    }))
                }))
            })), ko(wo(e), "initFocusPoint", (function () {
                var t = e.props, n = t.updateState, r = t.original, o = t.focusPoint, i = ho({}, o);
                null === i.x && (i.x = r.width / 2), null === i.y && (i.y = r.height / 2), e.tempFocusPoint = ho({}, o), n({
                    focusPoint: i,
                    isHideCanvas: !0,
                    isShowSpinner: !0
                })
            })), ko(wo(e), "applyFocusPoint", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function () {
                }, n = e.props, r = n.updateState, o = n.operations, i = n.operationsOriginal, a = n.focusPoint;
                e.tempFocusPoint = a, r({
                    operationsOriginal: [].concat(uo(i), [{operation: "focus_point", props: a}]),
                    operations: [].concat(uo(o), [{operation: "focus_point", props: a}])
                }), t()
            })), ko(wo(e), "applyShapes", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function () {
                }, n = e.props.shapeOperations;
                n.updateShapes({applied: !0}, {selectedShape: {}}, (function () {
                    e.makeCanvasSnapshot({operation: "shape", props: {shapes: e.props.shapes}}, t, !0)
                }))
            })), ko(wo(e), "getFocusPointArguments", (function (e) {
                return "gravity=".concat(e.x, ",").concat(e.y)
            })), ko(wo(e), "destroyFocusPoint", (function () {
                e.props.updateState({focusPoint: e.tempFocusPoint, isHideCanvas: !1, isShowSpinner: !1})
            })), ko(wo(e), "pushOperation", (function (e, t, n) {
                var r = e.findIndex((function (e) {
                    return e === n
                })), o = e.length;
                o && r !== e[o] && e.splice(r + 1, o), e.push(t)
            })), ko(wo(e), "applyOperations", (function (t, n) {
                var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, o = e.props,
                    i = o.initialZoom, a = o.operations, s = o.operationsZoomed, l = o.operationsOriginal,
                    c = o.canvasZoomed, u = o.canvasOriginal, f = o.updateState, p = 1 !== i, d = p ? s[t] : a[t],
                    h = -1 !== t;
                if (r && r.previewCanvas && r.index - 1 === t || d && d.previewCanvas && r.index + 1 === t) {
                    var g, m, b = e.props.shapeOperations,
                        v = null == d || null === (g = d.props) || void 0 === g ? void 0 : g.shapes;
                    if (!v) {
                        var y = (p ? s : a).filter((function (e, t) {
                            return "shape" === e.operation && t < r.index
                        }));
                        v = y.length > 0 ? y[y.length - 1].props.shapes : []
                    }
                    return b.replaceAllShapes(v), m = p ? h ? s[t] : {canvas: e.cloneCanvas(c)} : h ? a[t] : {canvas: e.cloneCanvas(u)}, void f(ho(ho({}, Oo), {}, {currentOperation: m}), (function () {
                        n && n()
                    }))
                }
                if (h || e.props.shapeOperations.replaceAllShapes([]), p) {
                    var w = h ? s[t] : {canvas: e.cloneCanvas(c)};
                    e.setState({canvasKey: parseInt(e.state.canvasKey) + 1}, (function () {
                        var t = e.applyTransformationsToNewCanvas(!1, w.canvas);
                        e.CamanInstanceZoomed = new window.Caman(t, (function () {
                            f(ho(ho({}, Oo), {}, {currentOperation: w}), (function () {
                                n && n()
                            }))
                        }))
                    }));
                    var x = h ? l[t] : {canvas: e.cloneCanvas(u)};
                    e.setState({canvasKey: parseInt(e.state.canvasOriginalKey) + 1}, (function () {
                        var t = e.applyTransformationsToNewCanvas(!1, x.canvas, e.originalCanvas.current);
                        e.CamanInstanceOriginal = new window.Caman(t, (function () {
                        }))
                    }))
                } else {
                    var k = h ? a[t] : {canvas: e.cloneCanvas(u)};
                    e.setState({canvasKey: parseInt(e.state.canvasOriginalKey) + 1}, (function () {
                        var t = e.applyTransformationsToNewCanvas(!1, k.canvas, e.originalCanvas.current);
                        e.CamanInstance = new window.Caman(t, (function () {
                            f(ho(ho({}, Oo), {}, {currentOperation: k}), (function () {
                                n && n()
                            }))
                        }))
                    }))
                }
            })), ko(wo(e), "isOperationExist", (function (e, t) {
                return e.find((function (e) {
                    return e.operation === t
                }))
            })), ko(wo(e), "getOperationQuery", (function (e, t) {
                return e ? "crop_px" : t ? "width" : "cdn"
            })), ko(wo(e), "destroyAll", (function () {
            })), ko(wo(e), "resetAll", (function (t) {
                var n = e.props.activeTab;
                n ? e.cancelLastOperation(n, (function () {
                    e.applyOperations(-1, t)
                })) : e.applyOperations(-1, t)
            })), ko(wo(e), "applyCorrections", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function () {
                    }, n = e.props, r = n.initialZoom, o = n.effect, i = n.filter, a = n.adjust, s = a.brightness,
                    l = a.contrast, c = a.saturation, u = a.exposure;
                1 !== r ? (e.CamanInstanceZoomed.revert(!1), o && e.CamanInstanceZoomed[$r(o)](), i && e.CamanInstanceZoomed[$r(i)](), "0" !== s.toString() && e.CamanInstanceZoomed.brightness(parseInt(s || "0")), "0" !== l.toString() && e.CamanInstanceZoomed.contrast(parseInt(l || "0")), "0" !== c.toString() && e.CamanInstanceZoomed.saturation(parseInt(c || "0")), "0" !== u.toString() && e.CamanInstanceZoomed.exposure(parseInt(u || "0")), e.CamanInstanceZoomed.render(t)) : (e.CamanInstance.revert(!1), o && e.CamanInstance[$r(o)](), i && e.CamanInstance[$r(i)](), "0" !== s.toString() && e.CamanInstance.brightness(parseInt(s || "0")), "0" !== l.toString() && e.CamanInstance.contrast(parseInt(l || "0")), "0" !== c.toString() && e.CamanInstance.saturation(parseInt(c || "0")), "0" !== u.toString() && e.CamanInstance.exposure(parseInt(u || "0")), e.CamanInstance.render(t))
            })), ko(wo(e), "cancelAddedShapes", (function () {
                e.props.shapeOperations.deleteShapes({all: !0}, {selectedShape: {}})
            })), ko(wo(e), "cancelLastOperation", (function (t) {
                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : function () {
                }, r = e.props.initialZoom;
                "crop" === t && e.destroyCrop(), "watermark" === t && e.cancelWatermark(), ["shapes", "image", "text"].includes(t) && e.cancelAddedShapes(), 1 !== r ? (e.CamanInstanceZoomed.reset(), e.CamanInstanceOriginal.reset(), e.CamanInstanceOriginal.render(), e.CamanInstanceZoomed.render((function () {
                    n && n()
                }))) : (e.CamanInstance.reset(), e.CamanInstance.render((function () {
                    n && n()
                })))
            })), ko(wo(e), "initWatermark", (function () {
                var t = e.props, n = t.watermark, r = t.updateState;
                n.applyByDefault || r({watermark: ho(ho({}, n), {}, {applyByDefault: !0})})
            })), ko(wo(e), "applyWatermark", (function () {
                var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function () {
                    }, n = e.props, r = n.updateState, o = n.shapeOperations,
                    i = (o.getShape({key: "watermark-layer"}) || {}).index;
                e.setState({tempWatermark: null}), r({selectedShape: {}}), e.makeCanvasSnapshot({
                    operation: "shape",
                    props: {shapes: [i]}
                }, t, !0), t()
            })), ko(wo(e), "cancelWatermark", (function () {
                var t = e.state.tempWatermark, n = e.props, r = n.updateState, o = n.shapeOperations,
                    i = o.getShape({key: "watermark-layer"}) || {}, a = null;
                t && t.url && t.applyByDefault ? (r({isShowSpinner: !0}), (a = new Image).setAttribute("crossOrigin", "Anonymous"), a.src = t.url + "?" + (new Date).getTime(), a.onload = function () {
                    o.updateShape({img: a}, i.index, {watermark: t, logoImage: a, isShowSpinner: !1, selectedShape: {}})
                }) : o.deleteShape({index: i.index}, {watermark: t, logoImage: a, selectedShape: {}})
            })), ko(wo(e), "getWatermarkArguments", (function () {
                var t = e.props, n = t.config.processWithCloudimage,
                    r = t.shapeOperations.getShape({key: "watermark-layer"});
                if (!r) return "";
                var o = r.x, i = r.y, a = r.opacity, s = go(r, ["x", "y", "opacity"]), l = e.editedCanvas.current,
                    c = l.width, u = l.height, f = ao(o / c * 100), p = ao(i / u * 100),
                    d = Math.max(s.width / c, s.height / u), h = ao(100 * d),
                    g = "wat_gravity=absolute&wat_pos=".concat(f, ",").concat(p),
                    m = "wat=1&wat_opacity=".concat(a, "&wat_scale=").concat(h, "p&").concat(g);
                return m += n && s.text ? "&wat_text=".concat(s.text, "&wat_font=").concat(s.textFont, "&wat_fontsize=").concat(s.textSize, "&wat_colour=").concat(s.color.replace("#", "")) : "&wat_url=".concat(s.img.src.split("?")[0])
            })), ko(wo(e), "applyChanges", (function (t, n) {
                switch (t) {
                    case"adjust":
                        e.applyAdjust(n);
                        break;
                    case"effects":
                        e.applyFilterOrEffect("effect", n);
                        break;
                    case"filters":
                        e.applyFilterOrEffect("filter", n);
                        break;
                    case"crop":
                        e.applyCrop(n);
                        break;
                    case"resize":
                        e.applyResize();
                        break;
                    case"rotate":
                        e.applyOrientation(n);
                        break;
                    case"watermark":
                        e.applyWatermark(n);
                        break;
                    case"focus_point":
                        e.applyFocusPoint(n);
                        break;
                    case"shapes":
                    case"image":
                    case"text":
                        e.applyShapes(n)
                }
            })), ko(wo(e), "changeTab", (function (t) {
                switch (t) {
                    case"effects":
                    case"filters":
                        e.initFiltersOrEffects();
                        break;
                    case"adjust":
                        e.initAdjust();
                        break;
                    case"crop":
                        e.initCrop();
                        break;
                    case"resize":
                        e.initResize();
                        break;
                    case"rotate":
                        e.initOrientation();
                        break;
                    case"watermark":
                        e.initWatermark();
                        break;
                    case"focus_point":
                        e.initFocusPoint();
                        break;
                    default:
                        e.destroyAll()
                }
            })), ko(wo(e), "destroyMode", (function (t) {
                switch (t) {
                    case"effects":
                    case"filters":
                    case"adjust":
                        break;
                    case"crop":
                        e.destroyCrop();
                        break;
                    case"resize":
                    case"rotate":
                        break;
                    case"focus_point":
                        e.destroyFocusPoint()
                }
            })), e.state = {
                canvas: null,
                self: wo(e),
                canvasKey: "0-edited",
                canvasOriginalKey: "0-original"
            }, e.CamanInstance = null, e.CamanInstanceOriginal = null, e.CamanInstanceZoomed = null, e.tempCanvasElement = null, e.originalCanvas = Object(o.createRef)(), e.editedCanvas = Object(o.createRef)(), e
        }

        return t = a, r = [{
            key: "getDerivedStateFromProps", value: function (e, t) {
                var n, r = {};
                return e.activeTab !== t.activeTab && (t.activeTab && t.self.destroyMode(t.activeTab), "watermark" === e.activeTab && (r.tempWatermark = e.watermark && (n = e.watermark, JSON.parse(JSON.stringify(n)))), t.self.changeTab(e.activeTab)), ho(ho({}, r), e)
            }
        }], (n = [{
            key: "componentDidMount", value: function () {
                var e = this, t = this, n = this.props, r = n.updateState, o = n.img, i = n.isPreResize,
                    a = n.preCanvasDimensions;
                r({
                    isShowSpinner: !0,
                    applyChanges: this.applyChanges,
                    applyOperations: this.applyOperations,
                    resetAll: this.resetAll,
                    onRotate: this.onRotate,
                    onAdjust: this.onAdjust,
                    downloadImage: this.downloadImage,
                    getResultCanvas: this.getResultCanvas,
                    saveImage: this.saveImage,
                    applyCorrections: this.applyCorrections,
                    restoreAll: this.restoreAll,
                    cancelLastOperation: this.cancelLastOperation
                }, (function () {
                    var n = e.editedCanvas.current, s = n.getContext("2d");
                    n.width = o.width, n.height = o.height, s.drawImage(o, 0, 0, o.width, o.height);
                    var l = {height: o.height, width: o.width, ratio: o.width / o.height};
                    r({original: l, canvasDimensions: l}), i && a ? new window.Caman(n, (function () {
                        this.resize({width: a.width, height: a.height}), this.render((function () {
                            t.tempCanvasElement = t.editedCanvas.current, t.setState({canvasKey: parseInt(t.state.canvasKey) + 1}, (function () {
                                var e = t.applyTransformationsToNewCanvas(),
                                    n = {height: e.height, width: e.width, ratio: e.width / e.height};
                                r({
                                    original: n,
                                    canvasDimensions: ho({}, n),
                                    canvasOriginal: t.cloneCanvas(e)
                                }, (function () {
                                    t.initializeCanvases(e)
                                }))
                            }))
                        }))
                    })) : e.initializeCanvases(o)
                }))
            }
        }, {
            key: "render", value: function () {
                var e = this.props.config.elementId;
                return Object(K.jsxs)(K.Fragment, {
                    children: [Object(K.jsx)(De, {
                        ref: this.originalCanvas,
                        id: "".concat(e, "_").concat("filerobot-image-edit-box-original"),
                        className: "filerobot-original-canvas"
                    }, this.state.canvasOriginalKey), Object(K.jsx)(De, {
                        ref: this.editedCanvas,
                        id: "".concat(e, "_").concat(ar),
                        className: "filerobot-edit-canvas"
                    }, this.state.canvasKey)]
                })
            }
        }]) && mo(t.prototype, n), r && mo(t, r), a
    }(o.Component), jo = n(5);

    function Co(e, t) {
        return function (e) {
            if (Array.isArray(e)) return e
        }(e) || function (e, t) {
            if ("undefined" == typeof Symbol || !(Symbol.iterator in Object(e))) return;
            var n = [], r = !0, o = !1, i = void 0;
            try {
                for (var a, s = e[Symbol.iterator](); !(r = (a = s.next()).done) && (n.push(a.value), !t || n.length !== t); r = !0) ;
            } catch (e) {
                o = !0, i = e
            } finally {
                try {
                    r || null == s.return || s.return()
                } finally {
                    if (o) throw i
                }
            }
            return n
        }(e, t) || function (e, t) {
            if (!e) return;
            if ("string" == typeof e) return _o(e, t);
            var n = Object.prototype.toString.call(e).slice(8, -1);
            "Object" === n && e.constructor && (n = e.constructor.name);
            if ("Map" === n || "Set" === n) return Array.from(e);
            if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _o(e, t)
        }(e, t) || function () {
            throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
        }()
    }

    function _o(e, t) {
        (null == t || t > e.length) && (t = e.length);
        for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
        return r
    }

    var Eo = function (e) {
        var t = e.original, n = e.focusPoint, r = e.updateState, i = e.src, a = Co(Object(o.useState)(!1), 2), s = a[0],
            l = a[1], c = Object(o.useRef)(null), u = c.current ? c.current.getBoundingClientRect() : {},
            f = Object(o.useCallback)((function () {
                var e = function (e, t) {
                        var n = e.getBoundingClientRect(), r = window.getComputedStyle(e) || {}, o = r.paddingLeft,
                            i = void 0 === o ? 0 : o, a = r.paddingRight, s = void 0 === a ? 0 : a, l = r.paddingTop,
                            c = void 0 === l ? 0 : l, u = r.paddingBottom, f = void 0 === u ? 0 : u,
                            p = n.width - (parseInt(i, 10) || 0) - (parseInt(s, 10) || 0),
                            d = n.height - (parseInt(c, 10) || 0) - (parseInt(f, 10) || 0), h = 0, g = 0;
                        if (p >= t.width && d >= t.height) h = t.width, g = t.height; else if (p > t.width && d < t.height) g = d, h = d * t.ratio; else if (p < t.width && d > t.height) h = p, g = p / t.ratio; else {
                            var m = p, b = p / t.ratio, v = d * t.ratio, y = d;
                            t.width <= m && t.height <= b ? (h = m, g = b) : (h = v, g = y)
                        }
                        return {width: h, height: g}
                    }((document.getElementById("preview-img-box") || {}).parentElement, t), n = e.width,
                    r = void 0 === n ? 0 : n, o = e.height;
                return {width: r, height: void 0 === o ? 0 : o}
            }), [t]), p = Co(Object(o.useState)(f()), 2), d = p[0], h = p[1], g = Object(o.useMemo)((function () {
                return Object(jo.debounce)(100, (function () {
                    h(f())
                }))
            }), [f]);
        return Object(o.useEffect)((function () {
            var e = !0, t = function () {
                e && g()
            };
            return window.addEventListener("resize", t), function () {
                e = !1, window.removeEventListener("resize", t)
            }
        }), [g]), Object(K.jsx)(_e, {
            ref: c,
            width: d.width,
            height: d.height,
            children: Object(K.jsxs)(Ee, {
                onMouseDown: function (e) {
                    var n = e.clientX - u.x, o = e.clientY - u.y, i = Math.round(n * t.width / d.width),
                        a = Math.round(o * t.height / d.height), s = Math.min(Math.max(i, 0), t.width),
                        l = Math.min(Math.max(a, 0), t.height);
                    r({focusPoint: {x: s, y: l}})
                }, children: [Object(K.jsx)(Re, {
                    visible: s, src: i, onLoad: function () {
                        r({isShowSpinner: !1}), l(!0)
                    }, onError: function () {
                        r({isShowSpinner: !1})
                    }
                }), Object(K.jsx)(Pe, {visible: s, x: n.x * d.width / t.width, y: n.y * d.height / t.height})]
            })
        })
    };

    function Po(e) {
        return (Po = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Ro(e, t) {
        return function (e) {
            if (Array.isArray(e)) return e
        }(e) || function (e, t) {
            if ("undefined" == typeof Symbol || !(Symbol.iterator in Object(e))) return;
            var n = [], r = !0, o = !1, i = void 0;
            try {
                for (var a, s = e[Symbol.iterator](); !(r = (a = s.next()).done) && (n.push(a.value), !t || n.length !== t); r = !0) ;
            } catch (e) {
                o = !0, i = e
            } finally {
                try {
                    r || null == s.return || s.return()
                } finally {
                    if (o) throw i
                }
            }
            return n
        }(e, t) || Ao(e, t) || function () {
            throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
        }()
    }

    function Do(e, t) {
        if (null == e) return {};
        var n, r, o = function (e, t) {
            if (null == e) return {};
            var n, r, o = {}, i = Object.keys(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || (o[n] = e[n]);
            return o
        }(e, t);
        if (Object.getOwnPropertySymbols) {
            var i = Object.getOwnPropertySymbols(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || Object.prototype.propertyIsEnumerable.call(e, n) && (o[n] = e[n])
        }
        return o
    }

    function Mo(e) {
        return function (e) {
            if (Array.isArray(e)) return To(e)
        }(e) || function (e) {
            if ("undefined" != typeof Symbol && Symbol.iterator in Object(e)) return Array.from(e)
        }(e) || Ao(e) || function () {
            throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
        }()
    }

    function Ao(e, t) {
        if (e) {
            if ("string" == typeof e) return To(e, t);
            var n = Object.prototype.toString.call(e).slice(8, -1);
            return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? To(e, t) : void 0
        }
    }

    function To(e, t) {
        (null == t || t > e.length) && (t = e.length);
        for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
        return r
    }

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

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

    function Lo(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Bo(e, t) {
        return (Bo = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function No(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Ho(e);
            if (t) {
                var o = Ho(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Fo(this, n)
        }
    }

    function Fo(e, t) {
        return !t || "object" !== Po(t) && "function" != typeof t ? Uo(e) : t
    }

    function Uo(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Ho(e) {
        return (Ho = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Wo(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Yo = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Bo(e, t)
        }(a, e);
        var t, n, r, i = No(a);

        function a(e) {
            var t;
            return function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, a), Wo(Uo(t = i.call(this, e)), "_canvas", void 0), Wo(Uo(t), "_context", void 0), Wo(Uo(t), "_initArgs", {hidden: !1}), Wo(Uo(t), "_allowedTabs", ["shapes", "image", "text", "watermark"]), Wo(Uo(t), "prepareFinalCanvas", (function (e) {
                var n = e.width, r = e.height, o = t.props.shapes, i = document.createElement("canvas");
                i.width = n, i.height = r, t._canvas.parentNode.insertBefore(i, t._canvas);
                var a = t._canvas;
                return t._canvas = i, t._context = i.getContext("2d"), o.map((function (e) {
                    e.x = e.x.mapNumber(0, a.width, 0, n), e.y = e.y.mapNumber(0, a.height, 0, r), e.variant !== wr ? (e.width = e.width.mapNumber(0, a.width, 0, n), e.height = e.height.mapNumber(0, a.height, 0, r)) : e.textSize = parseInt(e.textSize).mapNumber(0, a.width, 0, n), t.drawShapeThroughVariant(e)
                })), t._canvas
            })), Wo(Uo(t), "updateState", (function (e) {
                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : function () {
                }, r = t.props.updateState;
                r(e, n)
            })), Wo(Uo(t), "pushShapeToShapes", (function (e, n) {
                var r = t.props.shapes, o = r.length;
                return t.updateState(zo({shapes: [].concat(Mo(r), [zo(zo({}, e), {}, {index: o})])}, n)), o
            })), Wo(Uo(t), "targettedShape", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : void 0;
                return e || 0 === e ? t.props.shapes[e] : t.props.selectedShape
            })), Wo(Uo(t), "onSelect", (function (e) {
                var n = t.props, r = n.shapes, o = n.activeTab;
                if (t._allowedTabs.includes(o)) {
                    var i = e.offsetX, a = e.offsetY, s = !1;
                    r.forEach((function (e) {
                        !e.hidden && i >= e.x && i <= e.x + e.width && a >= e.y && a <= e.y + e.height && e.tab === o && (s = !0, t.updateState({
                            selectedShape: zo(zo({}, e), {}, {
                                resizingBox: !0,
                                startEdgeOffset: {x: i - e.x, y: a - e.y}
                            })
                        }), t.activateResizingActions(), t._canvas.addEventListener("keyup", t.activateShapeDeleting), t._canvas.addEventListener("mousemove", t.startDragging), t._canvas.addEventListener("touchmove", t.startDragging), document.addEventListener("mouseup", t.endDragging), document.addEventListener("touchend", t.endDragging))
                    })), s || (t.updateState({selectedShape: {}}), t.disableResizingActions(), t._canvas.removeEventListener("keyup", t.activateShapeDeleting), t._canvas.removeEventListener("mousemove", t.startDragging), t._canvas.removeEventListener("touchmove", t.startDragging), document.removeEventListener("mouseup", t.endDragging), document.removeEventListener("touchend", t.endDragging))
                }
            })), Wo(Uo(t), "activateShapeDeleting", (function (e) {
                var n = e.key, r = t.props.selectedShape;
                "Delete" !== n && "Backspace" !== n || !r || (t.deleteShapeByKeyOrIndex({index: r.index}), t.updateState({selectedShape: {}}), t.disableResizingActions(), t._canvas.removeEventListener("keyup", t.activateShapeDeleting))
            })), Wo(Uo(t), "activateResizingActions", (function () {
                t.props.selectedShape.lockScaleToPercentage || Array.from(document.getElementsByClassName("shape-resizing-control")).forEach((function (e) {
                    e.addEventListener("mousedown", t.trackShapeResize)
                }))
            })), Wo(Uo(t), "trackShapeResize", (function (e) {
                var n = e.target;
                t.setState({resizeControlTarget: n}), document.addEventListener("mousemove", t.handleShapeResizing), document.addEventListener("touchmove", t.handleShapeResizing), document.addEventListener("mouseup", t.disableResizingActions), document.addEventListener("touchend", t.disableResizingActions)
            })), Wo(Uo(t), "handleShapeResizing", (function (e) {
                var n = e.movementX, r = e.movementY, o = e.shiftKey, i = t.state.resizeControlTarget, a = t.props,
                    s = a.selectedShape, l = a.processWithCloudimage, c = s.index, u = s.width, f = s.height, p = s.x,
                    d = s.y, h = s.variant, g = s.originalWidth, m = s.originalHeight;
                if (i && h !== wr) {
                    var b = f, v = i.dataset.direction;
                    if (l) {
                        if (["e", "w", "n", "s"].includes(v)) return;
                        o = !0
                    }
                    var y = function (e) {
                        var t = u / f;
                        if (Math.abs(n) >= Math.abs(r)) {
                            var o = Math.abs(f - (u + n) / t);
                            r = (e ? 1 : -1) * Math.sign(n) * o
                        } else {
                            var i = Math.abs(u - (f + r) * t);
                            n = (e ? 1 : -1) * Math.sign(r) * i
                        }
                    }, w = function () {
                        u += n
                    }, x = function () {
                        f += r
                    }, k = function () {
                        u -= n, p += n
                    }, O = function () {
                        f -= r, d += r
                    };
                    switch (v) {
                        case"e":
                            w();
                            break;
                        case"w":
                            k();
                            break;
                        case"n":
                            O();
                            break;
                        case"s":
                            x();
                            break;
                        case"ne":
                            if (o && y(!1), w(), u >= t._canvas.width && o) break;
                            O();
                            break;
                        case"nw":
                            if (o && y(!0), k(), u >= t._canvas.width && o) break;
                            O();
                            break;
                        case"se":
                            if (o && y(!0), w(), u >= t._canvas.width && o) break;
                            x();
                            break;
                        case"sw":
                            if (o && y(!1), k(), u >= t._canvas.width && o) break;
                            x();
                            break;
                        default:
                            return
                    }
                    if (h !== br && h !== vr || (f !== b ? u = f : f = u), !l || !(u >= g || f >= m)) {
                        if (!(f <= 15 || u <= 15)) {
                            p < 0 && (p = 0), d < 0 && (d = 0), p + u > t._canvas.width && (p = t._canvas.width - u), d + f > t._canvas.height && (d = t._canvas.height - f), u > t._canvas.width && (u = t._canvas.width), f > t._canvas.height && (f = t._canvas.height);
                            var S = {width: u, height: f, x: p, y: d};
                            t.updateShape(S, c, {selectedShape: zo(zo({}, s), S)})
                        }
                    }
                }
            })), Wo(Uo(t), "disableResizingActions", (function (e) {
                document.removeEventListener("mousemove", t.handleShapeResizing), document.removeEventListener("mouseup", t.disableResizingActions), t.updateState({selectedShape: {}}), t.setState({resizeControlTarget: null})
            })), Wo(Uo(t), "removeResizingBox", (function (e) {
                var n = e.offsetX, r = e.offsetY, o = t.props.selectedShape;
                (n < o.x || n > o.x + o.width || r < o.y || r > o.y + o.height) && (t.updateState({selectedShape: zo(zo({}, o), {}, {resizingBox: !1})}), t._canvas.removeEventListener("click", t.removeResizingBox))
            })), Wo(Uo(t), "startDragging", (function (e) {
                if (e.targetTouches && e.targetTouches[0]) {
                    e.preventDefault();
                    var n = e.targetTouches[0], r = n.clientX, o = n.clientY, i = t._canvas.getBoundingClientRect(),
                        a = i.x, s = i.y;
                    e.offsetX = r - a, e.offsetY = o - s
                }
                var l = t.props.selectedShape, c = l.startEdgeOffset, u = void 0 === c ? {} : c, f = l.width,
                    p = l.height, d = l.index, h = e.offsetX - u.x, g = e.offsetY - u.y;
                h < 0 && (h = 0), g < 0 && (g = 0), h + f > t._canvas.width && (h = t._canvas.width - f), g + p > t._canvas.height && (g = t._canvas.height - p);
                var m = zo(zo({}, l), {}, {x: h, y: g});
                t.updateShape(m, d, {selectedShape: m})
            })), Wo(Uo(t), "endDragging", (function () {
                t._canvas.removeEventListener("mousemove", t.startDragging), t._canvas.removeEventListener("mouseup", t.endDragging), t._canvas.removeEventListener("mouseleave", t.endDragging), t._canvas.addEventListener("click", t.removeResizingBox)
            })), Wo(Uo(t), "getCanvasCenter", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0,
                    n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0, r = t._canvas.width / 2 - e,
                    o = t._canvas.height / 2 - n;
                return [r, o]
            })), Wo(Uo(t), "draw", (function (e, n) {
                var r = n.opacity, o = void 0 === r ? 1 : r, i = n.hidden, a = n.color, s = n.stroke,
                    l = void 0 === s ? {} : s;
                i || (t._context.globalAlpha = +o, t._context.fillStyle = a, t._context.strokeStyle = l.color || "transparent", t._context.lineWidth = l.width || 1, e(), t.props.round && t._context.round())
            })), Wo(Uo(t), "redrawShape", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : void 0, n = t.props.shapes;
                t.clearShape(0, 0, t._canvas.width, t._canvas.height);
                var r = n.length;
                if (e && e !== r - 1) {
                    var o = zo(zo({}, n.splice(e, 1)[0]), {}, {index: r});
                    n.splice(r, 0, o), n = n.map((function (e, n) {
                        return e.index = n, t.drawShapeThroughVariant(e), e
                    })), t.updateState({shapes: n, selectedShape: o})
                } else n.forEach((function (e) {
                    return t.drawShapeThroughVariant(e)
                }))
            })), Wo(Uo(t), "drawShapeThroughVariant", (function (e) {
                switch (e.variant) {
                    case yr:
                        t.drawImage(e);
                        break;
                    case mr:
                    case br:
                        t.drawRect(e);
                        break;
                    case vr:
                        t.drawCircle(e);
                        break;
                    case wr:
                        t.drawText(e);
                    default:
                        return
                }
            })), Wo(Uo(t), "drawRect", (function (e) {
                var n = e.x, r = e.y, o = e.width, i = e.height, a = e.stroke,
                    s = Do(e, ["x", "y", "width", "height", "stroke"]);
                t.draw((function () {
                    t._context.fillRect(n, r, o, i), a && t._context.strokeRect(n, r, o, i)
                }), zo({stroke: a}, s))
            })), Wo(Uo(t), "drawCircle", (function (e) {
                var n = e.x, r = e.y, o = (e.radius, e.width), i = e.height, a = e.stroke,
                    s = Do(e, ["x", "y", "radius", "width", "height", "stroke"]);
                t.draw((function () {
                    t._context.roundRect(n, r, o, i), t._context.fill(), a && t._context.stroke()
                }), zo({stroke: a}, s))
            })), Wo(Uo(t), "drawImage", (function (e) {
                var n = e.img, r = e.x, o = e.y, i = e.width, a = e.height, s = e.stroke,
                    l = Do(e, ["img", "x", "y", "width", "height", "stroke"]);
                t.draw((function () {
                    t._context.drawImage(n, r, o, i, a), s && t._context.strokeRect(r, o, i, a)
                }), zo({stroke: s}, l))
            })), Wo(Uo(t), "setTextStyle", (function (e) {
                var n = e.textSize, r = e.textFont;
                t._context.textAlign = "start", t._context.textBaseline = "top", t._context.font = "".concat(n, "px ").concat(r)
            })), Wo(Uo(t), "getTextWidthAndHeight", (function (e) {
                var n = e.text, r = e.textSize, o = e.textFont;
                t.setTextStyle({textSize: r, textFont: o});
                var i = t._context.measureText(n), a = i.width;
                return [a, 0 === a ? 0 : i.actualBoundingBoxDescent - i.actualBoundingBoxAscent]
            })), Wo(Uo(t), "drawText", (function (e) {
                var n = e.text, r = e.textSize, o = e.textFont, i = e.x, a = e.y, s = e.stroke,
                    l = Do(e, ["text", "textSize", "textFont", "x", "y", "stroke"]);
                t.draw((function () {
                    t.setTextStyle({
                        textSize: r,
                        textFont: o
                    }), t._context.fillText(n, i, a, t._canvas.width), s && t._context.strokeText(n, i, a)
                }), zo({stroke: s}, l))
            })), Wo(Uo(t), "addRect", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, n = e.x, r = e.y,
                    o = e.width, i = void 0 === o ? 100 : o, a = e.height, s = void 0 === a ? 75 : a, l = e.stroke,
                    c = void 0 === l ? {} : l, u = e.color, f = void 0 === u ? "#000000" : u, p = e.opacity,
                    d = void 0 === p ? 1 : p, h = e.variant, g = void 0 === h ? mr : h, m = e.tab,
                    b = void 0 === m ? "shapes" : m,
                    v = Do(e, ["x", "y", "width", "height", "stroke", "color", "opacity", "variant", "tab"]),
                    y = t.getCanvasCenter(i / 2, s / 2), w = Ro(y, 2), x = w[0], k = w[1],
                    O = {x: n || x, y: r || k, width: i, height: s, stroke: c, opacity: d, color: f},
                    S = zo(zo(zo(zo({}, t._initArgs), v), O), {}, {variant: g, tab: b});
                if (!v.key || !t.replaceShapeIfExisted(v.key, S)) {
                    t.drawRect(O);
                    var j = t.pushShapeToShapes(S);
                    t.updateState({
                        selectedShape: zo(zo({}, S), {}, {
                            index: j,
                            resizingBox: !0
                        })
                    }, t.activateResizingActions)
                }
            })), Wo(Uo(t), "addSquare", (function (e) {
                e.width || (e.width = e.height = 75), e.variant = br, t.addRect(e)
            })), Wo(Uo(t), "addCircle", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, n = e.x, r = e.y,
                    o = e.radius, i = void 0 === o ? 50 : o, a = e.stroke, s = void 0 === a ? {} : a, l = e.color,
                    c = void 0 === l ? "#000000" : l, u = e.opacity, f = void 0 === u ? 1 : u, p = e.tab,
                    d = void 0 === p ? "shapes" : p,
                    h = Do(e, ["x", "y", "radius", "stroke", "color", "opacity", "tab"]), g = t.getCanvasCenter(i, i),
                    m = Ro(g, 2), b = m[0], v = m[1], y = 2 * i,
                    w = {x: n || b, y: r || v, radius: i, color: c, opacity: f, stroke: s, width: y, height: y},
                    x = zo(zo(zo(zo({}, t._initArgs), h), w), {}, {tab: d, variant: vr});
                if (!h.key || !t.replaceShapeIfExisted(h.key, x)) {
                    t.drawCircle(w);
                    var k = t.pushShapeToShapes(x);
                    t.updateState({
                        selectedShape: zo(zo({}, x), {}, {
                            index: k,
                            resizingBox: !0
                        })
                    }, t.activateResizingActions)
                }
            })), Wo(Uo(t), "addImage", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, n = e.img, r = e.x,
                    o = void 0 === r ? void 0 : r, i = e.y, a = void 0 === i ? void 0 : i, s = e.opacity,
                    l = void 0 === s ? 1 : s, c = e.tab, u = void 0 === c ? "image" : c, f = e.stroke,
                    p = void 0 === f ? {} : f, d = e.otherStates,
                    h = Do(e, ["img", "x", "y", "opacity", "tab", "stroke", "otherStates"]);
                if (n) {
                    var g = function () {
                        var e = Ro(t.getSuitableImgDiemensions(n, h.lockScaleToPercentage), 2), r = e[0], i = e[1],
                            s = Ro(t.getCanvasCenter((h.width || r) / 2, (h.height || i) / 2), 2), c = s[0], f = s[1],
                            g = {
                                img: n,
                                opacity: l,
                                originalWidth: r,
                                originalHeight: i,
                                width: h.width || r,
                                height: h.height || i,
                                x: o || c,
                                y: a || f,
                                stroke: p
                            }, m = zo(zo(zo(zo({}, t._initArgs), h), g), {}, {variant: yr, tab: u});
                        if (!h.key || !t.replaceShapeIfExisted(h.key, m, d)) {
                            t.drawImage(g);
                            var b = t.pushShapeToShapes(m);
                            t.updateState(zo({
                                selectedShape: zo(zo({}, m), {}, {
                                    index: b,
                                    resizingBox: !0
                                })
                            }, d), t.activateResizingActions)
                        }
                    };
                    "string" == typeof n ? n = t.makeImgElement(n, g) : g()
                }
            })), Wo(Uo(t), "addText", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, n = e.text,
                    r = void 0 === n ? "Text" : n, o = e.textSize, i = void 0 === o ? 62 : o, a = e.color,
                    s = void 0 === a ? "#000000" : a, l = e.textFont, c = void 0 === l ? "Arial" : l, u = e.x,
                    f = void 0 === u ? void 0 : u, p = e.y, d = void 0 === p ? void 0 : p, h = e.stroke,
                    g = void 0 === h ? {} : h, m = e.opacity, b = void 0 === m ? 1 : m, v = e.tab,
                    y = void 0 === v ? "text" : v, w = e.otherStates,
                    x = Do(e, ["text", "textSize", "color", "textFont", "x", "y", "stroke", "opacity", "tab", "otherStates"]),
                    k = t.getTextWidthAndHeight({text: r, textSize: i, textFont: c}), O = Ro(k, 2), S = O[0], j = O[1],
                    C = t.getCanvasCenter(S / 2, j / 2), _ = Ro(C, 2), E = _[0], P = _[1];
                if (r) {
                    var R = {text: r, textSize: i, textFont: c, x: f || E, y: d || P, opacity: b, stroke: g, color: s},
                        D = zo(zo(zo(zo({}, t._initArgs), x), R), {}, {width: S, height: j, variant: wr, tab: y});
                    if (x.key && t.replaceShapeIfExisted(x.key, D, w)) return;
                    t.drawText(R);
                    var M = t.pushShapeToShapes(D);
                    t.updateState(zo({
                        selectedShape: zo(zo({}, D), {}, {
                            index: M,
                            resizingBox: !0
                        })
                    }, w), t.activateResizingActions)
                }
            })), Wo(Uo(t), "addAnyShape", (function (e, n) {
                if (e.index || 0 === e.index) {
                    var r = t.props.shapes[e.index];
                    if (!e.variant || r.variant === e.variant) return void t.updateShape(e, e.index, n)
                }
                var o = zo(zo({}, e), {}, {otherStates: n});
                switch (e.variant) {
                    case yr:
                        t.addImage(o);
                        break;
                    case mr:
                        t.addRect(o);
                        break;
                    case br:
                        t.addSquare(o);
                        break;
                    case vr:
                        t.addCircle(o);
                        break;
                    case wr:
                        t.addText(o);
                    default:
                        return
                }
            })), Wo(Uo(t), "getSuitableImgDiemensions", (function (e) {
                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0, r = e.width, o = e.height;
                if (o > t._canvas.height) {
                    var i = o / t._canvas.height;
                    o /= i, r /= i
                }
                if (r > t._canvas.width) {
                    var a = r / t._canvas.width;
                    o /= a, r /= a
                }
                if (n) {
                    var s = n / 100;
                    r *= s, o *= s
                }
                return [r = t.fromLatestCanvasSizeValue(r, "width"), o = t.fromLatestCanvasSizeValue(o, "height")]
            })), Wo(Uo(t), "getShapeByKeyOrIndex", (function (e) {
                var n = e.key, r = e.index;
                if (!n && !r && 0 !== n && 0 !== r) return !1;
                var o = t.props.shapes;
                return r ? o[r] : o.filter((function (e) {
                    return e.key === n
                }))[0]
            })), Wo(Uo(t), "replaceShapeIfExisted", (function (e, n) {
                var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : void 0,
                    o = t.getShapeByKeyOrIndex({key: e});
                return !!o && (n = zo(zo({}, n), {}, {
                    x: o.x,
                    y: o.y,
                    width: o.width,
                    height: o.height
                }), t.updateShape(n, o.index, r), !0)
            })), Wo(Uo(t), "setShapeVisibilityByKeyOrIndex", (function (e) {
                var n = e.key, r = e.index, o = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : void 0,
                    i = t.getShapeByKeyOrIndex({key: n, index: r});
                i && i.hidden !== o && t.updateShape({hidden: o || !i.hidden}, i.index)
            })), Wo(Uo(t), "getShapesIndexByAnyProp", (function (e, n) {
                var r = t.props.shapes;
                if (r && 0 === r.length) return [];
                var o = [];
                return r.filter((function (t, r) {
                    var i = t[e];
                    return (i === n || void 0 === i && Boolean(i) === n) && (o.push(r), !0)
                })), o
            })), Wo(Uo(t), "updateShapes", (function (e, n) {
                var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : function () {
                }, o = t.props.shapes;
                o = o.map((function (t) {
                    return zo(zo({}, t), e)
                })), t.updateState(zo({shapes: o}, n), r)
            })), Wo(Uo(t), "replaceAllShapes", (function (e) {
                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : function () {
                };
                t.updateState({shapes: e}, (function () {
                    t.redrawShape(), n()
                }))
            })), Wo(Uo(t), "updateShape", (function (e, n) {
                var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : void 0, o = t.props,
                    i = o.shapes, a = o.selectedShape;
                if (e && (n || 0 === n || a && (a.index || 0 === a.index))) {
                    if ("string" == typeof e.img) return t.updateState({
                        selectedShape: zo(zo({}, a), {}, {
                            lockScaleToPercentage: e.lockScaleToPercentage,
                            img: e.img
                        })
                    }), void t.makeImgElement(e.img, t.updateShape, e, n, r);
                    var s = {};
                    if (n || 0 === n || (s.selectedShape = zo(zo({}, a), e)), i[n = n || 0 === n ? n : a.index]) {
                        var l = i;
                        if (e.textSize && e.textSize !== i[n].textSize || e.text && e.text !== i[n].text) {
                            var c = i[n], u = t.getTextWidthAndHeight(zo(zo({}, c), e)), f = Ro(u, 2), p = f[0],
                                d = f[1];
                            s.selectedShape ? (e.width = s.selectedShape.width = p, e.height = s.selectedShape.height = d, e.text = s.selectedShape.text = e.text || c.text) : (e.width = p, e.height = d, e.text = e.text || c.text)
                        } else {
                            var h = zo({}, e);
                            void 0 !== e.x && void 0 !== e.y && (h.x = e.x, h.y = e.y), e.stroke && (h.stroke = e.stroke), e.width && e.height && (h.width = e.width, h.height = e.height), e.lockScaleToPercentage && (e.lockScaleToPercentage = e.lockScaleToPercentage), s.selectedShape = zo(zo({}, a), h)
                        }
                        l[n] = zo(zo({}, l[n]), e), t.updateState(zo(zo({shapes: l}, s), r), (function () {
                            t.redrawShape(n)
                        }))
                    }
                }
            })), Wo(Uo(t), "clearShape", (function (e, n, r, o) {
                var i = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : {}, a = i.width, s = a || 1,
                    l = e - s, c = n - s, u = r + s, f = o + s;
                t._context.clearRect(l, c, u, f)
            })), Wo(Uo(t), "eraseAndRemoveShapeFromArray", (function (e, n) {
                if (0 !== Object.keys(t.targettedShape(e)).length) return t.clearShape(0, 0, t._canvas.width, t._canvas.height), n.filter((function (n) {
                    return n.index !== e && (n.index > e && (n.index -= 1), t.drawShapeThroughVariant(n), n)
                }))
            })), Wo(Uo(t), "deleteShapeByKeyOrIndex", (function (e) {
                var n = e.index, r = e.key, o = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
                    i = t.props.selectedShape;
                if (!n && 0 !== n && !r) {
                    if (!i) return;
                    n = i.index
                }
                var a = t.props.shapes, s = n || 0 === n ? n : (t.getShapeByKeyOrIndex({key: r}) || {}).index;
                (s || 0 === s) && (s === i.index && (o.selectedShape = {}), t.updateState(zo({shapes: t.eraseAndRemoveShapeFromArray(s, a)}, o)))
            })), Wo(Uo(t), "deleteShapes", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [],
                    n = arguments.length > 1 ? arguments[1] : void 0, r = t.props.shapes;
                e.forEach((function (e) {
                    r = t.eraseAndRemoveShapeFromArray(e, r)
                })), t.updateState(zo({shapes: r}, n))
            })), Wo(Uo(t), "deleteAllShapesOrByTypeOrIndicies", (function (e) {
                var n = e.type, r = e.all, o = void 0 !== r && r, i = e.applied, a = void 0 !== i && i, s = e.secured,
                    l = void 0 === s ? [] : s;
                if (n || o) {
                    if (o) {
                        var c = (t.getShapeByKeyOrIndex({key: "watermark-layer"}) || {}).index, u = Mo(l);
                        !c && 0 !== c || u.includes(c) || u.push(c);
                        var f = [];
                        return t.clearShape(0, 0, t._canvas.width, t._canvas.height), a || (f = t.props.shapes.filter((function (e) {
                            return !(!e.applied && !u.includes(e.index)) && (t.drawShapeThroughVariant(e), e)
                        }))), void t.updateState({shapes: f, selectedShape: {}})
                    }
                    var p = t.getShapesIndexByAnyProp("type", n);
                    p.length > 0 && t.deleteShapes(p)
                }
            })), Wo(Uo(t), "makeImgElement", (function (e, n, r) {
                for (var o = arguments.length, i = new Array(o > 3 ? o - 3 : 0), a = 3; a < o; a++) i[a - 3] = arguments[a];
                if (!e) return "";
                t.updateState({isShowSpinner: !0});
                var s = new Image;
                return s.crossOrigin = "Anonymous", s.src = e.startsWith("data:image") ? e : "".concat(e, "?v=").concat(Math.random()), s.onload = function () {
                    if (r) {
                        var e, o;
                        if (r.position) {
                            var a, l, c = Ro(eo(r.position, t._canvas, s.width, s.height), 4);
                            a = c[0], l = c[1], e = c[2], o = c[3], r.x = a, r.y = l
                        }
                        var u = Ro(t.getSuitableImgDiemensions(s, r.lockScaleToPercentage), 2), f = u[0], p = u[1];
                        r.width = e || f, r.originalWidth = f, r.height = o || p, r.originalHeight = p, n.apply(void 0, [r].concat(i))
                    } else n.apply(void 0, i);
                    t.updateState({isShowSpinner: !1})
                }, s.onerror = function () {
                    t.updateState({isShowSpinner: !1}), console.error("Error loading the image...")
                }, r && (r.img = s), s
            })), Wo(Uo(t), "fromLatestCanvasSizeValue", (function (e, n) {
                return t._canvas && t.state.latestCanvasSize ? e.mapNumber(0, t.state.latestCanvasSize[n], 0, t._canvas[n]) : e
            })), t.canvasRef = Object(o.createRef)(), t.shapeResizingBoxRef = Object(o.createRef)(), t.state = {
                resizeControlTarget: null,
                latestCanvasSize: null
            }, t
        }

        return t = a, r = [{
            key: "getDerivedStateFromProps", value: function (e, t) {
                return zo(zo({}, t), {}, {latestCanvasSize: e.latestCanvasSize || {width: 0, height: 0}})
            }
        }], (n = [{
            key: "componentDidMount", value: function () {
                var e = this;
                if (this.canvasRef && this.canvasRef.current && !this._canvas) {
                    var t, n;
                    this._canvas = this.canvasRef.current, this._canvas.addEventListener("mousedown", this.onSelect), this._context = this._canvas.getContext("2d");
                    var r = "1px solid ".concat((null === (t = this.props.theme) || void 0 === t || null === (n = t.colors) || void 0 === n ? void 0 : n.text) || ("light" === this.props.colorScheme ? "#000" : "#fff")),
                        o = [{
                            label: "Rectangle",
                            variant: mr,
                            iconStyles: {height: 50, width: 100, border: r},
                            drawFn: this.addRect
                        }, {
                            label: "Square", variant: br, iconStyles: {border: r}, drawFn: function (t) {
                                return e.addSquare(zo({width: 75, height: 75}, t))
                            }
                        }, {
                            label: "Circle",
                            variant: vr,
                            iconStyles: {border: r, borderRadius: "50%"},
                            drawFn: this.addCircle
                        }];
                    this.props.updateState({
                        shapeOperations: {
                            addImage: this.addImage,
                            addRect: this.addRect,
                            addCircle: this.addCircle,
                            addText: this.addText,
                            addOrUpdate: this.addAnyShape,
                            updateShape: this.updateShape,
                            updateShapes: this.updateShapes,
                            replaceAllShapes: this.replaceAllShapes,
                            deleteShape: this.deleteShapeByKeyOrIndex,
                            deleteShapes: this.deleteAllShapesOrByTypeOrIndicies,
                            setShapeVisibility: this.setShapeVisibilityByKeyOrIndex,
                            getShape: this.getShapeByKeyOrIndex,
                            getShapesIndicies: this.getShapesIndexByAnyProp,
                            prepareFinalCanvas: this.prepareFinalCanvas
                        }, availableShapes: o
                    })
                }
            }
        }, {
            key: "componentWillUnmount", value: function () {
                this._canvas.removeEventListener("mousedown", this.onSelect)
            }
        }, {
            key: "componentDidUpdate", value: function (e) {
                e.width === this.props.width && e.height === this.props.height || this.redrawShape()
            }
        }, {
            key: "render", value: function () {
                var e = this.props, t = e.height, n = e.width, r = e.selectedShape, o = r.width,
                    i = void 0 === o ? 0 : o, a = r.height, s = void 0 === a ? 0 : a, l = r.x, c = void 0 === l ? 0 : l,
                    u = r.y, f = void 0 === u ? 0 : u, p = r.resizingBox, d = void 0 !== p && p,
                    h = r.lockScaleToPercentage, g = void 0 === h ? 0 : h, m = e.processWithCloudimage, b = e.wrapperId,
                    v = ["ne", "nw", "sw", "se"];
                m || v.splice(0, 0, "e", "n", "w", "s");
                var y = (this._canvas ? this._canvas.offsetLeft : 0) + c,
                    w = (this._canvas ? this._canvas.offsetTop : 0) + f, x = {pointerEvents: "all"};
                return Object(K.jsxs)(K.Fragment, {
                    children: [Object(K.jsx)(Ce, {
                        ref: this.canvasRef,
                        id: "".concat(b, "_").concat("filerobot-shapes-edit-box"),
                        width: n,
                        height: t,
                        tabIndex: 1
                    }), Object(K.jsxs)("div", {
                        ref: this.shapeResizingBoxRef,
                        className: "cropper-crop-box",
                        style: {
                            display: d && !g ? "block" : "none",
                            width: i,
                            height: s,
                            left: y,
                            top: w,
                            pointerEvents: "none"
                        },
                        children: [["e", "n", "w", "s"].map((function (e) {
                            return Object(K.jsx)("span", {
                                className: "cropper-line line-".concat(e, " shape-resizing-control"),
                                "data-direction": e,
                                style: x
                            }, e)
                        })), v.map((function (e) {
                            return Object(K.jsx)("span", {
                                className: "cropper-point point-".concat(e, " shape-resizing-control"),
                                "data-direction": e,
                                style: x
                            }, e)
                        }))]
                    })]
                })
            }
        }]) && Lo(t.prototype, n), r && Lo(t, r), a
    }(o.Component);

    function Vo(e) {
        return (Vo = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function $o(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    function Ko(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function Qo(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Zo(e, t) {
        return (Zo = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Go(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = ei(e);
            if (t) {
                var o = ei(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Jo(this, n)
        }
    }

    function Jo(e, t) {
        return !t || "object" !== Vo(t) && "function" != typeof t ? function (e) {
            if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return e
        }(e) : t
    }

    function ei(e) {
        return (ei = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var ti = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Zo(e, t)
        }(i, e);
        var t, n, r, o = Go(i);

        function i() {
            return Ko(this, i), o.apply(this, arguments)
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.activeTab, n = e.isHideCanvas, r = e.watermark, o = void 0 === r ? {} : r,
                    i = e.focusPoint, a = e.original, s = e.updateState, l = e.src, c = e.shapes, u = e.selectedShape,
                    f = e.config, p = f.colorScheme, d = f.elementId, h = f.processWithCloudimage, g = f.theme,
                    m = e.roundCrop, b = e.latestCanvasSize, v = o.applyByDefault, y = Xr(d),
                    w = y && y.getBoundingClientRect() || {};
                return Object(K.jsxs)(je, {
                    id: "preview-img-box",
                    hideCanvas: "crop" === t || n,
                    isShowWatermark: v,
                    children: [Object(K.jsx)(So, Xo({}, this.props)), "focus_point" !== t && Object(K.jsx)(Yo, {
                        width: w.width,
                        height: w.height,
                        shapes: c,
                        updateState: s,
                        selectedShape: u,
                        activeTab: t,
                        round: m,
                        latestCanvasSize: b,
                        colorScheme: p,
                        theme: g,
                        wrapperId: d,
                        processWithCloudimage: h
                    }), "focus_point" === t && Object(K.jsx)(Eo, {src: l, updateState: s, focusPoint: i, original: a})]
                })
            }
        }]) && Qo(t.prototype, n), r && Qo(t, r), i
    }(o.Component);

    function ni(e) {
        return (ni = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function ii(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function ai(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function si(e, t) {
        return (si = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function li(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = fi(e);
            if (t) {
                var o = fi(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return ci(this, n)
        }
    }

    function ci(e, t) {
        return !t || "object" !== ni(t) && "function" != typeof t ? ui(e) : t
    }

    function ui(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function fi(e) {
        return (fi = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function pi(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var di = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && si(e, t)
        }(i, e);
        var t, n, r, o = li(i);

        function i() {
            var e;
            ii(this, i);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return pi(ui(e = o.call.apply(o, [this].concat(n))), "state", {isBlockRatio: !1}), pi(ui(e), "changeWidth", (function (t) {
                var n = e.state.isBlockRatio, r = e.props.canvasDimensions, o = t.target.value, i = r.height;
                n || (i = o && o / r.ratio || 1), e.props.updateState({
                    canvasDimensions: oi(oi({}, r), {}, {
                        width: o,
                        height: i
                    })
                })
            })), pi(ui(e), "changeHeight", (function (t) {
                var n = e.state.isBlockRatio, r = e.props.canvasDimensions, o = t.target.value, i = r.width;
                n || (i = o && o * r.ratio || 1), e.props.updateState({
                    canvasDimensions: oi(oi({}, r), {}, {
                        width: i,
                        height: o
                    })
                })
            })), pi(ui(e), "toggleRatio", (function () {
                e.setState({isBlockRatio: !e.state.isBlockRatio})
            })), e
        }

        return t = i, (n = [{
            key: "componentDidMount", value: function () {
                var e = this.props, t = e.operations, n = e.processWithCloudService, r = e.updateState,
                    o = e.forceApplyOperations, i = t.findIndex((function (e) {
                        return "resize" === e.stack[0].name
                    }));
                i > -1 && n && (t.splice(i, 1), r({operations: t}), o(t, "resize"))
            }
        }, {
            key: "render", value: function () {
                var e = this, t = this.state.isBlockRatio, n = this.props, r = n.canvasDimensions,
                    o = n.processWithCloudService, i = n.onPreResize, a = n.t;
                return Object(K.jsxs)(Se, {
                    id: "preview-img-box",
                    children: [Object(K.jsx)(Jt, {children: a["warning.too_big_resolution"]}), Object(K.jsxs)(en, {
                        children: [Object(K.jsx)("h4", {children: a["pre_resize.title"]}), Object(K.jsx)(Qt, {
                            children: Object(K.jsxs)(Zt, {
                                children: [Object(K.jsxs)(Et, {
                                    children: [Object(K.jsx)(Pt, {children: a["common.width"]}), Object(K.jsx)(Rt, {
                                        fullSize: !0,
                                        value: parseInt(r.width, 10) || "",
                                        onChange: this.changeWidth
                                    })]
                                }), Object(K.jsx)(Mt, {
                                    children: Object(K.jsx)(At, {
                                        active: !t,
                                        style: o ? {cursor: "not-allowed"} : {},
                                        link: !0,
                                        onClick: function () {
                                            !o && e.toggleRatio()
                                        },
                                        children: Object(K.jsx)(Tt, {
                                            active: !t,
                                            style: o ? {cursor: "not-allowed"} : {}
                                        })
                                    })
                                }), Object(K.jsxs)(Et, {
                                    children: [Object(K.jsx)(Pt, {children: a["common.height"]}), Object(K.jsx)(Rt, {
                                        fullSize: !0,
                                        value: parseInt(r.height, 10) || "",
                                        onChange: this.changeHeight
                                    })]
                                })]
                            })
                        }), Object(K.jsxs)(Gt, {
                            children: [Object(K.jsx)("p", {
                                children: Object(K.jsx)(He, {
                                    themeColor: !0,
                                    themeBtn: !0,
                                    onClick: function () {
                                        i("keep")
                                    },
                                    children: a["pre_resize.keep_original_resolution"]
                                })
                            }), Object(K.jsx)("p", {
                                children: Object(K.jsx)(He, {
                                    themeColor: !0,
                                    success: !0,
                                    onClick: function () {
                                        i("resize")
                                    },
                                    children: a["pre_resize.resize_n_continue"]
                                })
                            })]
                        })]
                    })]
                })
            }
        }]) && ai(t.prototype, n), r && ai(t, r), i
    }(o.Component);

    function hi(e) {
        return (hi = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function gi(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function mi(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function bi(e, t) {
        return (bi = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function vi(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = wi(e);
            if (t) {
                var o = wi(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return yi(this, n)
        }
    }

    function yi(e, t) {
        return !t || "object" !== hi(t) && "function" != typeof t ? function (e) {
            if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return e
        }(e) : t
    }

    function wi(e) {
        return (wi = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var xi = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && bi(e, t)
        }(i, e);
        var t, n, r, o = vi(i);

        function i() {
            return gi(this, i), o.apply(this, arguments)
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.name, n = e.activeTab, r = e.updateState, o = e.t,
                    i = "rotate" === t ? "orientation" : t;
                return Object(K.jsxs)(_, {
                    active: n === t, onClick: function () {
                        return r({activeTab: t})
                    }, children: [Object(K.jsx)(E, {name: t}), Object(K.jsx)(P, {children: o["toolbar.".concat(i)]})]
                })
            }
        }]) && mi(t.prototype, n), r && mi(t, r), i
    }(o.Component);

    function ki(e) {
        return (ki = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Oi(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function Si(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function ji(e, t) {
        return (ji = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Ci(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Ei(e);
            if (t) {
                var o = Ei(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return _i(this, n)
        }
    }

    function _i(e, t) {
        return !t || "object" !== ki(t) && "function" != typeof t ? function (e) {
            if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return e
        }(e) : t
    }

    function Ei(e) {
        return (Ei = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var Pi = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && ji(e, t)
        }(i, e);
        var t, n, r, o = Ci(i);

        function i() {
            return Oi(this, i), o.apply(this, arguments)
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.active, n = e.name, r = e.onApplyEffects, o = e.noCapitalStrs;
                return Object(K.jsxs)(D, {
                    active: t === n,
                    onClick: r.bind(null, n),
                    children: [Object(K.jsx)(M, {src: Kr(n)}), Object(K.jsx)(A, {noCapitalStrs: o, children: Qr(n)})]
                })
            }
        }]) && Si(t.prototype, n), r && Si(t, r), i
    }(o.Component);

    function Ri(e) {
        return (Ri = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Di(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function Mi(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Ai(e, t) {
        return (Ai = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Ti(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = zi(e);
            if (t) {
                var o = zi(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Ii(this, n)
        }
    }

    function Ii(e, t) {
        return !t || "object" !== Ri(t) && "function" != typeof t ? function (e) {
            if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return e
        }(e) : t
    }

    function zi(e) {
        return (zi = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var Li = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Ai(e, t)
        }(i, e);
        var t, n, r, o = Ti(i);

        function i() {
            return Di(this, i), o.apply(this, arguments)
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.onApplyEffects, n = e.effect, r = e.noCapitalStrs;
                return Object(K.jsx)(R, {
                    children: lr.map((function (e) {
                        return Object(K.jsx)(Pi, {active: n, name: e, onApplyEffects: t, noCapitalStrs: r}, e)
                    }))
                })
            }
        }]) && Mi(t.prototype, n), r && Mi(t, r), i
    }(o.Component);

    function Bi(e) {
        return (Bi = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Ni(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function Fi(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Ui(e, t) {
        return (Ui = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Hi(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Yi(e);
            if (t) {
                var o = Yi(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Wi(this, n)
        }
    }

    function Wi(e, t) {
        return !t || "object" !== Bi(t) && "function" != typeof t ? function (e) {
            if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return e
        }(e) : t
    }

    function Yi(e) {
        return (Yi = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var Vi = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Ui(e, t)
        }(i, e);
        var t, n, r, o = Hi(i);

        function i() {
            return Ni(this, i), o.apply(this, arguments)
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.active, n = e.name, r = e.onApplyFilters;
                return Object(K.jsxs)(D, {
                    active: t === n,
                    onClick: r.bind(null, n),
                    children: [Object(K.jsx)(M, {src: Kr(n)}), Object(K.jsx)(A, {children: Qr(n)})]
                })
            }
        }]) && Fi(t.prototype, n), r && Fi(t, r), i
    }(o.Component);

    function qi(e) {
        return (qi = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Xi(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function $i(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Ki(e, t) {
        return (Ki = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Qi(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Gi(e);
            if (t) {
                var o = Gi(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Zi(this, n)
        }
    }

    function Zi(e, t) {
        return !t || "object" !== qi(t) && "function" != typeof t ? function (e) {
            if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return e
        }(e) : t
    }

    function Gi(e) {
        return (Gi = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var Ji = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Ki(e, t)
        }(i, e);
        var t, n, r, o = Qi(i);

        function i() {
            return Xi(this, i), o.apply(this, arguments)
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.onApplyFilters, n = e.filter;
                return Object(K.jsx)(R, {
                    children: cr.map((function (e) {
                        return Object(K.jsx)(Vi, {active: n, name: e, onApplyFilters: t}, e)
                    }))
                })
            }
        }]) && $i(t.prototype, n), r && $i(t, r), i
    }(o.Component);

    function ea(e) {
        return (ea = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function ta(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function na(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function ra(e, t) {
        return (ra = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function oa(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = sa(e);
            if (t) {
                var o = sa(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return ia(this, n)
        }
    }

    function ia(e, t) {
        return !t || "object" !== ea(t) && "function" != typeof t ? aa(e) : t
    }

    function aa(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function sa(e) {
        return (sa = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function la(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var ca = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && ra(e, t)
        }(i, e);
        var t, n, r, o = oa(i);

        function i() {
            var e;
            ta(this, i);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return la(aa(e = o.call.apply(o, [this].concat(n))), "state", {
                aspectRatio: NaN,
                activeRatio: "custom"
            }), la(aa(e), "changeWidth", (function (t) {
                var n = e.props.initialZoom;
                window.scaleflexPlugins.cropperjs.setCropBoxData({width: +t.target.value / n / window.scaleflexPlugins.zoom})
            })), la(aa(e), "changeHeight", (function (t) {
                var n = e.props.initialZoom;
                window.scaleflexPlugins.cropperjs.setCropBoxData({height: +t.target.value / n / window.scaleflexPlugins.zoom})
            })), la(aa(e), "toggleRatio", (function (t) {
                t.preventDefault(), t.stopPropagation();
                var n = e.props.cropDetails, r = n.width, o = n.height, i = e.state.aspectRatio;
                i = i ? NaN : r / o, window.scaleflexPlugins.cropperjs.setAspectRatio(i), window.scaleflexPlugins.cropperjs.setCropBoxData({
                    width: r / window.scaleflexPlugins.zoom,
                    height: o / window.scaleflexPlugins.zoom
                }), e.setState({aspectRatio: i})
            })), la(aa(e), "changeRatio", (function (t) {
                var n, r = e.state.aspectRatio, o = e.props, i = o.original, a = i.width, s = void 0 === a ? 1 : a,
                    l = i.height, c = void 0 === l ? 1 : l, u = o.updateState;
                "custom" !== t.name || r ? (u({roundCrop: "round" === t.name || 50 === t.radius}), n = "original" === t.name ? s / c : t.value, window.scaleflexPlugins.cropperjs.setAspectRatio(n), e.setState({
                    activeRatio: t.name,
                    aspectRatio: n
                })) : e.setState({activeRatio: t.name})
            })), e
        }

        return t = i, (n = [{
            key: "componentDidMount", value: function () {
            }
        }, {
            key: "render", value: function () {
                var e = this, t = this.state, n = t.aspectRatio, r = t.activeRatio, o = this.props, i = o.cropDetails,
                    a = o.original, s = o.initialZoom, l = o.t, c = o.config.cropPresets, u = void 0 === c ? [] : c;
                return Object(K.jsxs)(jt, {
                    children: [Object(K.jsxs)(It, {
                        active: "custom" === r,
                        children: [Object(K.jsxs)(Et, {
                            children: [Object(K.jsx)(Pt, {children: l["common.width"]}), Object(K.jsx)(Rt, {
                                dark: "custom" === r,
                                fullSize: !0,
                                value: Math.round(i.width * s),
                                onChange: this.changeWidth
                            })]
                        }), Object(K.jsx)(Mt, {
                            children: Object(K.jsx)(At, {
                                active: n,
                                link: !0,
                                onClick: this.toggleRatio,
                                children: Object(K.jsx)(Tt, {active: n})
                            })
                        }), Object(K.jsxs)(Et, {
                            children: [Object(K.jsx)(Pt, {children: l["common.height"]}), Object(K.jsx)(Rt, {
                                dark: "custom" === r,
                                fullSize: !0,
                                value: Math.round(i.height * s),
                                onChange: this.changeHeight
                            })]
                        }), Object(K.jsx)(_t, {children: l["common.custom"]})]
                    }), Object(K.jsx)(Ct, {
                        children: u.map((function (t) {
                            return Object(K.jsx)(It, {
                                active: r === t.name,
                                onClick: function () {
                                    e.changeRatio(t)
                                },
                                children: Object(K.jsxs)(zt, {
                                    children: [Object(K.jsxs)(Bt, {
                                        children: [Object(K.jsx)(Nt, {}), Object(K.jsx)(Lt, {
                                            ratio: t.value || a.width / a.height,
                                            radius: t.radius
                                        })]
                                    }), Object(K.jsx)(Ft, {children: l["common.".concat(t.name)] || t.name})]
                                })
                            }, t.name)
                        }))
                    })]
                })
            }
        }]) && na(t.prototype, n), r && na(t, r), i
    }(o.Component);

    function ua(e) {
        return (ua = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function da(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function ha(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function ga(e, t) {
        return (ga = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function ma(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = ya(e);
            if (t) {
                var o = ya(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return ba(this, n)
        }
    }

    function ba(e, t) {
        return !t || "object" !== ua(t) && "function" != typeof t ? va(e) : t
    }

    function va(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function ya(e) {
        return (ya = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function wa(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var xa, ka = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && ga(e, t)
        }(i, e);
        var t, n, r, o = ma(i);

        function i() {
            var e;
            da(this, i);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return wa(va(e = o.call.apply(o, [this].concat(n))), "state", {isBlockRatio: !1}), wa(va(e), "changeWidth", (function (t) {
                var n = e.state.isBlockRatio, r = e.props.canvasDimensions, o = t.target.value, i = r.height;
                n || (i = o && o / r.ratio || 1), e.props.updateState({
                    canvasDimensions: pa(pa({}, r), {}, {
                        width: o,
                        height: i
                    })
                })
            })), wa(va(e), "changeHeight", (function (t) {
                var n = e.state.isBlockRatio, r = e.props.canvasDimensions, o = t.target.value, i = r.width;
                n || (i = o && o * r.ratio || 1), e.props.updateState({
                    canvasDimensions: pa(pa({}, r), {}, {
                        width: i,
                        height: o
                    })
                })
            })), wa(va(e), "applyPreset", (function (t) {
                var n = t.width, r = t.height;
                e.props.updateState({canvasDimensions: {ratio: n / r, width: n, height: r}})
            })), wa(va(e), "toggleRatio", (function () {
                e.setState({isBlockRatio: !e.state.isBlockRatio})
            })), e
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this, t = this.state.isBlockRatio, n = this.props, r = n.canvasDimensions,
                    o = n.processWithCloudService, i = n.t, a = n.config.resizePresets, s = void 0 === a ? [] : a;
                return Object(K.jsxs)(Qt, {
                    children: [Object(K.jsxs)(Zt, {
                        children: [Object(K.jsxs)(Et, {
                            children: [Object(K.jsx)(Pt, {children: i["common.width"]}), Object(K.jsx)(Rt, {
                                fullSize: !0,
                                value: Math.round(r.width) || "",
                                onChange: this.changeWidth
                            })]
                        }), Object(K.jsx)(Mt, {
                            children: Object(K.jsx)(At, {
                                active: !t,
                                style: o ? {cursor: "not-allowed"} : {},
                                link: !0,
                                onClick: function () {
                                    !o && e.toggleRatio()
                                },
                                children: Object(K.jsx)(Tt, {active: !t, style: o ? {cursor: "not-allowed"} : {}})
                            })
                        }), Object(K.jsxs)(Et, {
                            children: [Object(K.jsx)(Pt, {children: i["common.height"]}), Object(K.jsx)(Rt, {
                                fullSize: !0,
                                value: Math.round(r.height) || "",
                                onChange: this.changeHeight
                            })]
                        })]
                    }), Object(K.jsx)(tn, {
                        children: s.filter((function (e) {
                            return Math.abs(r.width / r.height - e.ratio) < .05
                        })).map((function (t) {
                            return Object(K.jsxs)(nn, {
                                onClick: function () {
                                    e.applyPreset(t)
                                },
                                children: [Object(K.jsxs)("div", {children: [t.width, " x ", t.height]}), Object(K.jsx)("div", {children: t.name})]
                            }, t.name)
                        }))
                    })]
                })
            }
        }]) && ha(t.prototype, n), r && ha(t, r), i
    }(o.Component);

    function Oa(e) {
        return (Oa = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Sa(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function ja(e, t) {
        return (ja = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Ca(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Pa(e);
            if (t) {
                var o = Pa(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return _a(this, n)
        }
    }

    function _a(e, t) {
        return !t || "object" !== Oa(t) && "function" != typeof t ? Ea(e) : t
    }

    function Ea(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Pa(e) {
        return (Pa = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Ra(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Da = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && ja(e, t)
        }(i, e);
        var t, n, r, o = Ca(i);

        function i(e) {
            var t;
            return function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, i), Ra(Ea(t = o.call(this, e)), "updateWithDebounce", Object(jo.debounce)(100, (function (e) {
                t.props.updateRange(e)
            }))), Ra(Ea(t), "updateRange", (function (e) {
                var n = e.target.value;
                t.setState({range: n}, (function () {
                    t.updateWithDebounce(n)
                }))
            })), t.state = {range: e.range}, t
        }

        return t = i, (n = [{
            key: "componentDidUpdate", value: function (e) {
                var t = e.range, n = this.props.range;
                t !== n && n !== this.state.range && this.setState({range: n})
            }
        }, {
            key: "render", value: function () {
                var e = this.state.range, t = this.props, n = t.label, r = t.min, o = void 0 === r ? -100 : r,
                    i = t.max, a = void 0 === i ? 100 : i, s = t.step, l = void 0 === s ? 1 : s, c = t.labelBefore;
                return Object(K.jsxs)(Ma, {
                    className: "image-editor-range-wrapper",
                    labelBefore: c,
                    label: n,
                    children: [n && c && Object(K.jsx)("label", {children: n}), Object(K.jsx)("input", {
                        id: "range",
                        type: "range",
                        value: e,
                        min: o,
                        max: a,
                        step: l,
                        onChange: this.updateRange
                    }), n && !c && Object(K.jsx)("label", {children: n})]
                })
            }
        }]) && Sa(t.prototype, n), r && Sa(t, r), i
    }(o.Component), Ma = Object(i.b)("div").attrs((function () {
        return {className: "image-editor-range"}
    }))(xa || (xa = function (e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }(["\n#filerobot-image-editor-root & {\n  position: relative;\n  padding: 25px 5px 20px 5px;\n}\n  \n  #filerobot-image-editor-root & label {\n    display: inline-block;\n    width: 100%;\n    text-align: center;\n    padding-top: ", ";\n    color: ", ";\n  }\n  \n  #filerobot-image-editor-root & :after {\n    content: ", ";\n    display: inline-block;\n    position: absolute;\n    background: ", ";\n    height: 5px;\n    width: 2px;\n    top: 45px;\n    left: calc(50% - 1px);\n  }\n  \n  /* CHROME */\n  \n  #filerobot-image-editor-root & #range {\n    -webkit-appearance: none;\n    display: block;\n    outline: none;\n    background: ", ";\n    height: 6px;\n    width: 180px;\n    border-radius: 5px;\n    margin-bottom: 5px;\n  }\n  \n  #filerobot-image-editor-root & #range::-webkit-slider-thumb {\n      -webkit-appearance: none;\n      width: 18px;\n      height: 18px;\n      border-radius: 50%;\n      background: ", ";\n    }\n  \n  /* FIREFOX */\n  \n  #filerobot-image-editor-root & #range::-moz-range-thumb {\n    border: none;\n    height: 14px;\n    width: 14px;\n    border-radius: 50%;\n    background: ", ";\n    cursor: pointer;\n  }\n  \n  #filerobot-image-editor-root & #range::-moz-range-track {\n    width: 100%;\n    height: 3px;\n    cursor: pointer;\n    background: ", ";\n    border-radius: 5px;\n  }\n"])), (function (e) {
        return e.labelBefore ? 0 : "20px"
    }), (function (e) {
        return e.theme.colors.text || "#ffffff"
    }), (function (e) {
        return e.label ? "" : "unset"
    }), (function (e) {
        return e.theme.colors.text
    }), (function (e) {
        return e.theme.colors.accent || e.theme.colors.primaryBg
    }), (function (e) {
        return e.theme.colors.text
    }), (function (e) {
        return e.theme.colors.text
    }), (function (e) {
        return e.theme.colors.text
    }));

    function Aa(e) {
        return (Aa = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Ta(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function Ia(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function za(e, t) {
        return (za = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function La(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Fa(e);
            if (t) {
                var o = Fa(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Ba(this, n)
        }
    }

    function Ba(e, t) {
        return !t || "object" !== Aa(t) && "function" != typeof t ? Na(e) : t
    }

    function Na(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Fa(e) {
        return (Fa = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Ua(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Ha = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && za(e, t)
        }(i, e);
        var t, n, r, o = La(i);

        function i() {
            var e;
            Ta(this, i);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return Ua(Na(e = o.call.apply(o, [this].concat(n))), "leftRotate", (function () {
                var t = e.props, n = t.onRotate, r = t.correctionDegree, o = t.flipX, i = t.flipY;
                n(-90, parseInt(r), o, i)
            })), Ua(Na(e), "rightRotate", (function () {
                var t = e.props, n = t.onRotate, r = t.correctionDegree, o = t.flipX, i = t.flipY;
                n(90, parseInt(r), o, i)
            })), Ua(Na(e), "updateCorrectionDegree", (function (t) {
                var n = e.props, r = n.flipX, o = n.flipY;
                e.setState({correctionDegree: t}), e.props.onRotate(0, parseFloat(t), r, o)
            })), Ua(Na(e), "onFlip", (function (t) {
                var n = e.props, r = n.flipX, o = n.flipY, i = n.correctionDegree, a = "x" === t ? !r : r,
                    s = "y" === t ? !o : o;
                e.props.onRotate(0, i, a, s)
            })), e
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this, t = this.props, n = t.correctionDegree, r = t.t, o = t.config,
                    i = (void 0 === o ? {} : o).processWithCloudService;
                return Object(K.jsx)(an, {
                    children: Object(K.jsx)(sn, {
                        children: Object(K.jsxs)(ln, {
                            children: [Object(K.jsxs)(cn, {
                                children: [Object(K.jsxs)(fn, {
                                    onClick: this.leftRotate,
                                    children: [Object(K.jsx)(un, {name: "left-rotate"}), " ", Object(K.jsx)("span", {children: r["orientation.rotate_l"]})]
                                }), Object(K.jsxs)(fn, {
                                    onClick: this.rightRotate,
                                    children: [Object(K.jsx)(un, {name: "right-rotate"}), Object(K.jsx)("span", {children: r["orientation.rotate_r"]})]
                                }), !i && Object(K.jsxs)(K.Fragment, {
                                    children: [Object(K.jsxs)(fn, {
                                        onClick: function () {
                                            e.onFlip("x")
                                        },
                                        children: [Object(K.jsx)(un, {name: "flip-h"}), Object(K.jsx)("span", {children: r["orientation.flip_h"]})]
                                    }), Object(K.jsxs)(fn, {
                                        onClick: function () {
                                            e.onFlip("y")
                                        },
                                        children: [Object(K.jsx)(un, {name: "flip-v"}), Object(K.jsx)("span", {children: r["orientation.flip_v"]})]
                                    })]
                                })]
                            }), !i && Object(K.jsxs)("div", {
                                children: [Object(K.jsx)(Da, {
                                    min: -30,
                                    max: 30,
                                    step: .5,
                                    range: n,
                                    updateRange: this.updateCorrectionDegree
                                }), Object(K.jsxs)("svg", {
                                    viewBox: "-90 -5 180 10",
                                    xmlns: "http://www.w3.org/2000/svg",
                                    "aria-hidden": "true",
                                    focusable: "false",
                                    children: [Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-37.15555555555556",
                                        cy: "0",
                                        r: "0.2",
                                        opacity: "0.8"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-35.2",
                                        cy: "0",
                                        r: "0.2",
                                        opacity: "0.6"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-33.24444444444445",
                                        cy: "0",
                                        r: "0.2",
                                        opacity: "0.4"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-31.28888888888889",
                                        cy: "0",
                                        r: "0.2",
                                        opacity: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-29.333333333333336",
                                        cy: "0",
                                        r: "0.5"
                                    }), Object(K.jsx)("text", {
                                        fill: "currentColor",
                                        x: "-31.583333333333336",
                                        y: "3.5",
                                        children: "-30°"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-27.37777777777778",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-25.422222222222224",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-23.46666666666667",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-21.51111111111112",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-19.555555555555557",
                                        cy: "0",
                                        r: "0.5"
                                    }), Object(K.jsx)("text", {
                                        fill: "currentColor",
                                        x: "-21.805555555555557",
                                        y: "3.5",
                                        children: "-20°"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-17.60000000000001",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-15.644444444444446",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-13.688888888888897",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-11.733333333333334",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-9.777777777777786",
                                        cy: "0",
                                        r: "0.5"
                                    }), Object(K.jsx)("text", {
                                        fill: "currentColor",
                                        x: "-12.027777777777786",
                                        y: "3.5",
                                        children: "-10°"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-7.822222222222223",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-5.866666666666674",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-3.9111111111111114",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "-1.9555555555555628",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "0",
                                        cy: "0",
                                        r: "0.5"
                                    }), Object(K.jsx)("text", {
                                        fill: "currentColor",
                                        x: "-0.75",
                                        y: "3.5",
                                        children: "0°"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "1.9555555555555486",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "3.9111111111111114",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "5.86666666666666",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "7.822222222222223",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "9.777777777777771",
                                        cy: "0",
                                        r: "0.5"
                                    }), Object(K.jsx)("text", {
                                        fill: "currentColor",
                                        x: "8.277777777777771",
                                        y: "3.5",
                                        children: "10°"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "11.733333333333334",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "13.688888888888883",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "15.644444444444446",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "17.599999999999994",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "19.555555555555557",
                                        cy: "0",
                                        r: "0.5"
                                    }), Object(K.jsx)("text", {
                                        fill: "currentColor",
                                        x: "18.055555555555557",
                                        y: "3.5",
                                        children: "20°"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "21.511111111111106",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "23.46666666666667",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "25.422222222222217",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "27.37777777777778",
                                        cy: "0",
                                        r: "0.2"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "29.33333333333333",
                                        cy: "0",
                                        r: "0.5"
                                    }), Object(K.jsx)("text", {
                                        fill: "currentColor",
                                        x: "27.83333333333333",
                                        y: "3.5",
                                        children: "30°"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "31.28888888888889",
                                        cy: "0",
                                        r: "0.2",
                                        opacity: "0.8"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "33.24444444444444",
                                        cy: "0",
                                        r: "0.2",
                                        opacity: "0.6"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "35.2",
                                        cy: "0",
                                        r: "0.2",
                                        opacity: "0.4"
                                    }), Object(K.jsx)("circle", {
                                        fill: "currentColor",
                                        cx: "37.15555555555555",
                                        cy: "0",
                                        r: "0.2",
                                        opacity: "0.2"
                                    })]
                                })]
                            })]
                        })
                    })
                })
            }
        }]) && Ia(t.prototype, n), r && Ia(t, r), i
    }(o.Component);

    function Wa(e) {
        return (Wa = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Ya(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Va(e, t) {
        return (Va = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function qa(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Ka(e);
            if (t) {
                var o = Ka(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Xa(this, n)
        }
    }

    function Xa(e, t) {
        return !t || "object" !== Wa(t) && "function" != typeof t ? $a(e) : t
    }

    function $a(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Ka(e) {
        return (Ka = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Qa(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Za, Ga, Ja, es, ts, ns, rs = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Va(e, t)
        }(i, e);
        var t, n, r, o = qa(i);

        function i() {
            var e;
            return function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, i), Qa($a(e = o.call(this)), "updateBrightness", (function (t) {
                e.onAdjust("brightness", t)
            })), Qa($a(e), "updateContrast", (function (t) {
                e.onAdjust("contrast", t)
            })), Qa($a(e), "updateExposure", (function (t) {
                e.onAdjust("exposure", t)
            })), Qa($a(e), "updateSaturation", (function (t) {
                e.onAdjust("saturation", t)
            })), Qa($a(e), "onAdjust", (function (t, n) {
                e.setState(Qa({}, t, n)), e.props.onAdjust(t, n)
            })), e.state = {brightness: 0, contrast: 0, exposure: 0, saturation: 0}, e
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props.t, t = this.state, n = t.brightness, r = t.contrast, o = t.exposure,
                    i = t.saturation;
                return Object(K.jsxs)(hn, {
                    children: [Object(K.jsx)(Da, {
                        label: e["adjust.brightness"],
                        range: n,
                        updateRange: this.updateBrightness
                    }), Object(K.jsx)(Da, {
                        label: e["adjust.contrast"],
                        range: r,
                        updateRange: this.updateContrast
                    }), Object(K.jsx)(Da, {
                        label: e["adjust.exposure"],
                        range: o,
                        updateRange: this.updateExposure
                    }), Object(K.jsx)(Da, {
                        label: e["adjust.saturation"],
                        range: i,
                        updateRange: this.updateSaturation
                    })]
                })
            }
        }]) && Ya(t.prototype, n), r && Ya(t, r), i
    }(o.Component);

    function os(e) {
        return (os = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function is(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    function as(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function ss(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function ls(e, t) {
        return (ls = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function cs(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = ps(e);
            if (t) {
                var o = ps(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return us(this, n)
        }
    }

    function us(e, t) {
        return !t || "object" !== os(t) && "function" != typeof t ? fs(e) : t
    }

    function fs(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function ps(e) {
        return (ps = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function ds(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var hs = function (e) {
            !function (e, t) {
                if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
                e.prototype = Object.create(t && t.prototype, {
                    constructor: {
                        value: e,
                        writable: !0,
                        configurable: !0
                    }
                }), t && ls(e, t)
            }(i, e);
            var t, n, r, o = cs(i);

            function i() {
                var e;
                as(this, i);
                for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
                return ds(fs(e = o.call.apply(o, [this].concat(n))), "state", {isOpened: !1}), ds(fs(e), "getValue", (function (t) {
                    var n = e.props, r = n.list, o = n.placeholder, i = void 0 === o ? "select" : o, a = n.valueProp,
                        s = void 0 === a ? "id" : a, l = n.labelProp, c = void 0 === l ? "label" : l, u = n.renderLabel,
                        f = n.processValue, p = r.find((function (e) {
                            return e[s] === t
                        }));
                    return (f ? f(p, t, r, s, c) : p && (p[c] && u ? u(p[c]) : p[c])) || "".concat(i)
                })), ds(fs(e), "toggleMenu", (function () {
                    var t = !e.state.isOpened;
                    t ? (e.onOutsideClick = function (t) {
                        27 === t.keyCode && e.toggleMenu()
                    }, document.addEventListener("keyup", e.onOutsideClick), document.addEventListener("mouseup", e.handleOutsideMouseClick), document.addEventListener("touchstart", e.handleOutsideMouseClick)) : (document.removeEventListener("keyup", e.onOutsideClick), document.removeEventListener("mouseup", e.handleOutsideMouseClick), document.removeEventListener("touchstart", e.handleOutsideMouseClick)), e.setState({isOpened: t})
                })), ds(fs(e), "handleOutsideMouseClick", (function (t) {
                    var n = t.target;
                    e.dropdown && (e.selectedItem && e.selectedItem.contains(n) || (e.dropdown.contains(n) ? t.stopPropagation() : e.setState({isOpened: !1})))
                })), ds(fs(e), "onItemClick", (function (t, n) {
                    var r = e.props, o = r.onChange, i = r.onBlur;
                    o(n, t), i && i(n), e.setState({isOpened: !1})
                })), ds(fs(e), "filterList", (function (t) {
                    var n = e.props, r = n.exclude, o = n.valueProp, i = void 0 === o ? "id" : o;
                    return r && r.length ? t.filter((function (e) {
                        return !r.includes(e[i])
                    })) : t
                })), e
            }

            return t = i, (n = [{
                key: "componentWillUnmount", value: function () {
                    document.removeEventListener("keyup", this.onOutsideClick), document.removeEventListener("mouseup", this.onOutsideClick), document.removeEventListener("touchstart", this.onOutsideClick), document.removeEventListener("mouseup", this.handleOutsideMouseClick), document.removeEventListener("touchstart", this.handleOutsideMouseClick)
                }
            }, {
                key: "render", value: function () {
                    var e = this, t = this.state.isOpened, n = this.props, r = n.value, o = n.list, i = n.valueProp,
                        a = void 0 === i ? "id" : i, s = n.labelProp, l = void 0 === s ? "label" : s, c = n.renderLabel,
                        u = n.width, f = void 0 === u ? "" : u, p = n.styles, d = void 0 === p ? {} : p, h = n.display,
                        g = n.style, m = n.labelDescription, b = void 0 === m ? "" : m, v = n.size, y = n.small,
                        w = void 0 !== y && y, x = n.notRelativePosition, k = void 0 !== x && x, O = function (e) {
                            return e[l] && c ? c(e[l]) : e[l]
                        };
                    return Object(K.jsxs)(gs, {
                        width: f,
                        display: h,
                        styles: d,
                        style: g,
                        notRelativePosition: k,
                        children: [Object(K.jsxs)(ms, {
                            as: "div",
                            small: w,
                            size: v,
                            styles: d,
                            focused: t,
                            notSelected: !r,
                            onClick: this.toggleMenu,
                            ref: function (t) {
                                e.selectedItem = t
                            },
                            relativePosition: k,
                            children: [this.getValue(r), " ", b ? "(".concat(b, ")") : ""]
                        }), Object(K.jsx)(bs, {
                            size: v, show: t && this.filterList(o).length, ref: function (t) {
                                e.dropdown = t
                            }, limitedWidth: k, children: this.filterList(o).map((function (t) {
                                return Object(K.jsxs)(vs, {
                                    size: v,
                                    onClick: function (n) {
                                        e.onItemClick(n, t[a])
                                    },
                                    children: [t.color && Object(K.jsx)(xs, {color: t.color}), Object(K.jsx)(ws, {children: O(t)})]
                                }, t[a])
                            }))
                        })]
                    })
                }
            }]) && ss(t.prototype, n), r && ss(t, r), i
        }(o.Component),
        gs = i.b.div(Za || (Za = is(["\n#filerobot-image-editor-root & {\n  ", ";\n  display: ", ";\n  width: ", ";\n  text-align: ", ";\n  max-width: 400px;\n}\n"])), (function (e) {
            return !e.notRelativePosition && "position: relative;"
        }), (function (e) {
            return e.display ? e.display : e.width ? "inline-block" : "block"
        }), (function (e) {
            return e.width || "auto"
        }), (function (e) {
            return e.styles.textAlign ? e.styles.textAlign : "left"
        })),
        ms = Object(i.b)(Dt).attrs()(Ga || (Ga = is(["\n#filerobot-image-editor-root & {\n  width: 100%;\n  padding: 9px 12px;\n  cursor: pointer;\n}\n  #filerobot-image-editor-root ", "\n  \n  &:hover {\n    opacity: ", ";\n  }\n  #filerobot-image-editor-root & :after {\n    content: '';\n    position: absolute;\n    top: 50%;\n    margin-top: -2.5px;\n    right: 5px;\n    width: 0; \n    height: 0; \n    border-left: 5px solid transparent;\n    border-right: 5px solid transparent;\n    \n    border-top: 5px solid #fff;\n  }\n"])), (function (e) {
            return e.relativePosition && "position: relative;"
        }), (function (e) {
            return e.styles.opacity && 1
        })),
        bs = i.b.ul(Ja || (Ja = is(["\n#filerobot-image-editor-root & {\n  display: ", ";\n  list-style-type: none;\n  margin: 2px 0 0 0;\n  padding: 0;\n  position: absolute;\n  width: ", ";\n  border: none;\n  color: ", ";\n  background: ", ";\n  box-shadow: inset 0 1px 1px rgba(0,0,0,0.5), 0 1px 0 rgba(82,104,109,.6);\n  border-radius: .25rem;\n  overflow: hidden;\n  overflow-y: auto;\n  max-height: ", ";\n  z-index: 101000000000000;\n}\n\n  @media (max-width: 600px) {\n#filerobot-image-editor-root & {\n    position: relative;\n    max-height: ", "\n}\n  }\n"])), (function (e) {
            return e.show ? "block" : "none"
        }), (function (e) {
            return e.limitedWidth ? "111px" : "100%"
        }), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.primaryBg || "#fff"
        }), (function (e) {
            return "sm" === e.size ? "250px" : "200px"
        }), (function (e) {
            return e.show ? "120px" : "0"
        })),
        vs = i.b.li(es || (es = is(["\n#filerobot-image-editor-root & {\n  cursor: pointer;\n  ", ";\n}\n  \n  #filerobot-image-editor-root &:hover {\n    background: ", ";\n  }\n"])), (function (e) {
            return ys(e.size)
        }), (function (e) {
            return e.theme.colors.primaryBg
        })), ys = function (e) {
            switch (e) {
                case"sm":
                    return "padding: .2rem .6rem; font-size: 12px;";
                case"md":
                    return "padding: .3rem .7rem; font-size: 12px;";
                default:
                    return "padding: .375rem .75rem; font-size: 14px;"
            }
        },
        ws = i.b.span(ts || (ts = is(["\n#filerobot-image-editor-root & {\n  display: inline-block;\n  vertical-align: middle;\n  white-space: break-spaces;\n}\n"]))),
        xs = i.b.span(ns || (ns = is(["\n#filerobot-image-editor-root & {\n  background: ", ";\n  width: 14px;\n  height: 14px;\n  display: inline-block;\n  vertical-align: middle;\n  margin-right: 3px;\n  background-size: cover;\n}\n"])), (function (e) {
            return e.color ? e.color : "transparent"
        })), ks = hs;

    function Os(e) {
        return (Os = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Ss(e, t) {
        return function (e) {
            if (Array.isArray(e)) return e
        }(e) || function (e, t) {
            if ("undefined" == typeof Symbol || !(Symbol.iterator in Object(e))) return;
            var n = [], r = !0, o = !1, i = void 0;
            try {
                for (var a, s = e[Symbol.iterator](); !(r = (a = s.next()).done) && (n.push(a.value), !t || n.length !== t); r = !0) ;
            } catch (e) {
                o = !0, i = e
            } finally {
                try {
                    r || null == s.return || s.return()
                } finally {
                    if (o) throw i
                }
            }
            return n
        }(e, t) || function (e, t) {
            if (!e) return;
            if ("string" == typeof e) return js(e, t);
            var n = Object.prototype.toString.call(e).slice(8, -1);
            "Object" === n && e.constructor && (n = e.constructor.name);
            if ("Map" === n || "Set" === n) return Array.from(e);
            if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return js(e, t)
        }(e, t) || function () {
            throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
        }()
    }

    function js(e, t) {
        (null == t || t > e.length) && (t = e.length);
        for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
        return r
    }

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

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

    function Es(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Ps(e, t) {
        return (Ps = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Rs(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = As(e);
            if (t) {
                var o = As(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Ds(this, n)
        }
    }

    function Ds(e, t) {
        return !t || "object" !== Os(t) && "function" != typeof t ? Ms(e) : t
    }

    function Ms(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function As(e) {
        return (As = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Ts(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Is = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Ps(e, t)
        }(i, e);
        var t, n, r, o = Rs(i);

        function i(e) {
            var t, n, r;
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, i), Ts(Ms(r = o.call(this, e)), "changeOpacity", (function (e) {
                r.updateWatermarkProperty({opacity: e})
            })), Ts(Ms(r), "updateWatermarkProperty", (function (e, t, n) {
                var o = r.props, i = o.shapeOperations, a = o.watermark.lockScaleToPercentage, s = void 0 === a ? 0 : a;
                t || (t = e), n || (n = e);
                var l = r.getWatermarkLayer() || {};
                r.setState(e, (function () {
                    i.addOrUpdate(_s(_s({}, t), {}, {
                        lockScaleToPercentage: s,
                        key: "watermark-layer",
                        index: l.index,
                        tab: "watermark"
                    }), {watermark: _s(_s({}, r.props.watermark), n)})
                }))
            })), Ts(Ms(r), "getWatermarkLayer", (function () {
                return r.props.shapeOperations.getShape({key: "watermark-layer"})
            })), Ts(Ms(r), "changeURL", (function (e) {
                var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, n = e.target.value;
                if (r.props.watermark.text) r.initWatermarkImage(n); else {
                    var o = r.state.position;
                    r.updateWatermarkProperty({url: n, position: o}, _s({img: n, position: o}, t), {url: "", text: !1})
                }
            })), Ts(Ms(r), "changeTextProperty", (function (e) {
                var t = Ts({}, e.target.name, e.target.value);
                if (r.props.watermark.text) r.updateWatermarkProperty(t); else {
                    var n = r.state, o = _s({
                        text: n.text,
                        color: n.color,
                        textSize: n.textSize,
                        textFont: n.textFont,
                        opacity: n.opacity,
                        variant: wr,
                        tab: "watermark"
                    }, t);
                    r.updateWatermarkProperty(_s({}, t), _s(_s({}, o), {}, {resizingBox: !0}), {text: _s(_s({}, r.props.watermark.text), o)})
                }
            })), Ts(Ms(r), "readFile", (function (e) {
                if (r.props.config.processWithCloudimage) return null;
                var t = e.target;
                if (t.files && t.files[0]) {
                    var n = new FileReader;
                    n.onload = function (e) {
                        r.changeURL({target: {value: e.target.result}}, {variant: yr})
                    }, n.readAsDataURL(t.files[0])
                }
            })), Ts(Ms(r), "getWatermarkDimensionsByPosString", (function (e, t, n) {
                return eo(e, Xr(r.props.config.elementId), t, n)
            })), Ts(Ms(r), "onPositionChange", (function (e) {
                var t = r.getWatermarkLayer() || {}, n = t.width, o = t.height;
                if (n || o) {
                    var i = Ss(r.getWatermarkDimensionsByPosString(e, n, o), 4), a = i[0], s = i[1], l = i[2], c = i[3];
                    r.updateWatermarkProperty({position: e, width: l, height: c}, {
                        x: a,
                        y: s,
                        width: l,
                        height: c
                    }, {position: e, x: a, y: s, width: l, height: c})
                }
            })), Ts(Ms(r), "initWatermarkImage", Object(jo.debounce)(500, (function (e) {
                var t = r.props.updateState, n = null;
                t({isShowSpinner: !0});
                var o = function (e) {
                    return {logoImage: e, isShowSpinner: !1, watermark: _s(_s({}, r.props.watermark), {}, {url: e.src})}
                };
                if (e) {
                    var i = r.props, a = i.shapeOperations, s = i.watermark, l = s.lockScaleToPercentage,
                        c = void 0 === l ? 0 : l, u = s.position, f = r.state.opacity;
                    (n = new Image).setAttribute("crossOrigin", "Anonymous"), n.onload = function () {
                        var e, t = r.props.watermark.imageFilter;
                        t && "function" == typeof t ? (n.onload = null, e = o(t(n))) : e = o(n);
                        var i = (r.getWatermarkLayer() || {}).index,
                            s = Ss(r.getWatermarkDimensionsByPosString(u, n.width, n.height), 4), l = s[0], p = s[1],
                            d = s[2], h = s[3];
                        a.addOrUpdate({
                            img: n,
                            opacity: f,
                            index: i,
                            x: l,
                            y: p,
                            width: d,
                            height: h,
                            variant: yr,
                            key: "watermark-layer",
                            tab: "watermark",
                            lockScaleToPercentage: c
                        }, e)
                    }, n.onerror = function () {
                        t({isShowSpinner: !1})
                    }, e.match(/^https?:\/\/./) ? n.src = e + "?" + (new Date).getTime() : n.src = e
                } else t({isShowSpinner: !1})
            }))), Ts(Ms(r), "showWatermarkList", (function () {
                r.setState({showWaterMarkList: !0})
            })), Ts(Ms(r), "hideWatermarkList", (function () {
                r.setState({showWaterMarkList: !1})
            })), Ts(Ms(r), "onChangeWatermark", (function (e) {
                r.changeURL({target: {value: e}}), r.hideWatermarkList()
            })), Ts(Ms(r), "handleInputTypeChange", (function (e) {
                var t = e.target, n = r.props, o = n.updateState, i = n.config;
                o({isShowSpinner: !0}), r.setState({selectedInputType: t.value}), "text" === t.value ? (r.changeTextProperty({
                    target: {
                        name: "text",
                        value: (i.watermark || {}).defaultText || "Your text"
                    }
                }), o({isShowSpinner: !1})) : (o({watermark: _s(_s({}, r.props.watermark), {}, {text: null})}), r.initWatermarkImage(r.props.watermark.url || ""))
            }));
            var a = e.watermark, s = a.opacity, l = a.position, c = a.url, u = a.applyByDefault, f = a.activePositions,
                p = a.handleOpacity, d = e.watermark, h = d.urls, g = d.fonts, m = [], b = l || "right-top";
            if ("string" == typeof f && pr.hasOwnProperty(f)) m = pr[f]; else if (Array.isArray(f)) {
                var v = Array(9).fill(0);
                f.map((function (e, t) {
                    return v[t] = e
                })), m = v
            } else m = Array(9).fill(1);
            return 1 !== m[fr.indexOf(b)] && (b = fr[m.indexOf(1)]), h && (h = h.map((function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "";
                if ("string" == typeof e) {
                    var t = e.split("/");
                    return {url: e, label: t[t.length - 1]}
                }
                return e
            }))), r.initWatermarkImage(c || (null === (t = h) || void 0 === t || null === (n = t[0]) || void 0 === n ? void 0 : n.url)), r.state = {
                isBlockRatio: !1,
                opacity: s || .7,
                handleOpacity: "boolean" != typeof p || p,
                position: b,
                url: c || (h && h.length > 1 ? h[0] && h[0].url : ""),
                urls: h || [],
                activePositions: m,
                isWatermarkList: h && h.length > 1,
                applyByDefault: u || !1,
                showWaterMarkList: !1,
                selectedInputType: h && h.length > 1 ? "gallery" : "text",
                text: "",
                color: "#000000",
                textSize: 62,
                textFont: "Arial",
                fonts: g || r.props.config.theme.fonts
            }, r
        }

        return t = i, (n = [{
            key: "componentDidUpdate", value: function (e) {
                var t = this.props;
                t.watermark.position !== this.state.position && this.onPositionChange(this.state.position), t.watermark.applyByDefault !== e.watermark.applyByDefault && (this.getWatermarkLayer() ? this.updateWatermarkProperty({applyByDefault: !1}, {
                    hidden: !0,
                    resizingBox: !1
                }, {applyByDefault: !1}) : this.setState({applyByDefault: t.watermark.applyByDefault}), t.watermark.applyByDefault && (this.getWatermarkLayer() ? this.updateWatermarkProperty({applyByDefault: !0}, {
                    hidden: !1,
                    resizingBox: !0
                }, {applyByDefault: !0}) : this.initWatermarkImage(t.watermark.url)))
            }
        }, {
            key: "render", value: function () {
                var e = this, t = this.state, n = t.isWatermarkList, r = t.url, o = t.urls, i = t.opacity,
                    a = t.handleOpacity, s = t.position, l = t.activePositions,
                    c = (t.applyByDefault, t.showWaterMarkList), u = t.selectedInputType, f = t.text, p = t.color,
                    d = t.textFont, h = t.textSize, g = t.fonts, m = this.props.config, b = "upload" === u,
                    v = "gallery" === u, y = "url" === u, w = "text" === u, x = this.props.t;
                return Object(K.jsxs)(Wn, {
                    children: [Object(K.jsxs)(Kn, {
                        children: [Object(K.jsxs)("label", {
                            children: [x["common.gallery"], Object(K.jsx)("input", {
                                type: "radio",
                                value: "gallery",
                                checked: "gallery" === u,
                                onChange: this.handleInputTypeChange
                            }), Object(K.jsx)("span", {})]
                        }), Object(K.jsxs)("label", {
                            style: {cursor: m.processWithCloudimage ? "not-allowed" : void 0},
                            children: [x["common.upload"], Object(K.jsx)("input", {
                                type: "radio",
                                value: "upload",
                                checked: "upload" === u,
                                disabled: m.processWithCloudimage,
                                onChange: m.processWithCloudimage ? void 0 : this.handleInputTypeChange
                            }), Object(K.jsx)("span", {})]
                        }), Object(K.jsxs)("label", {
                            children: [x["common.url"], Object(K.jsx)("input", {
                                type: "radio",
                                value: "url",
                                checked: "url" === u,
                                onChange: this.handleInputTypeChange
                            }), Object(K.jsx)("span", {})]
                        }), Object(K.jsxs)("label", {
                            children: [x["common.text"], Object(K.jsx)("input", {
                                type: "radio",
                                value: "text",
                                checked: "text" === u,
                                onChange: this.handleInputTypeChange
                            }), Object(K.jsx)("span", {})]
                        })]
                    }), Object(K.jsxs)(Xn, {
                        children: [Object(K.jsxs)(Yn, {
                            children: [v && Object(K.jsxs)(K.Fragment, {
                                children: [Object(K.jsx)("label", {
                                    htmlFor: "url",
                                    children: "Watermark Gallery"
                                }), Object(K.jsx)(ks, {
                                    width: "100%",
                                    list: o,
                                    valueProp: "url",
                                    id: "gallery",
                                    value: r,
                                    style: {width: "calc(100% - 120px)"},
                                    onChange: function (t) {
                                        e.changeURL({target: {value: t}})
                                    }
                                })]
                            }), y && Object(K.jsxs)(K.Fragment, {
                                children: [Object(K.jsx)("label", {
                                    htmlFor: "url",
                                    children: "Watermark URL"
                                }), Object(K.jsx)(Rt, {
                                    id: "url",
                                    value: r,
                                    style: {width: "calc(100% - 120px)"},
                                    onChange: this.changeURL
                                })]
                            }), b && Object(K.jsxs)(K.Fragment, {
                                children: [Object(K.jsx)("label", {
                                    htmlFor: "image-upload",
                                    children: "Watermark Image"
                                }), Object(K.jsx)(Dt, {
                                    id: "image-upload",
                                    style: {width: "calc(100% - 120px)"},
                                    onChange: this.readFile
                                })]
                            }), w && Object(K.jsxs)(K.Fragment, {
                                children: [Object(K.jsx)("label", {
                                    htmlFor: "text",
                                    children: "Watermark Text"
                                }), Object(K.jsx)(Rt, {
                                    id: "text",
                                    value: f,
                                    style: {width: "calc(65% - 135px)", minWidth: 120},
                                    name: "text",
                                    onChange: this.changeTextProperty
                                }), Object(K.jsx)(ks, {
                                    list: m.processWithCloudimage ? gr : g,
                                    valueProp: "value",
                                    id: "textFont",
                                    value: d,
                                    style: {width: 111, display: "inline-block", marginLeft: 8},
                                    onChange: function (t) {
                                        return e.changeTextProperty({target: {name: "textFont", value: t}})
                                    }
                                }), Object(K.jsx)(Rt, {
                                    value: h,
                                    type: "number",
                                    name: "textSize",
                                    style: {width: 60, marginLeft: 8},
                                    onChange: this.changeTextProperty
                                }), Object(K.jsx)(Rt, {
                                    value: p,
                                    type: "color",
                                    style: {
                                        width: 30,
                                        marginLeft: 8,
                                        padding: 0,
                                        background: "transparent",
                                        boxShadow: "none"
                                    },
                                    name: "color",
                                    onChange: this.changeTextProperty
                                })]
                            })]
                        }), Object(K.jsx)(Vn, {
                            switcherPosition: a ? "right" : "left",
                            children: a && Object(K.jsxs)(qn, {
                                children: [Object(K.jsx)("label", {
                                    htmlFor: "opacity",
                                    style: {minWidth: 80},
                                    children: "Opacity"
                                }), Object(K.jsx)(Da, {
                                    label: x["common.opacity"],
                                    min: 0,
                                    max: 1,
                                    step: .05,
                                    range: i,
                                    updateRange: this.changeOpacity
                                })]
                            })
                        })]
                    }), Object(K.jsx)($n, {
                        children: fr.map((function (t, n) {
                            return Object(K.jsx)(Qn, {
                                value: t, active: t === s, clickable: l[n], onClick: function () {
                                    l[n] && e.onPositionChange(t)
                                }
                            }, t)
                        }))
                    }), n && c && Object(K.jsx)(Zn, {
                        children: o.map((function (t) {
                            return Object(K.jsx)(Gn, {
                                src: t, onClick: function () {
                                    e.onChangeWatermark(t)
                                }
                            }, t)
                        }))
                    })]
                })
            }
        }]) && Es(t.prototype, n), r && Es(t, r), i
    }(o.Component);

    function zs(e) {
        return (zs = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function Ns(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function Fs(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Us(e, t) {
        return (Us = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Hs(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Vs(e);
            if (t) {
                var o = Vs(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Ws(this, n)
        }
    }

    function Ws(e, t) {
        return !t || "object" !== zs(t) && "function" != typeof t ? Ys(e) : t
    }

    function Ys(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Vs(e) {
        return (Vs = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function qs(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Xs, $s, Ks, Qs, Zs, Gs, Js, el = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Us(e, t)
        }(i, e);
        var t, n, r, o = Hs(i);

        function i() {
            var e;
            Ns(this, i);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return qs(Ys(e = o.call.apply(o, [this].concat(n))), "changeWidth", (function (t) {
                var n = t.target.value, r = e.props, o = r.updateState, i = r.focusPoint, a = r.canvasDimensions;
                o({focusPoint: Bs(Bs({}, i), {}, {x: Math.min(isNaN(n) ? 0 : +n, a.width)})})
            })), qs(Ys(e), "changeHeight", (function (t) {
                var n = t.target.value, r = e.props, o = r.updateState, i = r.focusPoint, a = r.canvasDimensions;
                o({focusPoint: Bs(Bs({}, i), {}, {y: Math.min(isNaN(n) ? 0 : +n, a.height)})})
            })), e
        }

        return t = i, (n = [{
            key: "componentDidMount", value: function () {
            }
        }, {
            key: "render", value: function () {
                var e = this.props, t = e.focusPoint, n = e.t;
                return Object(K.jsx)(Qt, {
                    children: Object(K.jsxs)(Zt, {
                        active: !0,
                        children: [Object(K.jsxs)(Et, {
                            children: [Object(K.jsx)(Pt, {children: n["common.x"]}), Object(K.jsx)(Rt, {
                                dark: !0,
                                fullSize: !0,
                                value: Math.round(t.x),
                                onChange: this.changeWidth
                            })]
                        }), "  ", Object(K.jsxs)(Et, {
                            children: [Object(K.jsx)(Pt, {children: n["common.y"]}), Object(K.jsx)(Rt, {
                                dark: !0,
                                fullSize: !0,
                                value: Math.round(t.y),
                                onChange: this.changeHeight
                            })]
                        })]
                    })
                })
            }
        }]) && Fs(t.prototype, n), r && Fs(t, r), i
    }(o.Component);

    function tl(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var nl = i.b.div(Xs || (Xs = tl(["\n#filerobot-image-editor-root & {\n  display: flex;\n  width: 100%;\n  height: 100%;\n}\n"]))),
        rl = i.b.div($s || ($s = tl(["\n#filerobot-image-editor-root & {\n  color: ", ";\n  display: flex;\n  justify-content: flex-start;\n  align-items: center;\n  text-align: center; \n  width: fit-content;\n  min-width: 111px;\n  max-width: 100%;\n  height: 100%;\n  margin-left: auto;\n  margin-right: auto;\n}\n  \n  #filerobot-image-editor-root & ::-webkit-scrollbar {\n    height: 10px !important;\n  }\n  \n  #filerobot-image-editor-root & ::-webkit-scrollbar-thumb {\n    background: ", ";\n    border-radius: 5px;\n  }\n  \n  @media (min-width: 768px) {\n#filerobot-image-editor-root & {\n    overflow-x: auto;\n    overflow-y: hidden;\n    white-space: nowrap\n}\n  }\n"])), (function (e) {
            return e.theme.colors.text
        }), (function (e) {
            return e.theme.colors.border || "#3b4d54"
        })),
        ol = i.b.div(Ks || (Ks = tl(["\n#filerobot-image-editor-root & {\n  height: 100%;\n  padding: 0 15px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: fit-content;\n  margin: 0 auto;\n}\n"]))),
        il = i.b.div(Qs || (Qs = tl(["\n#filerobot-image-editor-root & {\n  padding: 8px 25px;\n}\n\n  #filerobot-image-editor-root & * {\n    cursor: pointer;\n  }\n"]))),
        al = i.b.div(Zs || (Zs = tl(["\n#filerobot-image-editor-root & {\n  width: 50px;\n  height: 50px;\n  max-width: 50px;\n  max-height: 50px;\n  padding-bottom: 3px;\n  cursor: pointer;\n  margin-left: auto;\n  margin-right: auto;\n\n  ", ";\n}\n\n  #filerobot-image-editor-root & img {\n    max-width: 100%;\n  }\n"])), (function (e) {
            return e.isIconNotProvided && "\n    background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE3LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgdmlld0JveD0iMCAwIDQ5NSA0OTUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ5NSA0OTU7IiB4bWw6c3BhY2U9InByZXNlcnZlIiBmaWxsPSJ3aGl0ZSI+DQo8Zz4NCgk8cGF0aCBkPSJNNDk1LDEwMy41MTNWOTUuNWMwLTIxLjc4LTE3LjcyLTM5LjUtMzkuNS0zOS41aC00MTZDMTcuNzIsNTYsMCw3My43MiwwLDk1LjV2MzAzLjk5N2MwLDAuMDAzLDAsMC4wMDUsMCwwLjAwOA0KCQlDMC4wMDMsNDIxLjI4MywxNy43MjIsNDM5LDM5LjUsNDM5aDQxNmMyMS43OCwwLDM5LjUtMTcuNzIsMzkuNS0zOS41VjEwMy41MjFDNDk1LDEwMy41MTgsNDk1LDEwMy41MTYsNDk1LDEwMy41MTN6IE0zOS41LDcxaDQxNg0KCQljMTMuNTA5LDAsMjQuNSwxMC45OSwyNC41LDI0LjV2NC44ODNjLTM1LjEyMSwzNC45NjMtOTIuODUsOTIuNDY0LTE0MC43MjEsMTQwLjI4OWwtNzUuMTYyLTc1LjE2Mg0KCQljLTkuMTYyLTkuMTYyLTI0LjA3MS05LjE2Mi0zMy4yMzMsMEwxNSwzODEuMzkzVjk1LjVDMTUsODEuOTksMjUuOTkxLDcxLDM5LjUsNzF6IE00NTUuNSw0MjRoLTQxNg0KCQljLTEyLjUxOSwwLTIyLjg2OC05LjQzOS0yNC4zMTktMjEuNTc0TDI0MS40OSwxNzYuMTE3YzMuMzE0LTMuMzE0LDguNzA2LTMuMzE0LDEyLjAyMSwwbDc1LjE1OCw3NS4xNTgNCgkJQzI4OS4yNiwyOTAuNjcsMjU4LjgxMywzMjEuMjQ5LDI1Ny41LDMyM2MtMi40ODUsMy4zMTMtMS44MTQsOC4wMTUsMS41LDEwLjVjMS4zNDksMS4wMTIsMi45MjgsMS41LDQuNDk0LDEuNQ0KCQljMi4xODcsMCw0LjM0OS0wLjk1Myw1LjgyMi0yLjc2NEMyNzUuMDc1LDMyNS43Nyw0MTIuOTYyLDE4OC4zMDgsNDgwLDEyMS41NTFWMzk5LjVDNDgwLDQxMy4wMSw0NjkuMDA5LDQyNCw0NTUuNSw0MjR6Ii8+DQoJPHBhdGggZD0iTTEwMy41LDE5OWMyMS43OCwwLDM5LjUtMTcuNzIsMzkuNS0zOS41UzEyNS4yOCwxMjAsMTAzLjUsMTIwUzY0LDEzNy43Miw2NCwxNTkuNVM4MS43MiwxOTksMTAzLjUsMTk5eiBNMTAzLjUsMTM1DQoJCWMxMy41MDksMCwyNC41LDEwLjk5LDI0LjUsMjQuNVMxMTcuMDA5LDE4NCwxMDMuNSwxODRTNzksMTczLjAxLDc5LDE1OS41Uzg5Ljk5MSwxMzUsMTAzLjUsMTM1eiIvPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPC9zdmc+DQo=');\n    background-size: cover;\n    background-repeat: no-repeat;\n  "
        })),
        sl = i.b.div(Gs || (Gs = tl(["\n#filerobot-image-editor-root & {\n  display: flex;\n  flex-direction: column;\n  jutifyContent: center;\n  alignItems: center;\n  margin: 20px;\n}\n\n  #filerobot-image-editor-root & input {\n    margin-left: auto;\n    margin-right: auto;\n  }\n"]))),
        ll = i.b.label(Js || (Js = tl(["\n#filerobot-image-editor-root & {\n  color: ", ";\n  display: inline-block;\n  margin-bottom: 0;\n}\n"])), (function (e) {
            return e.theme.colors.text || "#ffffff"
        }));

    function cl(e) {
        return (cl = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function pl(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function dl(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function hl(e, t) {
        return (hl = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function gl(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = vl(e);
            if (t) {
                var o = vl(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return ml(this, n)
        }
    }

    function ml(e, t) {
        return !t || "object" !== cl(t) && "function" != typeof t ? bl(e) : t
    }

    function bl(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function vl(e) {
        return (vl = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function yl(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var wl = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && hl(e, t)
        }(a, e);
        var t, n, r, i = gl(a);

        function a() {
            var e;
            pl(this, a);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return yl(bl(e = i.call.apply(i, [this].concat(n))), "renderSettings", (function (t) {
                var n = e.props, r = n.shapeOperations, i = n.t, a = t.variant, s = t.opacity, l = t.color,
                    c = t.stroke, u = void 0 === c ? {} : c, f = function (e, t) {
                        return r.updateShape({stroke: fl(fl({}, u), {}, yl({}, e, t))})
                    }, p = function (e) {
                        return r.updateShape(yl({}, e.target.name, e.target.value))
                    }, d = Object(K.jsxs)(o.Fragment, {
                        children: [Object(K.jsx)(Da, {
                            label: i["common.opacity"],
                            min: 0,
                            max: 1,
                            step: .05,
                            range: s,
                            updateRange: function (e) {
                                return r.updateShape({opacity: e})
                            },
                            labelBefore: !0
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Stroke Color"}), Object(K.jsx)(Rt, {
                                value: u.color || "#000000",
                                type: "color",
                                style: {width: 30, padding: 0, background: "transparent", boxShadow: "none"},
                                onChange: function (e) {
                                    var t = e.target.value;
                                    return f("color", t)
                                }
                            })]
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Stroke width"}), Object(K.jsx)(Rt, {
                                value: u.width || 0,
                                type: "number",
                                style: {width: 60},
                                onChange: function (e) {
                                    var t = e.target.value;
                                    return f("width", t)
                                },
                                min: 0
                            })]
                        })]
                    }, "default-settings"), h = Object(K.jsxs)(sl, {
                        children: [Object(K.jsx)(ll, {children: "Fill Color"}), Object(K.jsx)(Rt, {
                            value: l || "#000",
                            type: "color",
                            style: {width: 30, padding: 0, background: "transparent", boxShadow: "none"},
                            name: "color",
                            onChange: p
                        }, "shape-color")]
                    }, "common-settings-fields"), g = [d];
                switch (a) {
                    case mr:
                    case br:
                    case vr:
                        g.push(h);
                        break;
                    case wr:
                        var m = Object(K.jsxs)(o.Fragment, {
                            children: [Object(K.jsxs)(sl, {
                                children: [Object(K.jsx)(ll, {children: "Text"}), Object(K.jsx)(Rt, {
                                    id: "text",
                                    value: t.text || "Text",
                                    name: "text",
                                    style: {minWidth: 111},
                                    onChange: p
                                })]
                            }), Object(K.jsxs)(sl, {
                                children: [Object(K.jsx)(ll, {children: "Font family"}), Object(K.jsx)(ks, {
                                    list: hr,
                                    valueProp: "value",
                                    id: "textFont",
                                    value: t.textFont || "Arial",
                                    style: {width: 111},
                                    onChange: function (e) {
                                        return p({target: {name: "textFont", value: e}})
                                    },
                                    color: "text-font",
                                    notRelativePosition: !0
                                })]
                            }), Object(K.jsxs)(sl, {
                                children: [Object(K.jsx)(ll, {children: "Font size"}), Object(K.jsx)(Rt, {
                                    value: t.textSize,
                                    type: "number",
                                    style: {width: 60},
                                    name: "textSize",
                                    onChange: p,
                                    min: 0
                                })]
                            })]
                        }, "text-group-fields");
                        g.unshift(m, h);
                        break;
                    case yr:
                        var b = Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "URL"}), Object(K.jsx)(Rt, {
                                id: "img",
                                value: "object" === cl(t.img) ? t.img.src : t.img || "",
                                name: "img",
                                style: {minWidth: 111},
                                onChange: p
                            })]
                        }, "url-field");
                        g.unshift(b)
                }
                return g
            })), e
        }

        return t = a, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.availableShapes, n = e.selectedShape, r = void 0 === n ? {} : n,
                    o = Object.keys(r).length;
                return Object(K.jsx)(nl, {
                    children: 0 === o ? Object(K.jsx)(rl, {
                        children: t.map((function (e) {
                            var t = e.label, n = e.content, r = e.iconStyles, o = e.drawFn, i = e.iconUrl;
                            return Object(K.jsxs)(il, {
                                onClick: function () {
                                    return o()
                                },
                                children: [Object(K.jsx)(al, {
                                    style: r,
                                    isIconNotProvided: !Boolean(n || i || r),
                                    children: n || i && Object(K.jsx)("img", {src: i, alt: "".concat(t, " icon")})
                                }), Object(K.jsx)("label", {children: t})]
                            }, t)
                        }))
                    }) : Object(K.jsx)(ol, {children: this.renderSettings(r)})
                })
            }
        }]) && dl(t.prototype, n), r && dl(t, r), a
    }(o.Component);

    function xl(e) {
        return (xl = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function Sl(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function jl(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Cl(e, t) {
        return (Cl = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function _l(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Rl(e);
            if (t) {
                var o = Rl(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return El(this, n)
        }
    }

    function El(e, t) {
        return !t || "object" !== xl(t) && "function" != typeof t ? Pl(e) : t
    }

    function Pl(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Rl(e) {
        return (Rl = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Dl(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Ml = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Cl(e, t)
        }(i, e);
        var t, n, r, o = _l(i);

        function i() {
            var e;
            Sl(this, i);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return Dl(Pl(e = o.call.apply(o, [this].concat(n))), "updateOpacity", (function (t) {
                return e.props.shapeOperations.updateShape({opacity: t})
            })), Dl(Pl(e), "updateStroke", (function (t, n) {
                var r = e.props, o = r.shapeOperations, i = r.selectedShape.stroke, a = void 0 === i ? {} : i;
                o.updateShape({stroke: Ol(Ol({}, a), {}, Dl({}, t, n))})
            })), Dl(Pl(e), "updatePropertyFromEvent", (function (t) {
                return e.props.shapeOperations.updateShape(Dl({}, t.target.name, t.target.value))
            })), e
        }

        return t = i, (n = [{
            key: "componentDidMount", value: function () {
                this.props.shapeOperations.addImage({img: "https://image.flaticon.com/icons/svg/916/916762.svg"})
            }
        }, {
            key: "render", value: function () {
                var e = this, t = this.props, n = t.t, r = t.selectedShape, o = void 0 === r ? {} : r, i = o.opacity,
                    a = void 0 === i ? 1 : i, s = o.img, l = o.stroke, c = void 0 === l ? {} : l;
                return Object(K.jsx)(nl, {
                    children: Object(K.jsxs)(ol, {
                        children: [Object(K.jsx)(Da, {
                            label: n["common.opacity"],
                            min: 0,
                            max: 1,
                            step: .05,
                            range: a,
                            updateRange: this.updateOpacity,
                            labelBefore: !0
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Stroke Color"}), Object(K.jsx)(Rt, {
                                value: c.color || "#000000",
                                type: "color",
                                style: {width: 30, padding: 0, background: "transparent", boxShadow: "none"},
                                onChange: function (t) {
                                    var n = t.target.value;
                                    return e.updateStroke("color", n)
                                }
                            })]
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Stroke width"}), Object(K.jsx)(Rt, {
                                value: c.width || 0,
                                type: "number",
                                style: {width: 60},
                                onChange: function (t) {
                                    var n = t.target.value;
                                    return e.updateStroke("width", n)
                                },
                                min: 0
                            })]
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "URL"}), Object(K.jsx)(Rt, {
                                id: "img",
                                value: "object" === xl(s) ? s.src : s || "",
                                name: "img",
                                style: {minWidth: 111},
                                onChange: this.updatePropertyFromEvent
                            })]
                        }, "url-field")]
                    })
                })
            }
        }]) && jl(t.prototype, n), r && jl(t, r), i
    }(o.Component);

    function Al(e) {
        return (Al = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function zl(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function Ll(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Bl(e, t) {
        return (Bl = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Nl(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Hl(e);
            if (t) {
                var o = Hl(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Fl(this, n)
        }
    }

    function Fl(e, t) {
        return !t || "object" !== Al(t) && "function" != typeof t ? Ul(e) : t
    }

    function Ul(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Hl(e) {
        return (Hl = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Wl(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Yl = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Bl(e, t)
        }(i, e);
        var t, n, r, o = Nl(i);

        function i() {
            var e;
            zl(this, i);
            for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
            return Wl(Ul(e = o.call.apply(o, [this].concat(n))), "updateOpacity", (function (t) {
                return e.props.shapeOperations.updateShape({opacity: t})
            })), Wl(Ul(e), "updateStroke", (function (t, n) {
                var r = e.props, o = r.shapeOperations, i = r.selectedShape.stroke, a = void 0 === i ? {} : i;
                o.updateShape({stroke: Il(Il({}, a), {}, Wl({}, t, n))})
            })), Wl(Ul(e), "updatePropertyFromEvent", (function (t) {
                return e.props.shapeOperations.updateShape(Wl({}, t.target.name, t.target.value))
            })), e
        }

        return t = i, (n = [{
            key: "componentDidMount", value: function () {
                this.props.shapeOperations.addText()
            }
        }, {
            key: "render", value: function () {
                var e = this, t = this.props, n = t.t, r = t.selectedShape, o = void 0 === r ? {} : r,
                    i = t.config.theme, a = o.text, s = void 0 === a ? "" : a, l = o.textFont,
                    c = void 0 === l ? "Arial" : l, u = o.textSize, f = void 0 === u ? 62 : u, p = o.stroke,
                    d = void 0 === p ? {} : p, h = o.color, g = void 0 === h ? "#000000" : h, m = o.opacity,
                    b = void 0 === m ? 1 : m;
                return Object(K.jsx)(nl, {
                    children: Object(K.jsxs)(ol, {
                        children: [Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Text"}), Object(K.jsx)(Rt, {
                                id: "text",
                                value: s,
                                name: "text",
                                style: {minWidth: 111},
                                onChange: this.updatePropertyFromEvent
                            })]
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Font family"}), Object(K.jsx)(ks, {
                                list: i.fonts,
                                valueProp: "value",
                                id: "textFont",
                                value: c,
                                style: {width: 111},
                                onChange: function (t) {
                                    return e.updatePropertyFromEvent({target: {name: "textFont", value: t}})
                                },
                                color: "text-font",
                                notRelativePosition: !0
                            })]
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Font size"}), Object(K.jsx)(Rt, {
                                value: f,
                                type: "number",
                                style: {width: 60},
                                name: "textSize",
                                onChange: this.updatePropertyFromEvent,
                                min: 0
                            })]
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Fill Color"}), Object(K.jsx)(Rt, {
                                value: g,
                                type: "color",
                                style: {width: 30, padding: 0, background: "transparent", boxShadow: "none"},
                                name: "color",
                                onChange: this.updatePropertyFromEvent
                            })]
                        }), Object(K.jsx)(Da, {
                            label: n["common.opacity"],
                            min: 0,
                            max: 1,
                            step: .05,
                            range: b,
                            updateRange: this.updateOpacity,
                            labelBefore: !0
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Stroke Color"}), Object(K.jsx)(Rt, {
                                value: d.color || "#000000",
                                type: "color",
                                style: {width: 30, padding: 0, background: "transparent", boxShadow: "none"},
                                onChange: function (t) {
                                    var n = t.target.value;
                                    return e.updateStroke("color", n)
                                }
                            })]
                        }), Object(K.jsxs)(sl, {
                            children: [Object(K.jsx)(ll, {children: "Stroke width"}), Object(K.jsx)(Rt, {
                                value: d.width || 0,
                                type: "number",
                                style: {width: 60},
                                onChange: function (t) {
                                    var n = t.target.value;
                                    return e.updateStroke("width", n)
                                },
                                min: 0
                            })]
                        })]
                    })
                })
            }
        }]) && Ll(t.prototype, n), r && Ll(t, r), i
    }(o.Component);

    function Vl(e) {
        return (Vl = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function $l(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    function Kl(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function Ql(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Zl(e, t) {
        return (Zl = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Gl(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = ec(e);
            if (t) {
                var o = ec(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Jl(this, n)
        }
    }

    function Jl(e, t) {
        return !t || "object" !== Vl(t) && "function" != typeof t ? function (e) {
            if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return e
        }(e) : t
    }

    function ec(e) {
        return (ec = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var tc = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Zl(e, t)
        }(i, e);
        var t, n, r, o = Gl(i);

        function i() {
            return Kl(this, i), o.apply(this, arguments)
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this, t = this.props, n = t.activeTab, r = t.isShowSpinner, o = t.activeBody,
                    i = t.config.tools;
                return Object(K.jsxs)(C, {
                    overlayYHidden: "watermark" !== n, children: [!n && i.map((function (t) {
                        return Object(K.jsx)(xi, Xl({name: t}, e.props), t)
                    })), "adjust" === n && Object(K.jsx)(rs, Xl({}, this.props)), "effects" === n && Object(K.jsx)(Li, Xl({}, this.props)), "filters" === n && Object(K.jsx)(Ji, Xl({}, this.props)), "rotate" === n && Object(K.jsx)(Ha, Xl({}, this.props)), "crop" === n && Object(K.jsx)(ca, Xl({}, this.props)), "resize" === n && Object(K.jsx)(ka, Xl({}, this.props)), "watermark" === n && Object(K.jsx)(Is, Xl({}, this.props)), "focus_point" === n && Object(K.jsx)(el, Xl({}, this.props)), "shapes" === n && Object(K.jsx)(wl, Xl({}, this.props)), "image" === n && Object(K.jsx)(Ml, Xl({}, this.props)), "text" === n && Object(K.jsx)(Yl, Xl({}, this.props)), r && Object(K.jsx)(bn, {}), "preview" !== o && Object(K.jsx)(vn, {})]
                })
            }
        }]) && Ql(t.prototype, n), r && Ql(t, r), i
    }(o.Component);

    function nc(e) {
        return (nc = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function rc(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function oc(e, t) {
        return (oc = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function ic(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = lc(e);
            if (t) {
                var o = lc(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return ac(this, n)
        }
    }

    function ac(e, t) {
        return !t || "object" !== nc(t) && "function" != typeof t ? sc(e) : t
    }

    function sc(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function lc(e) {
        return (lc = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function cc(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var uc = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && oc(e, t)
        }(i, e);
        var t, n, r, o = ic(i);

        function i(e) {
            var t;
            return function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, i), cc(sc(t = o.call(this, e)), "toggleActionsMenu", (function (e) {
                t.setState({show: null != e ? e : !t.state.show})
            })), cc(sc(t), "hideActionsMenu", (function () {
                return t.toggleActionsMenu(!1)
            })), cc(sc(t), "handleSaving", (function () {
                t.props.handleSaveAs(), t.hideActionsMenu()
            })), t.state = {show: !1}, t
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props.t;
                return Object(K.jsxs)(er, {
                    children: [this.state.show && Object(K.jsx)(or, {onClick: this.hideActionsMenu}), Object(K.jsx)(tr, {
                        themeColor: !0,
                        onClick: this.toggleActionsMenu,
                        children: Object(K.jsx)("i", {})
                    }), Object(K.jsx)(nr, {
                        children: this.state.show && Object(K.jsx)(rr, {
                            onClick: this.handleSaving,
                            children: e["toolbar.saveAsNewImage"]
                        })
                    })]
                })
            }
        }]) && rc(t.prototype, n), r && rc(t, r), i
    }(o.Component);

    function fc(e) {
        return (fc = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function hc(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    function gc(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    function mc(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function bc(e, t) {
        return (bc = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function vc(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = wc(e);
            if (t) {
                var o = wc(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return yc(this, n)
        }
    }

    function yc(e, t) {
        return !t || "object" !== fc(t) && "function" != typeof t ? function (e) {
            if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
            return e
        }(e) : t
    }

    function wc(e) {
        return (wc = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    var xc = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && bc(e, t)
        }(i, e);
        var t, n, r, o = vc(i);

        function i() {
            return gc(this, i), o.apply(this, arguments)
        }

        return t = i, (n = [{
            key: "render", value: function () {
                var e = this.props, t = e.activeTab, n = e.onRevert, r = e.apply, o = e.onClose,
                    i = e.processWithCloudService, a = e.processWithFilerobot, s = e.handleSave, l = e.t, c = e.config,
                    u = c.tools, f = c.replaceCloseWithBackButton, p = c.noCapitalStrs, d = c.filerobot,
                    h = c.finishButtonLabel, g = 1 === u.length, m = "rotate" === t ? "orientation" : t,
                    b = h || (i || a ? l["toolbar.save"] : l["toolbar.download"]), v = !t || "resize" === t,
                    y = function () {
                        s(!0)
                    }, w = g ? function () {
                        r(y)
                    } : y, x = v && a && !i && d.onSaveAs;
                return Object(K.jsxs)(ct, {
                    children: [Object(K.jsxs)(ut, {
                        children: [Object(K.jsx)(ft, {
                            noCapitalStrs: p,
                            children: l["toolbar.".concat(m)] || l["header.image_editor_title"]
                        }), Object(K.jsxs)(pt, {
                            children: [f && Object(K.jsxs)(dt, {
                                children: [Object(K.jsx)("svg", {
                                    width: "14",
                                    height: "13",
                                    viewBox: "0 0 14 13",
                                    fill: "none",
                                    xmlns: "http://www.w3.org/2000/svg",
                                    onClick: o,
                                    children: Object(K.jsx)("path", {
                                        d: "M0.145833 5.26248C0.0583333 5.34998 0 5.46664 0 5.55414C0 5.64164 0.0583333 5.78748 0.145833 5.84581L6.3 10.95C6.3875 11.0375 6.59167 11.0375 6.7375 11.0083C6.88334 10.9791 6.97084 10.8041 6.97084 10.6583V8.00414C9.47917 8.00414 11.1708 8.20831 13.2708 11.8541C13.3292 12 13.475 12.0583 13.6208 12.0583C13.6792 12.0583 13.6792 12.0583 13.7083 12.0583C13.9125 12 14 11.8541 14 11.6791V11.3875C14 10.0458 14 8.03331 13.0958 6.34164C12.0458 4.35831 9.975 3.30831 7 3.22081V0.508312C7 0.362478 6.9125 0.216645 6.76667 0.158312C6.62084 0.0999783 6.47501 0.0999783 6.38751 0.216645L0.145833 5.26248Z",
                                        fill: "5D6D7E"
                                    })
                                }), Object(K.jsx)(ht, {})]
                            }), Object(K.jsx)(He, {
                                themeColor: !0, sm: !0, themeBtn: t, onClick: g ? function () {
                                    r(s)
                                } : t ? function () {
                                    r()
                                } : function () {
                                    s()
                                }, borderRadius: x ? "2px 0px 0px 2px" : "2px", children: v ? b : l["toolbar.apply"]
                            }), x && Object(K.jsx)(uc, {t: l, handleSaveAs: w}), Object(K.jsx)(gt, {
                                hide: !t,
                                onClick: g ? function () {
                                    return o(Or)
                                } : n,
                                noCapitalStrs: p,
                                sm: !0,
                                default: !0,
                                fullSize: !0,
                                children: l["toolbar.cancel"]
                            })]
                        }), !f && Object(K.jsx)(xn, {onClick: o, title: l["header.close_modal"]})]
                    }), Object(K.jsx)(mt, {
                        overlayYHidden: "watermark" !== t,
                        children: Object(K.jsx)(tc, dc({}, this.props))
                    })]
                })
            }
        }]) && mc(t.prototype, n), r && mc(t, r), i
    }(o.Component), kc = n(19), Oc = n.n(kc), Sc = (n(37), n(38), n(39), n(40), n(41), n(4));

    function jc(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var Cc = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, n, r;
        return t = e, r = [{
            key: "initClass", value: function () {
                this.domainRegex = /(?:(?:http|https):\/\/)((?:\w+)\.(?:(?:\w|\.)+))/
            }
        }, {
            key: "isRemote", value: function (e) {
                return null != e && !this.corsEnabled(e) && this.isURLRemote(e.src)
            }
        }, {
            key: "corsEnabled", value: function (e) {
                var t;
                return null != e.crossOrigin && (t = e.crossOrigin.toLowerCase(), ["anonymous", "use-credentials"].includes(t))
            }
        }, {
            key: "isURLRemote", value: function (e) {
                var t = e.match(this.domainRegex);
                return !!t && t[1] !== document.domain
            }
        }, {
            key: "remoteCheck", value: function (e) {
                if (this.isURLRemote(e)) return Caman.remoteProxy.length ? Caman.isURLRemote(Caman.remoteProxy) ? void Sc.a.info("Cannot use a remote proxy for loading images.") : this.proxyUrl(e) : void Sc.a.info("Attempting to load a remote image without a configured proxy. URL: ".concat(e))
            }
        }, {
            key: "proxyUrl", value: function (e) {
                return "".concat(Caman.remoteProxy, "?").concat(Caman.proxyParam, "=").concat(encodeURIComponent(e))
            }
        }, {
            key: "useProxy", value: function (e) {
                var t = {ruby: "rb", python: "py", perl: "pl", javascript: "js"};
                return null != t[e = e.toLowerCase()] && (e = t[e]), "proxies/caman_proxy.".concat(e)
            }
        }], (n = null) && jc(t.prototype, n), r && jc(t, r), e
    }();
    Cc.initClass(), Caman.IO = Cc;
    var _c = n(3);

    function Ec(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var Pc = function () {
        function e() {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e)
        }

        var t, n, r;
        return t = e, r = [{
            key: "initClass", value: function () {
                this.blenders = {}
            }
        }, {
            key: "register", value: function (e, t) {
                return this.blenders[e] = t
            }
        }, {
            key: "execute", value: function (e, t, n) {
                return this.blenders[e](t, n)
            }
        }], (n = null) && Ec(t.prototype, n), r && Ec(t, r), e
    }();
    Pc.initClass();
    var Rc = Pc;

    function Dc(e) {
        return (Dc = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

    function Mc(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    var Ac = function () {
        function e(t) {
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, e), this.c = t, this.filter = this.c, this.options = {
                blendingMode: "normal",
                opacity: 1
            }, this.layerID = _c.b.uniqid.get(), this.canvas = document.createElement("canvas"), this.canvas.width = this.c.dimensions.width, this.canvas.height = this.c.dimensions.height, this.context = this.canvas.getContext("2d"), this.context.createImageData(this.canvas.width, this.canvas.height), this.imageData = this.context.getImageData(0, 0, this.canvas.width, this.canvas.height), this.pixelData = this.imageData.data
        }

        var t, n, r;
        return t = e, (n = [{
            key: "newLayer", value: function (e) {
                return this.c.newLayer.call(this.c, e)
            }
        }, {
            key: "setBlendingMode", value: function (e) {
                return this.options.blendingMode = e, this
            }
        }, {
            key: "opacity", value: function (e) {
                return this.options.opacity = e / 100, this
            }
        }, {
            key: "copyParent", value: function () {
                for (var e = this.c.pixelData, t = 0, n = this.c.pixelData.length; t < n; t += 4) this.pixelData[t] = e[t], this.pixelData[t + 1] = e[t + 1], this.pixelData[t + 2] = e[t + 2], this.pixelData[t + 3] = e[t + 3];
                return this
            }
        }, {
            key: "fillColor", value: function () {
                return this.c.fillColor.apply(this.c, arguments)
            }
        }, {
            key: "overlayImage", value: function (e) {
                return "object" === Dc(e) ? e = e.src : "string" == typeof e && "#" === e[0] && (e = Object(_c.a)(e).src), e ? (this.c.renderer.renderQueue.push({
                    type: Caman.Filter.Type.LoadOverlay,
                    src: e,
                    layer: this
                }), this) : this
            }
        }, {
            key: "layerMask", value: function (e) {
                return "object" === Dc(e) ? e = e.src : "string" == typeof e && "#" === e[0] && (e = Object(_c.a)(e).src), e ? (this.c.renderer.renderQueue.push({
                    type: Caman.Filter.Type.LoadLayerMask,
                    src: e,
                    layer: this
                }), this) : this
            }
        }, {
            key: "applyToParent", value: function () {
                var e = this, t = this.c.pixelStack[this.c.pixelStack.length - 1], n = this.c.pixelData,
                    r = this.options.opacity;
                return function () {
                    for (var o = [], i = 0, a = n.length; i < a; i += 4) {
                        var s = {r: t[i], g: t[i + 1], b: t[i + 2], a: t[i + 3]},
                            l = {r: n[i], g: n[i + 1], b: n[i + 2], a: n[i + 3]};
                        e.maskData && (r = e.maskData[i] / 255);
                        var c = Rc.execute(e.options.blendingMode, l, s);
                        c.r = _c.b.clampRGB(c.r), c.g = _c.b.clampRGB(c.g), c.b = _c.b.clampRGB(c.b), null == c.a && (c.a = l.a), t[i] = s.r - (s.r - c.r) * (r * (c.a / 255)), t[i + 1] = s.g - (s.g - c.g) * (r * (c.a / 255)), o.push(t[i + 2] = s.b - (s.b - c.b) * (r * (c.a / 255)))
                    }
                    return o
                }()
            }
        }]) && Mc(t.prototype, n), r && Mc(t, r), e
    }();
    Caman.Layer = Ac;
    n(42), n(43);
    Rc.register("normal", (function (e, t) {
        return {r: e.r, g: e.g, b: e.b}
    })), Rc.register("multiply", (function (e, t) {
        return {r: e.r * t.r / 255, g: e.g * t.g / 255, b: e.b * t.b / 255}
    })), Rc.register("screen", (function (e, t) {
        return {
            r: 255 - (255 - e.r) * (255 - t.r) / 255,
            g: 255 - (255 - e.g) * (255 - t.g) / 255,
            b: 255 - (255 - e.b) * (255 - t.b) / 255
        }
    })), Rc.register("overlay", (function (e, t) {
        var n;
        return (n = {}).r = t.r > 128 ? 255 - 2 * (255 - e.r) * (255 - t.r) / 255 : t.r * e.r * 2 / 255, n.g = t.g > 128 ? 255 - 2 * (255 - e.g) * (255 - t.g) / 255 : t.g * e.g * 2 / 255, n.b = t.b > 128 ? 255 - 2 * (255 - e.b) * (255 - t.b) / 255 : t.b * e.b * 2 / 255, n
    })), Rc.register("difference", (function (e, t) {
        return {r: e.r - t.r, g: e.g - t.g, b: e.b - t.b}
    })), Rc.register("addition", (function (e, t) {
        return {r: t.r + e.r, g: t.g + e.g, b: t.b + e.b}
    })), Rc.register("exclusion", (function (e, t) {
        return {
            r: 128 - 2 * (t.r - 128) * (e.r - 128) / 255,
            g: 128 - 2 * (t.g - 128) * (e.g - 128) / 255,
            b: 128 - 2 * (t.b - 128) * (e.b - 128) / 255
        }
    })), Rc.register("softLight", (function (e, t) {
        var n;
        return (n = {}).r = t.r > 128 ? 255 - (255 - t.r) * (255 - (e.r - 128)) / 255 : t.r * (e.r + 128) / 255, n.g = t.g > 128 ? 255 - (255 - t.g) * (255 - (e.g - 128)) / 255 : t.g * (e.g + 128) / 255, n.b = t.b > 128 ? 255 - (255 - t.b) * (255 - (e.b - 128)) / 255 : t.b * (e.b + 128) / 255, n
    })), Rc.register("lighten", (function (e, t) {
        return {r: t.r > e.r ? t.r : e.r, g: t.g > e.g ? t.g : e.g, b: t.b > e.b ? t.b : e.b}
    })), Rc.register("darken", (function (e, t) {
        return {r: t.r > e.r ? e.r : t.r, g: t.g > e.g ? e.g : t.g, b: t.b > e.b ? e.b : t.b}
    }));
    n(44);
    Caman.Plugin.register("crop", (function (e, t, n, r) {
        var o;
        return null == n && (n = 0), null == r && (r = 0), o = document.createElement("canvas"), _c.b.copyAttributes(this.canvas, o), o.width = e, o.height = t, o.getContext("2d").drawImage(this.canvas, n, r, e, t, 0, 0, e, t), this.cropCoordinates = {
            x: n,
            y: r
        }, this.cropped = !0, this.replaceCanvas(o)
    })), Caman.Plugin.register("resize", (function (e) {
        var t;
        if (null == e && (e = null), null !== e && (null != e.width || null != e.height)) return null == e.width ? e.width = this.canvas.width * e.height / this.canvas.height : null == e.height && (e.height = this.canvas.height * e.width / this.canvas.width), t = document.createElement("canvas"), _c.b.copyAttributes(this.canvas, t), t.width = e.width, t.height = e.height, t.getContext("2d").drawImage(this.canvas, 0, 0, this.canvas.width, this.canvas.height, 0, 0, e.width, e.height), this.resized = !0, this.replaceCanvas(t);
        Sc.a.error("Invalid or missing dimensions given for resize")
    })), Caman.Filter.register("crop", (function () {
        return this.processPlugin("crop", Array.prototype.slice.call(arguments, 0))
    })), Caman.Filter.register("resize", (function () {
        return this.processPlugin("resize", Array.prototype.slice.call(arguments, 0))
    }));
    var Tc, Ic, zc;
    n(45), n(46), n(47), n(48), n(49), n(50), n(51);
    Tc = [512, 512, 456, 512, 328, 456, 335, 512, 405, 328, 271, 456, 388, 335, 292, 512, 454, 405, 364, 328, 298, 271, 496, 456, 420, 388, 360, 335, 312, 292, 273, 512, 482, 454, 428, 405, 383, 364, 345, 328, 312, 298, 284, 271, 259, 496, 475, 456, 437, 420, 404, 388, 374, 360, 347, 335, 323, 312, 302, 292, 282, 273, 265, 512, 497, 482, 468, 454, 441, 428, 417, 405, 394, 383, 373, 364, 354, 345, 337, 328, 320, 312, 305, 298, 291, 284, 278, 271, 265, 259, 507, 496, 485, 475, 465, 456, 446, 437, 428, 420, 412, 404, 396, 388, 381, 374, 367, 360, 354, 347, 341, 335, 329, 323, 318, 312, 307, 302, 297, 292, 287, 282, 278, 273, 269, 265, 261, 512, 505, 497, 489, 482, 475, 468, 461, 454, 447, 441, 435, 428, 422, 417, 411, 405, 399, 394, 389, 383, 378, 373, 368, 364, 359, 354, 350, 345, 341, 337, 332, 328, 324, 320, 316, 312, 309, 305, 301, 298, 294, 291, 287, 284, 281, 278, 274, 271, 268, 265, 262, 259, 257, 507, 501, 496, 491, 485, 480, 475, 470, 465, 460, 456, 451, 446, 442, 437, 433, 428, 424, 420, 416, 412, 408, 404, 400, 396, 392, 388, 385, 381, 377, 374, 370, 367, 363, 360, 357, 354, 350, 347, 344, 341, 338, 335, 332, 329, 326, 323, 320, 318, 315, 312, 310, 307, 304, 302, 299, 297, 294, 292, 289, 287, 285, 282, 280, 278, 275, 273, 271, 269, 267, 265, 263, 261, 259], Ic = [9, 11, 12, 13, 13, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24], zc = function () {
        return this.r = 0, this.g = 0, this.b = 0, this.a = 0, this.next = null
    }, Caman.Plugin.register("compoundBlur", (function (e, t, n, r) {
        var o, i, a, s = this.dimensions.width, l = this.dimensions.height, c = this.pixelData, u = e.data, f = s * l,
            p = [];
        for (o = 0, i = 0 <= (a = f << 2); i ? o < a : o > a; i ? o++ : o--) p[o] = c[o];
        var d = 0, h = r;
        for (r -= 1; h-- >= 0;) {
            var g, m, b, v, y, w, x, k, O, S, j, C, _, E, P, R, D, M, A, T, I, z, L, B = t + .5 | 0;
            if (0 !== B) {
                B > 256 && (B = 256);
                var N = B + B + 1, F = s - 1, U = l - 1, H = B + 1, W = H * (H + 1) / 2, Y = new zc, V = void 0, q = Y;
                for (o = 1, g = 1 <= (m = N); g ? o < m : o > m; g ? o++ : o--) q = q.next = new zc, o === H && (V = q);
                q.next = Y;
                var X = null, $ = null, K = A = 0, Q = Tc[B], Z = Ic[B];
                for (M = 0, T = 0 <= (I = l); T ? M < I : M > I; T ? M++ : M--) {
                    var G, J, ee, te, ne, re;
                    for (_ = w = b = P = k = y = 0, E = H * (C = p[A]), x = H * (j = p[A + 1]), v = H * (S = p[A + 2]), P += W * C, k += W * j, y += W * S, q = Y, o = 0, G = 0 <= (J = H); G ? o < J : o > J; G ? o++ : o--) q.r = C, q.g = j, q.b = S, q = q.next;
                    for (o = 1, ee = 1 <= (te = H); ee ? o < te : o > te; ee ? o++ : o--) O = A + ((F < o ? F : o) << 2), P += (q.r = C = p[O]) * (R = H - o), k += (q.g = j = p[O + 1]) * R, y += (q.b = S = p[O + 2]) * R, _ += C, w += j, b += S, q = q.next;
                    for (X = Y, $ = V, D = 0, ne = 0 <= (re = s); ne ? D < re : D > re; ne ? D++ : D--) p[A] = P * Q >> Z, p[A + 1] = k * Q >> Z, p[A + 2] = y * Q >> Z, P -= E, k -= x, y -= v, E -= X.r, x -= X.g, v -= X.b, O = K + ((O = D + H) < F ? O : F) << 2, P += _ += X.r = p[O], k += w += X.g = p[O + 1], y += b += X.b = p[O + 2], X = X.next, E += C = $.r, x += j = $.g, v += S = $.b, _ -= C, w -= j, b -= S, $ = $.next, A += 4;
                    K += s
                }
                for (D = 0, z = 0 <= (L = s); z ? D < L : D > L; z ? D++ : D--) {
                    var oe, ie, ae, se, le, ce;
                    for (w = b = _ = k = y = P = 0, E = H * (C = p[A = D << 2]), x = H * (j = p[A + 1]), v = H * (S = p[A + 2]), P += W * C, k += W * j, y += W * S, q = Y, o = 0, oe = 0 <= (ie = H); oe ? o < ie : o > ie; oe ? o++ : o--) q.r = C, q.g = j, q.b = S, q = q.next;
                    var ue = s;
                    for (o = 1, ae = 1 <= (se = H); ae ? o < se : o > se; ae ? o++ : o--) A = ue + D << 2, P += (q.r = C = p[A]) * (R = H - o), k += (q.g = j = p[A + 1]) * R, y += (q.b = S = p[A + 2]) * R, _ += C, w += j, b += S, q = q.next, o < U && (ue += s);
                    for (A = D, X = Y, $ = V, M = 0, le = 0 <= (ce = l); le ? M < ce : M > ce; le ? M++ : M--) p[O = A << 2] = P * Q >> Z, p[O + 1] = k * Q >> Z, p[O + 2] = y * Q >> Z, P -= E, k -= x, y -= v, E -= X.r, x -= X.g, v -= X.b, O = D + ((O = M + H) < U ? O : U) * s << 2, P += _ += X.r = p[O], k += w += X.g = p[O + 1], y += b += X.b = p[O + 2], X = X.next, E += C = $.r, x += j = $.g, v += S = $.b, _ -= C, w -= j, b -= S, $ = $.next, A += s
                }
                for (t *= n, o = f; --o > -1;) {
                    var fe = o << 2, pe = (255 & u[fe + 2]) / 255 * r, de = 0 | pe;
                    if (de === d) {
                        var he = 256 * (pe - (0 | pe)), ge = 256 - he;
                        c[fe] = c[fe] * ge + p[fe] * he >> 8, c[fe + 1] = c[fe + 1] * ge + p[fe + 1] * he >> 8, c[fe + 2] = c[fe + 2] * ge + p[fe + 2] * he >> 8
                    } else de === d + 1 && (c[fe] = p[fe], c[fe + 1] = p[fe + 1], c[fe + 2] = p[fe + 2])
                }
                d++
            }
        }
        return this
    })), Caman.Filter.register("tiltShift", (function (e) {
        var t = {
            center: {x: this.dimensions.width / 2, y: this.dimensions.height / 2},
            angle: 45,
            focusWidth: 200,
            startRadius: 3,
            radiusFactor: 1.5,
            steps: 3
        };
        (e = _c.b.extend(t, e)).angle *= Math.PI / 180;
        var n = function (e, t, n, r, o, i, a) {
            var s = document.createElement("canvas");
            s.width = e, s.height = t;
            var l = n + Math.cos(o) * i * .5, c = r + Math.sin(o) * i * .5, u = n - Math.cos(o) * i * .5,
                f = r - Math.sin(o) * i * .5, p = s.getContext("2d"), d = p.createLinearGradient(l, c, u, f);
            return a ? (d.addColorStop(0, "white"), d.addColorStop(.5, "black"), d.addColorStop(1, "white")) : (d.addColorStop(0, "white"), d.addColorStop(1, "black")), p.fillStyle = d, p.fillRect(0, 0, e, t), p.getImageData(0, 0, e, t)
        }(this.dimensions.width, this.dimensions.height, e.center.x, e.center.y, e.angle, e.focusWidth, !0);
        return this.processPlugin("compoundBlur", [n, e.startRadius, e.radiusFactor, e.steps])
    })), Caman.Filter.register("radialBlur", (function (e) {
        var t = {
            size: 50,
            center: {x: this.dimensions.width / 2, y: this.dimensions.height / 2},
            startRadius: 3,
            radiusFactor: 1.5,
            steps: 3,
            radius: null
        };
        (e = _c.b.extend(t, e)).radius || (e.radius = this.dimensions.width < this.dimensions.height ? this.dimensions.height : this.dimensions.width);
        var n = e.radius / 2 - e.size, r = e.radius / 2, o = function (e, t, n, r, o, i) {
            var a = document.createElement("canvas");
            a.width = e, a.height = t;
            var s = a.getContext("2d"), l = s.createRadialGradient(n, r, o, n, r, i);
            return l.addColorStop(1, "white"), l.addColorStop(0, "black"), s.fillStyle = l, s.fillRect(0, 0, e, t), s.getImageData(0, 0, e, t)
        }(this.dimensions.width, this.dimensions.height, e.center.x, e.center.y, n, r);
        return this.processPlugin("compoundBlur", [o, e.startRadius, e.radiusFactor, e.steps])
    }));
    n(52), n(53), n(54), n(55), n(56), n(57), n(58), n(59), n(60), n(61);

    function Lc(e) {
        return e * (Math.PI / 180)
    }

    Caman.Plugin.register("rotate", (function (e) {
        var t, n, r, o, i, a, s, l;
        if (0 === (t = e % 360)) return this.dimensions = {width: this.canvas.width, height: this.canvas.height};
        if (i = Math.PI / 180, n = document.createElement("canvas"), _c.b.copyAttributes(this.canvas, n), 90 === t || -270 === t || 270 === t || -90 === t) s = (a = this.canvas.height) / 2, l = (o = this.canvas.width) / 2; else if (180 === t) s = (a = this.canvas.width) / 2, l = (o = this.canvas.height) / 2; else {
            var c = Math.sin(Lc(Math.abs(t))), u = Math.cos(Lc(Math.abs(t)));
            s = (a = Math.abs(Math.abs(this.canvas.height * c) - Math.abs(this.canvas.width * u))) / 2, l = (o = Math.abs(Math.abs(this.canvas.height * u) - Math.abs(this.canvas.width * c))) / 2
        }
        return n.width = a, n.height = o, (r = n.getContext("2d")).save(), r.translate(s, l), r.rotate(t * i), r.drawImage(this.canvas, -this.canvas.width / 2, -this.canvas.height / 2, this.canvas.width, this.canvas.height), r.restore(), this.angle += e, this.rotated = !0, this.replaceCanvas(n)
    })), Caman.Filter.register("rotate", (function () {
        return this.processPlugin("rotate", Array.prototype.slice.call(arguments, 0))
    }));
    n(62), n(63);

    function Bc(e) {
        return (Bc = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function Uc(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function Hc(e, t) {
        return (Hc = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Wc(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = qc(e);
            if (t) {
                var o = qc(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return Yc(this, n)
        }
    }

    function Yc(e, t) {
        return !t || "object" !== Bc(t) && "function" != typeof t ? Vc(e) : t
    }

    function Vc(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function qc(e) {
        return (qc = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Xc(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var $c, Kc = {
        effect: null,
        filter: null,
        crop: null,
        resize: null,
        rotate: null,
        correctionDegree: 0,
        flipX: !1,
        flipY: !1,
        adjust: {brightness: 0, contrast: 0, saturation: 0, exposure: 0},
        canvasDimensions: {width: 300, height: 200, ratio: 1.5}
    }, Qc = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && Hc(e, t)
        }(i, e);
        var t, n, r, o = Wc(i);

        function i(e) {
            var t;
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, i), Xc(Vc(t = o.call(this)), "_isMounted", !1), Xc(Vc(t), "loadImage", (function () {
                var e = t.props.src, n = t.state, r = n.reduceBeforeEdit, o = (r = void 0 === r ? {} : r).mode,
                    i = r.widthLimit, a = r.heightLimit, s = n.watermark;
                e instanceof Blob && (e = URL.createObjectURL(e));
                var l = e.split("/"), c = l[l.length - 1], u = new Image, f = null;
                s && s.url && ((f = new Image).setAttribute("crossOrigin", "Anonymous"), f.src = s.url + (s.url.indexOf("?") > -1 ? "&" : "?") + (new Date).getTime()), u.setAttribute("crossOrigin", "Anonymous"), u.src = e, e.startsWith("data:image/") || e.startsWith("blob:") || (u.src = u.src + (u.src.indexOf("?") > -1 ? "&version=" : "?version=") + (new Date).getTime()), u.onload = function () {
                    var e = {width: u.width, height: u.height, ratio: u.width / u.height}, n = {
                        activeBody: "preResize",
                        isShowSpinner: !1,
                        img: u,
                        logoImage: f,
                        imageName: c.indexOf("?") > -1 ? c.slice(0, c.indexOf("?")) : c
                    };
                    if ("manual" === o && (i < u.width || a < u.height)) t.setState(Fc({canvasDimensions: e}, n)); else if ("auto" === o && (i < u.width || a < u.height)) if (u.width >= u.height) {
                        var r = u.width / u.height, s = {ratio: r, width: i, height: i / r};
                        t.setState(Fc(Fc({
                            preCanvasDimensions: Fc({}, s),
                            canvasDimensions: Fc({}, s)
                        }, n), {}, {activeBody: "preview", isPreResize: !0}))
                    } else {
                        var l = u.height / u.width, p = {ratio: l, width: a / l, height: a};
                        t.setState(Fc(Fc({
                            preCanvasDimensions: Fc({}, p),
                            canvasDimensions: Fc({}, p)
                        }, n), {}, {activeBody: "preview", isPreResize: !0}))
                    } else {
                        var d, h = t.props.config.tools;
                        1 === h.length && (d = h[0]), t.setState(Fc(Fc({}, n), {}, {
                            activeBody: "preview",
                            isPreResize: !1
                        }), (function () {
                            t.setState({activeTab: d})
                        }))
                    }
                }
            })), Xc(Vc(t), "determineImageType", (function () {
                var e = t.props.src;
                if (e instanceof Blob) t.setState({imageMime: e.type}); else {
                    var n = new XMLHttpRequest;
                    n.open("GET", e), n.responseType = "arraybuffer", n.onload = function (e) {
                        var n, r = e.target;
                        t.setState({imageMime: (null === (n = Oc()(new Uint8Array(r.response))) || void 0 === n ? void 0 : n.mime) || "image/svg+xml"})
                    }, n.send()
                }
            })), Xc(Vc(t), "updateState", (function (e) {
                var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : function () {
                };
                if (t._isMounted) {
                    var r = t.props.config.elementId, o = Xr(r);
                    o && (e.latestCanvasSize = {width: o.width, height: o.height}), t.setState(e, n)
                }
            })), Xc(Vc(t), "onRevert", (function () {
                var e = t.state, n = e.cancelLastOperation, r = e.activeTab;
                t.setState({activeTab: null, isHideCanvas: !0, isShowSpinner: !0}), n(r, (function () {
                    t.setState(Fc({isHideCanvas: !1, isShowSpinner: !1}, Kc))
                }))
            })), Xc(Vc(t), "onAdjust", (function (e, n) {
                (0, t.state.onAdjust)(e, n)
            })), Xc(Vc(t), "onRotate", (function (e, n, r, o) {
                (0, t.state.onRotate)(e, n, r, o)
            })), Xc(Vc(t), "onFlip", (function (e) {
                (0, t.state.flip)(e)
            })), Xc(Vc(t), "onSave", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] && arguments[0], n = t.state.saveImage;
                e || t.setState({isShowSpinner: !0}), n(e)
            })), Xc(Vc(t), "onDownloadImage", (function () {
                var e = t.props.onBeforeComplete, n = t.state, r = n.downloadImage, o = n.getResultCanvas,
                    i = {imageMime: n.imageMime, imageName: n.imageName, canvas: o()};
                !e || e(Fc({status: "before-complete"}, i)) ? r((function () {
                    t.props.onComplete(Fc({status: "success"}, i)), t.props.onClose(_r)
                })) : (t.props.onComplete(Fc({status: "success"}, i)), t.props.onClose(Cr))
            })), Xc(Vc(t), "onApplyEffects", (function (e) {
                var n = t.state, r = n.applyCorrections, o = n.effect === e ? null : e;
                t.setState({isShowSpinner: !0, effect: o}, (function () {
                    r((function () {
                        t.setState({isShowSpinner: !1})
                    }))
                }))
            })), Xc(Vc(t), "onApplyFilters", (function (e) {
                var n = t.state, r = n.applyCorrections, o = n.filter === e ? null : e;
                t.setState({isShowSpinner: !0, filter: o}, (function () {
                    r((function () {
                        t.setState({isShowSpinner: !1})
                    }))
                }))
            })), Xc(Vc(t), "handleSave", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] && arguments[0], n = t.state,
                    r = n.processWithFilerobot, o = n.processWithCloudService;
                r || o ? t.onSave(e) : t.onDownloadImage()
            })), Xc(Vc(t), "apply", (function (e) {
                var n = t.state, r = n.activeTab;
                (0, n.applyChanges)(r, e), t.setState({activeTab: null})
            })), Xc(Vc(t), "redoOperation", (function (e) {
                var n = e.operationIndex, r = e.callback, o = void 0 === r ? function () {
                    } : r, i = e.resetActiveTab, a = void 0 === i || i, s = e.operationObject, l = void 0 === s ? {} : s,
                    c = t.state.applyOperations;
                a ? t.setState({activeTab: null, isHideCanvas: !0, isShowSpinner: !0}) : t.setState({
                    isHideCanvas: !0,
                    isShowSpinner: !0
                }), c(n, (function () {
                    t.setState({isHideCanvas: !1, isShowSpinner: !1}, o)
                }), l)
            })), Xc(Vc(t), "resetOperations", (function () {
                var e = t.state.resetAll;
                t.setState({activeTab: null, isHideCanvas: !0, isShowSpinner: !0}), e((function () {
                    t.setState(Fc({isHideCanvas: !1, isShowSpinner: !1}, Kc))
                }))
            })), Xc(Vc(t), "onPreResize", (function (e) {
                var n, r = t.props.config.tools;
                switch (1 === r.length && (n = r[0]), e) {
                    case"keep":
                        t.setState({canvasDimensions: {}, isPreResize: !1, activeBody: "preview"}, (function () {
                            t.setState({activeTab: n})
                        }));
                        break;
                    case"resize":
                        var o = t.state.canvasDimensions;
                        t.setState({preCanvasDimensions: o, isPreResize: !0, activeBody: "preview"}, (function () {
                            t.setState({activeTab: n})
                        }))
                }
            }));
            var n = e.config, r = n.processWithCloudimage, a = n.processWithFilerobot, s = n.processWithCloudService,
                l = n.uploadWithCloudimageLink, c = n.reduceBeforeEdit, u = n.cropBeforeEdit, f = n.watermark,
                p = n.imageSealing;
            return t.state = Fc(Fc({
                isShowSpinner: !0,
                isHideCanvas: !1,
                activeTab: null,
                activeBody: null,
                currentOperation: null,
                original: {width: 300, height: 200},
                cropDetails: {width: 300, height: 200},
                canvasDimensions: {width: 300, height: 200, ratio: 1.5},
                processWithFilerobot: a,
                processWithCloudimage: r,
                processWithCloudService: s,
                uploadCloudimageImage: l,
                reduceBeforeEdit: c,
                cropBeforeEdit: u,
                roundCrop: !1,
                imageSealing: Fc({enabled: !1, salt: "", char_count: 10, include_params: null}, p),
                operationsOriginal: [],
                operationsZoomed: [],
                operations: [],
                canvasZoomed: null,
                canvasOriginal: null,
                isPreResize: !1,
                initialZoom: 1
            }, Kc), {}, {
                watermark: f || dr,
                focusPoint: {x: null, y: null},
                shapes: [],
                selectedShape: {},
                availableShapes: []
            }), t
        }

        return t = i, (n = [{
            key: "componentDidMount", value: function () {
                this._isMounted = !0, this.loadImage(), this.determineImageType()
            }
        }, {
            key: "componentWillUnmount", value: function () {
                this._isMounted = !1
            }
        }, {
            key: "render", value: function () {
                var e = this.state, t = e.isShowSpinner, n = e.activeTab, r = e.operations, o = e.operationsOriginal,
                    i = e.operationsZoomed, a = e.currentOperation, s = e.isHideCanvas, l = e.cropDetails,
                    c = e.original, u = e.canvasDimensions, f = e.processWithCloudimage, p = e.processWithFilerobot,
                    d = e.processWithCloudService, h = e.uploadCloudimageImage, g = e.imageMime, m = e.lastOperation,
                    b = e.operationList, v = e.initialZoom, y = e.canvasZoomed, w = e.canvasOriginal,
                    x = e.reduceBeforeEdit, k = e.cropBeforeEdit, O = e.img, S = e.imageName, j = e.activeBody,
                    C = e.isPreResize, _ = e.preCanvasDimensions, E = e.logoImage, P = e.imageSealing, R = e.effect,
                    D = e.filter, M = e.crop, A = e.roundCrop, T = e.resize, I = e.rotate, z = e.correctionDegree,
                    L = e.flipX, B = e.flipY, N = e.adjust, F = e.watermark, U = e.focusPoint, H = e.shapes,
                    W = e.shapeOperations, Y = e.selectedShape, V = e.availableShapes, q = e.latestCanvasSize,
                    X = this.props, Q = X.src, Z = X.config, G = X.onClose, J = X.onComplete, ee = X.onError,
                    te = X.closeOnLoad, ne = void 0 === te || te, re = X.t, oe = void 0 === re ? {} : re, ie = X.theme,
                    ae = {
                        effect: R,
                        filter: D,
                        crop: M,
                        resize: T,
                        rotate: I,
                        flipX: L,
                        flipY: B,
                        adjust: N,
                        correctionDegree: z
                    }, se = Fc(Fc({
                        t: oe,
                        theme: ie,
                        cropDetails: l,
                        original: c,
                        activeTab: n,
                        src: Q,
                        onClose: G,
                        config: Z,
                        canvasDimensions: u,
                        processWithCloudimage: f,
                        processWithFilerobot: p,
                        processWithCloudService: d,
                        operations: r,
                        operationsOriginal: o,
                        operationsZoomed: i,
                        initialZoom: v,
                        isShowSpinner: t,
                        img: O,
                        logoImage: E,
                        imageName: S,
                        activeBody: j,
                        preCanvasDimensions: _,
                        updateState: this.updateState,
                        onRevert: this.onRevert,
                        apply: this.apply,
                        onSave: this.onSave,
                        onFlip: this.onFlip,
                        onApplyEffects: this.onApplyEffects,
                        onApplyFilters: this.onApplyFilters,
                        onRotate: this.onRotate,
                        onAdjust: this.onAdjust,
                        onDownloadImage: this.onDownloadImage,
                        handleSave: this.handleSave
                    }, ae), {}, {
                        watermark: F,
                        focusPoint: U,
                        shapes: H,
                        shapeOperations: W,
                        selectedShape: Y,
                        availableShapes: V
                    }), le = Fc(Fc({
                        t: oe,
                        theme: ie,
                        cropDetails: l,
                        original: c,
                        activeTab: n,
                        isShowSpinner: t,
                        operations: r,
                        operationsOriginal: o,
                        operationsZoomed: i,
                        initialZoom: v,
                        currentOperation: a,
                        isHideCanvas: s,
                        src: Q,
                        imageMime: g,
                        onClose: G,
                        onComplete: J,
                        onError: ee,
                        canvasDimensions: u,
                        closeOnLoad: ne,
                        config: Z,
                        processWithCloudimage: f,
                        processWithFilerobot: p,
                        processWithCloudService: d,
                        imageSealing: P,
                        uploadCloudimageImage: h,
                        lastOperation: m,
                        operationList: b,
                        canvasZoomed: y,
                        canvasOriginal: w,
                        reduceBeforeEdit: x,
                        cropBeforeEdit: k,
                        img: O,
                        logoImage: E,
                        imageName: S,
                        isPreResize: C,
                        preCanvasDimensions: _,
                        updateState: this.updateState,
                        handleSave: this.handleSave,
                        onPreResize: this.onPreResize,
                        redoOperation: this.redoOperation,
                        roundCrop: A
                    }, ae), {}, {
                        watermark: F,
                        focusPoint: U,
                        shapes: H,
                        shapeOperations: W,
                        selectedShape: Y,
                        latestCanvasSize: q
                    }), ce = {
                        logoImage: E,
                        t: oe,
                        theme: ie,
                        activeBody: j,
                        operations: r,
                        operationsOriginal: o,
                        operationsZoomed: i,
                        initialZoom: v,
                        currentOperation: a,
                        processWithCloudimage: f,
                        processWithCloudService: d,
                        updateState: this.updateState,
                        redoOperation: this.redoOperation,
                        resetOperations: this.resetOperations,
                        config: Z,
                        watermark: F
                    };
                return Object(K.jsxs)($, {
                    roundCrop: A,
                    isLoading: t,
                    children: [Object(K.jsx)(xc, Fc({}, se)), Object(K.jsxs)(Oe, {
                        children: ["preview" === j && Object(K.jsx)(ti, Fc({}, le)), "preResize" === j && Object(K.jsx)(di, Fc({}, le)), Object(K.jsx)(zn, {
                            overlay: !0,
                            show: t,
                            label: oe["spinner.label"]
                        })]
                    }), Object(K.jsx)(Wr, Fc({}, ce))]
                })
            }
        }]) && Uc(t.prototype, n), r && Uc(t, r), i
    }(o.Component);
    var Zc, Gc, Jc, eu = i.b.span.attrs((function () {
        return {role: "button"}
    }))($c || ($c = function (e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }(["\n#filerobot-image-editor-root & {\n  cursor: pointer;\n  position: absolute;\n  font-weight: normal;\n  top: ", ";\n  right: ", ";\n  left: ", ";\n  bottom: ", ";\n  font-size: ", ";\n  z-index: 10;\n  font-family: 'filerobot-image-editor-font' !important;\n  color: ", ";\n  speak: none;\n  font-style: normal;\n  font-variant: normal;\n  text-transform: none;\n  line-height: 1;\n\n  /* Better Font Rendering =========== */\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n}\n  \n  #filerobot-image-editor-root &:hover {\n    color: ", ";\n  }\n  \n  #filerobot-image-editor-root &:before {\n      content: '\\e90c'\n    }\n"], ["\n#filerobot-image-editor-root & {\n  cursor: pointer;\n  position: absolute;\n  font-weight: normal;\n  top: ", ";\n  right: ", ";\n  left: ", ";\n  bottom: ", ";\n  font-size: ", ";\n  z-index: 10;\n  font-family: 'filerobot-image-editor-font' !important;\n  color: ", ";\n  speak: none;\n  font-style: normal;\n  font-variant: normal;\n  text-transform: none;\n  line-height: 1;\n\n  /* Better Font Rendering =========== */\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n}\n  \n  #filerobot-image-editor-root &:hover {\n    color: ", ";\n  }\n  \n  #filerobot-image-editor-root &:before {\n      content: '\\\\e90c'\n    }\n"])), (function (e) {
        return e.t || "10px"
    }), (function (e) {
        return e.r || "10px"
    }), (function (e) {
        return e.l || "auto"
    }), (function (e) {
        return e.b || "auto"
    }), (function (e) {
        return e.fz || "18px"
    }), (function () {
        return u.modal.colorMuted
    }), (function (e) {
        return u.modal.colorMutedHover
    }));

    function tu(e) {
        return (tu = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function ou(e, t) {
        if (null == e) return {};
        var n, r, o = function (e, t) {
            if (null == e) return {};
            var n, r, o = {}, i = Object.keys(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || (o[n] = e[n]);
            return o
        }(e, t);
        if (Object.getOwnPropertySymbols) {
            var i = Object.getOwnPropertySymbols(e);
            for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) >= 0 || Object.prototype.propertyIsEnumerable.call(e, n) && (o[n] = e[n])
        }
        return o
    }

    function iu(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function au(e, t) {
        return (au = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function su(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = uu(e);
            if (t) {
                var o = uu(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return lu(this, n)
        }
    }

    function lu(e, t) {
        return !t || "object" !== tu(t) && "function" != typeof t ? cu(e) : t
    }

    function cu(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function uu(e) {
        return (uu = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function fu(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    function pu(e, t) {
        return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, {raw: {value: Object.freeze(t)}}))
    }

    var du = i.b.div(Zc || (Zc = pu(["\n#filerobot-image-editor-root & {\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  overflow: hidden;\n  position: fixed;\n  background: ", ";\n  opacity: .4;\n  z-index: 999999992;\n}\n"])), (function (e) {
            return u.colors.background.base || "#000"
        })),
        hu = i.b.div(Gc || (Gc = pu(["\n#filerobot-image-editor-root & {\n  position: relative;\n  display: -webkit-box;\n  display: -webkit-flex;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-orient: vertical;\n  -webkit-box-direction: normal;\n  -webkit-flex-direction: column;\n  -ms-flex-direction: column;\n  flex-direction: column;\n  -webkit-background-clip: padding-box;\n  background-clip: padding-box;\n  border: ", " solid ", ";\n  border-radius: ", ";\n  overflow: hidden;\n  outline: 0;\n  height: ", ";\n  background: ", ";\n  color: ", ";\n}\n"])), (function (e) {
            return e.noBorder ? 0 : "1px"
        }), (function (e) {
            return e.noBorder ? "transparent" : u.colors.border.base || "#B0B0B0"
        }), (function (e) {
            return e.noBorder ? 0 : u.radii[3]
        }), (function (e) {
            return e.h || e.height || "auto"
        }), (function (e) {
            return u.colors.background.base || "#fff"
        }), (function (e) {
            return u.colors.text || "#3d3d3d"
        })),
        gu = i.b.div(Jc || (Jc = pu(["\n#filerobot-image-editor-root & {\n  azimuth: center;\n  border-collapse: separate;\n  border-spacing: 0;\n  caption-side: top;\n  cursor: auto;\n  direction: ltr;\n  elevation: level;\n  empty-cells: show;\n  font-size: medium;\n  font-style: medium;\n  font-variant: medium;\n  font-weight: medium;\n  letter-spacing: normal;\n  line-height: medium;\n  list-style-image: none;\n  list-style-position: outside;\n  list-style-type: disc;\n  list-style: disc outside none;\n  orphans: 2;\n  pitch-range: 50;\n  pitch: medium;\n  quotes: '\"' '\"';\n  richness: 50;\n  speak-header: once;\n  speak-numeral: continuous;\n  speak-punctuation: none;\n  speak: normal;\n  speech-rate: medium;\n  stress: 50;\n  text-align: left;\n  text-indent: 0;\n  text-transform: none;\n  visibility: visible;\n  voice-family: none;\n  volume: medium;\n  white-space: normal;\n  widows: 2;\n  word-spacing: 0;\n  position: fixed;\n  padding: ", ";\n  top: 5%;\n  left: 15%;\n  right: 15%;\n  bottom: 5%;\n  color: ", ";\n  overflow: hidden;\n  z-index: ", ";\n  display: block;\n  animation: scaleflexFadeInAnimation 350ms ease-in-out both;\n  font-family: 'Roboto', 'Arial', sans-serif;\n  filter: drop-shadow(0px 2px 4px rgba(77, 78, 78, 0.25));\n  \n  ", ";\n}\n  \n  @keyframes scaleflexFadeInAnimation {\n    from {opacity: 0;}\n    to {opacity: 1;}\n  }\n  \n  @media (max-width: 1000px) {\n#filerobot-image-editor-root & {\n    top: 20px;\n    left: 20px;\n    bottom: 20px;\n    right: 20px\n}\n  }\n"])), (function (e) {
            return e.p || e.padding || "0"
        }), (function (e) {
            return u.colors.text || "#3d3d3d"
        }), (function (e) {
            return e.zIndex || "999999995"
        }), (function (e) {
            return e.isTooSmall ? "\n    top: 20% !important;\n    left: 15px !important;\n    right: 15px !important;\n    bottom: auto !important;\n    color: black !important;\n    text-align: center !important;\n    font-size: 18px;\n    \n    > div {\n      padding: 40px !important;\n    }\n    \n    * {\n      color: black !important;\n    }\n  " : ""
        }));
    var mu = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && au(e, t)
        }(s, e);
        var t, n, i, a = su(s);

        function s(e) {
            var t;
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, s), fu(cu(t = a.call(this, e)), "handleOutsideMouseClick", (function (e) {
                var n = t.props.onClose, r = void 0 === n ? function () {
                } : n;
                27 === e.keyCode && (e.stopPropagation(), r(Sr))
            })), t.root = document.createElement("div"), t.root.classList.add("filerobot-image-editor-root"), t.root.id = "filerobot-image-editor-root", document.body.appendChild(t.root);
            var n = t.props.closeOnOutsideClick;
            return (void 0 === n || n) && document.addEventListener("keydown", t.handleOutsideMouseClick), t
        }

        return t = s, (n = [{
            key: "componentWillUnmount", value: function () {
                var e = this.props.closeOnOutsideClick, t = void 0 === e || e;
                document.body.removeChild(this.root), t && document.removeEventListener("keydown", this.handleOutsideMouseClick)
            }
        }, {
            key: "render", value: function () {
                var e = this.props, t = e.onClose, n = void 0 === t ? function () {
                    } : t, i = e.isHideCloseBtn, a = e.configModalId,
                    s = ou(e, ["onClose", "isHideCloseBtn", "configModalId"]);
                return Object(r.createPortal)(Object(K.jsxs)(o.Fragment, {
                    children: [Object(K.jsx)(du, {
                        className: "modal-overlay",
                        onClick: function () {
                            return n(jr)
                        }
                    }), Object(K.jsxs)(gu, ru(ru({id: a || ir}, this.props), {}, {children: [!i && Object(K.jsx)(eu, {onClick: n}), Object(K.jsx)(hu, ru(ru({h: "100%"}, s), {}, {children: this.props.children}))]}))]
                }), this.root)
            }
        }]) && iu(t.prototype, n), i && iu(t, i), s
    }(o.Component), bu = (n(64), {
        en: {
            "header.image_editor_title": "Filerobot Image Editor",
            "header.toggle_fullscreen": "Toggle fullscreen",
            "header.close": "Close",
            "header.close_modal": "Close window",
            "toolbar.download": "Download",
            "toolbar.save": "Save",
            "toolbar.apply": "Apply",
            "toolbar.saveAsNewImage": "Save As New Image",
            "toolbar.cancel": "Cancel",
            "toolbar.go_back": "Go Back",
            "toolbar.adjust": "Adjust",
            "toolbar.effects": "Effects",
            "toolbar.filters": "Filters",
            "toolbar.orientation": "Orientation",
            "toolbar.crop": "Crop",
            "toolbar.resize": "Resize",
            "toolbar.watermark": "Watermark",
            "toolbar.focus_point": "Focus point",
            "toolbar.shapes": "Shapes",
            "toolbar.image": "Image",
            "toolbar.text": "Text",
            "adjust.brightness": "Brightness",
            "adjust.contrast": "Contrast",
            "adjust.exposure": "Exposure",
            "adjust.saturation": "Saturation",
            "orientation.rotate_l": "Rotate Left",
            "orientation.rotate_r": "Rotate Right",
            "orientation.flip_h": "Flip Horizontally",
            "orientation.flip_v": "Flip Vertically",
            "pre_resize.title": "Would you like to reduce resolution before editing the image?",
            "pre_resize.keep_original_resolution": "Keep original resolution",
            "pre_resize.resize_n_continue": "Resize & Continue",
            "footer.reset": "Reset",
            "footer.undo": "Undo",
            "footer.redo": "Redo",
            "spinner.label": "Processing...",
            "warning.too_big_resolution": "The resolution of the image is too big for the web. It can cause problems with Image Editor performance.",
            "common.x": "x",
            "common.y": "y",
            "common.width": "width",
            "common.height": "height",
            "common.custom": "custom",
            "common.original": "original",
            "common.square": "square",
            "common.opacity": "Opacity",
            "common.apply_watermark": "Apply watermark",
            "common.url": "URL",
            "common.upload": "Upload",
            "common.gallery": "Gallery",
            "common.text": "Text"
        }, fr: {
            "header.image_editor_title": "Éditeur d'Image Filerobot",
            "header.toggle_fullscreen": "Basculer en plein écran",
            "header.close_modal": "Fermer la fenêtre",
            "toolbar.download": "Télécharger",
            "toolbar.save": "Sauvegarder",
            "toolbar.apply": "Appliquer",
            "toolbar.saveAsNewImage": "Save As New Image",
            "toolbar.close": "Fermer",
            "toolbar.cancel": "Annuler",
            "toolbar.go_back": "Retour",
            "toolbar.adjust": "Ajuster",
            "toolbar.effects": "Effets",
            "toolbar.filters": "Filtres",
            "toolbar.orientation": "Orientation",
            "toolbar.crop": "Rogner",
            "toolbar.resize": "Redimensionner",
            "toolbar.watermark": "Watermark",
            "toolbar.focus_point": "Focus point",
            "toolbar.shapes": "Shapes",
            "toolbar.image": "Image",
            "toolbar.text": "Text",
            "adjust.brightness": "Luminosité",
            "adjust.contrast": "Contraste",
            "adjust.exposure": "Exposition",
            "adjust.saturation": "Saturation",
            "orientation.rotate_l": "Rotation Gauche",
            "orientation.rotate_r": "Rotation Droite",
            "orientation.flip_h": "Miroir Horizontal",
            "orientation.flip_v": "Miroir Vertical",
            "pre_resize.title": "Voulez-vous réduire la résolution de l'image avant d'éditer l'image ?",
            "pre_resize.keep_original_resolution": "Conserver la résolution d'origine",
            "pre_resize.resize_n_continue": "Redimensionner et Continuer",
            "footer.reset": "Réinitialiser",
            "footer.undo": "Annuler",
            "footer.redo": "Refaire",
            "spinner.label": "Transformation...",
            "warning.too_big_resolution": "La résolution de l'image est trop grande pour le web et peut endommager les performances de l'Éditeur d'Image Filerobot.",
            "common.x": "x",
            "common.y": "y",
            "common.width": "largeur",
            "common.height": "hauteur",
            "common.custom": "custom",
            "common.original": "original",
            "common.square": "carré",
            "common.opacity": "opacité",
            "common.apply_watermark": "Appliquer watermark",
            "common.url": "URL",
            "common.upload": "Upload",
            "common.gallery": "Gallery"
        }, "zh-cn": {
            "header.image_editor_title": "Filerobot 图片编辑器",
            "header.toggle_fullscreen": "Toggle fullscreen",
            "header.close_modal": "Close window",
            "toolbar.download": "下载",
            "toolbar.save": "保存",
            "toolbar.apply": "应用",
            "toolbar.saveAsNewImage": "Save As New Image",
            "toolbar.close": "Close",
            "toolbar.cancel": "取消",
            "toolbar.go_back": "后退",
            "toolbar.adjust": "调整",
            "toolbar.effects": "效果",
            "toolbar.filters": "滤镜",
            "toolbar.orientation": "方向",
            "toolbar.crop": "裁切",
            "toolbar.resize": "缩放",
            "toolbar.watermark": "水印",
            "toolbar.focus_point": "Focus point",
            "toolbar.shapes": "Shapes",
            "toolbar.image": "Image",
            "toolbar.text": "Text",
            "adjust.brightness": "亮度",
            "adjust.contrast": "对比对",
            "adjust.exposure": "曝光度",
            "adjust.saturation": "饱和度",
            "orientation.rotate_l": "向左旋转",
            "orientation.rotate_r": "向右旋转",
            "orientation.flip_h": "水平翻转",
            "orientation.flip_v": "垂直翻转",
            "pre_resize.title": "是否需要在开始编辑之前缩小图片的分辨率?",
            "pre_resize.keep_original_resolution": "保持原始分辨率",
            "pre_resize.resize_n_continue": "缩小并继续",
            "footer.reset": "重置",
            "footer.undo": "撤销",
            "footer.redo": "重做",
            "spinner.label": "处理中...",
            "warning.too_big_resolution": "图片的分辨率过大,这会严重影响图片编辑器的性能。",
            "common.x": "x",
            "common.y": "y",
            "common.width": "宽度",
            "common.height": "高度",
            "common.custom": "自定义",
            "common.original": "原始比例",
            "common.square": "方形",
            "common.banner": "通栏",
            "common.opacity": "透明度",
            "common.apply_watermark": "应用水印",
            "common.url": "URL",
            "common.upload": "Upload",
            "common.gallery": "Gallery"
        }
    }), vu = {
        colors: {
            primaryBg: "#1e262c",
            primaryBgHover: "#637381",
            secondaryBg: "#263138",
            secondaryBgHover: "#34444c",
            text: "#F9FAFB",
            textHover: "#fff",
            textMute: "#aaa",
            textWarn: "#f7931e",
            secondaryBgOpacity: "rgba(0, 0, 0, 0.75)",
            accent: "#1e262c",
            button: {primary: "#00707c", secondary: "#00707c", border: "#008D99"},
            border: "#161e23",
            borderLight: "#70777f",
            disabledBg: "rgba(255, 0, 0, 0.1)"
        }
    }, yu = {
        colors: {
            primaryBg: "#ffffff",
            primaryBgHover: "#f2f2f2",
            secondaryBg: "#F8FAFB",
            secondaryBgHover: "#DFE7ED",
            secondaryBgOpacity: "rgba(255,255,255, 0.75)",
            text: "#5D6D7E",
            textHover: "#1a2329",
            textMute: "#aaa",
            textWarn: "#f7931e",
            accent: "#D5D8DC",
            button: {
                primary: "#6879EB",
                secondary: "#ffffff",
                border: "transparent",
                hover: "#5064ea",
                active: "#3c4ec7"
            },
            border: "#DFE7ED",
            borderLight: "#e1e1e1",
            disabledBg: "rgba(255, 0, 0, 0.1)"
        }
    }, wu = "undefined" == typeof window || "undefined" == typeof CanvasRenderingContext2D;

    function xu(e) {
        return (xu = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
            return typeof e
        } : function (e) {
            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
        })(e)
    }

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

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

    function Su(e, t) {
        for (var n = 0; n < t.length; n++) {
            var r = t[n];
            r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
        }
    }

    function ju(e, t) {
        return (ju = Object.setPrototypeOf || function (e, t) {
            return e.__proto__ = t, e
        })(e, t)
    }

    function Cu(e) {
        var t = function () {
            if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
            if (Reflect.construct.sham) return !1;
            if ("function" == typeof Proxy) return !0;
            try {
                return Date.prototype.toString.call(Reflect.construct(Date, [], (function () {
                }))), !0
            } catch (e) {
                return !1
            }
        }();
        return function () {
            var n, r = Pu(e);
            if (t) {
                var o = Pu(this).constructor;
                n = Reflect.construct(r, arguments, o)
            } else n = r.apply(this, arguments);
            return _u(this, n)
        }
    }

    function _u(e, t) {
        return !t || "object" !== xu(t) && "function" != typeof t ? Eu(e) : t
    }

    function Eu(e) {
        if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return e
    }

    function Pu(e) {
        return (Pu = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) {
            return e.__proto__ || Object.getPrototypeOf(e)
        })(e)
    }

    function Ru(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n, e
    }

    var Du = function (e) {
        !function (e, t) {
            if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
            e.prototype = Object.create(t && t.prototype, {
                constructor: {
                    value: e,
                    writable: !0,
                    configurable: !0
                }
            }), t && ju(e, t)
        }(a, e);
        var t, n, r, o = Cu(a);

        function a(e) {
            var t, n = e.show, r = void 0 !== n && n, i = e.src, s = void 0 === i ? "" : i, l = e.config,
                c = void 0 === l ? {} : l;
            !function (e, t) {
                if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
            }(this, a), Ru(Eu(t = o.call(this)), "_isMounted", !1), Ru(Eu(t), "processConfig", (function (e) {
                var t = e.processWithCloudimage, n = e.tools || (t ? ur : sr);
                return Ou(Ou(Ou({}, xr), {}, {
                    processWithCloudService: t,
                    processWithFilerobot: !!e.filerobot,
                    processWithCloudimage: !!e.cloudimage
                }, e), {}, {
                    tools: t ? n.filter((function (e) {
                        return ur.indexOf(e) > -1
                    })) : n
                })
            })), Ru(Eu(t), "open", (function (e) {
                var n = t.props.onOpen;
                t._isMounted && t.setState({isVisible: !0, src: e}, (function () {
                    n && n()
                }))
            })), Ru(Eu(t), "close", (function () {
                var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : kr, n = t.props.onClose,
                    r = "object" === xu(e) ? kr : e;
                t._isMounted && t.setState({isVisible: !1}, (function () {
                    n && n({status: r})
                }))
            })), c.translations = c.translations || {}, c.language = c.translations[c.language] || bu[c.language] ? c.language : "en", c.theme = c.theme || {}, c.theme.colors = c.theme.colors || {}, c.theme.fonts = c.theme.fonts || hr, c.colorScheme = c.colorScheme || "dark", c.platform = c.platform || "filerobot";
            var u = "object" === xu(c.colorScheme);
            return t.state = {
                isVisible: r,
                src: s,
                config: t.processConfig(c),
                t: Ou(Ou({}, bu[c.language]), c.translations[c.language]),
                colorScheme: u ? "custom" : c.colorScheme || "dark",
                theme: {
                    colors: Ou(Ou({}, (u ? {colors: c.colorScheme} : "light" === c.colorScheme ? yu : vu).colors), c.theme.colors),
                    fonts: c.theme.fonts
                }
            }, t
        }

        return t = a, (n = [{
            key: "componentDidMount", value: function () {
                this._isMounted = !0
            }
        }, {
            key: "componentWillUnmount", value: function () {
                this._isMounted = !1
            }
        }, {
            key: "componentDidUpdate", value: function (e) {
                this.props.show !== e.show && (this.props.show ? this.open(this.props.src) : this.close())
            }
        }, {
            key: "render", value: function () {
                var e = this.state, t = e.isVisible, n = e.src, r = e.config, o = e.t, a = e.theme, s = this.props,
                    l = s.onComplete, c = void 0 === l ? function () {
                    } : l, u = s.onBeforeComplete, f = s.onError, p = void 0 === f ? function () {
                    } : f, d = s.closeOnLoad, h = r.showInModal, g = void 0 === h || h;
                if (!n || !t || wu) return null;
                if (n instanceof Blob && r.processWithCloudimage) return null;
                var m = Object(K.jsx)(X, {
                    children: Object(K.jsx)(Qc, {
                        src: n,
                        config: r,
                        onComplete: c,
                        onError: p,
                        onBeforeComplete: u,
                        onClose: this.close,
                        closeOnLoad: d,
                        t: o
                    })
                });
                return Object(K.jsx)(i.a, {
                    theme: Ou({}, a),
                    children: g ? Object(K.jsx)(mu, {
                        noBorder: !0,
                        fullScreen: "lg",
                        isHideCloseBtn: !0,
                        style: {borderRadius: 5},
                        onClose: this.close,
                        configModalId: r.elementId,
                        children: m
                    }) : Object(K.jsx)("div", {
                        className: "filerobot-image-editor-root",
                        id: "filerobot-image-editor-root",
                        style: {width: "100%", height: "100%"},
                        children: m
                    })
                })
            }
        }]) && Su(t.prototype, n), r && Su(t, r), a
    }(o.Component);

    function Mu(e, t) {
        if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
    }

    window.FilerobotImageEditor = function e() {
        var t, n = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
            o = arguments.length > 1 ? arguments[1] : void 0,
            i = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
        Mu(this, e), t = n.elementId ? n.elementId : n.processWithCloudimage || n.cloudimage ? "filerobot-image-editor-cloudimage" : n.processWithFilerobot || n.filerobot ? "filerobot-image-editor-uploader" : "filerobot-image-editor";
        var a = document.getElementById(t), s = function (e) {
            console.log(e)
        };
        s = o && "function" == typeof o ? o : (o = o || {}).onComplete || s, a || ((a = document.createElement("div")).id = t, document.body.appendChild(a)), n.elementId = t;
        var l = function (e) {
            return Object(r.render)(Object(K.jsx)(e, {
                show: i,
                config: n,
                onComplete: s,
                onBeforeComplete: o.onBeforeComplete,
                onOpen: o.onOpen,
                onClose: o.onClose,
                onError: o.onError
            }), a)
        };
        this.component = l(Du), this.open = this.component.open, this.close = this.component.close, this.unmount = function () {
            return Object(r.unmountComponentAtNode)(a)
        }
    }
}]);

Youez - 2016 - github.com/yon3zu
LinuXploit