@netlify/spark-ui 1.23.1 → 1.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/AskNetlify.BiMhcpol.js +2795 -0
- package/dist/chunks/compat.module.BaLKWB4y.js +300 -0
- package/dist/chunks/hooks.module.DRcxknIz.js +180 -0
- package/dist/chunks/{useTimeout.Cq4aqnDe.js → useTimeout.w16oNznN.js} +1 -1
- package/dist/components/preact/AskNetlify/AskNetlify.js +2 -2
- package/dist/components/preact/AskNetlify/hooks/useAskAnalytics.js +1 -1
- package/dist/components/preact/Modal/Modal.js +1 -1
- package/dist/components/preact/Popover/Popover.js +1 -1
- package/dist/components/preact/SearchModal/components/SearchInput.js +2 -2
- package/dist/components/preact/SearchModal/components/SearchLink/SearchLink.js +1 -1
- package/dist/components/preact/SearchModal/components/SearchModal/SearchModal.d.ts +2 -0
- package/dist/components/preact/SearchModal/components/SearchModal/SearchModal.js +44 -38
- package/dist/components/preact/SearchModal/components/SearchToggle/SearchToggle.js +1 -1
- package/dist/components/preact/SearchModal/hooks/useKeyboardNav.js +1 -1
- package/dist/components/preact/SearchModal/hooks/useSearch.d.ts +2 -2
- package/dist/components/preact/SearchModal/hooks/useSearch.js +29 -27
- package/dist/components/preact/SearchModal/hooks/useSearchAnalytics.js +1 -1
- package/dist/components/preact/SearchModal/hooks/useSearchHotkeys.js +1 -1
- package/dist/components/preact/SearchModal/hooks/useSearchParams.js +1 -1
- package/dist/components/preact/SearchModal/hooks/useSearchToggles.js +1 -1
- package/dist/components/preact/SearchModal/types/search.types.d.ts +19 -0
- package/dist/components/preact/index.js +2 -2
- package/package.json +17 -17
- package/packages/components/preact/SearchModal/components/SearchModal/SearchModal.tsx +11 -3
- package/packages/components/preact/SearchModal/hooks/useSearch.ts +8 -6
- package/packages/components/preact/SearchModal/types/search.types.tsx +24 -0
- package/packages/components/preact/index.ts +1 -1
- package/dist/chunks/AskNetlify.CpaPeYsd.js +0 -4389
- package/dist/chunks/compat.module.8cuvf1_R.js +0 -298
- package/dist/chunks/hooks.module.DGkdD5n9.js +0 -177
|
@@ -0,0 +1,2795 @@
|
|
|
1
|
+
import { u as E } from "./jsxRuntime.module.Bzuv3cXw.js";
|
|
2
|
+
import { A as M, T as Xa, q as P, y as B, x as Sa, d as Y, h as ve } from "./hooks.module.DRcxknIz.js";
|
|
3
|
+
import { m as gn, g as kn, D as fn } from "./compat.module.BaLKWB4y.js";
|
|
4
|
+
import { createElement as bn, createRef as vn, Component as ye, createContext as ha } from "preact";
|
|
5
|
+
import { questions as yn } from "../components/preact/AskNetlify/components/QuestionList/questions.js";
|
|
6
|
+
import { QuestionList as wn } from "../components/preact/AskNetlify/components/QuestionList/QuestionList.js";
|
|
7
|
+
import { BackButton as xn } from "../components/preact/AskNetlify/components/BackButton.js";
|
|
8
|
+
import { ChatMessages as jn } from "../components/preact/AskNetlify/components/ChatMessages.js";
|
|
9
|
+
import En from "../components/preact/Popover/Popover.js";
|
|
10
|
+
import '../assets/AskNetlify.css';function U(a) {
|
|
11
|
+
if (a === void 0) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
12
|
+
return a;
|
|
13
|
+
}
|
|
14
|
+
function Ra(a, e) {
|
|
15
|
+
return Ra = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(t, o) {
|
|
16
|
+
return t.__proto__ = o, t;
|
|
17
|
+
}, Ra(a, e);
|
|
18
|
+
}
|
|
19
|
+
function Rn(a, e) {
|
|
20
|
+
a.prototype = Object.create(e.prototype), a.prototype.constructor = a, Ra(a, e);
|
|
21
|
+
}
|
|
22
|
+
var _n = Object.defineProperty, zn = Object.defineProperties, In = Object.getOwnPropertyDescriptors, da = Object.getOwnPropertySymbols, we = Object.prototype.hasOwnProperty, xe = Object.prototype.propertyIsEnumerable, _a = (a, e, t) => e in a ? _n(a, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : a[e] = t, L = (a, e) => {
|
|
23
|
+
for (var t in e || (e = {})) we.call(e, t) && _a(a, t, e[t]);
|
|
24
|
+
if (da) for (var t of da(e)) xe.call(e, t) && _a(a, t, e[t]);
|
|
25
|
+
return a;
|
|
26
|
+
}, je = (a, e) => zn(a, In(e)), On = (a, e) => {
|
|
27
|
+
var t = {};
|
|
28
|
+
for (var o in a) we.call(a, o) && e.indexOf(o) < 0 && (t[o] = a[o]);
|
|
29
|
+
if (a != null && da) for (var o of da(a)) e.indexOf(o) < 0 && xe.call(a, o) && (t[o] = a[o]);
|
|
30
|
+
return t;
|
|
31
|
+
}, C = (a, e, t) => (_a(a, typeof e != "symbol" ? e + "" : e, t), t), J = (a, e, t) => new Promise((o, n) => {
|
|
32
|
+
var i = (l) => {
|
|
33
|
+
try {
|
|
34
|
+
u(t.next(l));
|
|
35
|
+
} catch (s) {
|
|
36
|
+
n(s);
|
|
37
|
+
}
|
|
38
|
+
}, r = (l) => {
|
|
39
|
+
try {
|
|
40
|
+
u(t.throw(l));
|
|
41
|
+
} catch (s) {
|
|
42
|
+
n(s);
|
|
43
|
+
}
|
|
44
|
+
}, u = (l) => l.done ? o(l.value) : Promise.resolve(l.value).then(i, r);
|
|
45
|
+
u((t = t.apply(a, e)).next());
|
|
46
|
+
}), Cn = "hCaptcha-script", la = "hCaptchaOnLoad", Qa = "script-error", G = "@hCaptcha/loader";
|
|
47
|
+
function Sn(a) {
|
|
48
|
+
return Object.entries(a).filter(([, e]) => e || e === !1).map(([e, t]) => `${encodeURIComponent(e)}=${encodeURIComponent(String(t))}`).join("&");
|
|
49
|
+
}
|
|
50
|
+
function Ee(a) {
|
|
51
|
+
let e = a && a.ownerDocument || document, t = e.defaultView || e.parentWindow || window;
|
|
52
|
+
return { document: e, window: t };
|
|
53
|
+
}
|
|
54
|
+
function Re(a) {
|
|
55
|
+
return a || document.head;
|
|
56
|
+
}
|
|
57
|
+
function Tn(a) {
|
|
58
|
+
var e;
|
|
59
|
+
a.setTag("source", G), a.setTag("url", document.URL), a.setContext("os", { UA: navigator.userAgent }), a.setContext("browser", L({}, An())), a.setContext("device", je(L({}, qn()), { screen_width_pixels: screen.width, screen_height_pixels: screen.height, language: navigator.language, orientation: ((e = screen.orientation) == null ? void 0 : e.type) || "Unknown", processor_count: navigator.hardwareConcurrency, platform: navigator.platform }));
|
|
60
|
+
}
|
|
61
|
+
function An() {
|
|
62
|
+
var a, e, t, o, n, i;
|
|
63
|
+
let r = navigator.userAgent, u, l;
|
|
64
|
+
return r.indexOf("Firefox") !== -1 ? (u = "Firefox", l = (a = r.match(/Firefox\/([\d.]+)/)) == null ? void 0 : a[1]) : r.indexOf("Edg") !== -1 ? (u = "Microsoft Edge", l = (e = r.match(/Edg\/([\d.]+)/)) == null ? void 0 : e[1]) : r.indexOf("Chrome") !== -1 && r.indexOf("Safari") !== -1 ? (u = "Chrome", l = (t = r.match(/Chrome\/([\d.]+)/)) == null ? void 0 : t[1]) : r.indexOf("Safari") !== -1 && r.indexOf("Chrome") === -1 ? (u = "Safari", l = (o = r.match(/Version\/([\d.]+)/)) == null ? void 0 : o[1]) : r.indexOf("Opera") !== -1 || r.indexOf("OPR") !== -1 ? (u = "Opera", l = (n = r.match(/(Opera|OPR)\/([\d.]+)/)) == null ? void 0 : n[2]) : r.indexOf("MSIE") !== -1 || r.indexOf("Trident") !== -1 ? (u = "Internet Explorer", l = (i = r.match(/(MSIE |rv:)([\d.]+)/)) == null ? void 0 : i[2]) : (u = "Unknown", l = "Unknown"), { name: u, version: l };
|
|
65
|
+
}
|
|
66
|
+
function qn() {
|
|
67
|
+
let a = navigator.userAgent, e;
|
|
68
|
+
a.indexOf("Win") !== -1 ? e = "Windows" : a.indexOf("Mac") !== -1 ? e = "Mac" : a.indexOf("Linux") !== -1 ? e = "Linux" : a.indexOf("Android") !== -1 ? e = "Android" : a.indexOf("like Mac") !== -1 || a.indexOf("iPhone") !== -1 || a.indexOf("iPad") !== -1 ? e = "iOS" : e = "Unknown";
|
|
69
|
+
let t;
|
|
70
|
+
return /Mobile|iPhone|iPod|Android/i.test(a) ? t = "Mobile" : /Tablet|iPad/i.test(a) ? t = "Tablet" : t = "Desktop", { model: e, family: e, device: t };
|
|
71
|
+
}
|
|
72
|
+
var Pn = class _e {
|
|
73
|
+
constructor(e) {
|
|
74
|
+
C(this, "_parent"), C(this, "breadcrumbs", []), C(this, "context", {}), C(this, "extra", {}), C(this, "tags", {}), C(this, "request"), C(this, "user"), this._parent = e;
|
|
75
|
+
}
|
|
76
|
+
get parent() {
|
|
77
|
+
return this._parent;
|
|
78
|
+
}
|
|
79
|
+
child() {
|
|
80
|
+
return new _e(this);
|
|
81
|
+
}
|
|
82
|
+
setRequest(e) {
|
|
83
|
+
return this.request = e, this;
|
|
84
|
+
}
|
|
85
|
+
removeRequest() {
|
|
86
|
+
return this.request = void 0, this;
|
|
87
|
+
}
|
|
88
|
+
addBreadcrumb(e) {
|
|
89
|
+
return typeof e.timestamp > "u" && (e.timestamp = (/* @__PURE__ */ new Date()).toISOString()), this.breadcrumbs.push(e), this;
|
|
90
|
+
}
|
|
91
|
+
setExtra(e, t) {
|
|
92
|
+
return this.extra[e] = t, this;
|
|
93
|
+
}
|
|
94
|
+
removeExtra(e) {
|
|
95
|
+
return delete this.extra[e], this;
|
|
96
|
+
}
|
|
97
|
+
setContext(e, t) {
|
|
98
|
+
return typeof t.type > "u" && (t.type = e), this.context[e] = t, this;
|
|
99
|
+
}
|
|
100
|
+
removeContext(e) {
|
|
101
|
+
return delete this.context[e], this;
|
|
102
|
+
}
|
|
103
|
+
setTags(e) {
|
|
104
|
+
return this.tags = L(L({}, this.tags), e), this;
|
|
105
|
+
}
|
|
106
|
+
setTag(e, t) {
|
|
107
|
+
return this.tags[e] = t, this;
|
|
108
|
+
}
|
|
109
|
+
removeTag(e) {
|
|
110
|
+
return delete this.tags[e], this;
|
|
111
|
+
}
|
|
112
|
+
setUser(e) {
|
|
113
|
+
return this.user = e, this;
|
|
114
|
+
}
|
|
115
|
+
removeUser() {
|
|
116
|
+
return this.user = void 0, this;
|
|
117
|
+
}
|
|
118
|
+
toBody() {
|
|
119
|
+
let e = [], t = this;
|
|
120
|
+
for (; t; ) e.push(t), t = t.parent;
|
|
121
|
+
return e.reverse().reduce((o, n) => {
|
|
122
|
+
var i;
|
|
123
|
+
return o.breadcrumbs = [...(i = o.breadcrumbs) != null ? i : [], ...n.breadcrumbs], o.extra = L(L({}, o.extra), n.extra), o.contexts = L(L({}, o.contexts), n.context), o.tags = L(L({}, o.tags), n.tags), n.user && (o.user = n.user), n.request && (o.request = n.request), o;
|
|
124
|
+
}, { breadcrumbs: [], extra: {}, contexts: {}, tags: {}, request: void 0, user: void 0 });
|
|
125
|
+
}
|
|
126
|
+
clear() {
|
|
127
|
+
this.breadcrumbs = [], this.context = {}, this.tags = {}, this.user = void 0;
|
|
128
|
+
}
|
|
129
|
+
}, Nn = /^\s*at (?:(.*?) ?\()?((?:file|https?|blob|chrome-extension|address|native|eval|webpack|<anonymous>|[-a-z]+:|.*bundle|\/).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i, Dn = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:file|https?|blob|chrome|webpack|resource|moz-extension).*?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js))(?::(\d+))?(?::(\d+))?\s*$/i, Ln = /^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i, Un = /^(?:(\w+):)\/\/(?:(\w+)(?::(\w+))?@)([\w.-]+)(?::(\d+))?\/(.+)/, sa = "?", Za = "An unknown error occurred", Mn = "0.0.4";
|
|
130
|
+
function Fn(a) {
|
|
131
|
+
for (let e = 0; e < a.length; e++) a[e] = Math.floor(Math.random() * 256);
|
|
132
|
+
return a;
|
|
133
|
+
}
|
|
134
|
+
function q(a) {
|
|
135
|
+
return (a + 256).toString(16).substring(1);
|
|
136
|
+
}
|
|
137
|
+
function Kn() {
|
|
138
|
+
let a = Fn(new Array(16));
|
|
139
|
+
return a[6] = a[6] & 15 | 64, a[8] = a[8] & 63 | 128, q(a[0]) + q(a[1]) + q(a[2]) + q(a[3]) + "-" + q(a[4]) + q(a[5]) + "-" + q(a[6]) + q(a[7]) + "-" + q(a[8]) + q(a[9]) + "-" + q(a[10]) + q(a[11]) + q(a[12]) + q(a[13]) + q(a[14]) + q(a[15]);
|
|
140
|
+
}
|
|
141
|
+
var $n = [[Nn, "chrome"], [Ln, "winjs"], [Dn, "gecko"]];
|
|
142
|
+
function Bn(a) {
|
|
143
|
+
var e, t, o, n;
|
|
144
|
+
if (!a.stack) return null;
|
|
145
|
+
let i = [], r = (o = (t = (e = a.stack).split) == null ? void 0 : t.call(e, `
|
|
146
|
+
`)) != null ? o : [];
|
|
147
|
+
for (let u = 0; u < r.length; ++u) {
|
|
148
|
+
let l = null, s = null, c = null;
|
|
149
|
+
for (let [d, p] of $n) if (s = d.exec(r[u]), s) {
|
|
150
|
+
c = p;
|
|
151
|
+
break;
|
|
152
|
+
}
|
|
153
|
+
if (!(!s || !c)) {
|
|
154
|
+
if (c === "chrome") l = { filename: (n = s[2]) != null && n.startsWith("address at ") ? s[2].substring(11) : s[2], function: s[1] || sa, lineno: s[3] ? +s[3] : null, colno: s[4] ? +s[4] : null };
|
|
155
|
+
else if (c === "winjs") l = { filename: s[2], function: s[1] || sa, lineno: +s[3], colno: s[4] ? +s[4] : null };
|
|
156
|
+
else if (c === "gecko") u === 0 && !s[5] && a.columnNumber !== void 0 && i.length > 0 && (i[0].column = a.columnNumber + 1), l = { filename: s[3], function: s[1] || sa, lineno: s[4] ? +s[4] : null, colno: s[5] ? +s[5] : null };
|
|
157
|
+
else continue;
|
|
158
|
+
!l.function && l.lineno && (l.function = sa), i.push(l);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return i.length ? i.reverse() : null;
|
|
162
|
+
}
|
|
163
|
+
function Gn(a) {
|
|
164
|
+
let e = Bn(a);
|
|
165
|
+
return { type: a.name, value: a.message, stacktrace: { frames: e ?? [] } };
|
|
166
|
+
}
|
|
167
|
+
function Vn(a) {
|
|
168
|
+
let e = Un.exec(a), t = e ? e.slice(1) : [];
|
|
169
|
+
if (t.length !== 6) throw new Error("Invalid DSN");
|
|
170
|
+
let o = t[5].split("/"), n = o.slice(0, -1).join("/");
|
|
171
|
+
return t[0] + "://" + t[3] + (t[4] ? ":" + t[4] : "") + (n ? "/" + n : "") + "/api/" + o.pop() + "/envelope/?sentry_version=7&sentry_key=" + t[1] + (t[2] ? "&sentry_secret=" + t[2] : "");
|
|
172
|
+
}
|
|
173
|
+
function Hn(a, e, t) {
|
|
174
|
+
var o, n;
|
|
175
|
+
let i = L({ event_id: Kn().replaceAll("-", ""), platform: "javascript", sdk: { name: "@hcaptcha/sentry", version: Mn }, environment: e, release: t, timestamp: Date.now() / 1e3 }, a.scope.toBody());
|
|
176
|
+
if (a.type === "exception") {
|
|
177
|
+
i.message = (n = (o = a.error) == null ? void 0 : o.message) != null ? n : "Unknown error", i.fingerprint = [i.message];
|
|
178
|
+
let r = [], u = a.error;
|
|
179
|
+
for (let l = 0; l < 5 && u && (r.push(Gn(u)), !(!u.cause || !(u.cause instanceof Error))); l++) u = u.cause;
|
|
180
|
+
i.exception = { values: r.reverse() };
|
|
181
|
+
}
|
|
182
|
+
return a.type === "message" && (i.message = a.message, i.level = a.level), i;
|
|
183
|
+
}
|
|
184
|
+
function Wn(a) {
|
|
185
|
+
if (a instanceof Error) return a;
|
|
186
|
+
if (typeof a == "string") return new Error(a);
|
|
187
|
+
if (typeof a == "object" && a !== null && !Array.isArray(a)) {
|
|
188
|
+
let t = a, { message: o } = t, n = On(t, ["message"]), i = new Error(typeof o == "string" ? o : Za);
|
|
189
|
+
return Object.assign(i, n);
|
|
190
|
+
}
|
|
191
|
+
let e = new Error(Za);
|
|
192
|
+
return Object.assign(e, { cause: a });
|
|
193
|
+
}
|
|
194
|
+
function Yn(a, e, t) {
|
|
195
|
+
return J(this, null, function* () {
|
|
196
|
+
var o, n;
|
|
197
|
+
try {
|
|
198
|
+
if (typeof fetch < "u" && typeof AbortSignal < "u") {
|
|
199
|
+
let i;
|
|
200
|
+
if (t) {
|
|
201
|
+
let l = new AbortController();
|
|
202
|
+
i = l.signal, setTimeout(() => l.abort(), t);
|
|
203
|
+
}
|
|
204
|
+
let r = yield fetch(a, je(L({}, e), { signal: i })), u = yield r.text();
|
|
205
|
+
return { status: r.status, body: u };
|
|
206
|
+
}
|
|
207
|
+
return yield new Promise((i, r) => {
|
|
208
|
+
var u, l;
|
|
209
|
+
let s = new XMLHttpRequest();
|
|
210
|
+
if (s.open((u = e == null ? void 0 : e.method) != null ? u : "GET", a), s.onload = () => i({ status: s.status, body: s.responseText }), s.onerror = () => r(new Error("XHR Network Error")), e == null ? void 0 : e.headers) for (let [c, d] of Object.entries(e.headers)) s.setRequestHeader(c, d);
|
|
211
|
+
if (t) {
|
|
212
|
+
let c = setTimeout(() => {
|
|
213
|
+
s.abort(), r(new Error("Request timed out"));
|
|
214
|
+
}, t);
|
|
215
|
+
s.onloadend = () => {
|
|
216
|
+
clearTimeout(c);
|
|
217
|
+
};
|
|
218
|
+
}
|
|
219
|
+
s.send((l = e == null ? void 0 : e.body) == null ? void 0 : l.toString());
|
|
220
|
+
});
|
|
221
|
+
} catch (i) {
|
|
222
|
+
return { status: 0, body: (n = (o = i == null ? void 0 : i.toString) == null ? void 0 : o.call(i)) != null ? n : "Unknown error" };
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
var N, za = (N = class {
|
|
227
|
+
constructor(a) {
|
|
228
|
+
C(this, "apiURL"), C(this, "dsn"), C(this, "environment"), C(this, "release"), C(this, "sampleRate"), C(this, "debug"), C(this, "_scope"), C(this, "shouldBuffer", !1), C(this, "bufferlimit", 20), C(this, "buffer", []);
|
|
229
|
+
var e, t, o, n, i;
|
|
230
|
+
this.environment = a.environment, this.release = a.release, this.sampleRate = (e = a.sampleRate) != null ? e : 1, this.debug = (t = a.debug) != null ? t : !1, this._scope = (o = a.scope) != null ? o : new Pn(), this.apiURL = Vn(a.dsn), this.dsn = a.dsn, this.shouldBuffer = (n = a.buffer) != null ? n : !1, this.bufferlimit = (i = a.bufferLimit) != null ? i : 20;
|
|
231
|
+
}
|
|
232
|
+
static init(a) {
|
|
233
|
+
N._instance || (N._instance = new N(a));
|
|
234
|
+
}
|
|
235
|
+
static get instance() {
|
|
236
|
+
if (!N._instance) throw new Error("Sentry has not been initialized");
|
|
237
|
+
return N._instance;
|
|
238
|
+
}
|
|
239
|
+
log(...a) {
|
|
240
|
+
this.debug && console.log(...a);
|
|
241
|
+
}
|
|
242
|
+
get scope() {
|
|
243
|
+
return this._scope;
|
|
244
|
+
}
|
|
245
|
+
static get scope() {
|
|
246
|
+
return N.instance.scope;
|
|
247
|
+
}
|
|
248
|
+
withScope(a) {
|
|
249
|
+
let e = this._scope.child();
|
|
250
|
+
a(e);
|
|
251
|
+
}
|
|
252
|
+
static withScope(a) {
|
|
253
|
+
N.instance.withScope(a);
|
|
254
|
+
}
|
|
255
|
+
captureException(a, e) {
|
|
256
|
+
this.captureEvent({ type: "exception", level: "error", error: Wn(a), scope: e ?? this._scope });
|
|
257
|
+
}
|
|
258
|
+
static captureException(a, e) {
|
|
259
|
+
N.instance.captureException(a, e);
|
|
260
|
+
}
|
|
261
|
+
captureMessage(a, e = "info", t) {
|
|
262
|
+
this.captureEvent({ type: "message", level: e, message: a, scope: t ?? this._scope });
|
|
263
|
+
}
|
|
264
|
+
static captureMessage(a, e = "info", t) {
|
|
265
|
+
N.instance.captureMessage(a, e, t);
|
|
266
|
+
}
|
|
267
|
+
captureEvent(a) {
|
|
268
|
+
if (Math.random() >= this.sampleRate) {
|
|
269
|
+
this.log("Dropped event due to sample rate");
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
if (this.shouldBuffer) {
|
|
273
|
+
if (this.buffer.length >= this.bufferlimit) return;
|
|
274
|
+
this.buffer.push(a);
|
|
275
|
+
} else this.sendEvent(a);
|
|
276
|
+
}
|
|
277
|
+
sendEvent(a, e = 5e3) {
|
|
278
|
+
return J(this, null, function* () {
|
|
279
|
+
try {
|
|
280
|
+
this.log("Sending sentry event", a);
|
|
281
|
+
let t = Hn(a, this.environment, this.release), o = { event_id: t.event_id, dsn: this.dsn }, n = { type: "event" }, i = JSON.stringify(o) + `
|
|
282
|
+
` + JSON.stringify(n) + `
|
|
283
|
+
` + JSON.stringify(t), r = yield Yn(this.apiURL, { method: "POST", headers: { "Content-Type": "application/x-sentry-envelope" }, body: i }, e);
|
|
284
|
+
this.log("Sentry response", r.status), r.status !== 200 && (console.log(r.body), console.error("Failed to send event to Sentry", r));
|
|
285
|
+
} catch (t) {
|
|
286
|
+
console.error("Failed to send event", t);
|
|
287
|
+
}
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
flush(a = 5e3) {
|
|
291
|
+
return J(this, null, function* () {
|
|
292
|
+
try {
|
|
293
|
+
this.log("Flushing sentry events", this.buffer.length);
|
|
294
|
+
let e = this.buffer.splice(0, this.buffer.length).map((t) => this.sendEvent(t, a));
|
|
295
|
+
yield Promise.all(e), this.log("Flushed all events");
|
|
296
|
+
} catch (e) {
|
|
297
|
+
console.error("Failed to flush events", e);
|
|
298
|
+
}
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
static flush(a = 5e3) {
|
|
302
|
+
return N.instance.flush(a);
|
|
303
|
+
}
|
|
304
|
+
static reset() {
|
|
305
|
+
N._instance = void 0;
|
|
306
|
+
}
|
|
307
|
+
}, C(N, "_instance"), N), Jn = "https://d233059272824702afc8c43834c4912d@sentry.hcaptcha.com/6", Xn = "2.0.0", Qn = "production";
|
|
308
|
+
function Zn(a = !0) {
|
|
309
|
+
if (!a) return ae();
|
|
310
|
+
za.init({ dsn: Jn, release: Xn, environment: Qn });
|
|
311
|
+
let e = za.scope;
|
|
312
|
+
return Tn(e), ae(e);
|
|
313
|
+
}
|
|
314
|
+
function ae(a = null) {
|
|
315
|
+
return { addBreadcrumb: (e) => {
|
|
316
|
+
a && a.addBreadcrumb(e);
|
|
317
|
+
}, captureRequest: (e) => {
|
|
318
|
+
a && a.setRequest(e);
|
|
319
|
+
}, captureException: (e) => {
|
|
320
|
+
a && za.captureException(e, a);
|
|
321
|
+
} };
|
|
322
|
+
}
|
|
323
|
+
function at({ scriptLocation: a, query: e, loadAsync: t = !0, crossOrigin: o, apihost: n = "https://js.hcaptcha.com", cleanup: i = !0, secureApi: r = !1, scriptSource: u = "" } = {}, l) {
|
|
324
|
+
let s = Re(a), c = Ee(s);
|
|
325
|
+
return new Promise((d, p) => {
|
|
326
|
+
let g = c.document.createElement("script");
|
|
327
|
+
g.id = Cn, u ? g.src = `${u}?onload=${la}` : r ? g.src = `${n}/1/secure-api.js?onload=${la}` : g.src = `${n}/1/api.js?onload=${la}`, g.crossOrigin = o, g.async = t;
|
|
328
|
+
let v = (h, k) => {
|
|
329
|
+
try {
|
|
330
|
+
!r && i && s.removeChild(g), k(h);
|
|
331
|
+
} catch (f) {
|
|
332
|
+
p(f);
|
|
333
|
+
}
|
|
334
|
+
};
|
|
335
|
+
g.onload = (h) => v(h, d), g.onerror = (h) => {
|
|
336
|
+
l && l(g.src), v(h, p);
|
|
337
|
+
}, g.src += e !== "" ? `&${e}` : "", s.appendChild(g);
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
var ca = [];
|
|
341
|
+
function et(a = { cleanup: !0 }, e) {
|
|
342
|
+
try {
|
|
343
|
+
e.addBreadcrumb({ category: G, message: "hCaptcha loader params", data: a });
|
|
344
|
+
let t = Re(a.scriptLocation), o = Ee(t), n = ca.find(({ scope: r }) => r === o.window);
|
|
345
|
+
if (n) return e.addBreadcrumb({ category: G, message: "hCaptcha already loaded" }), n.promise;
|
|
346
|
+
let i = new Promise((r, u) => J(this, null, function* () {
|
|
347
|
+
try {
|
|
348
|
+
o.window[la] = () => {
|
|
349
|
+
e.addBreadcrumb({ category: G, message: "hCaptcha script called onload function" }), r(o.window.hcaptcha);
|
|
350
|
+
};
|
|
351
|
+
let l = Sn({ custom: a.custom, render: a.render, sentry: a.sentry, assethost: a.assethost, imghost: a.imghost, reportapi: a.reportapi, endpoint: a.endpoint, host: a.host, recaptchacompat: a.recaptchacompat, hl: a.hl });
|
|
352
|
+
yield at(L({ query: l }, a), (s) => {
|
|
353
|
+
e.captureRequest({ url: s, method: "GET" });
|
|
354
|
+
}), e.addBreadcrumb({ category: G, message: "hCaptcha loaded", data: n });
|
|
355
|
+
} catch {
|
|
356
|
+
e.addBreadcrumb({ category: G, message: "hCaptcha failed to load" });
|
|
357
|
+
let s = ca.findIndex((c) => c.scope === o.window);
|
|
358
|
+
s !== -1 && ca.splice(s, 1), u(new Error(Qa));
|
|
359
|
+
}
|
|
360
|
+
}));
|
|
361
|
+
return ca.push({ promise: i, scope: o.window }), i;
|
|
362
|
+
} catch (t) {
|
|
363
|
+
return e.captureException(t), Promise.reject(new Error(Qa));
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
function ze(a, e, t = 0) {
|
|
367
|
+
return J(this, null, function* () {
|
|
368
|
+
let o = t < 2 ? "Retry loading hCaptcha Api" : "Exceeded maximum retries";
|
|
369
|
+
try {
|
|
370
|
+
return yield et(a, e);
|
|
371
|
+
} catch (n) {
|
|
372
|
+
return e.addBreadcrumb({ category: G, message: o }), t >= 2 ? (e.captureException(n), Promise.reject(n)) : (t += 1, ze(a, e, t));
|
|
373
|
+
}
|
|
374
|
+
});
|
|
375
|
+
}
|
|
376
|
+
function nt() {
|
|
377
|
+
return J(this, arguments, function* (a = {}) {
|
|
378
|
+
let e = Zn(a.sentry);
|
|
379
|
+
return yield ze(a, e);
|
|
380
|
+
});
|
|
381
|
+
}
|
|
382
|
+
function ee(a) {
|
|
383
|
+
var e = a && a.ownerDocument || document, t = e.defaultView || e.parentWindow || window;
|
|
384
|
+
return {
|
|
385
|
+
document: e,
|
|
386
|
+
window: t
|
|
387
|
+
};
|
|
388
|
+
}
|
|
389
|
+
function ne(a) {
|
|
390
|
+
return a || document.head;
|
|
391
|
+
}
|
|
392
|
+
var tt = /* @__PURE__ */ function(a) {
|
|
393
|
+
Rn(e, a);
|
|
394
|
+
function e(o) {
|
|
395
|
+
var n;
|
|
396
|
+
return n = a.call(this, o) || this, n._hcaptcha = void 0, n.renderCaptcha = n.renderCaptcha.bind(U(n)), n.resetCaptcha = n.resetCaptcha.bind(U(n)), n.removeCaptcha = n.removeCaptcha.bind(U(n)), n.isReady = n.isReady.bind(U(n)), n._onReady = null, n.loadCaptcha = n.loadCaptcha.bind(U(n)), n.handleOnLoad = n.handleOnLoad.bind(U(n)), n.handleSubmit = n.handleSubmit.bind(U(n)), n.handleExpire = n.handleExpire.bind(U(n)), n.handleError = n.handleError.bind(U(n)), n.handleOpen = n.handleOpen.bind(U(n)), n.handleClose = n.handleClose.bind(U(n)), n.handleChallengeExpired = n.handleChallengeExpired.bind(U(n)), n.ref = /* @__PURE__ */ vn(), n.apiScriptRequested = !1, n.sentryHub = null, n.captchaId = "", n.state = {
|
|
397
|
+
isApiReady: !1,
|
|
398
|
+
isRemoved: !1,
|
|
399
|
+
elementId: o.id
|
|
400
|
+
}, n;
|
|
401
|
+
}
|
|
402
|
+
var t = e.prototype;
|
|
403
|
+
return t.componentDidMount = function() {
|
|
404
|
+
var n = this, i = ne(this.props.scriptLocation), r = ee(i);
|
|
405
|
+
this._hcaptcha = r.window.hcaptcha || void 0;
|
|
406
|
+
var u = typeof this._hcaptcha < "u";
|
|
407
|
+
if (u) {
|
|
408
|
+
this.setState({
|
|
409
|
+
isApiReady: !0
|
|
410
|
+
}, function() {
|
|
411
|
+
n.renderCaptcha();
|
|
412
|
+
});
|
|
413
|
+
return;
|
|
414
|
+
}
|
|
415
|
+
this.loadCaptcha();
|
|
416
|
+
}, t.componentWillUnmount = function() {
|
|
417
|
+
var n = this._hcaptcha, i = this.captchaId;
|
|
418
|
+
this.isReady() && (n.reset(i), n.remove(i));
|
|
419
|
+
}, t.shouldComponentUpdate = function(n, i) {
|
|
420
|
+
return !(this.state.isApiReady !== i.isApiReady || this.state.isRemoved !== i.isRemoved);
|
|
421
|
+
}, t.componentDidUpdate = function(n) {
|
|
422
|
+
var i = this, r = ["sitekey", "size", "theme", "tabindex", "languageOverride", "endpoint"], u = r.every(function(l) {
|
|
423
|
+
return n[l] === i.props[l];
|
|
424
|
+
});
|
|
425
|
+
u || this.removeCaptcha(function() {
|
|
426
|
+
i.renderCaptcha();
|
|
427
|
+
});
|
|
428
|
+
}, t.loadCaptcha = function() {
|
|
429
|
+
if (!this.apiScriptRequested) {
|
|
430
|
+
var n = this.props, i = n.apihost, r = n.assethost, u = n.endpoint, l = n.host, s = n.imghost, c = n.languageOverride, d = n.reCaptchaCompat, p = n.reportapi, g = n.sentry, v = n.custom, h = n.loadAsync, k = n.scriptLocation, f = n.scriptSource, x = n.secureApi, b = n.cleanup, m = b === void 0 ? !0 : b, w = {
|
|
431
|
+
render: "explicit",
|
|
432
|
+
apihost: i,
|
|
433
|
+
assethost: r,
|
|
434
|
+
endpoint: u,
|
|
435
|
+
hl: c,
|
|
436
|
+
host: l,
|
|
437
|
+
imghost: s,
|
|
438
|
+
recaptchacompat: d === !1 ? "off" : null,
|
|
439
|
+
reportapi: p,
|
|
440
|
+
sentry: g,
|
|
441
|
+
custom: v,
|
|
442
|
+
loadAsync: h,
|
|
443
|
+
scriptLocation: k,
|
|
444
|
+
scriptSource: f,
|
|
445
|
+
secureApi: x,
|
|
446
|
+
cleanup: m
|
|
447
|
+
};
|
|
448
|
+
nt(w).then(this.handleOnLoad, this.handleError).catch(this.handleError), this.apiScriptRequested = !0;
|
|
449
|
+
}
|
|
450
|
+
}, t.renderCaptcha = function(n) {
|
|
451
|
+
var i = this, r = this.props.onReady, u = this.state.isApiReady, l = this.captchaId;
|
|
452
|
+
if (!(!u || l)) {
|
|
453
|
+
var s = Object.assign({
|
|
454
|
+
"open-callback": this.handleOpen,
|
|
455
|
+
"close-callback": this.handleClose,
|
|
456
|
+
"error-callback": this.handleError,
|
|
457
|
+
"chalexpired-callback": this.handleChallengeExpired,
|
|
458
|
+
"expired-callback": this.handleExpire,
|
|
459
|
+
callback: this.handleSubmit
|
|
460
|
+
}, this.props, {
|
|
461
|
+
hl: this.props.hl || this.props.languageOverride,
|
|
462
|
+
languageOverride: void 0
|
|
463
|
+
}), c = this._hcaptcha, d = c.render(this.ref.current, s);
|
|
464
|
+
this.captchaId = d, this.setState({
|
|
465
|
+
isRemoved: !1
|
|
466
|
+
}, function() {
|
|
467
|
+
n && n(), r && r(), i._onReady && i._onReady(d);
|
|
468
|
+
});
|
|
469
|
+
}
|
|
470
|
+
}, t.resetCaptcha = function() {
|
|
471
|
+
var n = this._hcaptcha, i = this.captchaId;
|
|
472
|
+
this.isReady() && n.reset(i);
|
|
473
|
+
}, t.removeCaptcha = function(n) {
|
|
474
|
+
var i = this, r = this._hcaptcha, u = this.captchaId;
|
|
475
|
+
this.isReady() && this.setState({
|
|
476
|
+
isRemoved: !0
|
|
477
|
+
}, function() {
|
|
478
|
+
i.captchaId = "", r.remove(u), n && n();
|
|
479
|
+
});
|
|
480
|
+
}, t.handleOnLoad = function() {
|
|
481
|
+
var n = this;
|
|
482
|
+
this.setState({
|
|
483
|
+
isApiReady: !0
|
|
484
|
+
}, function() {
|
|
485
|
+
var i = ne(n.props.scriptLocation), r = ee(i);
|
|
486
|
+
n._hcaptcha = r.window.hcaptcha, n.renderCaptcha(function() {
|
|
487
|
+
var u = n.props.onLoad;
|
|
488
|
+
u && u();
|
|
489
|
+
});
|
|
490
|
+
});
|
|
491
|
+
}, t.handleSubmit = function(n) {
|
|
492
|
+
var i = this.props.onVerify, r = this.state.isRemoved, u = this._hcaptcha, l = this.captchaId;
|
|
493
|
+
if (!(typeof u > "u" || r)) {
|
|
494
|
+
var s = u.getResponse(l), c = u.getRespKey(l);
|
|
495
|
+
i && i(s, c);
|
|
496
|
+
}
|
|
497
|
+
}, t.handleExpire = function() {
|
|
498
|
+
var n = this.props.onExpire, i = this._hcaptcha, r = this.captchaId;
|
|
499
|
+
this.isReady() && (i.reset(r), n && n());
|
|
500
|
+
}, t.handleError = function(n) {
|
|
501
|
+
var i = this.props.onError, r = this._hcaptcha, u = this.captchaId;
|
|
502
|
+
this.isReady() && r.reset(u), i && i(n);
|
|
503
|
+
}, t.isReady = function() {
|
|
504
|
+
var n = this.state, i = n.isApiReady, r = n.isRemoved;
|
|
505
|
+
return i && !r;
|
|
506
|
+
}, t.handleOpen = function() {
|
|
507
|
+
!this.isReady() || !this.props.onOpen || this.props.onOpen();
|
|
508
|
+
}, t.handleClose = function() {
|
|
509
|
+
!this.isReady() || !this.props.onClose || this.props.onClose();
|
|
510
|
+
}, t.handleChallengeExpired = function() {
|
|
511
|
+
!this.isReady() || !this.props.onChalExpired || this.props.onChalExpired();
|
|
512
|
+
}, t.execute = function(n) {
|
|
513
|
+
var i = this;
|
|
514
|
+
n === void 0 && (n = null), n = typeof n == "object" ? n : null;
|
|
515
|
+
try {
|
|
516
|
+
var r = this._hcaptcha, u = this.captchaId;
|
|
517
|
+
if (!this.isReady()) {
|
|
518
|
+
var l, s = new Promise(function(c, d) {
|
|
519
|
+
i._onReady = function(p) {
|
|
520
|
+
try {
|
|
521
|
+
var g = i._hcaptcha;
|
|
522
|
+
n && n.async ? g.execute(p, n).then(c).catch(d) : c(g.execute(p, n));
|
|
523
|
+
} catch (v) {
|
|
524
|
+
d(v);
|
|
525
|
+
}
|
|
526
|
+
};
|
|
527
|
+
});
|
|
528
|
+
return (l = n) != null && l.async ? s : null;
|
|
529
|
+
}
|
|
530
|
+
return r.execute(u, n);
|
|
531
|
+
} catch (c) {
|
|
532
|
+
return n && n.async ? Promise.reject(c) : null;
|
|
533
|
+
}
|
|
534
|
+
}, t.close = function() {
|
|
535
|
+
var n = this._hcaptcha, i = this.captchaId;
|
|
536
|
+
if (this.isReady())
|
|
537
|
+
return n.close(i);
|
|
538
|
+
}, t.setData = function(n) {
|
|
539
|
+
var i = this._hcaptcha, r = this.captchaId;
|
|
540
|
+
this.isReady() && (n && typeof n != "object" && (n = null), i.setData(r, n));
|
|
541
|
+
}, t.getResponse = function() {
|
|
542
|
+
var n = this._hcaptcha;
|
|
543
|
+
return n.getResponse(this.captchaId);
|
|
544
|
+
}, t.getRespKey = function() {
|
|
545
|
+
var n = this._hcaptcha;
|
|
546
|
+
return n.getRespKey(this.captchaId);
|
|
547
|
+
}, t.render = function() {
|
|
548
|
+
var n = this.state.elementId;
|
|
549
|
+
return /* @__PURE__ */ bn("div", {
|
|
550
|
+
ref: this.ref,
|
|
551
|
+
id: n
|
|
552
|
+
});
|
|
553
|
+
}, e;
|
|
554
|
+
}(ye), ma = function() {
|
|
555
|
+
return ma = Object.assign || function(e) {
|
|
556
|
+
for (var t, o = 1, n = arguments.length; o < n; o++) {
|
|
557
|
+
t = arguments[o];
|
|
558
|
+
for (var i in t) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);
|
|
559
|
+
}
|
|
560
|
+
return e;
|
|
561
|
+
}, ma.apply(this, arguments);
|
|
562
|
+
};
|
|
563
|
+
function ot(a, e) {
|
|
564
|
+
var t = {};
|
|
565
|
+
for (var o in a) Object.prototype.hasOwnProperty.call(a, o) && e.indexOf(o) < 0 && (t[o] = a[o]);
|
|
566
|
+
if (a != null && typeof Object.getOwnPropertySymbols == "function")
|
|
567
|
+
for (var n = 0, o = Object.getOwnPropertySymbols(a); n < o.length; n++)
|
|
568
|
+
e.indexOf(o[n]) < 0 && Object.prototype.propertyIsEnumerable.call(a, o[n]) && (t[o[n]] = a[o[n]]);
|
|
569
|
+
return t;
|
|
570
|
+
}
|
|
571
|
+
function K(a, e, t, o) {
|
|
572
|
+
function n(i) {
|
|
573
|
+
return i instanceof t ? i : new t(function(r) {
|
|
574
|
+
r(i);
|
|
575
|
+
});
|
|
576
|
+
}
|
|
577
|
+
return new (t || (t = Promise))(function(i, r) {
|
|
578
|
+
function u(c) {
|
|
579
|
+
try {
|
|
580
|
+
s(o.next(c));
|
|
581
|
+
} catch (d) {
|
|
582
|
+
r(d);
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
function l(c) {
|
|
586
|
+
try {
|
|
587
|
+
s(o.throw(c));
|
|
588
|
+
} catch (d) {
|
|
589
|
+
r(d);
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
function s(c) {
|
|
593
|
+
c.done ? i(c.value) : n(c.value).then(u, l);
|
|
594
|
+
}
|
|
595
|
+
s((o = o.apply(a, e || [])).next());
|
|
596
|
+
});
|
|
597
|
+
}
|
|
598
|
+
function it(a, e, t) {
|
|
599
|
+
if (t || arguments.length === 2) for (var o = 0, n = e.length, i; o < n; o++)
|
|
600
|
+
(i || !(o in e)) && (i || (i = Array.prototype.slice.call(e, 0, o)), i[o] = e[o]);
|
|
601
|
+
return a.concat(i || Array.prototype.slice.call(e));
|
|
602
|
+
}
|
|
603
|
+
function rt(a, e) {
|
|
604
|
+
return function(t, o) {
|
|
605
|
+
return Object.prototype.hasOwnProperty.call(t, o);
|
|
606
|
+
}(a, e) ? a[e] : void 0;
|
|
607
|
+
}
|
|
608
|
+
function st(a, e, t, o) {
|
|
609
|
+
var n, i = document, r = "securitypolicyviolation", u = function(s) {
|
|
610
|
+
var c = new URL(a, location.href), d = s.blockedURI;
|
|
611
|
+
d !== c.href && d !== c.protocol.slice(0, -1) && d !== c.origin || (n = s, l());
|
|
612
|
+
};
|
|
613
|
+
i.addEventListener(r, u);
|
|
614
|
+
var l = function() {
|
|
615
|
+
return i.removeEventListener(r, u);
|
|
616
|
+
};
|
|
617
|
+
return Promise.resolve().then(e).then(function(s) {
|
|
618
|
+
return l(), s;
|
|
619
|
+
}, function(s) {
|
|
620
|
+
return new Promise(function(c) {
|
|
621
|
+
var d = new MessageChannel();
|
|
622
|
+
d.port1.onmessage = function() {
|
|
623
|
+
return c();
|
|
624
|
+
}, d.port2.postMessage(null);
|
|
625
|
+
}).then(function() {
|
|
626
|
+
if (l(), n) return t(n);
|
|
627
|
+
throw s;
|
|
628
|
+
});
|
|
629
|
+
});
|
|
630
|
+
}
|
|
631
|
+
var Ie = { default: "endpoint" }, Oe = { default: "tlsEndpoint" }, Ce = "Client timeout", Se = "Network connection error", Te = "Network request aborted", Ae = "Response cannot be parsed", pa = "Blocked by CSP", ga = "The endpoint parameter is not a valid URL";
|
|
632
|
+
function $(a) {
|
|
633
|
+
for (var e = "", t = 0; t < a.length; ++t) if (t > 0) {
|
|
634
|
+
var o = a[t].toLowerCase();
|
|
635
|
+
o !== a[t] ? e += " ".concat(o) : e += a[t];
|
|
636
|
+
} else e += a[t].toUpperCase();
|
|
637
|
+
return e;
|
|
638
|
+
}
|
|
639
|
+
var qe = /* @__PURE__ */ $("WrongRegion"), Pe = /* @__PURE__ */ $("SubscriptionNotActive"), Ne = /* @__PURE__ */ $("UnsupportedVersion"), De = /* @__PURE__ */ $("InstallationMethodRestricted"), Le = /* @__PURE__ */ $("HostnameRestricted"), Ue = /* @__PURE__ */ $("IntegrationFailed"), Me = /* @__PURE__ */ $("NetworkRestricted"), Fe = /* @__PURE__ */ $("InvalidProxyIntegrationSecret"), Ke = /* @__PURE__ */ $("InvalidProxyIntegrationHeaders"), ka = "API key required", Ta = "API key not found", Aa = "API key expired", $e = "Request cannot be parsed", Be = "Request failed", Ge = "Request failed to process", Ve = "Too many requests, rate limit exceeded", He = "Not available for this origin", We = "Not available with restricted header", Ye = ka, Je = Ta, Xe = Aa, ct = "3.11.10", ea = "Failed to load the JS script of the agent", qa = "9319";
|
|
640
|
+
function ut(a, e) {
|
|
641
|
+
var t, o, n, i, r, u, l, s = [], c = (t = function(v) {
|
|
642
|
+
var h = it([], v, !0);
|
|
643
|
+
return { current: function() {
|
|
644
|
+
return h[0];
|
|
645
|
+
}, postpone: function() {
|
|
646
|
+
var k = h.shift();
|
|
647
|
+
k !== void 0 && h.push(k);
|
|
648
|
+
}, exclude: function() {
|
|
649
|
+
h.shift();
|
|
650
|
+
} };
|
|
651
|
+
}(a), i = 100, r = 3e3, u = 0, o = function() {
|
|
652
|
+
return Math.random() * Math.min(r, i * Math.pow(2, u++));
|
|
653
|
+
}, n = /* @__PURE__ */ new Set(), [t.current(), function(v, h) {
|
|
654
|
+
var k, f = h instanceof Error ? h.message : "";
|
|
655
|
+
if (f === pa || f === ga) t.exclude(), k = 0;
|
|
656
|
+
else if (f === qa) t.exclude();
|
|
657
|
+
else if (f === ea) {
|
|
658
|
+
var x = Date.now() - v.getTime() < 50, b = t.current();
|
|
659
|
+
b && x && !n.has(b) && (n.add(b), k = 0), t.postpone();
|
|
660
|
+
} else t.postpone();
|
|
661
|
+
var m = t.current();
|
|
662
|
+
return m === void 0 ? void 0 : [m, k ?? v.getTime() + o() - Date.now()];
|
|
663
|
+
}]), d = c[0], p = c[1];
|
|
664
|
+
if (d === void 0) return Promise.reject(new TypeError("The list of script URL patterns is empty"));
|
|
665
|
+
var g = function(v) {
|
|
666
|
+
var h = /* @__PURE__ */ new Date(), k = function(x) {
|
|
667
|
+
return s.push({ url: v, startedAt: h, finishedAt: /* @__PURE__ */ new Date(), error: x });
|
|
668
|
+
}, f = e(v);
|
|
669
|
+
return f.then(function() {
|
|
670
|
+
return k();
|
|
671
|
+
}, k), f.catch(function(x) {
|
|
672
|
+
if (l != null || (l = x), s.length >= 5) throw l;
|
|
673
|
+
var b = p(h, x);
|
|
674
|
+
if (!b) throw l;
|
|
675
|
+
var m, w = b[0], j = b[1];
|
|
676
|
+
return (m = j, new Promise(function(R) {
|
|
677
|
+
return setTimeout(R, m);
|
|
678
|
+
})).then(function() {
|
|
679
|
+
return g(w);
|
|
680
|
+
});
|
|
681
|
+
});
|
|
682
|
+
};
|
|
683
|
+
return g(d).then(function(v) {
|
|
684
|
+
return [v, s];
|
|
685
|
+
});
|
|
686
|
+
}
|
|
687
|
+
var Qe = "https://fpnpmcdn.net/v<version>/<apiKey>/loader_v<loaderVersion>.js", Ze = Qe;
|
|
688
|
+
function an(a) {
|
|
689
|
+
var e;
|
|
690
|
+
a.scriptUrlPattern;
|
|
691
|
+
var t = a.token, o = a.apiKey, n = o === void 0 ? t : o, i = ot(a, ["scriptUrlPattern", "token", "apiKey"]), r = (e = rt(a, "scriptUrlPattern")) !== null && e !== void 0 ? e : Qe, u = function() {
|
|
692
|
+
var c = [], d = function() {
|
|
693
|
+
c.push({ time: /* @__PURE__ */ new Date(), state: document.visibilityState });
|
|
694
|
+
}, p = function(g, v, h, k) {
|
|
695
|
+
return g.addEventListener(v, h, k), function() {
|
|
696
|
+
return g.removeEventListener(v, h, k);
|
|
697
|
+
};
|
|
698
|
+
}(document, "visibilitychange", d);
|
|
699
|
+
return d(), [c, p];
|
|
700
|
+
}(), l = u[0], s = u[1];
|
|
701
|
+
return Promise.resolve().then(function() {
|
|
702
|
+
if (!n || typeof n != "string") throw new Error(ka);
|
|
703
|
+
var c = function(d, p) {
|
|
704
|
+
return (Array.isArray(d) ? d : [d]).map(function(g) {
|
|
705
|
+
return function(v, h) {
|
|
706
|
+
var k = encodeURIComponent;
|
|
707
|
+
return v.replace(/<[^<>]+>/g, function(f) {
|
|
708
|
+
return f === "<version>" ? "3" : f === "<apiKey>" ? k(h) : f === "<loaderVersion>" ? k(ct) : f;
|
|
709
|
+
});
|
|
710
|
+
}(String(g), p);
|
|
711
|
+
});
|
|
712
|
+
}(r, n);
|
|
713
|
+
return ut(c, lt);
|
|
714
|
+
}).catch(function(c) {
|
|
715
|
+
throw s(), function(d) {
|
|
716
|
+
return d instanceof Error && d.message === qa ? new Error(ea) : d;
|
|
717
|
+
}(c);
|
|
718
|
+
}).then(function(c) {
|
|
719
|
+
var d = c[0], p = c[1];
|
|
720
|
+
return s(), d.load(ma(ma({}, i), { ldi: { attempts: p, visibilityStates: l } }));
|
|
721
|
+
});
|
|
722
|
+
}
|
|
723
|
+
function lt(a) {
|
|
724
|
+
return st(a, function() {
|
|
725
|
+
return function(e) {
|
|
726
|
+
return new Promise(function(t, o) {
|
|
727
|
+
if (function(u) {
|
|
728
|
+
if (URL.prototype) try {
|
|
729
|
+
return new URL(u, location.href), !1;
|
|
730
|
+
} catch (l) {
|
|
731
|
+
if (l instanceof Error && l.name === "TypeError") return !0;
|
|
732
|
+
throw l;
|
|
733
|
+
}
|
|
734
|
+
}(e)) throw new Error(ga);
|
|
735
|
+
var n = document.createElement("script"), i = function() {
|
|
736
|
+
var u;
|
|
737
|
+
return (u = n.parentNode) === null || u === void 0 ? void 0 : u.removeChild(n);
|
|
738
|
+
}, r = document.head || document.getElementsByTagName("head")[0];
|
|
739
|
+
n.onload = function() {
|
|
740
|
+
i(), t();
|
|
741
|
+
}, n.onerror = function() {
|
|
742
|
+
i(), o(new Error(ea));
|
|
743
|
+
}, n.async = !0, n.src = e, r.appendChild(n);
|
|
744
|
+
});
|
|
745
|
+
}(a);
|
|
746
|
+
}, function() {
|
|
747
|
+
throw new Error(pa);
|
|
748
|
+
}).then(dt);
|
|
749
|
+
}
|
|
750
|
+
function dt() {
|
|
751
|
+
var a = window, e = "__fpjs_p_l_b", t = a[e];
|
|
752
|
+
if (function(o, n) {
|
|
753
|
+
var i, r = (i = Object.getOwnPropertyDescriptor) === null || i === void 0 ? void 0 : i.call(Object, o, n);
|
|
754
|
+
r != null && r.configurable ? delete o[n] : r && !r.writable || (o[n] = void 0);
|
|
755
|
+
}(a, e), typeof (t == null ? void 0 : t.load) != "function") throw new Error(qa);
|
|
756
|
+
return t;
|
|
757
|
+
}
|
|
758
|
+
var mt = { load: an, defaultScriptUrlPattern: Ze, ERROR_SCRIPT_LOAD_FAIL: ea, ERROR_API_KEY_EXPIRED: Aa, ERROR_API_KEY_INVALID: Ta, ERROR_API_KEY_MISSING: ka, ERROR_BAD_REQUEST_FORMAT: $e, ERROR_BAD_RESPONSE_FORMAT: Ae, ERROR_CLIENT_TIMEOUT: Ce, ERROR_CSP_BLOCK: pa, ERROR_FORBIDDEN_ENDPOINT: Le, ERROR_FORBIDDEN_HEADER: We, ERROR_FORBIDDEN_ORIGIN: He, ERROR_GENERAL_SERVER_FAILURE: Be, ERROR_INSTALLATION_METHOD_RESTRICTED: De, ERROR_INTEGRATION_FAILURE: Ue, ERROR_INVALID_ENDPOINT: ga, ERROR_INVALID_PROXY_INTEGRATION_HEADERS: Ke, ERROR_INVALID_PROXY_INTEGRATION_SECRET: Fe, ERROR_NETWORK_ABORT: Te, ERROR_NETWORK_CONNECTION: Se, ERROR_NETWORK_RESTRICTED: Me, ERROR_RATE_LIMIT: Ve, ERROR_SERVER_TIMEOUT: Ge, ERROR_SUBSCRIPTION_NOT_ACTIVE: Pe, ERROR_TOKEN_EXPIRED: Xe, ERROR_TOKEN_INVALID: Je, ERROR_TOKEN_MISSING: Ye, ERROR_UNSUPPORTED_VERSION: Ne, ERROR_WRONG_REGION: qe, defaultEndpoint: Ie, defaultTlsEndpoint: Oe };
|
|
759
|
+
const ht = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
760
|
+
__proto__: null,
|
|
761
|
+
ERROR_API_KEY_EXPIRED: Aa,
|
|
762
|
+
ERROR_API_KEY_INVALID: Ta,
|
|
763
|
+
ERROR_API_KEY_MISSING: ka,
|
|
764
|
+
ERROR_BAD_REQUEST_FORMAT: $e,
|
|
765
|
+
ERROR_BAD_RESPONSE_FORMAT: Ae,
|
|
766
|
+
ERROR_CLIENT_TIMEOUT: Ce,
|
|
767
|
+
ERROR_CSP_BLOCK: pa,
|
|
768
|
+
ERROR_FORBIDDEN_ENDPOINT: Le,
|
|
769
|
+
ERROR_FORBIDDEN_HEADER: We,
|
|
770
|
+
ERROR_FORBIDDEN_ORIGIN: He,
|
|
771
|
+
ERROR_GENERAL_SERVER_FAILURE: Be,
|
|
772
|
+
ERROR_INSTALLATION_METHOD_RESTRICTED: De,
|
|
773
|
+
ERROR_INTEGRATION_FAILURE: Ue,
|
|
774
|
+
ERROR_INVALID_ENDPOINT: ga,
|
|
775
|
+
ERROR_INVALID_PROXY_INTEGRATION_HEADERS: Ke,
|
|
776
|
+
ERROR_INVALID_PROXY_INTEGRATION_SECRET: Fe,
|
|
777
|
+
ERROR_NETWORK_ABORT: Te,
|
|
778
|
+
ERROR_NETWORK_CONNECTION: Se,
|
|
779
|
+
ERROR_NETWORK_RESTRICTED: Me,
|
|
780
|
+
ERROR_RATE_LIMIT: Ve,
|
|
781
|
+
ERROR_SCRIPT_LOAD_FAIL: ea,
|
|
782
|
+
ERROR_SERVER_TIMEOUT: Ge,
|
|
783
|
+
ERROR_SUBSCRIPTION_NOT_ACTIVE: Pe,
|
|
784
|
+
ERROR_TOKEN_EXPIRED: Xe,
|
|
785
|
+
ERROR_TOKEN_INVALID: Je,
|
|
786
|
+
ERROR_TOKEN_MISSING: Ye,
|
|
787
|
+
ERROR_UNSUPPORTED_VERSION: Ne,
|
|
788
|
+
ERROR_WRONG_REGION: qe,
|
|
789
|
+
default: mt,
|
|
790
|
+
defaultEndpoint: Ie,
|
|
791
|
+
defaultScriptUrlPattern: Ze,
|
|
792
|
+
defaultTlsEndpoint: Oe,
|
|
793
|
+
load: an
|
|
794
|
+
}, Symbol.toStringTag, { value: "Module" })), en = "@fpjs@client@", pt = 60 * 60 * 24, nn = 60 * 60, gt = () => Date.now();
|
|
795
|
+
class kt {
|
|
796
|
+
constructor(e) {
|
|
797
|
+
var t;
|
|
798
|
+
this.tag = e.tag || null, this.linkedId = e.linkedId || null, this.extendedResult = (t = e.extendedResult) !== null && t !== void 0 ? t : !1;
|
|
799
|
+
}
|
|
800
|
+
/**
|
|
801
|
+
* Converts this `CacheKey` instance into a string for use in a cache
|
|
802
|
+
* @returns A string representation of the key
|
|
803
|
+
*/
|
|
804
|
+
toKey() {
|
|
805
|
+
return `${JSON.stringify(this.tag)}__${JSON.stringify(this.linkedId)}__${this.extendedResult}`;
|
|
806
|
+
}
|
|
807
|
+
}
|
|
808
|
+
function W(a, e) {
|
|
809
|
+
return `${e}__${a}`;
|
|
810
|
+
}
|
|
811
|
+
function tn(a, e) {
|
|
812
|
+
return a.replace(`${e}__`, "");
|
|
813
|
+
}
|
|
814
|
+
class ft {
|
|
815
|
+
constructor(e = en) {
|
|
816
|
+
this.prefix = e;
|
|
817
|
+
}
|
|
818
|
+
set(e, t) {
|
|
819
|
+
window.localStorage.setItem(W(e, this.prefix), JSON.stringify(t));
|
|
820
|
+
}
|
|
821
|
+
get(e) {
|
|
822
|
+
const t = window.localStorage.getItem(W(e, this.prefix));
|
|
823
|
+
if (t)
|
|
824
|
+
try {
|
|
825
|
+
return JSON.parse(t);
|
|
826
|
+
} catch {
|
|
827
|
+
return;
|
|
828
|
+
}
|
|
829
|
+
}
|
|
830
|
+
remove(e) {
|
|
831
|
+
window.localStorage.removeItem(W(e, this.prefix));
|
|
832
|
+
}
|
|
833
|
+
allKeys() {
|
|
834
|
+
return Object.keys(window.localStorage).filter((e) => e.startsWith(this.prefix)).map((e) => tn(e, this.prefix));
|
|
835
|
+
}
|
|
836
|
+
}
|
|
837
|
+
class bt {
|
|
838
|
+
constructor(e = en) {
|
|
839
|
+
this.prefix = e;
|
|
840
|
+
}
|
|
841
|
+
/**
|
|
842
|
+
* It takes a key and an entry, and sets the entry in the session storage with the key
|
|
843
|
+
* @param {string} key - The key to store the entry under.
|
|
844
|
+
* @param {Cacheable} entry - The value to be stored in the cache.
|
|
845
|
+
*/
|
|
846
|
+
set(e, t) {
|
|
847
|
+
window.sessionStorage.setItem(W(e, this.prefix), JSON.stringify(t));
|
|
848
|
+
}
|
|
849
|
+
/**
|
|
850
|
+
* It gets the value of the key from the session storage, parses it as JSON, and returns it
|
|
851
|
+
* @param {string} key - The key to store the data under.
|
|
852
|
+
* @returns The value of the key in the sessionStorage.
|
|
853
|
+
*/
|
|
854
|
+
get(e) {
|
|
855
|
+
const t = window.sessionStorage.getItem(W(e, this.prefix));
|
|
856
|
+
if (t)
|
|
857
|
+
try {
|
|
858
|
+
return JSON.parse(t);
|
|
859
|
+
} catch {
|
|
860
|
+
return;
|
|
861
|
+
}
|
|
862
|
+
}
|
|
863
|
+
/**
|
|
864
|
+
* It removes the item from session storage with the given key
|
|
865
|
+
* @param {string} key - The key to store the value under.
|
|
866
|
+
*/
|
|
867
|
+
remove(e) {
|
|
868
|
+
window.sessionStorage.removeItem(W(e, this.prefix));
|
|
869
|
+
}
|
|
870
|
+
/**
|
|
871
|
+
* It returns an array of all the keys in the session storage that start with the prefix
|
|
872
|
+
* @returns An array of all the keys in the sessionStorage that start with the prefix.
|
|
873
|
+
*/
|
|
874
|
+
allKeys() {
|
|
875
|
+
return Object.keys(window.sessionStorage).filter((e) => e.startsWith(this.prefix)).map((e) => tn(e, this.prefix));
|
|
876
|
+
}
|
|
877
|
+
}
|
|
878
|
+
class vt {
|
|
879
|
+
constructor(e, t = nn, o) {
|
|
880
|
+
this.cache = e, this.cacheTime = t, this.nowProvider = o || gt;
|
|
881
|
+
}
|
|
882
|
+
/**
|
|
883
|
+
* It gets a cache entry from the cache, and if it's expired, it removes it from the cache
|
|
884
|
+
* @param cacheKey - CacheKey<TExtended>
|
|
885
|
+
* @returns A promise that resolves to a cache entry or undefined.
|
|
886
|
+
*/
|
|
887
|
+
get(e) {
|
|
888
|
+
return K(this, void 0, void 0, function* () {
|
|
889
|
+
const t = yield this.cache.get(e.toKey());
|
|
890
|
+
if (!t)
|
|
891
|
+
return;
|
|
892
|
+
const o = yield this.nowProvider(), n = Math.floor(o / 1e3);
|
|
893
|
+
if (t.expiresAt < n) {
|
|
894
|
+
yield this.cache.remove(e.toKey());
|
|
895
|
+
return;
|
|
896
|
+
}
|
|
897
|
+
return t.body;
|
|
898
|
+
});
|
|
899
|
+
}
|
|
900
|
+
/**
|
|
901
|
+
* It takes a cache key and a cache entry, wraps the cache entry, and then sets the wrapped cache entry in the cache
|
|
902
|
+
* @param cacheKey - CacheKey<TExtended>
|
|
903
|
+
* @param {CacheEntry} entry - The cache entry to be stored.
|
|
904
|
+
*/
|
|
905
|
+
set(e, t) {
|
|
906
|
+
return K(this, void 0, void 0, function* () {
|
|
907
|
+
const o = yield this.wrapCacheEntry(t);
|
|
908
|
+
yield this.cache.set(e.toKey(), o);
|
|
909
|
+
});
|
|
910
|
+
}
|
|
911
|
+
/**
|
|
912
|
+
* It gets all the keys in the cache, and then removes them all
|
|
913
|
+
*/
|
|
914
|
+
clearCache() {
|
|
915
|
+
return K(this, void 0, void 0, function* () {
|
|
916
|
+
const e = yield this.cache.allKeys();
|
|
917
|
+
yield Promise.all(e.map((t) => this.cache.remove(t)));
|
|
918
|
+
});
|
|
919
|
+
}
|
|
920
|
+
wrapCacheEntry(e) {
|
|
921
|
+
return K(this, void 0, void 0, function* () {
|
|
922
|
+
const t = yield this.nowProvider(), o = Math.floor(t / 1e3) + this.cacheTime;
|
|
923
|
+
return {
|
|
924
|
+
body: e,
|
|
925
|
+
expiresAt: o
|
|
926
|
+
};
|
|
927
|
+
});
|
|
928
|
+
}
|
|
929
|
+
}
|
|
930
|
+
class yt {
|
|
931
|
+
constructor() {
|
|
932
|
+
this.enclosedCache = /* @__PURE__ */ function() {
|
|
933
|
+
const e = {};
|
|
934
|
+
return {
|
|
935
|
+
set(t, o) {
|
|
936
|
+
e[t] = o;
|
|
937
|
+
},
|
|
938
|
+
get(t) {
|
|
939
|
+
const o = e[t];
|
|
940
|
+
if (o)
|
|
941
|
+
return o;
|
|
942
|
+
},
|
|
943
|
+
remove(t) {
|
|
944
|
+
delete e[t];
|
|
945
|
+
},
|
|
946
|
+
allKeys() {
|
|
947
|
+
return Object.keys(e);
|
|
948
|
+
}
|
|
949
|
+
};
|
|
950
|
+
}();
|
|
951
|
+
}
|
|
952
|
+
}
|
|
953
|
+
class wt {
|
|
954
|
+
set() {
|
|
955
|
+
}
|
|
956
|
+
get() {
|
|
957
|
+
}
|
|
958
|
+
remove() {
|
|
959
|
+
}
|
|
960
|
+
allKeys() {
|
|
961
|
+
return [];
|
|
962
|
+
}
|
|
963
|
+
}
|
|
964
|
+
var F;
|
|
965
|
+
(function(a) {
|
|
966
|
+
a.Memory = "memory", a.LocalStorage = "localstorage", a.SessionStorage = "sessionstorage", a.NoCache = "nocache";
|
|
967
|
+
})(F || (F = {}));
|
|
968
|
+
var xt = "1.3.2";
|
|
969
|
+
const jt = {
|
|
970
|
+
[F.Memory]: () => new yt().enclosedCache,
|
|
971
|
+
[F.LocalStorage]: (a) => new ft(a),
|
|
972
|
+
[F.SessionStorage]: (a) => new bt(a),
|
|
973
|
+
[F.NoCache]: () => new wt()
|
|
974
|
+
}, Et = (a) => {
|
|
975
|
+
switch (a) {
|
|
976
|
+
case F.SessionStorage:
|
|
977
|
+
try {
|
|
978
|
+
window.sessionStorage.getItem("item");
|
|
979
|
+
} catch {
|
|
980
|
+
return !1;
|
|
981
|
+
}
|
|
982
|
+
return !0;
|
|
983
|
+
case F.LocalStorage:
|
|
984
|
+
try {
|
|
985
|
+
window.localStorage.getItem("item");
|
|
986
|
+
} catch {
|
|
987
|
+
return !1;
|
|
988
|
+
}
|
|
989
|
+
return !0;
|
|
990
|
+
default:
|
|
991
|
+
return !0;
|
|
992
|
+
}
|
|
993
|
+
}, te = (a) => jt[a];
|
|
994
|
+
class aa {
|
|
995
|
+
constructor(e) {
|
|
996
|
+
var t;
|
|
997
|
+
this.inFlightRequests = /* @__PURE__ */ new Map(), this.agentPromise = null, this.customAgent = e == null ? void 0 : e.customAgent, this.agent = {
|
|
998
|
+
get: () => {
|
|
999
|
+
throw new Error("FPJSAgent hasn't loaded yet. Make sure to call the init() method first.");
|
|
1000
|
+
}
|
|
1001
|
+
}, this.loadOptions = e == null ? void 0 : e.loadOptions, e != null && e.cache && (e != null && e.cacheLocation) && console.warn("Both `cache` and `cacheLocation` options have been specified in the FpjsClient configuration; ignoring `cacheLocation` and using `cache`.");
|
|
1002
|
+
let o;
|
|
1003
|
+
if (e != null && e.cache)
|
|
1004
|
+
o = e.cache;
|
|
1005
|
+
else {
|
|
1006
|
+
if (this.cacheLocation = (e == null ? void 0 : e.cacheLocation) || F.SessionStorage, !te(this.cacheLocation))
|
|
1007
|
+
throw new Error(`Invalid cache location "${this.cacheLocation}"`);
|
|
1008
|
+
Et(this.cacheLocation) || (this.cacheLocation = F.Memory), o = te(this.cacheLocation)(e == null ? void 0 : e.cachePrefix);
|
|
1009
|
+
}
|
|
1010
|
+
if (e != null && e.cacheTimeInSeconds && e.cacheTimeInSeconds > pt)
|
|
1011
|
+
throw new Error("Cache time cannot exceed 86400 seconds (24 hours)");
|
|
1012
|
+
const n = (t = e == null ? void 0 : e.cacheTimeInSeconds) !== null && t !== void 0 ? t : nn;
|
|
1013
|
+
this.cacheManager = new vt(o, n);
|
|
1014
|
+
}
|
|
1015
|
+
/**
|
|
1016
|
+
* Loads FPJS JS agent with certain settings and stores the instance in memory
|
|
1017
|
+
* [https://dev.fingerprint.com/docs/js-agent#agent-initialization]
|
|
1018
|
+
*
|
|
1019
|
+
* @param passedLoadOptions Additional load options to be passed to the agent, they will be merged with load options provided in the constructor.
|
|
1020
|
+
*/
|
|
1021
|
+
init(e) {
|
|
1022
|
+
return K(this, void 0, void 0, function* () {
|
|
1023
|
+
var t, o;
|
|
1024
|
+
if (!this.loadOptions && !e)
|
|
1025
|
+
throw new TypeError("No load options provided");
|
|
1026
|
+
const n = Object.assign(Object.assign(Object.assign({}, this.loadOptions), e), { integrationInfo: [
|
|
1027
|
+
...((t = this.loadOptions) === null || t === void 0 ? void 0 : t.integrationInfo) || [],
|
|
1028
|
+
...(e == null ? void 0 : e.integrationInfo) || [],
|
|
1029
|
+
`fingerprintjs-pro-spa/${xt}`
|
|
1030
|
+
] });
|
|
1031
|
+
if (!this.agentPromise) {
|
|
1032
|
+
const i = (o = this.customAgent) !== null && o !== void 0 ? o : ht;
|
|
1033
|
+
this.agentPromise = i.load(n).then((r) => (this.agent = r, r)).catch((r) => {
|
|
1034
|
+
throw this.agentPromise = null, r;
|
|
1035
|
+
});
|
|
1036
|
+
}
|
|
1037
|
+
return this.agentPromise;
|
|
1038
|
+
});
|
|
1039
|
+
}
|
|
1040
|
+
/**
|
|
1041
|
+
* Returns visitor identification data based on the request options
|
|
1042
|
+
* [https://dev.fingerprint.com/docs/js-agent#visitor-identification]
|
|
1043
|
+
*
|
|
1044
|
+
* @param options
|
|
1045
|
+
* @param ignoreCache if set to true a request to the API will be made even if the data is present in cache
|
|
1046
|
+
*/
|
|
1047
|
+
getVisitorData() {
|
|
1048
|
+
return K(this, arguments, void 0, function* (e = {}, t = !1) {
|
|
1049
|
+
const n = aa.makeCacheKey(e).toKey();
|
|
1050
|
+
if (!this.inFlightRequests.has(n)) {
|
|
1051
|
+
const i = this._identify(e, t).finally(() => {
|
|
1052
|
+
this.inFlightRequests.delete(n);
|
|
1053
|
+
});
|
|
1054
|
+
this.inFlightRequests.set(n, i);
|
|
1055
|
+
}
|
|
1056
|
+
return yield this.inFlightRequests.get(n);
|
|
1057
|
+
});
|
|
1058
|
+
}
|
|
1059
|
+
/**
|
|
1060
|
+
* Returns cached visitor data based on the request options, or undefined if the data is not present in cache
|
|
1061
|
+
* */
|
|
1062
|
+
getVisitorDataFromCache() {
|
|
1063
|
+
return K(this, arguments, void 0, function* (e = {}) {
|
|
1064
|
+
const t = aa.makeCacheKey(e), o = yield this.cacheManager.get(t);
|
|
1065
|
+
return o ? Object.assign(Object.assign({}, o), { cacheHit: !0 }) : void 0;
|
|
1066
|
+
});
|
|
1067
|
+
}
|
|
1068
|
+
/**
|
|
1069
|
+
* Checks if request matching given options is present in cache
|
|
1070
|
+
* */
|
|
1071
|
+
isInCache() {
|
|
1072
|
+
return K(this, arguments, void 0, function* (e = {}) {
|
|
1073
|
+
return !!(yield this.getVisitorDataFromCache(e));
|
|
1074
|
+
});
|
|
1075
|
+
}
|
|
1076
|
+
/**
|
|
1077
|
+
* Clears visitor data from cache regardless of the cache implementation
|
|
1078
|
+
*/
|
|
1079
|
+
clearCache() {
|
|
1080
|
+
return K(this, void 0, void 0, function* () {
|
|
1081
|
+
yield this.cacheManager.clearCache();
|
|
1082
|
+
});
|
|
1083
|
+
}
|
|
1084
|
+
/**
|
|
1085
|
+
* Makes a CacheKey object from GetOptions
|
|
1086
|
+
*/
|
|
1087
|
+
static makeCacheKey(e) {
|
|
1088
|
+
return new kt(e);
|
|
1089
|
+
}
|
|
1090
|
+
_identify(e) {
|
|
1091
|
+
return K(this, arguments, void 0, function* (t, o = !1) {
|
|
1092
|
+
const n = aa.makeCacheKey(t);
|
|
1093
|
+
if (!o) {
|
|
1094
|
+
const r = yield this.cacheManager.get(n);
|
|
1095
|
+
if (r)
|
|
1096
|
+
return Object.assign(Object.assign({}, r), { cacheHit: !0 });
|
|
1097
|
+
}
|
|
1098
|
+
const i = yield this.agent.get(t);
|
|
1099
|
+
return yield this.cacheManager.set(n, i), Object.assign(Object.assign({}, i), { cacheHit: !1 });
|
|
1100
|
+
});
|
|
1101
|
+
}
|
|
1102
|
+
}
|
|
1103
|
+
function Rt(a) {
|
|
1104
|
+
return a && a.__esModule && Object.prototype.hasOwnProperty.call(a, "default") ? a.default : a;
|
|
1105
|
+
}
|
|
1106
|
+
var Ea, oe;
|
|
1107
|
+
function _t() {
|
|
1108
|
+
return oe || (oe = 1, Ea = function a(e, t) {
|
|
1109
|
+
if (e === t) return !0;
|
|
1110
|
+
if (e && t && typeof e == "object" && typeof t == "object") {
|
|
1111
|
+
if (e.constructor !== t.constructor) return !1;
|
|
1112
|
+
var o, n, i;
|
|
1113
|
+
if (Array.isArray(e)) {
|
|
1114
|
+
if (o = e.length, o != t.length) return !1;
|
|
1115
|
+
for (n = o; n-- !== 0; )
|
|
1116
|
+
if (!a(e[n], t[n])) return !1;
|
|
1117
|
+
return !0;
|
|
1118
|
+
}
|
|
1119
|
+
if (e.constructor === RegExp) return e.source === t.source && e.flags === t.flags;
|
|
1120
|
+
if (e.valueOf !== Object.prototype.valueOf) return e.valueOf() === t.valueOf();
|
|
1121
|
+
if (e.toString !== Object.prototype.toString) return e.toString() === t.toString();
|
|
1122
|
+
if (i = Object.keys(e), o = i.length, o !== Object.keys(t).length) return !1;
|
|
1123
|
+
for (n = o; n-- !== 0; )
|
|
1124
|
+
if (!Object.prototype.hasOwnProperty.call(t, i[n])) return !1;
|
|
1125
|
+
for (n = o; n-- !== 0; ) {
|
|
1126
|
+
var r = i[n];
|
|
1127
|
+
if (!a(e[r], t[r])) return !1;
|
|
1128
|
+
}
|
|
1129
|
+
return !0;
|
|
1130
|
+
}
|
|
1131
|
+
return e !== e && t !== t;
|
|
1132
|
+
}), Ea;
|
|
1133
|
+
}
|
|
1134
|
+
var zt = _t();
|
|
1135
|
+
const It = /* @__PURE__ */ Rt(zt);
|
|
1136
|
+
var ie = function() {
|
|
1137
|
+
throw new Error("You forgot to wrap your component in <FpjsProvider>.");
|
|
1138
|
+
}, Ot = {
|
|
1139
|
+
getVisitorData: ie,
|
|
1140
|
+
clearCache: ie
|
|
1141
|
+
}, on = ha(Ot), Ia = function(a, e) {
|
|
1142
|
+
return Ia = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t, o) {
|
|
1143
|
+
t.__proto__ = o;
|
|
1144
|
+
} || function(t, o) {
|
|
1145
|
+
for (var n in o) Object.prototype.hasOwnProperty.call(o, n) && (t[n] = o[n]);
|
|
1146
|
+
}, Ia(a, e);
|
|
1147
|
+
};
|
|
1148
|
+
function Ct(a, e) {
|
|
1149
|
+
if (typeof e != "function" && e !== null)
|
|
1150
|
+
throw new TypeError("Class extends value " + String(e) + " is not a constructor or null");
|
|
1151
|
+
Ia(a, e);
|
|
1152
|
+
function t() {
|
|
1153
|
+
this.constructor = a;
|
|
1154
|
+
}
|
|
1155
|
+
a.prototype = e === null ? Object.create(e) : (t.prototype = e.prototype, new t());
|
|
1156
|
+
}
|
|
1157
|
+
var T = function() {
|
|
1158
|
+
return T = Object.assign || function(e) {
|
|
1159
|
+
for (var t, o = 1, n = arguments.length; o < n; o++) {
|
|
1160
|
+
t = arguments[o];
|
|
1161
|
+
for (var i in t) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);
|
|
1162
|
+
}
|
|
1163
|
+
return e;
|
|
1164
|
+
}, T.apply(this, arguments);
|
|
1165
|
+
};
|
|
1166
|
+
function re(a, e) {
|
|
1167
|
+
var t = {};
|
|
1168
|
+
for (var o in a) Object.prototype.hasOwnProperty.call(a, o) && e.indexOf(o) < 0 && (t[o] = a[o]);
|
|
1169
|
+
if (a != null && typeof Object.getOwnPropertySymbols == "function")
|
|
1170
|
+
for (var n = 0, o = Object.getOwnPropertySymbols(a); n < o.length; n++)
|
|
1171
|
+
e.indexOf(o[n]) < 0 && Object.prototype.propertyIsEnumerable.call(a, o[n]) && (t[o[n]] = a[o[n]]);
|
|
1172
|
+
return t;
|
|
1173
|
+
}
|
|
1174
|
+
function Q(a, e, t, o) {
|
|
1175
|
+
function n(i) {
|
|
1176
|
+
return i instanceof t ? i : new t(function(r) {
|
|
1177
|
+
r(i);
|
|
1178
|
+
});
|
|
1179
|
+
}
|
|
1180
|
+
return new (t || (t = Promise))(function(i, r) {
|
|
1181
|
+
function u(c) {
|
|
1182
|
+
try {
|
|
1183
|
+
s(o.next(c));
|
|
1184
|
+
} catch (d) {
|
|
1185
|
+
r(d);
|
|
1186
|
+
}
|
|
1187
|
+
}
|
|
1188
|
+
function l(c) {
|
|
1189
|
+
try {
|
|
1190
|
+
s(o.throw(c));
|
|
1191
|
+
} catch (d) {
|
|
1192
|
+
r(d);
|
|
1193
|
+
}
|
|
1194
|
+
}
|
|
1195
|
+
function s(c) {
|
|
1196
|
+
c.done ? i(c.value) : n(c.value).then(u, l);
|
|
1197
|
+
}
|
|
1198
|
+
s((o = o.apply(a, e || [])).next());
|
|
1199
|
+
});
|
|
1200
|
+
}
|
|
1201
|
+
function Z(a, e) {
|
|
1202
|
+
var t = { label: 0, sent: function() {
|
|
1203
|
+
if (i[0] & 1) throw i[1];
|
|
1204
|
+
return i[1];
|
|
1205
|
+
}, trys: [], ops: [] }, o, n, i, r;
|
|
1206
|
+
return r = { next: u(0), throw: u(1), return: u(2) }, typeof Symbol == "function" && (r[Symbol.iterator] = function() {
|
|
1207
|
+
return this;
|
|
1208
|
+
}), r;
|
|
1209
|
+
function u(s) {
|
|
1210
|
+
return function(c) {
|
|
1211
|
+
return l([s, c]);
|
|
1212
|
+
};
|
|
1213
|
+
}
|
|
1214
|
+
function l(s) {
|
|
1215
|
+
if (o) throw new TypeError("Generator is already executing.");
|
|
1216
|
+
for (; r && (r = 0, s[0] && (t = 0)), t; ) try {
|
|
1217
|
+
if (o = 1, n && (i = s[0] & 2 ? n.return : s[0] ? n.throw || ((i = n.return) && i.call(n), 0) : n.next) && !(i = i.call(n, s[1])).done) return i;
|
|
1218
|
+
switch (n = 0, i && (s = [s[0] & 2, i.value]), s[0]) {
|
|
1219
|
+
case 0:
|
|
1220
|
+
case 1:
|
|
1221
|
+
i = s;
|
|
1222
|
+
break;
|
|
1223
|
+
case 4:
|
|
1224
|
+
return t.label++, { value: s[1], done: !1 };
|
|
1225
|
+
case 5:
|
|
1226
|
+
t.label++, n = s[1], s = [0];
|
|
1227
|
+
continue;
|
|
1228
|
+
case 7:
|
|
1229
|
+
s = t.ops.pop(), t.trys.pop();
|
|
1230
|
+
continue;
|
|
1231
|
+
default:
|
|
1232
|
+
if (i = t.trys, !(i = i.length > 0 && i[i.length - 1]) && (s[0] === 6 || s[0] === 2)) {
|
|
1233
|
+
t = 0;
|
|
1234
|
+
continue;
|
|
1235
|
+
}
|
|
1236
|
+
if (s[0] === 3 && (!i || s[1] > i[0] && s[1] < i[3])) {
|
|
1237
|
+
t.label = s[1];
|
|
1238
|
+
break;
|
|
1239
|
+
}
|
|
1240
|
+
if (s[0] === 6 && t.label < i[1]) {
|
|
1241
|
+
t.label = i[1], i = s;
|
|
1242
|
+
break;
|
|
1243
|
+
}
|
|
1244
|
+
if (i && t.label < i[2]) {
|
|
1245
|
+
t.label = i[2], t.ops.push(s);
|
|
1246
|
+
break;
|
|
1247
|
+
}
|
|
1248
|
+
i[2] && t.ops.pop(), t.trys.pop();
|
|
1249
|
+
continue;
|
|
1250
|
+
}
|
|
1251
|
+
s = e.call(a, t);
|
|
1252
|
+
} catch (c) {
|
|
1253
|
+
s = [6, c], n = 0;
|
|
1254
|
+
} finally {
|
|
1255
|
+
o = i = 0;
|
|
1256
|
+
}
|
|
1257
|
+
if (s[0] & 5) throw s[1];
|
|
1258
|
+
return { value: s[0] ? s[1] : void 0, done: !0 };
|
|
1259
|
+
}
|
|
1260
|
+
}
|
|
1261
|
+
function Oa(a, e, t) {
|
|
1262
|
+
if (t || arguments.length === 2) for (var o = 0, n = e.length, i; o < n; o++)
|
|
1263
|
+
(i || !(o in e)) && (i || (i = Array.prototype.slice.call(e, 0, o)), i[o] = e[o]);
|
|
1264
|
+
return a.concat(i || Array.prototype.slice.call(e));
|
|
1265
|
+
}
|
|
1266
|
+
var St = "@fingerprintjs/fingerprintjs-pro-react", Tt = "2.7.0", At = function() {
|
|
1267
|
+
return typeof window > "u" || typeof window.document > "u";
|
|
1268
|
+
};
|
|
1269
|
+
function qt(a) {
|
|
1270
|
+
var e = a.checkCondition, t = a.intervalMs, o = t === void 0 ? 250 : t, n = a.timeoutMs, i = n === void 0 ? 2e3 : n;
|
|
1271
|
+
return new Promise(function(r, u) {
|
|
1272
|
+
var l = setTimeout(function() {
|
|
1273
|
+
clearInterval(s), u(new Error("Timeout"));
|
|
1274
|
+
}, i), s = setInterval(function() {
|
|
1275
|
+
e() && (clearTimeout(l), clearInterval(s), r());
|
|
1276
|
+
}, o);
|
|
1277
|
+
});
|
|
1278
|
+
}
|
|
1279
|
+
var Pt = '{"name":"preact","version":"10.26.9"}', H;
|
|
1280
|
+
(function(a) {
|
|
1281
|
+
a.React = "react", a.Preact = "preact", a.Next = "next", a.Unknown = "unknown";
|
|
1282
|
+
})(H || (H = {}));
|
|
1283
|
+
function Nt() {
|
|
1284
|
+
for (var a = [], e = 0; e < arguments.length; e++)
|
|
1285
|
+
a[e] = arguments[e];
|
|
1286
|
+
if (typeof window > "u")
|
|
1287
|
+
return !1;
|
|
1288
|
+
for (var t = 0, o = a; t < o.length; t++) {
|
|
1289
|
+
var n = o[t], i = n();
|
|
1290
|
+
if (i)
|
|
1291
|
+
return !0;
|
|
1292
|
+
}
|
|
1293
|
+
return !1;
|
|
1294
|
+
}
|
|
1295
|
+
function Dt(a) {
|
|
1296
|
+
return a.classRenderReceivesAnyArguments;
|
|
1297
|
+
}
|
|
1298
|
+
function Lt(a) {
|
|
1299
|
+
return !a.classRenderReceivesAnyArguments;
|
|
1300
|
+
}
|
|
1301
|
+
function Ut() {
|
|
1302
|
+
return Nt(function() {
|
|
1303
|
+
return "next" in window && !!window.next;
|
|
1304
|
+
}, function() {
|
|
1305
|
+
return document.querySelector("script[id=__NEXT_DATA__]");
|
|
1306
|
+
});
|
|
1307
|
+
}
|
|
1308
|
+
function Mt() {
|
|
1309
|
+
var a;
|
|
1310
|
+
return (a = window == null ? void 0 : window.next) === null || a === void 0 ? void 0 : a.version;
|
|
1311
|
+
}
|
|
1312
|
+
function Ft(a) {
|
|
1313
|
+
var e = a.context;
|
|
1314
|
+
return Ut() ? {
|
|
1315
|
+
name: H.Next,
|
|
1316
|
+
version: Mt()
|
|
1317
|
+
} : Dt(e) ? {
|
|
1318
|
+
name: H.Preact
|
|
1319
|
+
} : Lt(e) ? {
|
|
1320
|
+
name: H.React
|
|
1321
|
+
} : {
|
|
1322
|
+
name: H.Unknown
|
|
1323
|
+
};
|
|
1324
|
+
}
|
|
1325
|
+
function Kt(a) {
|
|
1326
|
+
try {
|
|
1327
|
+
var e = JSON.parse(Pt);
|
|
1328
|
+
if (typeof e == "object")
|
|
1329
|
+
return e;
|
|
1330
|
+
} catch {
|
|
1331
|
+
}
|
|
1332
|
+
return Ft(a);
|
|
1333
|
+
}
|
|
1334
|
+
var $t = (
|
|
1335
|
+
/** @class */
|
|
1336
|
+
function(a) {
|
|
1337
|
+
Ct(e, a);
|
|
1338
|
+
function e(t) {
|
|
1339
|
+
return a.call(this, t) || this;
|
|
1340
|
+
}
|
|
1341
|
+
return e.prototype.render = function() {
|
|
1342
|
+
for (var t = [], o = 0; o < arguments.length; o++)
|
|
1343
|
+
t[o] = arguments[o];
|
|
1344
|
+
if (!this.detectedEnv) {
|
|
1345
|
+
var n = t.length > 0, i = {
|
|
1346
|
+
context: { classRenderReceivesAnyArguments: n }
|
|
1347
|
+
};
|
|
1348
|
+
this.detectedEnv = Kt(i);
|
|
1349
|
+
}
|
|
1350
|
+
return gn(this.props.children, { env: this.detectedEnv });
|
|
1351
|
+
}, e;
|
|
1352
|
+
}(ye)
|
|
1353
|
+
), Bt = St.split("/")[1];
|
|
1354
|
+
function Gt(a) {
|
|
1355
|
+
var e = a;
|
|
1356
|
+
return E($t, { children: E(Vt, T({}, e)) });
|
|
1357
|
+
}
|
|
1358
|
+
function Vt(a) {
|
|
1359
|
+
var e = this, t = a.children, o = a.forceRebuild, n = a.cache, i = a.cacheTimeInSeconds, r = a.cachePrefix, u = a.cacheLocation, l = a.customAgent, s = a.loadOptions, c = a.env, d = M(), p = M(), g = Xa(function() {
|
|
1360
|
+
return {
|
|
1361
|
+
cache: n,
|
|
1362
|
+
cacheTimeInSeconds: i,
|
|
1363
|
+
cachePrefix: r,
|
|
1364
|
+
cacheLocation: u,
|
|
1365
|
+
customAgent: l,
|
|
1366
|
+
loadOptions: s
|
|
1367
|
+
};
|
|
1368
|
+
}, [s, n, i, r, u, l]), v = P(function() {
|
|
1369
|
+
var b = "".concat(Bt, "/").concat(Tt);
|
|
1370
|
+
if (c) {
|
|
1371
|
+
var m = c.version ? "".concat(c.name, "/").concat(c.version) : c.name;
|
|
1372
|
+
b += "/".concat(m);
|
|
1373
|
+
}
|
|
1374
|
+
var w = T(T({}, g), { loadOptions: T(T({}, s), { integrationInfo: Oa(Oa([], s.integrationInfo || [], !0), [b], !1) }) }), j = new aa(w);
|
|
1375
|
+
return p.current = j.init(), j;
|
|
1376
|
+
}, [g, c, s]), h = P(function() {
|
|
1377
|
+
return Q(e, void 0, void 0, function() {
|
|
1378
|
+
var b = this;
|
|
1379
|
+
return Z(this, function(m) {
|
|
1380
|
+
switch (m.label) {
|
|
1381
|
+
case 0:
|
|
1382
|
+
if (At())
|
|
1383
|
+
throw new Error("FpjsProvider client cannot be used in SSR");
|
|
1384
|
+
return d.current ? [3, 2] : [4, qt({
|
|
1385
|
+
checkCondition: function() {
|
|
1386
|
+
return !!d.current;
|
|
1387
|
+
}
|
|
1388
|
+
}).catch(function() {
|
|
1389
|
+
return Q(b, void 0, void 0, function() {
|
|
1390
|
+
return Z(this, function(w) {
|
|
1391
|
+
return v(), [
|
|
1392
|
+
2
|
|
1393
|
+
/*return*/
|
|
1394
|
+
];
|
|
1395
|
+
});
|
|
1396
|
+
});
|
|
1397
|
+
})];
|
|
1398
|
+
case 1:
|
|
1399
|
+
m.sent(), m.label = 2;
|
|
1400
|
+
case 2:
|
|
1401
|
+
return [2, d.current];
|
|
1402
|
+
}
|
|
1403
|
+
});
|
|
1404
|
+
});
|
|
1405
|
+
}, [v]), k = P(function(b, m) {
|
|
1406
|
+
return Q(e, void 0, void 0, function() {
|
|
1407
|
+
var w;
|
|
1408
|
+
return Z(this, function(j) {
|
|
1409
|
+
switch (j.label) {
|
|
1410
|
+
case 0:
|
|
1411
|
+
return [4, h()];
|
|
1412
|
+
case 1:
|
|
1413
|
+
return w = j.sent(), [4, p.current];
|
|
1414
|
+
case 2:
|
|
1415
|
+
return j.sent(), [2, w.getVisitorData(b, m)];
|
|
1416
|
+
}
|
|
1417
|
+
});
|
|
1418
|
+
});
|
|
1419
|
+
}, [h]), f = P(function() {
|
|
1420
|
+
return Q(e, void 0, void 0, function() {
|
|
1421
|
+
var b;
|
|
1422
|
+
return Z(this, function(m) {
|
|
1423
|
+
switch (m.label) {
|
|
1424
|
+
case 0:
|
|
1425
|
+
return [4, h()];
|
|
1426
|
+
case 1:
|
|
1427
|
+
return b = m.sent(), [4, b.clearCache()];
|
|
1428
|
+
case 2:
|
|
1429
|
+
return m.sent(), [
|
|
1430
|
+
2
|
|
1431
|
+
/*return*/
|
|
1432
|
+
];
|
|
1433
|
+
}
|
|
1434
|
+
});
|
|
1435
|
+
});
|
|
1436
|
+
}, [h]), x = Xa(function() {
|
|
1437
|
+
return {
|
|
1438
|
+
clearCache: f,
|
|
1439
|
+
getVisitorData: k
|
|
1440
|
+
};
|
|
1441
|
+
}, [f, k]);
|
|
1442
|
+
return B(function() {
|
|
1443
|
+
(!d.current || o) && (d.current = v());
|
|
1444
|
+
}, [o, g, v]), E(on.Provider, { value: x, children: t });
|
|
1445
|
+
}
|
|
1446
|
+
function Ht(a) {
|
|
1447
|
+
return a instanceof Error ? a : new Error(String(a));
|
|
1448
|
+
}
|
|
1449
|
+
function se(a, e) {
|
|
1450
|
+
if (!a)
|
|
1451
|
+
throw new TypeError("".concat(e, " must not be null or undefined"));
|
|
1452
|
+
}
|
|
1453
|
+
function Wt(a, e) {
|
|
1454
|
+
var t = this;
|
|
1455
|
+
a === void 0 && (a = {}), e === void 0 && (e = Yt), se(a, "getOptions");
|
|
1456
|
+
var o = e.immediate, n = Sa(on).getVisitorData, i = Y(a), r = i[0], u = i[1], l = Y({
|
|
1457
|
+
isLoading: o
|
|
1458
|
+
}), s = l[0], c = l[1], d = P(function() {
|
|
1459
|
+
for (var h = [], k = 0; k < arguments.length; k++)
|
|
1460
|
+
h[k] = arguments[k];
|
|
1461
|
+
return Q(t, Oa([], h, !0), void 0, function(f) {
|
|
1462
|
+
var x, b, m, w, j, R, S, O;
|
|
1463
|
+
return f === void 0 && (f = {}), Z(this, function(A) {
|
|
1464
|
+
switch (A.label) {
|
|
1465
|
+
case 0:
|
|
1466
|
+
se(f, "getDataParams"), x = f.ignoreCache, b = re(f, ["ignoreCache"]), A.label = 1;
|
|
1467
|
+
case 1:
|
|
1468
|
+
return A.trys.push([1, 3, 4, 5]), c(function(z) {
|
|
1469
|
+
return T(T({}, z), { isLoading: !0 });
|
|
1470
|
+
}), m = r.ignoreCache, w = re(r, ["ignoreCache"]), j = T(T({}, w), b), [4, n(j, typeof x == "boolean" ? x : m)];
|
|
1471
|
+
case 2:
|
|
1472
|
+
return R = A.sent(), c(function(z) {
|
|
1473
|
+
return T(T({}, z), { data: R, isLoading: !1, error: void 0 });
|
|
1474
|
+
}), [2, R];
|
|
1475
|
+
case 3:
|
|
1476
|
+
throw S = A.sent(), O = Ht(S), O.name = "FPJSAgentError", c(function(z) {
|
|
1477
|
+
return T(T({}, z), { data: void 0, error: O });
|
|
1478
|
+
}), O;
|
|
1479
|
+
case 4:
|
|
1480
|
+
return c(function(z) {
|
|
1481
|
+
return z.isLoading ? T(T({}, z), { isLoading: !1 }) : z;
|
|
1482
|
+
}), [
|
|
1483
|
+
7
|
|
1484
|
+
/*endfinally*/
|
|
1485
|
+
];
|
|
1486
|
+
case 5:
|
|
1487
|
+
return [
|
|
1488
|
+
2
|
|
1489
|
+
/*return*/
|
|
1490
|
+
];
|
|
1491
|
+
}
|
|
1492
|
+
});
|
|
1493
|
+
});
|
|
1494
|
+
}, [r, n]);
|
|
1495
|
+
B(function() {
|
|
1496
|
+
o && d().catch(function(h) {
|
|
1497
|
+
console.error("Failed to fetch visitor data on mount: ".concat(h));
|
|
1498
|
+
});
|
|
1499
|
+
}, [o, d]), !Object.is(r, a) && !It(r, a) && u(a);
|
|
1500
|
+
var p = s.isLoading, g = s.data, v = s.error;
|
|
1501
|
+
return {
|
|
1502
|
+
getData: d,
|
|
1503
|
+
isLoading: p,
|
|
1504
|
+
data: g,
|
|
1505
|
+
error: v
|
|
1506
|
+
};
|
|
1507
|
+
}
|
|
1508
|
+
var Yt = { immediate: !0 };
|
|
1509
|
+
/*! js-cookie v3.0.5 | MIT */
|
|
1510
|
+
function ua(a) {
|
|
1511
|
+
for (var e = 1; e < arguments.length; e++) {
|
|
1512
|
+
var t = arguments[e];
|
|
1513
|
+
for (var o in t)
|
|
1514
|
+
a[o] = t[o];
|
|
1515
|
+
}
|
|
1516
|
+
return a;
|
|
1517
|
+
}
|
|
1518
|
+
var Jt = {
|
|
1519
|
+
read: function(a) {
|
|
1520
|
+
return a[0] === '"' && (a = a.slice(1, -1)), a.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent);
|
|
1521
|
+
},
|
|
1522
|
+
write: function(a) {
|
|
1523
|
+
return encodeURIComponent(a).replace(
|
|
1524
|
+
/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,
|
|
1525
|
+
decodeURIComponent
|
|
1526
|
+
);
|
|
1527
|
+
}
|
|
1528
|
+
};
|
|
1529
|
+
function Ca(a, e) {
|
|
1530
|
+
function t(n, i, r) {
|
|
1531
|
+
if (!(typeof document > "u")) {
|
|
1532
|
+
r = ua({}, e, r), typeof r.expires == "number" && (r.expires = new Date(Date.now() + r.expires * 864e5)), r.expires && (r.expires = r.expires.toUTCString()), n = encodeURIComponent(n).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);
|
|
1533
|
+
var u = "";
|
|
1534
|
+
for (var l in r)
|
|
1535
|
+
r[l] && (u += "; " + l, r[l] !== !0 && (u += "=" + r[l].split(";")[0]));
|
|
1536
|
+
return document.cookie = n + "=" + a.write(i, n) + u;
|
|
1537
|
+
}
|
|
1538
|
+
}
|
|
1539
|
+
function o(n) {
|
|
1540
|
+
if (!(typeof document > "u" || arguments.length && !n)) {
|
|
1541
|
+
for (var i = document.cookie ? document.cookie.split("; ") : [], r = {}, u = 0; u < i.length; u++) {
|
|
1542
|
+
var l = i[u].split("="), s = l.slice(1).join("=");
|
|
1543
|
+
try {
|
|
1544
|
+
var c = decodeURIComponent(l[0]);
|
|
1545
|
+
if (r[c] = a.read(s, c), n === c)
|
|
1546
|
+
break;
|
|
1547
|
+
} catch {
|
|
1548
|
+
}
|
|
1549
|
+
}
|
|
1550
|
+
return n ? r[n] : r;
|
|
1551
|
+
}
|
|
1552
|
+
}
|
|
1553
|
+
return Object.create(
|
|
1554
|
+
{
|
|
1555
|
+
set: t,
|
|
1556
|
+
get: o,
|
|
1557
|
+
remove: function(n, i) {
|
|
1558
|
+
t(
|
|
1559
|
+
n,
|
|
1560
|
+
"",
|
|
1561
|
+
ua({}, i, {
|
|
1562
|
+
expires: -1
|
|
1563
|
+
})
|
|
1564
|
+
);
|
|
1565
|
+
},
|
|
1566
|
+
withAttributes: function(n) {
|
|
1567
|
+
return Ca(this.converter, ua({}, this.attributes, n));
|
|
1568
|
+
},
|
|
1569
|
+
withConverter: function(n) {
|
|
1570
|
+
return Ca(ua({}, this.converter, n), this.attributes);
|
|
1571
|
+
}
|
|
1572
|
+
},
|
|
1573
|
+
{
|
|
1574
|
+
attributes: { value: Object.freeze(e) },
|
|
1575
|
+
converter: { value: Object.freeze(a) }
|
|
1576
|
+
}
|
|
1577
|
+
);
|
|
1578
|
+
}
|
|
1579
|
+
var ce = Ca(Jt, { path: "/" });
|
|
1580
|
+
function Xt(a, e) {
|
|
1581
|
+
return a.endsWith(e) ? a.length === e.length || a[a.length - e.length - 1] === "." : !1;
|
|
1582
|
+
}
|
|
1583
|
+
function Qt(a, e) {
|
|
1584
|
+
const t = a.length - e.length - 2, o = a.lastIndexOf(".", t);
|
|
1585
|
+
return o === -1 ? a : a.slice(o + 1);
|
|
1586
|
+
}
|
|
1587
|
+
function Zt(a, e, t) {
|
|
1588
|
+
if (t.validHosts !== null) {
|
|
1589
|
+
const n = t.validHosts;
|
|
1590
|
+
for (const i of n)
|
|
1591
|
+
if (
|
|
1592
|
+
/*@__INLINE__*/
|
|
1593
|
+
Xt(e, i)
|
|
1594
|
+
)
|
|
1595
|
+
return i;
|
|
1596
|
+
}
|
|
1597
|
+
let o = 0;
|
|
1598
|
+
if (e.startsWith("."))
|
|
1599
|
+
for (; o < e.length && e[o] === "."; )
|
|
1600
|
+
o += 1;
|
|
1601
|
+
return a.length === e.length - o ? null : (
|
|
1602
|
+
/*@__INLINE__*/
|
|
1603
|
+
Qt(e, a)
|
|
1604
|
+
);
|
|
1605
|
+
}
|
|
1606
|
+
function ue(a, e) {
|
|
1607
|
+
let t = 0, o = a.length, n = !1;
|
|
1608
|
+
if (!e) {
|
|
1609
|
+
if (a.startsWith("data:"))
|
|
1610
|
+
return null;
|
|
1611
|
+
for (; t < a.length && a.charCodeAt(t) <= 32; )
|
|
1612
|
+
t += 1;
|
|
1613
|
+
for (; o > t + 1 && a.charCodeAt(o - 1) <= 32; )
|
|
1614
|
+
o -= 1;
|
|
1615
|
+
if (a.charCodeAt(t) === 47 && a.charCodeAt(t + 1) === 47)
|
|
1616
|
+
t += 2;
|
|
1617
|
+
else {
|
|
1618
|
+
const s = a.indexOf(":/", t);
|
|
1619
|
+
if (s !== -1) {
|
|
1620
|
+
const c = s - t, d = a.charCodeAt(t), p = a.charCodeAt(t + 1), g = a.charCodeAt(t + 2), v = a.charCodeAt(t + 3), h = a.charCodeAt(t + 4);
|
|
1621
|
+
if (!(c === 5 && d === 104 && p === 116 && g === 116 && v === 112 && h === 115)) {
|
|
1622
|
+
if (!(c === 4 && d === 104 && p === 116 && g === 116 && v === 112)) {
|
|
1623
|
+
if (!(c === 3 && d === 119 && p === 115 && g === 115)) {
|
|
1624
|
+
if (!(c === 2 && d === 119 && p === 115)) for (let k = t; k < s; k += 1) {
|
|
1625
|
+
const f = a.charCodeAt(k) | 32;
|
|
1626
|
+
if (!(f >= 97 && f <= 122 || // [a, z]
|
|
1627
|
+
f >= 48 && f <= 57 || // [0, 9]
|
|
1628
|
+
f === 46 || // '.'
|
|
1629
|
+
f === 45 || // '-'
|
|
1630
|
+
f === 43))
|
|
1631
|
+
return null;
|
|
1632
|
+
}
|
|
1633
|
+
}
|
|
1634
|
+
}
|
|
1635
|
+
}
|
|
1636
|
+
for (t = s + 2; a.charCodeAt(t) === 47; )
|
|
1637
|
+
t += 1;
|
|
1638
|
+
}
|
|
1639
|
+
}
|
|
1640
|
+
let r = -1, u = -1, l = -1;
|
|
1641
|
+
for (let s = t; s < o; s += 1) {
|
|
1642
|
+
const c = a.charCodeAt(s);
|
|
1643
|
+
if (c === 35 || // '#'
|
|
1644
|
+
c === 47 || // '/'
|
|
1645
|
+
c === 63) {
|
|
1646
|
+
o = s;
|
|
1647
|
+
break;
|
|
1648
|
+
} else c === 64 ? r = s : c === 93 ? u = s : c === 58 ? l = s : c >= 65 && c <= 90 && (n = !0);
|
|
1649
|
+
}
|
|
1650
|
+
if (r !== -1 && r > t && r < o && (t = r + 1), a.charCodeAt(t) === 91)
|
|
1651
|
+
return u !== -1 ? a.slice(t + 1, u).toLowerCase() : null;
|
|
1652
|
+
l !== -1 && l > t && l < o && (o = l);
|
|
1653
|
+
}
|
|
1654
|
+
for (; o > t + 1 && a.charCodeAt(o - 1) === 46; )
|
|
1655
|
+
o -= 1;
|
|
1656
|
+
const i = t !== 0 || o !== a.length ? a.slice(t, o) : a;
|
|
1657
|
+
return n ? i.toLowerCase() : i;
|
|
1658
|
+
}
|
|
1659
|
+
function ao(a) {
|
|
1660
|
+
if (a.length < 7 || a.length > 15)
|
|
1661
|
+
return !1;
|
|
1662
|
+
let e = 0;
|
|
1663
|
+
for (let t = 0; t < a.length; t += 1) {
|
|
1664
|
+
const o = a.charCodeAt(t);
|
|
1665
|
+
if (o === 46)
|
|
1666
|
+
e += 1;
|
|
1667
|
+
else if (o < 48 || o > 57)
|
|
1668
|
+
return !1;
|
|
1669
|
+
}
|
|
1670
|
+
return e === 3 && a.charCodeAt(0) !== 46 && a.charCodeAt(a.length - 1) !== 46;
|
|
1671
|
+
}
|
|
1672
|
+
function eo(a) {
|
|
1673
|
+
if (a.length < 3)
|
|
1674
|
+
return !1;
|
|
1675
|
+
let e = a.startsWith("[") ? 1 : 0, t = a.length;
|
|
1676
|
+
if (a[t - 1] === "]" && (t -= 1), t - e > 39)
|
|
1677
|
+
return !1;
|
|
1678
|
+
let o = !1;
|
|
1679
|
+
for (; e < t; e += 1) {
|
|
1680
|
+
const n = a.charCodeAt(e);
|
|
1681
|
+
if (n === 58)
|
|
1682
|
+
o = !0;
|
|
1683
|
+
else if (!(n >= 48 && n <= 57 || // 0-9
|
|
1684
|
+
n >= 97 && n <= 102 || // a-f
|
|
1685
|
+
n >= 65 && n <= 90))
|
|
1686
|
+
return !1;
|
|
1687
|
+
}
|
|
1688
|
+
return o;
|
|
1689
|
+
}
|
|
1690
|
+
function no(a) {
|
|
1691
|
+
return eo(a) || ao(a);
|
|
1692
|
+
}
|
|
1693
|
+
function le(a) {
|
|
1694
|
+
return a >= 97 && a <= 122 || a >= 48 && a <= 57 || a > 127;
|
|
1695
|
+
}
|
|
1696
|
+
function de(a) {
|
|
1697
|
+
if (a.length > 255 || a.length === 0 || /*@__INLINE__*/
|
|
1698
|
+
!le(a.charCodeAt(0)) && a.charCodeAt(0) !== 46 && // '.' (dot)
|
|
1699
|
+
a.charCodeAt(0) !== 95)
|
|
1700
|
+
return !1;
|
|
1701
|
+
let e = -1, t = -1;
|
|
1702
|
+
const o = a.length;
|
|
1703
|
+
for (let n = 0; n < o; n += 1) {
|
|
1704
|
+
const i = a.charCodeAt(n);
|
|
1705
|
+
if (i === 46) {
|
|
1706
|
+
if (
|
|
1707
|
+
// Check that previous label is < 63 bytes long (64 = 63 + '.')
|
|
1708
|
+
n - e > 64 || // Check that previous character was not already a '.'
|
|
1709
|
+
t === 46 || // Check that the previous label does not end with a '-' (dash)
|
|
1710
|
+
t === 45 || // Check that the previous label does not end with a '_' (underscore)
|
|
1711
|
+
t === 95
|
|
1712
|
+
)
|
|
1713
|
+
return !1;
|
|
1714
|
+
e = n;
|
|
1715
|
+
} else if (!/*@__INLINE__*/
|
|
1716
|
+
(le(i) || i === 45 || i === 95))
|
|
1717
|
+
return !1;
|
|
1718
|
+
t = i;
|
|
1719
|
+
}
|
|
1720
|
+
return (
|
|
1721
|
+
// Check that last label is shorter than 63 chars
|
|
1722
|
+
o - e - 1 <= 63 && // Check that the last character is an allowed trailing label character.
|
|
1723
|
+
// Since we already checked that the char is a valid hostname character,
|
|
1724
|
+
// we only need to check that it's different from '-'.
|
|
1725
|
+
t !== 45
|
|
1726
|
+
);
|
|
1727
|
+
}
|
|
1728
|
+
function rn({ allowIcannDomains: a = !0, allowPrivateDomains: e = !1, detectIp: t = !0, extractHostname: o = !0, mixedInputs: n = !0, validHosts: i = null, validateHostname: r = !0 }) {
|
|
1729
|
+
return {
|
|
1730
|
+
allowIcannDomains: a,
|
|
1731
|
+
allowPrivateDomains: e,
|
|
1732
|
+
detectIp: t,
|
|
1733
|
+
extractHostname: o,
|
|
1734
|
+
mixedInputs: n,
|
|
1735
|
+
validHosts: i,
|
|
1736
|
+
validateHostname: r
|
|
1737
|
+
};
|
|
1738
|
+
}
|
|
1739
|
+
const to = (
|
|
1740
|
+
/*@__INLINE__*/
|
|
1741
|
+
rn({})
|
|
1742
|
+
);
|
|
1743
|
+
function oo(a) {
|
|
1744
|
+
return a === void 0 ? to : (
|
|
1745
|
+
/*@__INLINE__*/
|
|
1746
|
+
rn(a)
|
|
1747
|
+
);
|
|
1748
|
+
}
|
|
1749
|
+
function io() {
|
|
1750
|
+
return {
|
|
1751
|
+
domain: null,
|
|
1752
|
+
domainWithoutSuffix: null,
|
|
1753
|
+
hostname: null,
|
|
1754
|
+
isIcann: null,
|
|
1755
|
+
isIp: null,
|
|
1756
|
+
isPrivate: null,
|
|
1757
|
+
publicSuffix: null,
|
|
1758
|
+
subdomain: null
|
|
1759
|
+
};
|
|
1760
|
+
}
|
|
1761
|
+
function ro(a) {
|
|
1762
|
+
a.domain = null, a.domainWithoutSuffix = null, a.hostname = null, a.isIcann = null, a.isIp = null, a.isPrivate = null, a.publicSuffix = null, a.subdomain = null;
|
|
1763
|
+
}
|
|
1764
|
+
function so(a, e, t, o, n) {
|
|
1765
|
+
const i = (
|
|
1766
|
+
/*@__INLINE__*/
|
|
1767
|
+
oo(o)
|
|
1768
|
+
);
|
|
1769
|
+
return typeof a != "string" || (i.extractHostname ? i.mixedInputs ? n.hostname = ue(a, de(a)) : n.hostname = ue(a, !1) : n.hostname = a, i.detectIp && n.hostname !== null && (n.isIp = no(n.hostname), n.isIp)) ? n : i.validateHostname && i.extractHostname && n.hostname !== null && !de(n.hostname) ? (n.hostname = null, n) : (n.hostname === null || (t(n.hostname, i, n), n.publicSuffix === null) || (n.domain = Zt(n.publicSuffix, n.hostname, i)), n);
|
|
1770
|
+
}
|
|
1771
|
+
function co(a, e, t) {
|
|
1772
|
+
if (!e.allowPrivateDomains && a.length > 3) {
|
|
1773
|
+
const o = a.length - 1, n = a.charCodeAt(o), i = a.charCodeAt(o - 1), r = a.charCodeAt(o - 2), u = a.charCodeAt(o - 3);
|
|
1774
|
+
if (n === 109 && i === 111 && r === 99 && u === 46)
|
|
1775
|
+
return t.isIcann = !0, t.isPrivate = !1, t.publicSuffix = "com", !0;
|
|
1776
|
+
if (n === 103 && i === 114 && r === 111 && u === 46)
|
|
1777
|
+
return t.isIcann = !0, t.isPrivate = !1, t.publicSuffix = "org", !0;
|
|
1778
|
+
if (n === 117 && i === 100 && r === 101 && u === 46)
|
|
1779
|
+
return t.isIcann = !0, t.isPrivate = !1, t.publicSuffix = "edu", !0;
|
|
1780
|
+
if (n === 118 && i === 111 && r === 103 && u === 46)
|
|
1781
|
+
return t.isIcann = !0, t.isPrivate = !1, t.publicSuffix = "gov", !0;
|
|
1782
|
+
if (n === 116 && i === 101 && r === 110 && u === 46)
|
|
1783
|
+
return t.isIcann = !0, t.isPrivate = !1, t.publicSuffix = "net", !0;
|
|
1784
|
+
if (n === 101 && i === 100 && r === 46)
|
|
1785
|
+
return t.isIcann = !0, t.isPrivate = !1, t.publicSuffix = "de", !0;
|
|
1786
|
+
}
|
|
1787
|
+
return !1;
|
|
1788
|
+
}
|
|
1789
|
+
const uo = /* @__PURE__ */ function() {
|
|
1790
|
+
const a = [1, {}], e = [0, { city: a }];
|
|
1791
|
+
return [0, { ck: [0, { www: a }], jp: [0, { kawasaki: e, kitakyushu: e, kobe: e, nagoya: e, sapporo: e, sendai: e, yokohama: e }] }];
|
|
1792
|
+
}(), lo = /* @__PURE__ */ function() {
|
|
1793
|
+
const a = [1, {}], e = [2, {}], t = [1, { com: a, edu: a, gov: a, net: a, org: a }], o = [1, { com: a, edu: a, gov: a, mil: a, net: a, org: a }], n = [0, { "*": e }], i = [2, { s: n }], r = [0, { relay: e }], u = [2, { id: e }], l = [1, { gov: a }], s = [0, { "transfer-webapp": e }], c = [0, { notebook: e, studio: e }], d = [0, { labeling: e, notebook: e, studio: e }], p = [0, { notebook: e }], g = [0, { labeling: e, notebook: e, "notebook-fips": e, studio: e }], v = [0, { notebook: e, "notebook-fips": e, studio: e, "studio-fips": e }], h = [0, { "*": a }], k = [1, { co: e }], f = [0, { objects: e }], x = [2, { nodes: e }], b = [0, { my: e }], m = [0, { s3: e, "s3-accesspoint": e, "s3-website": e }], w = [0, { s3: e, "s3-accesspoint": e }], j = [0, { direct: e }], R = [0, { "webview-assets": e }], S = [0, { vfs: e, "webview-assets": e }], O = [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: m, s3: e, "s3-accesspoint": e, "s3-object-lambda": e, "s3-website": e, "aws-cloud9": R, cloud9: S }], A = [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: w, s3: e, "s3-accesspoint": e, "s3-object-lambda": e, "s3-website": e, "aws-cloud9": R, cloud9: S }], z = [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: m, s3: e, "s3-accesspoint": e, "s3-object-lambda": e, "s3-website": e, "analytics-gateway": e, "aws-cloud9": R, cloud9: S }], V = [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: m, s3: e, "s3-accesspoint": e, "s3-object-lambda": e, "s3-website": e }], na = [0, { s3: e, "s3-accesspoint": e, "s3-accesspoint-fips": e, "s3-fips": e, "s3-website": e }], Pa = [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: na, s3: e, "s3-accesspoint": e, "s3-accesspoint-fips": e, "s3-fips": e, "s3-object-lambda": e, "s3-website": e, "aws-cloud9": R, cloud9: S }], Na = [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: na, s3: e, "s3-accesspoint": e, "s3-accesspoint-fips": e, "s3-deprecated": e, "s3-fips": e, "s3-object-lambda": e, "s3-website": e, "analytics-gateway": e, "aws-cloud9": R, cloud9: S }], pn = [0, { s3: e, "s3-accesspoint": e, "s3-accesspoint-fips": e, "s3-fips": e }], Da = [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: pn, s3: e, "s3-accesspoint": e, "s3-accesspoint-fips": e, "s3-fips": e, "s3-object-lambda": e, "s3-website": e }], _ = [0, { auth: e }], ta = [0, { auth: e, "auth-fips": e }], La = [0, { "auth-fips": e }], Ua = [0, { apps: e }], fa = [0, { paas: e }], Ma = [2, { eu: e }], ba = [0, { app: e }], va = [0, { site: e }], oa = [1, { com: a, edu: a, net: a, org: a }], ya = [0, { j: e }], Fa = [0, { dyn: e }], Ka = [1, { co: a, com: a, edu: a, gov: a, net: a, org: a }], $a = [0, { p: e }], Ba = [0, { user: e }], Ga = [0, { shop: e }], X = [0, { cdn: e }], Va = [2, { raw: n }], wa = [0, { cust: e, reservd: e }], Ha = [0, { cust: e }], xa = [0, { s3: e }], Wa = [1, { biz: a, com: a, edu: a, gov: a, info: a, net: a, org: a }], ja = [0, { ipfs: e }], ia = [1, { framer: e }], Ya = [0, { forgot: e }], I = [1, { gs: a }], Ja = [0, { nes: a }], y = [1, { k12: a, cc: a, lib: a }], ra = [1, { cc: a, lib: a }];
|
|
1794
|
+
return [0, { ac: [1, { com: a, edu: a, gov: a, mil: a, net: a, org: a, drr: e, feedback: e, forms: e }], ad: a, ae: [1, { ac: a, co: a, gov: a, mil: a, net: a, org: a, sch: a }], aero: [1, { airline: a, airport: a, "accident-investigation": a, "accident-prevention": a, aerobatic: a, aeroclub: a, aerodrome: a, agents: a, "air-surveillance": a, "air-traffic-control": a, aircraft: a, airtraffic: a, ambulance: a, association: a, author: a, ballooning: a, broker: a, caa: a, cargo: a, catering: a, certification: a, championship: a, charter: a, civilaviation: a, club: a, conference: a, consultant: a, consulting: a, control: a, council: a, crew: a, design: a, dgca: a, educator: a, emergency: a, engine: a, engineer: a, entertainment: a, equipment: a, exchange: a, express: a, federation: a, flight: a, freight: a, fuel: a, gliding: a, government: a, groundhandling: a, group: a, hanggliding: a, homebuilt: a, insurance: a, journal: a, journalist: a, leasing: a, logistics: a, magazine: a, maintenance: a, marketplace: a, media: a, microlight: a, modelling: a, navigation: a, parachuting: a, paragliding: a, "passenger-association": a, pilot: a, press: a, production: a, recreation: a, repbody: a, res: a, research: a, rotorcraft: a, safety: a, scientist: a, services: a, show: a, skydiving: a, software: a, student: a, taxi: a, trader: a, trading: a, trainer: a, union: a, workinggroup: a, works: a }], af: t, ag: [1, { co: a, com: a, net: a, nom: a, org: a, obj: e }], ai: [1, { com: a, net: a, off: a, org: a, uwu: e, caffeine: e, id: e, framer: e }], al: o, am: [1, { co: a, com: a, commune: a, net: a, org: a, radio: e }], ao: [1, { co: a, ed: a, edu: a, gov: a, gv: a, it: a, og: a, org: a, pb: a }], aq: a, ar: [1, { bet: a, com: a, coop: a, edu: a, gob: a, gov: a, int: a, mil: a, musica: a, mutual: a, net: a, org: a, seg: a, senasa: a, tur: a }], arpa: [1, { e164: a, home: a, "in-addr": a, ip6: a, iris: a, uri: a, urn: a }], as: l, asia: [1, { cloudns: e, daemon: e, dix: e }], at: [1, { ac: [1, { sth: a }], co: a, gv: a, or: a, funkfeuer: [0, { wien: e }], futurecms: [0, { "*": e, ex: n, in: n }], futurehosting: e, futuremailing: e, ortsinfo: [0, { ex: n, kunden: n }], biz: e, info: e, "123webseite": e, priv: e, myspreadshop: e, "12hp": e, "2ix": e, "4lima": e, "lima-city": e }], au: [1, { asn: a, com: [1, { cloudlets: [0, { mel: e }], myspreadshop: e }], edu: [1, { act: a, catholic: a, nsw: [1, { schools: a }], nt: a, qld: a, sa: a, tas: a, vic: a, wa: a }], gov: [1, { qld: a, sa: a, tas: a, vic: a, wa: a }], id: a, net: a, org: a, conf: a, oz: a, act: a, nsw: a, nt: a, qld: a, sa: a, tas: a, vic: a, wa: a }], aw: [1, { com: a }], ax: a, az: [1, { biz: a, co: a, com: a, edu: a, gov: a, info: a, int: a, mil: a, name: a, net: a, org: a, pp: a, pro: a }], ba: [1, { com: a, edu: a, gov: a, mil: a, net: a, org: a, rs: e }], bb: [1, { biz: a, co: a, com: a, edu: a, gov: a, info: a, net: a, org: a, store: a, tv: a }], bd: h, be: [1, { ac: a, cloudns: e, webhosting: e, interhostsolutions: [0, { cloud: e }], kuleuven: [0, { ezproxy: e }], "123website": e, myspreadshop: e, transurl: n }], bf: l, bg: [1, { 0: a, 1: a, 2: a, 3: a, 4: a, 5: a, 6: a, 7: a, 8: a, 9: a, a, b: a, c: a, d: a, e: a, f: a, g: a, h: a, i: a, j: a, k: a, l: a, m: a, n: a, o: a, p: a, q: a, r: a, s: a, t: a, u: a, v: a, w: a, x: a, y: a, z: a, barsy: e }], bh: t, bi: [1, { co: a, com: a, edu: a, or: a, org: a }], biz: [1, { activetrail: e, "cloud-ip": e, cloudns: e, jozi: e, dyndns: e, "for-better": e, "for-more": e, "for-some": e, "for-the": e, selfip: e, webhop: e, orx: e, mmafan: e, myftp: e, "no-ip": e, dscloud: e }], bj: [1, { africa: a, agro: a, architectes: a, assur: a, avocats: a, co: a, com: a, eco: a, econo: a, edu: a, info: a, loisirs: a, money: a, net: a, org: a, ote: a, restaurant: a, resto: a, tourism: a, univ: a }], bm: t, bn: [1, { com: a, edu: a, gov: a, net: a, org: a, co: e }], bo: [1, { com: a, edu: a, gob: a, int: a, mil: a, net: a, org: a, tv: a, web: a, academia: a, agro: a, arte: a, blog: a, bolivia: a, ciencia: a, cooperativa: a, democracia: a, deporte: a, ecologia: a, economia: a, empresa: a, indigena: a, industria: a, info: a, medicina: a, movimiento: a, musica: a, natural: a, nombre: a, noticias: a, patria: a, plurinacional: a, politica: a, profesional: a, pueblo: a, revista: a, salud: a, tecnologia: a, tksat: a, transporte: a, wiki: a }], br: [1, { "9guacu": a, abc: a, adm: a, adv: a, agr: a, aju: a, am: a, anani: a, aparecida: a, app: a, arq: a, art: a, ato: a, b: a, barueri: a, belem: a, bet: a, bhz: a, bib: a, bio: a, blog: a, bmd: a, boavista: a, bsb: a, campinagrande: a, campinas: a, caxias: a, cim: a, cng: a, cnt: a, com: [1, { simplesite: e }], contagem: a, coop: a, coz: a, cri: a, cuiaba: a, curitiba: a, def: a, des: a, det: a, dev: a, ecn: a, eco: a, edu: a, emp: a, enf: a, eng: a, esp: a, etc: a, eti: a, far: a, feira: a, flog: a, floripa: a, fm: a, fnd: a, fortal: a, fot: a, foz: a, fst: a, g12: a, geo: a, ggf: a, goiania: a, gov: [1, { ac: a, al: a, am: a, ap: a, ba: a, ce: a, df: a, es: a, go: a, ma: a, mg: a, ms: a, mt: a, pa: a, pb: a, pe: a, pi: a, pr: a, rj: a, rn: a, ro: a, rr: a, rs: a, sc: a, se: a, sp: a, to: a }], gru: a, imb: a, ind: a, inf: a, jab: a, jampa: a, jdf: a, joinville: a, jor: a, jus: a, leg: [1, { ac: e, al: e, am: e, ap: e, ba: e, ce: e, df: e, es: e, go: e, ma: e, mg: e, ms: e, mt: e, pa: e, pb: e, pe: e, pi: e, pr: e, rj: e, rn: e, ro: e, rr: e, rs: e, sc: e, se: e, sp: e, to: e }], leilao: a, lel: a, log: a, londrina: a, macapa: a, maceio: a, manaus: a, maringa: a, mat: a, med: a, mil: a, morena: a, mp: a, mus: a, natal: a, net: a, niteroi: a, nom: h, not: a, ntr: a, odo: a, ong: a, org: a, osasco: a, palmas: a, poa: a, ppg: a, pro: a, psc: a, psi: a, pvh: a, qsl: a, radio: a, rec: a, recife: a, rep: a, ribeirao: a, rio: a, riobranco: a, riopreto: a, salvador: a, sampa: a, santamaria: a, santoandre: a, saobernardo: a, saogonca: a, seg: a, sjc: a, slg: a, slz: a, sorocaba: a, srv: a, taxi: a, tc: a, tec: a, teo: a, the: a, tmp: a, trd: a, tur: a, tv: a, udi: a, vet: a, vix: a, vlog: a, wiki: a, zlg: a }], bs: [1, { com: a, edu: a, gov: a, net: a, org: a, we: e }], bt: t, bv: a, bw: [1, { ac: a, co: a, gov: a, net: a, org: a }], by: [1, { gov: a, mil: a, com: a, of: a, mediatech: e }], bz: [1, { co: a, com: a, edu: a, gov: a, net: a, org: a, za: e, mydns: e, gsj: e }], ca: [1, { ab: a, bc: a, mb: a, nb: a, nf: a, nl: a, ns: a, nt: a, nu: a, on: a, pe: a, qc: a, sk: a, yk: a, gc: a, barsy: e, awdev: n, co: e, "no-ip": e, onid: e, myspreadshop: e, box: e }], cat: a, cc: [1, { cleverapps: e, cloudns: e, ftpaccess: e, "game-server": e, myphotos: e, scrapping: e, twmail: e, csx: e, fantasyleague: e, spawn: [0, { instances: e }] }], cd: l, cf: a, cg: a, ch: [1, { square7: e, cloudns: e, cloudscale: [0, { cust: e, lpg: f, rma: f }], objectstorage: [0, { lpg: e, rma: e }], flow: [0, { ae: [0, { alp1: e }], appengine: e }], "linkyard-cloud": e, gotdns: e, dnsking: e, "123website": e, myspreadshop: e, firenet: [0, { "*": e, svc: n }], "12hp": e, "2ix": e, "4lima": e, "lima-city": e }], ci: [1, { ac: a, "xn--aroport-bya": a, aéroport: a, asso: a, co: a, com: a, ed: a, edu: a, go: a, gouv: a, int: a, net: a, or: a, org: a }], ck: h, cl: [1, { co: a, gob: a, gov: a, mil: a, cloudns: e }], cm: [1, { co: a, com: a, gov: a, net: a }], cn: [1, { ac: a, com: [1, { amazonaws: [0, { "cn-north-1": [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: m, s3: e, "s3-accesspoint": e, "s3-deprecated": e, "s3-object-lambda": e, "s3-website": e }], "cn-northwest-1": [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: w, s3: e, "s3-accesspoint": e, "s3-object-lambda": e, "s3-website": e }], compute: n, airflow: [0, { "cn-north-1": n, "cn-northwest-1": n }], eb: [0, { "cn-north-1": e, "cn-northwest-1": e }], elb: n }], sagemaker: [0, { "cn-north-1": c, "cn-northwest-1": c }] }], edu: a, gov: a, mil: a, net: a, org: a, "xn--55qx5d": a, 公司: a, "xn--od0alg": a, 網絡: a, "xn--io0a7i": a, 网络: a, ah: a, bj: a, cq: a, fj: a, gd: a, gs: a, gx: a, gz: a, ha: a, hb: a, he: a, hi: a, hk: a, hl: a, hn: a, jl: a, js: a, jx: a, ln: a, mo: a, nm: a, nx: a, qh: a, sc: a, sd: a, sh: [1, { as: e }], sn: a, sx: a, tj: a, tw: a, xj: a, xz: a, yn: a, zj: a, "canva-apps": e, canvasite: b, myqnapcloud: e, quickconnect: j }], co: [1, { com: a, edu: a, gov: a, mil: a, net: a, nom: a, org: a, carrd: e, crd: e, otap: n, leadpages: e, lpages: e, mypi: e, xmit: n, firewalledreplit: u, repl: u, supabase: e }], com: [1, { a2hosted: e, cpserver: e, adobeaemcloud: [2, { dev: n }], africa: e, airkitapps: e, "airkitapps-au": e, aivencloud: e, alibabacloudcs: e, kasserver: e, amazonaws: [0, { "af-south-1": O, "ap-east-1": A, "ap-northeast-1": z, "ap-northeast-2": z, "ap-northeast-3": O, "ap-south-1": z, "ap-south-2": V, "ap-southeast-1": z, "ap-southeast-2": z, "ap-southeast-3": V, "ap-southeast-4": V, "ap-southeast-5": [0, { "execute-api": e, dualstack: m, s3: e, "s3-accesspoint": e, "s3-deprecated": e, "s3-object-lambda": e, "s3-website": e }], "ca-central-1": Pa, "ca-west-1": [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: na, s3: e, "s3-accesspoint": e, "s3-accesspoint-fips": e, "s3-fips": e, "s3-object-lambda": e, "s3-website": e }], "eu-central-1": z, "eu-central-2": V, "eu-north-1": A, "eu-south-1": O, "eu-south-2": V, "eu-west-1": [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: m, s3: e, "s3-accesspoint": e, "s3-deprecated": e, "s3-object-lambda": e, "s3-website": e, "analytics-gateway": e, "aws-cloud9": R, cloud9: S }], "eu-west-2": A, "eu-west-3": O, "il-central-1": [0, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: m, s3: e, "s3-accesspoint": e, "s3-object-lambda": e, "s3-website": e, "aws-cloud9": R, cloud9: [0, { vfs: e }] }], "me-central-1": V, "me-south-1": A, "sa-east-1": O, "us-east-1": [2, { "execute-api": e, "emrappui-prod": e, "emrnotebooks-prod": e, "emrstudio-prod": e, dualstack: na, s3: e, "s3-accesspoint": e, "s3-accesspoint-fips": e, "s3-deprecated": e, "s3-fips": e, "s3-object-lambda": e, "s3-website": e, "analytics-gateway": e, "aws-cloud9": R, cloud9: S }], "us-east-2": Na, "us-gov-east-1": Da, "us-gov-west-1": Da, "us-west-1": Pa, "us-west-2": Na, compute: n, "compute-1": n, airflow: [0, { "af-south-1": n, "ap-east-1": n, "ap-northeast-1": n, "ap-northeast-2": n, "ap-northeast-3": n, "ap-south-1": n, "ap-south-2": n, "ap-southeast-1": n, "ap-southeast-2": n, "ap-southeast-3": n, "ap-southeast-4": n, "ca-central-1": n, "ca-west-1": n, "eu-central-1": n, "eu-central-2": n, "eu-north-1": n, "eu-south-1": n, "eu-south-2": n, "eu-west-1": n, "eu-west-2": n, "eu-west-3": n, "il-central-1": n, "me-central-1": n, "me-south-1": n, "sa-east-1": n, "us-east-1": n, "us-east-2": n, "us-west-1": n, "us-west-2": n }], s3: e, "s3-1": e, "s3-ap-east-1": e, "s3-ap-northeast-1": e, "s3-ap-northeast-2": e, "s3-ap-northeast-3": e, "s3-ap-south-1": e, "s3-ap-southeast-1": e, "s3-ap-southeast-2": e, "s3-ca-central-1": e, "s3-eu-central-1": e, "s3-eu-north-1": e, "s3-eu-west-1": e, "s3-eu-west-2": e, "s3-eu-west-3": e, "s3-external-1": e, "s3-fips-us-gov-east-1": e, "s3-fips-us-gov-west-1": e, "s3-global": [0, { accesspoint: [0, { mrap: e }] }], "s3-me-south-1": e, "s3-sa-east-1": e, "s3-us-east-2": e, "s3-us-gov-east-1": e, "s3-us-gov-west-1": e, "s3-us-west-1": e, "s3-us-west-2": e, "s3-website-ap-northeast-1": e, "s3-website-ap-southeast-1": e, "s3-website-ap-southeast-2": e, "s3-website-eu-west-1": e, "s3-website-sa-east-1": e, "s3-website-us-east-1": e, "s3-website-us-gov-west-1": e, "s3-website-us-west-1": e, "s3-website-us-west-2": e, elb: n }], amazoncognito: [0, { "af-south-1": _, "ap-east-1": _, "ap-northeast-1": _, "ap-northeast-2": _, "ap-northeast-3": _, "ap-south-1": _, "ap-south-2": _, "ap-southeast-1": _, "ap-southeast-2": _, "ap-southeast-3": _, "ap-southeast-4": _, "ap-southeast-5": _, "ca-central-1": _, "ca-west-1": _, "eu-central-1": _, "eu-central-2": _, "eu-north-1": _, "eu-south-1": _, "eu-south-2": _, "eu-west-1": _, "eu-west-2": _, "eu-west-3": _, "il-central-1": _, "me-central-1": _, "me-south-1": _, "sa-east-1": _, "us-east-1": ta, "us-east-2": ta, "us-gov-east-1": La, "us-gov-west-1": La, "us-west-1": ta, "us-west-2": ta }], amplifyapp: e, awsapprunner: n, awsapps: e, elasticbeanstalk: [2, { "af-south-1": e, "ap-east-1": e, "ap-northeast-1": e, "ap-northeast-2": e, "ap-northeast-3": e, "ap-south-1": e, "ap-southeast-1": e, "ap-southeast-2": e, "ap-southeast-3": e, "ca-central-1": e, "eu-central-1": e, "eu-north-1": e, "eu-south-1": e, "eu-west-1": e, "eu-west-2": e, "eu-west-3": e, "il-central-1": e, "me-south-1": e, "sa-east-1": e, "us-east-1": e, "us-east-2": e, "us-gov-east-1": e, "us-gov-west-1": e, "us-west-1": e, "us-west-2": e }], awsglobalaccelerator: e, siiites: e, appspacehosted: e, appspaceusercontent: e, "on-aptible": e, myasustor: e, "balena-devices": e, boutir: e, bplaced: e, cafjs: e, "canva-apps": e, "cdn77-storage": e, br: e, cn: e, de: e, eu: e, jpn: e, mex: e, ru: e, sa: e, uk: e, us: e, za: e, "clever-cloud": [0, { services: n }], dnsabr: e, "ip-ddns": e, jdevcloud: e, wpdevcloud: e, "cf-ipfs": e, "cloudflare-ipfs": e, trycloudflare: e, co: e, devinapps: n, builtwithdark: e, datadetect: [0, { demo: e, instance: e }], dattolocal: e, dattorelay: e, dattoweb: e, mydatto: e, digitaloceanspaces: n, discordsays: e, discordsez: e, drayddns: e, dreamhosters: e, durumis: e, mydrobo: e, blogdns: e, cechire: e, dnsalias: e, dnsdojo: e, doesntexist: e, dontexist: e, doomdns: e, "dyn-o-saur": e, dynalias: e, "dyndns-at-home": e, "dyndns-at-work": e, "dyndns-blog": e, "dyndns-free": e, "dyndns-home": e, "dyndns-ip": e, "dyndns-mail": e, "dyndns-office": e, "dyndns-pics": e, "dyndns-remote": e, "dyndns-server": e, "dyndns-web": e, "dyndns-wiki": e, "dyndns-work": e, "est-a-la-maison": e, "est-a-la-masion": e, "est-le-patron": e, "est-mon-blogueur": e, "from-ak": e, "from-al": e, "from-ar": e, "from-ca": e, "from-ct": e, "from-dc": e, "from-de": e, "from-fl": e, "from-ga": e, "from-hi": e, "from-ia": e, "from-id": e, "from-il": e, "from-in": e, "from-ks": e, "from-ky": e, "from-ma": e, "from-md": e, "from-mi": e, "from-mn": e, "from-mo": e, "from-ms": e, "from-mt": e, "from-nc": e, "from-nd": e, "from-ne": e, "from-nh": e, "from-nj": e, "from-nm": e, "from-nv": e, "from-oh": e, "from-ok": e, "from-or": e, "from-pa": e, "from-pr": e, "from-ri": e, "from-sc": e, "from-sd": e, "from-tn": e, "from-tx": e, "from-ut": e, "from-va": e, "from-vt": e, "from-wa": e, "from-wi": e, "from-wv": e, "from-wy": e, getmyip: e, gotdns: e, "hobby-site": e, homelinux: e, homeunix: e, iamallama: e, "is-a-anarchist": e, "is-a-blogger": e, "is-a-bookkeeper": e, "is-a-bulls-fan": e, "is-a-caterer": e, "is-a-chef": e, "is-a-conservative": e, "is-a-cpa": e, "is-a-cubicle-slave": e, "is-a-democrat": e, "is-a-designer": e, "is-a-doctor": e, "is-a-financialadvisor": e, "is-a-geek": e, "is-a-green": e, "is-a-guru": e, "is-a-hard-worker": e, "is-a-hunter": e, "is-a-landscaper": e, "is-a-lawyer": e, "is-a-liberal": e, "is-a-libertarian": e, "is-a-llama": e, "is-a-musician": e, "is-a-nascarfan": e, "is-a-nurse": e, "is-a-painter": e, "is-a-personaltrainer": e, "is-a-photographer": e, "is-a-player": e, "is-a-republican": e, "is-a-rockstar": e, "is-a-socialist": e, "is-a-student": e, "is-a-teacher": e, "is-a-techie": e, "is-a-therapist": e, "is-an-accountant": e, "is-an-actor": e, "is-an-actress": e, "is-an-anarchist": e, "is-an-artist": e, "is-an-engineer": e, "is-an-entertainer": e, "is-certified": e, "is-gone": e, "is-into-anime": e, "is-into-cars": e, "is-into-cartoons": e, "is-into-games": e, "is-leet": e, "is-not-certified": e, "is-slick": e, "is-uberleet": e, "is-with-theband": e, "isa-geek": e, "isa-hockeynut": e, issmarterthanyou: e, "likes-pie": e, likescandy: e, "neat-url": e, "saves-the-whales": e, selfip: e, "sells-for-less": e, "sells-for-u": e, servebbs: e, "simple-url": e, "space-to-rent": e, "teaches-yoga": e, writesthisblog: e, ddnsfree: e, ddnsgeek: e, giize: e, gleeze: e, kozow: e, loseyourip: e, ooguy: e, theworkpc: e, mytuleap: e, "tuleap-partners": e, encoreapi: e, evennode: [0, { "eu-1": e, "eu-2": e, "eu-3": e, "eu-4": e, "us-1": e, "us-2": e, "us-3": e, "us-4": e }], onfabrica: e, "fastly-edge": e, "fastly-terrarium": e, "fastvps-server": e, mydobiss: e, firebaseapp: e, fldrv: e, forgeblocks: e, framercanvas: e, "freebox-os": e, freeboxos: e, freemyip: e, aliases121: e, gentapps: e, gentlentapis: e, githubusercontent: e, "0emm": n, appspot: [2, { r: n }], blogspot: e, codespot: e, googleapis: e, googlecode: e, pagespeedmobilizer: e, withgoogle: e, withyoutube: e, grayjayleagues: e, hatenablog: e, hatenadiary: e, herokuapp: e, gr: e, smushcdn: e, wphostedmail: e, wpmucdn: e, pixolino: e, "apps-1and1": e, "live-website": e, dopaas: e, "hosted-by-previder": fa, hosteur: [0, { "rag-cloud": e, "rag-cloud-ch": e }], "ik-server": [0, { jcloud: e, "jcloud-ver-jpc": e }], jelastic: [0, { demo: e }], massivegrid: fa, wafaicloud: [0, { jed: e, ryd: e }], webadorsite: e, joyent: [0, { cns: n }], lpusercontent: e, linode: [0, { members: e, nodebalancer: n }], linodeobjects: n, linodeusercontent: [0, { ip: e }], localtonet: e, lovableproject: e, barsycenter: e, barsyonline: e, modelscape: e, mwcloudnonprod: e, polyspace: e, mazeplay: e, miniserver: e, atmeta: e, fbsbx: Ua, meteorapp: Ma, routingthecloud: e, mydbserver: e, hostedpi: e, "mythic-beasts": [0, { caracal: e, customer: e, fentiger: e, lynx: e, ocelot: e, oncilla: e, onza: e, sphinx: e, vs: e, x: e, yali: e }], nospamproxy: [0, { cloud: [2, { o365: e }] }], "4u": e, nfshost: e, "3utilities": e, blogsyte: e, ciscofreak: e, damnserver: e, ddnsking: e, ditchyourip: e, dnsiskinky: e, dynns: e, geekgalaxy: e, "health-carereform": e, homesecuritymac: e, homesecuritypc: e, myactivedirectory: e, mysecuritycamera: e, myvnc: e, "net-freaks": e, onthewifi: e, point2this: e, quicksytes: e, securitytactics: e, servebeer: e, servecounterstrike: e, serveexchange: e, serveftp: e, servegame: e, servehalflife: e, servehttp: e, servehumour: e, serveirc: e, servemp3: e, servep2p: e, servepics: e, servequake: e, servesarcasm: e, stufftoread: e, unusualperson: e, workisboring: e, myiphost: e, observableusercontent: [0, { static: e }], simplesite: e, orsites: e, operaunite: e, "customer-oci": [0, { "*": e, oci: n, ocp: n, ocs: n }], oraclecloudapps: n, oraclegovcloudapps: n, "authgear-staging": e, authgearapps: e, skygearapp: e, outsystemscloud: e, ownprovider: e, pgfog: e, pagexl: e, gotpantheon: e, paywhirl: n, upsunapp: e, "postman-echo": e, prgmr: [0, { xen: e }], "project-study": [0, { dev: e }], pythonanywhere: Ma, qa2: e, "alpha-myqnapcloud": e, "dev-myqnapcloud": e, mycloudnas: e, mynascloud: e, myqnapcloud: e, qualifioapp: e, ladesk: e, qbuser: e, quipelements: n, rackmaze: e, "readthedocs-hosted": e, rhcloud: e, onrender: e, render: ba, "subsc-pay": e, "180r": e, dojin: e, sakuratan: e, sakuraweb: e, x0: e, code: [0, { builder: n, "dev-builder": n, "stg-builder": n }], salesforce: [0, { platform: [0, { "code-builder-stg": [0, { test: [0, { "001": n }] }] }] }], logoip: e, scrysec: e, "firewall-gateway": e, myshopblocks: e, myshopify: e, shopitsite: e, "1kapp": e, appchizi: e, applinzi: e, sinaapp: e, vipsinaapp: e, streamlitapp: e, "try-snowplow": e, "playstation-cloud": e, myspreadshop: e, "w-corp-staticblitz": e, "w-credentialless-staticblitz": e, "w-staticblitz": e, "stackhero-network": e, stdlib: [0, { api: e }], strapiapp: [2, { media: e }], "streak-link": e, streaklinks: e, streakusercontent: e, "temp-dns": e, dsmynas: e, familyds: e, mytabit: e, taveusercontent: e, "tb-hosting": va, reservd: e, thingdustdata: e, "townnews-staging": e, typeform: [0, { pro: e }], hk: e, it: e, "deus-canvas": e, vultrobjects: n, wafflecell: e, hotelwithflight: e, "reserve-online": e, cprapid: e, pleskns: e, remotewd: e, wiardweb: [0, { pages: e }], wixsite: e, wixstudio: e, messwithdns: e, "woltlab-demo": e, wpenginepowered: [2, { js: e }], xnbay: [2, { u2: e, "u2-local": e }], yolasite: e }], coop: a, cr: [1, { ac: a, co: a, ed: a, fi: a, go: a, or: a, sa: a }], cu: [1, { com: a, edu: a, gob: a, inf: a, nat: a, net: a, org: a }], cv: [1, { com: a, edu: a, id: a, int: a, net: a, nome: a, org: a, publ: a }], cw: oa, cx: [1, { gov: a, cloudns: e, ath: e, info: e, assessments: e, calculators: e, funnels: e, paynow: e, quizzes: e, researched: e, tests: e }], cy: [1, { ac: a, biz: a, com: [1, { scaleforce: ya }], ekloges: a, gov: a, ltd: a, mil: a, net: a, org: a, press: a, pro: a, tm: a }], cz: [1, { contentproxy9: [0, { rsc: e }], realm: e, e4: e, co: e, metacentrum: [0, { cloud: n, custom: e }], muni: [0, { cloud: [0, { flt: e, usr: e }] }] }], de: [1, { bplaced: e, square7: e, com: e, cosidns: Fa, dnsupdater: e, "dynamisches-dns": e, "internet-dns": e, "l-o-g-i-n": e, ddnss: [2, { dyn: e, dyndns: e }], "dyn-ip24": e, dyndns1: e, "home-webserver": [2, { dyn: e }], "myhome-server": e, dnshome: e, fuettertdasnetz: e, isteingeek: e, istmein: e, lebtimnetz: e, leitungsen: e, traeumtgerade: e, frusky: n, goip: e, "xn--gnstigbestellen-zvb": e, günstigbestellen: e, "xn--gnstigliefern-wob": e, günstigliefern: e, "hs-heilbronn": [0, { it: [0, { pages: e, "pages-research": e }] }], "dyn-berlin": e, "in-berlin": e, "in-brb": e, "in-butter": e, "in-dsl": e, "in-vpn": e, iservschule: e, "mein-iserv": e, schuldock: e, schulplattform: e, schulserver: e, "test-iserv": e, keymachine: e, "git-repos": e, "lcube-server": e, "svn-repos": e, barsy: e, webspaceconfig: e, "123webseite": e, rub: e, "ruhr-uni-bochum": [2, { noc: [0, { io: e }] }], logoip: e, "firewall-gateway": e, "my-gateway": e, "my-router": e, spdns: e, speedpartner: [0, { customer: e }], myspreadshop: e, "taifun-dns": e, "12hp": e, "2ix": e, "4lima": e, "lima-city": e, "dd-dns": e, "dray-dns": e, draydns: e, "dyn-vpn": e, dynvpn: e, "mein-vigor": e, "my-vigor": e, "my-wan": e, "syno-ds": e, "synology-diskstation": e, "synology-ds": e, uberspace: n, "virtual-user": e, virtualuser: e, "community-pro": e, diskussionsbereich: e }], dj: a, dk: [1, { biz: e, co: e, firm: e, reg: e, store: e, "123hjemmeside": e, myspreadshop: e }], dm: Ka, do: [1, { art: a, com: a, edu: a, gob: a, gov: a, mil: a, net: a, org: a, sld: a, web: a }], dz: [1, { art: a, asso: a, com: a, edu: a, gov: a, net: a, org: a, pol: a, soc: a, tm: a }], ec: [1, { abg: a, adm: a, agron: a, arqt: a, art: a, bar: a, chef: a, com: a, cont: a, cpa: a, cue: a, dent: a, dgn: a, disco: a, doc: a, edu: a, eng: a, esm: a, fin: a, fot: a, gal: a, gob: a, gov: a, gye: a, ibr: a, info: a, k12: a, lat: a, loj: a, med: a, mil: a, mktg: a, mon: a, net: a, ntr: a, odont: a, org: a, pro: a, prof: a, psic: a, psiq: a, pub: a, rio: a, rrpp: a, sal: a, tech: a, tul: a, tur: a, uio: a, vet: a, xxx: a, base: e, official: e }], edu: [1, { rit: [0, { "git-pages": e }] }], ee: [1, { aip: a, com: a, edu: a, fie: a, gov: a, lib: a, med: a, org: a, pri: a, riik: a }], eg: [1, { ac: a, com: a, edu: a, eun: a, gov: a, info: a, me: a, mil: a, name: a, net: a, org: a, sci: a, sport: a, tv: a }], er: h, es: [1, { com: a, edu: a, gob: a, nom: a, org: a, "123miweb": e, myspreadshop: e }], et: [1, { biz: a, com: a, edu: a, gov: a, info: a, name: a, net: a, org: a }], eu: [1, { airkitapps: e, cloudns: e, dogado: [0, { jelastic: e }], barsy: e, spdns: e, transurl: n, diskstation: e }], fi: [1, { aland: a, dy: e, "xn--hkkinen-5wa": e, häkkinen: e, iki: e, cloudplatform: [0, { fi: e }], datacenter: [0, { demo: e, paas: e }], kapsi: e, "123kotisivu": e, myspreadshop: e }], fj: [1, { ac: a, biz: a, com: a, gov: a, info: a, mil: a, name: a, net: a, org: a, pro: a }], fk: h, fm: [1, { com: a, edu: a, net: a, org: a, radio: e, user: n }], fo: a, fr: [1, { asso: a, com: a, gouv: a, nom: a, prd: a, tm: a, avoues: a, cci: a, greta: a, "huissier-justice": a, "en-root": e, "fbx-os": e, fbxos: e, "freebox-os": e, freeboxos: e, goupile: e, "123siteweb": e, "on-web": e, "chirurgiens-dentistes-en-france": e, dedibox: e, aeroport: e, avocat: e, chambagri: e, "chirurgiens-dentistes": e, "experts-comptables": e, medecin: e, notaires: e, pharmacien: e, port: e, veterinaire: e, myspreadshop: e, ynh: e }], ga: a, gb: a, gd: [1, { edu: a, gov: a }], ge: [1, { com: a, edu: a, gov: a, net: a, org: a, pvt: a, school: a }], gf: a, gg: [1, { co: a, net: a, org: a, botdash: e, kaas: e, stackit: e, panel: [2, { daemon: e }] }], gh: [1, { biz: a, com: a, edu: a, gov: a, mil: a, net: a, org: a }], gi: [1, { com: a, edu: a, gov: a, ltd: a, mod: a, org: a }], gl: [1, { co: a, com: a, edu: a, net: a, org: a, biz: e }], gm: a, gn: [1, { ac: a, com: a, edu: a, gov: a, net: a, org: a }], gov: a, gp: [1, { asso: a, com: a, edu: a, mobi: a, net: a, org: a }], gq: a, gr: [1, { com: a, edu: a, gov: a, net: a, org: a, barsy: e, simplesite: e }], gs: a, gt: [1, { com: a, edu: a, gob: a, ind: a, mil: a, net: a, org: a }], gu: [1, { com: a, edu: a, gov: a, guam: a, info: a, net: a, org: a, web: a }], gw: a, gy: Ka, hk: [1, { com: a, edu: a, gov: a, idv: a, net: a, org: a, "xn--ciqpn": a, 个人: a, "xn--gmqw5a": a, 個人: a, "xn--55qx5d": a, 公司: a, "xn--mxtq1m": a, 政府: a, "xn--lcvr32d": a, 敎育: a, "xn--wcvs22d": a, 教育: a, "xn--gmq050i": a, 箇人: a, "xn--uc0atv": a, 組織: a, "xn--uc0ay4a": a, 組织: a, "xn--od0alg": a, 網絡: a, "xn--zf0avx": a, 網络: a, "xn--mk0axi": a, 组織: a, "xn--tn0ag": a, 组织: a, "xn--od0aq3b": a, 网絡: a, "xn--io0a7i": a, 网络: a, inc: e, ltd: e }], hm: a, hn: [1, { com: a, edu: a, gob: a, mil: a, net: a, org: a }], hr: [1, { com: a, from: a, iz: a, name: a, brendly: Ga }], ht: [1, { adult: a, art: a, asso: a, com: a, coop: a, edu: a, firm: a, gouv: a, info: a, med: a, net: a, org: a, perso: a, pol: a, pro: a, rel: a, shop: a, rt: e }], hu: [1, { 2e3: a, agrar: a, bolt: a, casino: a, city: a, co: a, erotica: a, erotika: a, film: a, forum: a, games: a, hotel: a, info: a, ingatlan: a, jogasz: a, konyvelo: a, lakas: a, media: a, news: a, org: a, priv: a, reklam: a, sex: a, shop: a, sport: a, suli: a, szex: a, tm: a, tozsde: a, utazas: a, video: a }], id: [1, { ac: a, biz: a, co: a, desa: a, go: a, kop: a, mil: a, my: a, net: a, or: a, ponpes: a, sch: a, web: a, zone: e }], ie: [1, { gov: a, myspreadshop: e }], il: [1, { ac: a, co: [1, { ravpage: e, mytabit: e, tabitorder: e }], gov: a, idf: a, k12: a, muni: a, net: a, org: a }], "xn--4dbrk0ce": [1, { "xn--4dbgdty6c": a, "xn--5dbhl8d": a, "xn--8dbq2a": a, "xn--hebda8b": a }], ישראל: [1, { אקדמיה: a, ישוב: a, צהל: a, ממשל: a }], im: [1, { ac: a, co: [1, { ltd: a, plc: a }], com: a, net: a, org: a, tt: a, tv: a }], in: [1, { "5g": a, "6g": a, ac: a, ai: a, am: a, bihar: a, biz: a, business: a, ca: a, cn: a, co: a, com: a, coop: a, cs: a, delhi: a, dr: a, edu: a, er: a, firm: a, gen: a, gov: a, gujarat: a, ind: a, info: a, int: a, internet: a, io: a, me: a, mil: a, net: a, nic: a, org: a, pg: a, post: a, pro: a, res: a, travel: a, tv: a, uk: a, up: a, us: a, cloudns: e, barsy: e, web: e, supabase: e }], info: [1, { cloudns: e, "dynamic-dns": e, "barrel-of-knowledge": e, "barrell-of-knowledge": e, dyndns: e, "for-our": e, "groks-the": e, "groks-this": e, "here-for-more": e, knowsitall: e, selfip: e, webhop: e, barsy: e, mayfirst: e, mittwald: e, mittwaldserver: e, typo3server: e, dvrcam: e, ilovecollege: e, "no-ip": e, forumz: e, nsupdate: e, dnsupdate: e, "v-info": e }], int: [1, { eu: a }], io: [1, { 2038: e, co: a, com: a, edu: a, gov: a, mil: a, net: a, nom: a, org: a, "on-acorn": n, myaddr: e, apigee: e, "b-data": e, beagleboard: e, bitbucket: e, bluebite: e, boxfuse: e, brave: i, browsersafetymark: e, bubble: X, bubbleapps: e, bigv: [0, { uk0: e }], cleverapps: e, cloudbeesusercontent: e, dappnode: [0, { dyndns: e }], darklang: e, definima: e, dedyn: e, "icp-api": e, icp0: Va, icp1: Va, qzz: e, "fh-muenster": e, shw: e, forgerock: [0, { id: e }], github: e, gitlab: e, lolipop: e, "hasura-app": e, hostyhosting: e, hypernode: e, moonscale: n, beebyte: fa, beebyteapp: [0, { sekd1: e }], jele: e, webthings: e, loginline: e, barsy: e, azurecontainer: n, ngrok: [2, { ap: e, au: e, eu: e, in: e, jp: e, sa: e, us: e }], nodeart: [0, { stage: e }], pantheonsite: e, pstmn: [2, { mock: e }], protonet: e, qcx: [2, { sys: n }], qoto: e, vaporcloud: e, myrdbx: e, "rb-hosting": va, "on-k3s": n, "on-rio": n, readthedocs: e, resindevice: e, resinstaging: [0, { devices: e }], hzc: e, sandcats: e, scrypted: [0, { client: e }], "mo-siemens": e, lair: Ua, stolos: n, musician: e, utwente: e, edugit: e, telebit: e, thingdust: [0, { dev: wa, disrec: wa, prod: Ha, testing: wa }], tickets: e, webflow: e, webflowtest: e, editorx: e, wixstudio: e, basicserver: e, virtualserver: e }], iq: o, ir: [1, { ac: a, co: a, gov: a, id: a, net: a, org: a, sch: a, "xn--mgba3a4f16a": a, ایران: a, "xn--mgba3a4fra": a, ايران: a, arvanedge: e }], is: a, it: [1, { edu: a, gov: a, abr: a, abruzzo: a, "aosta-valley": a, aostavalley: a, bas: a, basilicata: a, cal: a, calabria: a, cam: a, campania: a, "emilia-romagna": a, emiliaromagna: a, emr: a, "friuli-v-giulia": a, "friuli-ve-giulia": a, "friuli-vegiulia": a, "friuli-venezia-giulia": a, "friuli-veneziagiulia": a, "friuli-vgiulia": a, "friuliv-giulia": a, "friulive-giulia": a, friulivegiulia: a, "friulivenezia-giulia": a, friuliveneziagiulia: a, friulivgiulia: a, fvg: a, laz: a, lazio: a, lig: a, liguria: a, lom: a, lombardia: a, lombardy: a, lucania: a, mar: a, marche: a, mol: a, molise: a, piedmont: a, piemonte: a, pmn: a, pug: a, puglia: a, sar: a, sardegna: a, sardinia: a, sic: a, sicilia: a, sicily: a, taa: a, tos: a, toscana: a, "trentin-sud-tirol": a, "xn--trentin-sd-tirol-rzb": a, "trentin-süd-tirol": a, "trentin-sudtirol": a, "xn--trentin-sdtirol-7vb": a, "trentin-südtirol": a, "trentin-sued-tirol": a, "trentin-suedtirol": a, trentino: a, "trentino-a-adige": a, "trentino-aadige": a, "trentino-alto-adige": a, "trentino-altoadige": a, "trentino-s-tirol": a, "trentino-stirol": a, "trentino-sud-tirol": a, "xn--trentino-sd-tirol-c3b": a, "trentino-süd-tirol": a, "trentino-sudtirol": a, "xn--trentino-sdtirol-szb": a, "trentino-südtirol": a, "trentino-sued-tirol": a, "trentino-suedtirol": a, "trentinoa-adige": a, trentinoaadige: a, "trentinoalto-adige": a, trentinoaltoadige: a, "trentinos-tirol": a, trentinostirol: a, "trentinosud-tirol": a, "xn--trentinosd-tirol-rzb": a, "trentinosüd-tirol": a, trentinosudtirol: a, "xn--trentinosdtirol-7vb": a, trentinosüdtirol: a, "trentinosued-tirol": a, trentinosuedtirol: a, "trentinsud-tirol": a, "xn--trentinsd-tirol-6vb": a, "trentinsüd-tirol": a, trentinsudtirol: a, "xn--trentinsdtirol-nsb": a, trentinsüdtirol: a, "trentinsued-tirol": a, trentinsuedtirol: a, tuscany: a, umb: a, umbria: a, "val-d-aosta": a, "val-daosta": a, "vald-aosta": a, valdaosta: a, "valle-aosta": a, "valle-d-aosta": a, "valle-daosta": a, valleaosta: a, "valled-aosta": a, valledaosta: a, "vallee-aoste": a, "xn--valle-aoste-ebb": a, "vallée-aoste": a, "vallee-d-aoste": a, "xn--valle-d-aoste-ehb": a, "vallée-d-aoste": a, valleeaoste: a, "xn--valleaoste-e7a": a, valléeaoste: a, valleedaoste: a, "xn--valledaoste-ebb": a, valléedaoste: a, vao: a, vda: a, ven: a, veneto: a, ag: a, agrigento: a, al: a, alessandria: a, "alto-adige": a, altoadige: a, an: a, ancona: a, "andria-barletta-trani": a, "andria-trani-barletta": a, andriabarlettatrani: a, andriatranibarletta: a, ao: a, aosta: a, aoste: a, ap: a, aq: a, aquila: a, ar: a, arezzo: a, "ascoli-piceno": a, ascolipiceno: a, asti: a, at: a, av: a, avellino: a, ba: a, balsan: a, "balsan-sudtirol": a, "xn--balsan-sdtirol-nsb": a, "balsan-südtirol": a, "balsan-suedtirol": a, bari: a, "barletta-trani-andria": a, barlettatraniandria: a, belluno: a, benevento: a, bergamo: a, bg: a, bi: a, biella: a, bl: a, bn: a, bo: a, bologna: a, bolzano: a, "bolzano-altoadige": a, bozen: a, "bozen-sudtirol": a, "xn--bozen-sdtirol-2ob": a, "bozen-südtirol": a, "bozen-suedtirol": a, br: a, brescia: a, brindisi: a, bs: a, bt: a, bulsan: a, "bulsan-sudtirol": a, "xn--bulsan-sdtirol-nsb": a, "bulsan-südtirol": a, "bulsan-suedtirol": a, bz: a, ca: a, cagliari: a, caltanissetta: a, "campidano-medio": a, campidanomedio: a, campobasso: a, "carbonia-iglesias": a, carboniaiglesias: a, "carrara-massa": a, carraramassa: a, caserta: a, catania: a, catanzaro: a, cb: a, ce: a, "cesena-forli": a, "xn--cesena-forl-mcb": a, "cesena-forlì": a, cesenaforli: a, "xn--cesenaforl-i8a": a, cesenaforlì: a, ch: a, chieti: a, ci: a, cl: a, cn: a, co: a, como: a, cosenza: a, cr: a, cremona: a, crotone: a, cs: a, ct: a, cuneo: a, cz: a, "dell-ogliastra": a, dellogliastra: a, en: a, enna: a, fc: a, fe: a, fermo: a, ferrara: a, fg: a, fi: a, firenze: a, florence: a, fm: a, foggia: a, "forli-cesena": a, "xn--forl-cesena-fcb": a, "forlì-cesena": a, forlicesena: a, "xn--forlcesena-c8a": a, forlìcesena: a, fr: a, frosinone: a, ge: a, genoa: a, genova: a, go: a, gorizia: a, gr: a, grosseto: a, "iglesias-carbonia": a, iglesiascarbonia: a, im: a, imperia: a, is: a, isernia: a, kr: a, "la-spezia": a, laquila: a, laspezia: a, latina: a, lc: a, le: a, lecce: a, lecco: a, li: a, livorno: a, lo: a, lodi: a, lt: a, lu: a, lucca: a, macerata: a, mantova: a, "massa-carrara": a, massacarrara: a, matera: a, mb: a, mc: a, me: a, "medio-campidano": a, mediocampidano: a, messina: a, mi: a, milan: a, milano: a, mn: a, mo: a, modena: a, monza: a, "monza-brianza": a, "monza-e-della-brianza": a, monzabrianza: a, monzaebrianza: a, monzaedellabrianza: a, ms: a, mt: a, na: a, naples: a, napoli: a, no: a, novara: a, nu: a, nuoro: a, og: a, ogliastra: a, "olbia-tempio": a, olbiatempio: a, or: a, oristano: a, ot: a, pa: a, padova: a, padua: a, palermo: a, parma: a, pavia: a, pc: a, pd: a, pe: a, perugia: a, "pesaro-urbino": a, pesarourbino: a, pescara: a, pg: a, pi: a, piacenza: a, pisa: a, pistoia: a, pn: a, po: a, pordenone: a, potenza: a, pr: a, prato: a, pt: a, pu: a, pv: a, pz: a, ra: a, ragusa: a, ravenna: a, rc: a, re: a, "reggio-calabria": a, "reggio-emilia": a, reggiocalabria: a, reggioemilia: a, rg: a, ri: a, rieti: a, rimini: a, rm: a, rn: a, ro: a, roma: a, rome: a, rovigo: a, sa: a, salerno: a, sassari: a, savona: a, si: a, siena: a, siracusa: a, so: a, sondrio: a, sp: a, sr: a, ss: a, "xn--sdtirol-n2a": a, südtirol: a, suedtirol: a, sv: a, ta: a, taranto: a, te: a, "tempio-olbia": a, tempioolbia: a, teramo: a, terni: a, tn: a, to: a, torino: a, tp: a, tr: a, "trani-andria-barletta": a, "trani-barletta-andria": a, traniandriabarletta: a, tranibarlettaandria: a, trapani: a, trento: a, treviso: a, trieste: a, ts: a, turin: a, tv: a, ud: a, udine: a, "urbino-pesaro": a, urbinopesaro: a, va: a, varese: a, vb: a, vc: a, ve: a, venezia: a, venice: a, verbania: a, vercelli: a, verona: a, vi: a, "vibo-valentia": a, vibovalentia: a, vicenza: a, viterbo: a, vr: a, vs: a, vt: a, vv: a, "12chars": e, ibxos: e, iliadboxos: e, neen: [0, { jc: e }], "123homepage": e, "16-b": e, "32-b": e, "64-b": e, myspreadshop: e, syncloud: e }], je: [1, { co: a, net: a, org: a, of: e }], jm: h, jo: [1, { agri: a, ai: a, com: a, edu: a, eng: a, fm: a, gov: a, mil: a, net: a, org: a, per: a, phd: a, sch: a, tv: a }], jobs: a, jp: [1, { ac: a, ad: a, co: a, ed: a, go: a, gr: a, lg: a, ne: [1, { aseinet: Ba, gehirn: e, ivory: e, "mail-box": e, mints: e, mokuren: e, opal: e, sakura: e, sumomo: e, topaz: e }], or: a, aichi: [1, { aisai: a, ama: a, anjo: a, asuke: a, chiryu: a, chita: a, fuso: a, gamagori: a, handa: a, hazu: a, hekinan: a, higashiura: a, ichinomiya: a, inazawa: a, inuyama: a, isshiki: a, iwakura: a, kanie: a, kariya: a, kasugai: a, kira: a, kiyosu: a, komaki: a, konan: a, kota: a, mihama: a, miyoshi: a, nishio: a, nisshin: a, obu: a, oguchi: a, oharu: a, okazaki: a, owariasahi: a, seto: a, shikatsu: a, shinshiro: a, shitara: a, tahara: a, takahama: a, tobishima: a, toei: a, togo: a, tokai: a, tokoname: a, toyoake: a, toyohashi: a, toyokawa: a, toyone: a, toyota: a, tsushima: a, yatomi: a }], akita: [1, { akita: a, daisen: a, fujisato: a, gojome: a, hachirogata: a, happou: a, higashinaruse: a, honjo: a, honjyo: a, ikawa: a, kamikoani: a, kamioka: a, katagami: a, kazuno: a, kitaakita: a, kosaka: a, kyowa: a, misato: a, mitane: a, moriyoshi: a, nikaho: a, noshiro: a, odate: a, oga: a, ogata: a, semboku: a, yokote: a, yurihonjo: a }], aomori: [1, { aomori: a, gonohe: a, hachinohe: a, hashikami: a, hiranai: a, hirosaki: a, itayanagi: a, kuroishi: a, misawa: a, mutsu: a, nakadomari: a, noheji: a, oirase: a, owani: a, rokunohe: a, sannohe: a, shichinohe: a, shingo: a, takko: a, towada: a, tsugaru: a, tsuruta: a }], chiba: [1, { abiko: a, asahi: a, chonan: a, chosei: a, choshi: a, chuo: a, funabashi: a, futtsu: a, hanamigawa: a, ichihara: a, ichikawa: a, ichinomiya: a, inzai: a, isumi: a, kamagaya: a, kamogawa: a, kashiwa: a, katori: a, katsuura: a, kimitsu: a, kisarazu: a, kozaki: a, kujukuri: a, kyonan: a, matsudo: a, midori: a, mihama: a, minamiboso: a, mobara: a, mutsuzawa: a, nagara: a, nagareyama: a, narashino: a, narita: a, noda: a, oamishirasato: a, omigawa: a, onjuku: a, otaki: a, sakae: a, sakura: a, shimofusa: a, shirako: a, shiroi: a, shisui: a, sodegaura: a, sosa: a, tako: a, tateyama: a, togane: a, tohnosho: a, tomisato: a, urayasu: a, yachimata: a, yachiyo: a, yokaichiba: a, yokoshibahikari: a, yotsukaido: a }], ehime: [1, { ainan: a, honai: a, ikata: a, imabari: a, iyo: a, kamijima: a, kihoku: a, kumakogen: a, masaki: a, matsuno: a, matsuyama: a, namikata: a, niihama: a, ozu: a, saijo: a, seiyo: a, shikokuchuo: a, tobe: a, toon: a, uchiko: a, uwajima: a, yawatahama: a }], fukui: [1, { echizen: a, eiheiji: a, fukui: a, ikeda: a, katsuyama: a, mihama: a, minamiechizen: a, obama: a, ohi: a, ono: a, sabae: a, sakai: a, takahama: a, tsuruga: a, wakasa: a }], fukuoka: [1, { ashiya: a, buzen: a, chikugo: a, chikuho: a, chikujo: a, chikushino: a, chikuzen: a, chuo: a, dazaifu: a, fukuchi: a, hakata: a, higashi: a, hirokawa: a, hisayama: a, iizuka: a, inatsuki: a, kaho: a, kasuga: a, kasuya: a, kawara: a, keisen: a, koga: a, kurate: a, kurogi: a, kurume: a, minami: a, miyako: a, miyama: a, miyawaka: a, mizumaki: a, munakata: a, nakagawa: a, nakama: a, nishi: a, nogata: a, ogori: a, okagaki: a, okawa: a, oki: a, omuta: a, onga: a, onojo: a, oto: a, saigawa: a, sasaguri: a, shingu: a, shinyoshitomi: a, shonai: a, soeda: a, sue: a, tachiarai: a, tagawa: a, takata: a, toho: a, toyotsu: a, tsuiki: a, ukiha: a, umi: a, usui: a, yamada: a, yame: a, yanagawa: a, yukuhashi: a }], fukushima: [1, { aizubange: a, aizumisato: a, aizuwakamatsu: a, asakawa: a, bandai: a, date: a, fukushima: a, furudono: a, futaba: a, hanawa: a, higashi: a, hirata: a, hirono: a, iitate: a, inawashiro: a, ishikawa: a, iwaki: a, izumizaki: a, kagamiishi: a, kaneyama: a, kawamata: a, kitakata: a, kitashiobara: a, koori: a, koriyama: a, kunimi: a, miharu: a, mishima: a, namie: a, nango: a, nishiaizu: a, nishigo: a, okuma: a, omotego: a, ono: a, otama: a, samegawa: a, shimogo: a, shirakawa: a, showa: a, soma: a, sukagawa: a, taishin: a, tamakawa: a, tanagura: a, tenei: a, yabuki: a, yamato: a, yamatsuri: a, yanaizu: a, yugawa: a }], gifu: [1, { anpachi: a, ena: a, gifu: a, ginan: a, godo: a, gujo: a, hashima: a, hichiso: a, hida: a, higashishirakawa: a, ibigawa: a, ikeda: a, kakamigahara: a, kani: a, kasahara: a, kasamatsu: a, kawaue: a, kitagata: a, mino: a, minokamo: a, mitake: a, mizunami: a, motosu: a, nakatsugawa: a, ogaki: a, sakahogi: a, seki: a, sekigahara: a, shirakawa: a, tajimi: a, takayama: a, tarui: a, toki: a, tomika: a, wanouchi: a, yamagata: a, yaotsu: a, yoro: a }], gunma: [1, { annaka: a, chiyoda: a, fujioka: a, higashiagatsuma: a, isesaki: a, itakura: a, kanna: a, kanra: a, katashina: a, kawaba: a, kiryu: a, kusatsu: a, maebashi: a, meiwa: a, midori: a, minakami: a, naganohara: a, nakanojo: a, nanmoku: a, numata: a, oizumi: a, ora: a, ota: a, shibukawa: a, shimonita: a, shinto: a, showa: a, takasaki: a, takayama: a, tamamura: a, tatebayashi: a, tomioka: a, tsukiyono: a, tsumagoi: a, ueno: a, yoshioka: a }], hiroshima: [1, { asaminami: a, daiwa: a, etajima: a, fuchu: a, fukuyama: a, hatsukaichi: a, higashihiroshima: a, hongo: a, jinsekikogen: a, kaita: a, kui: a, kumano: a, kure: a, mihara: a, miyoshi: a, naka: a, onomichi: a, osakikamijima: a, otake: a, saka: a, sera: a, seranishi: a, shinichi: a, shobara: a, takehara: a }], hokkaido: [1, { abashiri: a, abira: a, aibetsu: a, akabira: a, akkeshi: a, asahikawa: a, ashibetsu: a, ashoro: a, assabu: a, atsuma: a, bibai: a, biei: a, bifuka: a, bihoro: a, biratori: a, chippubetsu: a, chitose: a, date: a, ebetsu: a, embetsu: a, eniwa: a, erimo: a, esan: a, esashi: a, fukagawa: a, fukushima: a, furano: a, furubira: a, haboro: a, hakodate: a, hamatonbetsu: a, hidaka: a, higashikagura: a, higashikawa: a, hiroo: a, hokuryu: a, hokuto: a, honbetsu: a, horokanai: a, horonobe: a, ikeda: a, imakane: a, ishikari: a, iwamizawa: a, iwanai: a, kamifurano: a, kamikawa: a, kamishihoro: a, kamisunagawa: a, kamoenai: a, kayabe: a, kembuchi: a, kikonai: a, kimobetsu: a, kitahiroshima: a, kitami: a, kiyosato: a, koshimizu: a, kunneppu: a, kuriyama: a, kuromatsunai: a, kushiro: a, kutchan: a, kyowa: a, mashike: a, matsumae: a, mikasa: a, minamifurano: a, mombetsu: a, moseushi: a, mukawa: a, muroran: a, naie: a, nakagawa: a, nakasatsunai: a, nakatombetsu: a, nanae: a, nanporo: a, nayoro: a, nemuro: a, niikappu: a, niki: a, nishiokoppe: a, noboribetsu: a, numata: a, obihiro: a, obira: a, oketo: a, okoppe: a, otaru: a, otobe: a, otofuke: a, otoineppu: a, oumu: a, ozora: a, pippu: a, rankoshi: a, rebun: a, rikubetsu: a, rishiri: a, rishirifuji: a, saroma: a, sarufutsu: a, shakotan: a, shari: a, shibecha: a, shibetsu: a, shikabe: a, shikaoi: a, shimamaki: a, shimizu: a, shimokawa: a, shinshinotsu: a, shintoku: a, shiranuka: a, shiraoi: a, shiriuchi: a, sobetsu: a, sunagawa: a, taiki: a, takasu: a, takikawa: a, takinoue: a, teshikaga: a, tobetsu: a, tohma: a, tomakomai: a, tomari: a, toya: a, toyako: a, toyotomi: a, toyoura: a, tsubetsu: a, tsukigata: a, urakawa: a, urausu: a, uryu: a, utashinai: a, wakkanai: a, wassamu: a, yakumo: a, yoichi: a }], hyogo: [1, { aioi: a, akashi: a, ako: a, amagasaki: a, aogaki: a, asago: a, ashiya: a, awaji: a, fukusaki: a, goshiki: a, harima: a, himeji: a, ichikawa: a, inagawa: a, itami: a, kakogawa: a, kamigori: a, kamikawa: a, kasai: a, kasuga: a, kawanishi: a, miki: a, minamiawaji: a, nishinomiya: a, nishiwaki: a, ono: a, sanda: a, sannan: a, sasayama: a, sayo: a, shingu: a, shinonsen: a, shiso: a, sumoto: a, taishi: a, taka: a, takarazuka: a, takasago: a, takino: a, tamba: a, tatsuno: a, toyooka: a, yabu: a, yashiro: a, yoka: a, yokawa: a }], ibaraki: [1, { ami: a, asahi: a, bando: a, chikusei: a, daigo: a, fujishiro: a, hitachi: a, hitachinaka: a, hitachiomiya: a, hitachiota: a, ibaraki: a, ina: a, inashiki: a, itako: a, iwama: a, joso: a, kamisu: a, kasama: a, kashima: a, kasumigaura: a, koga: a, miho: a, mito: a, moriya: a, naka: a, namegata: a, oarai: a, ogawa: a, omitama: a, ryugasaki: a, sakai: a, sakuragawa: a, shimodate: a, shimotsuma: a, shirosato: a, sowa: a, suifu: a, takahagi: a, tamatsukuri: a, tokai: a, tomobe: a, tone: a, toride: a, tsuchiura: a, tsukuba: a, uchihara: a, ushiku: a, yachiyo: a, yamagata: a, yawara: a, yuki: a }], ishikawa: [1, { anamizu: a, hakui: a, hakusan: a, kaga: a, kahoku: a, kanazawa: a, kawakita: a, komatsu: a, nakanoto: a, nanao: a, nomi: a, nonoichi: a, noto: a, shika: a, suzu: a, tsubata: a, tsurugi: a, uchinada: a, wajima: a }], iwate: [1, { fudai: a, fujisawa: a, hanamaki: a, hiraizumi: a, hirono: a, ichinohe: a, ichinoseki: a, iwaizumi: a, iwate: a, joboji: a, kamaishi: a, kanegasaki: a, karumai: a, kawai: a, kitakami: a, kuji: a, kunohe: a, kuzumaki: a, miyako: a, mizusawa: a, morioka: a, ninohe: a, noda: a, ofunato: a, oshu: a, otsuchi: a, rikuzentakata: a, shiwa: a, shizukuishi: a, sumita: a, tanohata: a, tono: a, yahaba: a, yamada: a }], kagawa: [1, { ayagawa: a, higashikagawa: a, kanonji: a, kotohira: a, manno: a, marugame: a, mitoyo: a, naoshima: a, sanuki: a, tadotsu: a, takamatsu: a, tonosho: a, uchinomi: a, utazu: a, zentsuji: a }], kagoshima: [1, { akune: a, amami: a, hioki: a, isa: a, isen: a, izumi: a, kagoshima: a, kanoya: a, kawanabe: a, kinko: a, kouyama: a, makurazaki: a, matsumoto: a, minamitane: a, nakatane: a, nishinoomote: a, satsumasendai: a, soo: a, tarumizu: a, yusui: a }], kanagawa: [1, { aikawa: a, atsugi: a, ayase: a, chigasaki: a, ebina: a, fujisawa: a, hadano: a, hakone: a, hiratsuka: a, isehara: a, kaisei: a, kamakura: a, kiyokawa: a, matsuda: a, minamiashigara: a, miura: a, nakai: a, ninomiya: a, odawara: a, oi: a, oiso: a, sagamihara: a, samukawa: a, tsukui: a, yamakita: a, yamato: a, yokosuka: a, yugawara: a, zama: a, zushi: a }], kochi: [1, { aki: a, geisei: a, hidaka: a, higashitsuno: a, ino: a, kagami: a, kami: a, kitagawa: a, kochi: a, mihara: a, motoyama: a, muroto: a, nahari: a, nakamura: a, nankoku: a, nishitosa: a, niyodogawa: a, ochi: a, okawa: a, otoyo: a, otsuki: a, sakawa: a, sukumo: a, susaki: a, tosa: a, tosashimizu: a, toyo: a, tsuno: a, umaji: a, yasuda: a, yusuhara: a }], kumamoto: [1, { amakusa: a, arao: a, aso: a, choyo: a, gyokuto: a, kamiamakusa: a, kikuchi: a, kumamoto: a, mashiki: a, mifune: a, minamata: a, minamioguni: a, nagasu: a, nishihara: a, oguni: a, ozu: a, sumoto: a, takamori: a, uki: a, uto: a, yamaga: a, yamato: a, yatsushiro: a }], kyoto: [1, { ayabe: a, fukuchiyama: a, higashiyama: a, ide: a, ine: a, joyo: a, kameoka: a, kamo: a, kita: a, kizu: a, kumiyama: a, kyotamba: a, kyotanabe: a, kyotango: a, maizuru: a, minami: a, minamiyamashiro: a, miyazu: a, muko: a, nagaokakyo: a, nakagyo: a, nantan: a, oyamazaki: a, sakyo: a, seika: a, tanabe: a, uji: a, ujitawara: a, wazuka: a, yamashina: a, yawata: a }], mie: [1, { asahi: a, inabe: a, ise: a, kameyama: a, kawagoe: a, kiho: a, kisosaki: a, kiwa: a, komono: a, kumano: a, kuwana: a, matsusaka: a, meiwa: a, mihama: a, minamiise: a, misugi: a, miyama: a, nabari: a, shima: a, suzuka: a, tado: a, taiki: a, taki: a, tamaki: a, toba: a, tsu: a, udono: a, ureshino: a, watarai: a, yokkaichi: a }], miyagi: [1, { furukawa: a, higashimatsushima: a, ishinomaki: a, iwanuma: a, kakuda: a, kami: a, kawasaki: a, marumori: a, matsushima: a, minamisanriku: a, misato: a, murata: a, natori: a, ogawara: a, ohira: a, onagawa: a, osaki: a, rifu: a, semine: a, shibata: a, shichikashuku: a, shikama: a, shiogama: a, shiroishi: a, tagajo: a, taiwa: a, tome: a, tomiya: a, wakuya: a, watari: a, yamamoto: a, zao: a }], miyazaki: [1, { aya: a, ebino: a, gokase: a, hyuga: a, kadogawa: a, kawaminami: a, kijo: a, kitagawa: a, kitakata: a, kitaura: a, kobayashi: a, kunitomi: a, kushima: a, mimata: a, miyakonojo: a, miyazaki: a, morotsuka: a, nichinan: a, nishimera: a, nobeoka: a, saito: a, shiiba: a, shintomi: a, takaharu: a, takanabe: a, takazaki: a, tsuno: a }], nagano: [1, { achi: a, agematsu: a, anan: a, aoki: a, asahi: a, azumino: a, chikuhoku: a, chikuma: a, chino: a, fujimi: a, hakuba: a, hara: a, hiraya: a, iida: a, iijima: a, iiyama: a, iizuna: a, ikeda: a, ikusaka: a, ina: a, karuizawa: a, kawakami: a, kiso: a, kisofukushima: a, kitaaiki: a, komagane: a, komoro: a, matsukawa: a, matsumoto: a, miasa: a, minamiaiki: a, minamimaki: a, minamiminowa: a, minowa: a, miyada: a, miyota: a, mochizuki: a, nagano: a, nagawa: a, nagiso: a, nakagawa: a, nakano: a, nozawaonsen: a, obuse: a, ogawa: a, okaya: a, omachi: a, omi: a, ookuwa: a, ooshika: a, otaki: a, otari: a, sakae: a, sakaki: a, saku: a, sakuho: a, shimosuwa: a, shinanomachi: a, shiojiri: a, suwa: a, suzaka: a, takagi: a, takamori: a, takayama: a, tateshina: a, tatsuno: a, togakushi: a, togura: a, tomi: a, ueda: a, wada: a, yamagata: a, yamanouchi: a, yasaka: a, yasuoka: a }], nagasaki: [1, { chijiwa: a, futsu: a, goto: a, hasami: a, hirado: a, iki: a, isahaya: a, kawatana: a, kuchinotsu: a, matsuura: a, nagasaki: a, obama: a, omura: a, oseto: a, saikai: a, sasebo: a, seihi: a, shimabara: a, shinkamigoto: a, togitsu: a, tsushima: a, unzen: a }], nara: [1, { ando: a, gose: a, heguri: a, higashiyoshino: a, ikaruga: a, ikoma: a, kamikitayama: a, kanmaki: a, kashiba: a, kashihara: a, katsuragi: a, kawai: a, kawakami: a, kawanishi: a, koryo: a, kurotaki: a, mitsue: a, miyake: a, nara: a, nosegawa: a, oji: a, ouda: a, oyodo: a, sakurai: a, sango: a, shimoichi: a, shimokitayama: a, shinjo: a, soni: a, takatori: a, tawaramoto: a, tenkawa: a, tenri: a, uda: a, yamatokoriyama: a, yamatotakada: a, yamazoe: a, yoshino: a }], niigata: [1, { aga: a, agano: a, gosen: a, itoigawa: a, izumozaki: a, joetsu: a, kamo: a, kariwa: a, kashiwazaki: a, minamiuonuma: a, mitsuke: a, muika: a, murakami: a, myoko: a, nagaoka: a, niigata: a, ojiya: a, omi: a, sado: a, sanjo: a, seiro: a, seirou: a, sekikawa: a, shibata: a, tagami: a, tainai: a, tochio: a, tokamachi: a, tsubame: a, tsunan: a, uonuma: a, yahiko: a, yoita: a, yuzawa: a }], oita: [1, { beppu: a, bungoono: a, bungotakada: a, hasama: a, hiji: a, himeshima: a, hita: a, kamitsue: a, kokonoe: a, kuju: a, kunisaki: a, kusu: a, oita: a, saiki: a, taketa: a, tsukumi: a, usa: a, usuki: a, yufu: a }], okayama: [1, { akaiwa: a, asakuchi: a, bizen: a, hayashima: a, ibara: a, kagamino: a, kasaoka: a, kibichuo: a, kumenan: a, kurashiki: a, maniwa: a, misaki: a, nagi: a, niimi: a, nishiawakura: a, okayama: a, satosho: a, setouchi: a, shinjo: a, shoo: a, soja: a, takahashi: a, tamano: a, tsuyama: a, wake: a, yakage: a }], okinawa: [1, { aguni: a, ginowan: a, ginoza: a, gushikami: a, haebaru: a, higashi: a, hirara: a, iheya: a, ishigaki: a, ishikawa: a, itoman: a, izena: a, kadena: a, kin: a, kitadaito: a, kitanakagusuku: a, kumejima: a, kunigami: a, minamidaito: a, motobu: a, nago: a, naha: a, nakagusuku: a, nakijin: a, nanjo: a, nishihara: a, ogimi: a, okinawa: a, onna: a, shimoji: a, taketomi: a, tarama: a, tokashiki: a, tomigusuku: a, tonaki: a, urasoe: a, uruma: a, yaese: a, yomitan: a, yonabaru: a, yonaguni: a, zamami: a }], osaka: [1, { abeno: a, chihayaakasaka: a, chuo: a, daito: a, fujiidera: a, habikino: a, hannan: a, higashiosaka: a, higashisumiyoshi: a, higashiyodogawa: a, hirakata: a, ibaraki: a, ikeda: a, izumi: a, izumiotsu: a, izumisano: a, kadoma: a, kaizuka: a, kanan: a, kashiwara: a, katano: a, kawachinagano: a, kishiwada: a, kita: a, kumatori: a, matsubara: a, minato: a, minoh: a, misaki: a, moriguchi: a, neyagawa: a, nishi: a, nose: a, osakasayama: a, sakai: a, sayama: a, sennan: a, settsu: a, shijonawate: a, shimamoto: a, suita: a, tadaoka: a, taishi: a, tajiri: a, takaishi: a, takatsuki: a, tondabayashi: a, toyonaka: a, toyono: a, yao: a }], saga: [1, { ariake: a, arita: a, fukudomi: a, genkai: a, hamatama: a, hizen: a, imari: a, kamimine: a, kanzaki: a, karatsu: a, kashima: a, kitagata: a, kitahata: a, kiyama: a, kouhoku: a, kyuragi: a, nishiarita: a, ogi: a, omachi: a, ouchi: a, saga: a, shiroishi: a, taku: a, tara: a, tosu: a, yoshinogari: a }], saitama: [1, { arakawa: a, asaka: a, chichibu: a, fujimi: a, fujimino: a, fukaya: a, hanno: a, hanyu: a, hasuda: a, hatogaya: a, hatoyama: a, hidaka: a, higashichichibu: a, higashimatsuyama: a, honjo: a, ina: a, iruma: a, iwatsuki: a, kamiizumi: a, kamikawa: a, kamisato: a, kasukabe: a, kawagoe: a, kawaguchi: a, kawajima: a, kazo: a, kitamoto: a, koshigaya: a, kounosu: a, kuki: a, kumagaya: a, matsubushi: a, minano: a, misato: a, miyashiro: a, miyoshi: a, moroyama: a, nagatoro: a, namegawa: a, niiza: a, ogano: a, ogawa: a, ogose: a, okegawa: a, omiya: a, otaki: a, ranzan: a, ryokami: a, saitama: a, sakado: a, satte: a, sayama: a, shiki: a, shiraoka: a, soka: a, sugito: a, toda: a, tokigawa: a, tokorozawa: a, tsurugashima: a, urawa: a, warabi: a, yashio: a, yokoze: a, yono: a, yorii: a, yoshida: a, yoshikawa: a, yoshimi: a }], shiga: [1, { aisho: a, gamo: a, higashiomi: a, hikone: a, koka: a, konan: a, kosei: a, koto: a, kusatsu: a, maibara: a, moriyama: a, nagahama: a, nishiazai: a, notogawa: a, omihachiman: a, otsu: a, ritto: a, ryuoh: a, takashima: a, takatsuki: a, torahime: a, toyosato: a, yasu: a }], shimane: [1, { akagi: a, ama: a, gotsu: a, hamada: a, higashiizumo: a, hikawa: a, hikimi: a, izumo: a, kakinoki: a, masuda: a, matsue: a, misato: a, nishinoshima: a, ohda: a, okinoshima: a, okuizumo: a, shimane: a, tamayu: a, tsuwano: a, unnan: a, yakumo: a, yasugi: a, yatsuka: a }], shizuoka: [1, { arai: a, atami: a, fuji: a, fujieda: a, fujikawa: a, fujinomiya: a, fukuroi: a, gotemba: a, haibara: a, hamamatsu: a, higashiizu: a, ito: a, iwata: a, izu: a, izunokuni: a, kakegawa: a, kannami: a, kawanehon: a, kawazu: a, kikugawa: a, kosai: a, makinohara: a, matsuzaki: a, minamiizu: a, mishima: a, morimachi: a, nishiizu: a, numazu: a, omaezaki: a, shimada: a, shimizu: a, shimoda: a, shizuoka: a, susono: a, yaizu: a, yoshida: a }], tochigi: [1, { ashikaga: a, bato: a, haga: a, ichikai: a, iwafune: a, kaminokawa: a, kanuma: a, karasuyama: a, kuroiso: a, mashiko: a, mibu: a, moka: a, motegi: a, nasu: a, nasushiobara: a, nikko: a, nishikata: a, nogi: a, ohira: a, ohtawara: a, oyama: a, sakura: a, sano: a, shimotsuke: a, shioya: a, takanezawa: a, tochigi: a, tsuga: a, ujiie: a, utsunomiya: a, yaita: a }], tokushima: [1, { aizumi: a, anan: a, ichiba: a, itano: a, kainan: a, komatsushima: a, matsushige: a, mima: a, minami: a, miyoshi: a, mugi: a, nakagawa: a, naruto: a, sanagochi: a, shishikui: a, tokushima: a, wajiki: a }], tokyo: [1, { adachi: a, akiruno: a, akishima: a, aogashima: a, arakawa: a, bunkyo: a, chiyoda: a, chofu: a, chuo: a, edogawa: a, fuchu: a, fussa: a, hachijo: a, hachioji: a, hamura: a, higashikurume: a, higashimurayama: a, higashiyamato: a, hino: a, hinode: a, hinohara: a, inagi: a, itabashi: a, katsushika: a, kita: a, kiyose: a, kodaira: a, koganei: a, kokubunji: a, komae: a, koto: a, kouzushima: a, kunitachi: a, machida: a, meguro: a, minato: a, mitaka: a, mizuho: a, musashimurayama: a, musashino: a, nakano: a, nerima: a, ogasawara: a, okutama: a, ome: a, oshima: a, ota: a, setagaya: a, shibuya: a, shinagawa: a, shinjuku: a, suginami: a, sumida: a, tachikawa: a, taito: a, tama: a, toshima: a }], tottori: [1, { chizu: a, hino: a, kawahara: a, koge: a, kotoura: a, misasa: a, nanbu: a, nichinan: a, sakaiminato: a, tottori: a, wakasa: a, yazu: a, yonago: a }], toyama: [1, { asahi: a, fuchu: a, fukumitsu: a, funahashi: a, himi: a, imizu: a, inami: a, johana: a, kamiichi: a, kurobe: a, nakaniikawa: a, namerikawa: a, nanto: a, nyuzen: a, oyabe: a, taira: a, takaoka: a, tateyama: a, toga: a, tonami: a, toyama: a, unazuki: a, uozu: a, yamada: a }], wakayama: [1, { arida: a, aridagawa: a, gobo: a, hashimoto: a, hidaka: a, hirogawa: a, inami: a, iwade: a, kainan: a, kamitonda: a, katsuragi: a, kimino: a, kinokawa: a, kitayama: a, koya: a, koza: a, kozagawa: a, kudoyama: a, kushimoto: a, mihama: a, misato: a, nachikatsuura: a, shingu: a, shirahama: a, taiji: a, tanabe: a, wakayama: a, yuasa: a, yura: a }], yamagata: [1, { asahi: a, funagata: a, higashine: a, iide: a, kahoku: a, kaminoyama: a, kaneyama: a, kawanishi: a, mamurogawa: a, mikawa: a, murayama: a, nagai: a, nakayama: a, nanyo: a, nishikawa: a, obanazawa: a, oe: a, oguni: a, ohkura: a, oishida: a, sagae: a, sakata: a, sakegawa: a, shinjo: a, shirataka: a, shonai: a, takahata: a, tendo: a, tozawa: a, tsuruoka: a, yamagata: a, yamanobe: a, yonezawa: a, yuza: a }], yamaguchi: [1, { abu: a, hagi: a, hikari: a, hofu: a, iwakuni: a, kudamatsu: a, mitou: a, nagato: a, oshima: a, shimonoseki: a, shunan: a, tabuse: a, tokuyama: a, toyota: a, ube: a, yuu: a }], yamanashi: [1, { chuo: a, doshi: a, fuefuki: a, fujikawa: a, fujikawaguchiko: a, fujiyoshida: a, hayakawa: a, hokuto: a, ichikawamisato: a, kai: a, kofu: a, koshu: a, kosuge: a, "minami-alps": a, minobu: a, nakamichi: a, nanbu: a, narusawa: a, nirasaki: a, nishikatsura: a, oshino: a, otsuki: a, showa: a, tabayama: a, tsuru: a, uenohara: a, yamanakako: a, yamanashi: a }], "xn--ehqz56n": a, 三重: a, "xn--1lqs03n": a, 京都: a, "xn--qqqt11m": a, 佐賀: a, "xn--f6qx53a": a, 兵庫: a, "xn--djrs72d6uy": a, 北海道: a, "xn--mkru45i": a, 千葉: a, "xn--0trq7p7nn": a, 和歌山: a, "xn--5js045d": a, 埼玉: a, "xn--kbrq7o": a, 大分: a, "xn--pssu33l": a, 大阪: a, "xn--ntsq17g": a, 奈良: a, "xn--uisz3g": a, 宮城: a, "xn--6btw5a": a, 宮崎: a, "xn--1ctwo": a, 富山: a, "xn--6orx2r": a, 山口: a, "xn--rht61e": a, 山形: a, "xn--rht27z": a, 山梨: a, "xn--nit225k": a, 岐阜: a, "xn--rht3d": a, 岡山: a, "xn--djty4k": a, 岩手: a, "xn--klty5x": a, 島根: a, "xn--kltx9a": a, 広島: a, "xn--kltp7d": a, 徳島: a, "xn--c3s14m": a, 愛媛: a, "xn--vgu402c": a, 愛知: a, "xn--efvn9s": a, 新潟: a, "xn--1lqs71d": a, 東京: a, "xn--4pvxs": a, 栃木: a, "xn--uuwu58a": a, 沖縄: a, "xn--zbx025d": a, 滋賀: a, "xn--8pvr4u": a, 熊本: a, "xn--5rtp49c": a, 石川: a, "xn--ntso0iqx3a": a, 神奈川: a, "xn--elqq16h": a, 福井: a, "xn--4it168d": a, 福岡: a, "xn--klt787d": a, 福島: a, "xn--rny31h": a, 秋田: a, "xn--7t0a264c": a, 群馬: a, "xn--uist22h": a, 茨城: a, "xn--8ltr62k": a, 長崎: a, "xn--2m4a15e": a, 長野: a, "xn--32vp30h": a, 青森: a, "xn--4it797k": a, 静岡: a, "xn--5rtq34k": a, 香川: a, "xn--k7yn95e": a, 高知: a, "xn--tor131o": a, 鳥取: a, "xn--d5qv7z876c": a, 鹿児島: a, kawasaki: h, kitakyushu: h, kobe: h, nagoya: h, sapporo: h, sendai: h, yokohama: h, buyshop: e, fashionstore: e, handcrafted: e, kawaiishop: e, supersale: e, theshop: e, "0am": e, "0g0": e, "0j0": e, "0t0": e, mydns: e, pgw: e, wjg: e, usercontent: e, angry: e, babyblue: e, babymilk: e, backdrop: e, bambina: e, bitter: e, blush: e, boo: e, boy: e, boyfriend: e, but: e, candypop: e, capoo: e, catfood: e, cheap: e, chicappa: e, chillout: e, chips: e, chowder: e, chu: e, ciao: e, cocotte: e, coolblog: e, cranky: e, cutegirl: e, daa: e, deca: e, deci: e, digick: e, egoism: e, fakefur: e, fem: e, flier: e, floppy: e, fool: e, frenchkiss: e, girlfriend: e, girly: e, gloomy: e, gonna: e, greater: e, hacca: e, heavy: e, her: e, hiho: e, hippy: e, holy: e, hungry: e, icurus: e, itigo: e, jellybean: e, kikirara: e, kill: e, kilo: e, kuron: e, littlestar: e, lolipopmc: e, lolitapunk: e, lomo: e, lovepop: e, lovesick: e, main: e, mods: e, mond: e, mongolian: e, moo: e, namaste: e, nikita: e, nobushi: e, noor: e, oops: e, parallel: e, parasite: e, pecori: e, peewee: e, penne: e, pepper: e, perma: e, pigboat: e, pinoko: e, punyu: e, pupu: e, pussycat: e, pya: e, raindrop: e, readymade: e, sadist: e, schoolbus: e, secret: e, staba: e, stripper: e, sub: e, sunnyday: e, thick: e, tonkotsu: e, under: e, upper: e, velvet: e, verse: e, versus: e, vivian: e, watson: e, weblike: e, whitesnow: e, zombie: e, hateblo: e, hatenablog: e, hatenadiary: e, "2-d": e, bona: e, crap: e, daynight: e, eek: e, flop: e, halfmoon: e, jeez: e, matrix: e, mimoza: e, netgamers: e, nyanta: e, o0o0: e, rdy: e, rgr: e, rulez: e, sakurastorage: [0, { isk01: xa, isk02: xa }], saloon: e, sblo: e, skr: e, tank: e, "uh-oh": e, undo: e, webaccel: [0, { rs: e, user: e }], websozai: e, xii: e }], ke: [1, { ac: a, co: a, go: a, info: a, me: a, mobi: a, ne: a, or: a, sc: a }], kg: [1, { com: a, edu: a, gov: a, mil: a, net: a, org: a, us: e, xx: e }], kh: h, ki: Wa, km: [1, { ass: a, com: a, edu: a, gov: a, mil: a, nom: a, org: a, prd: a, tm: a, asso: a, coop: a, gouv: a, medecin: a, notaires: a, pharmaciens: a, presse: a, veterinaire: a }], kn: [1, { edu: a, gov: a, net: a, org: a }], kp: [1, { com: a, edu: a, gov: a, org: a, rep: a, tra: a }], kr: [1, { ac: a, ai: a, co: a, es: a, go: a, hs: a, io: a, it: a, kg: a, me: a, mil: a, ms: a, ne: a, or: a, pe: a, re: a, sc: a, busan: a, chungbuk: a, chungnam: a, daegu: a, daejeon: a, gangwon: a, gwangju: a, gyeongbuk: a, gyeonggi: a, gyeongnam: a, incheon: a, jeju: a, jeonbuk: a, jeonnam: a, seoul: a, ulsan: a, c01: e, "eliv-cdn": e, "eliv-dns": e, mmv: e, vki: e }], kw: [1, { com: a, edu: a, emb: a, gov: a, ind: a, net: a, org: a }], ky: oa, kz: [1, { com: a, edu: a, gov: a, mil: a, net: a, org: a, jcloud: e }], la: [1, { com: a, edu: a, gov: a, info: a, int: a, net: a, org: a, per: a, bnr: e }], lb: t, lc: [1, { co: a, com: a, edu: a, gov: a, net: a, org: a, oy: e }], li: a, lk: [1, { ac: a, assn: a, com: a, edu: a, gov: a, grp: a, hotel: a, int: a, ltd: a, net: a, ngo: a, org: a, sch: a, soc: a, web: a }], lr: t, ls: [1, { ac: a, biz: a, co: a, edu: a, gov: a, info: a, net: a, org: a, sc: a }], lt: l, lu: [1, { "123website": e }], lv: [1, { asn: a, com: a, conf: a, edu: a, gov: a, id: a, mil: a, net: a, org: a }], ly: [1, { com: a, edu: a, gov: a, id: a, med: a, net: a, org: a, plc: a, sch: a }], ma: [1, { ac: a, co: a, gov: a, net: a, org: a, press: a }], mc: [1, { asso: a, tm: a }], md: [1, { ir: e }], me: [1, { ac: a, co: a, edu: a, gov: a, its: a, net: a, org: a, priv: a, c66: e, craft: e, edgestack: e, filegear: e, glitch: e, "filegear-sg": e, lohmus: e, barsy: e, mcdir: e, brasilia: e, ddns: e, dnsfor: e, hopto: e, loginto: e, noip: e, webhop: e, soundcast: e, tcp4: e, vp4: e, diskstation: e, dscloud: e, i234: e, myds: e, synology: e, transip: va, nohost: e }], mg: [1, { co: a, com: a, edu: a, gov: a, mil: a, nom: a, org: a, prd: a }], mh: a, mil: a, mk: [1, { com: a, edu: a, gov: a, inf: a, name: a, net: a, org: a }], ml: [1, { ac: a, art: a, asso: a, com: a, edu: a, gouv: a, gov: a, info: a, inst: a, net: a, org: a, pr: a, presse: a }], mm: h, mn: [1, { edu: a, gov: a, org: a, nyc: e }], mo: t, mobi: [1, { barsy: e, dscloud: e }], mp: [1, { ju: e }], mq: a, mr: l, ms: [1, { com: a, edu: a, gov: a, net: a, org: a, minisite: e }], mt: oa, mu: [1, { ac: a, co: a, com: a, gov: a, net: a, or: a, org: a }], museum: a, mv: [1, { aero: a, biz: a, com: a, coop: a, edu: a, gov: a, info: a, int: a, mil: a, museum: a, name: a, net: a, org: a, pro: a }], mw: [1, { ac: a, biz: a, co: a, com: a, coop: a, edu: a, gov: a, int: a, net: a, org: a }], mx: [1, { com: a, edu: a, gob: a, net: a, org: a }], my: [1, { biz: a, com: a, edu: a, gov: a, mil: a, name: a, net: a, org: a }], mz: [1, { ac: a, adv: a, co: a, edu: a, gov: a, mil: a, net: a, org: a }], na: [1, { alt: a, co: a, com: a, gov: a, net: a, org: a }], name: [1, { her: Ya, his: Ya }], nc: [1, { asso: a, nom: a }], ne: a, net: [1, { adobeaemcloud: e, "adobeio-static": e, adobeioruntime: e, akadns: e, akamai: e, "akamai-staging": e, akamaiedge: e, "akamaiedge-staging": e, akamaihd: e, "akamaihd-staging": e, akamaiorigin: e, "akamaiorigin-staging": e, akamaized: e, "akamaized-staging": e, edgekey: e, "edgekey-staging": e, edgesuite: e, "edgesuite-staging": e, alwaysdata: e, myamaze: e, cloudfront: e, appudo: e, "atlassian-dev": [0, { prod: X }], myfritz: e, onavstack: e, shopselect: e, blackbaudcdn: e, boomla: e, bplaced: e, square7: e, cdn77: [0, { r: e }], "cdn77-ssl": e, gb: e, hu: e, jp: e, se: e, uk: e, clickrising: e, "ddns-ip": e, "dns-cloud": e, "dns-dynamic": e, cloudaccess: e, cloudflare: [2, { cdn: e }], cloudflareanycast: X, cloudflarecn: X, cloudflareglobal: X, ctfcloud: e, "feste-ip": e, "knx-server": e, "static-access": e, cryptonomic: n, dattolocal: e, mydatto: e, debian: e, definima: e, deno: e, "at-band-camp": e, blogdns: e, "broke-it": e, buyshouses: e, dnsalias: e, dnsdojo: e, "does-it": e, dontexist: e, dynalias: e, dynathome: e, endofinternet: e, "from-az": e, "from-co": e, "from-la": e, "from-ny": e, "gets-it": e, "ham-radio-op": e, homeftp: e, homeip: e, homelinux: e, homeunix: e, "in-the-band": e, "is-a-chef": e, "is-a-geek": e, "isa-geek": e, "kicks-ass": e, "office-on-the": e, podzone: e, "scrapper-site": e, selfip: e, "sells-it": e, servebbs: e, serveftp: e, thruhere: e, webhop: e, casacam: e, dynu: e, dynv6: e, twmail: e, ru: e, channelsdvr: [2, { u: e }], fastly: [0, { freetls: e, map: e, prod: [0, { a: e, global: e }], ssl: [0, { a: e, b: e, global: e }] }], fastlylb: [2, { map: e }], edgeapp: e, "keyword-on": e, "live-on": e, "server-on": e, "cdn-edges": e, heteml: e, cloudfunctions: e, "grafana-dev": e, iobb: e, moonscale: e, "in-dsl": e, "in-vpn": e, oninferno: e, botdash: e, "apps-1and1": e, ipifony: e, cloudjiffy: [2, { "fra1-de": e, "west1-us": e }], elastx: [0, { "jls-sto1": e, "jls-sto2": e, "jls-sto3": e }], massivegrid: [0, { paas: [0, { "fr-1": e, "lon-1": e, "lon-2": e, "ny-1": e, "ny-2": e, "sg-1": e }] }], saveincloud: [0, { jelastic: e, "nordeste-idc": e }], scaleforce: ya, kinghost: e, uni5: e, krellian: e, ggff: e, localcert: e, localto: n, barsy: e, luyani: e, memset: e, "azure-api": e, "azure-mobile": e, azureedge: e, azurefd: e, azurestaticapps: [2, { 1: e, 2: e, 3: e, 4: e, 5: e, 6: e, 7: e, centralus: e, eastasia: e, eastus2: e, westeurope: e, westus2: e }], azurewebsites: e, cloudapp: e, trafficmanager: e, windows: [0, { core: [0, { blob: e }], servicebus: e }], mynetname: [0, { sn: e }], routingthecloud: e, bounceme: e, ddns: e, "eating-organic": e, mydissent: e, myeffect: e, mymediapc: e, mypsx: e, mysecuritycamera: e, nhlfan: e, "no-ip": e, pgafan: e, privatizehealthinsurance: e, redirectme: e, serveblog: e, serveminecraft: e, sytes: e, dnsup: e, hicam: e, "now-dns": e, ownip: e, vpndns: e, cloudycluster: e, ovh: [0, { hosting: n, webpaas: n }], rackmaze: e, myradweb: e, in: e, "subsc-pay": e, squares: e, schokokeks: e, "firewall-gateway": e, seidat: e, senseering: e, siteleaf: e, mafelo: e, myspreadshop: e, "vps-host": [2, { jelastic: [0, { atl: e, njs: e, ric: e }] }], srcf: [0, { soc: e, user: e }], supabase: e, dsmynas: e, familyds: e, ts: [2, { c: n }], torproject: [2, { pages: e }], vusercontent: e, "reserve-online": e, "community-pro": e, meinforum: e, yandexcloud: [2, { storage: e, website: e }], za: e }], nf: [1, { arts: a, com: a, firm: a, info: a, net: a, other: a, per: a, rec: a, store: a, web: a }], ng: [1, { com: a, edu: a, gov: a, i: a, mil: a, mobi: a, name: a, net: a, org: a, sch: a, biz: [2, { co: e, dl: e, go: e, lg: e, on: e }], col: e, firm: e, gen: e, ltd: e, ngo: e, plc: e }], ni: [1, { ac: a, biz: a, co: a, com: a, edu: a, gob: a, in: a, info: a, int: a, mil: a, net: a, nom: a, org: a, web: a }], nl: [1, { co: e, "hosting-cluster": e, gov: e, khplay: e, "123website": e, myspreadshop: e, transurl: n, cistron: e, demon: e }], no: [1, { fhs: a, folkebibl: a, fylkesbibl: a, idrett: a, museum: a, priv: a, vgs: a, dep: a, herad: a, kommune: a, mil: a, stat: a, aa: I, ah: I, bu: I, fm: I, hl: I, hm: I, "jan-mayen": I, mr: I, nl: I, nt: I, of: I, ol: I, oslo: I, rl: I, sf: I, st: I, svalbard: I, tm: I, tr: I, va: I, vf: I, akrehamn: a, "xn--krehamn-dxa": a, åkrehamn: a, algard: a, "xn--lgrd-poac": a, ålgård: a, arna: a, bronnoysund: a, "xn--brnnysund-m8ac": a, brønnøysund: a, brumunddal: a, bryne: a, drobak: a, "xn--drbak-wua": a, drøbak: a, egersund: a, fetsund: a, floro: a, "xn--flor-jra": a, florø: a, fredrikstad: a, hokksund: a, honefoss: a, "xn--hnefoss-q1a": a, hønefoss: a, jessheim: a, jorpeland: a, "xn--jrpeland-54a": a, jørpeland: a, kirkenes: a, kopervik: a, krokstadelva: a, langevag: a, "xn--langevg-jxa": a, langevåg: a, leirvik: a, mjondalen: a, "xn--mjndalen-64a": a, mjøndalen: a, "mo-i-rana": a, mosjoen: a, "xn--mosjen-eya": a, mosjøen: a, nesoddtangen: a, orkanger: a, osoyro: a, "xn--osyro-wua": a, osøyro: a, raholt: a, "xn--rholt-mra": a, råholt: a, sandnessjoen: a, "xn--sandnessjen-ogb": a, sandnessjøen: a, skedsmokorset: a, slattum: a, spjelkavik: a, stathelle: a, stavern: a, stjordalshalsen: a, "xn--stjrdalshalsen-sqb": a, stjørdalshalsen: a, tananger: a, tranby: a, vossevangen: a, aarborte: a, aejrie: a, afjord: a, "xn--fjord-lra": a, åfjord: a, agdenes: a, akershus: Ja, aknoluokta: a, "xn--koluokta-7ya57h": a, ákŋoluokta: a, al: a, "xn--l-1fa": a, ål: a, alaheadju: a, "xn--laheadju-7ya": a, álaheadju: a, alesund: a, "xn--lesund-hua": a, ålesund: a, alstahaug: a, alta: a, "xn--lt-liac": a, áltá: a, alvdal: a, amli: a, "xn--mli-tla": a, åmli: a, amot: a, "xn--mot-tla": a, åmot: a, andasuolo: a, andebu: a, andoy: a, "xn--andy-ira": a, andøy: a, ardal: a, "xn--rdal-poa": a, årdal: a, aremark: a, arendal: a, "xn--s-1fa": a, ås: a, aseral: a, "xn--seral-lra": a, åseral: a, asker: a, askim: a, askoy: a, "xn--asky-ira": a, askøy: a, askvoll: a, asnes: a, "xn--snes-poa": a, åsnes: a, audnedaln: a, aukra: a, aure: a, aurland: a, "aurskog-holand": a, "xn--aurskog-hland-jnb": a, "aurskog-høland": a, austevoll: a, austrheim: a, averoy: a, "xn--avery-yua": a, averøy: a, badaddja: a, "xn--bdddj-mrabd": a, bådåddjå: a, "xn--brum-voa": a, bærum: a, bahcavuotna: a, "xn--bhcavuotna-s4a": a, báhcavuotna: a, bahccavuotna: a, "xn--bhccavuotna-k7a": a, báhccavuotna: a, baidar: a, "xn--bidr-5nac": a, báidár: a, bajddar: a, "xn--bjddar-pta": a, bájddar: a, balat: a, "xn--blt-elab": a, bálát: a, balestrand: a, ballangen: a, balsfjord: a, bamble: a, bardu: a, barum: a, batsfjord: a, "xn--btsfjord-9za": a, båtsfjord: a, bearalvahki: a, "xn--bearalvhki-y4a": a, bearalváhki: a, beardu: a, beiarn: a, berg: a, bergen: a, berlevag: a, "xn--berlevg-jxa": a, berlevåg: a, bievat: a, "xn--bievt-0qa": a, bievát: a, bindal: a, birkenes: a, bjarkoy: a, "xn--bjarky-fya": a, bjarkøy: a, bjerkreim: a, bjugn: a, bodo: a, "xn--bod-2na": a, bodø: a, bokn: a, bomlo: a, "xn--bmlo-gra": a, bømlo: a, bremanger: a, bronnoy: a, "xn--brnny-wuac": a, brønnøy: a, budejju: a, buskerud: Ja, bygland: a, bykle: a, cahcesuolo: a, "xn--hcesuolo-7ya35b": a, čáhcesuolo: a, davvenjarga: a, "xn--davvenjrga-y4a": a, davvenjárga: a, davvesiida: a, deatnu: a, dielddanuorri: a, divtasvuodna: a, divttasvuotna: a, donna: a, "xn--dnna-gra": a, dønna: a, dovre: a, drammen: a, drangedal: a, dyroy: a, "xn--dyry-ira": a, dyrøy: a, eid: a, eidfjord: a, eidsberg: a, eidskog: a, eidsvoll: a, eigersund: a, elverum: a, enebakk: a, engerdal: a, etne: a, etnedal: a, evenassi: a, "xn--eveni-0qa01ga": a, evenášši: a, evenes: a, "evje-og-hornnes": a, farsund: a, fauske: a, fedje: a, fet: a, finnoy: a, "xn--finny-yua": a, finnøy: a, fitjar: a, fjaler: a, fjell: a, fla: a, "xn--fl-zia": a, flå: a, flakstad: a, flatanger: a, flekkefjord: a, flesberg: a, flora: a, folldal: a, forde: a, "xn--frde-gra": a, førde: a, forsand: a, fosnes: a, "xn--frna-woa": a, fræna: a, frana: a, frei: a, frogn: a, froland: a, frosta: a, froya: a, "xn--frya-hra": a, frøya: a, fuoisku: a, fuossko: a, fusa: a, fyresdal: a, gaivuotna: a, "xn--givuotna-8ya": a, gáivuotna: a, galsa: a, "xn--gls-elac": a, gálsá: a, gamvik: a, gangaviika: a, "xn--ggaviika-8ya47h": a, gáŋgaviika: a, gaular: a, gausdal: a, giehtavuoatna: a, gildeskal: a, "xn--gildeskl-g0a": a, gildeskål: a, giske: a, gjemnes: a, gjerdrum: a, gjerstad: a, gjesdal: a, gjovik: a, "xn--gjvik-wua": a, gjøvik: a, gloppen: a, gol: a, gran: a, grane: a, granvin: a, gratangen: a, grimstad: a, grong: a, grue: a, gulen: a, guovdageaidnu: a, ha: a, "xn--h-2fa": a, hå: a, habmer: a, "xn--hbmer-xqa": a, hábmer: a, hadsel: a, "xn--hgebostad-g3a": a, hægebostad: a, hagebostad: a, halden: a, halsa: a, hamar: a, hamaroy: a, hammarfeasta: a, "xn--hmmrfeasta-s4ac": a, hámmárfeasta: a, hammerfest: a, hapmir: a, "xn--hpmir-xqa": a, hápmir: a, haram: a, hareid: a, harstad: a, hasvik: a, hattfjelldal: a, haugesund: a, hedmark: [0, { os: a, valer: a, "xn--vler-qoa": a, våler: a }], hemne: a, hemnes: a, hemsedal: a, hitra: a, hjartdal: a, hjelmeland: a, hobol: a, "xn--hobl-ira": a, hobøl: a, hof: a, hol: a, hole: a, holmestrand: a, holtalen: a, "xn--holtlen-hxa": a, holtålen: a, hordaland: [0, { os: a }], hornindal: a, horten: a, hoyanger: a, "xn--hyanger-q1a": a, høyanger: a, hoylandet: a, "xn--hylandet-54a": a, høylandet: a, hurdal: a, hurum: a, hvaler: a, hyllestad: a, ibestad: a, inderoy: a, "xn--indery-fya": a, inderøy: a, iveland: a, ivgu: a, jevnaker: a, jolster: a, "xn--jlster-bya": a, jølster: a, jondal: a, kafjord: a, "xn--kfjord-iua": a, kåfjord: a, karasjohka: a, "xn--krjohka-hwab49j": a, kárášjohka: a, karasjok: a, karlsoy: a, karmoy: a, "xn--karmy-yua": a, karmøy: a, kautokeino: a, klabu: a, "xn--klbu-woa": a, klæbu: a, klepp: a, kongsberg: a, kongsvinger: a, kraanghke: a, "xn--kranghke-b0a": a, kråanghke: a, kragero: a, "xn--krager-gya": a, kragerø: a, kristiansand: a, kristiansund: a, krodsherad: a, "xn--krdsherad-m8a": a, krødsherad: a, "xn--kvfjord-nxa": a, kvæfjord: a, "xn--kvnangen-k0a": a, kvænangen: a, kvafjord: a, kvalsund: a, kvam: a, kvanangen: a, kvinesdal: a, kvinnherad: a, kviteseid: a, kvitsoy: a, "xn--kvitsy-fya": a, kvitsøy: a, laakesvuemie: a, "xn--lrdal-sra": a, lærdal: a, lahppi: a, "xn--lhppi-xqa": a, láhppi: a, lardal: a, larvik: a, lavagis: a, lavangen: a, leangaviika: a, "xn--leagaviika-52b": a, leaŋgaviika: a, lebesby: a, leikanger: a, leirfjord: a, leka: a, leksvik: a, lenvik: a, lerdal: a, lesja: a, levanger: a, lier: a, lierne: a, lillehammer: a, lillesand: a, lindas: a, "xn--linds-pra": a, lindås: a, lindesnes: a, loabat: a, "xn--loabt-0qa": a, loabát: a, lodingen: a, "xn--ldingen-q1a": a, lødingen: a, lom: a, loppa: a, lorenskog: a, "xn--lrenskog-54a": a, lørenskog: a, loten: a, "xn--lten-gra": a, løten: a, lund: a, lunner: a, luroy: a, "xn--lury-ira": a, lurøy: a, luster: a, lyngdal: a, lyngen: a, malatvuopmi: a, "xn--mlatvuopmi-s4a": a, málatvuopmi: a, malselv: a, "xn--mlselv-iua": a, målselv: a, malvik: a, mandal: a, marker: a, marnardal: a, masfjorden: a, masoy: a, "xn--msy-ula0h": a, måsøy: a, "matta-varjjat": a, "xn--mtta-vrjjat-k7af": a, "mátta-várjjat": a, meland: a, meldal: a, melhus: a, meloy: a, "xn--mely-ira": a, meløy: a, meraker: a, "xn--merker-kua": a, meråker: a, midsund: a, "midtre-gauldal": a, moareke: a, "xn--moreke-jua": a, moåreke: a, modalen: a, modum: a, molde: a, "more-og-romsdal": [0, { heroy: a, sande: a }], "xn--mre-og-romsdal-qqb": [0, { "xn--hery-ira": a, sande: a }], "møre-og-romsdal": [0, { herøy: a, sande: a }], moskenes: a, moss: a, mosvik: a, muosat: a, "xn--muost-0qa": a, muosát: a, naamesjevuemie: a, "xn--nmesjevuemie-tcba": a, nååmesjevuemie: a, "xn--nry-yla5g": a, nærøy: a, namdalseid: a, namsos: a, namsskogan: a, nannestad: a, naroy: a, narviika: a, narvik: a, naustdal: a, navuotna: a, "xn--nvuotna-hwa": a, návuotna: a, "nedre-eiker": a, nesna: a, nesodden: a, nesseby: a, nesset: a, nissedal: a, nittedal: a, "nord-aurdal": a, "nord-fron": a, "nord-odal": a, norddal: a, nordkapp: a, nordland: [0, { bo: a, "xn--b-5ga": a, bø: a, heroy: a, "xn--hery-ira": a, herøy: a }], "nordre-land": a, nordreisa: a, "nore-og-uvdal": a, notodden: a, notteroy: a, "xn--nttery-byae": a, nøtterøy: a, odda: a, oksnes: a, "xn--ksnes-uua": a, øksnes: a, omasvuotna: a, oppdal: a, oppegard: a, "xn--oppegrd-ixa": a, oppegård: a, orkdal: a, orland: a, "xn--rland-uua": a, ørland: a, orskog: a, "xn--rskog-uua": a, ørskog: a, orsta: a, "xn--rsta-fra": a, ørsta: a, osen: a, osteroy: a, "xn--ostery-fya": a, osterøy: a, ostfold: [0, { valer: a }], "xn--stfold-9xa": [0, { "xn--vler-qoa": a }], østfold: [0, { våler: a }], "ostre-toten": a, "xn--stre-toten-zcb": a, "østre-toten": a, overhalla: a, "ovre-eiker": a, "xn--vre-eiker-k8a": a, "øvre-eiker": a, oyer: a, "xn--yer-zna": a, øyer: a, oygarden: a, "xn--ygarden-p1a": a, øygarden: a, "oystre-slidre": a, "xn--ystre-slidre-ujb": a, "øystre-slidre": a, porsanger: a, porsangu: a, "xn--porsgu-sta26f": a, porsáŋgu: a, porsgrunn: a, rade: a, "xn--rde-ula": a, råde: a, radoy: a, "xn--rady-ira": a, radøy: a, "xn--rlingen-mxa": a, rælingen: a, rahkkeravju: a, "xn--rhkkervju-01af": a, ráhkkerávju: a, raisa: a, "xn--risa-5na": a, ráisa: a, rakkestad: a, ralingen: a, rana: a, randaberg: a, rauma: a, rendalen: a, rennebu: a, rennesoy: a, "xn--rennesy-v1a": a, rennesøy: a, rindal: a, ringebu: a, ringerike: a, ringsaker: a, risor: a, "xn--risr-ira": a, risør: a, rissa: a, roan: a, rodoy: a, "xn--rdy-0nab": a, rødøy: a, rollag: a, romsa: a, romskog: a, "xn--rmskog-bya": a, rømskog: a, roros: a, "xn--rros-gra": a, røros: a, rost: a, "xn--rst-0na": a, røst: a, royken: a, "xn--ryken-vua": a, røyken: a, royrvik: a, "xn--ryrvik-bya": a, røyrvik: a, ruovat: a, rygge: a, salangen: a, salat: a, "xn--slat-5na": a, sálat: a, "xn--slt-elab": a, sálát: a, saltdal: a, samnanger: a, sandefjord: a, sandnes: a, sandoy: a, "xn--sandy-yua": a, sandøy: a, sarpsborg: a, sauda: a, sauherad: a, sel: a, selbu: a, selje: a, seljord: a, siellak: a, sigdal: a, siljan: a, sirdal: a, skanit: a, "xn--sknit-yqa": a, skánit: a, skanland: a, "xn--sknland-fxa": a, skånland: a, skaun: a, skedsmo: a, ski: a, skien: a, skierva: a, "xn--skierv-uta": a, skiervá: a, skiptvet: a, skjak: a, "xn--skjk-soa": a, skjåk: a, skjervoy: a, "xn--skjervy-v1a": a, skjervøy: a, skodje: a, smola: a, "xn--smla-hra": a, smøla: a, snaase: a, "xn--snase-nra": a, snåase: a, snasa: a, "xn--snsa-roa": a, snåsa: a, snillfjord: a, snoasa: a, sogndal: a, sogne: a, "xn--sgne-gra": a, søgne: a, sokndal: a, sola: a, solund: a, somna: a, "xn--smna-gra": a, sømna: a, "sondre-land": a, "xn--sndre-land-0cb": a, "søndre-land": a, songdalen: a, "sor-aurdal": a, "xn--sr-aurdal-l8a": a, "sør-aurdal": a, "sor-fron": a, "xn--sr-fron-q1a": a, "sør-fron": a, "sor-odal": a, "xn--sr-odal-q1a": a, "sør-odal": a, "sor-varanger": a, "xn--sr-varanger-ggb": a, "sør-varanger": a, sorfold: a, "xn--srfold-bya": a, sørfold: a, sorreisa: a, "xn--srreisa-q1a": a, sørreisa: a, sortland: a, sorum: a, "xn--srum-gra": a, sørum: a, spydeberg: a, stange: a, stavanger: a, steigen: a, steinkjer: a, stjordal: a, "xn--stjrdal-s1a": a, stjørdal: a, stokke: a, "stor-elvdal": a, stord: a, stordal: a, storfjord: a, strand: a, stranda: a, stryn: a, sula: a, suldal: a, sund: a, sunndal: a, surnadal: a, sveio: a, svelvik: a, sykkylven: a, tana: a, telemark: [0, { bo: a, "xn--b-5ga": a, bø: a }], time: a, tingvoll: a, tinn: a, tjeldsund: a, tjome: a, "xn--tjme-hra": a, tjøme: a, tokke: a, tolga: a, tonsberg: a, "xn--tnsberg-q1a": a, tønsberg: a, torsken: a, "xn--trna-woa": a, træna: a, trana: a, tranoy: a, "xn--trany-yua": a, tranøy: a, troandin: a, trogstad: a, "xn--trgstad-r1a": a, trøgstad: a, tromsa: a, tromso: a, "xn--troms-zua": a, tromsø: a, trondheim: a, trysil: a, tvedestrand: a, tydal: a, tynset: a, tysfjord: a, tysnes: a, "xn--tysvr-vra": a, tysvær: a, tysvar: a, ullensaker: a, ullensvang: a, ulvik: a, unjarga: a, "xn--unjrga-rta": a, unjárga: a, utsira: a, vaapste: a, vadso: a, "xn--vads-jra": a, vadsø: a, "xn--vry-yla5g": a, værøy: a, vaga: a, "xn--vg-yiab": a, vågå: a, vagan: a, "xn--vgan-qoa": a, vågan: a, vagsoy: a, "xn--vgsy-qoa0j": a, vågsøy: a, vaksdal: a, valle: a, vang: a, vanylven: a, vardo: a, "xn--vard-jra": a, vardø: a, varggat: a, "xn--vrggt-xqad": a, várggát: a, varoy: a, vefsn: a, vega: a, vegarshei: a, "xn--vegrshei-c0a": a, vegårshei: a, vennesla: a, verdal: a, verran: a, vestby: a, vestfold: [0, { sande: a }], vestnes: a, "vestre-slidre": a, "vestre-toten": a, vestvagoy: a, "xn--vestvgy-ixa6o": a, vestvågøy: a, vevelstad: a, vik: a, vikna: a, vindafjord: a, voagat: a, volda: a, voss: a, co: e, "123hjemmeside": e, myspreadshop: e }], np: h, nr: Wa, nu: [1, { merseine: e, mine: e, shacknet: e, enterprisecloud: e }], nz: [1, { ac: a, co: a, cri: a, geek: a, gen: a, govt: a, health: a, iwi: a, kiwi: a, maori: a, "xn--mori-qsa": a, māori: a, mil: a, net: a, org: a, parliament: a, school: a, cloudns: e }], om: [1, { co: a, com: a, edu: a, gov: a, med: a, museum: a, net: a, org: a, pro: a }], onion: a, org: [1, { altervista: e, pimienta: e, poivron: e, potager: e, sweetpepper: e, cdn77: [0, { c: e, rsc: e }], "cdn77-secure": [0, { origin: [0, { ssl: e }] }], ae: e, cloudns: e, "ip-dynamic": e, ddnss: e, dpdns: e, duckdns: e, tunk: e, blogdns: e, blogsite: e, boldlygoingnowhere: e, dnsalias: e, dnsdojo: e, doesntexist: e, dontexist: e, doomdns: e, dvrdns: e, dynalias: e, dyndns: [2, { go: e, home: e }], endofinternet: e, endoftheinternet: e, "from-me": e, "game-host": e, gotdns: e, "hobby-site": e, homedns: e, homeftp: e, homelinux: e, homeunix: e, "is-a-bruinsfan": e, "is-a-candidate": e, "is-a-celticsfan": e, "is-a-chef": e, "is-a-geek": e, "is-a-knight": e, "is-a-linux-user": e, "is-a-patsfan": e, "is-a-soxfan": e, "is-found": e, "is-lost": e, "is-saved": e, "is-very-bad": e, "is-very-evil": e, "is-very-good": e, "is-very-nice": e, "is-very-sweet": e, "isa-geek": e, "kicks-ass": e, misconfused: e, podzone: e, readmyblog: e, selfip: e, sellsyourhome: e, servebbs: e, serveftp: e, servegame: e, "stuff-4-sale": e, webhop: e, accesscam: e, camdvr: e, freeddns: e, mywire: e, webredirect: e, twmail: e, eu: [2, { al: e, asso: e, at: e, au: e, be: e, bg: e, ca: e, cd: e, ch: e, cn: e, cy: e, cz: e, de: e, dk: e, edu: e, ee: e, es: e, fi: e, fr: e, gr: e, hr: e, hu: e, ie: e, il: e, in: e, int: e, is: e, it: e, jp: e, kr: e, lt: e, lu: e, lv: e, me: e, mk: e, mt: e, my: e, net: e, ng: e, nl: e, no: e, nz: e, pl: e, pt: e, ro: e, ru: e, se: e, si: e, sk: e, tr: e, uk: e, us: e }], fedorainfracloud: e, fedorapeople: e, fedoraproject: [0, { cloud: e, os: ba, stg: [0, { os: ba }] }], freedesktop: e, hatenadiary: e, hepforge: e, "in-dsl": e, "in-vpn": e, js: e, barsy: e, mayfirst: e, routingthecloud: e, bmoattachments: e, "cable-modem": e, collegefan: e, couchpotatofries: e, hopto: e, mlbfan: e, myftp: e, mysecuritycamera: e, nflfan: e, "no-ip": e, "read-books": e, ufcfan: e, zapto: e, dynserv: e, "now-dns": e, "is-local": e, httpbin: e, pubtls: e, jpn: e, "my-firewall": e, myfirewall: e, spdns: e, "small-web": e, dsmynas: e, familyds: e, teckids: xa, tuxfamily: e, diskstation: e, hk: e, us: e, toolforge: e, wmcloud: e, wmflabs: e, za: e }], pa: [1, { abo: a, ac: a, com: a, edu: a, gob: a, ing: a, med: a, net: a, nom: a, org: a, sld: a }], pe: [1, { com: a, edu: a, gob: a, mil: a, net: a, nom: a, org: a }], pf: [1, { com: a, edu: a, org: a }], pg: h, ph: [1, { com: a, edu: a, gov: a, i: a, mil: a, net: a, ngo: a, org: a, cloudns: e }], pk: [1, { ac: a, biz: a, com: a, edu: a, fam: a, gkp: a, gob: a, gog: a, gok: a, gop: a, gos: a, gov: a, net: a, org: a, web: a }], pl: [1, { com: a, net: a, org: a, agro: a, aid: a, atm: a, auto: a, biz: a, edu: a, gmina: a, gsm: a, info: a, mail: a, media: a, miasta: a, mil: a, nieruchomosci: a, nom: a, pc: a, powiat: a, priv: a, realestate: a, rel: a, sex: a, shop: a, sklep: a, sos: a, szkola: a, targi: a, tm: a, tourism: a, travel: a, turystyka: a, gov: [1, { ap: a, griw: a, ic: a, is: a, kmpsp: a, konsulat: a, kppsp: a, kwp: a, kwpsp: a, mup: a, mw: a, oia: a, oirm: a, oke: a, oow: a, oschr: a, oum: a, pa: a, pinb: a, piw: a, po: a, pr: a, psp: a, psse: a, pup: a, rzgw: a, sa: a, sdn: a, sko: a, so: a, sr: a, starostwo: a, ug: a, ugim: a, um: a, umig: a, upow: a, uppo: a, us: a, uw: a, uzs: a, wif: a, wiih: a, winb: a, wios: a, witd: a, wiw: a, wkz: a, wsa: a, wskr: a, wsse: a, wuoz: a, wzmiuw: a, zp: a, zpisdn: a }], augustow: a, "babia-gora": a, bedzin: a, beskidy: a, bialowieza: a, bialystok: a, bielawa: a, bieszczady: a, boleslawiec: a, bydgoszcz: a, bytom: a, cieszyn: a, czeladz: a, czest: a, dlugoleka: a, elblag: a, elk: a, glogow: a, gniezno: a, gorlice: a, grajewo: a, ilawa: a, jaworzno: a, "jelenia-gora": a, jgora: a, kalisz: a, karpacz: a, kartuzy: a, kaszuby: a, katowice: a, "kazimierz-dolny": a, kepno: a, ketrzyn: a, klodzko: a, kobierzyce: a, kolobrzeg: a, konin: a, konskowola: a, kutno: a, lapy: a, lebork: a, legnica: a, lezajsk: a, limanowa: a, lomza: a, lowicz: a, lubin: a, lukow: a, malbork: a, malopolska: a, mazowsze: a, mazury: a, mielec: a, mielno: a, mragowo: a, naklo: a, nowaruda: a, nysa: a, olawa: a, olecko: a, olkusz: a, olsztyn: a, opoczno: a, opole: a, ostroda: a, ostroleka: a, ostrowiec: a, ostrowwlkp: a, pila: a, pisz: a, podhale: a, podlasie: a, polkowice: a, pomorskie: a, pomorze: a, prochowice: a, pruszkow: a, przeworsk: a, pulawy: a, radom: a, "rawa-maz": a, rybnik: a, rzeszow: a, sanok: a, sejny: a, skoczow: a, slask: a, slupsk: a, sosnowiec: a, "stalowa-wola": a, starachowice: a, stargard: a, suwalki: a, swidnica: a, swiebodzin: a, swinoujscie: a, szczecin: a, szczytno: a, tarnobrzeg: a, tgory: a, turek: a, tychy: a, ustka: a, walbrzych: a, warmia: a, warszawa: a, waw: a, wegrow: a, wielun: a, wlocl: a, wloclawek: a, wodzislaw: a, wolomin: a, wroclaw: a, zachpomor: a, zagan: a, zarow: a, zgora: a, zgorzelec: a, art: e, gliwice: e, krakow: e, poznan: e, wroc: e, zakopane: e, beep: e, "ecommerce-shop": e, cfolks: e, dfirma: e, dkonto: e, you2: e, shoparena: e, homesklep: e, sdscloud: e, unicloud: e, lodz: e, pabianice: e, plock: e, sieradz: e, skierniewice: e, zgierz: e, krasnik: e, leczna: e, lubartow: e, lublin: e, poniatowa: e, swidnik: e, co: e, torun: e, simplesite: e, myspreadshop: e, gda: e, gdansk: e, gdynia: e, med: e, sopot: e, bielsko: e }], pm: [1, { own: e, name: e }], pn: [1, { co: a, edu: a, gov: a, net: a, org: a }], post: a, pr: [1, { biz: a, com: a, edu: a, gov: a, info: a, isla: a, name: a, net: a, org: a, pro: a, ac: a, est: a, prof: a }], pro: [1, { aaa: a, aca: a, acct: a, avocat: a, bar: a, cpa: a, eng: a, jur: a, law: a, med: a, recht: a, "12chars": e, cloudns: e, barsy: e, ngrok: e }], ps: [1, { com: a, edu: a, gov: a, net: a, org: a, plo: a, sec: a }], pt: [1, { com: a, edu: a, gov: a, int: a, net: a, nome: a, org: a, publ: a, "123paginaweb": e }], pw: [1, { gov: a, cloudns: e, x443: e }], py: [1, { com: a, coop: a, edu: a, gov: a, mil: a, net: a, org: a }], qa: [1, { com: a, edu: a, gov: a, mil: a, name: a, net: a, org: a, sch: a }], re: [1, { asso: a, com: a, netlib: e, can: e }], ro: [1, { arts: a, com: a, firm: a, info: a, nom: a, nt: a, org: a, rec: a, store: a, tm: a, www: a, co: e, shop: e, barsy: e }], rs: [1, { ac: a, co: a, edu: a, gov: a, in: a, org: a, brendly: Ga, barsy: e, ox: e }], ru: [1, { ac: e, edu: e, gov: e, int: e, mil: e, eurodir: e, adygeya: e, bashkiria: e, bir: e, cbg: e, com: e, dagestan: e, grozny: e, kalmykia: e, kustanai: e, marine: e, mordovia: e, msk: e, mytis: e, nalchik: e, nov: e, pyatigorsk: e, spb: e, vladikavkaz: e, vladimir: e, na4u: e, mircloud: e, myjino: [2, { hosting: n, landing: n, spectrum: n, vps: n }], cldmail: [0, { hb: e }], mcdir: [2, { vps: e }], mcpre: e, net: e, org: e, pp: e, lk3: e, ras: e }], rw: [1, { ac: a, co: a, coop: a, gov: a, mil: a, net: a, org: a }], sa: [1, { com: a, edu: a, gov: a, med: a, net: a, org: a, pub: a, sch: a }], sb: t, sc: t, sd: [1, { com: a, edu: a, gov: a, info: a, med: a, net: a, org: a, tv: a }], se: [1, { a, ac: a, b: a, bd: a, brand: a, c: a, d: a, e: a, f: a, fh: a, fhsk: a, fhv: a, g: a, h: a, i: a, k: a, komforb: a, kommunalforbund: a, komvux: a, l: a, lanbib: a, m: a, n: a, naturbruksgymn: a, o: a, org: a, p: a, parti: a, pp: a, press: a, r: a, s: a, t: a, tm: a, u: a, w: a, x: a, y: a, z: a, com: e, iopsys: e, "123minsida": e, itcouldbewor: e, myspreadshop: e }], sg: [1, { com: a, edu: a, gov: a, net: a, org: a, enscaled: e }], sh: [1, { com: a, gov: a, mil: a, net: a, org: a, hashbang: e, botda: e, platform: [0, { ent: e, eu: e, us: e }], now: e }], si: [1, { f5: e, gitapp: e, gitpage: e }], sj: a, sk: a, sl: t, sm: a, sn: [1, { art: a, com: a, edu: a, gouv: a, org: a, perso: a, univ: a }], so: [1, { com: a, edu: a, gov: a, me: a, net: a, org: a, surveys: e }], sr: a, ss: [1, { biz: a, co: a, com: a, edu: a, gov: a, me: a, net: a, org: a, sch: a }], st: [1, { co: a, com: a, consulado: a, edu: a, embaixada: a, mil: a, net: a, org: a, principe: a, saotome: a, store: a, helioho: e, kirara: e, noho: e }], su: [1, { abkhazia: e, adygeya: e, aktyubinsk: e, arkhangelsk: e, armenia: e, ashgabad: e, azerbaijan: e, balashov: e, bashkiria: e, bryansk: e, bukhara: e, chimkent: e, dagestan: e, "east-kazakhstan": e, exnet: e, georgia: e, grozny: e, ivanovo: e, jambyl: e, kalmykia: e, kaluga: e, karacol: e, karaganda: e, karelia: e, khakassia: e, krasnodar: e, kurgan: e, kustanai: e, lenug: e, mangyshlak: e, mordovia: e, msk: e, murmansk: e, nalchik: e, navoi: e, "north-kazakhstan": e, nov: e, obninsk: e, penza: e, pokrovsk: e, sochi: e, spb: e, tashkent: e, termez: e, togliatti: e, troitsk: e, tselinograd: e, tula: e, tuva: e, vladikavkaz: e, vladimir: e, vologda: e }], sv: [1, { com: a, edu: a, gob: a, org: a, red: a }], sx: l, sy: o, sz: [1, { ac: a, co: a, org: a }], tc: a, td: a, tel: a, tf: [1, { sch: e }], tg: a, th: [1, { ac: a, co: a, go: a, in: a, mi: a, net: a, or: a, online: e, shop: e }], tj: [1, { ac: a, biz: a, co: a, com: a, edu: a, go: a, gov: a, int: a, mil: a, name: a, net: a, nic: a, org: a, test: a, web: a }], tk: a, tl: l, tm: [1, { co: a, com: a, edu: a, gov: a, mil: a, net: a, nom: a, org: a }], tn: [1, { com: a, ens: a, fin: a, gov: a, ind: a, info: a, intl: a, mincom: a, nat: a, net: a, org: a, perso: a, tourism: a, orangecloud: e }], to: [1, { 611: e, com: a, edu: a, gov: a, mil: a, net: a, org: a, oya: e, x0: e, quickconnect: j, vpnplus: e }], tr: [1, { av: a, bbs: a, bel: a, biz: a, com: a, dr: a, edu: a, gen: a, gov: a, info: a, k12: a, kep: a, mil: a, name: a, net: a, org: a, pol: a, tel: a, tsk: a, tv: a, web: a, nc: l }], tt: [1, { biz: a, co: a, com: a, edu: a, gov: a, info: a, mil: a, name: a, net: a, org: a, pro: a }], tv: [1, { "better-than": e, dyndns: e, "on-the-web": e, "worse-than": e, from: e, sakura: e }], tw: [1, { club: a, com: [1, { mymailer: e }], ebiz: a, edu: a, game: a, gov: a, idv: a, mil: a, net: a, org: a, url: e, mydns: e }], tz: [1, { ac: a, co: a, go: a, hotel: a, info: a, me: a, mil: a, mobi: a, ne: a, or: a, sc: a, tv: a }], ua: [1, { com: a, edu: a, gov: a, in: a, net: a, org: a, cherkassy: a, cherkasy: a, chernigov: a, chernihiv: a, chernivtsi: a, chernovtsy: a, ck: a, cn: a, cr: a, crimea: a, cv: a, dn: a, dnepropetrovsk: a, dnipropetrovsk: a, donetsk: a, dp: a, if: a, "ivano-frankivsk": a, kh: a, kharkiv: a, kharkov: a, kherson: a, khmelnitskiy: a, khmelnytskyi: a, kiev: a, kirovograd: a, km: a, kr: a, kropyvnytskyi: a, krym: a, ks: a, kv: a, kyiv: a, lg: a, lt: a, lugansk: a, luhansk: a, lutsk: a, lv: a, lviv: a, mk: a, mykolaiv: a, nikolaev: a, od: a, odesa: a, odessa: a, pl: a, poltava: a, rivne: a, rovno: a, rv: a, sb: a, sebastopol: a, sevastopol: a, sm: a, sumy: a, te: a, ternopil: a, uz: a, uzhgorod: a, uzhhorod: a, vinnica: a, vinnytsia: a, vn: a, volyn: a, yalta: a, zakarpattia: a, zaporizhzhe: a, zaporizhzhia: a, zhitomir: a, zhytomyr: a, zp: a, zt: a, cc: e, inf: e, ltd: e, cx: e, biz: e, co: e, pp: e, v: e }], ug: [1, { ac: a, co: a, com: a, edu: a, go: a, gov: a, mil: a, ne: a, or: a, org: a, sc: a, us: a }], uk: [1, { ac: a, co: [1, { bytemark: [0, { dh: e, vm: e }], layershift: ya, barsy: e, barsyonline: e, retrosnub: Ha, "nh-serv": e, "no-ip": e, adimo: e, myspreadshop: e }], gov: [1, { api: e, campaign: e, service: e }], ltd: a, me: a, net: a, nhs: a, org: [1, { glug: e, lug: e, lugs: e, affinitylottery: e, raffleentry: e, weeklylottery: e }], plc: a, police: a, sch: h, conn: e, copro: e, hosp: e, "independent-commission": e, "independent-inquest": e, "independent-inquiry": e, "independent-panel": e, "independent-review": e, "public-inquiry": e, "royal-commission": e, pymnt: e, barsy: e, nimsite: e, oraclegovcloudapps: n }], us: [1, { dni: a, isa: a, nsn: a, ak: y, al: y, ar: y, as: y, az: y, ca: y, co: y, ct: y, dc: y, de: [1, { cc: a, lib: e }], fl: y, ga: y, gu: y, hi: ra, ia: y, id: y, il: y, in: y, ks: y, ky: y, la: y, ma: [1, { k12: [1, { chtr: a, paroch: a, pvt: a }], cc: a, lib: a }], md: y, me: y, mi: [1, { k12: a, cc: a, lib: a, "ann-arbor": a, cog: a, dst: a, eaton: a, gen: a, mus: a, tec: a, washtenaw: a }], mn: y, mo: y, ms: y, mt: y, nc: y, nd: ra, ne: y, nh: y, nj: y, nm: y, nv: y, ny: y, oh: y, ok: y, or: y, pa: y, pr: y, ri: ra, sc: y, sd: ra, tn: y, tx: y, ut: y, va: y, vi: y, vt: y, wa: y, wi: y, wv: [1, { cc: a }], wy: y, cloudns: e, "is-by": e, "land-4-sale": e, "stuff-4-sale": e, heliohost: e, enscaled: [0, { phx: e }], mircloud: e, ngo: e, golffan: e, noip: e, pointto: e, freeddns: e, srv: [2, { gh: e, gl: e }], platterp: e, servername: e }], uy: [1, { com: a, edu: a, gub: a, mil: a, net: a, org: a }], uz: [1, { co: a, com: a, net: a, org: a }], va: a, vc: [1, { com: a, edu: a, gov: a, mil: a, net: a, org: a, gv: [2, { d: e }], "0e": n, mydns: e }], ve: [1, { arts: a, bib: a, co: a, com: a, e12: a, edu: a, emprende: a, firm: a, gob: a, gov: a, info: a, int: a, mil: a, net: a, nom: a, org: a, rar: a, rec: a, store: a, tec: a, web: a }], vg: [1, { edu: a }], vi: [1, { co: a, com: a, k12: a, net: a, org: a }], vn: [1, { ac: a, ai: a, biz: a, com: a, edu: a, gov: a, health: a, id: a, info: a, int: a, io: a, name: a, net: a, org: a, pro: a, angiang: a, bacgiang: a, backan: a, baclieu: a, bacninh: a, "baria-vungtau": a, bentre: a, binhdinh: a, binhduong: a, binhphuoc: a, binhthuan: a, camau: a, cantho: a, caobang: a, daklak: a, daknong: a, danang: a, dienbien: a, dongnai: a, dongthap: a, gialai: a, hagiang: a, haiduong: a, haiphong: a, hanam: a, hanoi: a, hatinh: a, haugiang: a, hoabinh: a, hungyen: a, khanhhoa: a, kiengiang: a, kontum: a, laichau: a, lamdong: a, langson: a, laocai: a, longan: a, namdinh: a, nghean: a, ninhbinh: a, ninhthuan: a, phutho: a, phuyen: a, quangbinh: a, quangnam: a, quangngai: a, quangninh: a, quangtri: a, soctrang: a, sonla: a, tayninh: a, thaibinh: a, thainguyen: a, thanhhoa: a, thanhphohochiminh: a, thuathienhue: a, tiengiang: a, travinh: a, tuyenquang: a, vinhlong: a, vinhphuc: a, yenbai: a }], vu: oa, wf: [1, { biz: e, sch: e }], ws: [1, { com: a, edu: a, gov: a, net: a, org: a, advisor: n, cloud66: e, dyndns: e, mypets: e }], yt: [1, { org: e }], "xn--mgbaam7a8h": a, امارات: a, "xn--y9a3aq": a, հայ: a, "xn--54b7fta0cc": a, বাংলা: a, "xn--90ae": a, бг: a, "xn--mgbcpq6gpa1a": a, البحرين: a, "xn--90ais": a, бел: a, "xn--fiqs8s": a, 中国: a, "xn--fiqz9s": a, 中國: a, "xn--lgbbat1ad8j": a, الجزائر: a, "xn--wgbh1c": a, مصر: a, "xn--e1a4c": a, ею: a, "xn--qxa6a": a, ευ: a, "xn--mgbah1a3hjkrd": a, موريتانيا: a, "xn--node": a, გე: a, "xn--qxam": a, ελ: a, "xn--j6w193g": [1, { "xn--gmqw5a": a, "xn--55qx5d": a, "xn--mxtq1m": a, "xn--wcvs22d": a, "xn--uc0atv": a, "xn--od0alg": a }], 香港: [1, { 個人: a, 公司: a, 政府: a, 教育: a, 組織: a, 網絡: a }], "xn--2scrj9c": a, ಭಾರತ: a, "xn--3hcrj9c": a, ଭାରତ: a, "xn--45br5cyl": a, ভাৰত: a, "xn--h2breg3eve": a, भारतम्: a, "xn--h2brj9c8c": a, भारोत: a, "xn--mgbgu82a": a, ڀارت: a, "xn--rvc1e0am3e": a, ഭാരതം: a, "xn--h2brj9c": a, भारत: a, "xn--mgbbh1a": a, بارت: a, "xn--mgbbh1a71e": a, بھارت: a, "xn--fpcrj9c3d": a, భారత్: a, "xn--gecrj9c": a, ભારત: a, "xn--s9brj9c": a, ਭਾਰਤ: a, "xn--45brj9c": a, ভারত: a, "xn--xkc2dl3a5ee0h": a, இந்தியா: a, "xn--mgba3a4f16a": a, ایران: a, "xn--mgba3a4fra": a, ايران: a, "xn--mgbtx2b": a, عراق: a, "xn--mgbayh7gpa": a, الاردن: a, "xn--3e0b707e": a, 한국: a, "xn--80ao21a": a, қаз: a, "xn--q7ce6a": a, ລາວ: a, "xn--fzc2c9e2c": a, ලංකා: a, "xn--xkc2al3hye2a": a, இலங்கை: a, "xn--mgbc0a9azcg": a, المغرب: a, "xn--d1alf": a, мкд: a, "xn--l1acc": a, мон: a, "xn--mix891f": a, 澳門: a, "xn--mix082f": a, 澳门: a, "xn--mgbx4cd0ab": a, مليسيا: a, "xn--mgb9awbf": a, عمان: a, "xn--mgbai9azgqp6j": a, پاکستان: a, "xn--mgbai9a5eva00b": a, پاكستان: a, "xn--ygbi2ammx": a, فلسطين: a, "xn--90a3ac": [1, { "xn--80au": a, "xn--90azh": a, "xn--d1at": a, "xn--c1avg": a, "xn--o1ac": a, "xn--o1ach": a }], срб: [1, { ак: a, обр: a, од: a, орг: a, пр: a, упр: a }], "xn--p1ai": a, рф: a, "xn--wgbl6a": a, قطر: a, "xn--mgberp4a5d4ar": a, السعودية: a, "xn--mgberp4a5d4a87g": a, السعودیة: a, "xn--mgbqly7c0a67fbc": a, السعودیۃ: a, "xn--mgbqly7cvafr": a, السعوديه: a, "xn--mgbpl2fh": a, سودان: a, "xn--yfro4i67o": a, 新加坡: a, "xn--clchc0ea0b2g2a9gcd": a, சிங்கப்பூர்: a, "xn--ogbpf8fl": a, سورية: a, "xn--mgbtf8fl": a, سوريا: a, "xn--o3cw4h": [1, { "xn--o3cyx2a": a, "xn--12co0c3b4eva": a, "xn--m3ch0j3a": a, "xn--h3cuzk1di": a, "xn--12c1fe0br": a, "xn--12cfi8ixb8l": a }], ไทย: [1, { ทหาร: a, ธุรกิจ: a, เน็ต: a, รัฐบาล: a, ศึกษา: a, องค์กร: a }], "xn--pgbs0dh": a, تونس: a, "xn--kpry57d": a, 台灣: a, "xn--kprw13d": a, 台湾: a, "xn--nnx388a": a, 臺灣: a, "xn--j1amh": a, укр: a, "xn--mgb2ddes": a, اليمن: a, xxx: a, ye: o, za: [0, { ac: a, agric: a, alt: a, co: a, edu: a, gov: a, grondar: a, law: a, mil: a, net: a, ngo: a, nic: a, nis: a, nom: a, org: a, school: a, tm: a, web: a }], zm: [1, { ac: a, biz: a, co: a, com: a, edu: a, gov: a, info: a, mil: a, net: a, org: a, sch: a }], zw: [1, { ac: a, co: a, gov: a, mil: a, org: a }], aaa: a, aarp: a, abb: a, abbott: a, abbvie: a, abc: a, able: a, abogado: a, abudhabi: a, academy: [1, { official: e }], accenture: a, accountant: a, accountants: a, aco: a, actor: a, ads: a, adult: a, aeg: a, aetna: a, afl: a, africa: a, agakhan: a, agency: a, aig: a, airbus: a, airforce: a, airtel: a, akdn: a, alibaba: a, alipay: a, allfinanz: a, allstate: a, ally: a, alsace: a, alstom: a, amazon: a, americanexpress: a, americanfamily: a, amex: a, amfam: a, amica: a, amsterdam: a, analytics: a, android: a, anquan: a, anz: a, aol: a, apartments: a, app: [1, { adaptable: e, aiven: e, beget: n, brave: i, clerk: e, clerkstage: e, wnext: e, csb: [2, { preview: e }], convex: e, deta: e, ondigitalocean: e, easypanel: e, encr: [2, { frontend: e }], evervault: r, expo: [2, { staging: e }], edgecompute: e, "on-fleek": e, flutterflow: e, e2b: e, framer: e, github: e, hosted: n, run: n, web: e, hasura: e, botdash: e, loginline: e, lovable: e, luyani: e, medusajs: e, messerli: e, netfy: e, netlify: e, ngrok: e, "ngrok-free": e, developer: n, noop: e, northflank: n, upsun: n, replit: u, nyat: e, snowflake: [0, { "*": e, privatelink: n }], streamlit: e, storipress: e, telebit: e, typedream: e, vercel: e, bookonline: e, wdh: e, windsurf: e, zeabur: e, zerops: n }], apple: a, aquarelle: a, arab: a, aramco: a, archi: a, army: a, art: a, arte: a, asda: a, associates: a, athleta: a, attorney: a, auction: a, audi: a, audible: a, audio: a, auspost: a, author: a, auto: a, autos: a, aws: [1, { sagemaker: [0, { "ap-northeast-1": d, "ap-northeast-2": d, "ap-south-1": d, "ap-southeast-1": d, "ap-southeast-2": d, "ca-central-1": g, "eu-central-1": d, "eu-west-1": d, "eu-west-2": d, "us-east-1": g, "us-east-2": g, "us-west-2": g, "af-south-1": c, "ap-east-1": c, "ap-northeast-3": c, "ap-south-2": p, "ap-southeast-3": c, "ap-southeast-4": p, "ca-west-1": [0, { notebook: e, "notebook-fips": e }], "eu-central-2": c, "eu-north-1": c, "eu-south-1": c, "eu-south-2": c, "eu-west-3": c, "il-central-1": c, "me-central-1": c, "me-south-1": c, "sa-east-1": c, "us-gov-east-1": v, "us-gov-west-1": v, "us-west-1": [0, { notebook: e, "notebook-fips": e, studio: e }], experiments: n }], repost: [0, { private: n }], on: [0, { "ap-northeast-1": s, "ap-southeast-1": s, "ap-southeast-2": s, "eu-central-1": s, "eu-north-1": s, "eu-west-1": s, "us-east-1": s, "us-east-2": s, "us-west-2": s }] }], axa: a, azure: a, baby: a, baidu: a, banamex: a, band: a, bank: a, bar: a, barcelona: a, barclaycard: a, barclays: a, barefoot: a, bargains: a, baseball: a, basketball: [1, { aus: e, nz: e }], bauhaus: a, bayern: a, bbc: a, bbt: a, bbva: a, bcg: a, bcn: a, beats: a, beauty: a, beer: a, berlin: a, best: a, bestbuy: a, bet: a, bharti: a, bible: a, bid: a, bike: a, bing: a, bingo: a, bio: a, black: a, blackfriday: a, blockbuster: a, blog: a, bloomberg: a, blue: a, bms: a, bmw: a, bnpparibas: a, boats: a, boehringer: a, bofa: a, bom: a, bond: a, boo: a, book: a, booking: a, bosch: a, bostik: a, boston: a, bot: a, boutique: a, box: a, bradesco: a, bridgestone: a, broadway: a, broker: a, brother: a, brussels: a, build: [1, { v0: e, windsurf: e }], builders: [1, { cloudsite: e }], business: k, buy: a, buzz: a, bzh: a, cab: a, cafe: a, cal: a, call: a, calvinklein: a, cam: a, camera: a, camp: [1, { emf: [0, { at: e }] }], canon: a, capetown: a, capital: a, capitalone: a, car: a, caravan: a, cards: a, care: a, career: a, careers: a, cars: a, casa: [1, { nabu: [0, { ui: e }] }], case: a, cash: a, casino: a, catering: a, catholic: a, cba: a, cbn: a, cbre: a, center: a, ceo: a, cern: a, cfa: a, cfd: a, chanel: a, channel: a, charity: a, chase: a, chat: a, cheap: a, chintai: a, christmas: a, chrome: a, church: a, cipriani: a, circle: a, cisco: a, citadel: a, citi: a, citic: a, city: a, claims: a, cleaning: a, click: a, clinic: a, clinique: a, clothing: a, cloud: [1, { convex: e, elementor: e, encoway: [0, { eu: e }], statics: n, ravendb: e, axarnet: [0, { "es-1": e }], diadem: e, jelastic: [0, { vip: e }], jele: e, "jenv-aruba": [0, { aruba: [0, { eur: [0, { it1: e }] }], it1: e }], keliweb: [2, { cs: e }], oxa: [2, { tn: e, uk: e }], primetel: [2, { uk: e }], reclaim: [0, { ca: e, uk: e, us: e }], trendhosting: [0, { ch: e, de: e }], jotelulu: e, kuleuven: e, laravel: e, linkyard: e, magentosite: n, matlab: e, observablehq: e, perspecta: e, vapor: e, "on-rancher": n, scw: [0, { baremetal: [0, { "fr-par-1": e, "fr-par-2": e, "nl-ams-1": e }], "fr-par": [0, { cockpit: e, fnc: [2, { functions: e }], k8s: x, s3: e, "s3-website": e, whm: e }], instances: [0, { priv: e, pub: e }], k8s: e, "nl-ams": [0, { cockpit: e, k8s: x, s3: e, "s3-website": e, whm: e }], "pl-waw": [0, { cockpit: e, k8s: x, s3: e, "s3-website": e }], scalebook: e, smartlabeling: e }], servebolt: e, onstackit: [0, { runs: e }], trafficplex: e, "unison-services": e, urown: e, voorloper: e, zap: e }], club: [1, { cloudns: e, jele: e, barsy: e }], clubmed: a, coach: a, codes: [1, { owo: n }], coffee: a, college: a, cologne: a, commbank: a, community: [1, { nog: e, ravendb: e, myforum: e }], company: a, compare: a, computer: a, comsec: a, condos: a, construction: a, consulting: a, contact: a, contractors: a, cooking: a, cool: [1, { elementor: e, de: e }], corsica: a, country: a, coupon: a, coupons: a, courses: a, cpa: a, credit: a, creditcard: a, creditunion: a, cricket: a, crown: a, crs: a, cruise: a, cruises: a, cuisinella: a, cymru: a, cyou: a, dad: a, dance: a, data: a, date: a, dating: a, datsun: a, day: a, dclk: a, dds: a, deal: a, dealer: a, deals: a, degree: a, delivery: a, dell: a, deloitte: a, delta: a, democrat: a, dental: a, dentist: a, desi: a, design: [1, { graphic: e, bss: e }], dev: [1, { "12chars": e, myaddr: e, panel: e, lcl: n, lclstage: n, stg: n, stgstage: n, pages: e, r2: e, workers: e, deno: e, "deno-staging": e, deta: e, lp: [2, { api: e, objects: e }], evervault: r, fly: e, githubpreview: e, gateway: n, botdash: e, inbrowser: n, "is-a-good": e, "is-a": e, iserv: e, runcontainers: e, localcert: [0, { user: n }], loginline: e, barsy: e, mediatech: e, modx: e, ngrok: e, "ngrok-free": e, "is-a-fullstack": e, "is-cool": e, "is-not-a": e, localplayer: e, xmit: e, "platter-app": e, replit: [2, { archer: e, bones: e, canary: e, global: e, hacker: e, id: e, janeway: e, kim: e, kira: e, kirk: e, odo: e, paris: e, picard: e, pike: e, prerelease: e, reed: e, riker: e, sisko: e, spock: e, staging: e, sulu: e, tarpit: e, teams: e, tucker: e, wesley: e, worf: e }], crm: [0, { d: n, w: n, wa: n, wb: n, wc: n, wd: n, we: n, wf: n }], vercel: e, webhare: n, hrsn: e }], dhl: a, diamonds: a, diet: a, digital: [1, { cloudapps: [2, { london: e }] }], direct: [1, { libp2p: e }], directory: a, discount: a, discover: a, dish: a, diy: a, dnp: a, docs: a, doctor: a, dog: a, domains: a, dot: a, download: a, drive: a, dtv: a, dubai: a, dunlop: a, dupont: a, durban: a, dvag: a, dvr: a, earth: a, eat: a, eco: a, edeka: a, education: k, email: [1, { crisp: [0, { on: e }], tawk: $a, tawkto: $a }], emerck: a, energy: a, engineer: a, engineering: a, enterprises: a, epson: a, equipment: a, ericsson: a, erni: a, esq: a, estate: [1, { compute: n }], eurovision: a, eus: [1, { party: Ba }], events: [1, { koobin: e, co: e }], exchange: a, expert: a, exposed: a, express: a, extraspace: a, fage: a, fail: a, fairwinds: a, faith: a, family: a, fan: a, fans: a, farm: [1, { storj: e }], farmers: a, fashion: a, fast: a, fedex: a, feedback: a, ferrari: a, ferrero: a, fidelity: a, fido: a, film: a, final: a, finance: a, financial: k, fire: a, firestone: a, firmdale: a, fish: a, fishing: a, fit: a, fitness: a, flickr: a, flights: a, flir: a, florist: a, flowers: a, fly: a, foo: a, food: a, football: a, ford: a, forex: a, forsale: a, forum: a, foundation: a, fox: a, free: a, fresenius: a, frl: a, frogans: a, frontier: a, ftr: a, fujitsu: a, fun: a, fund: a, furniture: a, futbol: a, fyi: a, gal: a, gallery: a, gallo: a, gallup: a, game: a, games: [1, { pley: e, sheezy: e }], gap: a, garden: a, gay: [1, { pages: e }], gbiz: a, gdn: [1, { cnpy: e }], gea: a, gent: a, genting: a, george: a, ggee: a, gift: a, gifts: a, gives: a, giving: a, glass: a, gle: a, global: [1, { appwrite: e }], globo: a, gmail: a, gmbh: a, gmo: a, gmx: a, godaddy: a, gold: a, goldpoint: a, golf: a, goo: a, goodyear: a, goog: [1, { cloud: e, translate: e, usercontent: n }], google: a, gop: a, got: a, grainger: a, graphics: a, gratis: a, green: a, gripe: a, grocery: a, group: [1, { discourse: e }], gucci: a, guge: a, guide: a, guitars: a, guru: a, hair: a, hamburg: a, hangout: a, haus: a, hbo: a, hdfc: a, hdfcbank: a, health: [1, { hra: e }], healthcare: a, help: a, helsinki: a, here: a, hermes: a, hiphop: a, hisamitsu: a, hitachi: a, hiv: a, hkt: a, hockey: a, holdings: a, holiday: a, homedepot: a, homegoods: a, homes: a, homesense: a, honda: a, horse: a, hospital: a, host: [1, { cloudaccess: e, freesite: e, easypanel: e, fastvps: e, myfast: e, tempurl: e, wpmudev: e, iserv: e, jele: e, mircloud: e, wp2: e, half: e }], hosting: [1, { opencraft: e }], hot: a, hotels: a, hotmail: a, house: a, how: a, hsbc: a, hughes: a, hyatt: a, hyundai: a, ibm: a, icbc: a, ice: a, icu: a, ieee: a, ifm: a, ikano: a, imamat: a, imdb: a, immo: a, immobilien: a, inc: a, industries: a, infiniti: a, ing: a, ink: a, institute: a, insurance: a, insure: a, international: a, intuit: a, investments: a, ipiranga: a, irish: a, ismaili: a, ist: a, istanbul: a, itau: a, itv: a, jaguar: a, java: a, jcb: a, jeep: a, jetzt: a, jewelry: a, jio: a, jll: a, jmp: a, jnj: a, joburg: a, jot: a, joy: a, jpmorgan: a, jprs: a, juegos: a, juniper: a, kaufen: a, kddi: a, kerryhotels: a, kerryproperties: a, kfh: a, kia: a, kids: a, kim: a, kindle: a, kitchen: a, kiwi: a, koeln: a, komatsu: a, kosher: a, kpmg: a, kpn: a, krd: [1, { co: e, edu: e }], kred: a, kuokgroup: a, kyoto: a, lacaixa: a, lamborghini: a, lamer: a, land: a, landrover: a, lanxess: a, lasalle: a, lat: a, latino: a, latrobe: a, law: a, lawyer: a, lds: a, lease: a, leclerc: a, lefrak: a, legal: a, lego: a, lexus: a, lgbt: a, lidl: a, life: a, lifeinsurance: a, lifestyle: a, lighting: a, like: a, lilly: a, limited: a, limo: a, lincoln: a, link: [1, { myfritz: e, cyon: e, dweb: n, inbrowser: n, nftstorage: ja, mypep: e, storacha: ja, w3s: ja }], live: [1, { aem: e, hlx: e, ewp: n }], living: a, llc: a, llp: a, loan: a, loans: a, locker: a, locus: a, lol: [1, { omg: e }], london: a, lotte: a, lotto: a, love: a, lpl: a, lplfinancial: a, ltd: a, ltda: a, lundbeck: a, luxe: a, luxury: a, madrid: a, maif: a, maison: a, makeup: a, man: a, management: a, mango: a, map: a, market: a, marketing: a, markets: a, marriott: a, marshalls: a, mattel: a, mba: a, mckinsey: a, med: a, media: ia, meet: a, melbourne: a, meme: a, memorial: a, men: a, menu: [1, { barsy: e, barsyonline: e }], merck: a, merckmsd: a, miami: a, microsoft: a, mini: a, mint: a, mit: a, mitsubishi: a, mlb: a, mls: a, mma: a, mobile: a, moda: a, moe: a, moi: a, mom: a, monash: a, money: a, monster: a, mormon: a, mortgage: a, moscow: a, moto: a, motorcycles: a, mov: a, movie: a, msd: a, mtn: a, mtr: a, music: a, nab: a, nagoya: a, navy: a, nba: a, nec: a, netbank: a, netflix: a, network: [1, { alces: n, co: e, arvo: e, azimuth: e, tlon: e }], neustar: a, new: a, news: [1, { noticeable: e }], next: a, nextdirect: a, nexus: a, nfl: a, ngo: a, nhk: a, nico: a, nike: a, nikon: a, ninja: a, nissan: a, nissay: a, nokia: a, norton: a, now: a, nowruz: a, nowtv: a, nra: a, nrw: a, ntt: a, nyc: a, obi: a, observer: a, office: a, okinawa: a, olayan: a, olayangroup: a, ollo: a, omega: a, one: [1, { kin: n, service: e }], ong: [1, { obl: e }], onl: a, online: [1, { eero: e, "eero-stage": e, websitebuilder: e, barsy: e }], ooo: a, open: a, oracle: a, orange: [1, { tech: e }], organic: a, origins: a, osaka: a, otsuka: a, ott: a, ovh: [1, { nerdpol: e }], page: [1, { aem: e, hlx: e, hlx3: e, translated: e, codeberg: e, heyflow: e, prvcy: e, rocky: e, pdns: e, plesk: e }], panasonic: a, paris: a, pars: a, partners: a, parts: a, party: a, pay: a, pccw: a, pet: a, pfizer: a, pharmacy: a, phd: a, philips: a, phone: a, photo: a, photography: a, photos: ia, physio: a, pics: a, pictet: a, pictures: [1, { 1337: e }], pid: a, pin: a, ping: a, pink: a, pioneer: a, pizza: [1, { ngrok: e }], place: k, play: a, playstation: a, plumbing: a, plus: a, pnc: a, pohl: a, poker: a, politie: a, porn: a, praxi: a, press: a, prime: a, prod: a, productions: a, prof: a, progressive: a, promo: a, properties: a, property: a, protection: a, pru: a, prudential: a, pub: [1, { id: n, kin: n, barsy: e }], pwc: a, qpon: a, quebec: a, quest: a, racing: a, radio: a, read: a, realestate: a, realtor: a, realty: a, recipes: a, red: a, redstone: a, redumbrella: a, rehab: a, reise: a, reisen: a, reit: a, reliance: a, ren: a, rent: a, rentals: a, repair: a, report: a, republican: a, rest: a, restaurant: a, review: a, reviews: a, rexroth: a, rich: a, richardli: a, ricoh: a, ril: a, rio: a, rip: [1, { clan: e }], rocks: [1, { myddns: e, stackit: e, "lima-city": e, webspace: e }], rodeo: a, rogers: a, room: a, rsvp: a, rugby: a, ruhr: a, run: [1, { appwrite: n, development: e, ravendb: e, liara: [2, { iran: e }], servers: e, build: n, code: n, database: n, migration: n, onporter: e, repl: e, stackit: e, val: [2, { web: e }], wix: e }], rwe: a, ryukyu: a, saarland: a, safe: a, safety: a, sakura: a, sale: a, salon: a, samsclub: a, samsung: a, sandvik: a, sandvikcoromant: a, sanofi: a, sap: a, sarl: a, sas: a, save: a, saxo: a, sbi: a, sbs: a, scb: a, schaeffler: a, schmidt: a, scholarships: a, school: a, schule: a, schwarz: a, science: a, scot: [1, { gov: [2, { service: e }] }], search: a, seat: a, secure: a, security: a, seek: a, select: a, sener: a, services: [1, { loginline: e }], seven: a, sew: a, sex: a, sexy: a, sfr: a, shangrila: a, sharp: a, shell: a, shia: a, shiksha: a, shoes: a, shop: [1, { base: e, hoplix: e, barsy: e, barsyonline: e, shopware: e }], shopping: a, shouji: a, show: a, silk: a, sina: a, singles: a, site: [1, { square: e, canva: b, cloudera: n, convex: e, cyon: e, caffeine: e, fastvps: e, figma: e, preview: e, heyflow: e, jele: e, jouwweb: e, loginline: e, barsy: e, notion: e, omniwe: e, opensocial: e, madethis: e, platformsh: n, tst: n, byen: e, srht: e, novecore: e, cpanel: e, wpsquared: e }], ski: a, skin: a, sky: a, skype: a, sling: a, smart: a, smile: a, sncf: a, soccer: a, social: a, softbank: a, software: a, sohu: a, solar: a, solutions: a, song: a, sony: a, soy: a, spa: a, space: [1, { myfast: e, heiyu: e, hf: [2, { static: e }], "app-ionos": e, project: e, uber: e, xs4all: e }], sport: a, spot: a, srl: a, stada: a, staples: a, star: a, statebank: a, statefarm: a, stc: a, stcgroup: a, stockholm: a, storage: a, store: [1, { barsy: e, sellfy: e, shopware: e, storebase: e }], stream: a, studio: a, study: a, style: a, sucks: a, supplies: a, supply: a, support: [1, { barsy: e }], surf: a, surgery: a, suzuki: a, swatch: a, swiss: a, sydney: a, systems: [1, { knightpoint: e }], tab: a, taipei: a, talk: a, taobao: a, target: a, tatamotors: a, tatar: a, tattoo: a, tax: a, taxi: a, tci: a, tdk: a, team: [1, { discourse: e, jelastic: e }], tech: [1, { cleverapps: e }], technology: k, temasek: a, tennis: a, teva: a, thd: a, theater: a, theatre: a, tiaa: a, tickets: a, tienda: a, tips: a, tires: a, tirol: a, tjmaxx: a, tjx: a, tkmaxx: a, tmall: a, today: [1, { prequalifyme: e }], tokyo: a, tools: [1, { addr: Fa, myaddr: e }], top: [1, { ntdll: e, wadl: n }], toray: a, toshiba: a, total: a, tours: a, town: a, toyota: a, toys: a, trade: a, trading: a, training: a, travel: a, travelers: a, travelersinsurance: a, trust: a, trv: a, tube: a, tui: a, tunes: a, tushu: a, tvs: a, ubank: a, ubs: a, unicom: a, university: a, uno: a, uol: a, ups: a, vacations: a, vana: a, vanguard: a, vegas: a, ventures: a, verisign: a, versicherung: a, vet: a, viajes: a, video: a, vig: a, viking: a, villas: a, vin: a, vip: a, virgin: a, visa: a, vision: a, viva: a, vivo: a, vlaanderen: a, vodka: a, volvo: a, vote: a, voting: a, voto: a, voyage: a, wales: a, walmart: a, walter: a, wang: a, wanggou: a, watch: a, watches: a, weather: a, weatherchannel: a, webcam: a, weber: a, website: ia, wed: a, wedding: a, weibo: a, weir: a, whoswho: a, wien: a, wiki: ia, williamhill: a, win: a, windows: a, wine: a, winners: a, wme: a, wolterskluwer: a, woodside: a, work: a, works: a, world: a, wow: a, wtc: a, wtf: a, xbox: a, xerox: a, xihuan: a, xin: a, "xn--11b4c3d": a, कॉम: a, "xn--1ck2e1b": a, セール: a, "xn--1qqw23a": a, 佛山: a, "xn--30rr7y": a, 慈善: a, "xn--3bst00m": a, 集团: a, "xn--3ds443g": a, 在线: a, "xn--3pxu8k": a, 点看: a, "xn--42c2d9a": a, คอม: a, "xn--45q11c": a, 八卦: a, "xn--4gbrim": a, موقع: a, "xn--55qw42g": a, 公益: a, "xn--55qx5d": a, 公司: a, "xn--5su34j936bgsg": a, 香格里拉: a, "xn--5tzm5g": a, 网站: a, "xn--6frz82g": a, 移动: a, "xn--6qq986b3xl": a, 我爱你: a, "xn--80adxhks": a, москва: a, "xn--80aqecdr1a": a, католик: a, "xn--80asehdb": a, онлайн: a, "xn--80aswg": a, сайт: a, "xn--8y0a063a": a, 联通: a, "xn--9dbq2a": a, קום: a, "xn--9et52u": a, 时尚: a, "xn--9krt00a": a, 微博: a, "xn--b4w605ferd": a, 淡马锡: a, "xn--bck1b9a5dre4c": a, ファッション: a, "xn--c1avg": a, орг: a, "xn--c2br7g": a, नेट: a, "xn--cck2b3b": a, ストア: a, "xn--cckwcxetd": a, アマゾン: a, "xn--cg4bki": a, 삼성: a, "xn--czr694b": a, 商标: a, "xn--czrs0t": a, 商店: a, "xn--czru2d": a, 商城: a, "xn--d1acj3b": a, дети: a, "xn--eckvdtc9d": a, ポイント: a, "xn--efvy88h": a, 新闻: a, "xn--fct429k": a, 家電: a, "xn--fhbei": a, كوم: a, "xn--fiq228c5hs": a, 中文网: a, "xn--fiq64b": a, 中信: a, "xn--fjq720a": a, 娱乐: a, "xn--flw351e": a, 谷歌: a, "xn--fzys8d69uvgm": a, 電訊盈科: a, "xn--g2xx48c": a, 购物: a, "xn--gckr3f0f": a, クラウド: a, "xn--gk3at1e": a, 通販: a, "xn--hxt814e": a, 网店: a, "xn--i1b6b1a6a2e": a, संगठन: a, "xn--imr513n": a, 餐厅: a, "xn--io0a7i": a, 网络: a, "xn--j1aef": a, ком: a, "xn--jlq480n2rg": a, 亚马逊: a, "xn--jvr189m": a, 食品: a, "xn--kcrx77d1x4a": a, 飞利浦: a, "xn--kput3i": a, 手机: a, "xn--mgba3a3ejt": a, ارامكو: a, "xn--mgba7c0bbn0a": a, العليان: a, "xn--mgbab2bd": a, بازار: a, "xn--mgbca7dzdo": a, ابوظبي: a, "xn--mgbi4ecexp": a, كاثوليك: a, "xn--mgbt3dhd": a, همراه: a, "xn--mk1bu44c": a, 닷컴: a, "xn--mxtq1m": a, 政府: a, "xn--ngbc5azd": a, شبكة: a, "xn--ngbe9e0a": a, بيتك: a, "xn--ngbrx": a, عرب: a, "xn--nqv7f": a, 机构: a, "xn--nqv7fs00ema": a, 组织机构: a, "xn--nyqy26a": a, 健康: a, "xn--otu796d": a, 招聘: a, "xn--p1acf": [1, { "xn--90amc": e, "xn--j1aef": e, "xn--j1ael8b": e, "xn--h1ahn": e, "xn--j1adp": e, "xn--c1avg": e, "xn--80aaa0cvac": e, "xn--h1aliz": e, "xn--90a1af": e, "xn--41a": e }], рус: [1, { биз: e, ком: e, крым: e, мир: e, мск: e, орг: e, самара: e, сочи: e, спб: e, я: e }], "xn--pssy2u": a, 大拿: a, "xn--q9jyb4c": a, みんな: a, "xn--qcka1pmc": a, グーグル: a, "xn--rhqv96g": a, 世界: a, "xn--rovu88b": a, 書籍: a, "xn--ses554g": a, 网址: a, "xn--t60b56a": a, 닷넷: a, "xn--tckwe": a, コム: a, "xn--tiq49xqyj": a, 天主教: a, "xn--unup4y": a, 游戏: a, "xn--vermgensberater-ctb": a, vermögensberater: a, "xn--vermgensberatung-pwb": a, vermögensberatung: a, "xn--vhquv": a, 企业: a, "xn--vuq861b": a, 信息: a, "xn--w4r85el8fhu5dnra": a, 嘉里大酒店: a, "xn--w4rs40l": a, 嘉里: a, "xn--xhq521b": a, 广东: a, "xn--zfr164b": a, 政务: a, xyz: [1, { botdash: e, telebit: n }], yachts: a, yahoo: a, yamaxun: a, yandex: a, yodobashi: a, yoga: a, yokohama: a, you: a, youtube: a, yun: a, zappos: a, zara: a, zero: a, zip: a, zone: [1, { triton: n, stackit: e, lima: e }], zuerich: a }];
|
|
1795
|
+
}();
|
|
1796
|
+
function me(a, e, t, o) {
|
|
1797
|
+
let n = null, i = e;
|
|
1798
|
+
for (; i !== void 0 && ((i[0] & o) !== 0 && (n = {
|
|
1799
|
+
index: t + 1,
|
|
1800
|
+
isIcann: i[0] === 1,
|
|
1801
|
+
isPrivate: i[0] === 2
|
|
1802
|
+
}), t !== -1); ) {
|
|
1803
|
+
const r = i[1];
|
|
1804
|
+
i = Object.prototype.hasOwnProperty.call(r, a[t]) ? r[a[t]] : r["*"], t -= 1;
|
|
1805
|
+
}
|
|
1806
|
+
return n;
|
|
1807
|
+
}
|
|
1808
|
+
function mo(a, e, t) {
|
|
1809
|
+
var o;
|
|
1810
|
+
if (co(a, e, t))
|
|
1811
|
+
return;
|
|
1812
|
+
const n = a.split("."), i = (e.allowPrivateDomains ? 2 : 0) | (e.allowIcannDomains ? 1 : 0), r = me(n, uo, n.length - 1, i);
|
|
1813
|
+
if (r !== null) {
|
|
1814
|
+
t.isIcann = r.isIcann, t.isPrivate = r.isPrivate, t.publicSuffix = n.slice(r.index + 1).join(".");
|
|
1815
|
+
return;
|
|
1816
|
+
}
|
|
1817
|
+
const u = me(n, lo, n.length - 1, i);
|
|
1818
|
+
if (u !== null) {
|
|
1819
|
+
t.isIcann = u.isIcann, t.isPrivate = u.isPrivate, t.publicSuffix = n.slice(u.index).join(".");
|
|
1820
|
+
return;
|
|
1821
|
+
}
|
|
1822
|
+
t.isIcann = !1, t.isPrivate = !1, t.publicSuffix = (o = n[n.length - 1]) !== null && o !== void 0 ? o : null;
|
|
1823
|
+
}
|
|
1824
|
+
const he = io();
|
|
1825
|
+
function ho(a, e = {}) {
|
|
1826
|
+
return ro(he), so(a, 3, mo, e, he).domain;
|
|
1827
|
+
}
|
|
1828
|
+
var po = class sn extends Error {
|
|
1829
|
+
constructor(e) {
|
|
1830
|
+
super(e), this.name = "TimeoutError", Object.setPrototypeOf(this, sn.prototype);
|
|
1831
|
+
}
|
|
1832
|
+
};
|
|
1833
|
+
async function go(a, e) {
|
|
1834
|
+
return new Promise((t, o) => {
|
|
1835
|
+
const n = setTimeout(() => {
|
|
1836
|
+
o(new po("Promise timed out."));
|
|
1837
|
+
}, e);
|
|
1838
|
+
a.then((i) => {
|
|
1839
|
+
clearTimeout(n), t(i);
|
|
1840
|
+
}).catch((i) => {
|
|
1841
|
+
clearTimeout(n), o(i);
|
|
1842
|
+
});
|
|
1843
|
+
});
|
|
1844
|
+
}
|
|
1845
|
+
const ko = "565487b2-a67c-4aac-bb92-3fb64732c7b8", cn = fn(({ ...a }, e) => /* @__PURE__ */ E(tt, {
|
|
1846
|
+
sitekey: ko,
|
|
1847
|
+
ref: e,
|
|
1848
|
+
reCaptchaCompat: !1,
|
|
1849
|
+
...a
|
|
1850
|
+
}));
|
|
1851
|
+
cn.displayName = "HCaptcha";
|
|
1852
|
+
let pe = /* @__PURE__ */ function(a) {
|
|
1853
|
+
return a.AskAi = "ask_ai", a.FeedbackSubmit = "feedback_submit", a.Search = "search", a;
|
|
1854
|
+
}({});
|
|
1855
|
+
const ge = "kapa-recaptcha-script", fo = ({ siteKey: a, config: e, onLoad: t }) => {
|
|
1856
|
+
const { loadScript: o = !0 } = e || {}, [n, i] = Y(!1);
|
|
1857
|
+
return B(() => {
|
|
1858
|
+
var r;
|
|
1859
|
+
if (!o) return;
|
|
1860
|
+
const u = () => {
|
|
1861
|
+
i(!0);
|
|
1862
|
+
}, l = (d) => {
|
|
1863
|
+
console.error("Failed to load reCAPTCHA Enterprise script", d);
|
|
1864
|
+
}, c = (() => {
|
|
1865
|
+
const d = document.getElementById(ge);
|
|
1866
|
+
if (d) return d;
|
|
1867
|
+
const p = document.createElement("script");
|
|
1868
|
+
return p.id = ge, p.src = `https://www.google.com/recaptcha/enterprise.js?render=${a}`, p.async = !0, p.defer = !0, document.head.appendChild(p), p;
|
|
1869
|
+
})();
|
|
1870
|
+
if (!((r = window.grecaptcha) === null || r === void 0) && r.enterprise) {
|
|
1871
|
+
i(!0);
|
|
1872
|
+
return;
|
|
1873
|
+
}
|
|
1874
|
+
return c.addEventListener("load", u), c.addEventListener("error", l), () => {
|
|
1875
|
+
c && (c.removeEventListener("load", u), c.removeEventListener("error", l));
|
|
1876
|
+
};
|
|
1877
|
+
}, [a, o]), B(() => {
|
|
1878
|
+
if (n && window.grecaptcha) try {
|
|
1879
|
+
window.grecaptcha.enterprise.ready(() => {
|
|
1880
|
+
t();
|
|
1881
|
+
});
|
|
1882
|
+
} catch (r) {
|
|
1883
|
+
console.error("Error during reCAPTCHA ready initialization:", r);
|
|
1884
|
+
}
|
|
1885
|
+
}, [n, t]), null;
|
|
1886
|
+
}, ke = "6Lck4YwlAAAAAEIE1hR--varWp0qu9F-8-emQn2v", un = ha(void 0), bo = ({ children: a, provider: e, hasConsent: t }) => {
|
|
1887
|
+
const o = M(null), n = M(null), [i, r] = Y(!1), u = P(async (s) => {
|
|
1888
|
+
if (!i)
|
|
1889
|
+
return console.error("HCaptcha is not ready"), null;
|
|
1890
|
+
try {
|
|
1891
|
+
var c;
|
|
1892
|
+
const { response: d } = await ((c = o.current) === null || c === void 0 ? void 0 : c.execute({ async: !0 }));
|
|
1893
|
+
return {
|
|
1894
|
+
token: d,
|
|
1895
|
+
key: "X-HCAPTCHA-TOKEN"
|
|
1896
|
+
};
|
|
1897
|
+
} catch (d) {
|
|
1898
|
+
return console.error("Error obtaining HCaptcha token:", d), null;
|
|
1899
|
+
}
|
|
1900
|
+
}, [i]), l = P(async (s) => {
|
|
1901
|
+
if (!i)
|
|
1902
|
+
return console.error("reCAPTCHA is not ready"), null;
|
|
1903
|
+
try {
|
|
1904
|
+
return {
|
|
1905
|
+
token: await go(window.grecaptcha.enterprise.execute(ke, { action: s }), 4e3),
|
|
1906
|
+
key: "X-RECAPTCHA-ENTERPRISE-TOKEN"
|
|
1907
|
+
};
|
|
1908
|
+
} catch (c) {
|
|
1909
|
+
return console.error("Error obtaining reCAPTCHA token:", c), null;
|
|
1910
|
+
}
|
|
1911
|
+
}, [i]);
|
|
1912
|
+
return /* @__PURE__ */ E(un.Provider, {
|
|
1913
|
+
value: { executeCaptcha: e === "hcaptcha" ? u : l },
|
|
1914
|
+
children: [a, /* @__PURE__ */ E("div", {
|
|
1915
|
+
ref: n,
|
|
1916
|
+
style: { display: "none" },
|
|
1917
|
+
children: [e === "hcaptcha" && t ? /* @__PURE__ */ E(cn, {
|
|
1918
|
+
onReady: () => {
|
|
1919
|
+
r(!0);
|
|
1920
|
+
},
|
|
1921
|
+
onLoad: () => {
|
|
1922
|
+
r(!0);
|
|
1923
|
+
},
|
|
1924
|
+
ref: o,
|
|
1925
|
+
scriptLocation: n.current
|
|
1926
|
+
}) : null, e === "recaptcha" ? /* @__PURE__ */ E(fo, {
|
|
1927
|
+
onLoad: () => {
|
|
1928
|
+
r(!0);
|
|
1929
|
+
},
|
|
1930
|
+
siteKey: ke,
|
|
1931
|
+
config: { loadScript: t }
|
|
1932
|
+
}) : null]
|
|
1933
|
+
})]
|
|
1934
|
+
});
|
|
1935
|
+
}, vo = () => {
|
|
1936
|
+
const a = Sa(un);
|
|
1937
|
+
if (a === void 0) throw new Error("useConfig must be used within a CaptchaProvider");
|
|
1938
|
+
return a;
|
|
1939
|
+
}, yo = async (a, { onIdentifiers: e, onStreamStart: t, onFirstToken: o, onRelevantSources: n, onPartialAnswer: i, onMetadata: r, onAgentActivityUpdate: u, onError: l }) => {
|
|
1940
|
+
const s = a.body.getReader(), c = new TextDecoder("utf-8"), d = new TextEncoder().encode("␞");
|
|
1941
|
+
let p = new Uint8Array(), g = !1;
|
|
1942
|
+
const v = (k) => {
|
|
1943
|
+
for (let f = 0; f < k.length - d.length + 1; f++) {
|
|
1944
|
+
let x = !0;
|
|
1945
|
+
for (let b = 0; b < d.length; b++) if (k[f + b] !== d[b]) {
|
|
1946
|
+
x = !1;
|
|
1947
|
+
break;
|
|
1948
|
+
}
|
|
1949
|
+
if (x) return f;
|
|
1950
|
+
}
|
|
1951
|
+
return -1;
|
|
1952
|
+
};
|
|
1953
|
+
let h;
|
|
1954
|
+
for (; h = await s.read(), !h.done; ) {
|
|
1955
|
+
const k = new Uint8Array(p.length + h.value.length);
|
|
1956
|
+
k.set(p), k.set(h.value, p.length), p = k;
|
|
1957
|
+
let f;
|
|
1958
|
+
for (; (f = v(p)) !== -1; ) {
|
|
1959
|
+
const x = p.slice(0, f), b = c.decode(x);
|
|
1960
|
+
p = p.slice(f + d.length);
|
|
1961
|
+
let m;
|
|
1962
|
+
try {
|
|
1963
|
+
m = JSON.parse(b);
|
|
1964
|
+
} catch {
|
|
1965
|
+
l("Received an unexpected response from the server."), s.cancel();
|
|
1966
|
+
return;
|
|
1967
|
+
}
|
|
1968
|
+
switch (m.chunk.type) {
|
|
1969
|
+
case "relevant_sources":
|
|
1970
|
+
n(m.chunk.content.relevant_sources);
|
|
1971
|
+
break;
|
|
1972
|
+
case "partial_answer":
|
|
1973
|
+
g || (o(), g = !0), i(m.chunk.content.text);
|
|
1974
|
+
break;
|
|
1975
|
+
case "metadata":
|
|
1976
|
+
r({ is_uncertain: m.chunk.content.is_uncertain });
|
|
1977
|
+
break;
|
|
1978
|
+
case "agent_activity_update":
|
|
1979
|
+
u == null || u({
|
|
1980
|
+
id: m.chunk.content.id,
|
|
1981
|
+
name: m.chunk.content.name,
|
|
1982
|
+
status: m.chunk.content.status,
|
|
1983
|
+
batch_id: m.chunk.content.batch_id,
|
|
1984
|
+
num_results: m.chunk.content.num_results,
|
|
1985
|
+
error: m.chunk.content.error,
|
|
1986
|
+
summary: m.chunk.content.summary
|
|
1987
|
+
});
|
|
1988
|
+
break;
|
|
1989
|
+
case "identifiers":
|
|
1990
|
+
e(m.chunk.content.thread_id, m.chunk.content.question_answer_id);
|
|
1991
|
+
break;
|
|
1992
|
+
case "stream_start":
|
|
1993
|
+
t == null || t(m.chunk.content.thread_id);
|
|
1994
|
+
break;
|
|
1995
|
+
case "error":
|
|
1996
|
+
l(m.chunk.content.reason), s.cancel();
|
|
1997
|
+
return;
|
|
1998
|
+
}
|
|
1999
|
+
}
|
|
2000
|
+
}
|
|
2001
|
+
};
|
|
2002
|
+
var wo = class {
|
|
2003
|
+
constructor(a, e) {
|
|
2004
|
+
this.abortController = new AbortController(), this.proxyURL = "https://proxy.kapa.ai", this.processStreamFn = () => {
|
|
2005
|
+
throw new Error("processStream not implemented");
|
|
2006
|
+
}, e && (this.proxyURL = e), this.processStreamFn = a;
|
|
2007
|
+
}
|
|
2008
|
+
/**
|
|
2009
|
+
* Cancels any ongoing API request.
|
|
2010
|
+
* Creates a new AbortController for future requests.
|
|
2011
|
+
*/
|
|
2012
|
+
abortCurrent() {
|
|
2013
|
+
this.abortController.abort(), this.abortController = new AbortController();
|
|
2014
|
+
}
|
|
2015
|
+
/**
|
|
2016
|
+
* @inheritdoc
|
|
2017
|
+
*/
|
|
2018
|
+
async submitQuery({ query: a, threadId: e, captcha: t, integrationId: o, sourceGroupIDsInclude: n, userIdentifiers: i, userMetadata: r, originUrl: u, mode: l = "default" }, s) {
|
|
2019
|
+
const { onFirstToken: c, onPartialAnswer: d, onMetadata: p, onAgentActivityUpdate: g, onRelevantSources: v, onError: h, onIdentifiers: k, onStreamStart: f } = s;
|
|
2020
|
+
let x = `${this.proxyURL}/proxy/query/v2/chat/stream/`;
|
|
2021
|
+
e && (x = `${this.proxyURL}/proxy/query/v2/thread/${e}/chat/stream/`);
|
|
2022
|
+
try {
|
|
2023
|
+
const b = await fetch(x, {
|
|
2024
|
+
method: "POST",
|
|
2025
|
+
headers: {
|
|
2026
|
+
"Content-Type": "application/json",
|
|
2027
|
+
[t.key]: t.token,
|
|
2028
|
+
"X-WEBSITE-ID": o
|
|
2029
|
+
},
|
|
2030
|
+
body: JSON.stringify({
|
|
2031
|
+
query: a,
|
|
2032
|
+
mode: l,
|
|
2033
|
+
...n && n.length > 0 ? { source_group_ids_include: n } : {},
|
|
2034
|
+
user: {
|
|
2035
|
+
...i,
|
|
2036
|
+
metadata: r
|
|
2037
|
+
},
|
|
2038
|
+
metadata: { origin_url: u },
|
|
2039
|
+
...e ? { thread_id: e } : {}
|
|
2040
|
+
}),
|
|
2041
|
+
signal: this.abortController.signal
|
|
2042
|
+
});
|
|
2043
|
+
b.ok && b.body ? await this.processStreamFn(b, {
|
|
2044
|
+
onFirstToken: c ?? (() => {
|
|
2045
|
+
}),
|
|
2046
|
+
onPartialAnswer: d ?? (() => {
|
|
2047
|
+
}),
|
|
2048
|
+
onRelevantSources: v ?? (() => {
|
|
2049
|
+
}),
|
|
2050
|
+
onError: h ?? (() => {
|
|
2051
|
+
}),
|
|
2052
|
+
onMetadata: p ?? (() => {
|
|
2053
|
+
}),
|
|
2054
|
+
onAgentActivityUpdate: g,
|
|
2055
|
+
onIdentifiers: (m, w) => {
|
|
2056
|
+
k == null || k(m, w);
|
|
2057
|
+
},
|
|
2058
|
+
onStreamStart: f
|
|
2059
|
+
}) : b.status === 403 && (await b.text()).toLowerCase().includes("captcha") ? h == null || h("We noticed unusual activity. Please try asking your question again.") : b.status === 429 ? (await b.json()).type === "deep_thinking_request_limit" ? h == null || h("Too many deep thinking requests running at the moment. Please try again in a few seconds.") : h == null || h("There have been too many requests, please try again in a minute.") : h == null || h("Something went wrong. If the issue persists reach out to support.");
|
|
2060
|
+
} catch (b) {
|
|
2061
|
+
if ((b == null ? void 0 : b.name) === "AbortError") return;
|
|
2062
|
+
h == null || h("Network error while fetching answer.");
|
|
2063
|
+
}
|
|
2064
|
+
}
|
|
2065
|
+
/**
|
|
2066
|
+
* @inheritdoc
|
|
2067
|
+
*/
|
|
2068
|
+
async addFeedback({ questionAnswerId: a, reaction: e, captcha: t, integrationId: o, comment: n }) {
|
|
2069
|
+
const i = `${this.proxyURL}/proxy/query/v2/feedback/upsert/`, r = {
|
|
2070
|
+
user_identifier: "user-identifier",
|
|
2071
|
+
reaction: e,
|
|
2072
|
+
question_answer: a
|
|
2073
|
+
};
|
|
2074
|
+
if (n && (r.comment = JSON.stringify(n)), !(await fetch(i, {
|
|
2075
|
+
method: "POST",
|
|
2076
|
+
headers: {
|
|
2077
|
+
"Content-Type": "application/json",
|
|
2078
|
+
[t.key]: t.token,
|
|
2079
|
+
"X-WEBSITE-ID": o
|
|
2080
|
+
},
|
|
2081
|
+
body: JSON.stringify(r)
|
|
2082
|
+
})).ok) throw new Error("Failed to send feedback");
|
|
2083
|
+
}
|
|
2084
|
+
};
|
|
2085
|
+
const ln = ha(null), xo = ({ children: a }) => {
|
|
2086
|
+
const e = M(null), t = {
|
|
2087
|
+
mode: "default",
|
|
2088
|
+
deepThinkingTimer: {
|
|
2089
|
+
seconds: 0,
|
|
2090
|
+
startedAt: null
|
|
2091
|
+
},
|
|
2092
|
+
enabled: !1
|
|
2093
|
+
}, o = (d, p) => {
|
|
2094
|
+
switch (p.type) {
|
|
2095
|
+
case "SET_MODE":
|
|
2096
|
+
return {
|
|
2097
|
+
...d,
|
|
2098
|
+
mode: p.mode
|
|
2099
|
+
};
|
|
2100
|
+
case "START_DEEP_THINKING_TIMER":
|
|
2101
|
+
return {
|
|
2102
|
+
...d,
|
|
2103
|
+
deepThinkingTimer: {
|
|
2104
|
+
startedAt: /* @__PURE__ */ new Date(),
|
|
2105
|
+
seconds: 0
|
|
2106
|
+
}
|
|
2107
|
+
};
|
|
2108
|
+
case "INCREMENT_DEEP_THINKING_TIMER_SECONDS": {
|
|
2109
|
+
const g = d.deepThinkingTimer.startedAt ? Math.floor(((/* @__PURE__ */ new Date()).getTime() - d.deepThinkingTimer.startedAt.getTime()) / 1e3) : 0;
|
|
2110
|
+
return {
|
|
2111
|
+
...d,
|
|
2112
|
+
deepThinkingTimer: {
|
|
2113
|
+
...d.deepThinkingTimer,
|
|
2114
|
+
seconds: g
|
|
2115
|
+
}
|
|
2116
|
+
};
|
|
2117
|
+
}
|
|
2118
|
+
case "RESET_DEEP_THINKING_TIMER":
|
|
2119
|
+
return {
|
|
2120
|
+
...d,
|
|
2121
|
+
deepThinkingTimer: {
|
|
2122
|
+
seconds: 0,
|
|
2123
|
+
startedAt: null
|
|
2124
|
+
}
|
|
2125
|
+
};
|
|
2126
|
+
default:
|
|
2127
|
+
return d;
|
|
2128
|
+
}
|
|
2129
|
+
}, [n, i] = ve(o, t), r = P(() => {
|
|
2130
|
+
i({
|
|
2131
|
+
type: "SET_MODE",
|
|
2132
|
+
mode: n.mode === "deep_thinking" ? "default" : "deep_thinking"
|
|
2133
|
+
});
|
|
2134
|
+
}, [i, n.mode]), u = P(() => {
|
|
2135
|
+
i({
|
|
2136
|
+
type: "SET_MODE",
|
|
2137
|
+
mode: "deep_thinking"
|
|
2138
|
+
});
|
|
2139
|
+
}, [i]), l = P(() => {
|
|
2140
|
+
i({ type: "START_DEEP_THINKING_TIMER" }), e.current = setInterval(() => {
|
|
2141
|
+
i({ type: "INCREMENT_DEEP_THINKING_TIMER_SECONDS" });
|
|
2142
|
+
}, 1e3);
|
|
2143
|
+
}, [i]), s = P(() => {
|
|
2144
|
+
e.current && clearInterval(e.current), i({ type: "RESET_DEEP_THINKING_TIMER" });
|
|
2145
|
+
}, [i]), c = P(() => {
|
|
2146
|
+
i({
|
|
2147
|
+
type: "SET_MODE",
|
|
2148
|
+
mode: "default"
|
|
2149
|
+
});
|
|
2150
|
+
}, [i]);
|
|
2151
|
+
return /* @__PURE__ */ E(ln.Provider, {
|
|
2152
|
+
value: {
|
|
2153
|
+
active: n.mode === "deep_thinking",
|
|
2154
|
+
seconds: n.deepThinkingTimer.seconds,
|
|
2155
|
+
toggle: r,
|
|
2156
|
+
activate: u,
|
|
2157
|
+
deactivate: c,
|
|
2158
|
+
startTimer: l,
|
|
2159
|
+
stopTimer: s
|
|
2160
|
+
},
|
|
2161
|
+
children: a
|
|
2162
|
+
});
|
|
2163
|
+
}, fe = "kapa_web_id", jo = (a) => {
|
|
2164
|
+
const { mode: e } = a, { data: t, getData: o } = Wt({ extendedResult: !1 }, { immediate: !1 }), n = P(() => {
|
|
2165
|
+
var r, u;
|
|
2166
|
+
if (e !== "cookie") return;
|
|
2167
|
+
let l = (r = ce.get(fe)) !== null && r !== void 0 ? r : crypto.randomUUID();
|
|
2168
|
+
const s = window.location.hostname, c = {
|
|
2169
|
+
domain: (u = ho(s)) !== null && u !== void 0 ? u : s,
|
|
2170
|
+
secure: !0,
|
|
2171
|
+
sameSite: "strict",
|
|
2172
|
+
expires: 399
|
|
2173
|
+
};
|
|
2174
|
+
return ce.set(fe, l, c), l;
|
|
2175
|
+
}, [e]), i = P(async () => {
|
|
2176
|
+
if (e === "fingerprint") {
|
|
2177
|
+
if (t) return t.visitorId;
|
|
2178
|
+
try {
|
|
2179
|
+
return (await o()).visitorId;
|
|
2180
|
+
} catch (r) {
|
|
2181
|
+
console.error("Failed to fetch visitor analytics", r);
|
|
2182
|
+
return;
|
|
2183
|
+
}
|
|
2184
|
+
}
|
|
2185
|
+
}, [
|
|
2186
|
+
e,
|
|
2187
|
+
t,
|
|
2188
|
+
o
|
|
2189
|
+
]);
|
|
2190
|
+
return { buildIdentifiers: P(async () => {
|
|
2191
|
+
var r, u, l, s;
|
|
2192
|
+
const c = (r = window) === null || r === void 0 || (r = r.kapaSettings) === null || r === void 0 ? void 0 : r.user, d = await i(), p = n();
|
|
2193
|
+
return {
|
|
2194
|
+
identifiers: {
|
|
2195
|
+
email: (c == null ? void 0 : c.email) || void 0,
|
|
2196
|
+
unique_client_id: (c == null ? void 0 : c.uniqueClientId) || void 0,
|
|
2197
|
+
fingerprint_id: d,
|
|
2198
|
+
kapa_web_id: p
|
|
2199
|
+
},
|
|
2200
|
+
metadata: {
|
|
2201
|
+
company_name: (c == null || (u = c.metadata) === null || u === void 0 ? void 0 : u.companyName) || void 0,
|
|
2202
|
+
first_name: (c == null || (l = c.metadata) === null || l === void 0 ? void 0 : l.firstName) || void 0,
|
|
2203
|
+
last_name: (c == null || (s = c.metadata) === null || s === void 0 ? void 0 : s.lastName) || void 0
|
|
2204
|
+
}
|
|
2205
|
+
};
|
|
2206
|
+
}, [i, n]) };
|
|
2207
|
+
};
|
|
2208
|
+
var D = class dn extends Array {
|
|
2209
|
+
constructor(...e) {
|
|
2210
|
+
super(...e), Object.setPrototypeOf(this, dn.prototype);
|
|
2211
|
+
}
|
|
2212
|
+
getById(e) {
|
|
2213
|
+
return this.find((t) => t.id === e);
|
|
2214
|
+
}
|
|
2215
|
+
getLatest() {
|
|
2216
|
+
if (this.length !== 0)
|
|
2217
|
+
return this[this.length - 1];
|
|
2218
|
+
}
|
|
2219
|
+
/**
|
|
2220
|
+
* Retrieves the latest completed QA item from the collection.
|
|
2221
|
+
*
|
|
2222
|
+
* A completed QA item is identified by the presence of an `id` property.
|
|
2223
|
+
* If the collection is empty or no completed items are found, the method returns `undefined`.
|
|
2224
|
+
*
|
|
2225
|
+
* @returns {QA | undefined} The latest completed QA item, or `undefined` if none exist.
|
|
2226
|
+
*/
|
|
2227
|
+
getLatestCompleted() {
|
|
2228
|
+
if (this.length === 0) return;
|
|
2229
|
+
const e = this.filter((t) => !!t.id);
|
|
2230
|
+
if (e.length !== 0)
|
|
2231
|
+
return e[e.length - 1];
|
|
2232
|
+
}
|
|
2233
|
+
formatForCallbacks() {
|
|
2234
|
+
return this.map((e) => {
|
|
2235
|
+
var t;
|
|
2236
|
+
return {
|
|
2237
|
+
questionAnswerId: (t = e.id) !== null && t !== void 0 ? t : "",
|
|
2238
|
+
question: e.question,
|
|
2239
|
+
answer: e.answer
|
|
2240
|
+
};
|
|
2241
|
+
});
|
|
2242
|
+
}
|
|
2243
|
+
setById(e, t) {
|
|
2244
|
+
const o = this.getById(e);
|
|
2245
|
+
o && (this[this.indexOf(o)] = {
|
|
2246
|
+
...o,
|
|
2247
|
+
...t
|
|
2248
|
+
});
|
|
2249
|
+
}
|
|
2250
|
+
setLatest(e) {
|
|
2251
|
+
if (this.length === 0) throw new Error("Cannot update latest item: array is empty");
|
|
2252
|
+
const t = this.length - 1;
|
|
2253
|
+
this[t] = {
|
|
2254
|
+
...this[t],
|
|
2255
|
+
...e
|
|
2256
|
+
};
|
|
2257
|
+
}
|
|
2258
|
+
/**
|
|
2259
|
+
* Mutate the latest QA's `thinking` snapshot. No-op if the latest QA
|
|
2260
|
+
* wasn't a deep-thinking request (no `thinking` field).
|
|
2261
|
+
*/
|
|
2262
|
+
updateThinking(e) {
|
|
2263
|
+
const t = this.getLatest();
|
|
2264
|
+
return t != null && t.thinking ? (this.setLatest({ thinking: e(t.thinking) }), !0) : !1;
|
|
2265
|
+
}
|
|
2266
|
+
};
|
|
2267
|
+
function mn(a) {
|
|
2268
|
+
return a.replace(/[#/]+$/, "");
|
|
2269
|
+
}
|
|
2270
|
+
function Eo(a) {
|
|
2271
|
+
if (!a) return ["", ""];
|
|
2272
|
+
const e = a.split(new RegExp("(?<=\\S)\\|(?=\\S)"));
|
|
2273
|
+
if (e.length === 1) {
|
|
2274
|
+
const t = e[0];
|
|
2275
|
+
if (t.startsWith("|")) return ["", t.substring(1)];
|
|
2276
|
+
if (a.endsWith("|")) return [a.substring(0, a.length - 1), ""];
|
|
2277
|
+
}
|
|
2278
|
+
return [e[0] || "", e[1] || ""];
|
|
2279
|
+
}
|
|
2280
|
+
function Ro(a) {
|
|
2281
|
+
return a.map((e) => {
|
|
2282
|
+
const [t, o] = Eo(e.title);
|
|
2283
|
+
return {
|
|
2284
|
+
...e,
|
|
2285
|
+
title: t,
|
|
2286
|
+
subtitle: o
|
|
2287
|
+
};
|
|
2288
|
+
});
|
|
2289
|
+
}
|
|
2290
|
+
const _o = (a) => {
|
|
2291
|
+
const e = (a.replace(/```[\s\S]*?```/g, "").match(/(http|https):\/\/([\w_-]+(?:(?:\.[\w_-]+)+))([\w.,@?^=%&:/+#-]*[\w@?^=%&/+#-])(?=[^\w@?^=%&/+#-]|$)/g) || []).map((t) => mn(t));
|
|
2292
|
+
return new Set(e);
|
|
2293
|
+
};
|
|
2294
|
+
function zo(a) {
|
|
2295
|
+
const e = /* @__PURE__ */ new Set();
|
|
2296
|
+
return a.reduce((t, o) => {
|
|
2297
|
+
const n = mn(o.source_url);
|
|
2298
|
+
return e.has(n) || (e.add(n), t.push({
|
|
2299
|
+
...o,
|
|
2300
|
+
source_url: n
|
|
2301
|
+
})), t;
|
|
2302
|
+
}, []);
|
|
2303
|
+
}
|
|
2304
|
+
const Io = (a, e) => {
|
|
2305
|
+
const t = zo(e), o = _o(a);
|
|
2306
|
+
return t.filter((n) => o == null ? void 0 : o.has(n.source_url));
|
|
2307
|
+
};
|
|
2308
|
+
function Oo(a, e) {
|
|
2309
|
+
switch (e.type) {
|
|
2310
|
+
case "ADD_NEW_QA": {
|
|
2311
|
+
const n = {
|
|
2312
|
+
id: null,
|
|
2313
|
+
question: e.query,
|
|
2314
|
+
answer: "",
|
|
2315
|
+
sources: [],
|
|
2316
|
+
isGenerationAborted: !1,
|
|
2317
|
+
reaction: null,
|
|
2318
|
+
isFeedbackSubmissionEnabled: !1,
|
|
2319
|
+
status: "streaming",
|
|
2320
|
+
toolCalls: [],
|
|
2321
|
+
thinking: e.isDeepThinking ? {
|
|
2322
|
+
startedAt: Date.now(),
|
|
2323
|
+
completedAt: null
|
|
2324
|
+
} : void 0
|
|
2325
|
+
}, i = new D(...a.conversation, n);
|
|
2326
|
+
return {
|
|
2327
|
+
...a,
|
|
2328
|
+
conversation: i,
|
|
2329
|
+
isPreparing: !0,
|
|
2330
|
+
error: null
|
|
2331
|
+
};
|
|
2332
|
+
}
|
|
2333
|
+
case "SET_IDENTIFIERS": {
|
|
2334
|
+
const n = new D(...a.conversation);
|
|
2335
|
+
return n.setLatest({
|
|
2336
|
+
id: e.questionAnswerId,
|
|
2337
|
+
isFeedbackSubmissionEnabled: !0,
|
|
2338
|
+
status: "pending_completion"
|
|
2339
|
+
}), {
|
|
2340
|
+
...a,
|
|
2341
|
+
threadId: e.threadId,
|
|
2342
|
+
conversation: n
|
|
2343
|
+
};
|
|
2344
|
+
}
|
|
2345
|
+
case "SET_RELEVANT_SOURCES": {
|
|
2346
|
+
const n = a.conversation.getLatest();
|
|
2347
|
+
if (n) {
|
|
2348
|
+
const i = Ro(Io(n.answer, e.sources)), r = new D(...a.conversation);
|
|
2349
|
+
return r.setLatest({ sources: i }), {
|
|
2350
|
+
...a,
|
|
2351
|
+
conversation: r
|
|
2352
|
+
};
|
|
2353
|
+
} else
|
|
2354
|
+
return console.error("Conversation is empty in order to set relevant sources"), a;
|
|
2355
|
+
}
|
|
2356
|
+
case "SET_PARTIAL_ANSWER": {
|
|
2357
|
+
var t, o;
|
|
2358
|
+
const n = new D(...a.conversation), i = (t = (o = n.getLatest()) === null || o === void 0 ? void 0 : o.answer) !== null && t !== void 0 ? t : "";
|
|
2359
|
+
return n.setLatest({ answer: i + e.answer }), {
|
|
2360
|
+
...a,
|
|
2361
|
+
conversation: n
|
|
2362
|
+
};
|
|
2363
|
+
}
|
|
2364
|
+
case "SET_METADATA": {
|
|
2365
|
+
const n = new D(...a.conversation);
|
|
2366
|
+
return n.setLatest({ metadata: e.metadata }), {
|
|
2367
|
+
...a,
|
|
2368
|
+
conversation: n
|
|
2369
|
+
};
|
|
2370
|
+
}
|
|
2371
|
+
case "SET_ERROR": {
|
|
2372
|
+
const n = new D(...a.conversation);
|
|
2373
|
+
return n.updateThinking((i) => i.completedAt === null ? {
|
|
2374
|
+
...i,
|
|
2375
|
+
completedAt: Date.now()
|
|
2376
|
+
} : i), {
|
|
2377
|
+
...a,
|
|
2378
|
+
conversation: n,
|
|
2379
|
+
error: e.message,
|
|
2380
|
+
isPreparing: !1,
|
|
2381
|
+
isGenerating: !1
|
|
2382
|
+
};
|
|
2383
|
+
}
|
|
2384
|
+
case "SET_IS_GENERATING":
|
|
2385
|
+
if (e.isGenerating) {
|
|
2386
|
+
const n = new D(...a.conversation);
|
|
2387
|
+
return n.updateThinking((i) => i.completedAt === null ? {
|
|
2388
|
+
...i,
|
|
2389
|
+
completedAt: Date.now()
|
|
2390
|
+
} : i), {
|
|
2391
|
+
...a,
|
|
2392
|
+
conversation: n,
|
|
2393
|
+
isPreparing: !1,
|
|
2394
|
+
isGenerating: !0
|
|
2395
|
+
};
|
|
2396
|
+
}
|
|
2397
|
+
return {
|
|
2398
|
+
...a,
|
|
2399
|
+
isPreparing: !1,
|
|
2400
|
+
isGenerating: !1
|
|
2401
|
+
};
|
|
2402
|
+
case "UPSERT_AGENT_ACTIVITY": {
|
|
2403
|
+
const { id: n, name: i, status: r, batchId: u, numResults: l, error: s, summary: c } = e.payload, d = new D(...a.conversation), p = d.getLatest();
|
|
2404
|
+
if (!p) return a;
|
|
2405
|
+
const g = p.toolCalls, v = g.find((h) => h.id === n) ? g.map((h) => h.id === n ? {
|
|
2406
|
+
...h,
|
|
2407
|
+
name: i,
|
|
2408
|
+
status: r,
|
|
2409
|
+
batchId: u ?? h.batchId,
|
|
2410
|
+
numResults: l ?? h.numResults,
|
|
2411
|
+
error: s ?? h.error,
|
|
2412
|
+
summary: c ?? h.summary
|
|
2413
|
+
} : h) : [...g, {
|
|
2414
|
+
id: n,
|
|
2415
|
+
name: i,
|
|
2416
|
+
status: r,
|
|
2417
|
+
batchId: u,
|
|
2418
|
+
numResults: l,
|
|
2419
|
+
error: s,
|
|
2420
|
+
summary: c,
|
|
2421
|
+
startedAt: Date.now()
|
|
2422
|
+
}];
|
|
2423
|
+
return d.setLatest({ toolCalls: v }), {
|
|
2424
|
+
...a,
|
|
2425
|
+
conversation: d
|
|
2426
|
+
};
|
|
2427
|
+
}
|
|
2428
|
+
case "STOP_GENERATION": {
|
|
2429
|
+
const n = new D(...a.conversation);
|
|
2430
|
+
return n.updateThinking((i) => i.completedAt === null ? {
|
|
2431
|
+
...i,
|
|
2432
|
+
completedAt: Date.now()
|
|
2433
|
+
} : i), n.setLatest({ isGenerationAborted: !0 }), {
|
|
2434
|
+
...a,
|
|
2435
|
+
conversation: n,
|
|
2436
|
+
isGenerating: !1,
|
|
2437
|
+
isPreparing: !1
|
|
2438
|
+
};
|
|
2439
|
+
}
|
|
2440
|
+
case "RESET_CONVERSATION":
|
|
2441
|
+
return {
|
|
2442
|
+
...a,
|
|
2443
|
+
conversation: new D(),
|
|
2444
|
+
threadId: null,
|
|
2445
|
+
error: null
|
|
2446
|
+
};
|
|
2447
|
+
case "SET_FEEDBACK": {
|
|
2448
|
+
const n = new D(...a.conversation), i = n.getById(e.questionAnswerId);
|
|
2449
|
+
return i && (i.reaction = e.reaction), {
|
|
2450
|
+
...a,
|
|
2451
|
+
conversation: n
|
|
2452
|
+
};
|
|
2453
|
+
}
|
|
2454
|
+
case "MARK_COMPLETED": {
|
|
2455
|
+
const n = new D(...a.conversation);
|
|
2456
|
+
return n.setById(e.questionAnswerId, { status: "completed" }), {
|
|
2457
|
+
...a,
|
|
2458
|
+
conversation: n
|
|
2459
|
+
};
|
|
2460
|
+
}
|
|
2461
|
+
case "SET_THREAD_ID":
|
|
2462
|
+
return {
|
|
2463
|
+
...a,
|
|
2464
|
+
threadId: e.threadId
|
|
2465
|
+
};
|
|
2466
|
+
default:
|
|
2467
|
+
return a;
|
|
2468
|
+
}
|
|
2469
|
+
}
|
|
2470
|
+
const Co = "MHIUVE6Y4VV6H5lpgMyI", hn = ha(void 0), be = ({ children: a, integrationId: e, sourceGroupIDsInclude: t, uncertainAnswerCallout: o, userTrackingMode: n, callbacks: i = {}, apiService: r = new wo(yo) }) => {
|
|
2471
|
+
const u = M(r).current, l = {
|
|
2472
|
+
isGenerating: !1,
|
|
2473
|
+
isPreparing: !1,
|
|
2474
|
+
threadId: null,
|
|
2475
|
+
conversation: new D(),
|
|
2476
|
+
error: null
|
|
2477
|
+
}, s = Sa(ln), [c, d] = ve(Oo, l), { executeCaptcha: p } = vo(), { buildIdentifiers: g } = jo({ mode: n }), v = M({
|
|
2478
|
+
onRelevantSources: (m) => d({
|
|
2479
|
+
type: "SET_RELEVANT_SOURCES",
|
|
2480
|
+
sources: m
|
|
2481
|
+
}),
|
|
2482
|
+
onPartialAnswer: (m) => d({
|
|
2483
|
+
type: "SET_PARTIAL_ANSWER",
|
|
2484
|
+
answer: m
|
|
2485
|
+
}),
|
|
2486
|
+
onMetadata: (m) => d({
|
|
2487
|
+
type: "SET_METADATA",
|
|
2488
|
+
metadata: m
|
|
2489
|
+
}),
|
|
2490
|
+
onAgentActivityUpdate: (m) => d({
|
|
2491
|
+
type: "UPSERT_AGENT_ACTIVITY",
|
|
2492
|
+
payload: {
|
|
2493
|
+
id: m.id,
|
|
2494
|
+
name: m.name,
|
|
2495
|
+
status: m.status,
|
|
2496
|
+
batchId: m.batch_id,
|
|
2497
|
+
numResults: m.num_results,
|
|
2498
|
+
error: m.error,
|
|
2499
|
+
summary: m.summary
|
|
2500
|
+
}
|
|
2501
|
+
}),
|
|
2502
|
+
onError: (m) => {
|
|
2503
|
+
d({
|
|
2504
|
+
type: "SET_ERROR",
|
|
2505
|
+
message: m
|
|
2506
|
+
}), console.error("Error: ", m);
|
|
2507
|
+
},
|
|
2508
|
+
onFirstToken: () => d({
|
|
2509
|
+
type: "SET_IS_GENERATING",
|
|
2510
|
+
isGenerating: !0
|
|
2511
|
+
}),
|
|
2512
|
+
onIdentifiers: (m, w) => d({
|
|
2513
|
+
type: "SET_IDENTIFIERS",
|
|
2514
|
+
threadId: m,
|
|
2515
|
+
questionAnswerId: w
|
|
2516
|
+
}),
|
|
2517
|
+
onStreamStart: (m) => d({
|
|
2518
|
+
type: "SET_THREAD_ID",
|
|
2519
|
+
threadId: m
|
|
2520
|
+
})
|
|
2521
|
+
}), h = P((m) => {
|
|
2522
|
+
var w, j, R;
|
|
2523
|
+
o && (!((w = m.metadata) === null || w === void 0) && w.is_uncertain) && d({
|
|
2524
|
+
type: "SET_PARTIAL_ANSWER",
|
|
2525
|
+
answer: o
|
|
2526
|
+
}), (j = i.askAI) === null || j === void 0 || (R = j.onAnswerGenerationCompleted) === null || R === void 0 || R.call(j, {
|
|
2527
|
+
threadId: c.threadId,
|
|
2528
|
+
conversation: c.conversation.formatForCallbacks(),
|
|
2529
|
+
question: m.question,
|
|
2530
|
+
answer: m.answer,
|
|
2531
|
+
questionAnswerId: m.id
|
|
2532
|
+
});
|
|
2533
|
+
}, [
|
|
2534
|
+
o,
|
|
2535
|
+
i.askAI,
|
|
2536
|
+
c.threadId,
|
|
2537
|
+
c.conversation
|
|
2538
|
+
]);
|
|
2539
|
+
B(() => {
|
|
2540
|
+
c.conversation.filter((m) => m.status === "pending_completion").forEach((m) => {
|
|
2541
|
+
h(m), d({
|
|
2542
|
+
type: "MARK_COMPLETED",
|
|
2543
|
+
questionAnswerId: m.id
|
|
2544
|
+
});
|
|
2545
|
+
});
|
|
2546
|
+
}, [c.conversation, h]);
|
|
2547
|
+
const k = async (m) => {
|
|
2548
|
+
var w, j, R;
|
|
2549
|
+
d({
|
|
2550
|
+
type: "ADD_NEW_QA",
|
|
2551
|
+
query: m,
|
|
2552
|
+
isDeepThinking: (w = s == null ? void 0 : s.active) !== null && w !== void 0 ? w : !1
|
|
2553
|
+
}), (j = i.askAI) === null || j === void 0 || (R = j.onQuerySubmit) === null || R === void 0 || R.call(j, {
|
|
2554
|
+
threadId: c.threadId,
|
|
2555
|
+
conversation: c.conversation.formatForCallbacks(),
|
|
2556
|
+
question: m
|
|
2557
|
+
});
|
|
2558
|
+
const S = await p(pe.AskAi);
|
|
2559
|
+
if (!S) {
|
|
2560
|
+
console.error("Error in verifying browser for feedback submission. Captcha token could not be obtained."), d({
|
|
2561
|
+
type: "SET_ERROR",
|
|
2562
|
+
message: "Error in verifying browser for feedback submission. Captcha token could not be obtained."
|
|
2563
|
+
});
|
|
2564
|
+
return;
|
|
2565
|
+
}
|
|
2566
|
+
if (c.isGenerating || c.isPreparing) {
|
|
2567
|
+
d({
|
|
2568
|
+
type: "SET_ERROR",
|
|
2569
|
+
message: "A new question was asked while the previous one was still being processed. Please wait until the previous question is answered."
|
|
2570
|
+
});
|
|
2571
|
+
return;
|
|
2572
|
+
}
|
|
2573
|
+
try {
|
|
2574
|
+
const { identifiers: O, metadata: A } = await g();
|
|
2575
|
+
s != null && s.active && s.startTimer(), await u.submitQuery({
|
|
2576
|
+
query: m,
|
|
2577
|
+
mode: s != null && s.active ? "deep_thinking" : "default",
|
|
2578
|
+
threadId: c.threadId,
|
|
2579
|
+
captcha: S,
|
|
2580
|
+
integrationId: e,
|
|
2581
|
+
sourceGroupIDsInclude: t,
|
|
2582
|
+
userIdentifiers: O || {},
|
|
2583
|
+
userMetadata: A || {},
|
|
2584
|
+
originUrl: `${window.location.origin}${window.location.pathname}`
|
|
2585
|
+
}, v.current);
|
|
2586
|
+
} catch (O) {
|
|
2587
|
+
console.error("Error making chat request:", O), d({
|
|
2588
|
+
type: "SET_ERROR",
|
|
2589
|
+
message: "An error occurred. Please try again."
|
|
2590
|
+
});
|
|
2591
|
+
} finally {
|
|
2592
|
+
d({
|
|
2593
|
+
type: "SET_IS_GENERATING",
|
|
2594
|
+
isGenerating: !1
|
|
2595
|
+
}), s != null && s.active && (s.stopTimer(), s.deactivate());
|
|
2596
|
+
}
|
|
2597
|
+
}, f = () => {
|
|
2598
|
+
var m, w;
|
|
2599
|
+
d({ type: "RESET_CONVERSATION" }), (m = i.askAI) === null || m === void 0 || (w = m.onConversationReset) === null || w === void 0 || w.call(m, {
|
|
2600
|
+
threadId: c.threadId,
|
|
2601
|
+
conversation: c.conversation.formatForCallbacks()
|
|
2602
|
+
});
|
|
2603
|
+
}, x = () => {
|
|
2604
|
+
var m, w, j;
|
|
2605
|
+
u.abortCurrent(), d({ type: "STOP_GENERATION" }), (m = i.askAI) === null || m === void 0 || (w = m.onAnswerGenerationStop) === null || w === void 0 || w.call(m, {
|
|
2606
|
+
threadId: c.threadId,
|
|
2607
|
+
conversation: c.conversation.formatForCallbacks(),
|
|
2608
|
+
question: ((j = c.conversation.getLatest()) === null || j === void 0 ? void 0 : j.question) || ""
|
|
2609
|
+
});
|
|
2610
|
+
}, b = async (m, w, j) => {
|
|
2611
|
+
d({
|
|
2612
|
+
type: "SET_FEEDBACK",
|
|
2613
|
+
questionAnswerId: m,
|
|
2614
|
+
reaction: w
|
|
2615
|
+
});
|
|
2616
|
+
try {
|
|
2617
|
+
var R, S, O, A;
|
|
2618
|
+
const z = await p(pe.FeedbackSubmit);
|
|
2619
|
+
if (!z) {
|
|
2620
|
+
console.error("Error in verifying browser for feedback submission. Captcha token could not be obtained."), d({
|
|
2621
|
+
type: "SET_FEEDBACK",
|
|
2622
|
+
questionAnswerId: m,
|
|
2623
|
+
reaction: null
|
|
2624
|
+
});
|
|
2625
|
+
return;
|
|
2626
|
+
}
|
|
2627
|
+
await u.addFeedback({
|
|
2628
|
+
questionAnswerId: m,
|
|
2629
|
+
reaction: w,
|
|
2630
|
+
captcha: z,
|
|
2631
|
+
integrationId: e,
|
|
2632
|
+
comment: j
|
|
2633
|
+
}), (R = i.askAI) === null || R === void 0 || (S = R.onFeedbackSubmit) === null || S === void 0 || S.call(R, {
|
|
2634
|
+
threadId: c.threadId,
|
|
2635
|
+
conversation: c.conversation.formatForCallbacks(),
|
|
2636
|
+
feedbackId: m,
|
|
2637
|
+
reaction: w,
|
|
2638
|
+
comment: j,
|
|
2639
|
+
questionAnswerId: m,
|
|
2640
|
+
question: ((O = c.conversation.getLatest()) === null || O === void 0 ? void 0 : O.question) || "",
|
|
2641
|
+
answer: ((A = c.conversation.getLatest()) === null || A === void 0 ? void 0 : A.answer) || ""
|
|
2642
|
+
});
|
|
2643
|
+
} catch (z) {
|
|
2644
|
+
console.error("Error sending feedback:", z), d({
|
|
2645
|
+
type: "SET_FEEDBACK",
|
|
2646
|
+
questionAnswerId: m,
|
|
2647
|
+
reaction: null
|
|
2648
|
+
});
|
|
2649
|
+
}
|
|
2650
|
+
};
|
|
2651
|
+
return /* @__PURE__ */ E(hn.Provider, {
|
|
2652
|
+
value: {
|
|
2653
|
+
integrationId: e,
|
|
2654
|
+
error: c.error,
|
|
2655
|
+
isPreparingAnswer: c.isPreparing,
|
|
2656
|
+
isGeneratingAnswer: c.isGenerating,
|
|
2657
|
+
conversation: c.conversation,
|
|
2658
|
+
callbacks: i,
|
|
2659
|
+
threadId: c.threadId,
|
|
2660
|
+
submitQuery: k,
|
|
2661
|
+
resetConversation: f,
|
|
2662
|
+
stopGeneration: x,
|
|
2663
|
+
addFeedback: b
|
|
2664
|
+
},
|
|
2665
|
+
children: a
|
|
2666
|
+
});
|
|
2667
|
+
}, Ko = ({ children: a, integrationId: e, sourceGroupIDsInclude: t, uncertainAnswerCallout: o, callbacks: n, userTrackingMode: i = "cookie", botProtectionMechanism: r, hasConsentForCaptcha: u = !0, apiService: l }) => /* @__PURE__ */ E(bo, {
|
|
2668
|
+
provider: r || "recaptcha",
|
|
2669
|
+
hasConsent: u,
|
|
2670
|
+
children: /* @__PURE__ */ E(xo, { children: i === "fingerprint" ? /* @__PURE__ */ E(Gt, {
|
|
2671
|
+
loadOptions: {
|
|
2672
|
+
apiKey: Co,
|
|
2673
|
+
endpoint: "https://metrics.kapa.ai",
|
|
2674
|
+
scriptUrlPattern: "https://metrics.kapa.ai/web/v<version>/<apiKey>/loader_v<loaderVersion>.js"
|
|
2675
|
+
},
|
|
2676
|
+
cacheLocation: F.LocalStorage,
|
|
2677
|
+
children: /* @__PURE__ */ E(be, {
|
|
2678
|
+
integrationId: e,
|
|
2679
|
+
sourceGroupIDsInclude: t,
|
|
2680
|
+
uncertainAnswerCallout: o,
|
|
2681
|
+
userTrackingMode: i,
|
|
2682
|
+
callbacks: n,
|
|
2683
|
+
apiService: l,
|
|
2684
|
+
children: a
|
|
2685
|
+
})
|
|
2686
|
+
}) : /* @__PURE__ */ E(be, {
|
|
2687
|
+
integrationId: e,
|
|
2688
|
+
sourceGroupIDsInclude: t,
|
|
2689
|
+
uncertainAnswerCallout: o,
|
|
2690
|
+
userTrackingMode: i,
|
|
2691
|
+
callbacks: n,
|
|
2692
|
+
apiService: l,
|
|
2693
|
+
children: a
|
|
2694
|
+
}) })
|
|
2695
|
+
});
|
|
2696
|
+
function So() {
|
|
2697
|
+
var a;
|
|
2698
|
+
const e = kn.useContext(hn);
|
|
2699
|
+
if (e === void 0) throw new Error("useChat must be used within a KapaProvider");
|
|
2700
|
+
return {
|
|
2701
|
+
isGeneratingAnswer: e.isGeneratingAnswer,
|
|
2702
|
+
isPreparingAnswer: e.isPreparingAnswer,
|
|
2703
|
+
error: (a = e.error) !== null && a !== void 0 ? a : null,
|
|
2704
|
+
conversation: e.conversation,
|
|
2705
|
+
resetConversation: e.resetConversation,
|
|
2706
|
+
stopGeneration: e.stopGeneration,
|
|
2707
|
+
submitQuery: e.submitQuery,
|
|
2708
|
+
addFeedback: e.addFeedback,
|
|
2709
|
+
threadId: e.threadId
|
|
2710
|
+
};
|
|
2711
|
+
}
|
|
2712
|
+
function $o({ setModalState: a, searchQuery: e, urlParamQuery: t }) {
|
|
2713
|
+
const [o, n] = Y(""), [i, r] = Y(!1), u = M(null), l = M(null), s = M(null), c = M(null), {
|
|
2714
|
+
conversation: d,
|
|
2715
|
+
submitQuery: p,
|
|
2716
|
+
isGeneratingAnswer: g,
|
|
2717
|
+
isPreparingAnswer: v,
|
|
2718
|
+
stopGeneration: h,
|
|
2719
|
+
addFeedback: k
|
|
2720
|
+
} = So(), f = (x) => {
|
|
2721
|
+
x.preventDefault();
|
|
2722
|
+
const b = x.target, m = b == null ? void 0 : b.getAttribute("data-question-id"), w = m ? yn[m] : o;
|
|
2723
|
+
w.trim() && p(w.trim()), m || n(""), r(!0);
|
|
2724
|
+
};
|
|
2725
|
+
return B(() => {
|
|
2726
|
+
i && c.current && (c.current.scrollIntoView({ behavior: "smooth" }), r(!1));
|
|
2727
|
+
}, [i]), B(() => {
|
|
2728
|
+
e && (n(""), p(e.trim()), r(!0));
|
|
2729
|
+
}, [e, n, r]), B(() => {
|
|
2730
|
+
!e && t && n(t);
|
|
2731
|
+
}, [t, e, n]), /* @__PURE__ */ E("div", { className: "n-ask-chat-container", children: [
|
|
2732
|
+
/* @__PURE__ */ E(xn, { onClick: () => a == null ? void 0 : a({ current: "search" }) }),
|
|
2733
|
+
/* @__PURE__ */ E("div", { ref: u, className: "n-ask-conversation n-search-window", children: [
|
|
2734
|
+
!d.length && !t && !e && /* @__PURE__ */ E(wn, { onClick: f, menuRef: l }),
|
|
2735
|
+
d.length > 0 && /* @__PURE__ */ E(
|
|
2736
|
+
jn,
|
|
2737
|
+
{
|
|
2738
|
+
isPreparingAnswer: v,
|
|
2739
|
+
conversation: d,
|
|
2740
|
+
lastMessageRef: c,
|
|
2741
|
+
feedback: k
|
|
2742
|
+
}
|
|
2743
|
+
)
|
|
2744
|
+
] }),
|
|
2745
|
+
/* @__PURE__ */ E("form", { onSubmit: f, className: "n-ask-form n-search-input-wrapper", children: [
|
|
2746
|
+
/* @__PURE__ */ E(
|
|
2747
|
+
"input",
|
|
2748
|
+
{
|
|
2749
|
+
ref: s,
|
|
2750
|
+
className: "n-ask-input n-search-input",
|
|
2751
|
+
type: "text",
|
|
2752
|
+
value: o,
|
|
2753
|
+
onInput: (x) => n(x.currentTarget.value),
|
|
2754
|
+
placeholder: "Ask a question...",
|
|
2755
|
+
disabled: v || g
|
|
2756
|
+
}
|
|
2757
|
+
),
|
|
2758
|
+
/* @__PURE__ */ E(
|
|
2759
|
+
En,
|
|
2760
|
+
{
|
|
2761
|
+
id: "recaptcha",
|
|
2762
|
+
content: `<p>
|
|
2763
|
+
This site is protected by reCAPTCHA and the Google
|
|
2764
|
+
<a href="https://policies.google.com/privacy">Privacy Policy</a> and
|
|
2765
|
+
<a href="https://policies.google.com/terms">Terms of Service</a> apply.
|
|
2766
|
+
</p>`,
|
|
2767
|
+
children: "protected by reCAPTCHA"
|
|
2768
|
+
}
|
|
2769
|
+
),
|
|
2770
|
+
g ? /* @__PURE__ */ E(
|
|
2771
|
+
"button",
|
|
2772
|
+
{
|
|
2773
|
+
type: "button",
|
|
2774
|
+
className: "n-ask-form-submit",
|
|
2775
|
+
onClick: h,
|
|
2776
|
+
"aria-label": "Stop generation",
|
|
2777
|
+
children: /* @__PURE__ */ E("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 16 16", fill: "var(--neutral-100)", children: /* @__PURE__ */ E("rect", { x: "0", y: "0", width: "16", height: "16" }) })
|
|
2778
|
+
}
|
|
2779
|
+
) : /* @__PURE__ */ E(
|
|
2780
|
+
"button",
|
|
2781
|
+
{
|
|
2782
|
+
type: "submit",
|
|
2783
|
+
className: "n-ask-form-submit",
|
|
2784
|
+
disabled: !o.trim() || v,
|
|
2785
|
+
"aria-label": "Send message",
|
|
2786
|
+
children: /* @__PURE__ */ E("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 448 512", fill: "var(--neutral-100)", children: /* @__PURE__ */ E("path", { d: "M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z" }) })
|
|
2787
|
+
}
|
|
2788
|
+
)
|
|
2789
|
+
] })
|
|
2790
|
+
] });
|
|
2791
|
+
}
|
|
2792
|
+
export {
|
|
2793
|
+
$o as A,
|
|
2794
|
+
Ko as K
|
|
2795
|
+
};
|