!(function () {
  "use strict";
  var e,
    r,
    n,
    t = {},
    o = {};
  function i(e) {
    var r = o[e];
    if (void 0 !== r) {
      if (void 0 !== r.error) throw r.error;
      return r.exports;
    }
    var n = (o[e] = { id: e, exports: {} });
    try {
      var c = { id: e, module: n, factory: t[e], require: i };
      i.i.forEach(function (e) {
        e(c);
      }),
        (n = c.module),
        c.factory.call(n.exports, n, n.exports, c.require);
    } catch (e) {
      throw ((n.error = e), e);
    }
    return n.exports;
  }
  (i.m = t),
    (i.c = o),
    (i.i = []),
    (e = []),
    (i.O = function (r, n, t, o) {
      if (!n) {
        var c = 1 / 0;
        for (f = 0; f < e.length; f++) {
          (n = e[f][0]), (t = e[f][1]), (o = e[f][2]);
          for (var a = !0, d = 0; d < n.length; d++)
            (!1 & o || c >= o) &&
            Object.keys(i.O).every(function (e) {
              return i.O[e](n[d]);
            })
              ? n.splice(d--, 1)
              : ((a = !1), o < c && (c = o));
          if (a) {
            e.splice(f--, 1);
            var u = t();
            void 0 !== u && (r = u);
          }
        }
        return r;
      }
      o = o || 0;
      for (var f = e.length; f > 0 && e[f - 1][2] > o; f--) e[f] = e[f - 1];
      e[f] = [n, t, o];
    }),
    (i.d = function (e, r) {
      for (var n in r)
        i.o(r, n) &&
          !i.o(e, n) &&
          Object.defineProperty(e, n, { enumerable: !0, get: r[n] });
    }),
    (i.hu = function (e) {
      return e + "." + i.h() + ".hot-update.js";
    }),
    (i.miniCssF = function (e) {}),
    (i.hmrF = function () {
      return "runtime." + i.h() + ".hot-update.json";
    }),
    (i.h = function () {
      return "52c7b85db32af5f82faa";
    }),
    (i.g = (function () {
      if ("object" == typeof globalThis) return globalThis;
      try {
        return this || new Function("return this")();
      } catch (e) {
        if ("object" == typeof window) return window;
      }
    })()),
    (i.o = function (e, r) {
      return Object.prototype.hasOwnProperty.call(e, r);
    }),
    (r = {}),
    (n = "three:"),
    (i.l = function (e, t, o, c) {
      if (r[e]) r[e].push(t);
      else {
        var a, d;
        if (void 0 !== o)
          for (
            var u = document.getElementsByTagName("script"), f = 0;
            f < u.length;
            f++
          ) {
            var l = u[f];
            if (
              l.getAttribute("src") == e ||
              l.getAttribute("data-webpack") == n + o
            ) {
              a = l;
              break;
            }
          }
        a ||
          ((d = !0),
          ((a = document.createElement("script")).charset = "utf-8"),
          (a.timeout = 120),
          i.nc && a.setAttribute("nonce", i.nc),
          a.setAttribute("data-webpack", n + o),
          (a.src = e)),
          (r[e] = [t]);
        var s = function (n, t) {
            (a.onerror = a.onload = null), clearTimeout(p);
            var o = r[e];
            if (
              (delete r[e],
              a.parentNode && a.parentNode.removeChild(a),
              o &&
                o.forEach(function (e) {
                  return e(t);
                }),
              n)
            )
              return n(t);
          },
          p = setTimeout(
            s.bind(null, void 0, { type: "timeout", target: a }),
            12e4
          );
        (a.onerror = s.bind(null, a.onerror)),
          (a.onload = s.bind(null, a.onload)),
          d && document.head.appendChild(a);
      }
    }),
    (i.r = function (e) {
      "undefined" != typeof Symbol &&
        Symbol.toStringTag &&
        Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }),
        Object.defineProperty(e, "__esModule", { value: !0 });
    }),
    (function () {
      var e,
        r,
        n,
        t = {},
        o = i.c,
        c = [],
        a = [],
        d = "idle",
        u = 0,
        f = [];
      function l(e) {
        d = e;
        for (var r = [], n = 0; n < a.length; n++) r[n] = a[n].call(null, e);
        return Promise.all(r).then(function () {});
      }
      function s() {
        0 === --u &&
          l("ready").then(function () {
            if (0 === u) {
              var e = f;
              f = [];
              for (var r = 0; r < e.length; r++) e[r]();
            }
          });
      }
      function p(e) {
        if ("idle" !== d)
          throw new Error("check() is only allowed in idle status");
        return l("check")
          .then(i.hmrM)
          .then(function (n) {
            return n
              ? l("prepare").then(function () {
                  var t = [];
                  return (
                    (r = []),
                    Promise.all(
                      Object.keys(i.hmrC).reduce(function (e, o) {
                        return i.hmrC[o](n.c, n.r, n.m, e, r, t), e;
                      }, [])
                    ).then(function () {
                      return (
                        (r = function () {
                          return e
                            ? v(e)
                            : l("ready").then(function () {
                                return t;
                              });
                        }),
                        0 === u
                          ? r()
                          : new Promise(function (e) {
                              f.push(function () {
                                e(r());
                              });
                            })
                      );
                      var r;
                    })
                  );
                })
              : l(m() ? "ready" : "idle").then(function () {
                  return null;
                });
          });
      }
      function h(e) {
        return "ready" !== d
          ? Promise.resolve().then(function () {
              throw new Error(
                "apply() is only allowed in ready status (state: " + d + ")"
              );
            })
          : v(e);
      }
      function v(e) {
        (e = e || {}), m();
        var t = r.map(function (r) {
          return r(e);
        });
        r = void 0;
        var o = t
          .map(function (e) {
            return e.error;
          })
          .filter(Boolean);
        if (o.length > 0)
          return l("abort").then(function () {
            throw o[0];
          });
        var i = l("dispose");
        t.forEach(function (e) {
          e.dispose && e.dispose();
        });
        var c,
          a = l("apply"),
          d = function (e) {
            c || (c = e);
          },
          u = [];
        return (
          t.forEach(function (e) {
            if (e.apply) {
              var r = e.apply(d);
              if (r) for (var n = 0; n < r.length; n++) u.push(r[n]);
            }
          }),
          Promise.all([i, a]).then(function () {
            return c
              ? l("fail").then(function () {
                  throw c;
                })
              : n
              ? v(e).then(function (e) {
                  return (
                    u.forEach(function (r) {
                      e.indexOf(r) < 0 && e.push(r);
                    }),
                    e
                  );
                })
              : l("idle").then(function () {
                  return u;
                });
          })
        );
      }
      function m() {
        if (n)
          return (
            r || (r = []),
            Object.keys(i.hmrI).forEach(function (e) {
              n.forEach(function (n) {
                i.hmrI[e](n, r);
              });
            }),
            (n = void 0),
            !0
          );
      }
      (i.hmrD = t),
        i.i.push(function (f) {
          var v,
            m,
            y,
            g,
            b = f.module,
            E = (function (r, n) {
              var t = o[n];
              if (!t) return r;
              var i = function (i) {
                  if (t.hot.active) {
                    if (o[i]) {
                      var a = o[i].parents;
                      -1 === a.indexOf(n) && a.push(n);
                    } else (c = [n]), (e = i);
                    -1 === t.children.indexOf(i) && t.children.push(i);
                  } else
                    console.warn(
                      "[HMR] unexpected require(" +
                        i +
                        ") from disposed module " +
                        n
                    ),
                      (c = []);
                  return r(i);
                },
                a = function (e) {
                  return {
                    configurable: !0,
                    enumerable: !0,
                    get: function () {
                      return r[e];
                    },
                    set: function (n) {
                      r[e] = n;
                    },
                  };
                };
              for (var f in r)
                Object.prototype.hasOwnProperty.call(r, f) &&
                  "e" !== f &&
                  Object.defineProperty(i, f, a(f));
              return (
                (i.e = function (e, n) {
                  return (function (e) {
                    switch (d) {
                      case "ready":
                        l("prepare");
                      case "prepare":
                        return u++, e.then(s, s), e;
                      default:
                        return e;
                    }
                  })(r.e(e, n));
                }),
                i
              );
            })(f.require, f.id);
          (b.hot =
            ((v = f.id),
            (m = b),
            (g = {
              _acceptedDependencies: {},
              _acceptedErrorHandlers: {},
              _declinedDependencies: {},
              _selfAccepted: !1,
              _selfDeclined: !1,
              _selfInvalidated: !1,
              _disposeHandlers: [],
              _main: (y = e !== v),
              _requireSelf: function () {
                (c = m.parents.slice()), (e = y ? void 0 : v), i(v);
              },
              active: !0,
              accept: function (e, r, n) {
                if (void 0 === e) g._selfAccepted = !0;
                else if ("function" == typeof e) g._selfAccepted = e;
                else if ("object" == typeof e && null !== e)
                  for (var t = 0; t < e.length; t++)
                    (g._acceptedDependencies[e[t]] = r || function () {}),
                      (g._acceptedErrorHandlers[e[t]] = n);
                else
                  (g._acceptedDependencies[e] = r || function () {}),
                    (g._acceptedErrorHandlers[e] = n);
              },
              decline: function (e) {
                if (void 0 === e) g._selfDeclined = !0;
                else if ("object" == typeof e && null !== e)
                  for (var r = 0; r < e.length; r++)
                    g._declinedDependencies[e[r]] = !0;
                else g._declinedDependencies[e] = !0;
              },
              dispose: function (e) {
                g._disposeHandlers.push(e);
              },
              addDisposeHandler: function (e) {
                g._disposeHandlers.push(e);
              },
              removeDisposeHandler: function (e) {
                var r = g._disposeHandlers.indexOf(e);
                r >= 0 && g._disposeHandlers.splice(r, 1);
              },
              invalidate: function () {
                switch (((this._selfInvalidated = !0), d)) {
                  case "idle":
                    (r = []),
                      Object.keys(i.hmrI).forEach(function (e) {
                        i.hmrI[e](v, r);
                      }),
                      l("ready");
                    break;
                  case "ready":
                    Object.keys(i.hmrI).forEach(function (e) {
                      i.hmrI[e](v, r);
                    });
                    break;
                  case "prepare":
                  case "check":
                  case "dispose":
                  case "apply":
                    (n = n || []).push(v);
                }
              },
              check: p,
              apply: h,
              status: function (e) {
                if (!e) return d;
                a.push(e);
              },
              addStatusHandler: function (e) {
                a.push(e);
              },
              removeStatusHandler: function (e) {
                var r = a.indexOf(e);
                r >= 0 && a.splice(r, 1);
              },
              data: t[v],
            }),
            (e = void 0),
            g)),
            (b.parents = c),
            (b.children = []),
            (c = []),
            (f.require = E);
        }),
        (i.hmrC = {}),
        (i.hmrI = {});
    })(),
    (function () {
      var e;
      i.g.importScripts && (e = i.g.location + "");
      var r = i.g.document;
      if (
        !e &&
        r &&
        (r.currentScript &&
          "SCRIPT" === r.currentScript.tagName.toUpperCase() &&
          (e = r.currentScript.src),
        !e)
      ) {
        var n = r.getElementsByTagName("script");
        if (n.length)
          for (var t = n.length - 1; t > -1 && (!e || !/^http(s?):/.test(e)); )
            e = n[t--].src;
      }
      if (!e)
        throw new Error(
          "Automatic publicPath is not supported in this browser"
        );
      (e = e
        .replace(/^blob:/, "")
        .replace(/#.*$/, "")
        .replace(/\?.*$/, "")
        .replace(/\/[^\/]+$/, "/")),
        (i.p = e);
    })(),
    (function () {
      if ("undefined" != typeof document) {
        var e = function (e, r, n, t, o) {
            var c = document.createElement("link");
            (c.rel = "stylesheet"),
              (c.type = "text/css"),
              i.nc && (c.nonce = i.nc);
            return (
              (c.onerror = c.onload =
                function (n) {
                  if (((c.onerror = c.onload = null), "load" === n.type)) t();
                  else {
                    var i = n && n.type,
                      a = (n && n.target && n.target.href) || r,
                      d = new Error(
                        "Loading CSS chunk " +
                          e +
                          " failed.\n(" +
                          i +
                          ": " +
                          a +
                          ")"
                      );
                    (d.name = "ChunkLoadError"),
                      (d.code = "CSS_CHUNK_LOAD_FAILED"),
                      (d.type = i),
                      (d.request = a),
                      c.parentNode && c.parentNode.removeChild(c),
                      o(d);
                  }
                }),
              (c.href = r),
              n
                ? n.parentNode.insertBefore(c, n.nextSibling)
                : document.head.appendChild(c),
              c
            );
          },
          r = function (e, r) {
            for (
              var n = document.getElementsByTagName("link"), t = 0;
              t < n.length;
              t++
            ) {
              var o =
                (c = n[t]).getAttribute("data-href") || c.getAttribute("href");
              if ("stylesheet" === c.rel && (o === e || o === r)) return c;
            }
            var i = document.getElementsByTagName("style");
            for (t = 0; t < i.length; t++) {
              var c;
              if ((o = (c = i[t]).getAttribute("data-href")) === e || o === r)
                return c;
            }
          },
          n = [],
          t = [],
          o = function (e) {
            return {
              dispose: function () {
                for (var e = 0; e < n.length; e++) {
                  var r = n[e];
                  r.parentNode && r.parentNode.removeChild(r);
                }
                n.length = 0;
              },
              apply: function () {
                for (var e = 0; e < t.length; e++) t[e].rel = "stylesheet";
                t.length = 0;
              },
            };
          };
        i.hmrC.miniCss = function (c, a, d, u, f, l) {
          f.push(o),
            c.forEach(function (o) {
              var c = i.miniCssF(o),
                a = i.p + c,
                d = r(c, a);
              d &&
                u.push(
                  new Promise(function (r, i) {
                    var c = e(
                      o,
                      a,
                      d,
                      function () {
                        (c.as = "style"), (c.rel = "preload"), r();
                      },
                      i
                    );
                    n.push(d), t.push(c);
                  })
                );
            });
        };
      }
    })(),
    (function () {
      var e,
        r,
        n,
        t,
        o,
        c = (i.hmrS_jsonp = i.hmrS_jsonp || { 121: 0 }),
        a = {};
      function d(r, n) {
        return (
          (e = n),
          new Promise(function (e, n) {
            a[r] = e;
            var t = i.p + i.hu(r),
              o = new Error();
            i.l(t, function (e) {
              if (a[r]) {
                a[r] = void 0;
                var t = e && ("load" === e.type ? "missing" : e.type),
                  i = e && e.target && e.target.src;
                (o.message =
                  "Loading hot update chunk " +
                  r +
                  " failed.\n(" +
                  t +
                  ": " +
                  i +
                  ")"),
                  (o.name = "ChunkLoadError"),
                  (o.type = t),
                  (o.request = i),
                  n(o);
              }
            });
          })
        );
      }
      function u(e) {
        function a(e) {
          for (
            var r = [e],
              n = {},
              t = r.map(function (e) {
                return { chain: [e], id: e };
              });
            t.length > 0;

          ) {
            var o = t.pop(),
              c = o.id,
              a = o.chain,
              u = i.c[c];
            if (u && (!u.hot._selfAccepted || u.hot._selfInvalidated)) {
              if (u.hot._selfDeclined)
                return { type: "self-declined", chain: a, moduleId: c };
              if (u.hot._main)
                return { type: "unaccepted", chain: a, moduleId: c };
              for (var f = 0; f < u.parents.length; f++) {
                var l = u.parents[f],
                  s = i.c[l];
                if (s) {
                  if (s.hot._declinedDependencies[c])
                    return {
                      type: "declined",
                      chain: a.concat([l]),
                      moduleId: c,
                      parentId: l,
                    };
                  -1 === r.indexOf(l) &&
                    (s.hot._acceptedDependencies[c]
                      ? (n[l] || (n[l] = []), d(n[l], [c]))
                      : (delete n[l],
                        r.push(l),
                        t.push({ chain: a.concat([l]), id: l })));
                }
              }
            }
          }
          return {
            type: "accepted",
            moduleId: e,
            outdatedModules: r,
            outdatedDependencies: n,
          };
        }
        function d(e, r) {
          for (var n = 0; n < r.length; n++) {
            var t = r[n];
            -1 === e.indexOf(t) && e.push(t);
          }
        }
        i.f && delete i.f.jsonpHmr, (r = void 0);
        var u = {},
          f = [],
          l = {},
          s = function (e) {
            console.warn(
              "[HMR] unexpected require(" + e.id + ") to disposed module"
            );
          };
        for (var p in n)
          if (i.o(n, p)) {
            var h = n[p],
              v = h ? a(p) : { type: "disposed", moduleId: p },
              m = !1,
              y = !1,
              g = !1,
              b = "";
            switch (
              (v.chain && (b = "\nUpdate propagation: " + v.chain.join(" -> ")),
              v.type)
            ) {
              case "self-declined":
                e.onDeclined && e.onDeclined(v),
                  e.ignoreDeclined ||
                    (m = new Error(
                      "Aborted because of self decline: " + v.moduleId + b
                    ));
                break;
              case "declined":
                e.onDeclined && e.onDeclined(v),
                  e.ignoreDeclined ||
                    (m = new Error(
                      "Aborted because of declined dependency: " +
                        v.moduleId +
                        " in " +
                        v.parentId +
                        b
                    ));
                break;
              case "unaccepted":
                e.onUnaccepted && e.onUnaccepted(v),
                  e.ignoreUnaccepted ||
                    (m = new Error(
                      "Aborted because " + p + " is not accepted" + b
                    ));
                break;
              case "accepted":
                e.onAccepted && e.onAccepted(v), (y = !0);
                break;
              case "disposed":
                e.onDisposed && e.onDisposed(v), (g = !0);
                break;
              default:
                throw new Error("Unexception type " + v.type);
            }
            if (m) return { error: m };
            if (y)
              for (p in ((l[p] = h),
              d(f, v.outdatedModules),
              v.outdatedDependencies))
                i.o(v.outdatedDependencies, p) &&
                  (u[p] || (u[p] = []), d(u[p], v.outdatedDependencies[p]));
            g && (d(f, [v.moduleId]), (l[p] = s));
          }
        n = void 0;
        for (var E, w = [], _ = 0; _ < f.length; _++) {
          var I = f[_],
            k = i.c[I];
          k &&
            (k.hot._selfAccepted || k.hot._main) &&
            l[I] !== s &&
            !k.hot._selfInvalidated &&
            w.push({
              module: I,
              require: k.hot._requireSelf,
              errorHandler: k.hot._selfAccepted,
            });
        }
        return {
          dispose: function () {
            var e;
            t.forEach(function (e) {
              delete c[e];
            }),
              (t = void 0);
            for (var r, n = f.slice(); n.length > 0; ) {
              var o = n.pop(),
                a = i.c[o];
              if (a) {
                var d = {},
                  l = a.hot._disposeHandlers;
                for (_ = 0; _ < l.length; _++) l[_].call(null, d);
                for (
                  i.hmrD[o] = d,
                    a.hot.active = !1,
                    delete i.c[o],
                    delete u[o],
                    _ = 0;
                  _ < a.children.length;
                  _++
                ) {
                  var s = i.c[a.children[_]];
                  s &&
                    (e = s.parents.indexOf(o)) >= 0 &&
                    s.parents.splice(e, 1);
                }
              }
            }
            for (var p in u)
              if (i.o(u, p) && (a = i.c[p]))
                for (E = u[p], _ = 0; _ < E.length; _++)
                  (r = E[_]),
                    (e = a.children.indexOf(r)) >= 0 && a.children.splice(e, 1);
          },
          apply: function (r) {
            for (var n in l) i.o(l, n) && (i.m[n] = l[n]);
            for (var t = 0; t < o.length; t++) o[t](i);
            for (var c in u)
              if (i.o(u, c)) {
                var a = i.c[c];
                if (a) {
                  E = u[c];
                  for (var d = [], s = [], p = [], h = 0; h < E.length; h++) {
                    var v = E[h],
                      m = a.hot._acceptedDependencies[v],
                      y = a.hot._acceptedErrorHandlers[v];
                    if (m) {
                      if (-1 !== d.indexOf(m)) continue;
                      d.push(m), s.push(y), p.push(v);
                    }
                  }
                  for (var g = 0; g < d.length; g++)
                    try {
                      d[g].call(null, E);
                    } catch (n) {
                      if ("function" == typeof s[g])
                        try {
                          s[g](n, { moduleId: c, dependencyId: p[g] });
                        } catch (t) {
                          e.onErrored &&
                            e.onErrored({
                              type: "accept-error-handler-errored",
                              moduleId: c,
                              dependencyId: p[g],
                              error: t,
                              originalError: n,
                            }),
                            e.ignoreErrored || (r(t), r(n));
                        }
                      else
                        e.onErrored &&
                          e.onErrored({
                            type: "accept-errored",
                            moduleId: c,
                            dependencyId: p[g],
                            error: n,
                          }),
                          e.ignoreErrored || r(n);
                    }
                }
              }
            for (var b = 0; b < w.length; b++) {
              var _ = w[b],
                I = _.module;
              try {
                _.require(I);
              } catch (n) {
                if ("function" == typeof _.errorHandler)
                  try {
                    _.errorHandler(n, { moduleId: I, module: i.c[I] });
                  } catch (t) {
                    e.onErrored &&
                      e.onErrored({
                        type: "self-accept-error-handler-errored",
                        moduleId: I,
                        error: t,
                        originalError: n,
                      }),
                      e.ignoreErrored || (r(t), r(n));
                  }
                else
                  e.onErrored &&
                    e.onErrored({
                      type: "self-accept-errored",
                      moduleId: I,
                      error: n,
                    }),
                    e.ignoreErrored || r(n);
              }
            }
            return f;
          },
        };
      }
      (self.webpackHotUpdatethree = function (r, t, c) {
        for (var d in t) i.o(t, d) && ((n[d] = t[d]), e && e.push(d));
        c && o.push(c), a[r] && (a[r](), (a[r] = void 0));
      }),
        (i.hmrI.jsonp = function (e, r) {
          n || ((n = {}), (o = []), (t = []), r.push(u)),
            i.o(n, e) || (n[e] = i.m[e]);
        }),
        (i.hmrC.jsonp = function (e, a, f, l, s, p) {
          s.push(u),
            (r = {}),
            (t = a),
            (n = f.reduce(function (e, r) {
              return (e[r] = !1), e;
            }, {})),
            (o = []),
            e.forEach(function (e) {
              i.o(c, e) && void 0 !== c[e]
                ? (l.push(d(e, p)), (r[e] = !0))
                : (r[e] = !1);
            }),
            i.f &&
              (i.f.jsonpHmr = function (e, n) {
                r && i.o(r, e) && !r[e] && (n.push(d(e)), (r[e] = !0));
              });
        }),
        (i.hmrM = function () {
          if ("undefined" == typeof fetch)
            throw new Error("No browser support: need fetch API");
          return fetch(i.p + i.hmrF()).then(function (e) {
            if (404 !== e.status) {
              if (!e.ok)
                throw new Error(
                  "Failed to fetch update manifest " + e.statusText
                );
              return e.json();
            }
          });
        }),
        (i.O.j = function (e) {
          return 0 === c[e];
        });
      var f = function (e, r) {
          var n,
            t,
            o = r[0],
            a = r[1],
            d = r[2],
            u = 0;
          if (
            o.some(function (e) {
              return 0 !== c[e];
            })
          ) {
            for (n in a) i.o(a, n) && (i.m[n] = a[n]);
            if (d) var f = d(i);
          }
          for (e && e(r); u < o.length; u++)
            (t = o[u]), i.o(c, t) && c[t] && c[t][0](), (c[t] = 0);
          return i.O(f);
        },
        l = (self.webpackChunkthree = self.webpackChunkthree || []);
      l.forEach(f.bind(null, 0)), (l.push = f.bind(null, l.push.bind(l)));
    })();
})();
