PageSourceSearch

https://app.clariumhealth.com/assets/react-dom-ld7mzddK.js

js clariumhealth.com collected 2026-10-03 20:44:02 UTC 694,347 bytes, 16,636 lines download raw bytes

1import { t as __commonJSMin } from "./chunk-6z4oVpB-.js";
2import { t as require_react } from "./react-CCT1erMQ.js";
3var require_scheduler_development = /* @__PURE__ */ __commonJSMin(((exports) => {
4	(function() {
5		if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(/* @__PURE__ */ new Error());
6		var enableSchedulerDebugging = false;
7		var enableProfiling = false;
8		var frameYieldMs = 5;
9		function push(heap, node) {
10			var index = heap.length;
11			heap.push(node);
12			siftUp(heap, node, index);
13		}
14		function peek(heap) {
15			return heap.length === 0 ? null : heap[0];
16		}
17		function pop(heap) {
18			if (heap.length === 0) return null;
19			var first = heap[0];
20			var last = heap.pop();
21			if (last !== first) {
22				heap[0] = last;
23				siftDown(heap, last, 0);
24			}
25			return first;
26		}
27		function siftUp(heap, node, i) {
28			var index = i;
29			while (index > 0) {
30				var parentIndex = index - 1 >>> 1;
31				var parent = heap[parentIndex];
32				if (compare(parent, node) > 0) {
33					heap[parentIndex] = node;
34					heap[index] = parent;
35					index = parentIndex;
36				} else return;
37			}
38		}
39		function siftDown(heap, node, i) {
40			var index = i;
41			var length = heap.length;
42			var halfLength = length >>> 1;
43			while (index < halfLength) {
44				var leftIndex = (index + 1) * 2 - 1;
45				var left = heap[leftIndex];
46				var rightIndex = leftIndex + 1;
47				var right = heap[rightIndex];
48				if (compare(left, node) < 0) if (rightIndex < length && compare(right, left) < 0) {
49					heap[index] = right;
50					heap[rightIndex] = node;
51					index = rightIndex;
52				} else {
53					heap[index] = left;
54					heap[leftIndex] = node;
55					index = leftIndex;
56				}
57				else if (rightIndex < length && compare(right, node) < 0) {
58					heap[index] = right;
59					heap[rightIndex] = node;
60					index = rightIndex;
61				} else return;
62			}
63		}
64		function compare(a, b) {
65			var diff = a.sortIndex - b.sortIndex;
66			return diff !== 0 ? diff : a.id - b.id;
67		}
68		var ImmediatePriority = 1;
69		var UserBlockingPriority = 2;
70		var NormalPriority = 3;
71		var LowPriority = 4;
72		var IdlePriority = 5;
73		function markTaskErrored(task, ms) {}
74		if (typeof performance === "object" && typeof performance.now === "function") {
75			var localPerformance = performance;
76			exports.unstable_now = function() {
77				return localPerformance.now();
78			};
79		} else {
80			var localDate = Date;
81			var initialTime = localDate.now();
82			exports.unstable_now = function() {
83				return localDate.now() - initialTime;
84			};
85		}
86		var maxSigned31BitInt = 1073741823;
87		var IMMEDIATE_PRIORITY_TIMEOUT = -1;
88		var USER_BLOCKING_PRIORITY_TIMEOUT = 250;
89		var NORMAL_PRIORITY_TIMEOUT = 5e3;
90		var LOW_PRIORITY_TIMEOUT = 1e4;
91		var IDLE_PRIORITY_TIMEOUT = maxSigned31BitInt;
92		var taskQueue = [];
93		var timerQueue = [];
94		var taskIdCounter = 1;
95		var currentTask = null;
96		var currentPriorityLevel = NormalPriority;
97		var isPerformingWork = false;
98		var isHostCallbackScheduled = false;
99		var isHostTimeoutScheduled = false;
100		var localSetTimeout = typeof setTimeout === "function" ? setTimeout : null;
101		var localClearTimeout = typeof clearTimeout === "function" ? clearTimeout : null;
102		var localSetImmediate = typeof setImmediate !== "undefined" ? setImmediate : null;
103		typeof navigator !== "undefined" && navigator.scheduling !== void 0 && navigator.scheduling.isInputPending !== void 0 && navigator.scheduling.isInputPending.bind(navigator.scheduling);
104		function advanceTimers(currentTime) {
105			var timer = peek(timerQueue);
106			while (timer !== null) {
107				if (timer.callback === null) pop(timerQueue);
108				else if (timer.startTime <= currentTime) {
109					pop(timerQueue);
110					timer.sortIndex = timer.expirationTime;
111					push(taskQueue, timer);
112				} else return;
113				timer = peek(timerQueue);
114			}
115		}
116		function handleTimeout(currentTime) {
117			isHostTimeoutScheduled = false;
118			advanceTimers(currentTime);
119			if (!isHostCallbackScheduled) if (peek(taskQueue) !== null) {
120				isHostCallbackScheduled = true;
121				requestHostCallback(flushWork);
122			} else {
123				var firstTimer = peek(timerQueue);
124				if (firstTimer !== null) requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime);
125			}
126		}
127		function flushWork(hasTimeRemaining, initialTime$1) {
128			isHostCallbackScheduled = false;
129			if (isHostTimeoutScheduled) {
130				isHostTimeoutScheduled = false;
131				cancelHostTimeout();
132			}
133			isPerformingWork = true;
134			var previousPriorityLevel = currentPriorityLevel;
135			try {
136				if (enableProfiling) try {
137					return workLoop(hasTimeRemaining, initialTime$1);
138				} catch (error) {
139					if (currentTask !== null) {
140						var currentTime = exports.unstable_now();
141						markTaskErrored(currentTask, currentTime);
142						currentTask.isQueued = false;
143					}
144					throw error;
145				}
146				else return workLoop(hasTimeRemaining, initialTime$1);
147			} finally {
148				currentTask = null;
149				currentPriorityLevel = previousPriorityLevel;
150				isPerformingWork = false;
151			}
152		}
153		function workLoop(hasTimeRemaining, initialTime$1) {
154			var currentTime = initialTime$1;
155			advanceTimers(currentTime);
156			currentTask = peek(taskQueue);
157			while (currentTask !== null && !enableSchedulerDebugging) {
158				if (currentTask.expirationTime > currentTime && (!hasTimeRemaining || shouldYieldToHost())) break;
159				var callback = currentTask.callback;
160				if (typeof callback === "function") {
161					currentTask.callback = null;
162					currentPriorityLevel = currentTask.priorityLevel;
163					var continuationCallback = callback(currentTask.expirationTime <= currentTime);
164					currentTime = exports.unstable_now();
165					if (typeof continuationCallback === "function") currentTask.callback = continuationCallback;
166					else if (currentTask === peek(taskQueue)) pop(taskQueue);
167					advanceTimers(currentTime);
168				} else pop(taskQueue);
169				currentTask = peek(taskQueue);
170			}
171			if (currentTask !== null) return true;
172			else {
173				var firstTimer = peek(timerQueue);
174				if (firstTimer !== null) requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime);
175				return false;
176			}
177		}
178		function unstable_runWithPriority(priorityLevel, eventHandler) {
179			switch (priorityLevel) {
180				case ImmediatePriority:
181				case UserBlockingPriority:
182				case NormalPriority:
183				case LowPriority:
184				case IdlePriority: break;
185				default: priorityLevel = NormalPriority;
186			}
187			var previousPriorityLevel = currentPriorityLevel;
188			currentPriorityLevel = priorityLevel;
189			try {
190				return eventHandler();
191			} finally {
192				currentPriorityLevel = previousPriorityLevel;
193			}
194		}
195		function unstable_next(eventHandler) {
196			var priorityLevel;
197			switch (currentPriorityLevel) {
198				case ImmediatePriority:
199				case UserBlockingPriority:
200				case NormalPriority:
201					priorityLevel = NormalPriority;
202					break;
203				default:
204					priorityLevel = currentPriorityLevel;
205					break;
206			}
207			var previousPriorityLevel = currentPriorityLevel;
208			currentPriorityLevel = priorityLevel;
209			try {
210				return eventHandler();
211			} finally {
212				currentPriorityLevel = previousPriorityLevel;
213			}
214		}
215		function unstable_wrapCallback(callback) {
216			var parentPriorityLevel = currentPriorityLevel;
217			return function() {
218				var previousPriorityLevel = currentPriorityLevel;
219				currentPriorityLevel = parentPriorityLevel;
220				try {
221					return callback.apply(this, arguments);
222				} finally {
223					currentPriorityLevel = previousPriorityLevel;
224				}
225			};
226		}
227		function unstable_scheduleCallback(priorityLevel, callback, options) {
228			var currentTime = exports.unstable_now();
229			var startTime$1;
230			if (typeof options === "object" && options !== null) {
231				var delay = options.delay;
232				if (typeof delay === "number" && delay > 0) startTime$1 = currentTime + delay;
233				else startTime$1 = currentTime;
234			} else startTime$1 = currentTime;
235			var timeout;
236			switch (priorityLevel) {
237				case ImmediatePriority:
238					timeout = IMMEDIATE_PRIORITY_TIMEOUT;
239					break;
240				case UserBlockingPriority:
241					timeout = USER_BLOCKING_PRIORITY_TIMEOUT;
242					break;
243				case IdlePriority:
244					timeout = IDLE_PRIORITY_TIMEOUT;
245					break;
246				case LowPriority:
247					timeout = LOW_PRIORITY_TIMEOUT;
248					break;
249				case NormalPriority:
250				default:
251					timeout = NORMAL_PRIORITY_TIMEOUT;
252					break;
253			}
254			var expirationTime = startTime$1 + timeout;
255			var newTask = {
256				id: taskIdCounter++,
257				callback,
258				priorityLevel,
259				startTime: startTime$1,
260				expirationTime,
261				sortIndex: -1
262			};
263			if (startTime$1 > currentTime) {
264				newTask.sortIndex = startTime$1;
265				push(timerQueue, newTask);
266				if (peek(taskQueue) === null && newTask === peek(timerQueue)) {
267					if (isHostTimeoutScheduled) cancelHostTimeout();
268					else isHostTimeoutScheduled = true;
269					requestHostTimeout(handleTimeout, startTime$1 - currentTime);
270				}
271			} else {
272				newTask.sortIndex = expirationTime;
273				push(taskQueue, newTask);
274				if (!isHostCallbackScheduled && !isPerformingWork) {
275					isHostCallbackScheduled = true;
276					requestHostCallback(flushWork);
277				}
278			}
279			return newTask;
280		}
281		function unstable_pauseExecution() {}
282		function unstable_continueExecution() {
283			if (!isHostCallbackScheduled && !isPerformingWork) {
284				isHostCallbackScheduled = true;
285				requestHostCallback(flushWork);
286			}
287		}
288		function unstable_getFirstCallbackNode() {
289			return peek(taskQueue);
290		}
291		function unstable_cancelCallback(task) {
292			task.callback = null;
293		}
294		function unstable_getCurrentPriorityLevel() {
295			return currentPriorityLevel;
296		}
297		var isMessageLoopRunning = false;
298		var scheduledHostCallback = null;
299		var taskTimeoutID = -1;
300		var frameInterval = frameYieldMs;
301		var startTime = -1;
302		function shouldYieldToHost() {
303			if (exports.unstable_now() - startTime < frameInterval) return false;
304			return true;
305		}
306		function requestPaint() {}
307		function forceFrameRate(fps) {
308			if (fps < 0 || fps > 125) {
309				console["error"]("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported");
310				return;
311			}
312			if (fps > 0) frameInterval = Math.floor(1e3 / fps);
313			else frameInterval = frameYieldMs;
314		}
315		var performWorkUntilDeadline = function() {
316			if (scheduledHostCallback !== null) {
317				var currentTime = exports.unstable_now();
318				startTime = currentTime;
319				var hasTimeRemaining = true;
320				var hasMoreWork = true;
321				try {
322					hasMoreWork = scheduledHostCallback(hasTimeRemaining, currentTime);
323				} finally {
324					if (hasMoreWork) schedulePerformWorkUntilDeadline();
325					else {
326						isMessageLoopRunning = false;
327						scheduledHostCallback = null;
328					}
329				}
330			} else isMessageLoopRunning = false;
331		};
332		var schedulePerformWorkUntilDeadline;
333		if (typeof localSetImmediate === "function") schedulePerformWorkUntilDeadline = function() {
334			localSetImmediate(performWorkUntilDeadline);
335		};
336		else if (typeof MessageChannel !== "undefined") {
337			var channel = new MessageChannel();
338			var port = channel.port2;
339			channel.port1.onmessage = performWorkUntilDeadline;
340			schedulePerformWorkUntilDeadline = function() {
341				port.postMessage(null);
342			};
343		} else schedulePerformWorkUntilDeadline = function() {
344			localSetTimeout(performWorkUntilDeadline, 0);
345		};
346		function requestHostCallback(callback) {
347			scheduledHostCallback = callback;
348			if (!isMessageLoopRunning) {
349				isMessageLoopRunning = true;
350				schedulePerformWorkUntilDeadline();
351			}
352		}
353		function requestHostTimeout(callback, ms) {
354			taskTimeoutID = localSetTimeout(function() {
355				callback(exports.unstable_now());
356			}, ms);
357		}
358		function cancelHostTimeout() {
359			localClearTimeout(taskTimeoutID);
360			taskTimeoutID = -1;
361		}
362		var unstable_requestPaint = requestPaint;
363		var unstable_Profiling = null;
364		exports.unstable_IdlePriority = IdlePriority;
365		exports.unstable_ImmediatePriority = ImmediatePriority;
366		exports.unstable_LowPriority = LowPriority;
367		exports.unstable_NormalPriority = NormalPriority;
368		exports.unstable_Profiling = unstable_Profiling;
369		exports.unstable_UserBlockingPriority = UserBlockingPriority;
370		exports.unstable_cancelCallback = unstable_cancelCallback;
371		exports.unstable_continueExecution = unstable_continueExecution;
372		exports.unstable_forceFrameRate = forceFrameRate;
373		exports.unstable_getCurrentPriorityLevel = unstable_getCurrentPriorityLevel;
374		exports.unstable_getFirstCallbackNode = unstable_getFirstCallbackNode;
375		exports.unstable_next = unstable_next;
376		exports.unstable_pauseExecution = unstable_pauseExecution;
377		exports.unstable_requestPaint = unstable_requestPaint;
378		exports.unstable_runWithPriority = unstable_runWithPriority;
379		exports.unstable_scheduleCallback = unstable_scheduleCallback;
380		exports.unstable_shouldYield = shouldYieldToHost;
381		exports.unstable_wrapCallback = unstable_wrapCallback;
382		if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop === "function") __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(/* @__PURE__ */ new Error());
383	})();
384}));
385var require_scheduler = /* @__PURE__ */ __commonJSMin(((exports, module) => {
386	module.exports = require_scheduler_development();
387}));
388var require_react_dom_development = /* @__PURE__ */ __commonJSMin(((exports) => {
389	(function() {
390		if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(/* @__PURE__ */ new Error());
391		var React = require_react();
392		var Scheduler = require_scheduler();
393		var ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
394		var suppressWarning = false;
395		function setSuppressWarning(newSuppressWarning) {
396			suppressWarning = newSuppressWarning;
397		}
398		function warn(format) {
399			if (!suppressWarning) {
400				for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) args[_key - 1] = arguments[_key];
401				printWarning("warn", format, args);
402			}
403		}
404		function error(format) {
405			if (!suppressWarning) {
406				for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) args[_key2 - 1] = arguments[_key2];
407				printWarning("error", format, args);
408			}
409		}
410		function printWarning(level, format, args) {
411			var stack = ReactSharedInternals.ReactDebugCurrentFrame.getStackAddendum();
412			if (stack !== "") {
413				format += "%s";
414				args = args.concat([stack]);
415			}
416			var argsWithFormat = args.map(function(item) {
417				return String(item);
418			});
419			argsWithFormat.unshift("Warning: " + format);
420			Function.prototype.apply.call(console[level], console, argsWithFormat);
421		}
422		var FunctionComponent = 0;
423		var ClassComponent = 1;
424		var IndeterminateComponent = 2;
425		var HostRoot = 3;
426		var HostPortal = 4;
427		var HostComponent = 5;
428		var HostText = 6;
429		var Fragment = 7;
430		var Mode = 8;
431		var ContextConsumer = 9;
432		var ContextProvider = 10;
433		var ForwardRef = 11;
434		var Profiler = 12;
435		var SuspenseComponent = 13;
436		var MemoComponent = 14;
437		var SimpleMemoComponent = 15;
438		var LazyComponent = 16;
439		var IncompleteClassComponent = 17;
440		var DehydratedFragment = 18;
441		var SuspenseListComponent = 19;
442		var ScopeComponent = 21;
443		var OffscreenComponent = 22;
444		var LegacyHiddenComponent = 23;
445		var CacheComponent = 24;
446		var TracingMarkerComponent = 25;
447		var enableClientRenderFallbackOnTextMismatch = true;
448		var enableNewReconciler = false;
449		var enableLazyContextPropagation = false;
450		var enableLegacyHidden = false;
451		var enableSuspenseAvoidThisFallback = false;
452		var disableCommentsAsDOMContainers = true;
453		var enableCustomElementPropertySupport = false;
454		var warnAboutStringRefs = true;
455		var enableSchedulingProfiler = true;
456		var enableProfilerTimer = true;
457		var enableProfilerCommitHooks = true;
458		var allNativeEvents = /* @__PURE__ */ new Set();
459		var registrationNameDependencies = {};
460		var possibleRegistrationNames = {};
461		function registerTwoPhaseEvent(registrationName, dependencies) {
462			registerDirectEvent(registrationName, dependencies);
463			registerDirectEvent(registrationName + "Capture", dependencies);
464		}
465		function registerDirectEvent(registrationName, dependencies) {
466			if (registrationNameDependencies[registrationName]) error("EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.", registrationName);
467			registrationNameDependencies[registrationName] = dependencies;
468			var lowerCasedName = registrationName.toLowerCase();
469			possibleRegistrationNames[lowerCasedName] = registrationName;
470			if (registrationName === "onDoubleClick") possibleRegistrationNames.ondblclick = registrationName;
471			for (var i = 0; i < dependencies.length; i++) allNativeEvents.add(dependencies[i]);
472		}
473		var canUseDOM = !!(typeof window !== "undefined" && typeof window.document !== "undefined" && typeof window.document.createElement !== "undefined");
474		var hasOwnProperty = Object.prototype.hasOwnProperty;
475		function typeName(value) {
476			return typeof Symbol === "function" && Symbol.toStringTag && value[Symbol.toStringTag] || value.constructor.name || "Object";
477		}
478		function willCoercionThrow(value) {
479			try {
480				testStringCoercion(value);
481				return false;
482			} catch (e) {
483				return true;
484			}
485		}
486		function testStringCoercion(value) {
487			return "" + value;
488		}
489		function checkAttributeStringCoercion(value, attributeName) {
490			if (willCoercionThrow(value)) {
491				error("The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before before using it here.", attributeName, typeName(value));
492				return testStringCoercion(value);
493			}
494		}
495		function checkKeyStringCoercion(value) {
496			if (willCoercionThrow(value)) {
497				error("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", typeName(value));
498				return testStringCoercion(value);
499			}
500		}
501		function checkPropStringCoercion(value, propName) {
502			if (willCoercionThrow(value)) {
503				error("The provided `%s` prop is an unsupported type %s. This value must be coerced to a string before before using it here.", propName, typeName(value));
504				return testStringCoercion(value);
505			}
506		}
507		function checkCSSPropertyStringCoercion(value, propName) {
508			if (willCoercionThrow(value)) {
509				error("The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before before using it here.", propName, typeName(value));
510				return testStringCoercion(value);
511			}
512		}
513		function checkHtmlStringCoercion(value) {
514			if (willCoercionThrow(value)) {
515				error("The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before before using it here.", typeName(value));
516				return testStringCoercion(value);
517			}
518		}
519		function checkFormFieldValueStringCoercion(value) {
520			if (willCoercionThrow(value)) {
521				error("Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before before using it here.", typeName(value));
522				return testStringCoercion(value);
523			}
524		}
525		var RESERVED = 0;
526		var STRING = 1;
527		var BOOLEANISH_STRING = 2;
528		var BOOLEAN = 3;
529		var OVERLOADED_BOOLEAN = 4;
530		var NUMERIC = 5;
531		var POSITIVE_NUMERIC = 6;
532		var ATTRIBUTE_NAME_START_CHAR = ":A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u
532037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD";
533		var ATTRIBUTE_NAME_CHAR = ATTRIBUTE_NAME_START_CHAR + "\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040";
534		var VALID_ATTRIBUTE_NAME_REGEX = /* @__PURE__ */ new RegExp("^[" + ATTRIBUTE_NAME_START_CHAR + "][" + ATTRIBUTE_NAME_CHAR + "]*$");
535		var illegalAttributeNameCache = {};
536		var validatedAttributeNameCache = {};
537		function isAttributeNameSafe(attributeName) {
538			if (hasOwnProperty.call(validatedAttributeNameCache, attributeName)) return true;
539			if (hasOwnProperty.call(illegalAttributeNameCache, attributeName)) return false;
540			if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName)) {
541				validatedAttributeNameCache[attributeName] = true;
542				return true;
543			}
544			illegalAttributeNameCache[attributeName] = true;
545			error("Invalid attribute name: `%s`", attributeName);
546			return false;
547		}
548		function shouldIgnoreAttribute(name, propertyInfo, isCustomComponentTag) {
549			if (propertyInfo !== null) return propertyInfo.type === RESERVED;
550			if (isCustomComponentTag) return false;
551			if (name.length > 2 && (name[0] === "o" || name[0] === "O") && (name[1] === "n" || name[1] === "N")) return true;
552			return false;
553		}
554		function shouldRemoveAttributeWithWarning(name, value, propertyInfo, isCustomComponentTag) {
555			if (propertyInfo !== null && propertyInfo.type === RESERVED) return false;
556			switch (typeof value) {
557				case "function":
558				case "symbol": return true;
559				case "boolean":
560					if (isCustomComponentTag) return false;
561					if (propertyInfo !== null) return !propertyInfo.acceptsBooleans;
562					else {
563						var prefix$1 = name.toLowerCase().slice(0, 5);
564						return prefix$1 !== "data-" && prefix$1 !== "aria-";
565					}
566				default: return false;
567			}
568		}
569		function shouldRemoveAttribute(name, value, propertyInfo, isCustomComponentTag) {
570			if (value === null || typeof value === "undefined") return true;
571			if (shouldRemoveAttributeWithWarning(name, value, propertyInfo, isCustomComponentTag)) return true;
572			if (isCustomComponentTag) return false;
573			if (propertyInfo !== null) switch (propertyInfo.type) {
574				case BOOLEAN: return !value;
575				case OVERLOADED_BOOLEAN: return value === false;
576				case NUMERIC: return isNaN(value);
577				case POSITIVE_NUMERIC: return isNaN(value) || value < 1;
578			}
579			return false;
580		}
581		function getPropertyInfo(name) {
582			return properties.hasOwnProperty(name) ? properties[name] : null;
583		}
584		function PropertyInfoRecord(name, type, mustUseProperty, attributeName, attributeNamespace, sanitizeURL$1, removeEmptyString) {
585			this.acceptsBooleans = type === BOOLEANISH_STRING || type === BOOLEAN || type === OVERLOADED_BOOLEAN;
586			this.attributeName = attributeName;
587			this.attributeNamespace = attributeNamespace;
588			this.mustUseProperty = mustUseProperty;
589			this.propertyName = name;
590			this.type = type;
591			this.sanitizeURL = sanitizeURL$1;
592			this.removeEmptyString = removeEmptyString;
593		}
594		var properties = {};
595		[
596			"children",
597			"dangerouslySetInnerHTML",
598			"defaultValue",
599			"defaultChecked",
600			"innerHTML",
601			"suppressContentEditableWarning",
602			"suppressHydrationWarning",
603			"style"
604		].forEach(function(name) {
605			properties[name] = new PropertyInfoRecord(name, RESERVED, false, name, null, false, false);
606		});
607		[
608			["acceptCharset", "accept-charset"],
609			["className", "class"],
610			["htmlFor", "for"],
611			["httpEquiv", "http-equiv"]
612		].forEach(function(_ref) {
613			var name = _ref[0], attributeName = _ref[1];
614			properties[name] = new PropertyInfoRecord(name, STRING, false, attributeName, null, false, false);
615		});
616		[
617			"contentEditable",
618			"draggable",
619			"spellCheck",
620			"value"
621		].forEach(function(name) {
622			properties[name] = new PropertyInfoRecord(name, BOOLEANISH_STRING, false, name.toLowerCase(), null, false, false);
623		});
624		[
625			"autoReverse",
626			"externalResourcesRequired",
627			"focusable",
628			"preserveAlpha"
629		].forEach(function(name) {
630			properties[name] = new PropertyInfoRecord(name, BOOLEANISH_STRING, false, name, null, false, false);
631		});
632		[
633			"allowFullScreen",
634			"async",
635			"autoFocus",
636			"autoPlay",
637			"controls",
638			"default",
639			"defer",
640			"disabled",
641			"disablePictureInPicture",
642			"disableRemotePlayback",
643			"formNoValidate",
644			"hidden",
645			"loop",
646			"noModule",
647			"noValidate",
648			"open",
vendor: 4,192 bytes, lines 649-796
649			"playsInline",
650			"readOnly",
651			"required",
652			"reversed",
653			"scoped",
654			"seamless",
655			"itemScope"
656		].forEach(function(name) {
657			properties[name] = new PropertyInfoRecord(name, BOOLEAN, false, name.toLowerCase(), null, false, false);
658		});
659		[
660			"checked",
661			"multiple",
662			"muted",
663			"selected"
664		].forEach(function(name) {
665			properties[name] = new PropertyInfoRecord(name, BOOLEAN, true, name, null, false, false);
666		});
667		["capture", "download"].forEach(function(name) {
668			properties[name] = new PropertyInfoRecord(name, OVERLOADED_BOOLEAN, false, name, null, false, false);
669		});
670		[
671			"cols",
672			"rows",
673			"size",
674			"span"
675		].forEach(function(name) {
676			properties[name] = new PropertyInfoRecord(name, POSITIVE_NUMERIC, false, name, null, false, false);
677		});
678		["rowSpan", "start"].forEach(function(name) {
679			properties[name] = new PropertyInfoRecord(name, NUMERIC, false, name.toLowerCase(), null, false, false);
680		});
681		var CAMELIZE = /[\-\:]([a-z])/g;
682		var capitalize = function(token) {
683			return token[1].toUpperCase();
684		};
685		[
686			"accent-height",
687			"alignment-baseline",
688			"arabic-form",
689			"baseline-shift",
690			"cap-height",
691			"clip-path",
692			"clip-rule",
693			"color-interpolation",
694			"color-interpolation-filters",
695			"color-profile",
696			"color-rendering",
697			"dominant-baseline",
698			"enable-background",
699			"fill-opacity",
700			"fill-rule",
701			"flood-color",
702			"flood-opacity",
703			"font-family",
704			"font-size",
705			"font-size-adjust",
706			"font-stretch",
707			"font-style",
708			"font-variant",
709			"font-weight",
710			"glyph-name",
711			"glyph-orientation-horizontal",
712			"glyph-orientation-vertical",
713			"horiz-adv-x",
714			"horiz-origin-x",
715			"image-rendering",
716			"letter-spacing",
717			"lighting-color",
718			"marker-end",
719			"marker-mid",
720			"marker-start",
721			"overline-position",
722			"overline-thickness",
723			"paint-order",
724			"panose-1",
725			"pointer-events",
726			"rendering-intent",
727			"shape-rendering",
728			"stop-color",
729			"stop-opacity",
730			"strikethrough-position",
731			"strikethrough-thickness",
732			"stroke-dasharray",
733			"stroke-dashoffset",
734			"stroke-linecap",
735			"stroke-linejoin",
736			"stroke-miterlimit",
737			"stroke-opacity",
738			"stroke-width",
739			"text-anchor",
740			"text-decoration",
741			"text-rendering",
742			"underline-position",
743			"underline-thickness",
744			"unicode-bidi",
745			"unicode-range",
746			"units-per-em",
747			"v-alphabetic",
748			"v-hanging",
749			"v-ideographic",
750			"v-mathematical",
751			"vector-effect",
752			"vert-adv-y",
753			"vert-origin-x",
754			"vert-origin-y",
755			"word-spacing",
756			"writing-mode",
757			"xmlns:xlink",
758			"x-height"
759		].forEach(function(attributeName) {
760			var name = attributeName.replace(CAMELIZE, capitalize);
761			properties[name] = new PropertyInfoRecord(name, STRING, false, attributeName, null, false, false);
762		});
763		[
764			"xlink:actuate",
765			"xlink:arcrole",
766			"xlink:role",
767			"xlink:show",
768			"xlink:title",
769			"xlink:type"
770		].forEach(function(attributeName) {
771			var name = attributeName.replace(CAMELIZE, capitalize);
772			properties[name] = new PropertyInfoRecord(name, STRING, false, attributeName, "http://www.w3.org/1999/xlink", false, false);
773		});
774		[
775			"xml:base",
776			"xml:lang",
777			"xml:space"
778		].forEach(function(attributeName) {
779			var name = attributeName.replace(CAMELIZE, capitalize);
780			properties[name] = new PropertyInfoRecord(name, STRING, false, attributeName, "http://www.w3.org/XML/1998/namespace", false, false);
781		});
782		["tabIndex", "crossOrigin"].forEach(function(attributeName) {
783			properties[attributeName] = new PropertyInfoRecord(attributeName, STRING, false, attributeName.toLowerCase(), null, false, false);
784		});
785		var xlinkHref = "xlinkHref";
786		properties[xlinkHref] = new PropertyInfoRecord("xlinkHref", STRING, false, "xlink:href", "http://www.w3.org/1999/xlink", true, false);
787		[
788			"src",
789			"href",
790			"action",
791			"formAction"
792		].forEach(function(attributeName) {
793			properties[attributeName] = new PropertyInfoRecord(attributeName, STRING, false, attributeName.toLowerCase(), null, true, true);
794		});
795		var isJavaScriptProtocol = /^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*\:/i;
796		var didWarn = false;
797		function sanitizeURL(url) {
798			if (!didWarn && isJavaScriptProtocol.test(url)) {
799				didWarn = true;
800				error("A future version of React will block javascript: URLs as a security precaution. Use event handlers instead if you can. If you need to generate unsafe HTML try using dangerouslySetInnerHTML instead. React was passed %s.", JSON.stringify(url));
801			}
802		}
803		function getValueForProperty(node, name, expected, propertyInfo) {
804			if (propertyInfo.mustUseProperty) return node[propertyInfo.propertyName];
805			else {
806				checkAttributeStringCoercion(expected, name);
807				if (propertyInfo.sanitizeURL) sanitizeURL("" + expected);
808				var attributeName = propertyInfo.attributeName;
809				var stringValue = null;
810				if (propertyInfo.type === OVERLOADED_BOOLEAN) {
811					if (node.hasAttribute(attributeName)) {
812						var value = node.getAttribute(attributeName);
813						if (value === "") return true;
814						if (shouldRemoveAttribute(name, expected, propertyInfo, false)) return value;
815						if (value === "" + expected) return expected;
816						return value;
817					}
818				} else if (node.hasAttribute(attributeName)) {
819					if (shouldRemoveAttribute(name, expected, propertyInfo, false)) return node.getAttribute(attributeName);
820					if (propertyInfo.type === BOOLEAN) return expected;
821					stringValue = node.getAttribute(attributeName);
822				}
823				if (shouldRemoveAttribute(name, expected, propertyInfo, false)) return stringValue === null ? expected : stringValue;
824				else if (stringValue === "" + expected) return expected;
825				else return stringValue;
826			}
827		}
828		function getValueForAttribute(node, name, expected, isCustomComponentTag) {
829			if (!isAttributeNameSafe(name)) return;
830			if (!node.hasAttribute(name)) return expected === void 0 ? void 0 : null;
831			var value = node.getAttribute(name);
832			checkAttributeStringCoercion(expected, name);
833			if (value === "" + expected) return expected;
834			return value;
835		}
836		function setValueForProperty(node, name, value, isCustomComponentTag) {
837			var propertyInfo = getPropertyInfo(name);
838			if (shouldIgnoreAttribute(name, propertyInfo, isCustomComponentTag)) return;
839			if (shouldRemoveAttribute(name, value, propertyInfo, isCustomComponentTag)) value = null;
840			if (isCustomComponentTag || propertyInfo === null) {
841				if (isAttributeNameSafe(name)) {
842					var _attributeName = name;
843					if (value === null) node.removeAttribute(_attributeName);
844					else {
845						checkAttributeStringCoercion(value, name);
846						node.setAttribute(_attributeName, "" + value);
847					}
848				}
849				return;
850			}
851			if (propertyInfo.mustUseProperty) {
852				var propertyName = propertyInfo.propertyName;
853				if (value === null) node[propertyName] = propertyInfo.type === BOOLEAN ? false : "";
854				else node[propertyName] = value;
855				return;
856			}
857			var attributeName = propertyInfo.attributeName, attributeNamespace = propertyInfo.attributeNamespace;
858			if (value === null) node.removeAttribute(attributeName);
859			else {
860				var _type = propertyInfo.type;
861				var attributeValue;
862				if (_type === BOOLEAN || _type === OVERLOADED_BOOLEAN && value === true) attributeValue = "";
863				else {
864					checkAttributeStringCoercion(value, attributeName);
865					attributeValue = "" + value;
866					if (propertyInfo.sanitizeURL) sanitizeURL(attributeValue.toString());
867				}
868				if (attributeNamespace) node.setAttributeNS(attributeNamespace, attributeName, attributeValue);
869				else node.setAttribute(attributeName, attributeValue);
870			}
871		}
872		var REACT_ELEMENT_TYPE = Symbol.for("react.element");
873		var REACT_PORTAL_TYPE = Symbol.for("react.portal");
874		var REACT_FRAGMENT_TYPE = Symbol.for("react.fragment");
875		var REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode");
876		var REACT_PROFILER_TYPE = Symbol.for("react.profiler");
877		var REACT_PROVIDER_TYPE = Symbol.for("react.provider");
878		var REACT_CONTEXT_TYPE = Symbol.for("react.context");
879		var REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref");
880		var REACT_SUSPENSE_TYPE = Symbol.for("react.suspense");
881		var REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list");
882		var REACT_MEMO_TYPE = Symbol.for("react.memo");
883		var REACT_LAZY_TYPE = Symbol.for("react.lazy");
884		var REACT_SCOPE_TYPE = Symbol.for("react.scope");
885		var REACT_DEBUG_TRACING_MODE_TYPE = Symbol.for("react.debug_trace_mode");
886		var REACT_OFFSCREEN_TYPE = Symbol.for("react.offscreen");
887		var REACT_LEGACY_HIDDEN_TYPE = Symbol.for("react.legacy_hidden");
888		var REACT_CACHE_TYPE = Symbol.for("react.cache");
889		var REACT_TRACING_MARKER_TYPE = Symbol.for("react.tracing_marker");
890		var MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
891		var FAUX_ITERATOR_SYMBOL = "@@iterator";
892		function getIteratorFn(maybeIterable) {
893			if (maybeIterable === null || typeof maybeIterable !== "object") return null;
894			var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];
895			if (typeof maybeIterator === "function") return maybeIterator;
896			return null;
897		}
898		var assign = Object.assign;
899		var disabledDepth = 0;
900		var prevLog;
901		var prevInfo;
902		var prevWarn;
903		var prevError;
904		var prevGroup;
905		var prevGroupCollapsed;
906		var prevGroupEnd;
907		function disabledLog() {}
908		disabledLog.__reactDisabledLog = true;
909		function disableLogs() {
910			if (disabledDepth === 0) {
911				prevLog = console.log;
912				prevInfo = console.info;
913				prevWarn = console.warn;
914				prevError = console.error;
915				prevGroup = console.group;
916				prevGroupCollapsed = console.groupCollapsed;
917				prevGroupEnd = console.groupEnd;
918				var props = {
919					configurable: true,
920					enumerable: true,
921					value: disabledLog,
922					writable: true
923				};
924				Object.defineProperties(console, {
925					info: props,
926					log: props,
927					warn: props,
928					error: props,
929					group: props,
930					groupCollapsed: props,
931					groupEnd: props
932				});
933			}
934			disabledDepth++;
935		}
936		function reenableLogs() {
937			disabledDepth--;
938			if (disabledDepth === 0) {
939				var props = {
940					configurable: true,
941					enumerable: true,
942					writable: true
943				};
944				Object.defineProperties(console, {
945					log: assign({}, props, { value: prevLog }),
946					info: assign({}, props, { value: prevInfo }),
947					warn: assign({}, props, { value: prevWarn }),
948					error: assign({}, props, { value: prevError }),
949					group: assign({}, props, { value: prevGroup }),
950					groupCollapsed: assign({}, props, { value: prevGroupCollapsed }),
951					groupEnd: assign({}, props, { value: prevGroupEnd })
952				});
953			}
954			if (disabledDepth < 0) error("disabledDepth fell below zero. This is a bug in React. Please file an issue.");
955		}
956		var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;
957		var prefix;
958		function describeBuiltInComponentFrame(name, source, ownerFn) {
959			if (prefix === void 0) try {
960				throw Error();
961			} catch (x) {
962				var match = x.stack.trim().match(/\n( *(at )?)/);
963				prefix = match && match[1] || "";
964			}
965			return "\n" + prefix + name;
966		}
967		var reentry = false;
968		var componentFrameCache = new (typeof WeakMap === "function" ? WeakMap : Map)();
969		function describeNativeComponentFrame(fn, construct) {
970			if (!fn || reentry) return "";
971			var frame = componentFrameCache.get(fn);
972			if (frame !== void 0) return frame;
973			var control;
974			reentry = true;
975			var previousPrepareStackTrace = Error.prepareStackTrace;
976			Error.prepareStackTrace = void 0;
977			var previousDispatcher = ReactCurrentDispatcher.current;
978			ReactCurrentDispatcher.current = null;
979			disableLogs();
980			try {
981				if (construct) {
982					var Fake = function() {
983						throw Error();
984					};
985					Object.defineProperty(Fake.prototype, "props", { set: function() {
986						throw Error();
987					} });
988					if (typeof Reflect === "object" && Reflect.construct) {
989						try {
990							Reflect.construct(Fake, []);
991						} catch (x) {
992							control = x;
993						}
994						Reflect.construct(fn, [], Fake);
995					} else {
996						try {
997							Fake.call();
998						} catch (x) {
999							control = x;
1000						}
1001						fn.call(Fake.prototype);
1002					}
1003				} else {
1004					try {
1005						throw Error();
1006					} catch (x) {
1007						control = x;
1008					}
1009					fn();
1010				}
1011			} catch (sample) {
1012				if (sample && control && typeof sample.stack === "string") {
1013					var sampleLines = sample.stack.split("\n");
1014					var controlLines = control.stack.split("\n");
1015					var s = sampleLines.length - 1;
1016					var c = controlLines.length - 1;
1017					while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) c--;
1018					for (; s >= 1 && c >= 0; s--, c--) if (sampleLines[s] !== controlLines[c]) {
1019						if (s !== 1 || c !== 1) do {
1020							s--;
1021							c--;
1022							if (c < 0 || sampleLines[s] !== controlLines[c]) {
1023								var _frame = "\n" + sampleLines[s].replace(" at new ", " at ");
1024								if (fn.displayName && _frame.includes("<anonymous>")) _frame = _frame.replace("<anonymous>", fn.displayName);
1025								if (typeof fn === "function") componentFrameCache.set(fn, _frame);
1026								return _frame;
1027							}
1028						} while (s >= 1 && c >= 0);
1029						break;
1030					}
1031				}
1032			} finally {
1033				reentry = false;
1034				ReactCurrentDispatcher.current = previousDispatcher;
1035				reenableLogs();
1036				Error.prepareStackTrace = previousPrepareStackTrace;
1037			}
1038			var name = fn ? fn.displayName || fn.name : "";
1039			var syntheticFrame = name ? describeBuiltInComponentFrame(name) : "";
1040			if (typeof fn === "function") componentFrameCache.set(fn, syntheticFrame);
1041			return syntheticFrame;
1042		}
1043		function describeClassComponentFrame(ctor, source, ownerFn) {
1044			return describeNativeComponentFrame(ctor, true);
1045		}
1046		function describeFunctionComponentFrame(fn, source, ownerFn) {
1047			return describeNativeComponentFrame(fn, false);
1048		}
1049		function shouldConstruct(Component) {
1050			var prototype = Component.prototype;
1051			return !!(prototype && prototype.isReactComponent);
1052		}
1053		function describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {
1054			if (type == null) return "";
1055			if (typeof type === "function") return describeNativeComponentFrame(type, shouldConstruct(type));
1056			if (typeof type === "string") return describeBuiltInComponentFrame(type);
1057			switch (type) {
1058				case REACT_SUSPENSE_TYPE: return describeBuiltInComponentFrame("Suspense");
1059				case REACT_SUSPENSE_LIST_TYPE: return describeBuiltInComponentFrame("SuspenseList");
1060			}
1061			if (typeof type === "object") switch (type.$$typeof) {
1062				case REACT_FORWARD_REF_TYPE: return describeFunctionComponentFrame(type.render);
1063				case REACT_MEMO_TYPE: return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);
1064				case REACT_LAZY_TYPE:
1065					var lazyComponent = type;
1066					var payload = lazyComponent._payload;
1067					var init = lazyComponent._init;
1068					try {
1069						return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);
1070					} catch (x) {}
1071			}
1072			return "";
1073		}
1074		function describeFiber(fiber) {
1075			fiber._debugOwner && fiber._debugOwner.type;
1076			fiber._debugSource;
1077			switch (fiber.tag) {
1078				case HostComponent: return describeBuiltInComponentFrame(fiber.type);
1079				case LazyComponent: return describeBuiltInComponentFrame("Lazy");
1080				case SuspenseComponent: return describeBuiltInComponentFrame("Suspense");
1081				case SuspenseListComponent: return describeBuiltInComponentFrame("SuspenseList");
1082				case FunctionComponent:
1083				case IndeterminateComponent:
1084				case SimpleMemoComponent: return describeFunctionComponentFrame(fiber.type);
1085				case ForwardRef: return describeFunctionComponentFrame(fiber.type.render);
1086				case ClassComponent: return describeClassComponentFrame(fiber.type);
1087				default: return "";
1088			}
1089		}
1090		function getStackByFiberInDevAndProd(workInProgress$1) {
1091			try {
1092				var info = "";
1093				var node = workInProgress$1;
1094				do {
1095					info += describeFiber(node);
1096					node = node.return;
1097				} while (node);
1098				return info;
1099			} catch (x) {
1100				return "\nError generating stack: " + x.message + "\n" + x.stack;
1101			}
1102		}
1103		function getWrappedName(outerType, innerType, wrapperName) {
1104			var displayName = outerType.displayName;
1105			if (displayName) return displayName;
1106			var functionName = innerType.displayName || innerType.name || "";
1107			return functionName !== "" ? wrapperName + "(" + functionName + ")" : wrapperName;
1108		}
1109		function getContextName(type) {
1110			return type.displayName || "Context";
1111		}
1112		function getComponentNameFromType(type) {
1113			if (type == null) return null;
1114			if (typeof type.tag === "number") error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.");
1115			if (typeof type === "function") return type.displayName || type.name || null;
1116			if (typeof type === "string") return type;
1117			switch (type) {
1118				case REACT_FRAGMENT_TYPE: return "Fragment";
1119				case REACT_PORTAL_TYPE: return "Portal";
1120				case REACT_PROFILER_TYPE: return "Profiler";
1121				case REACT_STRICT_MODE_TYPE: return "StrictMode";
1122				case REACT_SUSPENSE_TYPE: return "Suspense";
1123				case REACT_SUSPENSE_LIST_TYPE: return "SuspenseList";
1124			}
1125			if (typeof type === "object") switch (type.$$typeof) {
1126				case REACT_CONTEXT_TYPE: return getContextName(type) + ".Consumer";
1127				case REACT_PROVIDER_TYPE: return getContextName(type._context) + ".Provider";
1128				case REACT_FORWARD_REF_TYPE: return getWrappedName(type, type.render, "ForwardRef");
1129				case REACT_MEMO_TYPE:
1130					var outerName = type.displayName || null;
1131					if (outerName !== null) return outerName;
1132					return getComponentNameFromType(type.type) || "Memo";
1133				case REACT_LAZY_TYPE:
1134					var lazyComponent = type;
1135					var payload = lazyComponent._payload;
1136					var init = lazyComponent._init;
1137					try {
1138						return getComponentNameFromType(init(payload));
1139					} catch (x) {
1140						return null;
1141					}
1142			}
1143			return null;
1144		}
1145		function getWrappedName$1(outerType, innerType, wrapperName) {
1146			var functionName = innerType.displayName || innerType.name || "";
1147			return outerType.displayName || (functionName !== "" ? wrapperName + "(" + functionName + ")" : wrapperName);
1148		}
1149		function getContextName$1(type) {
1150			return type.displayName || "Context";
1151		}
1152		function getComponentNameFromFiber(fiber) {
1153			var tag = fiber.tag, type = fiber.type;
1154			switch (tag) {
1155				case CacheComponent: return "Cache";
1156				case ContextConsumer: return getContextName$1(type) + ".Consumer";
1157				case ContextProvider: return getContextName$1(type._context) + ".Provider";
1158				case DehydratedFragment: return "DehydratedFragment";
1159				case ForwardRef: return getWrappedName$1(type, type.render, "ForwardRef");
1160				case Fragment: return "Fragment";
1161				case HostComponent: return type;
1162				case HostPortal: return "Portal";
1163				case HostRoot: return "Root";
1164				case HostText: return "Text";
1165				case LazyComponent: return getComponentNameFromType(type);
1166				case Mode:
1167					if (type === REACT_STRICT_MODE_TYPE) return "StrictMode";
1168					return "Mode";
1169				case OffscreenComponent: return "Offscreen";
1170				case Profiler: return "Profiler";
1171				case ScopeComponent: return "Scope";
1172				case SuspenseComponent: return "Suspense";
1173				case SuspenseListComponent: return "SuspenseList";
1174				case TracingMarkerComponent: return "TracingMarker";
1175				case ClassComponent:
1176				case FunctionComponent:
1177				case IncompleteClassComponent:
1178				case IndeterminateComponent:
1179				case MemoComponent:
1180				case SimpleMemoComponent:
1181					if (typeof type === "function") return type.displayName || type.name || null;
1182					if (typeof type === "string") return type;
1183					break;
1184			}
1185			return null;
1186		}
1187		var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;
1188		var current = null;
1189		var isRendering = false;
1190		function getCurrentFiberOwnerNameInDevOrNull() {
1191			if (current === null) return null;
1192			var owner = current._debugOwner;
1193			if (owner !== null && typeof owner !== "undefined") return getComponentNameFromFiber(owner);
1194			return null;
1195		}
1196		function getCurrentFiberStackInDev() {
1197			if (current === null) return "";
1198			return getStackByFiberInDevAndProd(current);
1199		}
1200		function resetCurrentFiber() {
1201			ReactDebugCurrentFrame.getCurrentStack = null;
1202			current = null;
1203			isRendering = false;
1204		}
1205		function setCurrentFiber(fiber) {
1206			ReactDebugCurrentFrame.getCurrentStack = fiber === null ? null : getCurrentFiberStackInDev;
1207			current = fiber;
1208			isRendering = false;
1209		}
1210		function getCurrentFiber() {
1211			return current;
1212		}
1213		function setIsRendering(rendering) {
1214			isRendering = rendering;
1215		}
1216		function toString(value) {
1217			return "" + value;
1218		}
1219		function getToStringValue(value) {
1220			switch (typeof value) {
1221				case "boolean":
1222				case "number":
1223				case "string":
1224				case "undefined": return value;
1225				case "object":
1226					checkFormFieldValueStringCoercion(value);
1227					return value;
1228				default: return "";
1229			}
1230		}
1231		var hasReadOnlyValue = {
1232			button: true,
1233			checkbox: true,
1234			image: true,
1235			hidden: true,
1236			radio: true,
1237			reset: true,
1238			submit: true
1239		};
1240		function checkControlledValueProps(tagName, props) {
1241			if (!(hasReadOnlyValue[props.type] || props.onChange || props.onInput || props.readOnly || props.disabled || props.value == null)) error("You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`.");
1242			if (!(props.onChange || props.readOnly || props.disabled || props.checked == null)) error("You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.");
1243		}
1244		function isCheckable(elem) {
1245			var type = elem.type;
1246			var nodeName = elem.nodeName;
1247			return nodeName && nodeName.toLowerCase() === "input" && (type === "checkbox" || type === "radio");
1248		}
1249		function getTracker(node) {
1250			return node._valueTracker;
1251		}
1252		function detachTracker(node) {
1253			node._valueTracker = null;
1254		}
1255		function getValueFromNode(node) {
1256			var value = "";
1257			if (!node) return value;
1258			if (isCheckable(node)) value = node.checked ? "true" : "false";
1259			else value = node.value;
1260			return value;
1261		}
1262		function trackValueOnNode(node) {
1263			var valueField = isCheckable(node) ? "checked" : "value";
1264			var descriptor = Object.getOwnPropertyDescriptor(node.constructor.prototype, valueField);
1265			checkFormFieldValueStringCoercion(node[valueField]);
1266			var currentValue = "" + node[valueField];
1267			if (node.hasOwnProperty(valueField) || typeof descriptor === "undefined" || typeof descriptor.get !== "function" || typeof descriptor.set !== "function") return;
1268			var get$1 = descriptor.get, set$1 = descriptor.set;
1269			Object.defineProperty(node, valueField, {
1270				configurable: true,
1271				get: function() {
1272					return get$1.call(this);
1273				},
1274				set: function(value) {
1275					checkFormFieldValueStringCoercion(value);
1276					currentValue = "" + value;
1277					set$1.call(this, value);
1278				}
1279			});
1280			Object.defineProperty(node, valueField, { enumerable: descriptor.enumerable });
1281			return {
1282				getValue: function() {
1283					return currentValue;
1284				},
1285				setValue: function(value) {
1286					checkFormFieldValueStringCoercion(value);
1287					currentValue = "" + value;
1288				},
1289				stopTracking: function() {
1290					detachTracker(node);
1291					delete node[valueField];
1292				}
1293			};
1294		}
1295		function track(node) {
1296			if (getTracker(node)) return;
1297			node._valueTracker = trackValueOnNode(node);
1298		}
1299		function updateValueIfChanged(node) {
1300			if (!node) return false;
1301			var tracker = getTracker(node);
1302			if (!tracker) return true;
1303			var lastValue = tracker.getValue();
1304			var nextValue = getValueFromNode(node);
1305			if (nextValue !== lastValue) {
1306				tracker.setValue(nextValue);
1307				return true;
1308			}
1309			return false;
1310		}
1311		function getActiveElement(doc) {
1312			doc = doc || (typeof document !== "undefined" ? document : void 0);
1313			if (typeof doc === "undefined") return null;
1314			try {
1315				return doc.activeElement || doc.body;
1316			} catch (e) {
1317				return doc.body;
1318			}
1319		}
1320		var didWarnValueDefaultValue = false;
1321		var didWarnCheckedDefaultChecked = false;
1322		var didWarnControlledToUncontrolled = false;
1323		var didWarnUncontrolledToControlled = false;
1324		function isControlled(props) {
1325			return props.type === "checkbox" || props.type === "radio" ? props.checked != null : props.value != null;
1326		}
1327		function getHostProps(element, props) {
1328			var node = element;
1329			var checked = props.checked;
1330			return assign({}, props, {
1331				defaultChecked: void 0,
1332				defaultValue: void 0,
1333				value: void 0,
1334				checked: checked != null ? checked : node._wrapperState.initialChecked
1335			});
1336		}
1337		function initWrapperState(element, props) {
1338			checkControlledValueProps("input", props);
1339			if (props.checked !== void 0 && props.defaultChecked !== void 0 && !didWarnCheckedDefaultChecked) {
1340				error("%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://reactjs.org/link/controlled-components", getCurrentFiberOwnerNameInDevOrNull() || "A component", props.type);
1341				didWarnCheckedDefaultChecked = true;
1342			}
1343			if (props.value !== void 0 && props.defaultValue !== void 0 && !didWarnValueDefaultValue) {
1344				error("%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://reactjs.org/link/controlled-components", getCurrentFiberOwnerNameInDevOrNull() || "A component", props.type);
1345				didWarnValueDefaultValue = true;
1346			}
1347			var node = element;
1348			var defaultValue = props.defaultValue == null ? "" : props.defaultValue;
1349			node._wrapperState = {
1350				initialChecked: props.checked != null ? props.checked : props.defaultChecked,
1351				initialValue: getToStringValue(props.value != null ? props.value : defaultValue),
1352				controlled: isControlled(props)
1353			};
1354		}
1355		function updateChecked(element, props) {
1356			var node = element;
1357			var checked = props.checked;
1358			if (checked != null) setValueForProperty(node, "checked", checked, false);
1359		}
1360		function updateWrapper(element, props) {
1361			var node = element;
1362			var controlled = isControlled(props);
1363			if (!node._wrapperState.controlled && controlled && !didWarnUncontrolledToControlled) {
1364				error("A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components");
1365				didWarnUncontrolledToControlled = true;
1366			}
1367			if (node._wrapperState.controlled && !controlled && !didWarnControlledToUncontrolled) {
1368				error("A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components");
1369				didWarnControlledToUncontrolled = true;
1370			}
1371			updateChecked(element, props);
1372			var value = getToStringValue(props.value);
1373			var type = props.type;
1374			if (value != null) {
1375				if (type === "number") {
1376					if (value === 0 && node.value === "" || node.value != value) node.value = toString(value);
1377				} else if (node.value !== toString(value)) node.value = toString(value);
1378			} else if (type === "submit" || type === "reset") {
1379				node.removeAttribute("value");
1380				return;
1381			}
1382			if (props.hasOwnProperty("value")) setDefaultValue(node, props.type, value);
1383			else if (props.hasOwnProperty("defaultValue")) setDefaultValue(node, props.type, getToStringValue(props.defaultValue));
1384			if (props.checked == null && props.defaultChecked != null) node.defaultChecked = !!props.defaultChecked;
1385		}
1386		function postMountWrapper(element, props, isHydrating$1) {
1387			var node = element;
1388			if (props.hasOwnProperty("value") || props.hasOwnProperty("defaultValue")) {
1389				var type = props.type;
1390				if ((type === "submit" || type === "reset") && (props.value === void 0 || props.value === null)) return;
1391				var initialValue = toString(node._wrapperState.initialValue);
1392				if (!isHydrating$1) {
1393					if (initialValue !== node.value) node.value = initialValue;
1394				}
1395				node.defaultValue = initialValue;
1396			}
1397			var name = node.name;
1398			if (name !== "") node.name = "";
1399			node.defaultChecked = !node.defaultChecked;
1400			node.defaultChecked = !!node._wrapperState.initialChecked;
1401			if (name !== "") node.name = name;
1402		}
1403		function restoreControlledState(element, props) {
1404			var node = element;
1405			updateWrapper(node, props);
1406			updateNamedCousins(node, props);
1407		}
1408		function updateNamedCousins(rootNode, props) {
1409			var name = props.name;
1410			if (props.type === "radio" && name != null) {
1411				var queryRoot = rootNode;
1412				while (queryRoot.parentNode) queryRoot = queryRoot.parentNode;
1413				checkAttributeStringCoercion(name, "name");
1414				var group = queryRoot.querySelectorAll("input[name=" + JSON.stringify("" + name) + "][type=\"radio\"]");
1415				for (var i = 0; i < group.length; i++) {
1416					var otherNode = group[i];
1417					if (otherNode === rootNode || otherNode.form !== rootNode.form) continue;
1418					var otherProps = getFiberCurrentPropsFromNode(otherNode);
1419					if (!otherProps) throw new Error("ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported.");
1420					updateValueIfChanged(otherNode);
1421					updateWrapper(otherNode, otherProps);
1422				}
1423			}
1424		}
1425		function setDefaultValue(node, type, value) {
1426			if (type !== "number" || getActiveElement(node.ownerDocument) !== node) {
1427				if (value == null) node.defaultValue = toString(node._wrapperState.initialValue);
1428				else if (node.defaultValue !== toString(value)) node.defaultValue = toString(value);
1429			}
1430		}
1431		var didWarnSelectedSetOnOption = false;
1432		var didWarnInvalidChild = false;
1433		var didWarnInvalidInnerHTML = false;
1434		function validateProps(element, props) {
1435			if (props.value == null) {
1436				if (typeof props.children === "object" && props.children !== null) React.Children.forEach(props.children, function(child) {
1437					if (child == null) return;
1438					if (typeof child === "string" || typeof child === "number") return;
1439					if (!didWarnInvalidChild) {
1440						didWarnInvalidChild = true;
1441						error("Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>.");
1442					}
1443				});
1444				else if (props.dangerouslySetInnerHTML != null) {
1445					if (!didWarnInvalidInnerHTML) {
1446						didWarnInvalidInnerHTML = true;
1447						error("Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected.");
1448					}
1449				}
1450			}
1451			if (props.selected != null && !didWarnSelectedSetOnOption) {
1452				error("Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>.");
1453				didWarnSelectedSetOnOption = true;
1454			}
1455		}
1456		function postMountWrapper$1(element, props) {
1457			if (props.value != null) element.setAttribute("value", toString(getToStringValue(props.value)));
1458		}
1459		var isArrayImpl = Array.isArray;
1460		function isArray(a) {
1461			return isArrayImpl(a);
1462		}
1463		var didWarnValueDefaultValue$1 = false;
1464		function getDeclarationErrorAddendum() {
1465			var ownerName = getCurrentFiberOwnerNameInDevOrNull();
1466			if (ownerName) return "\n\nCheck the render method of `" + ownerName + "`.";
1467			return "";
1468		}
1469		var valuePropNames = ["value", "defaultValue"];
1470		function checkSelectPropTypes(props) {
1471			checkControlledValueProps("select", props);
1472			for (var i = 0; i < valuePropNames.length; i++) {
1473				var propName = valuePropNames[i];
1474				if (props[propName] == null) continue;
1475				var propNameIsArray = isArray(props[propName]);
1476				if (props.multiple && !propNameIsArray) error("The `%s` prop supplied to <select> must be an array if `multiple` is true.%s", propName, getDeclarationErrorAddendum());
1477				else if (!props.multiple && propNameIsArray) error("The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.%s", propName, getDeclarationErrorAddendum());
1478			}
1479		}
1480		function updateOptions(node, multiple, propValue, setDefaultSelected) {
1481			var options$1 = node.options;
1482			if (multiple) {
1483				var selectedValues = propValue;
1484				var selectedValue = {};
1485				for (var i = 0; i < selectedValues.length; i++) selectedValue["$" + selectedValues[i]] = true;
1486				for (var _i = 0; _i < options$1.length; _i++) {
1487					var selected = selectedValue.hasOwnProperty("$" + options$1[_i].value);
1488					if (options$1[_i].selected !== selected) options$1[_i].selected = selected;
1489					if (selected && setDefaultSelected) options$1[_i].defaultSelected = true;
1490				}
1491			} else {
1492				var _selectedValue = toString(getToStringValue(propValue));
1493				var defaultSelected = null;
1494				for (var _i2 = 0; _i2 < options$1.length; _i2++) {
1495					if (options$1[_i2].value === _selectedValue) {
1496						options$1[_i2].selected = true;
1497						if (setDefaultSelected) options$1[_i2].defaultSelected = true;
1498						return;
1499					}
1500					if (defaultSelected === null && !options$1[_i2].disabled) defaultSelected = options$1[_i2];
1501				}
1502				if (defaultSelected !== null) defaultSelected.selected = true;
1503			}
1504		}
1505		function getHostProps$1(element, props) {
1506			return assign({}, props, { value: void 0 });
1507		}
1508		function initWrapperState$1(element, props) {
1509			var node = element;
1510			checkSelectPropTypes(props);
1511			node._wrapperState = { wasMultiple: !!props.multiple };
1512			if (props.value !== void 0 && props.defaultValue !== void 0 && !didWarnValueDefaultValue$1) {
1513				error("Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://reactjs.org/link/controlled-components");
1514				didWarnValueDefaultValue$1 = true;
1515			}
1516		}
1517		function postMountWrapper$2(element, props) {
1518			var node = element;
1519			node.multiple = !!props.multiple;
1520			var value = props.value;
1521			if (value != null) updateOptions(node, !!props.multiple, value, false);
1522			else if (props.defaultValue != null) updateOptions(node, !!props.multiple, props.defaultValue, true);
1523		}
1524		function postUpdateWrapper(element, props) {
1525			var node = element;
1526			var wasMultiple = node._wrapperState.wasMultiple;
1527			node._wrapperState.wasMultiple = !!props.multiple;
1528			var value = props.value;
1529			if (value != null) updateOptions(node, !!props.multiple, value, false);
1530			else if (wasMultiple !== !!props.multiple) if (props.defaultValue != null) updateOptions(node, !!props.multiple, props.defaultValue, true);
1531			else updateOptions(node, !!props.multiple, props.multiple ? [] : "", false);
1532		}
1533		function restoreControlledState$1(element, props) {
1534			var node = element;
1535			var value = props.value;
1536			if (value != null) updateOptions(node, !!props.multiple, value, false);
1537		}
1538		var didWarnValDefaultVal = false;
1539		function getHostProps$2(element, props) {
1540			var node = element;
1541			if (props.dangerouslySetInnerHTML != null) throw new Error("`dangerouslySetInnerHTML` does not make sense on <textarea>.");
1542			return assign({}, props, {
1543				value: void 0,
1544				defaultValue: void 0,
1545				children: toString(node._wrapperState.initialValue)
1546			});
1547		}
1548		function initWrapperState$2(element, props) {
1549			var node = element;
1550			checkControlledValueProps("textarea", props);
1551			if (props.value !== void 0 && props.defaultValue !== void 0 && !didWarnValDefaultVal) {
1552				error("%s contains a textarea with both value and defaultValue props. Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://reactjs.org/link/controlled-components", getCurrentFiberOwnerNameInDevOrNull() || "A component");
1553				didWarnValDefaultVal = true;
1554			}
1555			var initialValue = props.value;
1556			if (initialValue == null) {
1557				var children = props.children, defaultValue = props.defaultValue;
1558				if (children != null) {
1559					error("Use the `defaultValue` or `value` props instead of setting children on <textarea>.");
1560					if (defaultValue != null) throw new Error("If you supply `defaultValue` on a <textarea>, do not pass children.");
1561					if (isArray(children)) {
1562						if (children.length > 1) throw new Error("<textarea> can only have at most one child.");
1563						children = children[0];
1564					}
1565					defaultValue = children;
1566				}
1567				if (defaultValue == null) defaultValue = "";
1568				initialValue = defaultValue;
1569			}
1570			node._wrapperState = { initialValue: getToStringValue(initialValue) };
1571		}
1572		function updateWrapper$1(element, props) {
1573			var node = element;
1574			var value = getToStringValue(props.value);
1575			var defaultValue = getToStringValue(props.defaultValue);
1576			if (value != null) {
1577				var newValue = toString(value);
1578				if (newValue !== node.value) node.value = newValue;
1579				if (props.defaultValue == null && node.defaultValue !== newValue) node.defaultValue = newValue;
1580			}
1581			if (defaultValue != null) node.defaultValue = toString(defaultValue);
1582		}
1583		function postMountWrapper$3(element, props) {
1584			var node = element;
1585			var textContent = node.textContent;
1586			if (textContent === node._wrapperState.initialValue) {
1587				if (textContent !== "" && textContent !== null) node.value = textContent;
1588			}
1589		}
1590		function restoreControlledState$2(element, props) {
1591			updateWrapper$1(element, props);
1592		}
1593		var HTML_NAMESPACE = "http://www.w3.org/1999/xhtml";
1594		var MATH_NAMESPACE = "http://www.w3.org/1998/Math/MathML";
1595		var SVG_NAMESPACE = "http://www.w3.org/2000/svg";
1596		function getIntrinsicNamespace(type) {
1597			switch (type) {
1598				case "svg": return SVG_NAMESPACE;
1599				case "math": return MATH_NAMESPACE;
1600				default: return HTML_NAMESPACE;
1601			}
1602		}
1603		function getChildNamespace(parentNamespace, type) {
1604			if (parentNamespace == null || parentNamespace === HTML_NAMESPACE) return getIntrinsicNamespace(type);
1605			if (parentNamespace === SVG_NAMESPACE && type === "foreignObject") return HTML_NAMESPACE;
1606			return parentNamespace;
1607		}
1608		var createMicrosoftUnsafeLocalFunction = function(func) {
1609			if (typeof MSApp !== "undefined" && MSApp.execUnsafeLocalFunction) return function(arg0, arg1, arg2, arg3) {
1610				MSApp.execUnsafeLocalFunction(function() {
1611					return func(arg0, arg1, arg2, arg3);
1612				});
1613			};
1614			else return func;
1615		};
1616		var reusableSVGContainer;
1617		var setInnerHTML = createMicrosoftUnsafeLocalFunction(function(node, html) {
1618			if (node.namespaceURI === SVG_NAMESPACE) {
1619				if (!("innerHTML" in node)) {
1620					reusableSVGContainer = reusableSVGContainer || document.createElement("div");
1621					reusableSVGContainer.innerHTML = "<svg>" + html.valueOf().toString() + "</svg>";
1622					var svgNode = reusableSVGContainer.firstChild;
1623					while (node.firstChild) node.removeChild(node.firstChild);
1624					while (svgNode.firstChild) node.appendChild(svgNode.firstChild);
1625					return;
1626				}
1627			}
1628			node.innerHTML = html;
1629		});
1630		var ELEMENT_NODE = 1;
1631		var TEXT_NODE = 3;
1632		var COMMENT_NODE = 8;
1633		var DOCUMENT_NODE = 9;
1634		var DOCUMENT_FRAGMENT_NODE = 11;
1635		var setTextContent = function(node, text) {
1636			if (text) {
1637				var firstChild = node.firstChild;
1638				if (firstChild && firstChild === node.lastChild && firstChild.nodeType === TEXT_NODE) {
1639					firstChild.nodeValue = text;
1640					return;
1641				}
1642			}
1643			node.textContent = text;
1644		};
1645		var shorthandToLonghand = {
1646			animation: [
1647				"animationDelay",
1648				"animationDirection",
1649				"animationDuration",
1650				"animationFillMode",
1651				"animationIterationCount",
1652				"animationName",
1653				"animationPlayState",
1654				"animationTimingFunction"
1655			],
1656			background: [
1657				"backgroundAttachment",
1658				"backgroundClip",
1659				"backgroundColor",
1660				"backgroundImage",
1661				"backgroundOrigin",
1662				"backgroundPositionX",
1663				"backgroundPositionY",
1664				"backgroundRepeat",
1665				"backgroundSize"
1666			],
1667			backgroundPosition: ["backgroundPositionX", "backgroundPositionY"],
1668			border: [
1669				"borderBottomColor",
1670				"borderBottomStyle",
1671				"borderBottomWidth",
1672				"borderImageOutset",
1673				"borderImageRepeat",
1674				"borderImageSlice",
1675				"borderImageSource",
1676				"borderImageWidth",
1677				"borderLeftColor",
1678				"borderLeftStyle",
1679				"borderLeftWidth",
1680				"borderRightColor",
1681				"borderRightStyle",
1682				"borderRightWidth",
1683				"borderTopColor",
1684				"borderTopStyle",
1685				"borderTopWidth"
1686			],
1687			borderBlockEnd: [
1688				"borderBlockEndColor",
1689				"borderBlockEndStyle",
1690				"borderBlockEndWidth"
1691			],
1692			borderBlockStart: [
1693				"borderBlockStartColor",
1694				"borderBlockStartStyle",
1695				"borderBlockStartWidth"
1696			],
1697			borderBottom: [
1698				"borderBottomColor",
1699				"borderBottomStyle",
1700				"borderBottomWidth"
1701			],
1702			borderColor: [
1703				"borderBottomColor",
1704				"borderLeftColor",
1705				"borderRightColor",
1706				"borderTopColor"
1707			],
1708			borderImage: [
1709				"borderImageOutset",
1710				"borderImageRepeat",
1711				"borderImageSlice",
1712				"borderImageSource",
1713				"borderImageWidth"
1714			],
1715			borderInlineEnd: [
1716				"borderInlineEndColor",
1717				"borderInlineEndStyle",
1718				"borderInlineEndWidth"
1719			],
1720			borderInlineStart: [
1721				"borderInlineStartColor",
1722				"borderInlineStartStyle",
1723				"borderInlineStartWidth"
1724			],
1725			borderLeft: [
1726				"borderLeftColor",
1727				"borderLeftStyle",
1728				"borderLeftWidth"
1729			],
1730			borderRadius: [
1731				"borderBottomLeftRadius",
1732				"borderBottomRightRadius",
1733				"borderTopLeftRadius",
1734				"borderTopRightRadius"
1735			],
1736			borderRight: [
1737				"borderRightColor",
1738				"borderRightStyle",
1739				"borderRightWidth"
1740			],
1741			borderStyle: [
1742				"borderBottomStyle",
1743				"borderLeftStyle",
1744				"borderRightStyle",
1745				"borderTopStyle"
1746			],
1747			borderTop: [
1748				"borderTopColor",
1749				"borderTopStyle",
1750				"borderTopWidth"
1751			],
1752			borderWidth: [
1753				"borderBottomWidth",
1754				"borderLeftWidth",
1755				"borderRightWidth",
1756				"borderTopWidth"
1757			],
1758			columnRule: [
1759				"columnRuleColor",
1760				"columnRuleStyle",
1761				"columnRuleWidth"
1762			],
1763			columns: ["columnCount", "columnWidth"],
1764			flex: [
1765				"flexBasis",
1766				"flexGrow",
1767				"flexShrink"
1768			],
1769			flexFlow: ["flexDirection", "flexWrap"],
1770			font: [
1771				"fontFamily",
1772				"fontFeatureSettings",
1773				"fontKerning",
1774				"fontLanguageOverride",
1775				"fontSize",
1776				"fontSizeAdjust",
1777				"fontStretch",
1778				"fontStyle",
1779				"fontVariant",
1780				"fontVariantAlternates",
1781				"fontVariantCaps",
1782				"fontVariantEastAsian",
1783				"fontVariantLigatures",
1784				"fontVariantNumeric",
1785				"fontVariantPosition",
1786				"fontWeight",
1787				"lineHeight"
1788			],
1789			fontVariant: [
1790				"fontVariantAlternates",
1791				"fontVariantCaps",
1792				"fontVariantEastAsian",
1793				"fontVariantLigatures",
1794				"fontVariantNumeric",
1795				"fontVariantPosition"
1796			],
1797			gap: ["columnGap", "rowGap"],
1798			grid: [
1799				"gridAutoColumns",
1800				"gridAutoFlow",
1801				"gridAutoRows",
1802				"gridTemplateAreas",
1803				"gridTemplateColumns",
1804				"gridTemplateRows"
1805			],
1806			gridArea: [
1807				"gridColumnEnd",
1808				"gridColumnStart",
1809				"gridRowEnd",
1810				"gridRowStart"
1811			],
1812			gridColumn: ["gridColumnEnd", "gridColumnStart"],
1813			gridColumnGap: ["columnGap"],
1814			gridGap: ["columnGap", "rowGap"],
1815			gridRow: ["gridRowEnd", "gridRowStart"],
1816			gridRowGap: ["rowGap"],
1817			gridTemplate: [
1818				"gridTemplateAreas",
1819				"gridTemplateColumns",
1820				"gridTemplateRows"
1821			],
1822			listStyle: [
1823				"listStyleImage",
1824				"listStylePosition",
1825				"listStyleType"
1826			],
1827			margin: [
1828				"marginBottom",
1829				"marginLeft",
1830				"marginRight",
1831				"marginTop"
1832			],
1833			marker: [
1834				"markerEnd",
1835				"markerMid",
1836				"markerStart"
1837			],
1838			mask: [
1839				"maskClip",
1840				"maskComposite",
1841				"maskImage",
1842				"maskMode",
1843				"maskOrigin",
1844				"maskPositionX",
1845				"maskPositionY",
1846				"maskRepeat",
1847				"maskSize"
1848			],
1849			maskPosition: ["maskPositionX", "maskPositionY"],
1850			outline: [
1851				"outlineColor",
1852				"outlineStyle",
1853				"outlineWidth"
1854			],
1855			overflow: ["overflowX", "overflowY"],
1856			padding: [
1857				"paddingBottom",
1858				"paddingLeft",
1859				"paddingRight",
1860				"paddingTop"
1861			],
1862			placeContent: ["alignContent", "justifyContent"],
1863			placeItems: ["alignItems", "justifyItems"],
1864			placeSelf: ["alignSelf", "justifySelf"],
1865			textDecoration: [
1866				"textDecorationColor",
1867				"textDecorationLine",
1868				"textDecorationStyle"
1869			],
1870			textEmphasis: ["textEmphasisColor", "textEmphasisStyle"],
1871			transition: [
1872				"transitionDelay",
1873				"transitionDuration",
1874				"transitionProperty",
1875				"transitionTimingFunction"
1876			],
1877			wordWrap: ["overflowWrap"]
1878		};
1879		var isUnitlessNumber = {
1880			animationIterationCount: true,
1881			aspectRatio: true,
1882			borderImageOutset: true,
1883			borderImageSlice: true,
1884			borderImageWidth: true,
1885			boxFlex: true,
1886			boxFlexGroup: true,
1887			boxOrdinalGroup: true,
1888			columnCount: true,
1889			columns: true,
1890			flex: true,
1891			flexGrow: true,
1892			flexPositive: true,
1893			flexShrink: true,
1894			flexNegative: true,
1895			flexOrder: true,
1896			gridArea: true,
1897			gridRow: true,
1898			gridRowEnd: true,
1899			gridRowSpan: true,
1900			gridRowStart: true,
1901			gridColumn: true,
1902			gridColumnEnd: true,
1903			gridColumnSpan: true,
1904			gridColumnStart: true,
1905			fontWeight: true,
1906			lineClamp: true,
1907			lineHeight: true,
1908			opacity: true,
1909			order: true,
1910			orphans: true,
1911			tabSize: true,
1912			widows: true,
1913			zIndex: true,
1914			zoom: true,
1915			fillOpacity: true,
1916			floodOpacity: true,
1917			stopOpacity: true,
1918			strokeDasharray: true,
1919			strokeDashoffset: true,
1920			strokeMiterlimit: true,
1921			strokeOpacity: true,
1922			strokeWidth: true
1923		};
1924		function prefixKey(prefix$1, key) {
1925			return prefix$1 + key.charAt(0).toUpperCase() + key.substring(1);
1926		}
1927		var prefixes = [
1928			"Webkit",
1929			"ms",
1930			"Moz",
1931			"O"
1932		];
1933		Object.keys(isUnitlessNumber).forEach(function(prop) {
1934			prefixes.forEach(function(prefix$1) {
1935				isUnitlessNumber[prefixKey(prefix$1, prop)] = isUnitlessNumber[prop];
1936			});
1937		});
1938		function dangerousStyleValue(name, value, isCustomProperty) {
1939			if (value == null || typeof value === "boolean" || value === "") return "";
1940			if (!isCustomProperty && typeof value === "number" && value !== 0 && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name])) return value + "px";
1941			checkCSSPropertyStringCoercion(value, name);
1942			return ("" + value).trim();
1943		}
1944		var uppercasePattern = /([A-Z])/g;
1945		var msPattern = /^ms-/;
1946		function hyphenateStyleName(name) {
1947			return name.replace(uppercasePattern, "-$1").toLowerCase().replace(msPattern, "-ms-");
1948		}
1949		var warnValidStyle = function() {};
1950		var badVendoredStyleNamePattern = /^(?:webkit|moz|o)[A-Z]/;
1951		var msPattern$1 = /^-ms-/;
1952		var hyphenPattern = /-(.)/g;
1953		var badStyleValueWithSemicolonPattern = /;\s*$/;
1954		var warnedStyleNames = {};
1955		var warnedStyleValues = {};
1956		var warnedForNaNValue = false;
1957		var warnedForInfinityValue = false;
1958		var camelize = function(string) {
1959			return string.replace(hyphenPattern, function(_, character) {
1960				return character.toUpperCase();
1961			});
1962		};
1963		var warnHyphenatedStyleName = function(name) {
1964			if (warnedStyleNames.hasOwnProperty(name) && warnedStyleNames[name]) return;
1965			warnedStyleNames[name] = true;
1966			error("Unsupported style property %s. Did you mean %s?", name, camelize(name.replace(msPattern$1, "ms-")));
1967		};
1968		var warnBadVendoredStyleName = function(name) {
1969			if (warnedStyleNames.hasOwnProperty(name) && warnedStyleNames[name]) return;
1970			warnedStyleNames[name] = true;
1971			error("Unsupported vendor-prefixed style property %s. Did you mean %s?", name, name.charAt(0).toUpperCase() + name.slice(1));
1972		};
1973		var warnStyleValueWithSemicolon = function(name, value) {
1974			if (warnedStyleValues.hasOwnProperty(value) && warnedStyleValues[value]) return;
1975			warnedStyleValues[value] = true;
1976			error("Style property values shouldn't contain a semicolon. Try \"%s: %s\" instead.", name, value.replace(badStyleValueWithSemicolonPattern, ""));
1977		};
1978		var warnStyleValueIsNaN = function(name, value) {
1979			if (warnedForNaNValue) return;
1980			warnedForNaNValue = true;
1981			error("`NaN` is an invalid value for the `%s` css style property.", name);
1982		};
1983		var warnStyleValueIsInfinity = function(name, value) {
1984			if (warnedForInfinityValue) return;
1985			warnedForInfinityValue = true;
1986			error("`Infinity` is an invalid value for the `%s` css style property.", name);
1987		};
1988		warnValidStyle = function(name, value) {
1989			if (name.indexOf("-") > -1) warnHyphenatedStyleName(name);
1990			else if (badVendoredStyleNamePattern.test(name)) warnBadVendoredStyleName(name);
1991			else if (badStyleValueWithSemicolonPattern.test(value)) warnStyleValueWithSemicolon(name, value);
1992			if (typeof value === "number") {
1993				if (isNaN(value)) warnStyleValueIsNaN(name, value);
1994				else if (!isFinite(value)) warnStyleValueIsInfinity(name, value);
1995			}
1996		};
1997		var warnValidStyle$1 = warnValidStyle;
1998		function createDangerousStringForStyles(styles) {
1999			var serialized = "";
2000			var delimiter = "";
2001			for (var styleName in styles) {
2002				if (!styles.hasOwnProperty(styleName)) continue;
2003				var styleValue = styles[styleName];
2004				if (styleValue != null) {
2005					var isCustomProperty = styleName.indexOf("--") === 0;
2006					serialized += delimiter + (isCustomProperty ? styleName : hyphenateStyleName(styleName)) + ":";
2007					serialized += dangerousStyleValue(styleName, styleValue, isCustomProperty);
2008					delimiter = ";";
2009				}
2010			}
2011			return serialized || null;
2012		}
2013		function setValueForStyles(node, styles) {
2014			var style$1 = node.style;
2015			for (var styleName in styles) {
2016				if (!styles.hasOwnProperty(styleName)) continue;
2017				var isCustomProperty = styleName.indexOf("--") === 0;
2018				if (!isCustomProperty) warnValidStyle$1(styleName, styles[styleName]);
2019				var styleValue = dangerousStyleValue(styleName, styles[styleName], isCustomProperty);
2020				if (styleName === "float") styleName = "cssFloat";
2021				if (isCustomProperty) style$1.setProperty(styleName, styleValue);
2022				else style$1[styleName] = styleValue;
2023			}
2024		}
2025		function isValueEmpty(value) {
2026			return value == null || typeof value === "boolean" || value === "";
2027		}
2028		function expandShorthandMap(styles) {
2029			var expanded = {};
2030			for (var key in styles) {
2031				var longhands = shorthandToLonghand[key] || [key];
2032				for (var i = 0; i < longhands.length; i++) expanded[longhands[i]] = key;
2033			}
2034			return expanded;
2035		}
2036		function validateShorthandPropertyCollisionInDev(styleUpdates, nextStyles) {
2037			if (!nextStyles) return;
2038			var expandedUpdates = expandShorthandMap(styleUpdates);
2039			var expandedStyles = expandShorthandMap(nextStyles);
2040			var warnedAbout = {};
2041			for (var key in expandedUpdates) {
2042				var originalKey = expandedUpdates[key];
2043				var correctOriginalKey = expandedStyles[key];
2044				if (correctOriginalKey && originalKey !== correctOriginalKey) {
2045					var warningKey = originalKey + "," + correctOriginalKey;
2046					if (warnedAbout[warningKey]) continue;
2047					warnedAbout[warningKey] = true;
2048					error("%s a style property during rerender (%s) when a conflicting property is set (%s) can lead to styling bugs. To avoid this, don't mix shorthand and non-shorthand properties for the same value; instead, replace the shorthand with separate values.", isValueEmpty(styleUpdates[originalKey]) ? "Removing" : "Updating", originalKey, correctOriginalKey);
2049				}
2050			}
2051		}
2052		var voidElementTags = assign({ menuitem: true }, {
2053			area: true,
2054			base: true,
2055			br: true,
2056			col: true,
2057			embed: true,
2058			hr: true,
2059			img: true,
2060			input: true,
2061			keygen: true,
2062			link: true,
2063			meta: true,
2064			param: true,
2065			source: true,
2066			track: true,
2067			wbr: true
2068		});
2069		var HTML = "__html";
2070		function assertValidProps(tag, props) {
2071			if (!props) return;
2072			if (voidElementTags[tag]) {
2073				if (props.children != null || props.dangerouslySetInnerHTML != null) throw new Error(tag + " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");
2074			}
2075			if (props.dangerouslySetInnerHTML != null) {
2076				if (props.children != null) throw new Error("Can only set one of `children` or `props.dangerouslySetInnerHTML`.");
2077				if (typeof props.dangerouslySetInnerHTML !== "object" || !(HTML in props.dangerouslySetInnerHTML)) throw new Error("`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://reactjs.org/link/dangerously-set-inner-html for more information.");
2078			}
2079			if (!props.suppressContentEditableWarning && props.contentEditable && props.children != null) error("A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional.");
2080			if (props.style != null && typeof props.style !== "object") throw new Error("The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.");
2081		}
2082		function isCustomComponent(tagName, props) {
2083			if (tagName.indexOf("-") === -1) return typeof props.is === "string";
2084			switch (tagName) {
2085				case "annotation-xml":
2086				case "color-profile":
2087				case "font-face":
2088				case "font-face-src":
2089				case "font-face-uri":
2090				case "font-face-format":
2091				case "font-face-name":
2092				case "missing-glyph": return false;
2093				default: return true;
2094			}
2095		}
2096		var possibleStandardNames = {
2097			accept: "accept",
2098			acceptcharset: "acceptCharset",
2099			"accept-charset": "acceptCharset",
2100			accesskey: "accessKey",
2101			action: "action",
2102			allowfullscreen: "allowFullScreen",
2103			alt: "alt",
2104			as: "as",
2105			async: "async",
2106			autocapitalize: "autoCapitalize",
2107			autocomplete: "autoComplete",
2108			autocorrect: "autoCorrect",
2109			autofocus: "autoFocus",
2110			autoplay: "autoPlay",
2111			autosave: "autoSave",
2112			capture: "capture",
2113			cellpadding: "cellPadding",
2114			cellspacing: "cellSpacing",
2115			challenge: "challenge",
2116			charset: "charSet",
2117			checked: "checked",
2118			children: "children",
2119			cite: "cite",
2120			class: "className",
2121			classid: "classID",
2122			classname: "className",
2123			cols: "cols",
2124			colspan: "colSpan",
2125			content: "content",
2126			contenteditable: "contentEditable",
2127			contextmenu: "contextMenu",
2128			controls: "controls",
2129			controlslist: "controlsList",
2130			coords: "coords",
2131			crossorigin: "crossOrigin",
2132			dangerouslysetinnerhtml: "dangerouslySetInnerHTML",
2133			data: "data",
2134			datetime: "dateTime",
2135			default: "default",
2136			defaultchecked: "defaultChecked",
2137			defaultvalue: "defaultValue",
2138			defer: "defer",
2139			dir: "dir",
2140			disabled: "disabled",
2141			disablepictureinpicture: "disablePictureInPicture",
2142			disableremoteplayback: "disableRemotePlayback",
2143			download: "download",
2144			draggable: "draggable",
2145			enctype: "encType",
2146			enterkeyhint: "enterKeyHint",
2147			for: "htmlFor",
2148			form: "form",
2149			formmethod: "formMethod",
2150			formaction: "formAction",
2151			formenctype: "formEncType",
2152			formnovalidate: "formNoValidate",
2153			formtarget: "formTarget",
2154			frameborder: "frameBorder",
2155			headers: "headers",
2156			height: "height",
2157			hidden: "hidden",
2158			high: "high",
2159			href: "href",
2160			hreflang: "hrefLang",
2161			htmlfor: "htmlFor",
2162			httpequiv: "httpEquiv",
2163			"http-equiv": "httpEquiv",
2164			icon: "icon",
2165			id: "id",
2166			imagesizes: "imageSizes",
2167			imagesrcset: "imageSrcSet",
2168			innerhtml: "innerHTML",
2169			inputmode: "inputMode",
2170			integrity: "integrity",
2171			is: "is",
2172			itemid: "itemID",
2173			itemprop: "itemProp",
2174			itemref: "itemRef",
2175			itemscope: "itemScope",
2176			itemtype: "itemType",
2177			keyparams: "keyParams",
2178			keytype: "keyType",
2179			kind: "kind",
2180			label: "label",
2181			lang: "lang",
2182			list: "list",
2183			loop: "loop",
2184			low: "low",
2185			manifest: "manifest",
2186			marginwidth: "marginWidth",
2187			marginheight: "marginHeight",
2188			max: "max",
2189			maxlength: "maxLength",
2190			media: "media",
2191			mediagroup: "mediaGroup",
2192			method: "method",
2193			min: "min",
2194			minlength: "minLength",
2195			multiple: "multiple",
2196			muted: "muted",
2197			name: "name",
2198			nomodule: "noModule",
2199			nonce: "nonce",
2200			novalidate: "noValidate",
2201			open: "open",
2202			optimum: "optimum",
2203			pattern: "pattern",
2204			placeholder: "placeholder",
2205			playsinline: "playsInline",
2206			poster: "poster",
2207			preload: "preload",
2208			profile: "profile",
2209			radiogroup: "radioGroup",
2210			readonly: "readOnly",
2211			referrerpolicy: "referrerPolicy",
2212			rel: "rel",
2213			required: "required",
2214			reversed: "reversed",
2215			role: "role",
2216			rows: "rows",
2217			rowspan: "rowSpan",
2218			sandbox: "sandbox",
2219			scope: "scope",
2220			scoped: "scoped",
2221			scrolling: "scrolling",
2222			seamless: "seamless",
2223			selected: "selected",
2224			shape: "shape",
2225			size: "size",
2226			sizes: "sizes",
2227			span: "span",
2228			spellcheck: "spellCheck",
2229			src: "src",
2230			srcdoc: "srcDoc",
2231			srclang: "srcLang",
2232			srcset: "srcSet",
2233			start: "start",
2234			step: "step",
2235			style: "style",
2236			summary: "summary",
2237			tabindex: "tabIndex",
2238			target: "target",
2239			title: "title",
2240			type: "type",
2241			usemap: "useMap",
2242			value: "value",
2243			width: "width",
2244			wmode: "wmode",
2245			wrap: "wrap",
2246			about: "about",
2247			accentheight: "accentHeight",
2248			"accent-height": "accentHeight",
2249			accumulate: "accumulate",
2250			additive: "additive",
2251			alignmentbaseline: "alignmentBaseline",
2252			"alignment-baseline": "alignmentBaseline",
2253			allowreorder: "allowReorder",
2254			alphabetic: "alphabetic",
2255			amplitude: "amplitude",
2256			arabicform: "arabicForm",
2257			"arabic-form": "arabicForm",
2258			ascent: "ascent",
2259			attributename: "attributeName",
2260			attributetype: "attributeType",
2261			autoreverse: "autoReverse",
2262			azimuth: "azimuth",
2263			basefrequency: "baseFrequency",
2264			baselineshift: "baselineShift",
2265			"baseline-shift": "baselineShift",
2266			baseprofile: "baseProfile",
2267			bbox: "bbox",
2268			begin: "begin",
2269			bias: "bias",
2270			by: "by",
2271			calcmode: "calcMode",
2272			capheight: "capHeight",
2273			"cap-height": "capHeight",
2274			clip: "clip",
2275			clippath: "clipPath",
2276			"clip-path": "clipPath",
2277			clippathunits: "clipPathUnits",
2278			cliprule: "clipRule",
2279			"clip-rule": "clipRule",
2280			color: "color",
2281			colorinterpolation: "colorInterpolation",
2282			"color-interpolation": "colorInterpolation",
2283			colorinterpolationfilters: "colorInterpolationFilters",
2284			"color-interpolation-filters": "colorInterpolationFilters",
2285			colorprofile: "colorProfile",
2286			"color-profile": "colorProfile",
2287			colorrendering: "colorRendering",
2288			"color-rendering": "colorRendering",
2289			contentscripttype: "contentScriptType",
2290			contentstyletype: "contentStyleType",
2291			cursor: "cursor",
2292			cx: "cx",
2293			cy: "cy",
2294			d: "d",
2295			datatype: "datatype",
2296			decelerate: "decelerate",
2297			descent: "descent",
2298			diffuseconstant: "diffuseConstant",
2299			direction: "direction",
2300			display: "display",
2301			divisor: "divisor",
2302			dominantbaseline: "dominantBaseline",
2303			"dominant-baseline": "dominantBaseline",
2304			dur: "dur",
2305			dx: "dx",
2306			dy: "dy",
2307			edgemode: "edgeMode",
2308			elevation: "elevation",
2309			enablebackground: "enableBackground",
2310			"enable-background": "enableBackground",
2311			end: "end",
2312			exponent: "exponent",
2313			externalresourcesrequired: "externalResourcesRequired",
2314			fill: "fill",
2315			fillopacity: "fillOpacity",
2316			"fill-opacity": "fillOpacity",
2317			fillrule: "fillRule",
2318			"fill-rule": "fillRule",
2319			filter: "filter",
2320			filterres: "filterRes",
2321			filterunits: "filterUnits",
2322			floodopacity: "floodOpacity",
2323			"flood-opacity": "floodOpacity",
2324			floodcolor: "floodColor",
2325			"flood-color": "floodColor",
2326			focusable: "focusable",
2327			fontfamily: "fontFamily",
2328			"font-family": "fontFamily",
2329			fontsize: "fontSize",
2330			"font-size": "fontSize",
2331			fontsizeadjust: "fontSizeAdjust",
2332			"font-size-adjust": "fontSizeAdjust",
2333			fontstretch: "fontStretch",
2334			"font-stretch": "fontStretch",
2335			fontstyle: "fontStyle",
2336			"font-style": "fontStyle",
2337			fontvariant: "fontVariant",
2338			"font-variant": "fontVariant",
2339			fontweight: "fontWeight",
2340			"font-weight": "fontWeight",
2341			format: "format",
2342			from: "from",
2343			fx: "fx",
2344			fy: "fy",
2345			g1: "g1",
2346			g2: "g2",
2347			glyphname: "glyphName",
2348			"glyph-name": "glyphName",
2349			glyphorientationhorizontal: "glyphOrientationHorizontal",
2350			"glyph-orientation-horizontal": "glyphOrientationHorizontal",
2351			glyphorientationvertical: "glyphOrientationVertical",
2352			"glyph-orientation-vertical": "glyphOrientationVertical",
2353			glyphref: "glyphRef",
2354			gradienttransform: "gradientTransform",
2355			gradientunits: "gradientUnits",
2356			hanging: "hanging",
2357			horizadvx: "horizAdvX",
2358			"horiz-adv-x": "horizAdvX",
2359			horizoriginx: "horizOriginX",
2360			"horiz-origin-x": "horizOriginX",
2361			ideographic: "ideographic",
2362			imagerendering: "imageRendering",
2363			"image-rendering": "imageRendering",
2364			in2: "in2",
2365			in: "in",
2366			inlist: "inlist",
2367			intercept: "intercept",
2368			k1: "k1",
2369			k2: "k2",
2370			k3: "k3",
2371			k4: "k4",
2372			k: "k",
2373			kernelmatrix: "kernelMatrix",
2374			kernelunitlength: "kernelUnitLength",
2375			kerning: "kerning",
2376			keypoints: "keyPoints",
2377			keysplines: "keySplines",
2378			keytimes: "keyTimes",
2379			lengthadjust: "lengthAdjust",
2380			letterspacing: "letterSpacing",
2381			"letter-spacing": "letterSpacing",
2382			lightingcolor: "lightingColor",
2383			"lighting-color": "lightingColor",
2384			limitingconeangle: "limitingConeAngle",
2385			local: "local",
2386			markerend: "markerEnd",
2387			"marker-end": "markerEnd",
2388			markerheight: "markerHeight",
2389			markermid: "markerMid",
2390			"marker-mid": "markerMid",
2391			markerstart: "markerStart",
2392			"marker-start": "markerStart",
2393			markerunits: "markerUnits",
2394			markerwidth: "markerWidth",
2395			mask: "mask",
2396			maskcontentunits: "maskContentUnits",
2397			maskunits: "maskUnits",
2398			mathematical: "mathematical",
2399			mode: "mode",
2400			numoctaves: "numOctaves",
2401			offset: "offset",
2402			opacity: "opacity",
2403			operator: "operator",
2404			order: "order",
2405			orient: "orient",
2406			orientation: "orientation",
2407			origin: "origin",
2408			overflow: "overflow",
2409			overlineposition: "overlinePosition",
2410			"overline-position": "overlinePosition",
2411			overlinethickness: "overlineThickness",
2412			"overline-thickness": "overlineThickness",
2413			paintorder: "paintOrder",
2414			"paint-order": "paintOrder",
2415			panose1: "panose1",
2416			"panose-1": "panose1",
2417			pathlength: "pathLength",
2418			patterncontentunits: "patternContentUnits",
2419			patterntransform: "patternTransform",
2420			patternunits: "patternUnits",
2421			pointerevents: "pointerEvents",
2422			"pointer-events": "pointerEvents",
2423			points: "points",
2424			pointsatx: "pointsAtX",
2425			pointsaty: "pointsAtY",
2426			pointsatz: "pointsAtZ",
2427			prefix: "prefix",
2428			preservealpha: "preserveAlpha",
2429			preserveaspectratio: "preserveAspectRatio",
2430			primitiveunits: "primitiveUnits",
2431			property: "property",
2432			r: "r",
2433			radius: "radius",
2434			refx: "refX",
2435			refy: "refY",
2436			renderingintent: "renderingIntent",
2437			"rendering-intent": "renderingIntent",
2438			repeatcount: "repeatCount",
2439			repeatdur: "repeatDur",
2440			requiredextensions: "requiredExtensions",
2441			requiredfeatures: "requiredFeatures",
2442			resource: "resource",
2443			restart: "restart",
2444			result: "result",
2445			results: "results",
2446			rotate: "rotate",
2447			rx: "rx",
2448			ry: "ry",
2449			scale: "scale",
2450			security: "security",
2451			seed: "seed",
2452			shaperendering: "shapeRendering",
2453			"shape-rendering": "shapeRendering",
2454			slope: "slope",
2455			spacing: "spacing",
2456			specularconstant: "specularConstant",
2457			specularexponent: "specularExponent",
2458			speed: "speed",
2459			spreadmethod: "spreadMethod",
2460			startoffset: "startOffset",
2461			stddeviation: "stdDeviation",
2462			stemh: "stemh",
2463			stemv: "stemv",
2464			stitchtiles: "stitchTiles",
2465			stopcolor: "stopColor",
2466			"stop-color": "stopColor",
2467			stopopacity: "stopOpacity",
2468			"stop-opacity": "stopOpacity",
2469			strikethroughposition: "strikethroughPosition",
2470			"strikethrough-position": "strikethroughPosition",
2471			strikethroughthickness: "strikethroughThickness",
2472			"strikethrough-thickness": "strikethroughThickness",
2473			string: "string",
2474			stroke: "stroke",
2475			strokedasharray: "strokeDasharray",
2476			"stroke-dasharray": "strokeDasharray",
2477			strokedashoffset: "strokeDashoffset",
2478			"stroke-dashoffset": "strokeDashoffset",
2479			strokelinecap: "strokeLinecap",
2480			"stroke-linecap": "strokeLinecap",
2481			strokelinejoin: "strokeLinejoin",
2482			"stroke-linejoin": "strokeLinejoin",
2483			strokemiterlimit: "strokeMiterlimit",
2484			"stroke-miterlimit": "strokeMiterlimit",
2485			strokewidth: "strokeWidth",
2486			"stroke-width": "strokeWidth",
2487			strokeopacity: "strokeOpacity",
2488			"stroke-opacity": "strokeOpacity",
2489			suppresscontenteditablewarning: "suppressContentEditableWarning",
2490			suppresshydrationwarning: "suppressHydrationWarning",
2491			surfacescale: "surfaceScale",
2492			systemlanguage: "systemLanguage",
2493			tablevalues: "tableValues",
2494			targetx: "targetX",
2495			targety: "targetY",
2496			textanchor: "textAnchor",
2497			"text-anchor": "textAnchor",
2498			textdecoration: "textDecoration",
2499			"text-decoration": "textDecoration",
2500			textlength: "textLength",
2501			textrendering: "textRendering",
2502			"text-rendering": "textRendering",
2503			to: "to",
2504			transform: "transform",
2505			typeof: "typeof",
2506			u1: "u1",
2507			u2: "u2",
2508			underlineposition: "underlinePosition",
2509			"underline-position": "underlinePosition",
2510			underlinethickness: "underlineThickness",
2511			"underline-thickness": "underlineThickness",
2512			unicode: "unicode",
2513			unicodebidi: "unicodeBidi",
vendor: 4,236 bytes, lines 2514-2658
2514			"unicode-bidi": "unicodeBidi",
2515			unicoderange: "unicodeRange",
2516			"unicode-range": "unicodeRange",
2517			unitsperem: "unitsPerEm",
2518			"units-per-em": "unitsPerEm",
2519			unselectable: "unselectable",
2520			valphabetic: "vAlphabetic",
2521			"v-alphabetic": "vAlphabetic",
2522			values: "values",
2523			vectoreffect: "vectorEffect",
2524			"vector-effect": "vectorEffect",
2525			version: "version",
2526			vertadvy: "vertAdvY",
2527			"vert-adv-y": "vertAdvY",
2528			vertoriginx: "vertOriginX",
2529			"vert-origin-x": "vertOriginX",
2530			vertoriginy: "vertOriginY",
2531			"vert-origin-y": "vertOriginY",
2532			vhanging: "vHanging",
2533			"v-hanging": "vHanging",
2534			videographic: "vIdeographic",
2535			"v-ideographic": "vIdeographic",
2536			viewbox: "viewBox",
2537			viewtarget: "viewTarget",
2538			visibility: "visibility",
2539			vmathematical: "vMathematical",
2540			"v-mathematical": "vMathematical",
2541			vocab: "vocab",
2542			widths: "widths",
2543			wordspacing: "wordSpacing",
2544			"word-spacing": "wordSpacing",
2545			writingmode: "writingMode",
2546			"writing-mode": "writingMode",
2547			x1: "x1",
2548			x2: "x2",
2549			x: "x",
2550			xchannelselector: "xChannelSelector",
2551			xheight: "xHeight",
2552			"x-height": "xHeight",
2553			xlinkactuate: "xlinkActuate",
2554			"xlink:actuate": "xlinkActuate",
2555			xlinkarcrole: "xlinkArcrole",
2556			"xlink:arcrole": "xlinkArcrole",
2557			xlinkhref: "xlinkHref",
2558			"xlink:href": "xlinkHref",
2559			xlinkrole: "xlinkRole",
2560			"xlink:role": "xlinkRole",
2561			xlinkshow: "xlinkShow",
2562			"xlink:show": "xlinkShow",
2563			xlinktitle: "xlinkTitle",
2564			"xlink:title": "xlinkTitle",
2565			xlinktype: "xlinkType",
2566			"xlink:type": "xlinkType",
2567			xmlbase: "xmlBase",
2568			"xml:base": "xmlBase",
2569			xmllang: "xmlLang",
2570			"xml:lang": "xmlLang",
2571			xmlns: "xmlns",
2572			"xml:space": "xmlSpace",
2573			xmlnsxlink: "xmlnsXlink",
2574			"xmlns:xlink": "xmlnsXlink",
2575			xmlspace: "xmlSpace",
2576			y1: "y1",
2577			y2: "y2",
2578			y: "y",
2579			ychannelselector: "yChannelSelector",
2580			z: "z",
2581			zoomandpan: "zoomAndPan"
2582		};
2583		var ariaProperties = {
2584			"aria-current": 0,
2585			"aria-description": 0,
2586			"aria-details": 0,
2587			"aria-disabled": 0,
2588			"aria-hidden": 0,
2589			"aria-invalid": 0,
2590			"aria-keyshortcuts": 0,
2591			"aria-label": 0,
2592			"aria-roledescription": 0,
2593			"aria-autocomplete": 0,
2594			"aria-checked": 0,
2595			"aria-expanded": 0,
2596			"aria-haspopup": 0,
2597			"aria-level": 0,
2598			"aria-modal": 0,
2599			"aria-multiline": 0,
2600			"aria-multiselectable": 0,
2601			"aria-orientation": 0,
2602			"aria-placeholder": 0,
2603			"aria-pressed": 0,
2604			"aria-readonly": 0,
2605			"aria-required": 0,
2606			"aria-selected": 0,
2607			"aria-sort": 0,
2608			"aria-valuemax": 0,
2609			"aria-valuemin": 0,
2610			"aria-valuenow": 0,
2611			"aria-valuetext": 0,
2612			"aria-atomic": 0,
2613			"aria-busy": 0,
2614			"aria-live": 0,
2615			"aria-relevant": 0,
2616			"aria-dropeffect": 0,
2617			"aria-grabbed": 0,
2618			"aria-activedescendant": 0,
2619			"aria-colcount": 0,
2620			"aria-colindex": 0,
2621			"aria-colspan": 0,
2622			"aria-controls": 0,
2623			"aria-describedby": 0,
2624			"aria-errormessage": 0,
2625			"aria-flowto": 0,
2626			"aria-labelledby": 0,
2627			"aria-owns": 0,
2628			"aria-posinset": 0,
2629			"aria-rowcount": 0,
2630			"aria-rowindex": 0,
2631			"aria-rowspan": 0,
2632			"aria-setsize": 0
2633		};
2634		var warnedProperties = {};
2635		var rARIA = /* @__PURE__ */ new RegExp("^(aria)-[" + ATTRIBUTE_NAME_CHAR + "]*$");
2636		var rARIACamel = /* @__PURE__ */ new RegExp("^(aria)[A-Z][" + ATTRIBUTE_NAME_CHAR + "]*$");
2637		function validateProperty(tagName, name) {
2638			if (hasOwnProperty.call(warnedProperties, name) && warnedProperties[name]) return true;
2639			if (rARIACamel.test(name)) {
2640				var ariaName = "aria-" + name.slice(4).toLowerCase();
2641				var correctName = ariaProperties.hasOwnProperty(ariaName) ? ariaName : null;
2642				if (correctName == null) {
2643					error("Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.", name);
2644					warnedProperties[name] = true;
2645					return true;
2646				}
2647				if (name !== correctName) {
2648					error("Invalid ARIA attribute `%s`. Did you mean `%s`?", name, correctName);
2649					warnedProperties[name] = true;
2650					return true;
2651				}
2652			}
2653			if (rARIA.test(name)) {
2654				var lowerCasedName = name.toLowerCase();
2655				var standardName = ariaProperties.hasOwnProperty(lowerCasedName) ? lowerCasedName : null;
2656				if (standardName == null) {
2657					warnedProperties[name] = true;
2658					return false;
2659				}
2660				if (name !== standardName) {
2661					error("Unknown ARIA attribute `%s`. Did you mean `%s`?", name, standardName);
2662					warnedProperties[name] = true;
2663					return true;
2664				}
2665			}
2666			return true;
2667		}
2668		function warnInvalidARIAProps(type, props) {
2669			var invalidProps = [];
2670			for (var key in props) if (!validateProperty(type, key)) invalidProps.push(key);
2671			var unknownPropString = invalidProps.map(function(prop) {
2672				return "`" + prop + "`";
2673			}).join(", ");
2674			if (invalidProps.length === 1) error("Invalid aria prop %s on <%s> tag. For details, see https://reactjs.org/link/invalid-aria-props", unknownPropString, type);
2675			else if (invalidProps.length > 1) error("Invalid aria props %s on <%s> tag. For details, see https://reactjs.org/link/invalid-aria-props", unknownPropString, type);
2676		}
2677		function validateProperties(type, props) {
2678			if (isCustomComponent(type, props)) return;
2679			warnInvalidARIAProps(type, props);
2680		}
2681		var didWarnValueNull = false;
2682		function validateProperties$1(type, props) {
2683			if (type !== "input" && type !== "textarea" && type !== "select") return;
2684			if (props != null && props.value === null && !didWarnValueNull) {
2685				didWarnValueNull = true;
2686				if (type === "select" && props.multiple) error("`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.", type);
2687				else error("`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.", type);
2688			}
2689		}
2690		var validateProperty$1 = function() {};
2691		var warnedProperties$1 = {};
2692		var EVENT_NAME_REGEX = /^on./;
2693		var INVALID_EVENT_NAME_REGEX = /^on[^A-Z]/;
2694		var rARIA$1 = /* @__PURE__ */ new RegExp("^(aria)-[" + ATTRIBUTE_NAME_CHAR + "]*$");
2695		var rARIACamel$1 = /* @__PURE__ */ new RegExp("^(aria)[A-Z][" + ATTRIBUTE_NAME_CHAR + "]*$");
2696		validateProperty$1 = function(tagName, name, value, eventRegistry) {
2697			if (hasOwnProperty.call(warnedProperties$1, name) && warnedProperties$1[name]) return true;
2698			var lowerCasedName = name.toLowerCase();
2699			if (lowerCasedName === "onfocusin" || lowerCasedName === "onfocusout") {
2700				error("React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React.");
2701				warnedProperties$1[name] = true;
2702				return true;
2703			}
2704			if (eventRegistry != null) {
2705				var registrationNameDependencies$1 = eventRegistry.registrationNameDependencies, possibleRegistrationNames$1 = eventRegistry.possibleRegistrationNames;
2706				if (registrationNameDependencies$1.hasOwnProperty(name)) return true;
2707				var registrationName = possibleRegistrationNames$1.hasOwnProperty(lowerCasedName) ? possibleRegistrationNames$1[lowerCasedName] : null;
2708				if (registrationName != null) {
2709					error("Invalid event handler property `%s`. Did you mean `%s`?", name, registrationName);
2710					warnedProperties$1[name] = true;
2711					return true;
2712				}
2713				if (EVENT_NAME_REGEX.test(name)) {
2714					error("Unknown event handler property `%s`. It will be ignored.", name);
2715					warnedProperties$1[name] = true;
2716					return true;
2717				}
2718			} else if (EVENT_NAME_REGEX.test(name)) {
2719				if (INVALID_EVENT_NAME_REGEX.test(name)) error("Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.", name);
2720				warnedProperties$1[name] = true;
2721				return true;
2722			}
2723			if (rARIA$1.test(name) || rARIACamel$1.test(name)) return true;
2724			if (lowerCasedName === "innerhtml") {
2725				error("Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`.");
2726				warnedProperties$1[name] = true;
2727				return true;
2728			}
2729			if (lowerCasedName === "aria") {
2730				error("The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead.");
2731				warnedProperties$1[name] = true;
2732				return true;
2733			}
2734			if (lowerCasedName === "is" && value !== null && value !== void 0 && typeof value !== "string") {
2735				error("Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.", typeof value);
2736				warnedProperties$1[name] = true;
2737				return true;
2738			}
2739			if (typeof value === "number" && isNaN(value)) {
2740				error("Received NaN for the `%s` attribute. If this is expected, cast the value to a string.", name);
2741				warnedProperties$1[name] = true;
2742				return true;
2743			}
2744			var propertyInfo = getPropertyInfo(name);
2745			var isReserved = propertyInfo !== null && propertyInfo.type === RESERVED;
2746			if (possibleStandardNames.hasOwnProperty(lowerCasedName)) {
2747				var standardName = possibleStandardNames[lowerCasedName];
2748				if (standardName !== name) {
2749					error("Invalid DOM property `%s`. Did you mean `%s`?", name, standardName);
2750					warnedProperties$1[name] = true;
2751					return true;
2752				}
2753			} else if (!isReserved && name !== lowerCasedName) {
2754				error("React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.", name, lowerCasedName);
2755				warnedProperties$1[name] = true;
2756				return true;
2757			}
2758			if (typeof value === "boolean" && shouldRemoveAttributeWithWarning(name, value, propertyInfo, false)) {
2759				if (value) error("Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s=\"%s\" or %s={value.toString()}.", value, name, name, value, name);
2760				else error("Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s=\"%s\" or %s={value.toString()}.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.", value, name, name, value, name, name, name);
2761				warnedProperties$1[name] = true;
2762				return true;
2763			}
2764			if (isReserved) return true;
2765			if (shouldRemoveAttributeWithWarning(name, value, propertyInfo, false)) {
2766				warnedProperties$1[name] = true;
2767				return false;
2768			}
2769			if ((value === "false" || value === "true") && propertyInfo !== null && propertyInfo.type === BOOLEAN) {
2770				error("Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?", value, name, value === "false" ? "The browser will interpret it as a truthy value." : "Although this works, it will not work as expected if you pass the string \"false\".", name, value);
2771				warnedProperties$1[name] = true;
2772				return true;
2773			}
2774			return true;
2775		};
2776		var warnUnknownProperties = function(type, props, eventRegistry) {
2777			var unknownProps = [];
2778			for (var key in props) if (!validateProperty$1(type, key, props[key], eventRegistry)) unknownProps.push(key);
2779			var unknownPropString = unknownProps.map(function(prop) {
2780				return "`" + prop + "`";
2781			}).join(", ");
2782			if (unknownProps.length === 1) error("Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://reactjs.org/link/attribute-behavior ", unknownPropString, type);
2783			else if (unknownProps.length > 1) error("Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://reactjs.org/link/attribute-behavior ", unknownPropString, type);
2784		};
2785		function validateProperties$2(type, props, eventRegistry) {
2786			if (isCustomComponent(type, props)) return;
2787			warnUnknownProperties(type, props, eventRegistry);
2788		}
2789		var IS_EVENT_HANDLE_NON_MANAGED_NODE = 1;
2790		var IS_NON_DELEGATED = 2;
2791		var IS_CAPTURE_PHASE = 4;
2792		var SHOULD_NOT_PROCESS_POLYFILL_EVENT_PLUGINS = IS_EVENT_HANDLE_NON_MANAGED_NODE | IS_NON_DELEGATED | IS_CAPTURE_PHASE;
2793		var currentReplayingEvent = null;
2794		function setReplayingEvent(event) {
2795			if (currentReplayingEvent !== null) error("Expected currently replaying event to be null. This error is likely caused by a bug in React. Please file an issue.");
2796			currentReplayingEvent = event;
2797		}
2798		function resetReplayingEvent() {
2799			if (currentReplayingEvent === null) error("Expected currently replaying event to not be null. This error is likely caused by a bug in React. Please file an issue.");
2800			currentReplayingEvent = null;
2801		}
2802		function isReplayingEvent(event) {
2803			return event === currentReplayingEvent;
2804		}
2805		function getEventTarget(nativeEvent) {
2806			var target = nativeEvent.target || nativeEvent.srcElement || window;
2807			if (target.correspondingUseElement) target = target.correspondingUseElement;
2808			return target.nodeType === TEXT_NODE ? target.parentNode : target;
2809		}
2810		var restoreImpl = null;
2811		var restoreTarget = null;
2812		var restoreQueue = null;
2813		function restoreStateOfTarget(target) {
2814			var internalInstance = getInstanceFromNode(target);
2815			if (!internalInstance) return;
2816			if (typeof restoreImpl !== "function") throw new Error("setRestoreImplementation() needs to be called to handle a target for controlled events. This error is likely caused by a bug in React. Please file an issue.");
2817			var stateNode = internalInstance.stateNode;
2818			if (stateNode) {
2819				var _props = getFiberCurrentPropsFromNode(stateNode);
2820				restoreImpl(internalInstance.stateNode, internalInstance.type, _props);
2821			}
2822		}
2823		function setRestoreImplementation(impl) {
2824			restoreImpl = impl;
2825		}
2826		function enqueueStateRestore(target) {
2827			if (restoreTarget) if (restoreQueue) restoreQueue.push(target);
2828			else restoreQueue = [target];
2829			else restoreTarget = target;
2830		}
2831		function needsStateRestore() {
2832			return restoreTarget !== null || restoreQueue !== null;
2833		}
2834		function restoreStateIfNeeded() {
2835			if (!restoreTarget) return;
2836			var target = restoreTarget;
2837			var queuedTargets = restoreQueue;
2838			restoreTarget = null;
2839			restoreQueue = null;
2840			restoreStateOfTarget(target);
2841			if (queuedTargets) for (var i = 0; i < queuedTargets.length; i++) restoreStateOfTarget(queuedTargets[i]);
2842		}
2843		var batchedUpdatesImpl = function(fn, bookkeeping) {
2844			return fn(bookkeeping);
2845		};
2846		var flushSyncImpl = function() {};
2847		var isInsideEventHandler = false;
2848		function finishEventHandler() {
2849			if (needsStateRestore()) {
2850				flushSyncImpl();
2851				restoreStateIfNeeded();
2852			}
2853		}
2854		function batchedUpdates(fn, a, b) {
2855			if (isInsideEventHandler) return fn(a, b);
2856			isInsideEventHandler = true;
2857			try {
2858				return batchedUpdatesImpl(fn, a, b);
2859			} finally {
2860				isInsideEventHandler = false;
2861				finishEventHandler();
2862			}
2863		}
2864		function setBatchingImplementation(_batchedUpdatesImpl, _discreteUpdatesImpl, _flushSyncImpl) {
2865			batchedUpdatesImpl = _batchedUpdatesImpl;
2866			flushSyncImpl = _flushSyncImpl;
2867		}
2868		function isInteractive(tag) {
2869			return tag === "button" || tag === "input" || tag === "select" || tag === "textarea";
2870		}
2871		function shouldPreventMouseEvent(name, type, props) {
2872			switch (name) {
2873				case "onClick":
2874				case "onClickCapture":
2875				case "onDoubleClick":
2876				case "onDoubleClickCapture":
2877				case "onMouseDown":
2878				case "onMouseDownCapture":
2879				case "onMouseMove":
2880				case "onMouseMoveCapture":
2881				case "onMouseUp":
2882				case "onMouseUpCapture":
2883				case "onMouseEnter": return !!(props.disabled && isInteractive(type));
2884				default: return false;
2885			}
2886		}
2887		function getListener(inst, registrationName) {
2888			var stateNode = inst.stateNode;
2889			if (stateNode === null) return null;
2890			var props = getFiberCurrentPropsFromNode(stateNode);
2891			if (props === null) return null;
2892			var listener = props[registrationName];
2893			if (shouldPreventMouseEvent(registrationName, inst.type, props)) return null;
2894			if (listener && typeof listener !== "function") throw new Error("Expected `" + registrationName + "` listener to be a function, instead got a value of `" + typeof listener + "` type.");
2895			return listener;
2896		}
2897		var passiveBrowserEventsSupported = false;
2898		if (canUseDOM) try {
2899			var options = {};
2900			Object.defineProperty(options, "passive", { get: function() {
2901				passiveBrowserEventsSupported = true;
2902			} });
2903			window.addEventListener("test", options, options);
2904			window.removeEventListener("test", options, options);
2905		} catch (e) {
2906			passiveBrowserEventsSupported = false;
2907		}
2908		function invokeGuardedCallbackProd(name, func, context, a, b, c, d, e, f) {
2909			var funcArgs = Array.prototype.slice.call(arguments, 3);
2910			try {
2911				func.apply(context, funcArgs);
2912			} catch (error$1) {
2913				this.onError(error$1);
2914			}
2915		}
2916		var invokeGuardedCallbackImpl = invokeGuardedCallbackProd;
2917		if (typeof window !== "undefined" && typeof window.dispatchEvent === "function" && typeof document !== "undefined" && typeof document.createEvent === "function") {
2918			var fakeNode = document.createElement("react");
2919			invokeGuardedCallbackImpl = function invokeGuardedCallbackDev(name, func, context, a, b, c, d, e, f) {
2920				if (typeof document === "undefined" || document === null) throw new Error("The `document` global was defined when React was initialized, but is not defined anymore. This can happen in a test environment if a component schedules an update from an asynchronous callback, but the test has already finished running. To solve this, you can either unmount the component at the end of your test (and ensure that any asynchronous operations get canceled in `componentWillUnmount`), or you can change the test itself to be asynchronous.");
2921				var evt = document.createEvent("Event");
2922				var didCall = false;
2923				var didError = true;
2924				var windowEvent = window.event;
2925				var windowEventDescriptor = Object.getOwnPropertyDescriptor(window, "event");
2926				function restoreAfterDispatch() {
2927					fakeNode.removeEventListener(evtType, callCallback$1, false);
2928					if (typeof window.event !== "undefined" && window.hasOwnProperty("event")) window.event = windowEvent;
2929				}
2930				var funcArgs = Array.prototype.slice.call(arguments, 3);
2931				function callCallback$1() {
2932					didCall = true;
2933					restoreAfterDispatch();
2934					func.apply(context, funcArgs);
2935					didError = false;
2936				}
2937				var error$1;
2938				var didSetError = false;
2939				var isCrossOriginError = false;
2940				function handleWindowError(event) {
2941					error$1 = event.error;
2942					didSetError = true;
2943					if (error$1 === null && event.colno === 0 && event.lineno === 0) isCrossOriginError = true;
2944					if (event.defaultPrevented) {
2945						if (error$1 != null && typeof error$1 === "object") try {
2946							error$1._suppressLogging = true;
2947						} catch (inner) {}
2948					}
2949				}
2950				var evtType = "react-" + (name ? name : "invokeguardedcallback");
2951				window.addEventListener("error", handleWindowError);
2952				fakeNode.addEventListener(evtType, callCallback$1, false);
2953				evt.initEvent(evtType, false, false);
2954				fakeNode.dispatchEvent(evt);
2955				if (windowEventDescriptor) Object.defineProperty(window, "event", windowEventDescriptor);
2956				if (didCall && didError) {
2957					if (!didSetError) error$1 = /* @__PURE__ */ new Error("An error was thrown inside one of your components, but React doesn't know 
2957what it was. This is likely due to browser flakiness. React does its best to preserve the \"Pause on exceptions\" behavior of the DevTools, which requires some DEV-mode only tricks. It's possible that these don't work in your browser. Try triggering the error in production mode, or switching to a modern browser. If you suspect that this is actually an issue with React, please file an issue.");
2958					else if (isCrossOriginError) error$1 = /* @__PURE__ */ new Error("A cross-origin error was thrown. React doesn't have access to the actual error object in development. See https://reactjs.org/link/crossorigin-error for more information.");
2959					this.onError(error$1);
2960				}
2961				window.removeEventListener("error", handleWindowError);
2962				if (!didCall) {
2963					restoreAfterDispatch();
2964					return invokeGuardedCallbackProd.apply(this, arguments);
2965				}
2966			};
2967		}
2968		var invokeGuardedCallbackImpl$1 = invokeGuardedCallbackImpl;
2969		var hasError = false;
2970		var caughtError = null;
2971		var hasRethrowError = false;
2972		var rethrowError = null;
2973		var reporter = { onError: function(error$1) {
2974			hasError = true;
2975			caughtError = error$1;
2976		} };
2977		function invokeGuardedCallback(name, func, context, a, b, c, d, e, f) {
2978			hasError = false;
2979			caughtError = null;
2980			invokeGuardedCallbackImpl$1.apply(reporter, arguments);
2981		}
2982		function invokeGuardedCallbackAndCatchFirstError(name, func, context, a, b, c, d, e, f) {
2983			invokeGuardedCallback.apply(this, arguments);
2984			if (hasError) {
2985				var error$1 = clearCaughtError();
2986				if (!hasRethrowError) {
2987					hasRethrowError = true;
2988					rethrowError = error$1;
2989				}
2990			}
2991		}
2992		function rethrowCaughtError() {
2993			if (hasRethrowError) {
2994				var error$1 = rethrowError;
2995				hasRethrowError = false;
2996				rethrowError = null;
2997				throw error$1;
2998			}
2999		}
3000		function hasCaughtError() {
3001			return hasError;
3002		}
3003		function clearCaughtError() {
3004			if (hasError) {
3005				var error$1 = caughtError;
3006				hasError = false;
3007				caughtError = null;
3008				return error$1;
3009			} else throw new Error("clearCaughtError was called but no error was captured. This error is likely caused by a bug in React. Please file an issue.");
3010		}
3011		function get(key) {
3012			return key._reactInternals;
3013		}
3014		function has(key) {
3015			return key._reactInternals !== void 0;
3016		}
3017		function set(key, value) {
3018			key._reactInternals = value;
3019		}
3020		var NoFlags = 0;
3021		var PerformedWork = 1;
3022		var Placement = 2;
3023		var Update = 4;
3024		var ChildDeletion = 16;
3025		var ContentReset = 32;
3026		var Callback = 64;
3027		var DidCapture = 128;
3028		var ForceClientRender = 256;
3029		var Ref = 512;
3030		var Snapshot = 1024;
3031		var Passive = 2048;
3032		var Hydrating = 4096;
3033		var Visibility = 8192;
3034		var StoreConsistency = 16384;
3035		var LifecycleEffectMask = Passive | Update | Callback | Ref | Snapshot | StoreConsistency;
3036		var HostEffectMask = 32767;
3037		var Incomplete = 32768;
3038		var ShouldCapture = 65536;
3039		var ForceUpdateForLegacySuspense = 131072;
3040		var Forked = 1048576;
3041		var RefStatic = 2097152;
3042		var LayoutStatic = 4194304;
3043		var PassiveStatic = 8388608;
3044		var MountLayoutDev = 16777216;
3045		var MountPassiveDev = 33554432;
3046		var BeforeMutationMask = Update | Snapshot | 0;
3047		var MutationMask = Placement | Update | ChildDeletion | ContentReset | Ref | Hydrating | Visibility;
3048		var LayoutMask = Update | Callback | Ref | Visibility;
3049		var PassiveMask = Passive | ChildDeletion;
3050		var StaticMask = LayoutStatic | PassiveStatic | RefStatic;
3051		var ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;
3052		function getNearestMountedFiber(fiber) {
3053			var node = fiber;
3054			var nearestMounted = fiber;
3055			if (!fiber.alternate) {
3056				var nextNode = node;
3057				do {
3058					node = nextNode;
3059					if ((node.flags & (Placement | Hydrating)) !== NoFlags) nearestMounted = node.return;
3060					nextNode = node.return;
3061				} while (nextNode);
3062			} else while (node.return) node = node.return;
3063			if (node.tag === HostRoot) return nearestMounted;
3064			return null;
3065		}
3066		function getSuspenseInstanceFromFiber(fiber) {
3067			if (fiber.tag === SuspenseComponent) {
3068				var suspenseState = fiber.memoizedState;
3069				if (suspenseState === null) {
3070					var current$1 = fiber.alternate;
3071					if (current$1 !== null) suspenseState = current$1.memoizedState;
3072				}
3073				if (suspenseState !== null) return suspenseState.dehydrated;
3074			}
3075			return null;
3076		}
3077		function getContainerFromFiber(fiber) {
3078			return fiber.tag === HostRoot ? fiber.stateNode.containerInfo : null;
3079		}
3080		function isFiberMounted(fiber) {
3081			return getNearestMountedFiber(fiber) === fiber;
3082		}
3083		function isMounted(component) {
3084			var owner = ReactCurrentOwner.current;
3085			if (owner !== null && owner.tag === ClassComponent) {
3086				var ownerFiber = owner;
3087				var instance = ownerFiber.stateNode;
3088				if (!instance._warnedAboutRefsInRender) error("%s is accessing isMounted inside its render() function. render() should be a pure function of props and state. It should never access something that requires stale data from the previous render, such as refs. Move this logic to componentDidMount and componentDidUpdate instead.", getComponentNameFromFiber(ownerFiber) || "A component");
3089				instance._warnedAboutRefsInRender = true;
3090			}
3091			var fiber = get(component);
3092			if (!fiber) return false;
3093			return getNearestMountedFiber(fiber) === fiber;
3094		}
3095		function assertIsMounted(fiber) {
3096			if (getNearestMountedFiber(fiber) !== fiber) throw new Error("Unable to find node on an unmounted component.");
3097		}
3098		function findCurrentFiberUsingSlowPath(fiber) {
3099			var alternate = fiber.alternate;
3100			if (!alternate) {
3101				var nearestMounted = getNearestMountedFiber(fiber);
3102				if (nearestMounted === null) throw new Error("Unable to find node on an unmounted component.");
3103				if (nearestMounted !== fiber) return null;
3104				return fiber;
3105			}
3106			var a = fiber;
3107			var b = alternate;
3108			while (true) {
3109				var parentA = a.return;
3110				if (parentA === null) break;
3111				var parentB = parentA.alternate;
3112				if (parentB === null) {
3113					var nextParent = parentA.return;
3114					if (nextParent !== null) {
3115						a = b = nextParent;
3116						continue;
3117					}
3118					break;
3119				}
3120				if (parentA.child === parentB.child) {
3121					var child = parentA.child;
3122					while (child) {
3123						if (child === a) {
3124							assertIsMounted(parentA);
3125							return fiber;
3126						}
3127						if (child === b) {
3128							assertIsMounted(parentA);
3129							return alternate;
3130						}
3131						child = child.sibling;
3132					}
3133					throw new Error("Unable to find node on an unmounted component.");
3134				}
3135				if (a.return !== b.return) {
3136					a = parentA;
3137					b = parentB;
3138				} else {
3139					var didFindChild = false;
3140					var _child = parentA.child;
3141					while (_child) {
3142						if (_child === a) {
3143							didFindChild = true;
3144							a = parentA;
3145							b = parentB;
3146							break;
3147						}
3148						if (_child === b) {
3149							didFindChild = true;
3150							b = parentA;
3151							a = parentB;
3152							break;
3153						}
3154						_child = _child.sibling;
3155					}
3156					if (!didFindChild) {
3157						_child = parentB.child;
3158						while (_child) {
3159							if (_child === a) {
3160								didFindChild = true;
3161								a = parentB;
3162								b = parentA;
3163								break;
3164							}
3165							if (_child === b) {
3166								didFindChild = true;
3167								b = parentB;
3168								a = parentA;
3169								break;
3170							}
3171							_child = _child.sibling;
3172						}
3173						if (!didFindChild) throw new Error("Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.");
3174					}
3175				}
3176				if (a.alternate !== b) throw new Error("Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.");
3177			}
3178			if (a.tag !== HostRoot) throw new Error("Unable to find node on an unmounted component.");
3179			if (a.stateNode.current === a) return fiber;
3180			return alternate;
3181		}
3182		function findCurrentHostFiber(parent) {
3183			var currentParent = findCurrentFiberUsingSlowPath(parent);
3184			return currentParent !== null ? findCurrentHostFiberImpl(currentParent) : null;
3185		}
3186		function findCurrentHostFiberImpl(node) {
3187			if (node.tag === HostComponent || node.tag === HostText) return node;
3188			var child = node.child;
3189			while (child !== null) {
3190				var match = findCurrentHostFiberImpl(child);
3191				if (match !== null) return match;
3192				child = child.sibling;
3193			}
3194			return null;
3195		}
3196		function findCurrentHostFiberWithNoPortals(parent) {
3197			var currentParent = findCurrentFiberUsingSlowPath(parent);
3198			return currentParent !== null ? findCurrentHostFiberWithNoPortalsImpl(currentParent) : null;
3199		}
3200		function findCurrentHostFiberWithNoPortalsImpl(node) {
3201			if (node.tag === HostComponent || node.tag === HostText) return node;
3202			var child = node.child;
3203			while (child !== null) {
3204				if (child.tag !== HostPortal) {
3205					var match = findCurrentHostFiberWithNoPortalsImpl(child);
3206					if (match !== null) return match;
3207				}
3208				child = child.sibling;
3209			}
3210			return null;
3211		}
3212		var scheduleCallback = Scheduler.unstable_scheduleCallback;
3213		var cancelCallback = Scheduler.unstable_cancelCallback;
3214		var shouldYield = Scheduler.unstable_shouldYield;
3215		var requestPaint = Scheduler.unstable_requestPaint;
3216		var now = Scheduler.unstable_now;
3217		var getCurrentPriorityLevel = Scheduler.unstable_getCurrentPriorityLevel;
3218		var ImmediatePriority = Scheduler.unstable_ImmediatePriority;
3219		var UserBlockingPriority = Scheduler.unstable_UserBlockingPriority;
3220		var NormalPriority = Scheduler.unstable_NormalPriority;
3221		var LowPriority = Scheduler.unstable_LowPriority;
3222		var IdlePriority = Scheduler.unstable_IdlePriority;
3223		var unstable_yieldValue = Scheduler.unstable_yieldValue;
3224		var unstable_setDisableYieldValue = Scheduler.unstable_setDisableYieldValue;
3225		var rendererID = null;
3226		var injectedHook = null;
3227		var injectedProfilingHooks = null;
3228		var hasLoggedError = false;
3229		var isDevToolsPresent = typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined";
3230		function injectInternals(internals) {
3231			if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === "undefined") return false;
3232			var hook = __REACT_DEVTOOLS_GLOBAL_HOOK__;
3233			if (hook.isDisabled) return true;
3234			if (!hook.supportsFiber) {
3235				error("The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://reactjs.org/link/react-devtools");
3236				return true;
3237			}
3238			try {
3239				if (enableSchedulingProfiler) internals = assign({}, internals, {
3240					getLaneLabelMap,
3241					injectProfilingHooks
3242				});
3243				rendererID = hook.inject(internals);
3244				injectedHook = hook;
3245			} catch (err) {
3246				error("React instrumentation encountered an error: %s.", err);
3247			}
3248			if (hook.checkDCE) return true;
3249			else return false;
3250		}
3251		function onScheduleRoot(root$1, children) {
3252			if (injectedHook && typeof injectedHook.onScheduleFiberRoot === "function") try {
3253				injectedHook.onScheduleFiberRoot(rendererID, root$1, children);
3254			} catch (err) {
3255				if (!hasLoggedError) {
3256					hasLoggedError = true;
3257					error("React instrumentation encountered an error: %s", err);
3258				}
3259			}
3260		}
3261		function onCommitRoot(root$1, eventPriority) {
3262			if (injectedHook && typeof injectedHook.onCommitFiberRoot === "function") try {
3263				var didError = (root$1.current.flags & DidCapture) === DidCapture;
3264				if (enableProfilerTimer) {
3265					var schedulerPriority;
3266					switch (eventPriority) {
3267						case DiscreteEventPriority:
3268							schedulerPriority = ImmediatePriority;
3269							break;
3270						case ContinuousEventPriority:
3271							schedulerPriority = UserBlockingPriority;
3272							break;
3273						case DefaultEventPriority:
3274							schedulerPriority = NormalPriority;
3275							break;
3276						case IdleEventPriority:
3277							schedulerPriority = IdlePriority;
3278							break;
3279						default:
3280							schedulerPriority = NormalPriority;
3281							break;
3282					}
3283					injectedHook.onCommitFiberRoot(rendererID, root$1, schedulerPriority, didError);
3284				} else injectedHook.onCommitFiberRoot(rendererID, root$1, void 0, didError);
3285			} catch (err) {
3286				if (!hasLoggedError) {
3287					hasLoggedError = true;
3288					error("React instrumentation encountered an error: %s", err);
3289				}
3290			}
3291		}
3292		function onPostCommitRoot(root$1) {
3293			if (injectedHook && typeof injectedHook.onPostCommitFiberRoot === "function") try {
3294				injectedHook.onPostCommitFiberRoot(rendererID, root$1);
3295			} catch (err) {
3296				if (!hasLoggedError) {
3297					hasLoggedError = true;
3298					error("React instrumentation encountered an error: %s", err);
3299				}
3300			}
3301		}
3302		function onCommitUnmount(fiber) {
3303			if (injectedHook && typeof injectedHook.onCommitFiberUnmount === "function") try {
3304				injectedHook.onCommitFiberUnmount(rendererID, fiber);
3305			} catch (err) {
3306				if (!hasLoggedError) {
3307					hasLoggedError = true;
3308					error("React instrumentation encountered an error: %s", err);
3309				}
3310			}
3311		}
3312		function setIsStrictModeForDevtools(newIsStrictMode) {
3313			if (typeof unstable_yieldValue === "function") {
3314				unstable_setDisableYieldValue(newIsStrictMode);
3315				setSuppressWarning(newIsStrictMode);
3316			}
3317			if (injectedHook && typeof injectedHook.setStrictMode === "function") try {
3318				injectedHook.setStrictMode(rendererID, newIsStrictMode);
3319			} catch (err) {
3320				if (!hasLoggedError) {
3321					hasLoggedError = true;
3322					error("React instrumentation encountered an error: %s", err);
3323				}
3324			}
3325		}
3326		function injectProfilingHooks(profilingHooks) {
3327			injectedProfilingHooks = profilingHooks;
3328		}
3329		function getLaneLabelMap() {
3330			var map = /* @__PURE__ */ new Map();
3331			var lane = 1;
3332			for (var index$1 = 0; index$1 < TotalLanes; index$1++) {
3333				var label = getLabelForLane(lane);
3334				map.set(lane, label);
3335				lane *= 2;
3336			}
3337			return map;
3338		}
3339		function markCommitStarted(lanes) {
3340			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markCommitStarted === "function") injectedProfilingHooks.markCommitStarted(lanes);
3341		}
3342		function markCommitStopped() {
3343			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markCommitStopped === "function") injectedProfilingHooks.markCommitStopped();
3344		}
3345		function markComponentRenderStarted(fiber) {
3346			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentRenderStarted === "function") injectedProfilingHooks.markComponentRenderStarted(fiber);
3347		}
3348		function markComponentRenderStopped() {
3349			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentRenderStopped === "function") injectedProfilingHooks.markComponentRenderStopped();
3350		}
3351		function markComponentPassiveEffectMountStarted(fiber) {
3352			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectMountStarted === "function") injectedProfilingHooks.markComponentPassiveEffectMountStarted(fiber);
3353		}
3354		function markComponentPassiveEffectMountStopped() {
3355			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectMountStopped === "function") injectedProfilingHooks.markComponentPassiveEffectMountStopped();
3356		}
3357		function markComponentPassiveEffectUnmountStarted(fiber) {
3358			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectUnmountStarted === "function") injectedProfilingHooks.markComponentPassiveEffectUnmountStarted(fiber);
3359		}
3360		function markComponentPassiveEffectUnmountStopped() {
3361			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectUnmountStopped === "function") injectedProfilingHooks.markComponentPassiveEffectUnmountStopped();
3362		}
3363		function markComponentLayoutEffectMountStarted(fiber) {
3364			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectMountStarted === "function") injectedProfilingHooks.markComponentLayoutEffectMountStarted(fiber);
3365		}
3366		function markComponentLayoutEffectMountStopped() {
3367			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectMountStopped === "function") injectedProfilingHooks.markComponentLayoutEffectMountStopped();
3368		}
3369		function markComponentLayoutEffectUnmountStarted(fiber) {
3370			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectUnmountStarted === "function") injectedProfilingHooks.markComponentLayoutEffectUnmountStarted(fiber);
3371		}
3372		function markComponentLayoutEffectUnmountStopped() {
3373			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectUnmountStopped === "function") injectedProfilingHooks.markComponentLayoutEffectUnmountStopped();
3374		}
3375		function markComponentErrored(fiber, thrownValue, lanes) {
3376			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentErrored === "function") injectedProfilingHooks.markComponentErrored(fiber, thrownValue, lanes);
3377		}
3378		function markComponentSuspended(fiber, wakeable, lanes) {
3379			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentSuspended === "function") injectedProfilingHooks.markComponentSuspended(fiber, wakeable, lanes);
3380		}
3381		function markLayoutEffectsStarted(lanes) {
3382			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markLayoutEffectsStarted === "function") injectedProfilingHooks.markLayoutEffectsStarted(lanes);
3383		}
3384		function markLayoutEffectsStopped() {
3385			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markLayoutEffectsStopped === "function") injectedProfilingHooks.markLayoutEffectsStopped();
3386		}
3387		function markPassiveEffectsStarted(lanes) {
3388			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markPassiveEffectsStarted === "function") injectedProfilingHooks.markPassiveEffectsStarted(lanes);
3389		}
3390		function markPassiveEffectsStopped() {
3391			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markPassiveEffectsStopped === "function") injectedProfilingHooks.markPassiveEffectsStopped();
3392		}
3393		function markRenderStarted(lanes) {
3394			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderStarted === "function") injectedProfilingHooks.markRenderStarted(lanes);
3395		}
3396		function markRenderYielded() {
3397			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderYielded === "function") injectedProfilingHooks.markRenderYielded();
3398		}
3399		function markRenderStopped() {
3400			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderStopped === "function") injectedProfilingHooks.markRenderStopped();
3401		}
3402		function markRenderScheduled(lane) {
3403			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderScheduled === "function") injectedProfilingHooks.markRenderScheduled(lane);
3404		}
3405		function markForceUpdateScheduled(fiber, lane) {
3406			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markForceUpdateScheduled === "function") injectedProfilingHooks.markForceUpdateScheduled(fiber, lane);
3407		}
3408		function markStateUpdateScheduled(fiber, lane) {
3409			if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markStateUpdateScheduled === "function") injectedProfilingHooks.markStateUpdateScheduled(fiber, lane);
3410		}
3411		var NoMode = 0;
3412		var ConcurrentMode = 1;
3413		var ProfileMode = 2;
3414		var StrictLegacyMode = 8;
3415		var StrictEffectsMode = 16;
3416		var clz32 = Math.clz32 ? Math.clz32 : clz32Fallback;
3417		var log = Math.log;
3418		var LN2 = Math.LN2;
3419		function clz32Fallback(x) {
3420			var asUint = x >>> 0;
3421			if (asUint === 0) return 32;
3422			return 31 - (log(asUint) / LN2 | 0) | 0;
3423		}
3424		var TotalLanes = 31;
3425		var NoLanes = 0;
3426		var NoLane = 0;
3427		var SyncLane = 1;
3428		var InputContinuousHydrationLane = 2;
3429		var InputContinuousLane = 4;
3430		var DefaultHydrationLane = 8;
3431		var DefaultLane = 16;
3432		var TransitionHydrationLane = 32;
3433		var TransitionLanes = 4194240;
3434		var TransitionLane1 = 64;
3435		var TransitionLane2 = 128;
3436		var TransitionLane3 = 256;
3437		var TransitionLane4 = 512;
3438		var TransitionLane5 = 1024;
3439		var TransitionLane6 = 2048;
3440		var TransitionLane7 = 4096;
3441		var TransitionLane8 = 8192;
3442		var TransitionLane9 = 16384;
3443		var TransitionLane10 = 32768;
3444		var TransitionLane11 = 65536;
3445		var TransitionLane12 = 131072;
3446		var TransitionLane13 = 262144;
3447		var TransitionLane14 = 524288;
3448		var TransitionLane15 = 1048576;
3449		var TransitionLane16 = 2097152;
3450		var RetryLanes = 130023424;
3451		var RetryLane1 = 4194304;
3452		var RetryLane2 = 8388608;
3453		var RetryLane3 = 16777216;
3454		var RetryLane4 = 33554432;
3455		var RetryLane5 = 67108864;
3456		var SomeRetryLane = RetryLane1;
3457		var SelectiveHydrationLane = 134217728;
3458		var NonIdleLanes = 268435455;
3459		var IdleHydrationLane = 268435456;
3460		var IdleLane = 536870912;
3461		var OffscreenLane = 1073741824;
3462		function getLabelForLane(lane) {
3463			if (lane & SyncLane) return "Sync";
3464			if (lane & InputContinuousHydrationLane) return "InputContinuousHydration";
3465			if (lane & InputContinuousLane) return "InputContinuous";
3466			if (lane & DefaultHydrationLane) return "DefaultHydration";
3467			if (lane & DefaultLane) return "Default";
3468			if (lane & TransitionHydrationLane) return "TransitionHydration";
3469			if (lane & TransitionLanes) return "Transition";
3470			if (lane & RetryLanes) return "Retry";
3471			if (lane & SelectiveHydrationLane) return "SelectiveHydration";
3472			if (lane & IdleHydrationLane) return "IdleHydration";
3473			if (lane & IdleLane) return "Idle";
3474			if (lane & OffscreenLane) return "Offscreen";
3475		}
3476		var NoTimestamp = -1;
3477		var nextTransitionLane = TransitionLane1;
3478		var nextRetryLane = RetryLane1;
3479		function getHighestPriorityLanes(lanes) {
3480			switch (getHighestPriorityLane(lanes)) {
3481				case SyncLane: return SyncLane;
3482				case InputContinuousHydrationLane: return InputContinuousHydrationLane;
3483				case InputContinuousLane: return InputContinuousLane;
3484				case DefaultHydrationLane: return DefaultHydrationLane;
3485				case DefaultLane: return DefaultLane;
3486				case TransitionHydrationLane: return TransitionHydrationLane;
3487				case TransitionLane1:
3488				case TransitionLane2:
3489				case TransitionLane3:
3490				case TransitionLane4:
3491				case TransitionLane5:
3492				case TransitionLane6:
3493				case TransitionLane7:
3494				case TransitionLane8:
3495				case TransitionLane9:
3496				case TransitionLane10:
3497				case TransitionLane11:
3498				case TransitionLane12:
3499				case TransitionLane13:
3500				case TransitionLane14:
3501				case TransitionLane15:
3502				case TransitionLane16: return lanes & TransitionLanes;
3503				case RetryLane1:
3504				case RetryLane2:
3505				case RetryLane3:
3506				case RetryLane4:
3507				case RetryLane5: return lanes & RetryLanes;
3508				case SelectiveHydrationLane: return SelectiveHydrationLane;
3509				case IdleHydrationLane: return IdleHydrationLane;
3510				case IdleLane: return IdleLane;
3511				case OffscreenLane: return OffscreenLane;
3512				default:
3513					error("Should have found matching lanes. This is a bug in React.");
3514					return lanes;
3515			}
3516		}
3517		function getNextLanes(root$1, wipLanes) {
3518			var pendingLanes = root$1.pendingLanes;
3519			if (pendingLanes === NoLanes) return NoLanes;
3520			var nextLanes = NoLanes;
3521			var suspendedLanes = root$1.suspendedLanes;
3522			var pingedLanes = root$1.pingedLanes;
3523			var nonIdlePendingLanes = pendingLanes & NonIdleLanes;
3524			if (nonIdlePendingLanes !== NoLanes) {
3525				var nonIdleUnblockedLanes = nonIdlePendingLanes & ~suspendedLanes;
3526				if (nonIdleUnblockedLanes !== NoLanes) nextLanes = getHighestPriorityLanes(nonIdleUnblockedLanes);
3527				else {
3528					var nonIdlePingedLanes = nonIdlePendingLanes & pingedLanes;
3529					if (nonIdlePingedLanes !== NoLanes) nextLanes = getHighestPriorityLanes(nonIdlePingedLanes);
3530				}
3531			} else {
3532				var unblockedLanes = pendingLanes & ~suspendedLanes;
3533				if (unblockedLanes !== NoLanes) nextLanes = getHighestPriorityLanes(unblockedLanes);
3534				else if (pingedLanes !== NoLanes) nextLanes = getHighestPriorityLanes(pingedLanes);
3535			}
3536			if (nextLanes === NoLanes) return NoLanes;
3537			if (wipLanes !== NoLanes && wipLanes !== nextLanes && (wipLanes & suspendedLanes) === NoLanes) {
3538				var nextLane = getHighestPriorityLane(nextLanes);
3539				var wipLane = getHighestPriorityLane(wipLanes);
3540				if (nextLane >= wipLane || nextLane === DefaultLane && (wipLane & TransitionLanes) !== NoLanes) return wipLanes;
3541			}
3542			if ((nextLanes & InputContinuousLane) !== NoLanes) nextLanes |= pendingLanes & DefaultLane;
3543			var entangledLanes = root$1.entangledLanes;
3544			if (entangledLanes !== NoLanes) {
3545				var entanglements = root$1.entanglements;
3546				var lanes = nextLanes & entangledLanes;
3547				while (lanes > 0) {
3548					var index$1 = pickArbitraryLaneIndex(lanes);
3549					var lane = 1 << index$1;
3550					nextLanes |= entanglements[index$1];
3551					lanes &= ~lane;
3552				}
3553			}
3554			return nextLanes;
3555		}
3556		function getMostRecentEventTime(root$1, lanes) {
3557			var eventTimes = root$1.eventTimes;
3558			var mostRecentEventTime = NoTimestamp;
3559			while (lanes > 0) {
3560				var index$1 = pickArbitraryLaneIndex(lanes);
3561				var lane = 1 << index$1;
3562				var eventTime = eventTimes[index$1];
3563				if (eventTime > mostRecentEventTime) mostRecentEventTime = eventTime;
3564				lanes &= ~lane;
3565			}
3566			return mostRecentEventTime;
3567		}
3568		function computeExpirationTime(lane, currentTime) {
3569			switch (lane) {
3570				case SyncLane:
3571				case InputContinuousHydrationLane:
3572				case InputContinuousLane: return currentTime + 250;
3573				case DefaultHydrationLane:
3574				case DefaultLane:
3575				case TransitionHydrationLane:
3576				case TransitionLane1:
3577				case TransitionLane2:
3578				case TransitionLane3:
3579				case TransitionLane4:
3580				case TransitionLane5:
3581				case TransitionLane6:
3582				case TransitionLane7:
3583				case TransitionLane8:
3584				case TransitionLane9:
3585				case TransitionLane10:
3586				case TransitionLane11:
3587				case TransitionLane12:
3588				case TransitionLane13:
3589				case TransitionLane14:
3590				case TransitionLane15:
3591				case TransitionLane16: return currentTime + 5e3;
3592				case RetryLane1:
3593				case RetryLane2:
3594				case RetryLane3:
3595				case RetryLane4:
3596				case RetryLane5: return NoTimestamp;
3597				case SelectiveHydrationLane:
3598				case IdleHydrationLane:
3599				case IdleLane:
3600				case OffscreenLane: return NoTimestamp;
3601				default:
3602					error("Should have found matching lanes. This is a bug in React.");
3603					return NoTimestamp;
3604			}
3605		}
3606		function markStarvedLanesAsExpired(root$1, currentTime) {
3607			var pendingLanes = root$1.pendingLanes;
3608			var suspendedLanes = root$1.suspendedLanes;
3609			var pingedLanes = root$1.pingedLanes;
3610			var expirationTimes = root$1.expirationTimes;
3611			var lanes = pendingLanes;
3612			while (lanes > 0) {
3613				var index$1 = pickArbitraryLaneIndex(lanes);
3614				var lane = 1 << index$1;
3615				var expirationTime = expirationTimes[index$1];
3616				if (expirationTime === NoTimestamp) {
3617					if ((lane & suspendedLanes) === NoLanes || (lane & pingedLanes) !== NoLanes) expirationTimes[index$1] = computeExpirationTime(lane, currentTime);
3618				} else if (expirationTime <= currentTime) root$1.expiredLanes |= lane;
3619				lanes &= ~lane;
3620			}
3621		}
3622		function getHighestPriorityPendingLanes(root$1) {
3623			return getHighestPriorityLanes(root$1.pendingLanes);
3624		}
3625		function getLanesToRetrySynchronouslyOnError(root$1) {
3626			var everythingButOffscreen = root$1.pendingLanes & ~OffscreenLane;
3627			if (everythingButOffscreen !== NoLanes) return everythingButOffscreen;
3628			if (everythingButOffscreen & OffscreenLane) return OffscreenLane;
3629			return NoLanes;
3630		}
3631		function includesSyncLane(lanes) {
3632			return (lanes & SyncLane) !== NoLanes;
3633		}
3634		function includesNonIdleWork(lanes) {
3635			return (lanes & NonIdleLanes) !== NoLanes;
3636		}
3637		function includesOnlyRetries(lanes) {
3638			return (lanes & RetryLanes) === lanes;
3639		}
3640		function includesOnlyNonUrgentLanes(lanes) {
3641			return (lanes & (SyncLane | InputContinuousLane | DefaultLane)) === NoLanes;
3642		}
3643		function includesOnlyTransitions(lanes) {
3644			return (lanes & TransitionLanes) === lanes;
3645		}
3646		function includesBlockingLane(root$1, lanes) {
3647			return (lanes & (InputContinuousHydrationLane | InputContinuousLane | DefaultHydrationLane | DefaultLane)) !== NoLanes;
3648		}
3649		function includesExpiredLane(root$1, lanes) {
3650			return (lanes & root$1.expiredLanes) !== NoLanes;
3651		}
3652		function isTransitionLane(lane) {
3653			return (lane & TransitionLanes) !== NoLanes;
3654		}
3655		function claimNextTransitionLane() {
3656			var lane = nextTransitionLane;
3657			nextTransitionLane <<= 1;
3658			if ((nextTransitionLane & TransitionLanes) === NoLanes) nextTransitionLane = TransitionLane1;
3659			return lane;
3660		}
3661		function claimNextRetryLane() {
3662			var lane = nextRetryLane;
3663			nextRetryLane <<= 1;
3664			if ((nextRetryLane & RetryLanes) === NoLanes) nextRetryLane = RetryLane1;
3665			return lane;
3666		}
3667		function getHighestPriorityLane(lanes) {
3668			return lanes & -lanes;
3669		}
3670		function pickArbitraryLane(lanes) {
3671			return getHighestPriorityLane(lanes);
3672		}
vendor: 4,122 bytes, lines 3673-3808
3673		function pickArbitraryLaneIndex(lanes) {
3674			return 31 - clz32(lanes);
3675		}
3676		function laneToIndex(lane) {
3677			return pickArbitraryLaneIndex(lane);
3678		}
3679		function includesSomeLane(a, b) {
3680			return (a & b) !== NoLanes;
3681		}
3682		function isSubsetOfLanes(set$1, subset) {
3683			return (set$1 & subset) === subset;
3684		}
3685		function mergeLanes(a, b) {
3686			return a | b;
3687		}
3688		function removeLanes(set$1, subset) {
3689			return set$1 & ~subset;
3690		}
3691		function intersectLanes(a, b) {
3692			return a & b;
3693		}
3694		function laneToLanes(lane) {
3695			return lane;
3696		}
3697		function higherPriorityLane(a, b) {
3698			return a !== NoLane && a < b ? a : b;
3699		}
3700		function createLaneMap(initial) {
3701			var laneMap = [];
3702			for (var i = 0; i < TotalLanes; i++) laneMap.push(initial);
3703			return laneMap;
3704		}
3705		function markRootUpdated(root$1, updateLane, eventTime) {
3706			root$1.pendingLanes |= updateLane;
3707			if (updateLane !== IdleLane) {
3708				root$1.suspendedLanes = NoLanes;
3709				root$1.pingedLanes = NoLanes;
3710			}
3711			var eventTimes = root$1.eventTimes;
3712			var index$1 = laneToIndex(updateLane);
3713			eventTimes[index$1] = eventTime;
3714		}
3715		function markRootSuspended(root$1, suspendedLanes) {
3716			root$1.suspendedLanes |= suspendedLanes;
3717			root$1.pingedLanes &= ~suspendedLanes;
3718			var expirationTimes = root$1.expirationTimes;
3719			var lanes = suspendedLanes;
3720			while (lanes > 0) {
3721				var index$1 = pickArbitraryLaneIndex(lanes);
3722				var lane = 1 << index$1;
3723				expirationTimes[index$1] = NoTimestamp;
3724				lanes &= ~lane;
3725			}
3726		}
3727		function markRootPinged(root$1, pingedLanes, eventTime) {
3728			root$1.pingedLanes |= root$1.suspendedLanes & pingedLanes;
3729		}
3730		function markRootFinished(root$1, remainingLanes) {
3731			var noLongerPendingLanes = root$1.pendingLanes & ~remainingLanes;
3732			root$1.pendingLanes = remainingLanes;
3733			root$1.suspendedLanes = NoLanes;
3734			root$1.pingedLanes = NoLanes;
3735			root$1.expiredLanes &= remainingLanes;
3736			root$1.mutableReadLanes &= remainingLanes;
3737			root$1.entangledLanes &= remainingLanes;
3738			var entanglements = root$1.entanglements;
3739			var eventTimes = root$1.eventTimes;
3740			var expirationTimes = root$1.expirationTimes;
3741			var lanes = noLongerPendingLanes;
3742			while (lanes > 0) {
3743				var index$1 = pickArbitraryLaneIndex(lanes);
3744				var lane = 1 << index$1;
3745				entanglements[index$1] = NoLanes;
3746				eventTimes[index$1] = NoTimestamp;
3747				expirationTimes[index$1] = NoTimestamp;
3748				lanes &= ~lane;
3749			}
3750		}
3751		function markRootEntangled(root$1, entangledLanes) {
3752			var rootEntangledLanes = root$1.entangledLanes |= entangledLanes;
3753			var entanglements = root$1.entanglements;
3754			var lanes = rootEntangledLanes;
3755			while (lanes) {
3756				var index$1 = pickArbitraryLaneIndex(lanes);
3757				var lane = 1 << index$1;
3758				if (lane & entangledLanes | entanglements[index$1] & entangledLanes) entanglements[index$1] |= entangledLanes;
3759				lanes &= ~lane;
3760			}
3761		}
3762		function getBumpedLaneForHydration(root$1, renderLanes$1) {
3763			var renderLane = getHighestPriorityLane(renderLanes$1);
3764			var lane;
3765			switch (renderLane) {
3766				case InputContinuousLane:
3767					lane = InputContinuousHydrationLane;
3768					break;
3769				case DefaultLane:
3770					lane = DefaultHydrationLane;
3771					break;
3772				case TransitionLane1:
3773				case TransitionLane2:
3774				case TransitionLane3:
3775				case TransitionLane4:
3776				case TransitionLane5:
3777				case TransitionLane6:
3778				case TransitionLane7:
3779				case TransitionLane8:
3780				case TransitionLane9:
3781				case TransitionLane10:
3782				case TransitionLane11:
3783				case TransitionLane12:
3784				case TransitionLane13:
3785				case TransitionLane14:
3786				case TransitionLane15:
3787				case TransitionLane16:
3788				case RetryLane1:
3789				case RetryLane2:
3790				case RetryLane3:
3791				case RetryLane4:
3792				case RetryLane5:
3793					lane = TransitionHydrationLane;
3794					break;
3795				case IdleLane:
3796					lane = IdleHydrationLane;
3797					break;
3798				default:
3799					lane = NoLane;
3800					break;
3801			}
3802			if ((lane & (root$1.suspendedLanes | renderLanes$1)) !== NoLane) return NoLane;
3803			return lane;
3804		}
3805		function addFiberToLanesMap(root$1, fiber, lanes) {
3806			if (!isDevToolsPresent) return;
3807			var pendingUpdatersLaneMap = root$1.pendingUpdatersLaneMap;
3808			while (lanes > 0) {
3809				var index$1 = laneToIndex(lanes);
3810				var lane = 1 << index$1;
3811				pendingUpdatersLaneMap[index$1].add(fiber);
3812				lanes &= ~lane;
3813			}
3814		}
3815		function movePendingFibersToMemoized(root$1, lanes) {
3816			if (!isDevToolsPresent) return;
3817			var pendingUpdatersLaneMap = root$1.pendingUpdatersLaneMap;
3818			var memoizedUpdaters = root$1.memoizedUpdaters;
3819			while (lanes > 0) {
3820				var index$1 = laneToIndex(lanes);
3821				var lane = 1 << index$1;
3822				var updaters = pendingUpdatersLaneMap[index$1];
3823				if (updaters.size > 0) {
3824					updaters.forEach(function(fiber) {
3825						var alternate = fiber.alternate;
3826						if (alternate === null || !memoizedUpdaters.has(alternate)) memoizedUpdaters.add(fiber);
3827					});
3828					updaters.clear();
3829				}
3830				lanes &= ~lane;
3831			}
3832		}
3833		function getTransitionsForLanes(root$1, lanes) {
3834			return null;
3835		}
3836		var DiscreteEventPriority = SyncLane;
3837		var ContinuousEventPriority = InputContinuousLane;
3838		var DefaultEventPriority = DefaultLane;
3839		var IdleEventPriority = IdleLane;
3840		var currentUpdatePriority = NoLane;
3841		function getCurrentUpdatePriority() {
3842			return currentUpdatePriority;
3843		}
3844		function setCurrentUpdatePriority(newPriority) {
3845			currentUpdatePriority = newPriority;
3846		}
3847		function runWithPriority(priority, fn) {
3848			var previousPriority = currentUpdatePriority;
3849			try {
3850				currentUpdatePriority = priority;
3851				return fn();
3852			} finally {
3853				currentUpdatePriority = previousPriority;
3854			}
3855		}
3856		function higherEventPriority(a, b) {
3857			return a !== 0 && a < b ? a : b;
3858		}
3859		function lowerEventPriority(a, b) {
3860			return a === 0 || a > b ? a : b;
3861		}
3862		function isHigherEventPriority(a, b) {
3863			return a !== 0 && a < b;
3864		}
3865		function lanesToEventPriority(lanes) {
3866			var lane = getHighestPriorityLane(lanes);
3867			if (!isHigherEventPriority(DiscreteEventPriority, lane)) return DiscreteEventPriority;
3868			if (!isHigherEventPriority(ContinuousEventPriority, lane)) return ContinuousEventPriority;
3869			if (includesNonIdleWork(lane)) return DefaultEventPriority;
3870			return IdleEventPriority;
3871		}
3872		function isRootDehydrated(root$1) {
3873			return root$1.current.memoizedState.isDehydrated;
3874		}
3875		var _attemptSynchronousHydration;
3876		function setAttemptSynchronousHydration(fn) {
3877			_attemptSynchronousHydration = fn;
3878		}
3879		function attemptSynchronousHydration(fiber) {
3880			_attemptSynchronousHydration(fiber);
3881		}
3882		var attemptContinuousHydration;
3883		function setAttemptContinuousHydration(fn) {
3884			attemptContinuousHydration = fn;
3885		}
3886		var attemptHydrationAtCurrentPriority;
3887		function setAttemptHydrationAtCurrentPriority(fn) {
3888			attemptHydrationAtCurrentPriority = fn;
3889		}
3890		var getCurrentUpdatePriority$1;
3891		function setGetCurrentUpdatePriority(fn) {
3892			getCurrentUpdatePriority$1 = fn;
3893		}
3894		var attemptHydrationAtPriority;
3895		function setAttemptHydrationAtPriority(fn) {
3896			attemptHydrationAtPriority = fn;
3897		}
3898		var hasScheduledReplayAttempt = false;
3899		var queuedDiscreteEvents = [];
3900		var queuedFocus = null;
3901		var queuedDrag = null;
3902		var queuedMouse = null;
3903		var queuedPointers = /* @__PURE__ */ new Map();
3904		var queuedPointerCaptures = /* @__PURE__ */ new Map();
3905		var queuedExplicitHydrationTargets = [];
3906		var discreteReplayableEvents = [
3907			"mousedown",
3908			"mouseup",
3909			"touchcancel",
3910			"touchend",
3911			"touchstart",
3912			"auxclick",
3913			"dblclick",
3914			"pointercancel",
3915			"pointerdown",
3916			"pointerup",
3917			"dragend",
3918			"dragstart",
3919			"drop",
3920			"compositionend",
3921			"compositionstart",
3922			"keydown",
3923			"keypress",
3924			"keyup",
3925			"input",
3926			"textInput",
3927			"copy",
3928			"cut",
3929			"paste",
3930			"click",
3931			"change",
3932			"contextmenu",
3933			"reset",
3934			"submit"
3935		];
3936		function isDiscreteEventThatRequiresHydration(eventType) {
3937			return discreteReplayableEvents.indexOf(eventType) > -1;
3938		}
3939		function createQueuedReplayableEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent) {
3940			return {
3941				blockedOn,
3942				domEventName,
3943				eventSystemFlags,
3944				nativeEvent,
3945				targetContainers: [targetContainer]
3946			};
3947		}
3948		function clearIfContinuousEvent(domEventName, nativeEvent) {
3949			switch (domEventName) {
3950				case "focusin":
3951				case "focusout":
3952					queuedFocus = null;
3953					break;
3954				case "dragenter":
3955				case "dragleave":
3956					queuedDrag = null;
3957					break;
3958				case "mouseover":
3959				case "mouseout":
3960					queuedMouse = null;
3961					break;
3962				case "pointerover":
3963				case "pointerout":
3964					var pointerId = nativeEvent.pointerId;
3965					queuedPointers.delete(pointerId);
3966					break;
3967				case "gotpointercapture":
3968				case "lostpointercapture":
3969					var _pointerId = nativeEvent.pointerId;
3970					queuedPointerCaptures.delete(_pointerId);
3971					break;
3972			}
3973		}
3974		function accumulateOrCreateContinuousQueuedReplayableEvent(existingQueuedEvent, blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent) {
3975			if (existingQueuedEvent === null || existingQueuedEvent.nativeEvent !== nativeEvent) {
3976				var queuedEvent = createQueuedReplayableEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent);
3977				if (blockedOn !== null) {
3978					var _fiber2 = getInstanceFromNode(blockedOn);
3979					if (_fiber2 !== null) attemptContinuousHydration(_fiber2);
3980				}
3981				return queuedEvent;
3982			}
3983			existingQueuedEvent.eventSystemFlags |= eventSystemFlags;
3984			var targetContainers = existingQueuedEvent.targetContainers;
3985			if (targetContainer !== null && targetContainers.indexOf(targetContainer) === -1) targetContainers.push(targetContainer);
3986			return existingQueuedEvent;
3987		}
3988		function queueIfContinuousEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent) {
3989			switch (domEventName) {
3990				case "focusin":
3991					queuedFocus = accumulateOrCreateContinuousQueuedReplayableEvent(queuedFocus, blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent);
3992					return true;
3993				case "dragenter":
3994					queuedDrag = accumulateOrCreateContinuousQueuedReplayableEvent(queuedDrag, blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent);
3995					return true;
3996				case "mouseover":
3997					queuedMouse = accumulateOrCreateContinuousQueuedReplayableEvent(queuedMouse, blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent);
3998					return true;
3999				case "pointerover":
4000					var pointerEvent = nativeEvent;
4001					var pointerId = pointerEvent.pointerId;
4002					queuedPointers.set(pointerId, accumulateOrCreateContinuousQueuedReplayableEvent(queuedPointers.get(pointerId) || null, blockedOn, domEventName, eventSystemFlags, targetContainer, pointerEvent));
4003					return true;
4004				case "gotpointercapture":
4005					var _pointerEvent = nativeEvent;
4006					var _pointerId2 = _pointerEvent.pointerId;
4007					queuedPointerCaptures.set(_pointerId2, accumulateOrCreateContinuousQueuedReplayableEvent(queuedPointerCaptures.get(_pointerId2) || null, blockedOn, domEventName, eventSystemFlags, targetContainer, _pointerEvent));
4008					return true;
4009			}
4010			return false;
4011		}
4012		function attemptExplicitHydrationTarget(queuedTarget) {
4013			var targetInst = getClosestInstanceFromNode(queuedTarget.target);
4014			if (targetInst !== null) {
4015				var nearestMounted = getNearestMountedFiber(targetInst);
4016				if (nearestMounted !== null) {
4017					var tag = nearestMounted.tag;
4018					if (tag === SuspenseComponent) {
4019						var instance = getSuspenseInstanceFromFiber(nearestMounted);
4020						if (instance !== null) {
4021							queuedTarget.blockedOn = instance;
4022							attemptHydrationAtPriority(queuedTarget.priority, function() {
4023								attemptHydrationAtCurrentPriority(nearestMounted);
4024							});
4025							return;
4026						}
4027					} else if (tag === HostRoot) {
4028						var root$1 = nearestMounted.stateNode;
4029						if (isRootDehydrated(root$1)) {
4030							queuedTarget.blockedOn = getContainerFromFiber(nearestMounted);
4031							return;
4032						}
4033					}
4034				}
4035			}
4036			queuedTarget.blockedOn = null;
4037		}
4038		function queueExplicitHydrationTarget(target) {
4039			var updatePriority = getCurrentUpdatePriority$1();
4040			var queuedTarget = {
4041				blockedOn: null,
4042				target,
4043				priority: updatePriority
4044			};
4045			var i = 0;
4046			for (; i < queuedExplicitHydrationTargets.length; i++) if (!isHigherEventPriority(updatePriority, queuedExplicitHydrationTargets[i].priority)) break;
4047			queuedExplicitHydrationTargets.splice(i, 0, queuedTarget);
4048			if (i === 0) attemptExplicitHydrationTarget(queuedTarget);
4049		}
4050		function attemptReplayContinuousQueuedEvent(queuedEvent) {
4051			if (queuedEvent.blockedOn !== null) return false;
4052			var targetContainers = queuedEvent.targetContainers;
4053			while (targetContainers.length > 0) {
4054				var targetContainer = targetContainers[0];
4055				var nextBlockedOn = findInstanceBlockingEvent(queuedEvent.domEventName, queuedEvent.eventSystemFlags, targetContainer, queuedEvent.nativeEvent);
4056				if (nextBlockedOn === null) {
4057					var nativeEvent = queuedEvent.nativeEvent;
4058					var nativeEventClone = new nativeEvent.constructor(nativeEvent.type, nativeEvent);
4059					setReplayingEvent(nativeEventClone);
4060					nativeEvent.target.dispatchEvent(nativeEventClone);
4061					resetReplayingEvent();
4062				} else {
4063					var _fiber3 = getInstanceFromNode(nextBlockedOn);
4064					if (_fiber3 !== null) attemptContinuousHydration(_fiber3);
4065					queuedEvent.blockedOn = nextBlockedOn;
4066					return false;
4067				}
4068				targetContainers.shift();
4069			}
4070			return true;
4071		}
4072		function attemptReplayContinuousQueuedEventInMap(queuedEvent, key, map) {
4073			if (attemptReplayContinuousQueuedEvent(queuedEvent)) map.delete(key);
4074		}
4075		function replayUnblockedEvents() {
4076			hasScheduledReplayAttempt = false;
4077			if (queuedFocus !== null && attemptReplayContinuousQueuedEvent(queuedFocus)) queuedFocus = null;
4078			if (queuedDrag !== null && attemptReplayContinuousQueuedEvent(queuedDrag)) queuedDrag = null;
4079			if (queuedMouse !== null && attemptReplayContinuousQueuedEvent(queuedMouse)) queuedMouse = null;
4080			queuedPointers.forEach(attemptReplayContinuousQueuedEventInMap);
4081			queuedPointerCaptures.forEach(attemptReplayContinuousQueuedEventInMap);
4082		}
4083		function scheduleCallbackIfUnblocked(queuedEvent, unblocked) {
4084			if (queuedEvent.blockedOn === unblocked) {
4085				queuedEvent.blockedOn = null;
4086				if (!hasScheduledReplayAttempt) {
4087					hasScheduledReplayAttempt = true;
4088					Scheduler.unstable_scheduleCallback(Scheduler.unstable_NormalPriority, replayUnblockedEvents);
4089				}
4090			}
4091		}
4092		function retryIfBlockedOn(unblocked) {
4093			if (queuedDiscreteEvents.length > 0) {
4094				scheduleCallbackIfUnblocked(queuedDiscreteEvents[0], unblocked);
4095				for (var i = 1; i < queuedDiscreteEvents.length; i++) {
4096					var queuedEvent = queuedDiscreteEvents[i];
4097					if (queuedEvent.blockedOn === unblocked) queuedEvent.blockedOn = null;
4098				}
4099			}
4100			if (queuedFocus !== null) scheduleCallbackIfUnblocked(queuedFocus, unblocked);
4101			if (queuedDrag !== null) scheduleCallbackIfUnblocked(queuedDrag, unblocked);
4102			if (queuedMouse !== null) scheduleCallbackIfUnblocked(queuedMouse, unblocked);
4103			var unblock = function(queuedEvent$1) {
4104				return scheduleCallbackIfUnblocked(queuedEvent$1, unblocked);
4105			};
4106			queuedPointers.forEach(unblock);
4107			queuedPointerCaptures.forEach(unblock);
4108			for (var _i = 0; _i < queuedExplicitHydrationTargets.length; _i++) {
4109				var queuedTarget = queuedExplicitHydrationTargets[_i];
4110				if (queuedTarget.blockedOn === unblocked) queuedTarget.blockedOn = null;
4111			}
4112			while (queuedExplicitHydrationTargets.length > 0) {
4113				var nextExplicitTarget = queuedExplicitHydrationTargets[0];
4114				if (nextExplicitTarget.blockedOn !== null) break;
4115				else {
4116					attemptExplicitHydrationTarget(nextExplicitTarget);
4117					if (nextExplicitTarget.blockedOn === null) queuedExplicitHydrationTargets.shift();
4118				}
4119			}
4120		}
4121		var ReactCurrentBatchConfig = ReactSharedInternals.ReactCurrentBatchConfig;
4122		var _enabled = true;
4123		function setEnabled(enabled) {
4124			_enabled = !!enabled;
4125		}
4126		function isEnabled() {
4127			return _enabled;
4128		}
4129		function createEventListenerWrapperWithPriority(targetContainer, domEventName, eventSystemFlags) {
4130			var eventPriority = getEventPriority(domEventName);
4131			var listenerWrapper;
4132			switch (eventPriority) {
4133				case DiscreteEventPriority:
4134					listenerWrapper = dispatchDiscreteEvent;
4135					break;
4136				case ContinuousEventPriority:
4137					listenerWrapper = dispatchContinuousEvent;
4138					break;
4139				case DefaultEventPriority:
4140				default:
4141					listenerWrapper = dispatchEvent;
4142					break;
4143			}
4144			return listenerWrapper.bind(null, domEventName, eventSystemFlags, targetContainer);
4145		}
4146		function dispatchDiscreteEvent(domEventName, eventSystemFlags, container, nativeEvent) {
4147			var previousPriority = getCurrentUpdatePriority();
4148			var prevTransition = ReactCurrentBatchConfig.transition;
4149			ReactCurrentBatchConfig.transition = null;
4150			try {
4151				setCurrentUpdatePriority(DiscreteEventPriority);
4152				dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);
4153			} finally {
4154				setCurrentUpdatePriority(previousPriority);
4155				ReactCurrentBatchConfig.transition = prevTransition;
4156			}
4157		}
4158		function dispatchContinuousEvent(domEventName, eventSystemFlags, container, nativeEvent) {
4159			var previousPriority = getCurrentUpdatePriority();
4160			var prevTransition = ReactCurrentBatchConfig.transition;
4161			ReactCurrentBatchConfig.transition = null;
4162			try {
4163				setCurrentUpdatePriority(ContinuousEventPriority);
4164				dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);
4165			} finally {
4166				setCurrentUpdatePriority(previousPriority);
4167				ReactCurrentBatchConfig.transition = prevTransition;
4168			}
4169		}
4170		function dispatchEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent) {
4171			if (!_enabled) return;
4172			dispatchEventWithEnableCapturePhaseSelectiveHydrationWithoutDiscreteEventReplay(domEventName, eventSystemFlags, targetContainer, nativeEvent);
4173		}
4174		function dispatchEventWithEnableCapturePhaseSelectiveHydrationWithoutDiscreteEventReplay(domEventName, eventSystemFlags, targetContainer, nativeEvent) {
4175			var blockedOn = findInstanceBlockingEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent);
4176			if (blockedOn === null) {
4177				dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, return_targetInst, targetContainer);
4178				clearIfContinuousEvent(domEventName, nativeEvent);
4179				return;
4180			}
4181			if (queueIfContinuousEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent)) {
4182				nativeEvent.stopPropagation();
4183				return;
4184			}
4185			clearIfContinuousEvent(domEventName, nativeEvent);
4186			if (eventSystemFlags & IS_CAPTURE_PHASE && isDiscreteEventThatRequiresHydration(domEventName)) {
4187				while (blockedOn !== null) {
4188					var fiber = getInstanceFromNode(blockedOn);
4189					if (fiber !== null) attemptSynchronousHydration(fiber);
4190					var nextBlockedOn = findInstanceBlockingEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent);
4191					if (nextBlockedOn === null) dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, return_targetInst, targetContainer);
4192					if (nextBlockedOn === blockedOn) break;
4193					blockedOn = nextBlockedOn;
4194				}
4195				if (blockedOn !== null) nativeEvent.stopPropagation();
4196				return;
4197			}
4198			dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, null, targetContainer);
4199		}
4200		var return_targetInst = null;
4201		function findInstanceBlockingEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent) {
4202			return_targetInst = null;
4203			var targetInst = getClosestInstanceFromNode(getEventTarget(nativeEvent));
4204			if (targetInst !== null) {
4205				var nearestMounted = getNearestMountedFiber(targetInst);
4206				if (nearestMounted === null) targetInst = null;
4207				else {
4208					var tag = nearestMounted.tag;
4209					if (tag === SuspenseComponent) {
4210						var instance = getSuspenseInstanceFromFiber(nearestMounted);
4211						if (instance !== null) return instance;
4212						targetInst = null;
4213					} else if (tag === HostRoot) {
4214						var root$1 = nearestMounted.stateNode;
4215						if (isRootDehydrated(root$1)) return getContainerFromFiber(nearestMounted);
4216						targetInst = null;
4217					} else if (nearestMounted !== targetInst) targetInst = null;
4218				}
4219			}
4220			return_targetInst = targetInst;
4221			return null;
4222		}
4223		function getEventPriority(domEventName) {
4224			switch (domEventName) {
4225				case "cancel":
4226				case "click":
4227				case "close":
4228				case "contextmenu":
4229				case "copy":
4230				case "cut":
4231				case "auxclick":
4232				case "dblclick":
4233				case "dragend":
4234				case "dragstart":
4235				case "drop":
4236				case "focusin":
4237				case "focusout":
4238				case "input":
4239				case "invalid":
4240				case "keydown":
4241				case "keypress":
4242				case "keyup":
4243				case "mousedown":
4244				case "mouseup":
4245				case "paste":
4246				case "pause":
4247				case "play":
4248				case "pointercancel":
4249				case "pointerdown":
4250				case "pointerup":
4251				case "ratechange":
4252				case "reset":
4253				case "resize":
4254				case "seeked":
4255				case "submit":
4256				case "touchcancel":
4257				case "touchend":
4258				case "touchstart":
4259				case "volumechange":
4260				case "change":
4261				case "selectionchange":
4262				case "textInput":
4263				case "compositionstart":
4264				case "compositionend":
4265				case "compositionupdate":
4266				case "beforeblur":
4267				case "afterblur":
4268				case "beforeinput":
4269				case "blur":
4270				case "fullscreenchange":
4271				case "focus":
4272				case "hashchange":
4273				case "popstate":
4274				case "select":
4275				case "selectstart": return DiscreteEventPriority;
4276				case "drag":
4277				case "dragenter":
4278				case "dragexit":
4279				case "dragleave":
4280				case "dragover":
4281				case "mousemove":
4282				case "mouseout":
4283				case "mouseover":
4284				case "pointermove":
4285				case "pointerout":
4286				case "pointerover":
4287				case "scroll":
4288				case "toggle":
4289				case "touchmove":
4290				case "wheel":
4291				case "mouseenter":
4292				case "mouseleave":
4293				case "pointerenter":
4294				case "pointerleave": return ContinuousEventPriority;
4295				case "message": switch (getCurrentPriorityLevel()) {
4296					case ImmediatePriority: return DiscreteEventPriority;
4297					case UserBlockingPriority: return ContinuousEventPriority;
4298					case NormalPriority:
4299					case LowPriority: return DefaultEventPriority;
4300					case IdlePriority: return IdleEventPriority;
4301					default: return DefaultEventPriority;
4302				}
4303				default: return DefaultEventPriority;
4304			}
4305		}
4306		function addEventBubbleListener(target, eventType, listener) {
4307			target.addEventListener(eventType, listener, false);
4308			return listener;
4309		}
4310		function addEventCaptureListener(target, eventType, listener) {
4311			target.addEventListener(eventType, listener, true);
4312			return listener;
4313		}
4314		function addEventCaptureListenerWithPassiveFlag(target, eventType, listener, passive) {
4315			target.addEventListener(eventType, listener, {
4316				capture: true,
4317				passive
4318			});
4319			return listener;
4320		}
4321		function addEventBubbleListenerWithPassiveFlag(target, eventType, listener, passive) {
4322			target.addEventListener(eventType, listener, { passive });
4323			return listener;
4324		}
4325		var root = null;
4326		var startText = null;
4327		var fallbackText = null;
4328		function initialize(nativeEventTarget) {
4329			root = nativeEventTarget;
4330			startText = getText();
4331			return true;
4332		}
4333		function reset() {
4334			root = null;
4335			startText = null;
4336			fallbackText = null;
4337		}
4338		function getData() {
4339			if (fallbackText) return fallbackText;
4340			var start;
4341			var startValue = startText;
4342			var startLength = startValue.length;
4343			var end;
4344			var endValue = getText();
4345			var endLength = endValue.length;
4346			for (start = 0; start < startLength; start++) if (startValue[start] !== endValue[start]) break;
4347			var minEnd = startLength - start;
4348			for (end = 1; end <= minEnd; end++) if (startValue[startLength - end] !== endValue[endLength - end]) break;
4349			var sliceTail = end > 1 ? 1 - end : void 0;
4350			fallbackText = endValue.slice(start, sliceTail);
4351			return fallbackText;
4352		}
4353		function getText() {
4354			if ("value" in root) return root.value;
4355			return root.textContent;
4356		}
4357		function getEventCharCode(nativeEvent) {
4358			var charCode;
4359			var keyCode = nativeEvent.keyCode;
4360			if ("charCode" in nativeEvent) {
4361				charCode = nativeEvent.charCode;
4362				if (charCode === 0 && keyCode === 13) charCode = 13;
4363			} else charCode = keyCode;
4364			if (charCode === 10) charCode = 13;
4365			if (charCode >= 32 || charCode === 13) return charCode;
4366			return 0;
4367		}
4368		function functionThatReturnsTrue() {
4369			return true;
4370		}
4371		function functionThatReturnsFalse() {
4372			return false;
4373		}
4374		function createSyntheticEvent(Interface) {
4375			function SyntheticBaseEvent(reactName, reactEventType, targetInst, nativeEvent, nativeEventTarget) {
4376				this._reactName = reactName;
4377				this._targetInst = targetInst;
4378				this.type = reactEventType;
4379				this.nativeEvent = nativeEvent;
4380				this.target = nativeEventTarget;
4381				this.currentTarget = null;
4382				for (var _propName in Interface) {
4383					if (!Interface.hasOwnProperty(_propName)) continue;
4384					var normalize = Interface[_propName];
4385					if (normalize) this[_propName] = normalize(nativeEvent);
4386					else this[_propName] = nativeEvent[_propName];
4387				}
4388				if (nativeEvent.defaultPrevented != null ? nativeEvent.defaultPrevented : nativeEvent.returnValue === false) this.isDefaultPrevented = functionThatReturnsTrue;
4389				else this.isDefaultPrevented = functionThatReturnsFalse;
4390				this.isPropagationStopped = functionThatReturnsFalse;
4391				return this;
4392			}
4393			assign(SyntheticBaseEvent.prototype, {
4394				preventDefault: function() {
4395					this.defaultPrevented = true;
4396					var event = this.nativeEvent;
4397					if (!event) return;
4398					if (event.preventDefault) event.preventDefault();
4399					else if (typeof event.returnValue !== "unknown") event.returnValue = false;
4400					this.isDefaultPrevented = functionThatReturnsTrue;
4401				},
4402				stopPropagation: function() {
4403					var event = this.nativeEvent;
4404					if (!event) return;
4405					if (event.stopPropagation) event.stopPropagation();
4406					else if (typeof event.cancelBubble !== "unknown") event.cancelBubble = true;
4407					this.isPropagationStopped = functionThatReturnsTrue;
4408				},
4409				persist: function() {},
4410				isPersistent: functionThatReturnsTrue
4411			});
4412			return SyntheticBaseEvent;
4413		}
4414		var EventInterface = {
4415			eventPhase: 0,
4416			bubbles: 0,
4417			cancelable: 0,
4418			timeStamp: function(event) {
4419				return event.timeStamp || Date.now();
4420			},
4421			defaultPrevented: 0,
4422			isTrusted: 0
4423		};
4424		var SyntheticEvent = createSyntheticEvent(EventInterface);
4425		var UIEventInterface = assign({}, EventInterface, {
4426			view: 0,
4427			detail: 0
4428		});
4429		var SyntheticUIEvent = createSyntheticEvent(UIEventInterface);
4430		var lastMovementX;
4431		var lastMovementY;
4432		var lastMouseEvent;
4433		function updateMouseMovementPolyfillState(event) {
4434			if (event !== lastMouseEvent) {
4435				if (lastMouseEvent && event.type === "mousemove") {
4436					lastMovementX = event.screenX - lastMouseEvent.screenX;
4437					lastMovementY = event.screenY - lastMouseEvent.screenY;
4438				} else {
4439					lastMovementX = 0;
4440					lastMovementY = 0;
4441				}
4442				lastMouseEvent = event;
4443			}
4444		}
4445		var MouseEventInterface = assign({}, UIEventInterface, {
4446			screenX: 0,
4447			screenY: 0,
4448			clientX: 0,
4449			clientY: 0,
4450			pageX: 0,
4451			pageY: 0,
4452			ctrlKey: 0,
4453			shiftKey: 0,
4454			altKey: 0,
4455			metaKey: 0,
4456			getModifierState: getEventModifierState,
4457			button: 0,
4458			buttons: 0,
4459			relatedTarget: function(event) {
4460				if (event.relatedTarget === void 0) return event.fromElement === event.srcElement ? event.toElement : event.fromElement;
4461				return event.relatedTarget;
4462			},
4463			movementX: function(event) {
4464				if ("movementX" in event) return event.movementX;
4465				updateMouseMovementPolyfillState(event);
4466				return lastMovementX;
4467			},
4468			movementY: function(event) {
4469				if ("movementY" in event) return event.movementY;
4470				return lastMovementY;
4471			}
4472		});
4473		var SyntheticMouseEvent = createSyntheticEvent(MouseEventInterface);
4474		var SyntheticDragEvent = createSyntheticEvent(assign({}, MouseEventInterface, { dataTransfer: 0 }));
4475		var SyntheticFocusEvent = createSyntheticEvent(assign({}, UIEventInterface, { relatedTarget: 0 }));
4476		var SyntheticAnimationEvent = createSyntheticEvent(assign({}, EventInterface, {
4477			animationName: 0,
4478			elapsedTime: 0,
4479			pseudoElement: 0
4480		}));
4481		var SyntheticClipboardEvent = createSyntheticEvent(assign({}, EventInterface, { clipboardData: function(event) {
4482			return "clipboardData" in event ? event.clipboardData : window.clipboardData;
4483		} }));
4484		var SyntheticCompositionEvent = createSyntheticEvent(assign({}, EventInterface, { data: 0 }));
4485		var SyntheticInputEvent = SyntheticCompositionEvent;
4486		var normalizeKey = {
4487			Esc: "Escape",
4488			Spacebar: " ",
4489			Left: "ArrowLeft",
4490			Up: "ArrowUp",
4491			Right: "ArrowRight",
4492			Down: "ArrowDown",
4493			Del: "Delete",
4494			Win: "OS",
4495			Menu: "ContextMenu",
4496			Apps: "ContextMenu",
4497			Scroll: "ScrollLock",
4498			MozPrintableKey: "Unidentified"
4499		};
4500		var translateToKey = {
4501			"8": "Backspace",
4502			"9": "Tab",
4503			"12": "Clear",
4504			"13": "Enter",
4505			"16": "Shift",
4506			"17": "Control",
4507			"18": "Alt",
4508			"19": "Pause",
4509			"20": "CapsLock",
4510			"27": "Escape",
4511			"32": " ",
4512			"33": "PageUp",
4513			"34": "PageDown",
4514			"35": "End",
4515			"36": "Home",
4516			"37": "ArrowLeft",
4517			"38": "ArrowUp",
4518			"39": "ArrowRight",
4519			"40": "ArrowDown",
4520			"45": "Insert",
4521			"46": "Delete",
4522			"112": "F1",
4523			"113": "F2",
4524			"114": "F3",
4525			"115": "F4",
4526			"116": "F5",
4527			"117": "F6",
4528			"118": "F7",
4529			"119": "F8",
4530			"120": "F9",
4531			"121": "F10",
4532			"122": "F11",
4533			"123": "F12",
4534			"144": "NumLock",
4535			"145": "ScrollLock",
4536			"224": "Meta"
4537		};
4538		function getEventKey(nativeEvent) {
4539			if (nativeEvent.key) {
4540				var key = normalizeKey[nativeEvent.key] || nativeEvent.key;
4541				if (key !== "Unidentified") return key;
4542			}
4543			if (nativeEvent.type === "keypress") {
4544				var charCode = getEventCharCode(nativeEvent);
4545				return charCode === 13 ? "Enter" : String.fromCharCode(charCode);
4546			}
4547			if (nativeEvent.type === "keydown" || nativeEvent.type === "keyup") return translateToKey[nativeEvent.keyCode] || "Unidentified";
4548			return "";
4549		}
4550		var modifierKeyToProp = {
4551			Alt: "altKey",
4552			Control: "ctrlKey",
4553			Meta: "metaKey",
4554			Shift: "shiftKey"
4555		};
4556		function modifierStateGetter(keyArg) {
4557			var nativeEvent = this.nativeEvent;
4558			if (nativeEvent.getModifierState) return nativeEvent.getModifierState(keyArg);
4559			var keyProp = modifierKeyToProp[keyArg];
4560			return keyProp ? !!nativeEvent[keyProp] : false;
4561		}
4562		function getEventModifierState(nativeEvent) {
4563			return modifierStateGetter;
4564		}
4565		var SyntheticKeyboardEvent = createSyntheticEvent(assign({}, UIEventInterface, {
4566			key: getEventKey,
4567			code: 0,
4568			location: 0,
4569			ctrlKey: 0,
4570			shiftKey: 0,
4571			altKey: 0,
4572			metaKey: 0,
4573			repeat: 0,
4574			locale: 0,
4575			getModifierState: getEventModifierState,
4576			charCode: function(event) {
4577				if (event.type === "keypress") return getEventCharCode(event);
4578				return 0;
4579			},
4580			keyCode: function(event) {
4581				if (event.type === "keydown" || event.type === "keyup") return event.keyCode;
4582				return 0;
4583			},
4584			which: function(event) {
4585				if (event.type === "keypress") return getEventCharCode(event);
4586				if (event.type === "keydown" || event.type === "keyup") return event.keyCode;
4587				return 0;
4588			}
4589		}));
4590		var SyntheticPointerEvent = createSyntheticEvent(assign({}, MouseEventInterface, {
4591			pointerId: 0,
4592			width: 0,
4593			height: 0,
4594			pressure: 0,
4595			tangentialPressure: 0,
4596			tiltX: 0,
4597			tiltY: 0,
4598			twist: 0,
4599			pointerType: 0,
4600			isPrimary: 0
4601		}));
4602		var SyntheticTouchEvent = createSyntheticEvent(assign({}, UIEventInterface, {
4603			touches: 0,
4604			targetTouches: 0,
4605			changedTouches: 0,
4606			altKey: 0,
4607			metaKey: 0,
4608			ctrlKey: 0,
4609			shiftKey: 0,
4610			getModifierState: getEventModifierState
4611		}));
4612		var SyntheticTransitionEvent = createSyntheticEvent(assign({}, EventInterface, {
4613			propertyName: 0,
4614			elapsedTime: 0,
4615			pseudoElement: 0
4616		}));
4617		var SyntheticWheelEvent = createSyntheticEvent(assign({}, MouseEventInterface, {
4618			deltaX: function(event) {
4619				return "deltaX" in event ? event.deltaX : "wheelDeltaX" in event ? -event.wheelDeltaX : 0;
4620			},
4621			deltaY: function(event) {
4622				return "deltaY" in event ? event.deltaY : "wheelDeltaY" in event ? -event.wheelDeltaY : "wheelDelta" in event ? -event.wheelDelta : 0;
4623			},
4624			deltaZ: 0,
4625			deltaMode: 0
4626		}));
4627		var END_KEYCODES = [
4628			9,
4629			13,
4630			27,
4631			32
4632		];
4633		var START_KEYCODE = 229;
4634		var canUseCompositionEvent = canUseDOM && "CompositionEvent" in window;
4635		var documentMode = null;
4636		if (canUseDOM && "documentMode" in document) documentMode = document.documentMode;
4637		var canUseTextInputEvent = canUseDOM && "TextEvent" in window && !documentMode;
4638		var useFallbackCompositionData = canUseDOM && (!canUseCompositionEvent || documentMode && documentMode > 8 && documentMode <= 11);
4639		var SPACEBAR_CODE = 32;
4640		var SPACEBAR_CHAR = String.fromCharCode(SPACEBAR_CODE);
4641		function registerEvents() {
4642			registerTwoPhaseEvent("onBeforeInput", [
4643				"compositionend",
4644				"keypress",
4645				"textInput",
4646				"paste"
4647			]);
4648			registerTwoPhaseEvent("onCompositionEnd", [
4649				"compositionend",
4650				"focusout",
4651				"keydown",
4652				"keypress",
4653				"keyup",
4654				"mousedown"
4655			]);
4656			registerTwoPhaseEvent("onCompositionStart", [
4657				"compositionstart",
4658				"focusout",
4659				"keydown",
4660				"keypress",
4661				"keyup",
4662				"mousedown"
4663			]);
4664			registerTwoPhaseEvent("onCompositionUpdate", [
4665				"compositionupdate",
4666				"focusout",
4667				"keydown",
4668				"keypress",
4669				"keyup",
4670				"mousedown"
4671			]);
4672		}
4673		var hasSpaceKeypress = false;
4674		function isKeypressCommand(nativeEvent) {
4675			return (nativeEvent.ctrlKey || nativeEvent.altKey || nativeEvent.metaKey) && !(nativeEvent.ctrlKey && nativeEvent.altKey);
4676		}
4677		function getCompositionEventType(domEventName) {
4678			switch (domEventName) {
4679				case "compositionstart": return "onCompositionStart";
4680				case "compositionend": return "onCompositionEnd";
4681				case "compositionupdate": return "onCompositionUpdate";
4682			}
4683		}
4684		function isFallbackCompositionStart(domEventName, nativeEvent) {
4685			return domEventName === "keydown" && nativeEvent.keyCode === START_KEYCODE;
4686		}
4687		function isFallbackCompositionEnd(domEventName, nativeEvent) {
4688			switch (domEventName) {
4689				case "keyup": return END_KEYCODES.indexOf(nativeEvent.keyCode) !== -1;
4690				case "keydown": return nativeEvent.keyCode !== START_KEYCODE;
4691				case "keypress":
4692				case "mousedown":
4693				case "focusout": return true;
4694				default: return false;
4695			}
4696		}
4697		function getDataFromCustomEvent(nativeEvent) {
4698			var detail = nativeEvent.detail;
4699			if (typeof detail === "object" && "data" in detail) return detail.data;
4700			return null;
4701		}
4702		function isUsingKoreanIME(nativeEvent) {
4703			return nativeEvent.locale === "ko";
4704		}
4705		var isComposing = false;
4706		function extractCompositionEvent(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget) {
4707			var eventType;
4708			var fallbackData;
4709			if (canUseCompositionEvent) eventType = getCompositionEventType(domEventName);
4710			else if (!isComposing) {
4711				if (isFallbackCompositionStart(domEventName, nativeEvent)) eventType = "onCompositionStart";
4712			} else if (isFallbackCompositionEnd(domEventName, nativeEvent)) eventType = "onCompositionEnd";
4713			if (!eventType) return null;
4714			if (useFallbackCompositionData && !isUsingKoreanIME(nativeEvent)) {
4715				if (!isComposing && eventType === "onCompositionStart") isComposing = initialize(nativeEventTarget);
4716				else if (eventType === "onCompositionEnd") {
4717					if (isComposing) fallbackData = getData();
4718				}
4719			}
4720			var listeners = accumulateTwoPhaseListeners(targetInst, eventType);
4721			if (listeners.length > 0) {
4722				var event = new SyntheticCompositionEvent(eventType, domEventName, null, nativeEvent, nativeEventTarget);
4723				dispatchQueue.push({
4724					event,
4725					listeners
4726				});
4727				if (fallbackData) event.data = fallbackData;
4728				else {
4729					var customData = getDataFromCustomEvent(nativeEvent);
4730					if (customData !== null) event.data = customData;
4731				}
4732			}
4733		}
4734		function getNativeBeforeInputChars(domEventName, nativeEvent) {
4735			switch (domEventName) {
4736				case "compositionend": return getDataFromCustomEvent(nativeEvent);
4737				case "keypress":
4738					if (nativeEvent.which !== SPACEBAR_CODE) return null;
4739					hasSpaceKeypress = true;
4740					return SPACEBAR_CHAR;
4741				case "textInput":
4742					var chars = nativeEvent.data;
4743					if (chars === SPACEBAR_CHAR && hasSpaceKeypress) return null;
4744					return chars;
4745				default: return null;
4746			}
4747		}
4748		function getFallbackBeforeInputChars(domEventName, nativeEvent) {
4749			if (isComposing) {
4750				if (domEventName === "compositionend" || !canUseCompositionEvent && isFallbackCompositionEnd(domEventName, nativeEvent)) {
4751					var chars = getData();
4752					reset();
4753					isComposing = false;
4754					return chars;
4755				}
4756				return null;
4757			}
4758			switch (domEventName) {
4759				case "paste": return null;
4760				case "keypress":
4761					if (!isKeypressCommand(nativeEvent)) {
4762						if (nativeEvent.char && nativeEvent.char.length > 1) return nativeEvent.char;
4763						else if (nativeEvent.which) return String.fromCharCode(nativeEvent.which);
4764					}
4765					return null;
4766				case "compositionend": return useFallbackCompositionData && !isUsingKoreanIME(nativeEvent) ? null : nativeEvent.data;
4767				default: return null;
4768			}
4769		}
4770		function extractBeforeInputEvent(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget) {
4771			var chars;
4772			if (canUseTextInputEvent) chars = getNativeBeforeInputChars(domEventName, nativeEvent);
4773			else chars = getFallbackBeforeInputChars(domEventName, nativeEvent);
4774			if (!chars) return null;
4775			var listeners = accumulateTwoPhaseListeners(targetInst, "onBeforeInput");
4776			if (listeners.length > 0) {
4777				var event = new SyntheticInputEvent("onBeforeInput", "beforeinput", null, nativeEvent, nativeEventTarget);
4778				dispatchQueue.push({
4779					event,
4780					listeners
4781				});
4782				event.data = chars;
4783			}
4784		}
4785		function extractEvents(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {
4786			extractCompositionEvent(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);
4787			extractBeforeInputEvent(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);
4788		}
4789		var supportedInputTypes = {
4790			color: true,
4791			date: true,
4792			datetime: true,
4793			"datetime-local": true,
4794			email: true,
4795			month: true,
4796			number: true,
4797			password: true,
4798			range: true,
4799			search: true,
4800			tel: true,
4801			text: true,
4802			time: true,
4803			url: true,
4804			week: true
4805		};
4806		function isTextInputElement(elem) {
4807			var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();
4808			if (nodeName === "input") return !!supportedInputTypes[elem.type];
4809			if (nodeName === "textarea") return true;
4810			return false;
4811		}
4812		/**
4813		* Checks if an event is supported in the current execution environment.
4814		*
4815		* NOTE: This will not work correctly for non-generic events such as `change`,
4816		* `reset`, `load`, `error`, and `select`.
4817		*
4818		* Borrows from Modernizr.
4819		*
4820		* @param {string} eventNameSuffix Event name, e.g. "click".
4821		* @return {boolean} True if the event is supported.
4822		* @internal
4823		* @license Modernizr 3.0.0pre (Custom Build) | MIT
4824		*/
4825		function isEventSupported(eventNameSuffix) {
4826			if (!canUseDOM) return false;
vendor: 1,409 bytes, lines 4827-4870
4827			var eventName = "on" + eventNameSuffix;
4828			var isSupported = eventName in document;
4829			if (!isSupported) {
4830				var element = document.createElement("div");
4831				element.setAttribute(eventName, "return;");
4832				isSupported = typeof element[eventName] === "function";
4833			}
4834			return isSupported;
4835		}
4836		function registerEvents$1() {
4837			registerTwoPhaseEvent("onChange", [
4838				"change",
4839				"click",
4840				"focusin",
4841				"focusout",
4842				"input",
4843				"keydown",
4844				"keyup",
4845				"selectionchange"
4846			]);
4847		}
4848		function createAndAccumulateChangeEvent(dispatchQueue, inst, nativeEvent, target) {
4849			enqueueStateRestore(target);
4850			var listeners = accumulateTwoPhaseListeners(inst, "onChange");
4851			if (listeners.length > 0) {
4852				var event = new SyntheticEvent("onChange", "change", null, nativeEvent, target);
4853				dispatchQueue.push({
4854					event,
4855					listeners
4856				});
4857			}
4858		}
4859		var activeElement = null;
4860		var activeElementInst = null;
4861		function shouldUseChangeEvent(elem) {
4862			var nodeName = elem.nodeName && elem.nodeName.toLowerCase();
4863			return nodeName === "select" || nodeName === "input" && elem.type === "file";
4864		}
4865		function manualDispatchChangeEvent(nativeEvent) {
4866			var dispatchQueue = [];
4867			createAndAccumulateChangeEvent(dispatchQueue, activeElementInst, nativeEvent, getEventTarget(nativeEvent));
4868			batchedUpdates(runEventInBatch, dispatchQueue);
4869		}
4870		function runEventInBatch(dispatchQueue) {
4871			processDispatchQueue(dispatchQueue, 0);
4872		}
4873		function getInstIfValueChanged(targetInst) {
4874			if (updateValueIfChanged(getNodeFromInstance(targetInst))) return targetInst;
4875		}
4876		function getTargetInstForChangeEvent(domEventName, targetInst) {
4877			if (domEventName === "change") return targetInst;
4878		}
4879		var isInputEventSupported = false;
4880		if (canUseDOM) isInputEventSupported = isEventSupported("input") && (!document.documentMode || document.documentMode > 9);
4881		function startWatchingForValueChange(target, targetInst) {
4882			activeElement = target;
4883			activeElementInst = targetInst;
4884			activeElement.attachEvent("onpropertychange", handlePropertyChange);
4885		}
4886		function stopWatchingForValueChange() {
4887			if (!activeElement) return;
4888			activeElement.detachEvent("onpropertychange", handlePropertyChange);
4889			activeElement = null;
4890			activeElementInst = null;
4891		}
4892		function handlePropertyChange(nativeEvent) {
4893			if (nativeEvent.propertyName !== "value") return;
4894			if (getInstIfValueChanged(activeElementInst)) manualDispatchChangeEvent(nativeEvent);
4895		}
4896		function handleEventsForInputEventPolyfill(domEventName, target, targetInst) {
4897			if (domEventName === "focusin") {
4898				stopWatchingForValueChange();
4899				startWatchingForValueChange(target, targetInst);
4900			}
4900 else if (domEventName === "focusout") stopWatchingForValueChange();
4901		}
4902		function getTargetInstForInputEventPolyfill(domEventName, targetInst) {
4903			if (domEventName === "selectionchange" || domEventName === "keyup" || domEventName === "keydown") return getInstIfValueChanged(activeElementInst);
4904		}
4905		function shouldUseClickEvent(elem) {
4906			var nodeName = elem.nodeName;
4907			return nodeName && nodeName.toLowerCase() === "input" && (elem.type === "checkbox" || elem.type === "radio");
4908		}
4909		function getTargetInstForClickEvent(domEventName, targetInst) {
4910			if (domEventName === "click") return getInstIfValueChanged(targetInst);
4911		}
4912		function getTargetInstForInputOrChangeEvent(domEventName, targetInst) {
4913			if (domEventName === "input" || domEventName === "change") return getInstIfValueChanged(targetInst);
4914		}
4915		function handleControlledInputBlur(node) {
4916			var state = node._wrapperState;
4917			if (!state || !state.controlled || node.type !== "number") return;
4918			setDefaultValue(node, "number", node.value);
4919		}
4920		function extractEvents$1(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {
4921			var targetNode = targetInst ? getNodeFromInstance(targetInst) : window;
4922			var getTargetInstFunc, handleEventFunc;
4923			if (shouldUseChangeEvent(targetNode)) getTargetInstFunc = getTargetInstForChangeEvent;
4924			else if (isTextInputElement(targetNode)) if (isInputEventSupported) getTargetInstFunc = getTargetInstForInputOrChangeEvent;
4925			else {
4926				getTargetInstFunc = getTargetInstForInputEventPolyfill;
4927				handleEventFunc = handleEventsForInputEventPolyfill;
4928			}
4929			else if (shouldUseClickEvent(targetNode)) getTargetInstFunc = getTargetInstForClickEvent;
4930			if (getTargetInstFunc) {
4931				var inst = getTargetInstFunc(domEventName, targetInst);
4932				if (inst) {
4933					createAndAccumulateChangeEvent(dispatchQueue, inst, nativeEvent, nativeEventTarget);
4934					return;
4935				}
4936			}
4937			if (handleEventFunc) handleEventFunc(domEventName, targetNode, targetInst);
4938			if (domEventName === "focusout") handleControlledInputBlur(targetNode);
4939		}
4940		function registerEvents$2() {
4941			registerDirectEvent("onMouseEnter", ["mouseout", "mouseover"]);
4942			registerDirectEvent("onMouseLeave", ["mouseout", "mouseover"]);
4943			registerDirectEvent("onPointerEnter", ["pointerout", "pointerover"]);
4944			registerDirectEvent("onPointerLeave", ["pointerout", "pointerover"]);
4945		}
4946		function extractEvents$2(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {
4947			var isOverEvent = domEventName === "mouseover" || domEventName === "pointerover";
4948			var isOutEvent = domEventName === "mouseout" || domEventName === "pointerout";
4949			if (isOverEvent && !isReplayingEvent(nativeEvent)) {
4950				var related = nativeEvent.relatedTarget || nativeEvent.fromElement;
4951				if (related) {
4952					if (getClosestInstanceFromNode(related) || isContainerMarkedAsRoot(related)) return;
4953				}
4954			}
4955			if (!isOutEvent && !isOverEvent) return;
4956			var win;
4957			if (nativeEventTarget.window === nativeEventTarget) win = nativeEventTarget;
4958			else {
4959				var doc = nativeEventTarget.ownerDocument;
4960				if (doc) win = doc.defaultView || doc.parentWindow;
4961				else win = window;
4962			}
4963			var from;
4964			var to;
4965			if (isOutEvent) {
4966				var _related = nativeEvent.relatedTarget || nativeEvent.toElement;
4967				from = targetInst;
4968				to = _related ? getClosestInstanceFromNode(_related) : null;
4969				if (to !== null) {
4970					var nearestMounted = getNearestMountedFiber(to);
4971					if (to !== nearestMounted || to.tag !== HostComponent && to.tag !== HostText) to = null;
4972				}
4973			} else {
4974				from = null;
4975				to = targetInst;
4976			}
4977			if (from === to) return;
4978			var SyntheticEventCtor = SyntheticMouseEvent;
4979			var leaveEventType = "onMouseLeave";
4980			var enterEventType = "onMouseEnter";
4981			var eventTypePrefix = "mouse";
4982			if (domEventName === "pointerout" || domEventName === "pointerover") {
4983				SyntheticEventCtor = SyntheticPointerEvent;
4984				leaveEventType = "onPointerLeave";
4985				enterEventType = "onPointerEnter";
4986				eventTypePrefix = "pointer";
4987			}
4988			var fromNode = from == null ? win : getNodeFromInstance(from);
4989			var toNode = to == null ? win : getNodeFromInstance(to);
4990			var leave = new SyntheticEventCtor(leaveEventType, eventTypePrefix + "leave", from, nativeEvent, nativeEventTarget);
4991			leave.target = fromNode;
4992			leave.relatedTarget = toNode;
4993			var enter = null;
4994			if (getClosestInstanceFromNode(nativeEventTarget) === targetInst) {
4995				var enterEvent = new SyntheticEventCtor(enterEventType, eventTypePrefix + "enter", to, nativeEvent, nativeEventTarget);
4996				enterEvent.target = toNode;
4997				enterEvent.relatedTarget = fromNode;
4998				enter = enterEvent;
4999			}
5000			accumulateEnterLeaveTwoPhaseListeners(dispatchQueue, leave, enter, from, to);
5001		}
5002		function is(x, y) {
5003			return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y;
5004		}
5005		var objectIs = typeof Object.is === "function" ? Object.is : is;
5006		function shallowEqual(objA, objB) {
5007			if (objectIs(objA, objB)) return true;
5008			if (typeof objA !== "object" || objA === null || typeof objB !== "object" || objB === null) return false;
5009			var keysA = Object.keys(objA);
5010			var keysB = Object.keys(objB);
5011			if (keysA.length !== keysB.length) return false;
5012			for (var i = 0; i < keysA.length; i++) {
5013				var currentKey = keysA[i];
5014				if (!hasOwnProperty.call(objB, currentKey) || !objectIs(objA[currentKey], objB[currentKey])) return false;
5015			}
5016			return true;
5017		}
5018		function getLeafNode(node) {
5019			while (node && node.firstChild) node = node.firstChild;
5020			return node;
5021		}
5022		function getSiblingNode(node) {
5023			while (node) {
5024				if (node.nextSibling) return node.nextSibling;
5025				node = node.parentNode;
5026			}
5027		}
5028		function getNodeForCharacterOffset(root$1, offset) {
5029			var node = getLeafNode(root$1);
5030			var nodeStart = 0;
5031			var nodeEnd = 0;
5032			while (node) {
5033				if (node.nodeType === TEXT_NODE) {
5034					nodeEnd = nodeStart + node.textContent.length;
5035					if (nodeStart <= offset && nodeEnd >= offset) return {
5036						node,
5037						offset: offset - nodeStart
5038					};
5039					nodeStart = nodeEnd;
5040				}
5041				node = getLeafNode(getSiblingNode(node));
5042			}
5043		}
5044		function getOffsets(outerNode) {
5045			var ownerDocument = outerNode.ownerDocument;
5046			var win = ownerDocument && ownerDocument.defaultView || window;
5047			var selection = win.getSelection && win.getSelection();
5048			if (!selection || selection.rangeCount === 0) return null;
5049			var anchorNode = selection.anchorNode, anchorOffset = selection.anchorOffset, focusNode = selection.focusNode, focusOffset = selection.focusOffset;
5050			try {
5051				anchorNode.nodeType;
5052				focusNode.nodeType;
5053			} catch (e) {
5054				return null;
5055			}
5056			return getModernOffsetsFromPoints(outerNode, anchorNode, anchorOffset, focusNode, focusOffset);
5057		}
5058		function getModernOffsetsFromPoints(outerNode, anchorNode, anchorOffset, focusNode, focusOffset) {
5059			var length = 0;
5060			var start = -1;
5061			var end = -1;
5062			var indexWithinAnchor = 0;
5063			var indexWithinFocus = 0;
5064			var node = outerNode;
5065			var parentNode = null;
5066			outer: while (true) {
5067				var next = null;
5068				while (true) {
5069					if (node === anchorNode && (anchorOffset === 0 || node.nodeType === TEXT_NODE)) start = length + anchorOffset;
5070					if (node === focusNode && (focusOffset === 0 || node.nodeType === TEXT_NODE)) end = length + focusOffset;
5071					if (node.nodeType === TEXT_NODE) length += node.nodeValue.length;
5072					if ((next = node.firstChild) === null) break;
5073					parentNode = node;
5074					node = next;
5075				}
5076				while (true) {
5077					if (node === outerNode) break outer;
5078					if (parentNode === anchorNode && ++indexWithinAnchor === anchorOffset) start = length;
5079					if (parentNode === focusNode && ++indexWithinFocus === focusOffset) end = length;
5080					if ((next = node.nextSibling) !== null) break;
5081					node = parentNode;
5082					parentNode = node.parentNode;
5083				}
5084				node = next;
5085			}
5086			if (start === -1 || end === -1) return null;
5087			return {
5088				start,
5089				end
5090			};
5091		}
5092		function setOffsets(node, offsets) {
5093			var doc = node.ownerDocument || document;
5094			var win = doc && doc.defaultView || window;
5095			if (!win.getSelection) return;
5096			var selection = win.getSelection();
5097			var length = node.textContent.length;
5098			var start = Math.min(offsets.start, length);
5099			var end = offsets.end === void 0 ? start : Math.min(offsets.end, length);
5100			if (!selection.extend && start > end) {
5101				var temp = end;
5102				end = start;
5103				start = temp;
5104			}
5105			var startMarker = getNodeForCharacterOffset(node, start);
5106			var endMarker = getNodeForCharacterOffset(node, end);
5107			if (startMarker && endMarker) {
5108				if (selection.rangeCount === 1 && selection.anchorNode === startMarker.node && selection.anchorOffset === startMarker.offset && selection.focusNode === endMarker.node && selection.focusOffset === endMarker.offset) return;
5109				var range = doc.createRange();
5110				range.setStart(startMarker.node, startMarker.offset);
5111				selection.removeAllRanges();
5112				if (start > end) {
5113					selection.addRange(range);
5114					selection.extend(endMarker.node, endMarker.offset);
5115				} else {
5116					range.setEnd(endMarker.node, endMarker.offset);
5117					selection.addRange(range);
5118				}
5119			}
5120		}
5121		function isTextNode(node) {
5122			return node && node.nodeType === TEXT_NODE;
5123		}
5124		function containsNode(outerNode, innerNode) {
5125			if (!outerNode || !innerNode) return false;
5126			else if (outerNode === innerNode) return true;
5127			else if (isTextNode(outerNode)) return false;
5128			else if (isTextNode(innerNode)) return containsNode(outerNode, innerNode.parentNode);
5129			else if ("contains" in outerNode) return outerNode.contains(innerNode);
5130			else if (outerNode.compareDocumentPosition) return !!(outerNode.compareDocumentPosition(innerNode) & 16);
5131			else return false;
5132		}
5133		function isInDocument(node) {
5134			return node && node.ownerDocument && containsNode(node.ownerDocument.documentElement, node);
5135		}
5136		function isSameOriginFrame(iframe) {
5137			try {
5138				return typeof iframe.contentWindow.location.href === "string";
5139			} catch (err) {
5140				return false;
5141			}
5142		}
5143		function getActiveElementDeep() {
5144			var win = window;
5145			var element = getActiveElement();
5146			while (element instanceof win.HTMLIFrameElement) {
5147				if (isSameOriginFrame(element)) win = element.contentWindow;
5148				else return element;
5149				element = getActiveElement(win.document);
5150			}
5151			return element;
5152		}
5153		function hasSelectionCapabilities(elem) {
5154			var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();
5155			return nodeName && (nodeName === "input" && (elem.type === "text" || elem.type === "search" || elem.type === "tel" || elem.type === "url" || elem.type === "password") || nodeName === "textarea" || elem.contentEditable === "true");
5156		}
5157		function getSelectionInformation() {
5158			var focusedElem = getActiveElementDeep();
5159			return {
5160				focusedElem,
5161				selectionRange: hasSelectionCapabilities(focusedElem) ? getSelection(focusedElem) : null
5162			};
5163		}
5164		function restoreSelection(priorSelectionInformation) {
5165			var curFocusedElem = getActiveElementDeep();
5166			var priorFocusedElem = priorSelectionInformation.focusedElem;
5167			var priorSelectionRange = priorSelectionInformation.selectionRange;
5168			if (curFocusedElem !== priorFocusedElem && isInDocument(priorFocusedElem)) {
5169				if (priorSelectionRange !== null && hasSelectionCapabilities(priorFocusedElem)) setSelection(priorFocusedElem, priorSelectionRange);
5170				var ancestors = [];
5171				var ancestor = priorFocusedElem;
5172				while (ancestor = ancestor.parentNode) if (ancestor.nodeType === ELEMENT_NODE) ancestors.push({
5173					element: ancestor,
5174					left: ancestor.scrollLeft,
5175					top: ancestor.scrollTop
5176				});
5177				if (typeof priorFocusedElem.focus === "function") priorFocusedElem.focus();
5178				for (var i = 0; i < ancestors.length; i++) {
5179					var info = ancestors[i];
5180					info.element.scrollLeft = info.left;
5181					info.element.scrollTop = info.top;
5182				}
5183			}
5184		}
5185		function getSelection(input) {
5186			var selection;
5187			if ("selectionStart" in input) selection = {
5188				start: input.selectionStart,
5189				end: input.selectionEnd
5190			};
5191			else selection = getOffsets(input);
5192			return selection || {
5193				start: 0,
5194				end: 0
5195			};
5196		}
5197		function setSelection(input, offsets) {
5198			var start = offsets.start;
5199			var end = offsets.end;
5200			if (end === void 0) end = start;
5201			if ("selectionStart" in input) {
5202				input.selectionStart = start;
5203				input.selectionEnd = Math.min(end, input.value.length);
5204			} else setOffsets(input, offsets);
5205		}
5206		var skipSelectionChangeEvent = canUseDOM && "documentMode" in document && document.documentMode <= 11;
5207		function registerEvents$3() {
5208			registerTwoPhaseEvent("onSelect", [
5209				"focusout",
5210				"contextmenu",
5211				"dragend",
5212				"focusin",
5213				"keydown",
5214				"keyup",
5215				"mousedown",
5216				"mouseup",
5217				"selectionchange"
5218			]);
5219		}
5220		var activeElement$1 = null;
5221		var activeElementInst$1 = null;
5222		var lastSelection = null;
5223		var mouseDown = false;
5224		function getSelection$1(node) {
5225			if ("selectionStart" in node && hasSelectionCapabilities(node)) return {
5226				start: node.selectionStart,
5227				end: node.selectionEnd
5228			};
5229			else {
5230				var selection = (node.ownerDocument && node.ownerDocument.defaultView || window).getSelection();
5231				return {
5232					anchorNode: selection.anchorNode,
5233					anchorOffset: selection.anchorOffset,
5234					focusNode: selection.focusNode,
5235					focusOffset: selection.focusOffset
5236				};
5237			}
5238		}
5239		function getEventTargetDocument(eventTarget) {
5240			return eventTarget.window === eventTarget ? eventTarget.document : eventTarget.nodeType === DOCUMENT_NODE ? eventTarget : eventTarget.ownerDocument;
5241		}
5242		function constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget) {
5243			var doc = getEventTargetDocument(nativeEventTarget);
5244			if (mouseDown || activeElement$1 == null || activeElement$1 !== getActiveElement(doc)) return;
5245			var currentSelection = getSelection$1(activeElement$1);
5246			if (!lastSelection || !shallowEqual(lastSelection, currentSelection)) {
5247				lastSelection = currentSelection;
5248				var listeners = accumulateTwoPhaseListeners(activeElementInst$1, "onSelect");
5249				if (listeners.length > 0) {
5250					var event = new SyntheticEvent("onSelect", "select", null, nativeEvent, nativeEventTarget);
5251					dispatchQueue.push({
5252						event,
5253						listeners
5254					});
5255					event.target = activeElement$1;
5256				}
5257			}
5258		}
5259		function extractEvents$3(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {
5260			var targetNode = targetInst ? getNodeFromInstance(targetInst) : window;
5261			switch (domEventName) {
5262				case "focusin":
5263					if (isTextInputElement(targetNode) || targetNode.contentEditable === "true") {
5264						activeElement$1 = targetNode;
5265						activeElementInst$1 = targetInst;
5266						lastSelection = null;
5267					}
5268					break;
5269				case "focusout":
5270					activeElement$1 = null;
5271					activeElementInst$1 = null;
5272					lastSelection = null;
5273					break;
5274				case "mousedown":
5275					mouseDown = true;
5276					break;
5277				case "contextmenu":
5278				case "mouseup":
5279				case "dragend":
5280					mouseDown = false;
5281					constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget);
5282					break;
5283				case "selectionchange": if (skipSelectionChangeEvent) break;
5284				case "keydown":
5285				case "keyup": constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget);
5286			}
5287		}
5288		function makePrefixMap(styleProp, eventName) {
5289			var prefixes$1 = {};
5290			prefixes$1[styleProp.toLowerCase()] = eventName.toLowerCase();
5291			prefixes$1["Webkit" + styleProp] = "webkit" + eventName;
5292			prefixes$1["Moz" + styleProp] = "moz" + eventName;
5293			return prefixes$1;
5294		}
5295		var vendorPrefixes = {
5296			animationend: makePrefixMap("Animation", "AnimationEnd"),
5297			animationiteration: makePrefixMap("Animation", "AnimationIteration"),
5298			animationstart: makePrefixMap("Animation", "AnimationStart"),
5299			transitionend: makePrefixMap("Transition", "TransitionEnd")
5300		};
5301		var prefixedEventNames = {};
5302		var style = {};
5303		if (canUseDOM) {
5304			style = document.createElement("div").style;
5305			if (!("AnimationEvent" in window)) {
5306				delete vendorPrefixes.animationend.animation;
5307				delete vendorPrefixes.animationiteration.animation;
5308				delete vendorPrefixes.animationstart.animation;
5309			}
5310			if (!("TransitionEvent" in window)) delete vendorPrefixes.transitionend.transition;
5311		}
5312		function getVendorPrefixedEventName(eventName) {
5313			if (prefixedEventNames[eventName]) return prefixedEventNames[eventName];
5314			else if (!vendorPrefixes[eventName]) return eventName;
5315			var prefixMap = vendorPrefixes[eventName];
5316			for (var styleProp in prefixMap) if (prefixMap.hasOwnProperty(styleProp) && styleProp in style) return prefixedEventNames[eventName] = prefixMap[styleProp];
5317			return eventName;
5318		}
5319		var ANIMATION_END = getVendorPrefixedEventName("animationend");
5320		var ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration");
5321		var ANIMATION_START = getVendorPrefixedEventName("animationstart");
5322		var TRANSITION_END = getVendorPrefixedEventName("transitionend");
5323		var topLevelEventsToReactNames = /* @__PURE__ */ new Map();
5324		var simpleEventPluginEvents = [
5325			"abort",
5326			"auxClick",
5327			"cancel",
5328			"canPlay",
5329			"canPlayThrough",
5330			"click",
5331			"close",
5332			"contextMenu",
5333			"copy",
5334			"cut",
5335			"drag",
5336			"dragEnd",
5337			"dragEnter",
5338			"dragExit",
5339			"dragLeave",
5340			"dragOver",
5341			"dragStart",
5342			"drop",
5343			"durationChange",
5344			"emptied",
5345			"encrypted",
5346			"ended",
5347			"error",
5348			"gotPointerCapture",
5349			"input",
5350			"invalid",
5351			"keyDown",
5352			"keyPress",
5353			"keyUp",
5354			"load",
5355			"loadedData",
5356			"loadedMetadata",
5357			"loadStart",
5358			"lostPointerCapture",
5359			"mouseDown",
5360			"mouseMove",
5361			"mouseOut",
5362			"mouseOver",
5363			"mouseUp",
5364			"paste",
5365			"pause",
5366			"play",
5367			"playing",
5368			"pointerCancel",
5369			"pointerDown",
5370			"pointerMove",
5371			"pointerOut",
5372			"pointerOver",
5373			"pointerUp",
5374			"progress",
5375			"rateChange",
5376			"reset",
5377			"resize",
5378			"seeked",
5379			"seeking",
5380			"stalled",
5381			"submit",
5382			"suspend",
5383			"timeUpdate",
5384			"touchCancel",
5385			"touchEnd",
5386			"touchStart",
5387			"volumeChange",
5388			"scroll",
5389			"toggle",
5390			"touchMove",
5391			"waiting",
5392			"wheel"
5393		];
5394		function registerSimpleEvent(domEventName, reactName) {
5395			topLevelEventsToReactNames.set(domEventName, reactName);
5396			registerTwoPhaseEvent(reactName, [domEventName]);
5397		}
5398		function registerSimpleEvents() {
5399			for (var i = 0; i < simpleEventPluginEvents.length; i++) {
5400				var eventName = simpleEventPluginEvents[i];
5401				registerSimpleEvent(eventName.toLowerCase(), "on" + (eventName[0].toUpperCase() + eventName.slice(1)));
5402			}
5403			registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
5404			registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration");
5405			registerSimpleEvent(ANIMATION_START, "onAnimationStart");
5406			registerSimpleEvent("dblclick", "onDoubleClick");
5407			registerSimpleEvent("focusin", "onFocus");
5408			registerSimpleEvent("focusout", "onBlur");
5409			registerSimpleEvent(TRANSITION_END, "onTransitionEnd");
5410		}
5411		function extractEvents$4(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {
5412			var reactName = topLevelEventsToReactNames.get(domEventName);
5413			if (reactName === void 0) return;
5414			var SyntheticEventCtor = SyntheticEvent;
5415			var reactEventType = domEventName;
5416			switch (domEventName) {
5417				case "keypress": if (getEventCharCode(nativeEvent) === 0) return;
5418				case "keydown":
5419				case "keyup":
5420					SyntheticEventCtor = SyntheticKeyboardEvent;
5421					break;
5422				case "focusin":
5423					reactEventType = "focus";
5424					SyntheticEventCtor = SyntheticFocusEvent;
5425					break;
5426				case "focusout":
5427					reactEventType = "blur";
5428					SyntheticEventCtor = SyntheticFocusEvent;
5429					break;
5430				case "beforeblur":
5431				case "afterblur":
5432					SyntheticEventCtor = SyntheticFocusEvent;
5433					break;
5434				case "click": if (nativeEvent.button === 2) return;
5435				case "auxclick":
5436				case "dblclick":
5437				case "mousedown":
5438				case "mousemove":
5439				case "mouseup":
5440				case "mouseout":
5441				case "mouseover":
5442				case "contextmenu":
5443					SyntheticEventCtor = SyntheticMouseEvent;
5444					break;
5445				case "drag":
5446				case "dragend":
5447				case "dragenter":
5448				case "dragexit":
5449				case "dragleave":
5450				case "dragover":
5451				case "dragstart":
5452				case "drop":
5453					SyntheticEventCtor = SyntheticDragEvent;
5454					break;
5455				case "touchcancel":
5456				case "touchend":
5457				case "touchmove":
5458				case "touchstart":
5459					SyntheticEventCtor = SyntheticTouchEvent;
5460					break;
5461				case ANIMATION_END:
5462				case ANIMATION_ITERATION:
5463				case ANIMATION_START:
5464					SyntheticEventCtor = SyntheticAnimationEvent;
5465					break;
5466				case TRANSITION_END:
5467					SyntheticEventCtor = SyntheticTransitionEvent;
5468					break;
5469				case "scroll":
5470					SyntheticEventCtor = SyntheticUIEvent;
5471					break;
5472				case "wheel":
5473					SyntheticEventCtor = SyntheticWheelEvent;
5474					break;
5475				case "copy":
5476				case "cut":
5477				case "paste":
5478					SyntheticEventCtor = SyntheticClipboardEvent;
5479					break;
5480				case "gotpointercapture":
5481				case "lostpointercapture":
5482				case "pointercancel":
5483				case "pointerdown":
5484				case "pointermove":
5485				case "pointerout":
5486				case "pointerover":
5487				case "pointerup":
5488					SyntheticEventCtor = SyntheticPointerEvent;
5489					break;
5490			}
5491			var inCapturePhase = (eventSystemFlags & IS_CAPTURE_PHASE) !== 0;
5492			var accumulateTargetOnly = !inCapturePhase && domEventName === "scroll";
5493			var _listeners = accumulateSinglePhaseListeners(targetInst, reactName, nativeEvent.type, inCapturePhase, accumulateTargetOnly);
5494			if (_listeners.length > 0) {
5495				var _event = new SyntheticEventCtor(reactName, reactEventType, null, nativeEvent, nativeEventTarget);
5496				dispatchQueue.push({
5497					event: _event,
5498					listeners: _listeners
5499				});
5500			}
5501		}
5502		registerSimpleEvents();
5503		registerEvents$2();
5504		registerEvents$1();
5505		registerEvents$3();
5506		registerEvents();
5507		function extractEvents$5(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {
5508			extractEvents$4(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags);
5509			if ((eventSystemFlags & SHOULD_NOT_PROCESS_POLYFILL_EVENT_PLUGINS) === 0) {
5510				extractEvents$2(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);
5511				extractEvents$1(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);
5512				extractEvents$3(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);
5513				extractEvents(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);
5514			}
5515		}
5516		var mediaEventTypes = [
5517			"abort",
5518			"canplay",
5519			"canplaythrough",
5520			"durationchange",
5521			"emptied",
5522			"encrypted",
5523			"ended",
5524			"error",
5525			"loadeddata",
5526			"loadedmetadata",
5527			"loadstart",
5528			"pause",
5529			"play",
5530			"playing",
5531			"progress",
5532			"ratechange",
5533			"resize",
5534			"seeked",
5535			"seeking",
5536			"stalled",
5537			"suspend",
5538			"timeupdate",
5539			"volumechange",
5540			"waiting"
5541		];
5542		var nonDelegatedEvents = new Set([
5543			"cancel",
5544			"close",
5545			"invalid",
5546			"load",
5547			"scroll",
5548			"toggle"
5549		].concat(mediaEventTypes));
5550		function executeDispatch(event, listener, currentTarget) {
5551			var type = event.type || "unknown-event";
5552			event.currentTarget = currentTarget;
5553			invokeGuardedCallbackAndCatchFirstError(type, listener, void 0, event);
5554			event.currentTarget = null;
5555		}
5556		function processDispatchQueueItemsInOrder(event, dispatchListeners, inCapturePhase) {
5557			var previousInstance;
5558			if (inCapturePhase) for (var i = dispatchListeners.length - 1; i >= 0; i--) {
5559				var _dispatchListeners$i = dispatchListeners[i], instance = _dispatchListeners$i.instance, currentTarget = _dispatchListeners$i.currentTarget, listener = _dispatchListeners$i.listener;
5560				if (instance !== previousInstance && event.isPropagationStopped()) return;
5561				executeDispatch(event, listener, currentTarget);
5562				previousInstance = instance;
5563			}
5564			else for (var _i = 0; _i < dispatchListeners.length; _i++) {
5565				var _dispatchListeners$_i = dispatchListeners[_i], _instance = _dispatchListeners$_i.instance, _currentTarget = _dispatchListeners$_i.currentTarget, _listener = _dispatchListeners$_i.listener;
5566				if (_instance !== previousInstance && event.isPropagationStopped()) return;
5567				executeDispatch(event, _listener, _currentTarget);
5568				previousInstance = _instance;
5569			}
5570		}
5571		function processDispatchQueue(dispatchQueue, eventSystemFlags) {
5572			var inCapturePhase = (eventSystemFlags & IS_CAPTURE_PHASE) !== 0;
5573			for (var i = 0; i < dispatchQueue.length; i++) {
5574				var _dispatchQueue$i = dispatchQueue[i], event = _dispatchQueue$i.event, listeners = _dispatchQueue$i.listeners;
5575				processDispatchQueueItemsInOrder(event, listeners, inCapturePhase);
5576			}
5577			rethrowCaughtError();
5578		}
5579		function dispatchEventsForPlugins(domEventName, eventSystemFlags, nativeEvent, targetInst, targetContainer) {
5580			var nativeEventTarget = getEventTarget(nativeEvent);
5581			var dispatchQueue = [];
5582			extractEvents$5(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags);
5583			processDispatchQueue(dispatchQueue, eventSystemFlags);
5584		}
5585		function listenToNonDelegatedEvent(domEventName, targetElement) {
5586			if (!nonDelegatedEvents.has(domEventName)) error("Did not expect a listenToNonDelegatedEvent() call for \"%s\". This is a bug in React. Please file an issue.", domEventName);
5587			var isCapturePhaseListener = false;
5588			var listenerSet = getEventListenerSet(targetElement);
5589			var listenerSetKey = getListenerSetKey(domEventName, isCapturePhaseListener);
5590			if (!listenerSet.has(listenerSetKey)) {
5591				addTrappedEventListener(targetElement, domEventName, IS_NON_DELEGATED, isCapturePhaseListener);
5592				listenerSet.add(listenerSetKey);
5593			}
5594		}
5595		function listenToNativeEvent(domEventName, isCapturePhaseListener, target) {
5596			if (nonDelegatedEvents.has(domEventName) && !isCapturePhaseListener) error("Did not expect a listenToNativeEvent() call for \"%s\" in the bubble phase. This is a bug in React. Please file an issue.", domEventName);
5597			var eventSystemFlags = 0;
5598			if (isCapturePhaseListener) eventSystemFlags |= IS_CAPTURE_PHASE;
5599			addTrappedEventListener(target, domEventName, eventSystemFlags, isCapturePhaseListener);
5600		}
5601		var listeningMarker = "_reactListening" + Math.random().toString(36).slice(2);
5602		function listenToAllSupportedEvents(rootContainerElement) {
5603			if (!rootContainerElement[listeningMarker]) {
5604				rootContainerElement[listeningMarker] = true;
5605				allNativeEvents.forEach(function(domEventName) {
5606					if (domEventName !== "selectionchange") {
5607						if (!nonDelegatedEvents.has(domEventName)) listenToNativeEvent(domEventName, false, rootContainerElement);
5608						listenToNativeEvent(domEventName, true, rootContainerElement);
5609					}
5610				});
5611				var ownerDocument = rootContainerElement.nodeType === DOCUMENT_NODE ? rootContainerElement : rootContainerElement.ownerDocument;
5612				if (ownerDocument !== null) {
5613					if (!ownerDocument[listeningMarker]) {
5614						ownerDocument[listeningMarker] = true;
5615						listenToNativeEvent("selectionchange", false, ownerDocument);
5616					}
5617				}
5618			}
5619		}
5620		function addTrappedEventListener(targetContainer, domEventName, eventSystemFlags, isCapturePhaseListener, isDeferredListenerForLegacyFBSupport) {
5621			var listener = createEventListenerWrapperWithPriority(targetContainer, domEventName, eventSystemFlags);
5622			var isPassiveListener = void 0;
5623			if (passiveBrowserEventsSupported) {
5624				if (domEventName === "touchstart" || domEventName === "touchmove" || domEventName === "wheel") isPassiveListener = true;
5625			}
5626			targetContainer = targetContainer;
5627			if (isCapturePhaseListener) if (isPassiveListener !== void 0) addEventCaptureListenerWithPassiveFlag(targetContainer, domEventName, listener, isPassiveListener);
5628			else addEventCaptureListener(targetContainer, domEventName, listener);
5629			else if (isPassiveListener !== void 0) addEventBubbleListenerWithPassiveFlag(targetContainer, domEventName, listener, isPassiveListener);
5630			else addEventBubbleListener(targetContainer, domEventName, listener);
5631		}
5632		function isMatchingRootContainer(grandContainer, targetContainer) {
5633			return grandContainer === targetContainer || grandContainer.nodeType === COMMENT_NODE && grandContainer.parentNode === targetContainer;
5634		}
5635		function dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, targetInst, targetContainer) {
5636			var ancestorInst = targetInst;
5637			if ((eventSystemFlags & IS_EVENT_HANDLE_NON_MANAGED_NODE) === 0 && (eventSystemFlags & IS_NON_DELEGATED) === 0) {
5638				var targetContainerNode = targetContainer;
5639				if (targetInst !== null) {
5640					var node = targetInst;
5641					mainLoop: while (true) {
5642						if (node === null) return;
5643						var nodeTag = node.tag;
5644						if (nodeTag === HostRoot || nodeTag === HostPortal) {
5645							var container = node.stateNode.containerInfo;
5646							if (isMatchingRootContainer(container, targetContainerNode)) break;
5647							if (nodeTag === HostPortal) {
5648								var grandNode = node.return;
5649								while (grandNode !== null) {
5650									var grandTag = grandNode.tag;
5651									if (grandTag === HostRoot || grandTag === HostPortal) {
5652										var grandContainer = grandNode.stateNode.containerInfo;
5653										if (isMatchingRootContainer(grandContainer, targetContainerNode)) return;
5654									}
5655									grandNode = grandNode.return;
5656								}
5657							}
5658							while (container !== null) {
5659								var parentNode = getClosestInstanceFromNode(container);
5660								if (parentNode === null) return;
5661								var parentTag = parentNode.tag;
5662								if (parentTag === HostComponent || parentTag === HostText) {
5663									node = ancestorInst = parentNode;
5664									continue mainLoop;
5665								}
5666								container = container.parentNode;
5667							}
5668						}
5669						node = node.return;
5670					}
5671				}
5672			}
5673			batchedUpdates(function() {
5674				return dispatchEventsForPlugins(domEventName, eventSystemFlags, nativeEvent, ancestorInst);
5675			});
5676		}
5677		function createDispatchListener(instance, listener, currentTarget) {
5678			return {
5679				instance,
5680				listener,
5681				currentTarget
5682			};
5683		}
5684		function accumulateSinglePhaseListeners(targetFiber, reactName, nativeEventType, inCapturePhase, accumulateTargetOnly, nativeEvent) {
5685			var captureName = reactName !== null ? reactName + "Capture" : null;
5686			var reactEventName = inCapturePhase ? captureName : reactName;
5687			var listeners = [];
5688			var instance = targetFiber;
5689			var lastHostComponent = null;
5690			while (instance !== null) {
5691				var _instance2 = instance, stateNode = _instance2.stateNode;
5692				if (_instance2.tag === HostComponent && stateNode !== null) {
5693					lastHostComponent = stateNode;
5694					if (reactEventName !== null) {
5695						var listener = getListener(instance, reactEventName);
5696						if (listener != null) listeners.push(createDispatchListener(instance, listener, lastHostComponent));
5697					}
5698				}
5699				if (accumulateTargetOnly) break;
5700				instance = instance.return;
5701			}
5702			return listeners;
5703		}
5704		function accumulateTwoPhaseListeners(targetFiber, reactName) {
5705			var captureName = reactName + "Capture";
5706			var listeners = [];
5707			var instance = targetFiber;
5708			while (instance !== null) {
5709				var _instance3 = instance, stateNode = _instance3.stateNode;
5710				if (_instance3.tag === HostComponent && stateNode !== null) {
5711					var currentTarget = stateNode;
5712					var captureListener = getListener(instance, captureName);
5713					if (captureListener != null) listeners.unshift(createDispatchListener(instance, captureListener, currentTarget));
5714					var bubbleListener = getListener(instance, reactName);
5715					if (bubbleListener != null) listeners.push(createDispatchListener(instance, bubbleListener, currentTarget));
5716				}
5717				instance = instance.return;
5718			}
5719			return listeners;
5720		}
5721		function getParent(inst) {
5722			if (inst === null) return null;
5723			do
5724				inst = inst.return;
5725			while (inst && inst.tag !== HostComponent);
5726			if (inst) return inst;
5727			return null;
5728		}
5729		function getLowestCommonAncestor(instA, instB) {
5730			var nodeA = instA;
5731			var nodeB = instB;
5732			var depthA = 0;
5733			for (var tempA = nodeA; tempA; tempA = getParent(tempA)) depthA++;
5734			var depthB = 0;
5735			for (var tempB = nodeB; tempB; tempB = getParent(tempB)) depthB++;
5736			while (depthA - depthB > 0) {
5737				nodeA = getParent(nodeA);
5738				depthA--;
5739			}
5740			while (depthB - depthA > 0) {
5741				nodeB = getParent(nodeB);
5742				depthB--;
5743			}
5744			var depth = depthA;
5745			while (depth--) {
5746				if (nodeA === nodeB || nodeB !== null && nodeA === nodeB.alternate) return nodeA;
5747				nodeA = getParent(nodeA);
5748				nodeB = getParent(nodeB);
5749			}
5750			return null;
5751		}
5752		function accumulateEnterLeaveListenersForEvent(dispatchQueue, event, target, common, inCapturePhase) {
5753			var registrationName = event._reactName;
5754			var listeners = [];
5755			var instance = target;
5756			while (instance !== null) {
5757				if (instance === common) break;
5758				var _instance4 = instance, alternate = _instance4.alternate, stateNode = _instance4.stateNode, tag = _instance4.tag;
5759				if (alternate !== null && alternate === common) break;
5760				if (tag === HostComponent && stateNode !== null) {
5761					var currentTarget = stateNode;
5762					if (inCapturePhase) {
5763						var captureListener = getListener(instance, registrationName);
5764						if (captureListener != null) listeners.unshift(createDispatchListener(instance, captureListener, currentTarget));
5765					} else if (!inCapturePhase) {
5766						var bubbleListener = getListener(instance, registrationName);
5767						if (bubbleListener != null) listeners.push(createDispatchListener(instance, bubbleListener, currentTarget));
5768					}
5769				}
5770				instance = instance.return;
5771			}
5772			if (listeners.length !== 0) dispatchQueue.push({
5773				event,
5774				listeners
5775			});
5776		}
5777		function accumulateEnterLeaveTwoPhaseListeners(dispatchQueue, leaveEvent, enterEvent, from, to) {
5778			var common = from && to ? getLowestCommonAncestor(from, to) : null;
5779			if (from !== null) accumulateEnterLeaveListenersForEvent(dispatchQueue, leaveEvent, from, common, false);
5780			if (to !== null && enterEvent !== null) accumulateEnterLeaveListenersForEvent(dispat
5780chQueue, enterEvent, to, common, true);
5781		}
5782		function getListenerSetKey(domEventName, capture) {
5783			return domEventName + "__" + (capture ? "capture" : "bubble");
5784		}
5785		var didWarnInvalidHydration = false;
5786		var DANGEROUSLY_SET_INNER_HTML = "dangerouslySetInnerHTML";
5787		var SUPPRESS_CONTENT_EDITABLE_WARNING = "suppressContentEditableWarning";
5788		var SUPPRESS_HYDRATION_WARNING = "suppressHydrationWarning";
5789		var AUTOFOCUS = "autoFocus";
5790		var CHILDREN = "children";
5791		var STYLE = "style";
5792		var HTML$1 = "__html";
5793		var warnedUnknownTags;
5794		var validatePropertiesInDevelopment;
5795		var warnForPropDifference;
5796		var warnForExtraAttributes;
5797		var warnForInvalidEventListener;
5798		var canDiffStyleForHydrationWarning;
5799		var normalizeHTML;
5800		warnedUnknownTags = {
5801			dialog: true,
5802			webview: true
5803		};
5804		validatePropertiesInDevelopment = function(type, props) {
5805			validateProperties(type, props);
5806			validateProperties$1(type, props);
5807			validateProperties$2(type, props, {
5808				registrationNameDependencies,
5809				possibleRegistrationNames
5810			});
5811		};
5812		canDiffStyleForHydrationWarning = canUseDOM && !document.documentMode;
5813		warnForPropDifference = function(propName, serverValue, clientValue) {
5814			if (didWarnInvalidHydration) return;
5815			var normalizedClientValue = normalizeMarkupForTextOrAttribute(clientValue);
5816			var normalizedServerValue = normalizeMarkupForTextOrAttribute(serverValue);
5817			if (normalizedServerValue === normalizedClientValue) return;
5818			didWarnInvalidHydration = true;
5819			error("Prop `%s` did not match. Server: %s Client: %s", propName, JSON.stringify(normalizedServerValue), JSON.stringify(normalizedClientValue));
5820		};
5821		warnForExtraAttributes = function(attributeNames) {
5822			if (didWarnInvalidHydration) return;
5823			didWarnInvalidHydration = true;
5824			var names = [];
5825			attributeNames.forEach(function(name) {
5826				names.push(name);
5827			});
5828			error("Extra attributes from the server: %s", names);
5829		};
5830		warnForInvalidEventListener = function(registrationName, listener) {
5831			if (listener === false) error("Expected `%s` listener to be a function, instead got `false`.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.", registrationName, registrationName, registrationName);
5832			else error("Expected `%s` listener to be a function, instead got a value of `%s` type.", registrationName, typeof listener);
5833		};
5834		normalizeHTML = function(parent, html) {
5835			var testElement = parent.namespaceURI === HTML_NAMESPACE ? parent.ownerDocument.createElement(parent.tagName) : parent.ownerDocument.createElementNS(parent.namespaceURI, parent.tagName);
5836			testElement.innerHTML = html;
5837			return testElement.innerHTML;
5838		};
5839		var NORMALIZE_NEWLINES_REGEX = /\r\n?/g;
5840		var NORMALIZE_NULL_AND_REPLACEMENT_REGEX = /\u0000|\uFFFD/g;
5841		function normalizeMarkupForTextOrAttribute(markup) {
5842			checkHtmlStringCoercion(markup);
5843			return (typeof markup === "string" ? markup : "" + markup).replace(NORMALIZE_NEWLINES_REGEX, "\n").replace(NORMALIZE_NULL_AND_REPLACEMENT_REGEX, "");
5844		}
5845		function checkForUnmatchedText(serverText, clientText, isConcurrentMode, shouldWarnDev) {
5846			var normalizedClientText = normalizeMarkupForTextOrAttribute(clientText);
5847			var normalizedServerText = normalizeMarkupForTextOrAttribute(serverText);
5848			if (normalizedServerText === normalizedClientText) return;
5849			if (shouldWarnDev) {
5850				if (!didWarnInvalidHydration) {
5851					didWarnInvalidHydration = true;
5852					error("Text content did not match. Server: \"%s\" Client: \"%s\"", normalizedServerText, normalizedClientText);
5853				}
5854			}
5855			if (isConcurrentMode && enableClientRenderFallbackOnTextMismatch) throw new Error("Text content does not match server-rendered HTML.");
5856		}
5857		function getOwnerDocumentFromRootContainer(rootContainerElement) {
5858			return rootContainerElement.nodeType === DOCUMENT_NODE ? rootContainerElement : rootContainerElement.ownerDocument;
5859		}
5860		function noop() {}
5861		function trapClickOnNonInteractiveElement(node) {
5862			node.onclick = noop;
5863		}
5864		function setInitialDOMProperties(tag, domElement, rootContainerElement, nextProps, isCustomComponentTag) {
5865			for (var propKey in nextProps) {
5866				if (!nextProps.hasOwnProperty(propKey)) continue;
5867				var nextProp = nextProps[propKey];
5868				if (propKey === STYLE) {
5869					if (nextProp) Object.freeze(nextProp);
5870					setValueForStyles(domElement, nextProp);
5871				} else if (propKey === DANGEROUSLY_SET_INNER_HTML) {
5872					var nextHtml = nextProp ? nextProp[HTML$1] : void 0;
5873					if (nextHtml != null) setInnerHTML(domElement, nextHtml);
5874				} else if (propKey === CHILDREN) {
5875					if (typeof nextProp === "string") {
5876						if (tag !== "textarea" || nextProp !== "") setTextContent(domElement, nextProp);
5877					} else if (typeof nextProp === "number") setTextContent(domElement, "" + nextProp);
5878				} else if (propKey === SUPPRESS_CONTENT_EDITABLE_WARNING || propKey === SUPPRESS_HYDRATION_WARNING);
5879				else if (propKey === AUTOFOCUS);
5880				else if (registrationNameDependencies.hasOwnProperty(propKey)) {
5881					if (nextProp != null) {
5882						if (typeof nextProp !== "function") warnForInvalidEventListener(propKey, nextProp);
5883						if (propKey === "onScroll") listenToNonDelegatedEvent("scroll", domElement);
5884					}
5885				} else if (nextProp != null) setValueForProperty(domElement, propKey, nextProp, isCustomComponentTag);
5886			}
5887		}
5888		function updateDOMProperties(domElement, updatePayload, wasCustomComponentTag, isCustomComponentTag) {
5889			for (var i = 0; i < updatePayload.length; i += 2) {
5890				var propKey = updatePayload[i];
5891				var propValue = updatePayload[i + 1];
5892				if (propKey === STYLE) setValueForStyles(domElement, propValue);
5893				else if (propKey === DANGEROUSLY_SET_INNER_HTML) setInnerHTML(domElement, propValue);
5894				else if (propKey === CHILDREN) setTextContent(domElement, propValue);
5895				else setValueForProperty(domElement, propKey, propValue, isCustomComponentTag);
5896			}
5897		}
5898		function createElement(type, props, rootContainerElement, parentNamespace) {
5899			var isCustomComponentTag;
5900			var ownerDocument = getOwnerDocumentFromRootContainer(rootContainerElement);
5901			var domElement;
5902			var namespaceURI = parentNamespace;
5903			if (namespaceURI === HTML_NAMESPACE) namespaceURI = getIntrinsicNamespace(type);
5904			if (namespaceURI === HTML_NAMESPACE) {
5905				isCustomComponentTag = isCustomComponent(type, props);
5906				if (!isCustomComponentTag && type !== type.toLowerCase()) error("<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.", type);
5907				if (type === "script") {
5908					var div = ownerDocument.createElement("div");
5909					div.innerHTML = "<script><\/script>";
5910					var firstChild = div.firstChild;
5911					domElement = div.removeChild(firstChild);
5912				} else if (typeof props.is === "string") domElement = ownerDocument.createElement(type, { is: props.is });
5913				else {
5914					domElement = ownerDocument.createElement(type);
5915					if (type === "select") {
5916						var node = domElement;
5917						if (props.multiple) node.multiple = true;
5918						else if (props.size) node.size = props.size;
5919					}
5920				}
5921			} else domElement = ownerDocument.createElementNS(namespaceURI, type);
5922			if (namespaceURI === HTML_NAMESPACE) {
5923				if (!isCustomComponentTag && Object.prototype.toString.call(domElement) === "[object HTMLUnknownElement]" && !hasOwnProperty.call(warnedUnknownTags, type)) {
5924					warnedUnknownTags[type] = true;
5925					error("The tag <%s> is unrecognized in this browser. If you meant to render a React component, start its name with an uppercase letter.", type);
5926				}
5927			}
5928			return domElement;
5929		}
5930		function createTextNode(text, rootContainerElement) {
5931			return getOwnerDocumentFromRootContainer(rootContainerElement).createTextNode(text);
5932		}
5933		function setInitialProperties(domElement, tag, rawProps, rootContainerElement) {
5934			var isCustomComponentTag = isCustomComponent(tag, rawProps);
5935			validatePropertiesInDevelopment(tag, rawProps);
5936			var props;
5937			switch (tag) {
5938				case "dialog":
5939					listenToNonDelegatedEvent("cancel", domElement);
5940					listenToNonDelegatedEvent("close", domElement);
5941					props = rawProps;
5942					break;
5943				case "iframe":
5944				case "object":
5945				case "embed":
5946					listenToNonDelegatedEvent("load", domElement);
5947					props = rawProps;
5948					break;
5949				case "video":
5950				case "audio":
5951					for (var i = 0; i < mediaEventTypes.length; i++) listenToNonDelegatedEvent(mediaEventTypes[i], domElement);
5952					props = rawProps;
5953					break;
5954				case "source":
5955					listenToNonDelegatedEvent("error", domElement);
5956					props = rawProps;
5957					break;
5958				case "img":
5959				case "image":
5960				case "link":
5961					listenToNonDelegatedEvent("error", domElement);
5962					listenToNonDelegatedEvent("load", domElement);
5963					props = rawProps;
5964					break;
5965				case "details":
5966					listenToNonDelegatedEvent("toggle", domElement);
5967					props = rawProps;
5968					break;
5969				case "input":
5970					initWrapperState(domElement, rawProps);
5971					props = getHostProps(domElement, rawProps);
5972					listenToNonDelegatedEvent("invalid", domElement);
5973					break;
5974				case "option":
5975					validateProps(domElement, rawProps);
5976					props = rawProps;
5977					break;
5978				case "select":
5979					initWrapperState$1(domElement, rawProps);
5980					props = getHostProps$1(domElement, rawProps);
5981					listenToNonDelegatedEvent("invalid", domElement);
5982					break;
5983				case "textarea":
5984					initWrapperState$2(domElement, rawProps);
5985					props = getHostProps$2(domElement, rawProps);
5986					listenToNonDelegatedEvent("invalid", domElement);
5987					break;
5988				default: props = rawProps;
5989			}
5990			assertValidProps(tag, props);
5991			setInitialDOMProperties(tag, domElement, rootContainerElement, props, isCustomComponentTag);
5992			switch (tag) {
5993				case "input":
5994					track(domElement);
5995					postMountWrapper(domElement, rawProps, false);
5996					break;
5997				case "textarea":
5998					track(domElement);
5999					postMountWrapper$3(domElement);
6000					break;
6001				case "option":
6002					postMountWrapper$1(domElement, rawProps);
6003					break;
6004				case "select":
6005					postMountWrapper$2(domElement, rawProps);
6006					break;
6007				default:
6008					if (typeof props.onClick === "function") trapClickOnNonInteractiveElement(domElement);
6009					break;
6010			}
6011		}
6012		function diffProperties(domElement, tag, lastRawProps, nextRawProps, rootContainerElement) {
6013			validatePropertiesInDevelopment(tag, nextRawProps);
6014			var updatePayload = null;
6015			var lastProps;
6016			var nextProps;
6017			switch (tag) {
6018				case "input":
6019					lastProps = getHostProps(domElement, lastRawProps);
6020					nextProps = getHostProps(domElement, nextRawProps);
6021					updatePayload = [];
6022					break;
6023				case "select":
6024					lastProps = getHostProps$1(domElement, lastRawProps);
6025					nextProps = getHostProps$1(domElement, nextRawProps);
6026					updatePayload = [];
6027					break;
6028				case "textarea":
6029					lastProps = getHostProps$2(domElement, lastRawProps);
6030					nextProps = getHostProps$2(domElement, nextRawProps);
6031					updatePayload = [];
6032					break;
6033				default:
6034					lastProps = lastRawProps;
6035					nextProps = nextRawProps;
6036					if (typeof lastProps.onClick !== "function" && typeof nextProps.onClick === "function") trapClickOnNonInteractiveElement(domElement);
6037					break;
6038			}
6039			assertValidProps(tag, nextProps);
6040			var propKey;
6041			var styleName;
6042			var styleUpdates = null;
6043			for (propKey in lastProps) {
6044				if (nextProps.hasOwnProperty(propKey) || !lastProps.hasOwnProperty(propKey) || lastProps[propKey] == null) continue;
6045				if (propKey === STYLE) {
6046					var lastStyle = lastProps[propKey];
6047					for (styleName in lastStyle) if (lastStyle.hasOwnProperty(styleName)) {
6048						if (!styleUpdates) styleUpdates = {};
6049						styleUpdates[styleName] = "";
6050					}
6051				} else if (propKey === DANGEROUSLY_SET_INNER_HTML || propKey === CHILDREN);
6052				else if (propKey === SUPPRESS_CONTENT_EDITABLE_WARNING || propKey === SUPPRESS_HYDRATION_WARNING);
6053				else if (propKey === AUTOFOCUS);
6054				else if (registrationNameDependencies.hasOwnProperty(propKey)) {
6055					if (!updatePayload) updatePayload = [];
6056				} else (updatePayload = updatePayload || []).push(propKey, null);
6057			}
6058			for (propKey in nextProps) {
6059				var nextProp = nextProps[propKey];
6060				var lastProp = lastProps != null ? lastProps[propKey] : void 0;
6061				if (!nextProps.hasOwnProperty(propKey) || nextProp === lastProp || nextProp == null && lastProp == null) continue;
6062				if (propKey === STYLE) {
6063					if (nextProp) Object.freeze(nextProp);
6064					if (lastProp) {
6065						for (styleName in lastProp) if (lastProp.hasOwnProperty(styleName) && (!nextProp || !nextProp.hasOwnProperty(styleName))) {
6066							if (!styleUpdates) styleUpdates = {};
6067							styleUpdates[styleName] = "";
6068						}
6069						for (styleName in nextProp) if (nextProp.hasOwnProperty(styleName) && lastProp[styleName] !== nextProp[styleName]) {
6070							if (!styleUpdates) styleUpdates = {};
6071							styleUpdates[styleName] = nextProp[styleName];
6072						}
6073					} else {
6074						if (!styleUpdates) {
6075							if (!updatePayload) updatePayload = [];
6076							updatePayload.push(propKey, styleUpdates);
6077						}
6078						styleUpdates = nextProp;
6079					}
6080				} else if (propKey === DANGEROUSLY_SET_INNER_HTML) {
6081					var nextHtml = nextProp ? nextProp[HTML$1] : void 0;
6082					var lastHtml = lastProp ? lastProp[HTML$1] : void 0;
6083					if (nextHtml != null) {
6084						if (lastHtml !== nextHtml) (updatePayload = updatePayload || []).push(propKey, nextHtml);
6085					}
6086				} else if (propKey === CHILDREN) {
6087					if (typeof nextProp === "string" || typeof nextProp === "number") (updatePayload = updatePayload || []).push(propKey, "" + nextProp);
6088				} else if (propKey === SUPPRESS_CONTENT_EDITABLE_WARNING || propKey === SUPPRESS_HYDRATION_WARNING);
6089				else if (registrationNameDependencies.hasOwnProperty(propKey)) {
6090					if (nextProp != null) {
6091						if (typeof nextProp !== "function") warnForInvalidEventListener(propKey, nextProp);
6092						if (propKey === "onScroll") listenToNonDelegatedEvent("scroll", domElement);
6093					}
6094					if (!updatePayload && lastProp !== nextProp) updatePayload = [];
6095				} else (updatePayload = updatePayload || []).push(propKey, nextProp);
6096			}
6097			if (styleUpdates) {
6098				validateShorthandPropertyCollisionInDev(styleUpdates, nextProps[STYLE]);
6099				(updatePayload = updatePayload || []).push(STYLE, styleUpdates);
6100			}
6101			return updatePayload;
6102		}
6103		function updateProperties(domElement, updatePayload, tag, lastRawProps, nextRawProps) {
6104			if (tag === "input" && nextRawProps.type === "radio" && nextRawProps.name != null) updateChecked(domElement, nextRawProps);
6105			updateDOMProperties(domElement, updatePayload, isCustomComponent(tag, lastRawProps), isCustomComponent(tag, nextRawProps));
6106			switch (tag) {
6107				case "input":
6108					updateWrapper(domElement, nextRawProps);
6109					break;
6110				case "textarea":
6111					updateWrapper$1(domElement, nextRawProps);
6112					break;
6113				case "select":
6114					postUpdateWrapper(domElement, nextRawProps);
6115					break;
6116			}
6117		}
6118		function getPossibleStandardName(propName) {
6119			var lowerCasedName = propName.toLowerCase();
6120			if (!possibleStandardNames.hasOwnProperty(lowerCasedName)) return null;
6121			return possibleStandardNames[lowerCasedName] || null;
6122		}
6123		function diffHydratedProperties(domElement, tag, rawProps, parentNamespace, rootContainerElement, isConcurrentMode, shouldWarnDev) {
6124			var isCustomComponentTag;
6125			var extraAttributeNames;
6126			isCustomComponentTag = isCustomComponent(tag, rawProps);
6127			validatePropertiesInDevelopment(tag, rawProps);
6128			switch (tag) {
6129				case "dialog":
6130					listenToNonDelegatedEvent("cancel", domElement);
6131					listenToNonDelegatedEvent("close", domElement);
6132					break;
6133				case "iframe":
6134				case "object":
6135				case "embed":
6136					listenToNonDelegatedEvent("load", domElement);
6137					break;
6138				case "video":
6139				case "audio":
6140					for (var i = 0; i < mediaEventTypes.length; i++) listenToNonDelegatedEvent(mediaEventTypes[i], domElement);
6141					break;
6142				case "source":
6143					listenToNonDelegatedEvent("error", domElement);
6144					break;
6145				case "img":
6146				case "image":
6147				case "link":
6148					listenToNonDelegatedEvent("error", domElement);
6149					listenToNonDelegatedEvent("load", domElement);
6150					break;
6151				case "details":
6152					listenToNonDelegatedEvent("toggle", domElement);
6153					break;
6154				case "input":
6155					initWrapperState(domElement, rawProps);
6156					listenToNonDelegatedEvent("invalid", domElement);
6157					break;
6158				case "option":
6159					validateProps(domElement, rawProps);
6160					break;
6161				case "select":
6162					initWrapperState$1(domElement, rawProps);
6163					listenToNonDelegatedEvent("invalid", domElement);
6164					break;
6165				case "textarea":
6166					initWrapperState$2(domElement, rawProps);
6167					listenToNonDelegatedEvent("invalid", domElement);
6168					break;
6169			}
6170			assertValidProps(tag, rawProps);
6171			extraAttributeNames = /* @__PURE__ */ new Set();
6172			var attributes = domElement.attributes;
6173			for (var _i = 0; _i < attributes.length; _i++) switch (attributes[_i].name.toLowerCase()) {
6174				case "value": break;
6175				case "checked": break;
6176				case "selected": break;
6177				default: extraAttributeNames.add(attributes[_i].name);
6178			}
6179			var updatePayload = null;
6180			for (var propKey in rawProps) {
6181				if (!rawProps.hasOwnProperty(propKey)) continue;
6182				var nextProp = rawProps[propKey];
6183				if (propKey === CHILDREN) {
6184					if (typeof nextProp === "string") {
6185						if (domElement.textContent !== nextProp) {
6186							if (rawProps[SUPPRESS_HYDRATION_WARNING] !== true) checkForUnmatchedText(domElement.textContent, nextProp, isConcurrentMode, shouldWarnDev);
6187							updatePayload = [CHILDREN, nextProp];
6188						}
6189					} else if (typeof nextProp === "number") {
6190						if (domElement.textContent !== "" + nextProp) {
6191							if (rawProps[SUPPRESS_HYDRATION_WARNING] !== true) checkForUnmatchedText(domElement.textContent, nextProp, isConcurrentMode, shouldWarnDev);
6192							updatePayload = [CHILDREN, "" + nextProp];
6193						}
6194					}
6195				} else if (registrationNameDependencies.hasOwnProperty(propKey)) {
6196					if (nextProp != null) {
6197						if (typeof nextProp !== "function") warnForInvalidEventListener(propKey, nextProp);
6198						if (propKey === "onScroll") listenToNonDelegatedEvent("scroll", domElement);
6199					}
6200				} else if (shouldWarnDev && typeof isCustomComponentTag === "boolean") {
6201					var serverValue = void 0;
6202					var propertyInfo = isCustomComponentTag && enableCustomElementPropertySupport ? null : getPropertyInfo(propKey);
6203					if (rawProps[SUPPRESS_HYDRATION_WARNING] === true);
6204					else if (propKey === SUPPRESS_CONTENT_EDITABLE_WARNING || propKey === SUPPRESS_HYDRATION_WARNING || propKey === "value" || propKey === "checked" || propKey === "selected");
6205					else if (propKey === DANGEROUSLY_SET_INNER_HTML) {
6206						var serverHTML = domElement.innerHTML;
6207						var nextHtml = nextProp ? nextProp[HTML$1] : void 0;
6208						if (nextHtml != null) {
6209							var expectedHTML = normalizeHTML(domElement, nextHtml);
6210							if (expectedHTML !== serverHTML) warnForPropDifference(propKey, serverHTML, expectedHTML);
6211						}
6212					} else if (propKey === STYLE) {
6213						extraAttributeNames.delete(propKey);
6214						if (canDiffStyleForHydrationWarning) {
6215							var expectedStyle = createDangerousStringForStyles(nextProp);
6216							serverValue = domElement.getAttribute("style");
6217							if (expectedStyle !== serverValue) warnForPropDifference(propKey, serverValue, expectedStyle);
6218						}
6219					} else if (isCustomComponentTag && !enableCustomElementPropertySupport) {
6220						extraAttributeNames.delete(propKey.toLowerCase());
6221						serverValue = getValueForAttribute(domElement, propKey, nextProp);
6222						if (nextProp !== serverValue) warnForPropDifference(propKey, serverValue, nextProp);
6223					} else if (!shouldIgnoreAttribute(propKey, propertyInfo, isCustomComponentTag) && !shouldRemoveAttribute(propKey, nextProp, propertyInfo, isCustomComponentTag)) {
6224						var isMismatchDueToBadCasing = false;
6225						if (propertyInfo !== null) {
6226							extraAttributeNames.delete(propertyInfo.attributeName);
6227							serverValue = getValueForProperty(domElement, propKey, nextProp, propertyInfo);
6228						} else {
6229							var ownNamespace = parentNamespace;
6230							if (ownNamespace === HTML_NAMESPACE) ownNamespace = getIntrinsicNamespace(tag);
6231							if (ownNamespace === HTML_NAMESPACE) extraAttributeNames.delete(propKey.toLowerCase());
6232							else {
6233								var standardName = getPossibleStandardName(propKey);
6234								if (standardName !== null && standardName !== propKey) {
6235									isMismatchDueToBadCasing = true;
6236									extraAttributeNames.delete(standardName);
6237								}
6238								extraAttributeNames.delete(propKey);
6239							}
6240							serverValue = getValueForAttribute(domElement, propKey, nextProp);
6241						}
6242						if (!enableCustomElementPropertySupport && nextProp !== serverValue && !isMismatchDueToBadCasing) warnForPropDifference(propKey, serverValue, nextProp);
6243					}
6244				}
6245			}
6246			if (shouldWarnDev) {
6247				if (extraAttributeNames.size > 0 && rawProps[SUPPRESS_HYDRATION_WARNING] !== true) warnForExtraAttributes(extraAttributeNames);
6248			}
6249			switch (tag) {
6250				case "input":
6251					track(domElement);
6252					postMountWrapper(domElement, rawProps, true);
6253					break;
6254				case "textarea":
6255					track(domElement);
6256					postMountWrapper$3(domElement);
6257					break;
6258				case "select":
6259				case "option": break;
6260				default:
6261					if (typeof rawProps.onClick === "function") trapClickOnNonInteractiveElement(domElement);
6262					break;
6263			}
6264			return updatePayload;
6265		}
6266		function diffHydratedText(textNode, text, isConcurrentMode) {
6267			return textNode.nodeValue !== text;
6268		}
6269		function warnForDeletedHydratableElement(parentNode, child) {
6270			if (didWarnInvalidHydration) return;
6271			didWarnInvalidHydration = true;
6272			error("Did not expect server HTML to contain a <%s> in <%s>.", child.nodeName.toLowerCase(), parentNode.nodeName.toLowerCase());
6273		}
6274		function warnForDeletedHydratableText(parentNode, child) {
6275			if (didWarnInvalidHydration) return;
6276			didWarnInvalidHydration = true;
6277			error("Did not expect server HTML to contain the text node \"%s\" in <%s>.", child.nodeValue, parentNode.nodeName.toLowerCase());
6278		}
6279		function warnForInsertedHydratedElement(parentNode, tag, props) {
6280			if (didWarnInvalidHydration) return;
6281			didWarnInvalidHydration = true;
6282			error("Expected server HTML to contain a matching <%s> in <%s>.", tag, parentNode.nodeName.toLowerCase());
6283		}
6284		function warnForInsertedHydratedText(parentNode, text) {
6285			if (text === "") return;
6286			if (didWarnInvalidHydration) return;
6287			didWarnInvalidHydration = true;
6288			error("Expected server HTML to contain a matching text node for \"%s\" in <%s>.", text, parentNode.nodeName.toLowerCase());
6289		}
6290		function restoreControlledState$3(domElement, tag, props) {
6291			switch (tag) {
6292				case "input":
6293					restoreControlledState(domElement, props);
6294					return;
6295				case "textarea":
6296					restoreControlledState$2(domElement, props);
6297					return;
6298				case "select":
6299					restoreControlledState$1(domElement, props);
6300					return;
6301			}
6302		}
6303		var validateDOMNesting = function() {};
6304		var updatedAncestorInfo = function() {};
6305		var specialTags = [
6306			"address",
6307			"applet",
6308			"area",
6309			"article",
6310			"aside",
6311			"base",
6312			"basefont",
6313			"bgsound",
6314			"blockquote",
6315			"body",
6316			"br",
6317			"button",
6318			"caption",
6319			"center",
6320			"col",
6321			"colgroup",
6322			"dd",
6323			"details",
6324			"dir",
6325			"div",
6326			"dl",
6327			"dt",
6328			"embed",
6329			"fieldset",
6330			"figcaption",
6331			"figure",
6332			"footer",
6333			"form",
6334			"frame",
6335			"frameset",
6336			"h1",
6337			"h2",
6338			"h3",
6339			"h4",
6340			"h5",
6341			"h6",
6342			"head",
6343			"header",
6344			"hgroup",
6345			"hr",
6346			"html",
6347			"iframe",
6348			"img",
6349			"input",
6350			"isindex",
6351			"li",
6352			"link",
6353			"listing",
6354			"main",
6355			"marquee",
6356			"menu",
6357			"menuitem",
6358			"meta",
6359			"nav",
6360			"noembed",
6361			"noframes",
6362			"noscript",
6363			"object",
6364			"ol",
6365			"p",
6366			"param",
6367			"plaintext",
6368			"pre",
6369			"script",
6370			"section",
6371			"select",
6372			"source",
6373			"style",
6374			"summary",
6375			"table",
6376			"tbody",
6377			"td",
6378			"template",
6379			"textarea",
6380			"tfoot",
6381			"th",
6382			"thead",
6383			"title",
6384			"tr",
6385			"track",
6386			"ul",
6387			"wbr",
6388			"xmp"
6389		];
6390		var inScopeTags = [
6391			"applet",
6392			"caption",
6393			"html",
6394			"table",
6395			"td",
6396			"th",
6397			"marquee",
6398			"object",
6399			"template",
6400			"foreignObject",
6401			"desc",
6402			"title"
6403		];
6404		var buttonScopeTags = inScopeTags.concat(["button"]);
6405		var impliedEndTags = [
6406			"dd",
6407			"dt",
6408			"li",
6409			"option",
6410			"optgroup",
6411			"p",
6412			"rp",
6413			"rt"
6414		];
6415		var emptyAncestorInfo = {
6416			current: null,
6417			formTag: null,
6418			aTagInScope: null,
6419			buttonTagInScope: null,
6420			nobrTagInScope: null,
6421			pTagInButtonScope: null,
6422			listItemTagAutoclosing: null,
6423			dlItemTagAutoclosing: null
6424		};
6425		updatedAncestorInfo = function(oldInfo, tag) {
6426			var ancestorInfo = assign({}, oldInfo || emptyAncestorInfo);
6427			var info = { tag };
6428			if (inScopeTags.indexOf(tag) !== -1) {
6429				ancestorInfo.aTagInScope = null;
6430				ancestorInfo.buttonTagInScope = null;
6431				ancestorInfo.nobrTagInScope = null;
6432			}
6433			if (buttonScopeTags.indexOf(tag) !== -1) ancestorInfo.pTagInButtonScope = null;
6434			if (specialTags.indexOf(tag) !== -1 && tag !== "address" && tag !== "div" && tag !== "p") {
6435				ancestorInfo.listItemTagAutoclosing = null;
6436				ancestorInfo.dlItemTagAutoclosing = null;
6437			}
6438			ancestorInfo.current = info;
6439			if (tag === "form") ancestorInfo.formTag = info;
6440			if (tag === "a") ancestorInfo.aTagInScope = info;
6441			if (tag === "button") ancestorInfo.buttonTagInScope = info;
6442			if (tag === "nobr") ancestorInfo.nobrTagInScope = info;
6443			if (tag === "p") ancestorInfo.pTagInButtonScope = info;
6444			if (tag === "li") ancestorInfo.listItemTagAutoclosing = info;
6445			if (tag === "dd" || tag === "dt") ancestorInfo.dlItemTagAutoclosing = info;
6446			return ancestorInfo;
6447		};
6448		var isTagValidWithParent = function(tag, parentTag) {
6449			switch (parentTag) {
6450				case "select": return tag === "option" || tag === "optgroup" || tag === "#text";
6451				case "optgroup": return tag === "option" || tag === "#text";
6452				case "option": return tag === "#text";
6453				case "tr": return tag === "th" || tag === "td" || tag === "style" || tag === "script" || tag === "template";
6454				case "tbody":
6455				case "thead":
6456				case "tfoot": return tag === "tr" || tag === "style" || tag === "script" || tag === "template";
6457				case "colgroup": return tag === "col" || tag === "template";
6458				case "table": return tag === "caption" || tag === "colgroup" || tag === "tbody" || tag === "tfoot" || tag === "thead" || tag === "style" || tag === "script" || tag === "template";
6459				case "head": return tag === "base" || tag === "basefont" || tag === "bgsound" || tag === "link" || tag === "meta" || tag === "title" || tag === "noscript" || tag === "noframes" || tag === "style" || tag === "script" || tag === "template";
6460				case "html": return tag === "head" || tag === "body" || tag === "frameset";
6461				case "frameset": return tag === "frame";
6462				case "#document": return tag === "html";
6463			}
6464			switch (tag) {
6465				case "h1":
6466				case "h2":
6467				case "h3":
6468				case "h4":
6469				case "h5":
6470				case "h6": return parentTag !== "h1" && parentTag !== "h2" && parentTag !== "h3" && parentTag !== "h4" && parentTag !== "h5" && parentTag !== "h6";
6471				case "rp":
6472				case "rt": return impliedEndTags.indexOf(parentTag) === -1;
6473				case "body":
6474				case "caption":
6475				case "col":
6476				case "colgroup":
6477				case "frameset":
6478				case "frame":
6479				case "head":
6480				case "html":
6481				case "tbody":
6482				case "td":
6483				case "tfoot":
6484				case "th":
6485				case "thead":
6486				case "tr": return parentTag == null;
6487			}
6488			return true;
6489		};
6490		var findInvalidAncestorForTag = function(tag, ancestorInfo) {
6491			switch (tag) {
6492				case "address":
6493				case "article":
6494				case "aside":
6495				case "blockquote":
6496				case "center":
6497				case "details":
6498				case "dialog":
6499				case "dir":
6500				case "div":
6501				case "dl":
6502				case "fieldset":
6503				case "figcaption":
6504				case "figure":
6505				case "footer":
6506				case "header":
6507				case "hgroup":
6508				case "main":
6509				case "menu":
6510				case "nav":
6511				case "ol":
6512				case "p":
6513				case "section":
6514				case "summary":
6515				case "ul":
6516				case "pre":
6517				case "listing":
6518				case "table":
6519				case "hr":
6520				case "xmp":
6521				case "h1":
6522				case "h2":
6523				case "h3":
6524				case "h4":
6525				case "h5":
6526				case "h6": return ancestorInfo.pTagInButtonScope;
6527				case "form": return ancestorInfo.formTag || ancestorInfo.pTagInButtonScope;
6528				case "li": return ancestorInfo.listItemTagAutoclosing;
6529				case "dd":
6530				case "dt": return ancestorInfo.dlItemTagAutoclosing;
6531				case "button": return ancestorInfo.buttonTagInScope;
6532				case "a": return ancestorInfo.aTagInScope;
6533				case "nobr": return ancestorInfo.nobrTagInScope;
6534			}
6535			return null;
6536		};
6537		var didWarn$1 = {};
6538		validateDOMNesting = function(childTag, childText, ancestorInfo) {
6539			ancestorInfo = ancestorInfo || emptyAncestorInfo;
6540			var parentInfo = ancestorInfo.current;
6541			var parentTag = parentInfo && parentInfo.tag;
6542			if (childText != null) {
6543				if (childTag != null) error("validateDOMNesting: when childText is passed, childTag should be null");
6544				childTag = "#text";
6545			}
6546			var invalidParent = isTagValidWithParent(childTag, parentTag) ? null : parentInfo;
6547			var invalidAncestor = invalidParent ? null : findInvalidAncestorForTag(childTag, ancestorInfo);
6548			var invalidParentOrAncestor = invalidParent || invalidAncestor;
6549			if (!invalidParentOrAncestor) return;
6550			var ancestorTag = invalidParentOrAncestor.tag;
6551			var warnKey = !!invalidParent + "|" + childTag + "|" + ancestorTag;
6552			if (didWarn$1[warnKey]) return;
6553			didWarn$1[warnKey] = true;
6554			var tagDisplayName = childTag;
6555			var whitespaceInfo = "";
6556			if (childTag === "#text") if (/\S/.test(childText)) tagDisplayName = "Text nodes";
6557			else {
6558				tagDisplayName = "Whitespace text nodes";
6559				whitespaceInfo = " Make sure you don't have any extra whitespace between tags on each line of your source code.";
6560			}
6561			else tagDisplayName = "<" + childTag + ">";
6562			if (invalidParent) {
6563				var info = "";
6564				if (ancestorTag === "table" && childTag === "tr") info += " Add a <tbody>, <thead> or <tfoot> to your code to match the DOM tree generated by the browser.";
6565				error("validateDOMNesting(...): %s cannot appear as a child of <%s>.%s%s", tagDisplayName, ancestorTag, whitespaceInfo, info);
6566			} else error("validateDOMNesting(...): %s cannot appear as a descendant of <%s>.", tagDisplayName, ancestorTag);
6567		};
6568		var SUPPRESS_HYDRATION_WARNING$1 = "suppressHydrationWarning";
6569		var SUSPENSE_START_DATA = "$";
6570		var SUSPENSE_END_DATA = "/$";
6571		var SUSPENSE_PENDING_START_DATA = "$?";
6572		var SUSPENSE_FALLBACK_START_DATA = "$!";
6573		var STYLE$1 = "style";
6574		var eventsEnabled = null;
6575		var selectionInformation = null;
6576		function getRootHostContext(rootContainerInstance) {
6577			var type;
6578			var namespace;
6579			var nodeType = rootContainerInstance.nodeType;
6580			switch (nodeType) {
6581				case DOCUMENT_NODE:
6582				case DOCUMENT_FRAGMENT_NODE:
6583					type = nodeType === DOCUMENT_NODE ? "#document" : "#fragment";
6584					var root$1 = rootContainerInstance.documentElement;
6585					namespace = root$1 ? root$1.namespaceURI : getChildNamespace(null, "");
6586					break;
6587				default:
6588					var container = nodeType === COMMENT_NODE ? rootContainerInstance.parentNode : rootContainerInstance;
6589					var ownNamespace = container.namespaceURI || null;
6590					type = container.tagName;
6591					namespace = getChildNamespace(ownNamespace, type);
6592					break;
6593			}
6594			var validatedTag = type.toLowerCase();
6595			var ancestorInfo = updatedAncestorInfo(null, validatedTag);
6596			return {
6597				namespace,
6598				ancestorInfo
6599			};
6600		}
6601		function getChildHostContext(parentHostContext, type, rootContainerInstance) {
6602			var parentHostContextDev = parentHostContext;
6603			return {
6604				namespace: getChildNamespace(parentHostContextDev.namespace, type),
6605				ancestorInfo: updatedAncestorInfo(parentHostContextDev.ancestorInfo, type)
6606			};
6607		}
6608		function getPublicInstance(instance) {
6609			return instance;
6610		}
6611		function prepareForCommit(containerInfo) {
6612			eventsEnabled = isEnabled();
6613			selectionInformation = getSelectionInformation();
6614			var activeInstance = null;
6615			setEnabled(false);
6616			return activeInstance;
6617		}
6618		function resetAfterCommit(containerInfo) {
6619			restoreSelection(selectionInformation);
6620			setEnabled(eventsEnabled);
6621			eventsEnabled = null;
6622			selectionInformation = null;
6623		}
6624		function createInstance(type, props, rootContainerInstance, hostContext, internalInstanceHandle) {
6625			var parentNamespace;
6626			var hostContextDev = hostContext;
6627			validateDOMNesting(type, null, hostContextDev.ancestorInfo);
6628			if (typeof props.children === "string" || typeof props.children === "number") {
6629				var string = "" + props.children;
6630				var ownAncestorInfo = updatedAncestorInfo(hostContextDev.ancestorInfo, type);
6631				validateDOMNesting(null, string, ownAncestorInfo);
6632			}
6633			parentNamespace = hostContextDev.namespace;
6634			var domElement = createElement(type, props, rootContainerInstance, parentNamespace);
6635			precacheFiberNode(internalInstanceHandle, domElement);
6636			updateFiberProps(domElement, props);
6637			return domElement;
6638		}
6639		function appendInitialChild(parentInstance, child) {
6640			parentInstance.appendChild(child);
6641		}
6642		function finalizeInitialChildren(domElement, type, props, rootContainerInstance, hostContext) {
6643			setInitialProperties(domElement, type, props, rootContainerInstance);
6644			switch (type) {
6645				case "button":
6646				case "input":
6647				case "select":
6648				case "textarea": return !!props.autoFocus;
6649				case "img": return true;
6650				default: return false;
6651			}
6652		}
6653		function prepareUpdate(domElement, type, oldProps, newProps, rootContainerInstance, hostContext) {
6654			var hostContextDev = hostContext;
6655			if (typeof newProps.children !== typeof oldProps.children && (typeof newProps.children === "string" || typeof newProps.children === "number")) {
6656				var string = "" + newProps.children;
6657				var ownAncestorInfo = updatedAncestorInfo(hostContextDev.ancestorInfo, type);
6658				validateDOMNesting(null, string, ownAncestorInfo);
6659			}
6660			return diffProperties(domElement, type, oldProps, newProps);
6661		}
6662		function shouldSetTextContent(type, props) {
6663			return type === "textarea" || type === "noscript" || typeof props.children === "string" || typeof props.children === "number" || typeof props.dangerouslySetInnerHTML === "object" && props.dangerouslySetInnerHTML !== null && props.dangerouslySetInnerHTML.__html != null;
6664		}
6665		function createTextInstance(text, rootContainerInstance, hostContext, internalInstanceHandle) {
6666			validateDOMNesting(null, text, hostContext.ancestorInfo);
6667			var textNode = createTextNode(text, rootContainerInstance);
6668			precacheFiberNode(internalInstanceHandle, textNode);
6669			return textNode;
6670		}
6671		function getCurrentEventPriority() {
6672			var currentEvent = window.event;
6673			if (currentEvent === void 0) return DefaultEventPriority;
6674			return getEventPriority(currentEvent.type);
6675		}
6676		var scheduleTimeout = typeof setTimeout === "function" ? setTimeout : void 0;
6677		var cancelTimeout = typeof clearTimeout === "function" ? clearTimeout : void 0;
6678		var noTimeout = -1;
6679		var localPromise = typeof Promise === "function" ? Promise : void 0;
6680		var scheduleMicrotask = typeof queueMicrotask === "function" ? queueMicrotask : typeof localPromise !== "undefined" ? function(callback) {
6681			return localPromise.resolve(null).then(callback).catch(handleErrorInNextTick);
6682		} : scheduleTimeout;
6683		function handleErrorInNextTick(error$1) {
6684			setTimeout(function() {
6685				throw error$1;
6686			});
6687		}
6688		function commitMount(domElement, type, newProps, internalInstanceHandle) {
6689			switch (type) {
6690				case "button":
6691				case "input":
6692				case "select":
6693				case "textarea":
6694					if (newProps.autoFocus) domElement.focus();
6695					return;
6696				case "img":
6697					if (newProps.src) domElement.src = newProps.src;
6698					return;
6699			}
6700		}
6701		function commitUpdate(domElement, updatePayload, type, oldProps, newProps, internalInstanceHandle) {
6702			updateProperties(domElement, updatePayload, type, oldProps, newProps);
6703			updateFiberProps(domElement, newProps);
6704		}
6705		function resetTextContent(domElement) {
6706			setTextContent(domElement, "");
6707		}
6708		function commitTextUpdate(textInstance, oldText, newText) {
6709			textInstance.nodeValue = newText;
6710		}
6711		function appendChild(parentInstance, child) {
6712			parentInstance.appendChild(child);
6713		}
6714		function appendChildToContainer(container, child) {
6715			var parentNode;
6716			if (container.nodeType === COMMENT_NODE) {
6717				parentNode = container.parentNode;
6718				parentNode.insertBefore(child, container);
6719			} else {
6720				parentNode = container;
6721				parentNode.appendChild(child);
6722			}
6723			var reactRootContainer = container._reactRootContainer;
6724			if ((reactRootContainer === null || reactRootContainer === void 0) && parentNode.onclick === null) trapClickOnNonInteractiveElement(parentNode);
6725		}
6726		function insertBefore(parentInstance, child, beforeChild) {
6727			parentInstance.insertBefore(child, beforeChild);
6728		}
6729		function insertInContainerBefore(container, child, beforeChild) {
6730			if (container.nodeType === COMMENT_NODE) container.parentNode.insertBefore(child, beforeChild);
6731			else container.insertBefore(child, beforeChild);
6732		}
6733		function removeChild(parentInstance, child) {
6734			parentInstance.removeChild(child);
6735		}
6736		function removeChildFromContainer(container, child) {
6737			if (container.nodeType === COMMENT_NODE) container.parentNode.removeChild(child);
6738			else container.removeChild(child);
6739		}
6740		function clearSuspenseBoundary(parentInstance, suspenseInstance) {
6741			var node = suspenseInstance;
6742			var depth = 0;
6743			do {
6744				var nextNode = node.nextSibling;
6745				parentInstance.removeChild(node);
6746				if (nextNode && nextNode.nodeType === COMMENT_NODE) {
6747					var data = nextNode.data;
6748					if (data === SUSPENSE_END_DATA) if (depth === 0) {
6749						parentInstance.removeChild(nextNode);
6750						retryIfBlockedOn(suspenseInstance);
6751						return;
6752					} else depth--;
6753					else if (data === SUSPENSE_START_DATA || data === SUSPENSE_PENDING_START_DATA || data === SUSPENSE_FALLBACK_START_DATA) depth++;
6754				}
6755				node = nextNode;
6756			} while (node);
6757			retryIfBlockedOn(suspenseInstance);
6758		}
6759		function clearSuspenseBoundaryFromContainer(container, suspenseInstance) {
6760			if (container.nodeType === COMMENT_NODE) clearSuspenseBoundary(container.parentNode, suspenseInstance);
6761			else if (container.nodeType === ELEMENT_NODE) clearSuspenseBoundary(container, suspenseInstance);
6762			retryIfBlockedOn(container);
6763		}
6764		function hideInstance(instance) {
6765			instance = instance;
6766			var style$1 = instance.style;
6767			if (typeof style$1.setProperty === "function") style$1.setProperty("display", "none", "important");
6768			else style$1.display = "none";
6769		}
6770		function hideTextInstance(textInstance) {
6771			textInstance.nodeValue = "";
6772		}
6773		function unhideInstance(instance, props) {
6774			instance = instance;
6775			var styleProp = props[STYLE$1];
6776			var display = styleProp !== void 0 && styleProp !== null && styleProp.hasOwnProperty("display") ? styleProp.display : null;
6777			instance.style.display = dangerousStyleValue("display", display);
6778		}
6779		function unhideTextInstance(textInstance, text) {
6780			textInstance.nodeValue = text;
6781		}
6782		function clearContainer(container) {
6783			if (container.nodeType === ELEMENT_NODE) container.textContent = "";
6784			else if (container.nodeType === DOCUMENT_NODE) {
6785				if (container.documentElement) container.removeChild(container.documentElement);
6786			}
6787		}
6788		function canHydrateInstance(instance, type, props) {
6789			if (instance.nodeType !== ELEMENT_NODE || type.toLowerCase() !== instance.nodeName.toLowerCase()) return null;
6790			return instance;
6791		}
6792		function canHydrateTextInstance(instance, text) {
6793			if (text === "" || instance.nodeType !== TEXT_NODE) return null;
6794			return instance;
6795		}
6796		function canHydrateSuspenseInstance(instance) {
6797			if (instance.nodeType !== COMMENT_NODE) return null;
6798			return instance;
6799		}
6800		function isSuspenseInstancePending(instance) {
6801			return instance.data === SUSPENSE_PENDING_START_DATA;
6802		}
6803		function isSuspenseInstanceFallback(instance) {
6804			return instance.data === SUSPENSE_FALLBACK_START_DATA;
6805		}
6806		function getSuspenseInstanceFallbackErrorDetails(instance) {
6807			var dataset = instance.nextSibling && instance.nextSibling.dataset;
6808			var digest, message, stack;
6809			if (dataset) {
6810				digest = dataset.dgst;
6811				message = dataset.msg;
6812				stack = dataset.stck;
6813			}
6814			return {
6815				message,
6816				digest,
6817				stack
6818			};
6819		}
6820		function registerSuspenseInstanceRetry(instance, callback) {
6821			instance._reactRetry = callback;
6822		}
6823		function getNextHydratable(node) {
6824			for (; node != null; node = node.nextSibling) {
6825				var nodeType = node.nodeType;
6826				if (nodeType === ELEMENT_NODE || nodeType === TEXT_NODE) break;
6827				if (nodeType === COMMENT_NODE) {
6828					var nodeData = node.data;
6829					if (nodeData === SUSPENSE_START_DATA || nodeData === SUSPENSE_FALLBACK_START_DATA || nodeData === SUSPENSE_PENDING_START_DATA) break;
6830					if (nodeData === SUSPENSE_END_DATA) return null;
6831				}
6832			}
6833			return node;
6834		}
6835		function getNextHydratableSibling(instance) {
6836			return getNextHydratable(instance.nextSibling);
6837		}
6838		function getFirstHydratableChild(parentInstance) {
6839			return getNextHydratable(parentInstance.firstChild);
6840		}
6841		function getFirstHydratableChildWithinContainer(parentContainer) {
6842			return getNextHydratable(parentContainer.firstChild);
6843		}
6844		function getFirstHydratableChildWithinSuspenseInstance(parentInstance) {
6845			return getNextHydratable(parentInstance.nextSibling);
6846		}
6847		function hydrateInstance(instance, type, props, rootContainerInstance, hostContext, internalInstanceHandle, shouldWarnDev) {
6848			precacheFiberNode(internalInstanceHandle, instance);
6849			updateFiberProps(instance, props);
6850			var parentNamespace = hostContext.namespace;
6851			return diffHydratedProperties(instance, type, props, parentNamespace, rootContainerInstance, (internalInstanceHandle.mode & ConcurrentMode) !== NoMode, shouldWarnDev);
6852		}
6853		function hydrateTextInstance(textInstance, text, internalInstanceHandle, shouldWarnDev) {
6854			precacheFiberNode(internalInstanceHandle, textInstance);
6855			internalInstanceHandle.mode & ConcurrentMode;
6856			return diffHydratedText(textInstance, text);
6857		}
6858		function hydrateSuspenseInstance(suspenseInstance, internalInstanceHandle) {
6859			precacheFiberNode(internalInstanceHandle, suspenseInstance);
6860		}
6861		function getNextHydratableInstanceAfterSuspenseInstance(suspenseInstance) {
6862			var node = suspenseInstance.nextSibling;
6863			var depth = 0;
6864			while (node) {
6865				if (node.nodeType === COMMENT_NODE) {
6866					var data = node.data;
6867					if (data === SUSPENSE_END_DATA) if (depth === 0) return getNextHydratableSibling(node);
6868					else depth--;
6869					else if (data === SUSPENSE_START_DATA || data === SUSPENSE_FALLBACK_START_DATA || data === SUSPENSE_PENDING_START_DATA) depth++;
6870				}
6871				node = node.nextSibling;
6872			}
6873			return null;
6874		}
6875		function getParentSuspenseInstance(targetInstance) {
6876			var node = targetInstance.previousSibling;
6877			var depth = 0;
6878			while (node) {
6879				if (node.nodeType === COMMENT_NODE) {
6880					var data = node.data;
6881					if (data === SUSPENSE_START_DATA || data === SUSPENSE_FALLBACK_START_DATA || data === SUSPENSE_PENDING_START_DATA) if (depth === 0) return node;
6882					else depth--;
6883					else if (data === SUSPENSE_END_DATA) depth++;
6884				}
6885				node = node.previousSibling;
6886			}
6887			return null;
6888		}
6889		function commitHydratedContainer(container) {
6890			retryIfBlockedOn(container);
6891		}
6892		function commitHydratedSuspenseInstance(suspenseInstance) {
6893			retryIfBlockedOn(suspenseInstance);
6894		}
6895		function shouldDeleteUnhydratedTailInstances(parentType) {
6896			return parentType !== "head" && parentType !== "body";
6897		}
6898		function didNotMatchHydratedContainerTextInstance(parentContainer, textInstance, text, isConcurrentMode) {
6899			checkForUnmatchedText(textInstance.nodeValue, text, isConcurrentMode, true);
6900		}
6901		function didNotMatchHydratedTextInstance(parentType, parentProps, parentInstance, textInstance, text, isConcurrentMode) {
6902			if (parentProps[SUPPRESS_HYDRATION_WARNING$1] !== true) checkForUnmatchedText(textInstance.nodeValue, text, isConcurrentMode, true);
6903		}
6904		function didNotHydrateInstanceWithinContainer(parentContainer, instance) {
6905			if (instance.nodeType === ELEMENT_NODE) warnForDeletedHydratableElement(parentContainer, instance);
6906			else if (instance.nodeType === COMMENT_NODE);
6907			else warnForDeletedHydratableText(parentContainer, instance);
6908		}
6909		function didNotHydrateInstanceWithinSuspenseInstance(parentInstance, instance) {
6910			var parentNode = parentInstance.parentNode;
6911			if (parentNode !== null) if (instance.nodeType === ELEMENT_NODE) warnForDeletedHydratableElement(parentNode, instance);
6912			else if (instance.nodeType === COMMENT_NODE);
6913			else warnForDeletedHydratableText(parentNode, instance);
6914		}
6915		function didNotHydrateInstance(parentType, parentProps, parentInstance, instance, isConcurrentMode) {
6916			if (isConcurrentMode || parentProps[SUPPRESS_HYDRATION_WARNING$1] !== true) if (instance.nodeType === ELEMENT_NODE) warnForDeletedHydratableElement(parentInstance, instance);
6917			else if (instance.nodeType === COMMENT_NODE);
6918			else warnForDeletedHydratableText(parentInstance, instance);
6919		}
6920		function didNotFindHydratableInstanceWithinContainer(parentContainer, type, props) {
6921			warnForInsertedHydratedElement(parentContainer, type);
6922		}
6923		function didNotFindHydratableTextInstanceWithinContainer(parentContainer, text) {
6924			warnForInsertedHydratedText(parentContainer, text);
6925		}
6926		function didNotFindHydratableInstanceWithinSuspenseInstance(parentInstance, type, props) {
6927			var parentNode = parentInstance.parentNode;
6928			if (parentNode !== null) warnForInsertedHydratedElement(parentNode, type);
6929		}
6930		function didNotFindHydratableTextInstanceWithinSuspenseInstance(parentInstance, text) {
6931			var parentNode = parentInstance.parentNode;
6932			if (parentNode !== null) warnForInsertedHydratedText(parentNode, text);
6933		}
6934		function didNotFindHydratableInstance(parentType, parentProps, parentInstance, type, props, isConcurrentMode) {
6935			if (isConcurrentMode || parentProps[SUPPRESS_HYDRATION_WARNING$1] !== true) warnForInsertedHydratedElement(parentInstance, type);
6936		}
6937		function didNotFindHydratableTextInstance(parentType, parentProps, parentInstance, text, isConcurrentMode) {
6938			if (isConcurrentMode || parentProps[SUPPRESS_HYDRATION_WARNING$1] !== true) warnForInsertedHydratedText(parentInstance, text);
6939		}
6940		function errorHydratingContainer(parentContainer) {
6941			error("An error occurred during hydration. The server HTML was replaced with client content in <%s>.", parentContainer.nodeName.toLowerCase());
6942		}
6943		function preparePortalMount(portalInstance) {
6944			listenToAllSupportedEvents(portalInstance);
6945		}
6946		var randomKey = Math.random().toString(36).slice(2);
6947		var internalInstanceKey = "__reactFiber$" + randomKey;
6948		var internalPropsKey = "__reactProps$" + randomKey;
6949		var internalContainerInstanceKey = "__reactContainer$" + randomKey;
6950		var internalEventHandlersKey = "__reactEvents$" + randomKey;
6951		var internalEventHandlerListenersKey = "__reactListeners$" + randomKey;
6952		var internalEventHandlesSetKey = "__reactHandles$" + randomKey;
6953		function detachDeletedInstance(node) {
6954			delete node[internalInstanceKey];
6955			delete node[internalPropsKey];
6956			delete node[internalEventHandlersKey];
6957			delete node[internalEventHandlerListenersKey];
6958			delete node[internalEventHandlesSetKey];
6959		}
6960		function precacheFiberNode(hostInst, node) {
6961			node[internalInstanceKey] = hostInst;
6962		}
6963		function markContainerAsRoot(hostRoot, node) {
6964			node[internalContainerInstanceKey] = hostRoot;
6965		}
6966		function unmarkContainerAsRoot(node) {
6967			node[internalContainerInstanceKey] = null;
6968		}
6969		function isContainerMarkedAsRoot(node) {
6970			return !!node[internalContainerInstanceKey];
6971		}
6972		function getClosestInstanceFromNode(targetNode) {
6973			var targetInst = targetNode[internalInstanceKey];
6974			if (targetInst) return targetInst;
6975			var parentNode = targetNode.parentNode;
6976			while (parentNode) {
6977				targetInst = parentNode[internalContainerInstanceKey] || parentNode[internalInstanceKey];
6978				if (targetInst) {
6979					var alternate = targetInst.alternate;
6980					if (targetInst.child !== null || alternate !== null && alternate.child !== null) {
6981						var suspenseInstance = getParentSuspenseInstance(targetNode);
6982						while (suspenseInstance !== null) {
6983							var targetSuspenseInst = suspenseInstance[internalInstanceKey];
6984							if (targetSuspenseInst) return targetSuspenseInst;
6985							suspenseInstance = getParentSuspenseInstance(suspenseInstance);
6986						}
6987					}
6988					return targetInst;
6989				}
6990				targetNode = parentNode;
6991				parentNode = targetNode.parentNode;
6992			}
6993			return null;
6994		}
6995		function getInstanceFromNode(node) {
6996			var inst = node[internalInstanceKey] || node[internalContainerInstanceKey];
6997			if (inst) if (inst.tag === HostComponent || inst.tag === HostText || inst.tag === SuspenseComponent || inst.tag === HostRoot) return inst;
6998			else return null;
6999			return null;
7000		}
7001		function getNodeFromInstance(inst) {
7002			if (inst.tag === HostComponent || inst.tag === HostText) return inst.stateNode;
7003			throw new Error("getNodeFromInstance: Invalid argument.");
7004		}
7005		function getFiberCurrentPropsFromNode(node) {
7006			return node[internalPropsKey] || null;
7007		}
7008		function updateFiberProps(node, props) {
7009			node[internalPropsKey] = props;
7010		}
7011		function getEventListenerSet(node) {
7012			var elementListenerSet = node[internalEventHandlersKey];
7013			if (elementListenerSet === void 0) elementListenerSet = node[internalEventHandlersKey] = /* @__PURE__ */ new Set();
7014			return elementListenerSet;
7015		}
7016		var loggedTypeFailures = {};
7017		var ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;
7018		function setCurrentlyValidatingElement(element) {
7019			if (element) {
7020				var owner = element._owner;
7021				var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);
7022				ReactDebugCurrentFrame$1.setExtraStackFrame(stack);
7023			} else ReactDebugCurrentFrame$1.setExtraStackFrame(null);
7024		}
7025		function checkPropTypes(typeSpecs, values, location, componentName, element) {
7026			var has$1 = Function.call.bind(hasOwnProperty);
7027			for (var typeSpecName in typeSpecs) if (has$1(typeSpecs, typeSpecName)) {
7028				var error$1 = void 0;
7029				try {
7030					if (typeof typeSpecs[typeSpecName] !== "function") {
7031						var err = Error((componentName || "React class") + ": " + location + " type `" + typeSpecName + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof typeSpecs[typeSpecName] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
7032						err.name = "Invariant Violation";
7033						throw err;
7034					}
7035					error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
7036				} catch (ex) {
7037					error$1 = ex;
7038				}
7039				if (error$1 && !(error$1 instanceof Error)) {
7040					setCurrentlyValidatingElement(element);
7041					error("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).", componentName || "React class", location, typeSpecName, typeof error$1);
7042					setCurrentlyValidatingElement(null);
7043				}
7044				if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {
7045					loggedTypeFailures[error$1.message] = true;
7046					setCurrentlyValidatingElement(element);
7047					error("Failed %s type: %s", location, error$1.message);
7048					setCurrentlyValidatingElement(null);
7049				}
7050			}
7051		}
7052		var valueStack = [];
7053		var fiberStack = [];
7054		var index = -1;
7055		function createCursor(defaultValue) {
7056			return { current: defaultValue };
7057		}
7058		function pop(cursor, fiber) {
7059			if (index < 0) {
7060				error("Unexpected pop.");
7061				return;
7062			}
7063			if (fiber !== fiberStack[index]) error("Unexpected Fiber popped.");
7064			cursor.current = valueStack[index];
7065			valueStack[index] = null;
7066			fiberStack[index] = null;
7067			index--;
7068		}
7069		function push(cursor, value, fiber) {
7070			index++;
7071			valueStack[index] = cursor.current;
7072			fiberStack[index] = fiber;
7073			cursor.current = value;
7074		}
7075		var warnedAboutMissingGetChildContext = {};
7076		var emptyContextObject = {};
7077		Object.freeze(emptyContextObject);
7078		var contextStackCursor = createCursor(emptyContextObject);
7079		var didPerformWorkStackCursor = createCursor(false);
7080		var previousContext = emptyContextObject;
7081		function getUnmaskedContext(workInProgress$1, Component, didPushOwnContextIfProvider) {
7082			if (didPushOwnContextIfProvider && isContextProvider(Component)) return previousContext;
7083			return contextStackCursor.current;
7084		}
7085		function cacheContext(workInProgress$1, unmaskedContext, maskedContext) {
7086			var instance = workInProgress$1.stateNode;
7087			instance.__reactInternalMemoizedUnmaskedChildContext = unmaskedContext;
7088			instance.__reactInternalMemoizedMaskedChildContext = maskedContext;
7089		}
7090		function getMaskedContext(workInProgress$1, unmaskedContext) {
7091			var contextTypes = workInProgress$1.type.contextTypes;
7092			if (!contextTypes) return emptyContextObject;
7093			var instance = workInProgress$1.stateNode;
7094			if (instance && instance.__reactInternalMemoizedUnmaskedChildContext === unmaskedContext) return instance.__reactInternalMemoizedMaskedChildContext;
7095			var context = {};
7096			for (var key in contextTypes) context[key] = unmaskedContext[key];
7097			checkPropTypes(contextTypes, context, "context", getComponentNameFromFiber(workInProgress$1) || "Unknown");
7098			if (instance) cacheContext(workInProgress$1, unmaskedContext, context);
7099			return context;
7100		}
7101		function hasContextChanged() {
7102			return didPerformWorkStackCursor.current;
7103		}
7104		function isContextProvider(type) {
7105			var childContextTypes = type.childContextTypes;
7106			return childContextTypes !== null && childContextTypes !== void 0;
7107		}
7108		function popContext(fiber) {
7109			pop(didPerformWorkStackCursor, fiber);
7110			pop(contextStackCursor, fiber);
7111		}
7112		function popTopLevelContextObject(fiber) {
7113			pop(didPerformWorkStackCursor, fiber);
7114			pop(contextStackCursor, fiber);
7115		}
7116		function pushTopLevelContextObject(fiber, context, didChange) {
7117			if (contextStackCursor.current !== emptyContextObject) throw new Error("Unexpected context found on stack. This error is likely caused by a bug in React. Please file an issue.");
7118			push(contextStackCursor, context, fiber);
7119			push(didPerformWorkStackCursor, didChange, fiber);
7120		}
7121		function processChildContext(fiber, type, parentContext) {
7122			var instance = fiber.stateNode;
7123			var childContextTypes = type.childContextTypes;
7124			if (typeof instance.getChildContext !== "function") {
7125				var componentName = getComponentNameFromFiber(fiber) || "Unknown";
7126				if (!warnedAboutMissingGetChildContext[componentName]) {
7127					warnedAboutMissingGetChildContext[componentName] = true;
7128					error("%s.childContextTypes is specified but there is no getChildContext() method on the instance. You can either define getChildContext() on %s or remove childContextTypes from it.", componentName, componentName);
7129				}
7130				return parentContext;
7131			}
7132			var childContext = instance.getChildContext();
7133			for (var contextKey in childContext) if (!(contextKey in childContextTypes)) throw new Error((getComponentNameFromFiber(fiber) || "Unknown") + ".getChildContext(): key \"" + contextKey + "\" is not defined in childContextTypes.");
7134			checkPropTypes(childContextTypes, childContext, "child context", getComponentNameFromFiber(fiber) || "Unknown");
7135			return assign({}, parentContext, childContext);
7136		}
7137		function pushContextProvider(workInProgress$1) {
7138			var instance = workInProgress$1.stateNode;
7139			var memoizedMergedChildContext = instance && instance.__reactInternalMemoizedMergedChildContext || emptyContextObject;
7140			previousContext = contextStackCursor.current;
7141			push(contextStackCursor, memoizedMergedChildContext, workInProgress$1);
7142			push(didPerformWorkStackCursor, didPerformWorkStackCursor.current, workInProgress$1);
7143			return true;
7144		}
7145		function invalidateContextProvider(workInProgress$1, type, didChange) {
7146			var instance = workInProgress$1.stateNode;
7147			if (!instance) throw new Error("Expected to have an instance by this point. This error is likely caused by a bug in React. Please file an issue.");
7148			if (didChange) {
7149				var mergedContext = processChildContext(workInProgress$1, type, previousContext);
7150				instance.__reactInternalMemoizedMergedChildContext = mergedContext;
7151				pop(didPerformWorkStackCursor, workInProgress$1);
7152				pop(contextStackCursor, workInProgress$1);
7153				push(contextStackCursor, mergedContext, workInProgress$1);
7154				push(didPerformWorkStackCursor, didChange, workInProgress$1);
7155			} else {
7156				pop(didPerformWorkStackCursor, workInProgress$1);
7157				push(didPerformWorkStackCursor, didChange, workInProgress$1);
7158			}
7159		}
7160		function findCurrentUnmaskedContext(fiber) {
7161			if (!isFiberMounted(fiber) || fiber.tag !== ClassComponent) throw new Error("Expected subtree parent to be a mounted class component. This error is likely caused by a bug in React. Please file an issue.");
7162			var node = fiber;
7163			do {
7164				switch (node.tag) {
7165					case HostRoot: return node.stateNode.context;
7166					case ClassComponent:
7167						var Component = node.type;
7168						if (isContextProvider(Component)) return node.stateNode.__reactInternalMemoizedMergedChildContext;
7169						break;
7170				}
7171				node = node.return;
7172			} while (node !== null);
7173			throw new Error("Found unexpected detached subtree parent. This error is likely caused by a bug in React. Please file an issue.");
7174		}
7175		var LegacyRoot = 0;
7176		var ConcurrentRoot = 1;
7177		var syncQueue = null;
7178		var includesLegacySyncCallbacks = false;
7179		var isFlushingSyncQueue = false;
7180		function scheduleSyncCallback(callback) {
7181			if (syncQueue === null) syncQueue = [callback];
7182			else syncQueue.push(callback);
7183		}
7184		function scheduleLegacySyncCallback(callback) {
7185			includesLegacySyncCallbacks = true;
7186			scheduleSyncCallback(callback);
7187		}
7188		function flushSyncCallbacksOnlyInLegacyMode() {
7189			if (includesLegacySyncCallbacks) flushSyncCallbacks();
7190		}
7191		function flushSyncCallbacks() {
7192			if (!isFlushingSyncQueue && syncQueue !== null) {
7193				isFlushingSyncQueue = true;
7194				var i = 0;
7195				var previousUpdatePriority = getCurrentUpdatePriority();
7196				try {
7197					var isSync = true;
7198					var queue = syncQueue;
7199					setCurrentUpdatePriority(DiscreteEventPriority);
7200					for (; i < queue.length; i++) {
7201						var callback = queue[i];
7202						do
7203							callback = callback(isSync);
7204						while (callback !== null);
7205					}
7206					syncQueue = null;
7207					includesLegacySyncCallbacks = false;
7208				} catch (error$1) {
7209					if (syncQueue !== null) syncQueue = syncQueue.slice(i + 1);
7210					scheduleCallback(ImmediatePriority, flushSyncCallbacks);
7211					throw error$1;
7212				} finally {
7213					setCurrentUpdatePriority(previousUpdatePriority);
7214					isFlushingSyncQueue = false;
7215				}
7216			}
7217			return null;
7218		}
7219		var forkStack = [];
7220		var forkStackIndex = 0;
7221		var treeForkProvider = null;
7222		var treeForkCount = 0;
7223		var idStack = [];
7224		var idStackIndex = 0;
7225		var treeContextProvider = null;
7226		var treeContextId = 1;
7227		var treeContextOverflow = "";
7228		function isForkedChild(workInProgress$1) {
7229			warnIfNotHydrating();
7230			return (workInProgress$1.flags & Forked) !== NoFlags;
7231		}
7232		function getForksAtLevel(workInProgress$1) {
7233			warnIfNotHydrating();
7234			return treeForkCount;
7235		}
7236		function getTreeId() {
7237			var overflow = treeContextOverflow;
7238			var idWithLeadingBit = treeContextId;
7239			return (idWithLeadingBit & ~getLeadingBit(idWithLeadingBit)).toString(32) + overflow;
7240		}
7241		function pushTreeFork(workInProgress$1, totalChildren) {
7242			warnIfNotHydrating();
7243			forkStack[forkStackIndex++] = treeForkCount;
7244			forkStack[forkStackIndex++] = treeForkProvider;
7245			treeForkProvider = workInProgress$1;
7246			treeForkCount = totalChildren;
7247		}
7248		function pushTreeId(workInProgress$1, totalChildren, index$1) {
7249			warnIfNotHydrating();
7250			idStack[idStackIndex++] = treeContextId;
7251			idStack[idStackIndex++] = treeContextOverflow;
7252			idStack[idStackIndex++] = treeContextProvider;
7253			treeContextProvider = workInProgress$1;
7254			var baseIdWithLeadingBit = treeContextId;
7255			var baseOverflow = treeContextOverflow;
7256			var baseLength = getBitLength(baseIdWithLeadingBit) - 1;
7257			var baseId = baseIdWithLeadingBit & ~(1 << baseLength);
7258			var slot = index$1 + 1;
7259			var length = getBitLength(totalChildren) + baseLength;
7260			if (length > 30) {
7261				var numberOfOverflowBits = baseLength - baseLength % 5;
7262				var newOverflow = (baseId & (1 << numberOfOverflowBits) - 1).toString(32);
7263				var restOfBaseId = baseId >> numberOfOverflowBits;
7264				var restOfBaseLength = baseLength - numberOfOverflowBits;
7265				var restOfLength = getBitLength(totalChildren) + restOfBaseLength;
7266				var id = slot << restOfBaseLength | restOfBaseId;
7267				var overflow = newOverflow + baseOverflow;
7268				treeContextId = 1 << restOfLength | id;
7269				treeContextOverflow = overflow;
7270			} else {
7271				var _id = slot << baseLength | baseId;
7272				var _overflow = baseOverflow;
7273				treeContextId = 1 << length | _id;
7274				treeContextOverflow = _overflow;
7275			}
7276		}
7277		function pushMaterializedTreeId(workInProgress$1) {
7278			warnIfNotHydrating();
7279			if (workInProgress$1.return !== null) {
7280				var numberOfForks = 1;
7281				var slotIndex = 0;
7282				pushTreeFork(workInProgress$1, numberOfForks);
7283				pushTreeId(workInProgress$1, numberOfForks, slotIndex);
7284			}
7285		}
7286		function getBitLength(number) {
7287			return 32 - clz32(number);
7288		}
7289		function getLeadingBit(id) {
7290			return 1 << getBitLength(id) - 1;
7291		}
7292		function popTreeContext(workInProgress$1) {
7293			while (workInProgress$1 === treeForkProvider) {
7294				treeForkProvider = forkStack[--forkStackIndex];
7295				forkStack[forkStackIndex] = null;
7296				treeForkCount = forkStack[--forkStackIndex];
7297				forkStack[forkStackIndex] = null;
7298			}
7299			while (workInProgress$1 === treeContextProvider) {
7300				treeContextProvider = idStack[--idStackIndex];
7301				idStack[idStackIndex] = null;
7302				treeContextOverflow = idStack[--idStackIndex];
7303				idStack[idStackIndex] = null;
7304				treeContextId = idStack[--idStackIndex];
7305				idStack[idStackIndex] = null;
7306			}
7307		}
7308		function getSuspendedTreeContext() {
7309			warnIfNotHydrating();
7310			if (treeContextProvider !== null) return {
7311				id: treeContextId,
7312				overflow: treeContextOverflow
7313			};
7314			else return null;
7315		}
7316		function restoreSuspendedTreeContext(workInProgress$1, suspendedContext) {
7317			warnIfNotHydrating();
7318			idStack[idStackIndex++] = treeContextId;
7319			idStack[idStackIndex++] = treeContextOverflow;
7320			idStack[idStackIndex++] = treeContextProvider;
7321			treeContextId = suspendedContext.id;
7322			treeContextOverflow = suspendedContext.overflow;
7323			treeContextProvider = workInProgress$1;
7324		}
7325		function warnIfNotHydrating() {
7326			if (!getIsHydrating()) error("Expected to be hydrating. This is a bug in React. Please file an issue.");
7327		}
7328		var hydrationParentFiber = null;
7329		var nextHydratableInstance = null;
7330		var isHydrating = false;
7331		var didSuspendOrErrorDEV = false;
7332		var hydrationErrors = null;
7333		function warnIfHydrating() {
7334			if (isHydrating) error("We should not be hydrating here. This is a bug in React. Please file a bug.");
7335		}
7336		function markDidThrowWhileHydratingDEV() {
7337			didSuspendOrErrorDEV = true;
7338		}
7339		function didSuspendOrErrorWhileHydratingDEV() {
7340			return didSuspendOrErrorDEV;
7341		}
7342		function enterHydrationState(fiber) {
7343			var parentInstance = fiber.stateNode.containerInfo;
7344			nextHydratableInstance = getFirstHydratableChildWithinContainer(parentInstance);
7345			hydrationParentFiber = fiber;
7346			isHydrating = true;
7347			hydrationErrors = null;
7348			didSuspendOrErrorDEV = false;
7349			return true;
7350		}
7351		function reenterHydrationStateFromDehydratedSuspenseInstance(fiber, suspenseInstance, treeContext) {
7352			nextHydratableInstance = getFirstHydratableChildWithinSuspenseInstance(suspenseInstance);
7353			hydrationParentFiber = fiber;
7354			isHydrating = true;
7355			hydrationErrors = null;
7356			didSuspendOrErrorDEV = false;
7357			if (treeContext !== null) restoreSuspendedTreeContext(fiber, treeContext);
7358			return true;
7359		}
7360		function warnUnhydratedInstance(returnFiber, instance) {
7361			switch (returnFiber.tag) {
7362				case HostRoot:
7363					didNotHydrateInstanceWithinContainer(returnFiber.stateNode.containerInfo, instance);
7364					break;
7365				case HostComponent:
7366					var isConcurrentMode = (returnFiber.mode & ConcurrentMode) !== NoMode;
7367					didNotHydrateInstance(returnFiber.type, returnFiber.memoizedProps, returnFiber.stateNode, instance, isConcurrentMode);
7368					break;
7369				case SuspenseComponent:
7370					var suspenseState = returnFiber.memoizedState;
7371					if (suspenseState.dehydrated !== null) didNotHydrateInstanceWithinSuspenseInstance(suspenseState.dehydrated, instance);
7372					break;
7373			}
7374		}
7375		function deleteHydratableInstance(returnFiber, instance) {
7376			warnUnhydratedInstance(returnFiber, instance);
7377			var childToDelete = createFiberFromHostInstanceForDeletion();
7378			childToDelete.stateNode = instance;
7379			childToDelete.return = returnFiber;
7380			var deletions = returnFiber.deletions;
7381			if (deletions === null) {
7382				returnFiber.deletions = [childToDelete];
7383				returnFiber.flags |= ChildDeletion;
7384			} else deletions.push(childToDelete);
7385		}
7386		function warnNonhydratedInstance(returnFiber, fiber) {
7387			if (didSuspendOrErrorDEV) return;
7388			switch (returnFiber.tag) {
7389				case HostRoot:
7390					var parentContainer = returnFiber.stateNode.containerInfo;
7391					switch (fiber.tag) {
7392						case HostComponent:
7393							var type = fiber.type;
7394							fiber.pendingProps;
7395							didNotFindHydratableInstanceWithinContainer(parentContainer, type);
7396							break;
7397						case HostText:
7398							var text = fiber.pendingProps;
7399							didNotFindHydratableTextInstanceWithinContainer(parentContainer, text);
7400							break;
7401					}
7402					break;
7403				case HostComponent:
7404					var parentType = returnFiber.type;
7405					var parentProps = returnFiber.memoizedProps;
7406					var parentInstance = returnFiber.stateNode;
7407					switch (fiber.tag) {
7408						case HostComponent:
7409							var _type = fiber.type;
7410							var _props = fiber.pendingProps;
7411							didNotFindHydratableInstance(parentType, parentProps, parentInstance, _type, _props, (returnFiber.mode & ConcurrentMode) !== NoMode);
7412							break;
7413						case HostText:
7414							var _text = fiber.pendingProps;
7415							didNotFindHydratableTextInstance(parentType, parentProps, parentInstance, _text, (returnFiber.mode & ConcurrentMode) !== NoMode);
7416							break;
7417					}
7418					break;
7419				case SuspenseComponent:
7420					var _parentInstance = returnFiber.memoizedState.dehydrated;
7421					if (_parentInstance !== null) switch (fiber.tag) {
7422						case HostComponent:
7423							var _type2 = fiber.type;
7424							fiber.pendingProps;
7425							didNotFindHydratableInstanceWithinSuspenseInstance(_parentInstance, _type2);
7426							break;
7427						case HostText:
7428							var _text2 = fiber.pendingProps;
7429							didNotFindHydratableTextInstanceWithinSuspenseInstance(_parentInstance, _text2);
7430							break;
7431					}
7432					break;
7433				default: return;
7434			}
7435		}
7436		function insertNonHydratedInstance(returnFiber, fiber) {
7437			fiber.flags = fiber.flags & ~Hydrating | Placement;
7438			warnNonhydratedInstance(returnFiber, fiber);
7439		}
7440		function tryHydrate(fiber, nextInstance) {
7441			switch (fiber.tag) {
7442				case HostComponent:
7443					var type = fiber.type;
7444					fiber.pendingProps;
7445					var instance = canHydrateInstance(nextInstance, type);
7446					if (instance !== null) {
7447						fiber.stateNode = instance;
7448						hydrationParentFiber = fiber;
7449						nextHydratableInstance = getFirstHydratableChild(instance);
7450						return true;
7451					}
7452					return false;
7453				case HostText:
7454					var text = fiber.pendingProps;
7455					var textInstance = canHydrateTextInstance(nextInstance, text);
7456					if (textInstance !== null) {
7457						fiber.stateNode = textInstance;
7458						hydrationParentFiber = fiber;
7459						nextHydratableInstance = null;
7460						return true;
7461					}
7462					return false;
7463				case SuspenseComponent:
7464					var suspenseInstance = canHydrateSuspenseInstance(nextInstance);
7465					if (suspenseInstance !== null) {
7466						fiber.memoizedState = {
7467							dehydrated: suspenseInstance,
7468							treeContext: getSuspendedTreeContext(),
7469							retryLane: OffscreenLane
7470						};
7471						var dehydratedFragment = createFiberFromDehydratedFragment(suspenseInstance);
7472						dehydratedFragment.return = fiber;
7473						fiber.child = dehydratedFragment;
7474						hydrationParentFiber = fiber;
7475						nextHydratableInstance = null;
7476						return true;
7477					}
7478					return false;
7479				default: return false;
7480			}
7481		}
7482		function shouldClientRenderOnMismatch(fiber) {
7483			return (fiber.mode & ConcurrentMode) !== NoMode && (fiber.flags & DidCapture) === NoFlags;
7484		}
7485		function throwOnHydrationMismatch(fiber) {
7486			throw new Error("Hydration failed because the initial UI does not match what was rendered on the server.");
7487		}
7488		function tryToClaimNextHydratableInstance(fiber) {
7489			if (!isHydrating) return;
7490			var nextInstance = nextHydratableInstance;
7491			if (!nextInstance) {
7492				if (shouldClientRenderOnMismatch(fiber)) {
7493					warnNonhydratedInstance(hydrationParentFiber, fiber);
7494					throwOnHydrationMismatch();
7495				}
7496				insertNonHydratedInstance(hydrationParentFiber, fiber);
7497				isHydrating = false;
7498				hydrationParentFiber = fiber;
7499				return;
7500			}
7501			var firstAttemptedInstance = nextInstance;
7502			if (!tryHydrate(fiber, nextInstance)) {
7503				if (shouldClientRenderOnMismatch(fiber)) {
7504					warnNonhydratedInstance(hydrationParentFiber, fiber);
7505					throwOnHydrationMismatch();
7506				}
7507				nextInstance = getNextHydratableSibling(firstAttemptedInstance);
7508				var prevHydrationParentFiber = hydrationParentFiber;
7509				if (!nextInstance || !tryHydrate(fiber, nextInstance)) {
7510					insertNonHydratedInstance(hydrationParentFiber, fiber);
7511					isHydrating = false;
7512					hydrationParentFiber = fiber;
7513					return;
7514				}
7515				deleteHydratableInstance(prevHydrationParentFiber, firstAttemptedInstance);
7516			}
7517		}
7518		function prepareToHydrateHostInstance(fiber, rootContainerInstance, hostContext) {
7519			var instance = fiber.stateNode;
7520			var shouldWarnIfMismatchDev = !didSuspendOrErrorDEV;
7521			var updatePayload = hydrateInstance(instance, fiber.type, fiber.memoizedProps, rootContainerInstance, hostContext, fiber, shouldWarnIfMismatchDev);
7522			fiber.updateQueue = updatePayload;
7523			if (updatePayload !== null) return true;
7524			return false;
7525		}
7526		function prepareToHydrateHostTextInstance(fiber) {
7527			var textInstance = fiber.stateNode;
7528			var textContent = fiber.memoizedProps;
7529			var shouldUpdate = hydrateTextInstance(textInstance, textContent, fiber);
7530			if (shouldUpdate) {
7531				var returnFiber = hydrationParentFiber;
7532				if (returnFiber !== null) switch (returnFiber.tag) {
7533					case HostRoot:
7534						var parentContainer = returnFiber.stateNode.containerInfo;
7535						didNotMatchHydratedContainerTextInstance(parentContainer, textInstance, textContent, (returnFiber.mode & ConcurrentMode) !== NoMode);
7536						break;
7537					case HostComponent:
7538						var parentType = returnFiber.type;
7539						var parentProps = returnFiber.memoizedProps;
7540						var parentInstance = returnFiber.stateNode;
7541						didNotMatchHydratedTextInstance(parentType, parentProps, parentInstance, textInstance, textContent, (returnFiber.mode & ConcurrentMode) !== NoMode);
7542						break;
7543				}
7544			}
7545			return shouldUpdate;
7546		}
7547		function prepareToHydrateHostSuspenseInstance(fiber) {
7548			var suspenseState = fiber.memoizedState;
7549			var suspenseInstance = suspenseState !== null ? suspenseState.dehydrated : null;
7550			if (!suspenseInstance) throw new Error("Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.");
7551			hydrateSuspenseInstance(suspenseInstance, fiber);
7552		}
7553		function skipPastDehydratedSuspenseInstance(fiber) {
7554			var suspenseState = fiber.memoizedState;
7555			var suspenseInstance = suspenseState !== null ? suspenseState.dehydrated : null;
7556			if (!suspenseInstance) throw new Error("Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.");
7557			return getNextHydratableInstanceAfterSuspenseInstance(suspenseInstance);
7558		}
7559		function popToNextHostParent(fiber) {
7560			var parent = fiber.return;
7561			while (parent !== null && parent.tag !== HostComponent && parent.tag !== HostRoot && parent.tag !== SuspenseComponent) parent = parent.return;
7562			hydrationParentFiber = parent;
7563		}
7564		function popHydrationState(fiber) {
7565			if (fiber !== hydrationParentFiber) return false;
7566			if (!isHydrating) {
7567				popToNextHostParent(fiber);
7568				isHydrating = true;
7569				return false;
7570			}
7571			if (fiber.tag !== HostRoot && (fiber.tag !== HostComponent || shouldDeleteUnhydratedTailInstances(fiber.type) && !shouldSetTextContent(fiber.type, fiber.memoizedProps))) {
7572				var nextInstance = nextHydratableInstance;
7573				if (nextInstance) if (shouldClientRenderOnMismatch(fiber)) {
7574					warnIfUnhydratedTailNodes(fiber);
7575					throwOnHydrationMismatch();
7576				} else while (nextInstance) {
7577					deleteHydratableInstance(fiber, nextInstance);
7578					nextInstance = getNextHydratableSibling(nextInstance);
7579				}
7580			}
7581			popToNextHostParent(fiber);
7582			if (fiber.tag === SuspenseComponent) nextHydratableInstance = skipPastDehydratedSuspenseInstance(fiber);
7583			else nextHydratableInstance = hydrationParentFiber ? getNextHydratableSibling(fiber.stateNode) : null;
7584			return true;
7585		}
7586		function hasUnhydratedTailNodes() {
7587			return isHydrating && nextHydratableInstance !== null;
7588		}
7589		function warnIfUnhydratedTailNodes(fiber) {
7590			var nextInstance = nextHydratableInstance;
7591			while (nextInstance) {
7592				warnUnhydratedInstance(fiber, nextInstance);
7593				nextInstance = getNextHydratableSibling(nextInstance);
7594			}
7595		}
7596		function resetHydrationState() {
7597			hydrationParentFiber = null;
7598			nextHydratableInstance = null;
7599			isHydrating = false;
7600			didSuspendOrErrorDEV = false;
7601		}
7602		function upgradeHydrationErrorsToRecoverable() {
7603			if (hydrationErrors !== null) {
7604				queueRecoverableErrors(hydrationErrors);
7605				hydrationErrors = null;
7606			}
7607		}
7608		function getIsHydrating() {
7609			return isHydrating;
7610		}
7611		function queueHydrationError(error$1) {
7612			if (hydrationErrors === null) hydrationErrors = [error$1];
7613			else hydrationErrors.push(error$1);
7614		}
7615		var ReactCurrentBatchConfig$1 = ReactSharedInternals.ReactCurrentBatchConfig;
7616		var NoTransition = null;
7617		function requestCurrentTransition() {
7618			return ReactCurrentBatchConfig$1.transition;
7619		}
7620		var ReactStrictModeWarnings = {
7621			recordUnsafeLifecycleWarnings: function(fiber, instance) {},
7622			flushPendingUnsafeLifecycleWarnings: function() {},
7623			recordLegacyContextWarning: function(fiber, instance) {},
7624			flushLegacyContextWarning: function() {},
7625			discardPendingWarnings: function() {}
7626		};
7627		var findStrictRoot = function(fiber) {
7628			var maybeStrictRoot = null;
7629			var node = fiber;
7630			while (node !== null) {
7631				if (node.mode & StrictLegacyMode) maybeStrictRoot = node;
7632				node = node.return;
7633			}
7634			return maybeStrictRoot;
7635		};
7636		var setToSortedString = function(set$1) {
7637			var array = [];
7638			set$1.forEach(function(value) {
7639				array.push(value);
7640			});
7641			return array.sort().join(", ");
7642		};
7643		var pendingComponentWillMountWarnings = [];
7644		var pendingUNSAFE_ComponentWillMountWarnings = [];
7645		var pendingComponentWillReceivePropsWarnings = [];
7646		var pendingUNSAFE_ComponentWillReceivePropsWarnings = [];
7647		var pendingComponentWillUpdateWarnings = [];
7648		var pendingUNSAFE_ComponentWillUpdateWarnings = [];
7649		var didWarnAboutUnsafeLifecycles = /* @__PURE__ */ new Set();
7650		ReactStrictModeWarnings.recordUnsafeLifecycleWarnings = function(fiber, instance) {
7651			if (didWarnAboutUnsafeLifecycles.has(fiber.type)) return;
7652			if (typeof instance.componentWillMount === "function" && instance.componentWillMount.__suppressDeprecationWarning !== true) pendingComponentWillMountWarnings.push(fiber);
7653			if (fiber.mode & StrictLegacyMode && typeof instance.UNSAFE_componentWillMount === "function") pendingUNSAFE_ComponentWillMountWarnings.push(fiber);
7654			if (typeof instance.componentWillReceiveProps === "function" && instance.componentWillReceiveProps.__suppressDeprecationWarning !== true) pendingComponentWillReceivePropsWarnings.push(fiber);
7655			if (fiber.mode & StrictLegacyMode && typeof instance.UNSAFE_componentWillReceiveProps === "function") pendingUNSAFE_ComponentWillReceivePropsWarnings.push(fiber);
7656			if (typeof instance.componentWillUpdate === "function" && instance.componentWillUpdate.__suppressDeprecationWarning !== true) pendingComponentWillUpdateWarnings.push(fiber);
7657			if (fiber.mode & StrictLegacyMode && typeof instance.UNSAFE_componentWillUpdate === "function") pendingUNSAFE_ComponentWillUpdateWarnings.push(fiber);
7658		};
7659		ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings = function() {
7660			var componentWillMountUniqueNames = /* @__PURE__ */ new Set();
7661			if (pendingComponentWillMountWarnings.length > 0) {
7662				pendingComponentWillMountWarnings.forEach(function(fiber) {
7663					componentWillMountUniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
7664					didWarnAboutUnsafeLifecycles.add(fiber.type);
7665				});
7666				pendingComponentWillMountWarnings = [];
7667			}
7668			var UNSAFE_componentWillMountUniqueNames = /* @__PURE__ */ new Set();
7669			if (pendingUNSAFE_ComponentWillMountWarnings.length > 0) {
7670				pendingUNSAFE_ComponentWillMountWarnings.forEach(function(fiber) {
7671					UNSAFE_componentWillMountUniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
7672					didWarnAboutUnsafeLifecycles.add(fiber.type);
7673				});
7674				pendingUNSAFE_ComponentWillMountWarnings = [];
7675			}
7676			var componentWillReceivePropsUniqueNames = /* @__PURE__ */ new Set();
7677			if (pendingComponentWillReceivePropsWarnings.length > 0) {
7678				pendingComponentWillReceivePropsWarnings.forEach(function(fiber) {
7679					componentWillReceivePropsUniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
7680					didWarnAboutUnsafeLifecycles.add(fiber.type);
7681				});
7682				pendingComponentWillReceivePropsWarnings = [];
7683			}
7684			var UNSAFE_componentWillReceivePropsUniqueNames = /* @__PURE__ */ new Set();
7685			if (pendingUNSAFE_ComponentWillReceivePropsWarnings.length > 0) {
7686				pendingUNSAFE_ComponentWillReceivePropsWarnings.forEach(function(fiber) {
7687					UNSAFE_componentWillReceivePropsUniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
7688					didWarnAboutUnsafeLifecycles.add(fiber.type);
7689				});
7690				pendingUNSAFE_ComponentWillReceivePropsWarnings = [];
7691			}
7692			var componentWillUpdateUniqueNames = /* @__PURE__ */ new Set();
7693			if (pendingComponentWillUpdateWarnings.length > 0) {
7694				pendingComponentWillUpdateWarnings.forEach(function(fiber) {
7695					componentWillUpdateUniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
7696					didWarnAboutUnsafeLifecycles.add(fiber.type);
7697				});
7698				pendingComponentWillUpdateWarnings = [];
7699			}
7700			var UNSAFE_componentWillUpdateUniqueNames = /* @__PURE__ */ new Set();
7701			if (pendingUNSAFE_ComponentWillUpdateWarnings.length > 0) {
7702				pendingUNSAFE_ComponentWillUpdateWarnings.forEach(function(fiber) {
7703					UNSAFE_componentWillUpdateUniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
7704					didWarnAboutUnsafeLifecycles.add(fiber.type);
7705				});
7706				pendingUNSAFE_ComponentWillUpdateWarnings = [];
7707			}
7708			if (UNSAFE_componentWillMountUniqueNames.size > 0) error("Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. See https://reactjs.org/link/unsafe-component-lifecycles for details.\n\n* Move code with side effects to componentDidMount, and set initial state in the constructor.\n\nPlease update the following components: %s", setToSortedString(UNSAFE_componentWillMountUniqueNames));
7709			if (UNSAFE_componentWillReceivePropsUniqueNames.size > 0) error("Using UNSAFE_componentWillReceiveProps in strict mode is not recommended and may indicate bugs in your code. See https://reactjs.org/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://reactjs.org/link/derived-state\n\nPlease update the following components: %s", setToSortedString(UNSAFE_componentWillReceivePropsUniqueNames));
7710			if (UNSAFE_componentWillUpdateUniqueNames.size > 0) error("Using UNSAFE_componentWillUpdate in strict mode is not recommended and may indicate bugs in your code. See https://reactjs.org/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n\nPlease update the following components: %s", setToSortedString(UNSAFE_componentWillUpdateUniqueNames));
7711			if (componentWillMountUniqueNames.size > 0) warn("componentWillMount has been renamed, and is not recommended for use. See https://reactjs.org/link/unsafe-component-lifecycles for details.\n\n* Move code with side effects to componentDidMount, and set initial state in the constructor.\n* Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s", setToSortedString(componentWillMountUniqueNames));
7712			if (componentWillReceivePropsUniqueNames.size > 0) warn("componentWillReceiveProps has been renamed, and is not recommended for use. See https://reactjs.org/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://reactjs.org/link/derived-state\n* Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s", setToSortedString(componentWillReceivePropsUniqueNames));
7713			if (componentWillUpdateUniqueNames.size > 0) warn("componentWillUpdate has been renamed, and is not recommended for use. See https://reactjs.org/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s", setToSortedString(componentWillUpdateUniqueNames));
7714		};
7715		var pendingLegacyContextWarning = /* @__PURE__ */ new Map();
7716		var didWarnAboutLegacyContext = /* @__PURE__ */ new Set();
7717		ReactStrictModeWarnings.recordLegacyContextWarning = function(fiber, instance) {
7718			var strictRoot = findStrictRoot(fiber);
7719			if (strictRoot === null) {
7720				error("Expected to find a StrictMode component in a strict mode tree. This error is likely caused by a bug in React. Please file an issue.");
7721				return;
7722			}
7723			if (didWarnAboutLegacyContext.has(fiber.type)) return;
7724			var warningsForRoot = pendingLegacyContextWarning.get(strictRoot);
7725			if (fiber.type.contextTypes != null || fiber.type.childContextTypes != null || instance !== null && typeof instance.getChildContext === "function") {
7726				if (warningsForRoot === void 0) {
7727					warningsForRoot = [];
7728					pendingLegacyContextWarning.set(strictRoot, warningsForRoot);
7729				}
7730				warningsForRoot.push(fiber);
7731			}
7732		};
7733		ReactStrictModeWarnings.flushLegacyContextWarning = function() {
7734			pendingLegacyContextWarning.forEach(function(fiberArray, strictRoot) {
7735				if (fiberArray.length === 0) return;
7736				var firstFiber = fiberArray[0];
7737				var uniqueNames = /* @__PURE__ */ new Set();
7738				fiberArray.forEach(function(fiber) {
7739					uniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
7740					didWarnAboutLegacyContext.add(fiber.type);
7741				});
7742				var sortedNames = setToSortedString(uniqueNames);
7743				try {
7744					setCurrentFiber(firstFiber);
7745					error("Legacy context API has been detected within a strict-mode tree.\n\nThe old API will be supported in all 16.x releases, but applications using it should migrate to the new version.\n\nPlease update the following components: %s\n\nLearn more about this warning here: https://reactjs.org/link/legacy-context", sortedNames);
7746				} finally {
7747					resetCurrentFiber();
7748				}
7749			});
7750		};
7751		ReactStrictModeWarnings.discardPendingWarnings = function() {
7752			pendingComponentWillMountWarnings = [];
7753			pendingUNSAFE_ComponentWillMountWarnings = [];
7754			pendingComponentWillReceivePropsWarnings = [];
7755			pendingUNSAFE_ComponentWillReceivePropsWarnings = [];
7756			pendingComponentWillUpdateWarnings = [];
7757			pendingUNSAFE_ComponentWillUpdateWarnings = [];
7758			pendingLegacyContextWarning = /* @__PURE__ */ new Map();
7759		};
7760		var didWarnAboutMaps;
7761		var didWarnAboutGenerators;
7762		var didWarnAboutStringRefs;
7763		var ownerHasKeyUseWarning;
7764		var ownerHasFunctionTypeWarning;
7765		var warnForMissingKey = function(child, returnFiber) {};
7766		didWarnAboutMaps = false;
7767		didWarnAboutGenerators = false;
7768		didWarnAboutStringRefs = {};
7769		ownerHasKeyUseWarning = {};
7770		ownerHasFunctionTypeWarning = {};
7771		warnForMissingKey = function(child, returnFiber) {
7772			if (child === null || typeof child !== "object") return;
7773			if (!child._store || child._store.validated || child.key != null) return;
7774			if (typeof child._store !== "object") throw new Error("React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.");
7775			child._store.validated = true;
7776			var componentName = getComponentNameFromFiber(returnFiber) || "Component";
7777			if (ownerHasKeyUseWarning[componentName]) return;
7778			ownerHasKeyUseWarning[componentName] = true;
7779			error("Each child in a list should have a unique \"key\" prop. See https://reactjs.org/link/warning-keys for more information.");
7780		};
7781		function isReactClass(type) {
7782			return type.prototype && type.prototype.isReactComponent;
7783		}
7784		function coerceRef(returnFiber, current$1, element) {
7785			var mixedRef = element.ref;
7786			if (mixedRef !== null && typeof mixedRef !== "function" && typeof mixedRef !== "object") {
7787				if ((returnFiber.mode & StrictLegacyMode || warnAboutStringRefs) && !(element._owner && element._self && element._owner.stateNode !== element._self) && !(element._owner && element._owner.tag !== ClassComponent) && !(typeof element.type === "function" && !isReactClass(element.type)) && element._owner) {
7788					var componentName = getComponentNameFromFiber(returnFiber) || "Component";
7789					if (!didWarnAboutStringRefs[componentName]) {
7790						error("Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. We recommend using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref", componentName, mixedRef);
7791						didWarnAboutStringRefs[componentName] = true;
7792					}
7793				}
7794				if (element._owner) {
7795					var owner = element._owner;
7796					var inst;
7797					if (owner) {
7798						var ownerFiber = owner;
7799						if (ownerFiber.tag !== ClassComponent) throw new Error("Function components cannot have string refs. We recommend using useRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref");
7800						inst = ownerFiber.stateNode;
7801					}
7802					if (!inst) throw new Error("Missing owner for string ref " + mixedRef + ". This error is likely caused by a bug in React. Please file an issue.");
7803					var resolvedInst = inst;
7804					checkPropStringCoercion(mixedRef, "ref");
7805					var stringRef = "" + mixedRef;
7806					if (current$1 !== null && current$1.ref !== null && typeof current$1.ref === "function" && current$1.ref._stringRef === stringRef) return current$1.ref;
7807					var ref = function(value) {
7808						var refs = resolvedInst.refs;
7809						if (value === null) delete refs[stringRef];
7810						else refs[stringRef] = value;
7811					};
7812					ref._stringRef = stringRef;
7813					return ref;
7814				} else {
7815					if (typeof mixedRef !== "string") throw new Error("Expected ref to be a function, a string, an object returned by React.createRef(), or null.");
7816					if (!element._owner) throw new Error("Element ref was specified as a string (" + mixedRef + ") but no owner was set. This could happen for one of the following reasons:\n1. You may be adding a ref to a function component\n2. You may be adding a ref to a component that was not created inside a component's render method\n3. You have multiple copies of React loaded\nSee https://reactjs.org/link/refs-must-have-owner for more information.");
7817				}
7818			}
7819			return mixedRef;
7820		}
7821		function throwOnInvalidObjectType(returnFiber, newChild) {
7822			var childString = Object.prototype.toString.call(newChild);
7823			throw new Error("Objects are not valid as a React child (found: " + (childString === "[object Object]" ? "object with keys {" + Object.keys(newChild).join(", ") + "}" : childString) + "). If you meant to render a collection of children, use an array instead.");
7824		}
7825		function warnOnFunctionType(returnFiber) {
7826			var componentName = getComponentNameFromFiber(returnFiber) || "Component";
7827			if (ownerHasFunctionTypeWarning[componentName]) return;
7828			ownerHasFunctionTypeWarning[componentName] = true;
7829			error("Functions are not valid as a React child. This may happen if you return a Component instead of <Component /> from render. Or maybe you meant to call this function rather than return it.");
7830		}
7831		function resolveLazy(lazyType) {
7832			var payload = lazyType._payload;
7833			var init = lazyType._init;
7834			return init(payload);
7835		}
7836		function ChildReconciler(shouldTrackSideEffects) {
7837			function deleteChild(returnFiber, childToDelete) {
7838				if (!shouldTrackSideEffects) return;
7839				var deletions = returnFiber.deletions;
7840				if (deletions === null) {
7841					returnFiber.deletions = [childToDelete];
7842					returnFiber.flags |= ChildDeletion;
7843				} else deletions.push(childToDelete);
7844			}
7845			function deleteRemainingChildren(returnFiber, currentFirstChild) {
7846				if (!shouldTrackSideEffects) return null;
7847				var childToDelete = currentFirstChild;
7848				while (childToDelete !== null) {
7849					deleteChild(returnFiber, childToDelete);
7850					childToDelete = childToDelete.sibling;
7851				}
7852				return null;
7853			}
7854			function mapRemainingChildren(returnFiber, currentFirstChild) {
7855				var existingChildren = /* @__PURE__ */ new Map();
7856				var existingChild = currentFirstChild;
7857				while (existingChild !== null) {
7858					if (existingChild.key !== null) existingChildren.set(existingChild.key, existingChild);
7859					else existingChildren.set(existingChild.index, existingChild);
7860					existingChild = existingChild.sibling;
7861				}
7862				return existingChildren;
7863			}
7864			function useFiber(fiber, pendingProps) {
7865				var clone = createWorkInProgress(fiber, pendingProps);
7866				clone.index = 0;
7867				clone.sibling = null;
7868				return clone;
7869			}
7870			function placeChild(newFiber, lastPlacedIndex, newIndex) {
7871				newFiber.index = newIndex;
7872				if (!shouldTrackSideEffects) {
7873					newFiber.flags |= Forked;
7874					return lastPlacedIndex;
7875				}
7876				var current$1 = newFiber.alternate;
7877				if (current$1 !== null) {
7878					var oldIndex = current$1.index;
7879					if (oldIndex < lastPlacedIndex) {
7880						newFiber.flags |= Placement;
7881						return lastPlacedIndex;
7882					} else return oldIndex;
7883				} else {
7884					newFiber.flags |= Placement;
7885					return lastPlacedIndex;
7886				}
7887			}
7888			function placeSingleChild(newFiber) {
7889				if (shouldTrackSideEffects && newFiber.alternate === null) newFiber.flags |= Placement;
7890				return newFiber;
7891			}
7892			function updateTextNode(returnFiber, current$1, textContent, lanes) {
7893				if (current$1 === null || current$1.tag !== HostText) {
7894					var created = createFiberFromText(textContent, returnFiber.mode, lanes);
7895					created.return = returnFiber;
7896					return created;
7897				} else {
7898					var existing = useFiber(current$1, textContent);
7899					existing.return = returnFiber;
7900					return existing;
7901				}
7902			}
7903			function updateElement(returnFiber, current$1, element, lanes) {
7904				var elementType = element.type;
7905				if (elementType === REACT_FRAGMENT_TYPE) return updateFragment$1(returnFiber, current$1, element.props.children, lanes, element.key);
7906				if (current$1 !== null) {
7907					if (current$1.elementType === elementType || isCompatibleFamilyForHotReloading(current$1, element) || typeof elementType === "object" && elementType !== null && elementType.$$typeof === REACT_LAZY_TYPE && resolveLazy(elementType) === current$1.type) {
7908						var existing = useFiber(current$1, element.props);
7909						existing.ref = coerceRef(returnFiber, current$1, element);
7910						existing.return = returnFiber;
7911						existing._debugSource = element._source;
7912						existing._debugOwner = element._owner;
7913						return existing;
7914					}
7915				}
7916				var created = createFiberFromElement(element, returnFiber.mode, lanes);
7917				created.ref = coerceRef(returnFiber, current$1, element);
7918				created.return = returnFiber;
7919				return created;
7920			}
7921			function updatePortal(returnFiber, current$1, portal, lanes) {
7922				if (current$1 === null || current$1.tag !== HostPortal || current$1.stateNode.containerInfo !== portal.containerInfo || current$1.stateNode.implementation !== portal.implementation) {
7923					var created = createFiberFromPortal(portal, returnFiber.mode, lanes);
7924					created.return = returnFiber;
7925					return created;
7926				} else {
7927					var existing = useFiber(current$1, portal.children || []);
7928					existing.return = returnFiber;
7929					return existing;
7930				}
7931			}
7932			function updateFragment$1(returnFiber, current$1, fragment, lanes, key) {
7933				if (current$1 === null || current$1.tag !== Fragment) {
7934					var created = createFiberFromFragment(fragment, returnFiber.mode, lanes, key);
7935					created.return = returnFiber;
7936					return created;
7937				} else {
7938					var existing = useFiber(current$1, fragment);
7939					existing.return = returnFiber;
7940					return existing;
7941				}
7942			}
7943			function createChild(returnFiber, newChild, lanes) {
7944				if (typeof newChild === "string" && newChild !== "" || typeof newChild === "number") {
7945					var created = createFiberFromText("" + newChild, returnFiber.mode, lanes);
7946					created.return = returnFiber;
7947					return created;
7948				}
7949				if (typeof newChild === "object" && newChild !== null) {
7950					switch (newChild.$$typeof) {
7951						case REACT_ELEMENT_TYPE:
7952							var _created = createFiberFromElement(newChild, returnFiber.mode, lanes);
7953							_created.ref = coerceRef(returnFiber, null, newChild);
7954							_created.return = returnFiber;
7955							return _created;
7956						case REACT_PORTAL_TYPE:
7957							var _created2 = createFiberFromPortal(newChild, returnFiber.mode, lanes);
7958							_created2.return = returnFiber;
7959							return _created2;
7960						case REACT_LAZY_TYPE:
7961							var payload = newChild._payload;
7962							var init = newChild._init;
7963							return createChild(returnFiber, init(payload), lanes);
7964					}
7965					if (isArray(newChild) || getIteratorFn(newChild)) {
7966						var _created3 = createFiberFromFragment(newChild, returnFiber.mode, lanes, null);
7967						_created3.return = returnFiber;
7968						return _created3;
7969					}
7970					throwOnInvalidObjectType(returnFiber, newChild);
7971				}
7972				if (typeof newChild === "function") warnOnFunctionType(returnFiber);
7973				return null;
7974			}
7975			function updateSlot(returnFiber, oldFiber, newChild, lanes) {
7976				var key = oldFiber !== null ? oldFiber.key : null;
7977				if (typeof newChild === "string" && newChild !== "" || typeof newChild === "number") {
7978					if (key !== null) return null;
7979					return updateTextNode(returnFiber, oldFiber, "" + newChild, lanes);
7980				}
7981				if (typeof newChild === "object" && newChild !== null) {
7982					switch (newChild.$$typeof) {
7983						case REACT_ELEMENT_TYPE: if (newChild.key === key) return updateElement(returnFiber, oldFiber, newChild, lanes);
7984						else return null;
7985						case REACT_PORTAL_TYPE: if (newChild.key === key) return updatePortal(returnFiber, oldFiber, newChild, lanes);
7986						else return null;
7987						case REACT_LAZY_TYPE:
7988							var payload = newChild._payload;
7989							var init = newChild._init;
7990							return updateSlot(returnFiber, oldFiber, init(payload), lanes);
7991					}
7992					if (isArray(newChild) || getIteratorFn(newChild)) {
7993						if (key !== null) return null;
7994						return updateFragment$1(returnFiber, oldFiber, newChild, lanes, null);
7995					}
7996					throwOnInvalidObjectType(returnFiber, newChild);
7997				}
7998				if (typeof newChild === "function") warnOnFunctionType(returnFiber);
7999				return null;
8000			}
8001			function updateFromMap(existingChildren, returnFiber, newIdx, newChild, lanes) {
8002				if (typeof newChild === "string" && newChild !== "" || typeof newChild === "number") return updateTextNode(returnFiber, existingChildren.get(newIdx) || null, "" + newChild, lanes);
8003				if (typeof newChild === "object" && newChild !== null) {
8004					switch (newChild.$$typeof) {
8005						case REACT_ELEMENT_TYPE: return updateElement(returnFiber, existingChildren.get(newChild.key === null ? newIdx : newChild.key) || null, newChild, lanes);
8006						case REACT_PORTAL_TYPE: return updatePortal(returnFiber, existingChildren.get(newChild.key === null ? newIdx : newChild.key) || null, newChild, lanes);
8007						case REACT_LAZY_TYPE:
8008							var payload = newChild._payload;
8009							var init = newChild._init;
8010							return updateFromMap(existingChildren, returnFiber, newIdx, init(payload), lanes);
8011					}
8012					if (isArray(newChild) || getIteratorFn(newChild)) return updateFragment$1(returnFiber, existingChildren.get(newIdx) || null, newChild, lanes, null);
8013					throwOnInvalidObjectType(returnFiber, newChild);
8014				}
8015				if (typeof newChild === "function") warnOnFunctionType(returnFiber);
8016				return null;
8017			}
8018			function warnOnInvalidKey(child, knownKeys, returnFiber) {
8019				if (typeof child !== "object" || child === null) return knownKeys;
8020				switch (child.$$typeof) {
8021					case REACT_ELEMENT_TYPE:
8022					case REACT_PORTAL_TYPE:
8023						warnForMissingKey(child, returnFiber);
8024						var key = child.key;
8025						if (typeof key !== "string") break;
8026						if (knownKeys === null) {
8027							knownKeys = /* @__PURE__ */ new Set();
8028							knownKeys.add(key);
8029							break;
8030						}
8031						if (!knownKeys.has(key)) {
8032							knownKeys.add(key);
8033							break;
8034						}
8035						error("Encountered two children with the same key, `%s`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/or omitted — the behavior is unsupported and could change in a future version.", key);
8036						break;
8037					case REACT_LAZY_TYPE:
8038						var payload = child._payload;
8039						var init = child._init;
8040						warnOnInvalidKey(init(payload), knownKeys, returnFiber);
8041						break;
8042				}
8043				return knownKeys;
8044			}
8045			function reconcileChildrenArray(returnFiber, currentFirstChild, newChildren, lanes) {
8046				var knownKeys = null;
8047				for (var i = 0; i < newChildren.length; i++) {
8048					var child = newChildren[i];
8049					knownKeys = warnOnInvalidKey(child, knownKeys, returnFiber);
8050				}
8051				var resultingFirstChild = null;
8052				var previousNewFiber = null;
8053				var oldFiber = currentFirstChild;
8054				var lastPlacedIndex = 0;
8055				var newIdx = 0;
8056				var nextOldFiber = null;
8057				for (; oldFiber !== null && newIdx < newChildren.length; newIdx++) {
8058					if (oldFiber.index > newIdx) {
8059						nextOldFiber = oldFiber;
8060						oldFiber = null;
8061					} else nextOldFiber = oldFiber.sibling;
8062					var newFiber = updateSlot(returnFiber, oldFiber, newChildren[newIdx], lanes);
8063					if (newFiber === null) {
8064						if (oldFiber === null) oldFiber = nextOldFiber;
8065						break;
8066					}
8067					if (shouldTrackSideEffects) {
8068						if (oldFiber && newFiber.alternate === null) deleteChild(returnFiber, oldFiber);
8069					}
8070					lastPlacedIndex = placeChild(newFiber, lastPlacedIndex, newIdx);
8071					if (previousNewFiber === null) resultingFirstChild = newFiber;
8072					else previousNewFiber.sibling = newFiber;
8073					previousNewFiber = newFiber;
8074					oldFiber = nextOldFiber;
8075				}
8076				if (newIdx === newChildren.length) {
8077					deleteRemainingChildren(returnFiber, oldFiber);
8078					if (getIsHydrating()) pushTreeFork(returnFiber, newIdx);
8079					return resultingFirstChild;
8080				}
8081				if (oldFiber === null) {
8082					for (; newIdx < newChildren.length; newIdx++) {
8083						var _newFiber = createChild(returnFiber, newChildren[newIdx], lanes);
8084						if (_newFiber === null) continue;
8085						lastPlacedIndex = placeChild(_newFiber, lastPlacedIndex, newIdx);
8086						if (previousNewFiber === null) resultingFirstChild = _newFiber;
8087						else previousNewFiber.sibling = _newFiber;
8088						previousNewFiber = _newFiber;
8089					}
8090					if (getIsHydrating()) pushTreeFork(returnFiber, newIdx);
8091					return resultingFirstChild;
8092				}
8093				var existingChildren = mapRemainingChildren(returnFiber, oldFiber);
8094				for (; newIdx < newChildren.length; newIdx++) {
8095					var _newFiber2 = updateFromMap(existingChildren, returnFiber, newIdx, newChildren[newIdx], lanes);
8096					if (_newFiber2 !== null) {
8097						if (shouldTrackSideEffects) {
8098							if (_newFiber2.alternate !== null) existingChildren.delete(_newFiber2.key === null ? newIdx : _newFiber2.key);
8099						}
8100						lastPlacedIndex = placeChild(_newFiber2, lastPlacedIndex, newIdx);
8101						if (previousNewFiber === null) resultingFirstChild = _newFiber2;
8102						else previousNewFiber.sibling = _newFiber2;
8103						previousNewFiber = _newFiber2;
8104					}
8105				}
8106				if (shouldTrackSideEffects) existingChildren.forEach(function(child$1) {
8107					return deleteChild(returnFiber, child$1);
8108				});
8109				if (getIsHydrating()) pushTreeFork(returnFiber, newIdx);
8110				return resultingFirstChild;
8111			}
8112			function reconcileChildrenIterator(returnFiber, currentFirstChild, newChildrenIterable, lanes) {
8113				var iteratorFn = getIteratorFn(newChildrenIterable);
8114				if (typeof iteratorFn !== "function") throw new Error("An object is not an iterable. This error is likely caused by a bug in React. Please file an issue.");
8115				if (typeof Symbol === "function" && newChildrenIterable[Symbol.toStringTag] === "Generator") {
8116					if (!didWarnAboutGenerators) error("Using Generators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. Keep in mind you might need to polyfill these features for older browsers.");
8117					didWarnAboutGenerators = true;
8118				}
8119				if (newChildrenIterable.entries === iteratorFn) {
8120					if (!didWarnAboutMaps) error("Using Maps as children is not supported. Use an array of keyed ReactElements instead.");
8121					didWarnAboutMaps = true;
8122				}
8123				var _newChildren = iteratorFn.call(newChildrenIterable);
8124				if (_newChildren) {
8125					var knownKeys = null;
8126					var _step = _newChildren.next();
8127					for (; !_step.done; _step = _newChildren.next()) {
8128						var child = _step.value;
8129						knownKeys = warnOnInvalidKey(child, knownKeys, returnFiber);
8130					}
8131				}
8132				var newChildren = iteratorFn.call(newChildrenIterable);
8133				if (newChildren == null) throw new Error("An iterable object provided no iterator.");
8134				var resultingFirstChild = null;
8135				var previousNewFiber = null;
8136				var oldFiber = currentFirstChild;
8137				var lastPlacedIndex = 0;
8138				var newIdx = 0;
8139				var nextOldFiber = null;
8140				var step = newChildren.next();
8141				for (; oldFiber !== null && !step.done; newIdx++, step = newChildren.next()) {
8142					if (oldFiber.index > newIdx) {
8143						nextOldFiber = oldFiber;
8144						oldFiber = null;
8145					} else nextOldFiber = oldFiber.sibling;
8146					var newFiber = updateSlot(returnFiber, oldFiber, step.value, lanes);
8147					if (newFiber === null) {
8148						if (oldFiber === null) oldFiber = nextOldFiber;
8149						break;
8150					}
8151					if (shouldTrackSideEffects) {
8152						if (oldFiber && newFiber.alternate === null) deleteChild(returnFiber, oldFiber);
8153					}
8154					lastPlacedIndex = placeChild(newFiber, lastPlacedIndex, newIdx);
8155					if (previousNewFiber === null) resultingFirstChild = newFiber;
8156					else previousNewFiber.sibling = newFiber;
8157					previousNewFiber = newFiber;
8158					oldFiber = nextOldFiber;
8159				}
8160				if (step.done) {
8161					deleteRemainingChildren(returnFiber, oldFiber);
8162					if (getIsHydrating()) pushTreeFork(returnFiber, newIdx);
8163					return resultingFirstChild;
8164				}
8165				if (oldFiber === null) {
8166					for (; !step.done; newIdx++, step = newChildren.next()) {
8167						var _newFiber3 = createChild(returnFiber, step.value, lanes);
8168						if (_newFiber3 === null) continue;
8169						lastPlacedIndex = placeChild(_newFiber3, lastPlacedIndex, newIdx);
8170						if (previousNewFiber === null) resultingFirstChild = _newFiber3;
8171						else previousNewFiber.sibling = _newFiber3;
8172						previousNewFiber = _newFiber3;
8173					}
8174					if (getIsHydrating()) pushTreeFork(returnFiber, newIdx);
8175					return resultingFirstChild;
8176				}
8177				var existingChildren = mapRemainingChildren(returnFiber, oldFiber);
8178				for (; !step.done; newIdx++, step = newChildren.next()) {
8179					var _newFiber4 = updateFromMap(existingChildren, returnFiber, newIdx, step.value, lanes);
8180					if (_newFiber4 !== null) {
8181						if (shouldTrackSideEffects) {
8182							if (_newFiber4.alternate !== null) existingChildren.delete(_newFiber4.key === null ? newIdx : _newFiber4.key);
8183						}
8184						lastPlacedIndex = placeChild(_newFiber4, lastPlacedIndex, newIdx);
8185						if (previousNewFiber === null) resultingFirstChild = _newFiber4;
8186						else previousNewFiber.sibling = _newFiber4;
8187						previousNewFiber = _newFiber4;
8188					}
8189				}
8190				if (shouldTrackSideEffects) existingChildren.forEach(function(child$1) {
8191					return deleteChild(returnFiber, child$1);
8192				});
8193				if (getIsHydrating()) pushTreeFork(returnFiber, newIdx);
8194				return resultingFirstChild;
8195			}
8196			function reconcileSingleTextNode(returnFiber, currentFirstChild, textContent, lanes) {
8197				if (currentFirstChild !== null && currentFirstChild.tag === HostText) {
8198					deleteRemainingChildren(returnFiber, currentFirstChild.sibling);
8199					var existing = useFiber(currentFirstChild, textContent);
8200					existing.return = returnFiber;
8201					return existing;
8202				}
8203				deleteRemainingChildren(returnFiber, currentFirstChild);
8204				var created = createFiberFromText(textContent, returnFiber.mode, lanes);
8205				created.return = returnFiber;
8206				return created;
8207			}
8208			function reconcileSingleElement(returnFiber, currentFirstChild, element, lanes) {
8209				var key = element.key;
8210				var child = currentFirstChild;
8211				while (child !== null) {
8212					if (child.key === key) {
8213						var elementType = element.type;
8214						if (elementType === REACT_FRAGMENT_TYPE) {
8215							if (child.tag === Fragment) {
8216								deleteRemainingChildren(returnFiber, child.sibling);
8217								var existing = useFiber(child, element.props.children);
8218								existing.return = returnFiber;
8219								existing._debugSource = element._source;
8220								existing._debugOwner = element._owner;
8221								return existing;
8222							}
8223						} else if (child.elementType === elementType || isCompatibleFamilyForHotReloading(child, element) || typeof elementType === "object" && elementType !== null && elementType.$$typeof === REACT_LAZY_TYPE && resolveLazy(elementType) === child.type) {
8224							deleteRemainingChildren(returnFiber, child.sibling);
8225							var _existing = useFiber(child, element.props);
8226							_existing.ref = coerceRef(returnFiber, child, element);
8227							_existing.return = returnFiber;
8228							_existing._debugSource = element._source;
8229							_existing._debugOwner = element._owner;
8230							return _existing;
8231						}
8232						deleteRemainingChildren(returnFiber, child);
8233						break;
8234					} else deleteChild(returnFiber, child);
8235					child = child.sibling;
8236				}
8237				if (element.type === REACT_FRAGMENT_TYPE) {
8238					var created = createFiberFromFragment(element.props.children, returnFiber.mode, lanes, element.key);
8239					created.return = returnFiber;
8240					return created;
8241				} else {
8242					var _created4 = createFiberFromElement(element, returnFiber.mode, lanes);
8243					_created4.ref = coerceRef(returnFiber, currentFirstChild, element);
8244					_created4.return = returnFiber;
8245					return _created4;
8246				}
8247			}
8248			function reconcileSinglePortal(returnFiber, currentFirstChild, portal, lanes) {
8249				var key = portal.key;
8250				var child = currentFirstChild;
8251				while (child !== null) {
8252					if (child.key === key) if (child.tag === HostPortal && child.stateNode.containerInfo === portal.containerInfo && child.stateNode.implementation === portal.implementation) {
8253						deleteRemainingChildren(returnFiber, child.sibling);
8254						var existing = useFiber(child, portal.children || []);
8255						existing.return = returnFiber;
8256						return existing;
8257					} else {
8258						deleteRemainingChildren(returnFiber, child);
8259						break;
8260					}
8261					else deleteChild(returnFiber, child);
8262					child = child.sibling;
8263				}
8264				var created = createFiberFromPortal(portal, returnFiber.mode, lanes);
8265				created.return = returnFiber;
8266				return created;
8267			}
8268			function reconcileChildFibers$1(returnFiber, currentFirstChild, newChild, lanes) {
8269				if (typeof newChild === "object" && newChild !== null && newChild.type === REACT_FRAGMENT_TYPE && newChild.key === null) newChild = newChild.props.children;
8270				if (typeof newChild === "object" && newChild !== null) {
8271					switch (newChild.$$typeof) {
8272						case REACT_ELEMENT_TYPE: return placeSingleChild(reconcileSingleElement(returnFiber, currentFirstChild, newChild, lanes));
8273						case REACT_PORTAL_TYPE: return placeSingleChild(reconcileSinglePortal(returnFiber, currentFirstChild, newChild, lanes));
8274						case REACT_LAZY_TYPE:
8275							var payload = newChild._payload;
8276							var init = newChild._init;
8277							return reconcileChildFibers$1(returnFiber, currentFirstChild, init(payload), lanes);
8278					}
8279					if (isArray(newChild)) return reconcileChildrenArray(returnFiber, currentFirstChild, newChild, lanes);
8280					if (getIteratorFn(newChild)) return reconcileChildrenIterator(returnFiber, currentFirstChild, newChild, lanes);
8281					throwOnInvalidObjectType(returnFiber, newChild);
8282				}
8283				if (typeof newChild === "string" && newChild !== "" || typeof newChild === "number") return placeSingleChild(reconcileSingleTextNode(returnFiber, currentFirstChild, "" + newChild, lanes));
8284				if (typeof newChild === "function") warnOnFunctionType(returnFiber);
8285				return deleteRemainingChildren(returnFiber, currentFirstChild);
8286			}
8287			return reconcileChildFibers$1;
8288		}
8289		var reconcileChildFibers = ChildReconciler(true);
8290		var mountChildFibers = ChildReconciler(false);
8291		function cloneChildFibers(current$1, workInProgress$1) {
8292			if (current$1 !== null && workInProgress$1.child !== current$1.child) throw new Error("Resuming work not yet implemented.");
8293			if (workInProgress$1.child === null) return;
8294			var currentChild = workInProgress$1.child;
8295			var newChild = createWorkInProgress(currentChild, currentChild.pendingProps);
8296			workInProgress$1.child = newChild;
8297			newChild.return = workInProgress$1;
8298			while (currentChild.sibling !== null) {
8299				currentChild = currentChild.sibling;
8300				newChild = newChild.sibling = createWorkInProgress(currentChild, currentChild.pendingProps);
8301				newChild.return = workInProgress$1;
8302			}
8303			newChild.sibling = null;
8304		}
8305		function resetChildFibers(workInProgress$1, lanes) {
8306			var child = workInProgress$1.child;
8307			while (child !== null) {
8308				resetWorkInProgress(child, lanes);
8309				child = child.sibling;
8310			}
8311		}
8312		var valueCursor = createCursor(null);
8313		var rendererSigil = {};
8314		var currentlyRenderingFiber = null;
8315		var lastContextDependency = null;
8316		var lastFullyObservedContext = null;
8317		var isDisallowedContextReadInDEV = false;
8318		function resetContextDependencies() {
8319			currentlyRenderingFiber = null;
8320			lastContextDependency = null;
8321			lastFullyObservedContext = null;
8322			isDisallowedContextReadInDEV = false;
8323		}
8324		function enterDisallowedContextReadInDEV() {
8325			isDisallowedContextReadInDEV = true;
8326		}
8327		function exitDisallowedContextReadInDEV() {
8328			isDisallowedContextReadInDEV = false;
8329		}
8330		function pushProvider(providerFiber, context, nextValue) {
8331			push(valueCursor, context._currentValue, providerFiber);
8332			context._currentValue = nextValue;
8333			if (context._currentRenderer !== void 0 && context._currentRenderer !== null && context._currentRenderer !== rendererSigil) error("Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.");
8334			context._currentRenderer = rendererSigil;
8335		}
8336		function popProvider(context, providerFiber) {
8337			var currentValue = valueCursor.current;
8338			pop(valueCursor, providerFiber);
8339			context._currentValue = currentValue;
8340		}
8341		function scheduleContextWorkOnParentPath(parent, renderLanes$1, propagationRoot) {
8342			var node = parent;
8343			while (node !== null) {
8344				var alternate = node.alternate;
8345				if (!isSubsetOfLanes(node.childLanes, renderLanes$1)) {
8346					node.childLanes = mergeLanes(node.childLanes, renderLanes$1);
8347					if (alternate !== null) alternate.childLanes = mergeLanes(alternate.childLanes, renderLanes$1);
8348				} else if (alternate !== null && !isSubsetOfLanes(alternate.childLanes, renderLanes$1)) alternate.childLanes = mergeLanes(alternate.childLanes, renderLanes$1);
8349				if (node === propagationRoot) break;
8350				node = node.return;
8351			}
8352			if (node !== propagationRoot) error("Expected to find the propagation root when scheduling context work. This error is likely caused by a bug in React. Please file an issue.");
8353		}
8354		function propagateContextChange(workInProgress$1, context, renderLanes$1) {
8355			propagateContextChange_eager(workInProgress$1, context, renderLanes$1);
8356		}
8357		function propagateContextChange_eager(workInProgress$1, context, renderLanes$1) {
8358			var fiber = workInProgress$1.child;
8359			if (fiber !== null) fiber.return = workInProgress$1;
8360			while (fiber !== null) {
8361				var nextFiber = void 0;
8362				var list = fiber.dependencies;
8363				if (list !== null) {
8364					nextFiber = fiber.child;
8365					var dependency = list.firstContext;
8366					while (dependency !== null) {
8367						if (dependency.context === context) {
8368							if (fiber.tag === ClassComponent) {
8369								var update = createUpdate(NoTimestamp, pickArbitraryLane(renderLanes$1));
8370								update.tag = ForceUpdate;
8371								var updateQueue = fiber.updateQueue;
8372								if (updateQueue === null);
8373								else {
8374									var sharedQueue = updateQueue.shared;
8375									var pending = sharedQueue.pending;
8376									if (pending === null) update.next = update;
8377									else {
8378										update.next = pending.next;
8379										pending.next = update;
8380									}
8381									sharedQueue.pending = update;
8382								}
8383							}
8384							fiber.lanes = mergeLanes(fiber.lanes, renderLanes$1);
8385							var alternate = fiber.alternate;
8386							if (alternate !== null) alternate.lanes = mergeLanes(alternate.lanes, renderLanes$1);
8387							scheduleContextWorkOnParentPath(fiber.return, renderLanes$1, workInProgress$1);
8388							list.lanes = mergeLanes(list.lanes, renderLanes$1);
8389							break;
8390						}
8391						dependency = dependency.next;
8392					}
8393				} else if (fiber.tag === ContextProvider) nextFiber = fiber.type === workInProgress$1.type ? null : fiber.child;
8394				else if (fiber.tag === DehydratedFragment) {
8395					var parentSuspense = fiber.return;
8396					if (parentSuspense === null) throw new Error("We just came from a parent so we must have had a parent. This is a bug in React.");
8397					parentSuspense.lanes = mergeLanes(parentSuspense.lanes, renderLanes$1);
8398					var _alternate = parentSuspense.alternate;
8399					if (_alternate !== null) _alternate.lanes = mergeLanes(_alternate.lanes, renderLanes$1);
8400					scheduleContextWorkOnParentPath(parentSuspense, renderLanes$1, workInProgress$1);
8401					nextFiber = fiber.sibling;
8402				} else nextFiber = fiber.child;
8403				if (nextFiber !== null) nextFiber.return = fiber;
8404				else {
8405					nextFiber = fiber;
8406					while (nextFiber !== null) {
8407						if (nextFiber === workInProgress$1) {
8408							nextFiber = null;
8409							break;
8410						}
8411						var sibling = nextFiber.sibling;
8412						if (sibling !== null) {
8413							sibling.return = nextFiber.return;
8414							nextFiber = sibling;
8415							break;
8416						}
8417						nextFiber = nextFiber.return;
8418					}
8419				}
8420				fiber = nextFiber;
8421			}
8422		}
8423		function prepareToReadContext(workInProgress$1, renderLanes$1) {
8424			currentlyRenderingFiber = workInProgress$1;
8425			lastContextDependency = null;
8426			lastFullyObservedContext = null;
8427			var dependencies = workInProgress$1.dependencies;
8428			if (dependencies !== null) {
8429				if (dependencies.firstContext !== null) {
8430					if (includesSomeLane(dependencies.lanes, renderLanes$1)) markWorkInProgressReceivedUpdate();
8431					dependencies.firstContext = null;
8432				}
8433			}
8434		}
8435		function readContext(context) {
8436			if (isDisallowedContextReadInDEV) error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().");
8437			var value = context._currentValue;
8438			if (lastFullyObservedContext === context);
8439			else {
8440				var contextItem = {
8441					context,
8442					memoizedValue: value,
8443					next: null
8444				};
8445				if (lastContextDependency === null) {
8446					if (currentlyRenderingFiber === null) throw new Error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().");
8447					lastContextDependency = contextItem;
8448					currentlyRenderingFiber.dependencies = {
8449						lanes: NoLanes,
8450						firstContext: contextItem
8451					};
8452				} else lastContextDependency = lastContextDependency.next = contextItem;
8453			}
8454			return value;
8455		}
8456		var concurrentQueues = null;
8457		function pushConcurrentUpdateQueue(queue) {
8458			if (concurrentQueues === null) concurrentQueues = [queue];
8459			else concurrentQueues.push(queue);
8460		}
8461		function finishQueueingConcurrentUpdates() {
8462			if (concurrentQueues !== null) {
8463				for (var i = 0; i < concurrentQueues.length; i++) {
8464					var queue = concurrentQueues[i];
8465					var lastInterleavedUpdate = queue.interleaved;
8466					if (lastInterleavedUpdate !== null) {
8467						queue.interleaved = null;
8468						var firstInterleavedUpdate = lastInterleavedUpdate.next;
8469						var lastPendingUpdate = queue.pending;
8470						if (lastPendingUpdate !== null) {
8471							var firstPendingUpdate = lastPendingUpdate.next;
8472							lastPendingUpdate.next = firstInterleavedUpdate;
8473							lastInterleavedUpdate.next = firstPendingUpdate;
8474						}
8475						queue.pending = lastInterleavedUpdate;
8476					}
8477				}
8478				concurrentQueues = null;
8479			}
8480		}
8481		function enqueueConcurrentHookUpdate(fiber, queue, update, lane) {
8482			var interleaved = queue.interleaved;
8483			if (interleaved === null) {
8484				update.next = update;
8485				pushConcurrentUpdateQueue(queue);
8486			} else {
8487				update.next = interleaved.next;
8488				interleaved.next = update;
8489			}
8490			queue.interleaved = update;
8491			return markUpdateLaneFromFiberToRoot(fiber, lane);
8492		}
8493		function enqueueConcurrentHookUpdateAndEagerlyBailout(fiber, queue, update, lane) {
8494			var interleaved = queue.interleaved;
8495			if (interleaved === null) {
8496				update.next = update;
8497				pushConcurrentUpdateQueue(queue);
8498			} else {
8499				update.next = interleaved.next;
8500				interleaved.next = update;
8501			}
8502			queue.interleaved = update;
8503		}
8504		function enqueueConcurrentClassUpdate(fiber, queue, update, lane) {
8505			var interleaved = queue.interleaved;
8506			if (interleaved === null) {
8507				update.next = update;
8508				pushConcurrentUpdateQueue(queue);
8509			} else {
8510				update.next = interleaved.next;
8511				interleaved.next = update;
8512			}
8513			queue.interleaved = update;
8514			return markUpdateLaneFromFiberToRoot(fiber, lane);
8515		}
8516		function enqueueConcurrentRenderForLane(fiber, lane) {
8517			return markUpdateLaneFromFiberToRoot(fiber, lane);
8518		}
8519		var unsafe_markUpdateLaneFromFiberToRoot = markUpdateLaneFromFiberToRoot;
8520		function markUpdateLaneFromFiberToRoot(sourceFiber, lane) {
8521			sourceFiber.lanes = mergeLanes(sourceFiber.lanes, lane);
8522			var alternate = sourceFiber.alternate;
8523			if (alternate !== null) alternate.lanes = mergeLanes(alternate.lanes, lane);
8524			if (alternate === null && (sourceFiber.flags & (Placement | Hydrating)) !== NoFlags) warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber);
8525			var node = sourceFiber;
8526			var parent = sourceFiber.return;
8527			while (parent !== null) {
8528				parent.childLanes = mergeLanes(parent.childLanes, lane);
8529				alternate = parent.alternate;
8530				if (alternate !== null) alternate.childLanes = mergeLanes(alternate.childLanes, lane);
8531				else if ((parent.flags & (Placement | Hydrating)) !== NoFlags) warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber);
8532				node = parent;
8533				parent = parent.return;
8534			}
8535			if (node.tag === HostRoot) return node.stateNode;
8536			else return null;
8537		}
8538		var UpdateState = 0;
8539		var ReplaceState = 1;
8540		var ForceUpdate = 2;
8541		var CaptureUpdate = 3;
8542		var hasForceUpdate = false;
8543		var didWarnUpdateInsideUpdate;
8544		var currentlyProcessingQueue;
8545		didWarnUpdateInsideUpdate = false;
8546		currentlyProcessingQueue = null;
8547		function initializeUpdateQueue(fiber) {
8548			fiber.updateQueue = {
8549				baseState: fiber.memoizedState,
8550				firstBaseUpdate: null,
8551				lastBaseUpdate: null,
8552				shared: {
8553					pending: null,
8554					interleaved: null,
8555					lanes: NoLanes
8556				},
8557				effects: null
8558			};
8559		}
8560		function cloneUpdateQueue(current$1, workInProgress$1) {
8561			var queue = workInProgress$1.updateQueue;
8562			var currentQueue = current$1.updateQueue;
8563			if (queue === currentQueue) workInProgress$1.updateQueue = {
8564				baseState: currentQueue.baseState,
8565				firstBaseUpdate: currentQueue.firstBaseUpdate,
8566				lastBaseUpdate: currentQueue.lastBaseUpdate,
8567				shared: currentQueue.shared,
8568				effects: currentQueue.effects
8569			};
8570		}
8571		function createUpdate(eventTime, lane) {
8572			return {
8573				eventTime,
8574				lane,
8575				tag: UpdateState,
8576				payload: null,
8577				callback: null,
8578				next: null
8579			};
8580		}
8581		function enqueueUpdate(fiber, update, lane) {
8582			var updateQueue = fiber.updateQueue;
8583			if (updateQueue === null) return null;
8584			var sharedQueue = updateQueue.shared;
8585			if (currentlyProcessingQueue === sharedQueue && !didWarnUpdateInsideUpdate) {
8586				error("An update (setState, replaceState, or forceUpdate) was scheduled from inside an update function. Update functions should be pure, with zero side-effects. Consider using componentDidUpdate or a callback.");
8587				didWarnUpdateInsideUpdate = true;
8588			}
8589			if (isUnsafeClassRenderPhaseUpdate()) {
8590				var pending = sharedQueue.pending;
8591				if (pending === null) update.next = update;
8592				else {
8593					update.next = pending.next;
8594					pending.next = update;
8595				}
8596				sharedQueue.pending = update;
8597				return unsafe_markUpdateLaneFromFiberToRoot(fiber, lane);
8598			} else return enqueueConcurrentClassUpdate(fiber, sharedQueue, update, lane);
8599		}
8600		function entangleTransitions(root$1, fiber, lane) {
8601			var updateQueue = fiber.updateQueue;
8602			if (updateQueue === null) return;
8603			var sharedQueue = updateQueue.shared;
8604			if (isTransitionLane(lane)) {
8605				var queueLanes = sharedQueue.lanes;
8606				queueLanes = intersectLanes(queueLanes, root$1.pendingLanes);
8607				var newQueueLanes = mergeLanes(queueLanes, lane);
8608				sharedQueue.lanes = newQueueLanes;
8609				markRootEntangled(root$1, newQueueLanes);
8610			}
8611		}
8612		function enqueueCapturedUpdate(workInProgress$1, capturedUpdate) {
8613			var queue = workInProgress$1.updateQueue;
8614			var current$1 = workInProgress$1.alternate;
8615			if (current$1 !== null) {
8616				var currentQueue = current$1.updateQueue;
8617				if (queue === currentQueue) {
8618					var newFirst = null;
8619					var newLast = null;
8620					var firstBaseUpdate = queue.firstBaseUpdate;
8621					if (firstBaseUpdate !== null) {
8622						var update = firstBaseUpdate;
8623						do {
8624							var clone = {
8625								eventTime: update.eventTime,
8626								lane: update.lane,
8627								tag: update.tag,
8628								payload: update.payload,
8629								callback: update.callback,
8630								next: null
8631							};
8632							if (newLast === null) newFirst = newLast = clone;
8633							else {
8634								newLast.next = clone;
8635								newLast = clone;
8636							}
8637							update = update.next;
8638						} while (update !== null);
8639						if (newLast === null) newFirst = newLast = capturedUpdate;
8640						else {
8641							newLast.next = capturedUpdate;
8642							newLast = capturedUpdate;
8643						}
8644					} else newFirst = newLast = capturedUpdate;
8645					queue = {
8646						baseState: currentQueue.baseState,
8647						firstBaseUpdate: newFirst,
8648						lastBaseUpdate: newLast,
8649						shared: currentQueue.shared,
8650						effects: currentQueue.effects
8651					};
8652					workInProgress$1.updateQueue = queue;
8653					return;
8654				}
8655			}
8656			var lastBaseUpdate = queue.lastBaseUpdate;
8657			if (lastBaseUpdate === null) queue.firstBaseUpdate = capturedUpdate;
8658			else lastBaseUpdate.next = capturedUpdate;
8659			queue.lastBaseUpdate = capturedUpdate;
8660		}
8661		function getStateFromUpdate(workInProgress$1, queue, update, prevState, nextProps, instance) {
8662			switch (update.tag) {
8663				case ReplaceState:
8664					var payload = update.payload;
8665					if (typeof payload === "function") {
8666						enterDisallowedContextReadInDEV();
8667						var nextState = payload.call(instance, prevState, nextProps);
8668						if (workInProgress$1.mode & StrictLegacyMode) {
8669							setIsStrictModeForDevtools(true);
8670							try {
8671								payload.call(instance, prevState, nextProps);
8672							} finally {
8673								setIsStrictModeForDevtools(false);
8674							}
8675						}
8676						exitDisallowedContextReadInDEV();
8677						return nextState;
8678					}
8679					return payload;
8680				case CaptureUpdate: workInProgress$1.flags = workInProgress$1.flags & ~ShouldCapture | DidCapture;
8681				case UpdateState:
8682					var _payload = update.payload;
8683					var partialState;
8684					if (typeof _payload === "function") {
8685						enterDisallowedContextReadInDEV();
8686						partialState = _payload.call(instance, prevState, nextProps);
8687						if (workInProgress$1.mode & StrictLegacyMode) {
8688							setIsStrictModeForDevtools(true);
8689							try {
8690								_payload.call(instance, prevState, nextProps);
8691							} finally {
8692								setIsStrictModeForDevtools(false);
8693							}
8694						}
8695						exitDisallowedContextReadInDEV();
8696					} else partialState = _payload;
8697					if (partialState === null || partialState === void 0) return prevState;
8698					return assign({}, prevState, partialState);
8699				case ForceUpdate:
8700					hasForceUpdate = true;
8701					return prevState;
8702			}
8703			return prevState;
8704		}
8705		function processUpdateQueue(workInProgress$1, props, instance, renderLanes$1) {
8706			var queue = workInProgress$1.updateQueue;
8707			hasForceUpdate = false;
8708			currentlyProcessingQueue = queue.shared;
8709			var firstBaseUpdate = queue.firstBaseUpdate;
8710			var lastBaseUpdate = queue.lastBaseUpdate;
8711			var pendingQueue = queue.shared.pending;
8712			if (pendingQueue !== null) {
8713				queue.shared.pending = null;
8714				var lastPendingUpdate = pendingQueue;
8715				var firstPendingUpdate = lastPendingUpdate.next;
8716				lastPendingUpdate.next = null;
8717				if (lastBaseUpdate === null) firstBaseUpdate = firstPendingUpdate;
8718				else lastBaseUpdate.next = firstPendingUpdate;
8719				lastBaseUpdate = lastPendingUpdate;
8720				var current$1 = workInProgress$1.alternate;
8721				if (current$1 !== null) {
8722					var currentQueue = current$1.updateQueue;
8723					var currentLastBaseUpdate = currentQueue.lastBaseUpdate;
8724					if (currentLastBaseUpdate !== lastBaseUpdate) {
8725						if (currentLastBaseUpdate === null) currentQueue.firstBaseUpdate = firstPendingUpdate;
8726						else currentLastBaseUpdate.next = firstPendingUpdate;
8727						currentQueue.lastBaseUpdate = lastPendingUpdate;
8728					}
8729				}
8730			}
8731			if (firstBaseUpdate !== null) {
8732				var newState = queue.baseState;
8733				var newLanes = NoLanes;
8734				var newBaseState = null;
8735				var newFirstBaseUpdate = null;
8736				var newLastBaseUpdate = null;
8737				var update = firstBaseUpdate;
8738				do {
8739					var updateLane = update.lane;
8740					var updateEventTime = update.eventTime;
8741					if (!isSubsetOfLanes(renderLanes$1, updateLane)) {
8742						var clone = {
8743							eventTime: updateEventTime,
8744							lane: updateLane,
8745							tag: update.tag,
8746							payload: update.payload,
8747							callback: update.callback,
8748							next: null
8749						};
8750						if (newLastBaseUpdate === null) {
8751							newFirstBaseUpdate = newLastBaseUpdate = clone;
8752							newBaseState = newState;
8753						} else newLastBaseUpdate = newLastBaseUpdate.next = clone;
8754						newLanes = mergeLanes(newLanes, updateLane);
8755					} else {
8756						if (newLastBaseUpdate !== null) newLastBaseUpdate = newLastBaseUpdate.next = {
8757							eventTime: updateEventTime,
8758							lane: NoLane,
8759							tag: update.tag,
8760							payload: update.payload,
8761							callback: update.callback,
8762							next: null
8763						};
8764						newState = getStateFromUpdate(workInProgress$1, queue, update, newState, props, instance);
8765						if (update.callback !== null && update.lane !== NoLane) {
8766							workInProgress$1.flags |= Callback;
8767							var effects = queue.effects;
8768							if (effects === null) queue.effects = [update];
8769							else effects.push(update);
8770						}
8771					}
8772					update = update.next;
8773					if (update === null) {
8774						pendingQueue = queue.shared.pending;
8775						if (pendingQueue === null) break;
8776						else {
8777							var _lastPendingUpdate = pendingQueue;
8778							var _firstPendingUpdate = _lastPendingUpdate.next;
8779							_lastPendingUpdate.next = null;
8780							update = _firstPendingUpdate;
8781							queue.lastBaseUpdate = _lastPendingUpdate;
8782							queue.shared.pending = null;
8783						}
8784					}
8785				} while (true);
8786				if (newLastBaseUpdate === null) newBaseState = newState;
8787				queue.baseState = newBaseState;
8788				queue.firstBaseUpdate = newFirstBaseUpdate;
8789				queue.lastBaseUpdate = newLastBaseUpdate;
8790				var lastInterleaved = queue.shared.interleaved;
8791				if (lastInterleaved !== null) {
8792					var interleaved = lastInterleaved;
8793					do {
8794						newLanes = mergeLanes(newLanes, interleaved.lane);
8795						interleaved = interleaved.next;
8796					} while (interleaved !== lastInterleaved);
8797				} else if (firstBaseUpdate === null) queue.shared.lanes = NoLanes;
8798				markSkippedUpdateLanes(newLanes);
8799				workInProgress$1.lanes = newLanes;
8800				workInProgress$1.memoizedState = newState;
8801			}
8802			currentlyProcessingQueue = null;
8803		}
8804		function callCallback(callback, context) {
8805			if (typeof callback !== "function") throw new Error("Invalid argument passed as callback. Expected a function. Instead " + ("received: " + callback));
8806			callback.call(context);
8807		}
8808		function resetHasForceUpdateBeforeProcessing() {
8809			hasForceUpdate = false;
8810		}
8811		function checkHasForceUpdateAfterProcessing() {
8812			return hasForceUpdate;
8813		}
8814		function commitUpdateQueue(finishedWork, finishedQueue, instance) {
8815			var effects = finishedQueue.effects;
8816			finishedQueue.effects = null;
8817			if (effects !== null) for (var i = 0; i < effects.length; i++) {
8818				var effect = effects[i];
8819				var callback = effect.callback;
8820				if (callback !== null) {
8821					effect.callback = null;
8822					callCallback(callback, instance);
8823				}
8824			}
8825		}
8826		var NO_CONTEXT = {};
8827		var contextStackCursor$1 = createCursor(NO_CONTEXT);
8828		var contextFiberStackCursor = createCursor(NO_CONTEXT);
8829		var rootInstanceStackCursor = createCursor(NO_CONTEXT);
8830		function requiredContext(c) {
8831			if (c === NO_CONTEXT) throw new Error("Expected host context to exist. This error is likely caused by a bug in React. Please file an issue.");
8832			return c;
8833		}
8834		function getRootHostContainer() {
8835			return requiredContext(rootInstanceStackCursor.current);
8836		}
8837		function pushHostContainer(fiber, nextRootInstance) {
8838			push(rootInstanceStackCursor, nextRootInstance, fiber);
8839			push(contextFiberStackCursor, fiber, fiber);
8840			push(contextStackCursor$1, NO_CONTEXT, fiber);
8841			var nextRootContext = getRootHostContext(nextRootInstance);
8842			pop(contextStackCursor$1, fiber);
8843			push(contextStackCursor$1, nextRootContext, fiber);
8844		}
8845		function popHostContainer(fiber) {
8846			pop(contextStackCursor$1, fiber);
8847			pop(contextFiberStackCursor, fiber);
8848			pop(rootInstanceStackCursor, fiber);
8849		}
8850		function getHostContext() {
8851			return requiredContext(contextStackCursor$1.current);
8852		}
8853		function pushHostContext(fiber) {
8854			requiredContext(rootInstanceStackCursor.current);
8855			var context = requiredContext(contextStackCursor$1.current);
8856			var nextContext = getChildHostContext(context, fiber.type);
8857			if (context === nextContext) return;
8858			push(contextFiberStackCursor, fiber, fiber);
8859			push(contextStackCursor$1, nextContext, fiber);
8860		}
8861		function popHostContext(fiber) {
8862			if (contextFiberStackCursor.current !== fiber) return;
8863			pop(contextStackCursor$1, fiber);
8864			pop(contextFiberStackCursor, fiber);
8865		}
8866		var DefaultSuspenseContext = 0;
8867		var SubtreeSuspenseContextMask = 1;
8868		var InvisibleParentSuspenseContext = 1;
8869		var ForceSuspenseFallback = 2;
8870		var suspenseStackCursor = createCursor(DefaultSuspenseContext);
8871		function hasSuspenseContext(parentContext, flag) {
8872			return (parentContext & flag) !== 0;
8873		}
8874		function setDefaultShallowSuspenseContext(parentContext) {
8875			return parentContext & SubtreeSuspenseContextMask;
8876		}
8877		function setShallowSuspenseContext(parentContext, shallowContext) {
8878			return parentContext & SubtreeSuspenseContextMask | shallowContext;
8879		}
8880		function addSubtreeSuspenseContext(parentContext, subtreeContext) {
8881			return parentContext | subtreeContext;
8882		}
8883		function pushSuspenseContext(fiber, newContext) {
8884			push(suspenseStackCursor, newContext, fiber);
8885		}
8886		function popSuspenseContext(fiber) {
8887			pop(suspenseStackCursor, fiber);
8888		}
8889		function shouldCaptureSuspense(workInProgress$1, hasInvisibleParent) {
8890			var nextState = workInProgress$1.memoizedState;
8891			if (nextState !== null) {
8892				if (nextState.dehydrated !== null) return true;
8893				return false;
8894			}
8895			workInProgress$1.memoizedProps;
8896			return true;
8897		}
8898		function findFirstSuspended(row) {
8899			var node = row;
8900			while (node !== null) {
8901				if (node.tag === SuspenseComponent) {
8902					var state = node.memoizedState;
8903					if (state !== null) {
8904						var dehydrated = state.dehydrated;
8905						if (dehydrated === null || isSuspenseInstancePending(dehydrated) || isSuspenseInstanceFallback(dehydrated)) return node;
8906					}
8907				} else if (node.tag === SuspenseListComponent && node.memoizedProps.revealOrder !== void 0) {
8908					if ((node.flags & DidCapture) !== NoFlags) return node;
8909				} else if (node.child !== null) {
8910					node.child.return = node;
8911					node = node.child;
8912					continue;
8913				}
8914				if (node === row) return null;
8915				while (node.sibling === null) {
8916					if (node.return === null || node.return === row) return null;
8917					node = node.return;
8918				}
8919				node.sibling.return = node.return;
8920				node = node.sibling;
8921			}
8922			return null;
8923		}
8924		var NoFlags$1 = 0;
8925		var HasEffect = 1;
8926		var Insertion = 2;
8927		var Layout = 4;
8928		var Passive$1 = 8;
8929		var workInProgressSources = [];
8930		function resetWorkInProgressVersions() {
8931			for (var i = 0; i < workInProgressSources.length; i++) {
8932				var mutableSource = workInProgressSources[i];
8933				mutableSource._workInProgressVersionPrimary = null;
8934			}
8935			workInProgressSources.length = 0;
8936		}
8937		function registerMutableSourceForHydration(root$1, mutableSource) {
8938			var getVersion = mutableSource._getVersion;
8939			var version = getVersion(mutableSource._source);
8940			if (root$1.mutableSourceEagerHydrationData == null) root$1.mutableSourceEagerHydrationData = [mutableSource, version];
8941			else root$1.mutableSourceEagerHydrationData.push(mutableSource, version);
8942		}
8943		var ReactCurrentDispatcher$1 = ReactSharedInternals.ReactCurrentDispatcher, ReactCurrentBatchConfig$2 = ReactSharedInternals.ReactCurrentBatchConfig;
8944		var didWarnAboutMismatchedHooksForComponent;
8945		var didWarnUncachedGetSnapshot;
8946		didWarnAboutMismatchedHooksForComponent = /* @__PURE__ */ new Set();
8947		var renderLanes = NoLanes;
8948		var currentlyRenderingFiber$1 = null;
8949		var currentHook = null;
8950		var workInProgressHook = null;
8951		var didScheduleRenderPhaseUpdate = false;
8952		var didScheduleRenderPhaseUpdateDuringThisPass = false;
8953		var localIdCounter = 0;
8954		var globalClientIdCounter = 0;
8955		var RE_RENDER_LIMIT = 25;
8956		var currentHookNameInDev = null;
8957		var hookTypesDev = null;
8958		var hookTypesUpdateIndexDev = -1;
8959		var ignorePreviousDependencies = false;
8960		function mountHookTypesDev() {
8961			var hookName = currentHookNameInDev;
8962			if (hookTypesDev === null) hookTypesDev = [hookName];
8963			else hookTypesDev.push(hookName);
8964		}
8965		function updateHookTypesDev() {
8966			var hookName = currentHookNameInDev;
8967			if (hookTypesDev !== null) {
8968				hookTypesUpdateIndexDev++;
8969				if (hookTypesDev[hookTypesUpdateIndexDev] !== hookName) warnOnHookMismatchInDev(hookName);
8970			}
8971		}
8972		function checkDepsAreArrayDev(deps) {
8973			if (deps !== void 0 && deps !== null && !isArray(deps)) error("%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.", currentHookNameInDev, typeof deps);
8974		}
8975		function warnOnHookMismatchInDev(currentHookName) {
8976			var componentName = getComponentNameFromFiber(currentlyRenderingFiber$1);
8977			if (!didWarnAboutMismatchedHooksForComponent.has(componentName)) {
8978				didWarnAboutMismatchedHooksForComponent.add(componentName);
8979				if (hookTypesDev !== null) {
8980					var table = "";
8981					var secondColumnStart = 30;
8982					for (var i = 0; i <= hookTypesUpdateIndexDev; i++) {
8983						var oldHookName = hookTypesDev[i];
8984						var newHookName = i === hookTypesUpdateIndexDev ? currentHookName : oldHookName;
8985						var row = i + 1 + ". " + oldHookName;
8986						while (row.length < secondColumnStart) row += " ";
8987						row += newHookName + "\n";
8988						table += row;
8989					}
8990					error("React has detected a change in the order of Hooks called by %s. This will lead to bugs and errors if not fixed. For more information, read the Rules of Hooks: https://reactjs.org/link/rules-of-hooks\n\n   Previous render            Next render\n   ------------------------------------------------------\n%s   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n", componentName, table);
8991				}
8992			}
8993		}
8994		function throwInvalidHookError() {
8995			throw new Error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");
8996		}
8997		function areHookInputsEqual(nextDeps, prevDeps) {
8998			if (ignorePreviousDependencies) return false;
8999			if (prevDeps === null) {
9000				error("%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.", currentHookNameInDev);
9001				return false;
9002			}
9003			if (nextDeps.length !== prevDeps.length) error("The final argument passed to %s changed size between renders. The order and size of this array must remain constant.\n\nPrevious: %s\nIncoming: %s", currentHookNameInDev, "[" + prevDeps.join(", ") + "]", "[" + nextDeps.join(", ") + "]");
9004			for (var i = 0; i < prevDeps.length && i < nextDeps.length; i++) {
9005				if (objectIs(nextDeps[i], prevDeps[i])) continue;
9006				return false;
9007			}
9008			return true;
9009		}
9010		function renderWithHooks(current$1, workInProgress$1, Component, props, secondArg, nextRenderLanes) {
9011			renderLanes = nextRenderLanes;
9012			currentlyRenderingFiber$1 = workInProgress$1;
9013			hookTypesDev = current$1 !== null ? current$1._debugHookTypes : null;
9014			hookTypesUpdateIndexDev = -1;
9015			ignorePreviousDependencies = current$1 !== null && current$1.type !== workInProgress$1.type;
9016			workInProgress$1.memoizedState = null;
9017			workInProgress$1.updateQueue = null;
9018			workInProgress$1.lanes = NoLanes;
9019			if (current$1 !== null && current$1.memoizedState !== null) ReactCurrentDispatcher$1.current = HooksDispatcherOnUpdateInDEV;
9020			else if (hookTypesDev !== null) ReactCurrentDispatcher$1.current = HooksDispatcherOnMountWithHookTypesInDEV;
9021			else ReactCurrentDispatcher$1.current = HooksDispatcherOnMountInDEV;
9022			var children = Component(props, secondArg);
9023			if (didScheduleRenderPhaseUpdateDuringThisPass) {
9024				var numberOfReRenders = 0;
9025				do {
9026					didScheduleRenderPhaseUpdateDuringThisPass = false;
9027					localIdCounter = 0;
9028					if (numberOfReRenders >= RE_RENDER_LIMIT) throw new Error("Too many re-renders. React limits the number of renders to prevent an infinite loop.");
9029					numberOfReRenders += 1;
9030					ignorePreviousDependencies = false;
9031					currentHook = null;
9032					workInProgressHook = null;
9033					workInProgress$1.updateQueue = null;
9034					hookTypesUpdateIndexDev = -1;
9035					ReactCurrentDispatcher$1.current = HooksDispatcherOnRerenderInDEV;
9036					children = Component(props, secondArg);
9037				} while (didScheduleRenderPhaseUpdateDuringThisPass);
9038			}
9039			ReactCurrentDispatcher$1.current = ContextOnlyDispatcher;
9040			workInProgress$1._debugHookTypes = hookTypesDev;
9041			var didRenderTooFewHooks = currentHook !== null && currentHook.next !== null;
9042			renderLanes = NoLanes;
9043			currentlyRenderingFiber$1 = null;
9044			currentHook = null;
9045			workInProgressHook = null;
9046			currentHookNameInDev = null;
9047			hookTypesDev = null;
9048			hookTypesUpdateIndexDev = -1;
9049			if (current$1 !== null && (current$1.flags & StaticMask) !== (workInProgress$1.flags & StaticMask) && (current$1.mode & ConcurrentMode) !== NoMode) error("Internal React error: Expected static flag was missing. Please notify the React team.");
9050			didScheduleRenderPhaseUpdate = false;
9051			if (didRenderTooFewHooks) throw new Error("Rendered fewer hooks than expected. This may be caused by an accidental early return statement.");
9052			return children;
9053		}
9054		function checkDidRenderIdHook() {
9055			var didRenderIdHook = localIdCounter !== 0;
9056			localIdCounter = 0;
9057			return didRenderIdHook;
9058		}
9059		function bailoutHooks(current$1, workInProgress$1, lanes) {
9060			workInProgress$1.updateQueue = current$1.updateQueue;
9061			if ((workInProgress$1.mode & StrictEffectsMode) !== NoMode) workInProgress$1.flags &= ~(MountPassiveDev | MountLayoutDev | Passive | Update);
9062			else workInProgress$1.flags &= ~(Passive | Update);
9063			current$1.lanes = removeLanes(current$1.lanes, lanes);
9064		}
9065		function resetHooksAfterThrow() {
9066			ReactCurrentDispatcher$1.current = ContextOnlyDispatcher;
9067			if (didScheduleRenderPhaseUpdate) {
9068				var hook = currentlyRenderingFiber$1.memoizedState;
9069				while (hook !== null) {
9070					var queue = hook.queue;
9071					if (queue !== null) queue.pending = null;
9072					hook = hook.next;
9073				}
9074				didScheduleRenderPhaseUpdate = false;
9075			}
9076			renderLanes = NoLanes;
9077			currentlyRenderingFiber$1 = null;
9078			currentHook = null;
9079			workInProgressHook = null;
9080			hookTypesDev = null;
9081			hookTypesUpdateIndexDev = -1;
9082			currentHookNameInDev = null;
9083			isUpdatingOpaqueValueInRenderPhase = false;
9084			didScheduleRenderPhaseUpdateDuringThisPass = false;
9085			localIdCounter = 0;
9086		}
9087		function mountWorkInProgressHook() {
9088			var hook = {
9089				memoizedState: null,
9090				baseState: null,
9091				baseQueue: null,
9092				queue: null,
9093				next: null
9094			};
9095			if (workInProgressHook === null) currentlyRenderingFiber$1.memoizedState = workInProgressHook = hook;
9096			else workInProgressHook = workInProgressHook.next = hook;
9097			return workInProgressHook;
9098		}
9099		function updateWorkInProgressHook() {
9100			var nextCurrentHook;
9101			if (currentHook === null) {
9102				var current$1 = currentlyRenderingFiber$1.alternate;
9103				if (current$1 !== null) nextCurrentHook = current$1.memoizedState;
9104				else nextCurrentHook = null;
9105			} else nextCurrentHook = currentHook.next;
9106			var nextWorkInProgressHook;
9107			if (workInProgressHook === null) nextWorkInProgressHook = currentlyRenderingFiber$1.memoizedState;
9108			else nextWorkInProgressHook = workInProgressHook.next;
9109			if (nextWorkInProgressHook !== null) {
9110				workInProgressHook = nextWorkInProgressHook;
9111				nextWorkInProgressHook = workInProgressHook.next;
9112				currentHook = nextCurrentHook;
9113			} else {
9114				if (nextCurrentHook === null) throw new Error("Rendered more hooks than during the previous render.");
9115				currentHook = nextCurrentHook;
9116				var newHook = {
9117					memoizedState: currentHook.memoizedState,
9118					baseState: currentHook.baseState,
9119					baseQueue: currentHook.baseQueue,
9120					queue: currentHook.queue,
9121					next: null
9122				};
9123				if (workInProgressHook === null) currentlyRenderingFiber$1.memoizedState = workInProgressHook = newHook;
9124				else workInProgressHook = workInProgressHook.next = newHook;
9125			}
9126			return workInProgressHook;
9127		}
9128		function createFunctionComponentUpdateQueue() {
9129			return {
9130				lastEffect: null,
9131				stores: null
9132			};
9133		}
9134		function basicStateReducer(state, action) {
9135			return typeof action === "function" ? action(state) : action;
9136		}
9137		function mountReducer(reducer, initialArg, init) {
9138			var hook = mountWorkInProgressHook();
9139			var initialState;
9140			if (init !== void 0) initialState = init(initialArg);
9141			else initialState = initialArg;
9142			hook.memoizedState = hook.baseState = initialState;
9143			var queue = {
9144				pending: null,
9145				interleaved: null,
9146				lanes: NoLanes,
9147				dispatch: null,
9148				lastRenderedReducer: reducer,
9149				lastRenderedState: initialState
9150			};
9151			hook.queue = queue;
9152			var dispatch = queue.dispatch = dispatchReducerAction.bind(null, currentlyRenderingFiber$1, queue);
9153			return [hook.memoizedState, dispatch];
9154		}
9155		function updateReducer(reducer, initialArg, init) {
9156			var hook = updateWorkInProgressHook();
9157			var queue = hook.queue;
9158			if (queue === null) throw new Error("Should have a queue. This is likely a bug in React. Please file an issue.");
9159			queue.lastRenderedReducer = reducer;
9160			var current$1 = currentHook;
9161			var baseQueue = current$1.baseQueue;
9162			var pendingQueue = queue.pending;
9163			if (pendingQueue !== null) {
9164				if (baseQueue !== null) {
9165					var baseFirst = baseQueue.next;
9166					baseQueue.next = pendingQueue.next;
9167					pendingQueue.next = baseFirst;
9168				}
9169				if (current$1.baseQueue !== baseQueue) error("Internal error: Expected work-in-progress queue to be a clone. This is a bug in React.");
9170				current$1.baseQueue = baseQueue = pendingQueue;
9171				queue.pending = null;
9172			}
9173			if (baseQueue !== null) {
9174				var first = baseQueue.next;
9175				var newState = current$1.baseState;
9176				var newBaseState = null;
9177				var newBaseQueueFirst = null;
9178				var newBaseQueueLast = null;
9179				var update = first;
9180				do {
9181					var updateLane = update.lane;
9182					if (!isSubsetOfLanes(renderLanes, updateLane)) {
9183						var clone = {
9184							lane: updateLane,
9185							action: update.action,
9186							hasEagerState: update.hasEagerState,
9187							eagerState: update.eagerState,
9188							next: null
9189						};
9190						if (newBaseQueueLast === null) {
9191							newBaseQueueFirst = newBaseQueueLast = clone;
9192							newBaseState = newState;
9193						} else newBaseQueueLast = newBaseQueueLast.next = clone;
9194						currentlyRenderingFiber$1.lanes = mergeLanes(currentlyRenderingFiber$1.lanes, updateLane);
9195						markSkippedUpdateLanes(updateLane);
9196					} else {
9197						if (newBaseQueueLast !== null) newBaseQueueLast = newBaseQueueLast.next = {
9198							lane: NoLane,
9199							action: update.action,
9200							hasEagerState: update.hasEagerState,
9201							eagerState: update.eagerState,
9202							next: null
9203						};
9204						if (update.hasEagerState) newState = update.eagerState;
9205						else {
9206							var action = update.action;
9207							newState = reducer(newState, action);
9208						}
9209					}
9210					update = update.next;
9211				} while (update !== null && update !== first);
9212				if (newBaseQueueLast === null) newBaseState = newState;
9213				else newBaseQueueLast.next = newBaseQueueFirst;
9214				if (!objectIs(newState, hook.memoizedState)) markWorkInProgressReceivedUpdate();
9215				hook.memoizedState = newState;
9216				hook.baseState = newBaseState;
9217				hook.baseQueue = newBaseQueueLast;
9218				queue.lastRenderedState = newState;
9219			}
9220			var lastInterleaved = queue.interleaved;
9221			if (lastInterleaved !== null) {
9222				var interleaved = lastInterleaved;
9223				do {
9224					var interleavedLane = interleaved.lane;
9225					currentlyRenderingFiber$1.lanes = mergeLanes(currentlyRenderingFiber$1.lanes, interleavedLane);
9226					markSkippedUpdateLanes(interleavedLane);
9227					interleaved = interleaved.next;
9228				} while (interleaved !== lastInterleaved);
9229			} else if (baseQueue === null) queue.lanes = NoLanes;
9230			var dispatch = queue.dispatch;
9231			return [hook.memoizedState, dispatch];
9232		}
9233		function rerenderReducer(reducer, initialArg, init) {
9234			var hook = updateWorkInProgressHook();
9235			var queue = hook.queue;
9236			if (queue === null) throw new Error("Should have a queue. This is likely a bug in React. Please file an issue.");
9237			queue.lastRenderedReducer = reducer;
9238			var dispatch = queue.dispatch;
9239			var lastRenderPhaseUpdate = queue.pending;
9240			var newState = hook.memoizedState;
9241			if (lastRenderPhaseUpdate !== null) {
9242				queue.pending = null;
9243				var firstRenderPhaseUpdate = lastRenderPhaseUpdate.next;
9244				var update = firstRenderPhaseUpdate;
9245				do {
9246					var action = update.action;
9247					newState = reducer(newState, action);
9248					update = update.next;
9249				} while (update !== firstRenderPhaseUpdate);
9250				if (!objectIs(newState, hook.memoizedState)) markWorkInProgressReceivedUpdate();
9251				hook.memoizedState = newState;
9252				if (hook.baseQueue === null) hook.baseState = newState;
9253				queue.lastRenderedState = newState;
9254			}
9255			return [newState, dispatch];
9256		}
9257		function mountMutableSource(source, getSnapshot, subscribe) {}
9258		function updateMutableSource(source, getSnapshot, subscribe) {}
9259		function mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {
9260			var fiber = currentlyRenderingFiber$1;
9261			var hook = mountWorkInProgressHook();
9262			var nextSnapshot;
9263			if (getIsHydrating()) {
9264				if (getServerSnapshot === void 0) throw new Error("Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.");
9265				nextSnapshot = getServerSnapshot();
9266				if (!didWarnUncachedGetSnapshot) {
9267					if (nextSnapshot !== getServerSnapshot()) {
9268						error("The result of getServerSnapshot should be cached to avoid an infinite loop");
9269						didWarnUncachedGetSnapshot = true;
9270					}
9271				}
9272			} else {
9273				nextSnapshot = getSnapshot();
9274				if (!didWarnUncachedGetSnapshot) {
9275					var cachedSnapshot = getSnapshot();
9276					if (!objectIs(nextSnapshot, cachedSnapshot)) {
9277						error("The result of getSnapshot should be cached to avoid an infinite loop");
9278						didWarnUncachedGetSnapshot = true;
9279					}
9280				}
9281				var root$1 = getWorkInProgressRoot();
9282				if (root$1 === null) throw new Error("Expected a work-in-progress root. This is a bug in React. Please file an issue.");
9283				if (!includesBlockingLane(root$1, renderLanes)) pushStoreConsistencyCheck(fiber, getSnapshot, nextSnapshot);
9284			}
9285			hook.memoizedState = nextSnapshot;
9286			var inst = {
9287				value: nextSnapshot,
9288				getSnapshot
9289			};
9290			hook.queue = inst;
9291			mountEffect(subscribeToStore.bind(null, fiber, inst, subscribe), [subscribe]);
9292			fiber.flags |= Passive;
9293			pushEffect(HasEffect | Passive$1, updateStoreInstance.bind(null, fiber, inst, nextSnapshot, getSnapshot), void 0, null);
9294			return nextSnapshot;
9295		}
9296		function updateSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {
9297			var fiber = currentlyRenderingFiber$1;
9298			var hook = updateWorkInProgressHook();
9299			var nextSnapshot = getSnapshot();
9300			if (!didWarnUncachedGetSnapshot) {
9301				if (!objectIs(nextSnapshot, getSnapshot())) {
9302					error("The result of getSnapshot should be cached to avoid an infinite loop");
9303					didWarnUncachedGetSnapshot = true;
9304				}
9305			}
9306			var prevSnapshot = hook.memoizedState;
9307			var snapshotChanged = !objectIs(prevSnapshot, nextSnapshot);
9308			if (snapshotChanged) {
9309				hook.memoizedState = nextSnapshot;
9310				markWorkInProgressReceivedUpdate();
9311			}
9312			var inst = hook.queue;
9313			updateEffect(subscribeToStore.bind(null, fiber, inst, subscribe), [subscribe]);
9314			if (inst.getSnapshot !== getSnapshot || snapshotChanged || workInProgressHook !== null && workInProgressHook.memoizedState.tag & HasEffect) {
9315				fiber.flags |= Passive;
9316				pushEffect(HasEffect | Passive$1, updateStoreInstance.bind(null, fiber, inst, nextSnapshot, getSnapshot), void 0, null);
9317				var root$1 = getWorkInProgressRoot();
9318				if (root$1 === null) throw new Error("Expected a work-in-progress root. This is a bug in React. Please file an issue.");
9319				if (!includesBlockingLane(root$1, renderLanes)) pushStoreConsistencyCheck(fiber, getSnapshot, nextSnapshot);
9320			}
9321			return nextSnapshot;
9322		}
9323		function pushStoreConsistencyCheck(fiber, getSnapshot, renderedSnapshot) {
9324			fiber.flags |= StoreConsistency;
9325			var check = {
9326				getSnapshot,
9327				value: renderedSnapshot
9328			};
9329			var componentUpdateQueue = currentlyRenderingFiber$1.updateQueue;
9330			if (componentUpdateQueue === null) {
9331				componentUpdateQueue = createFunctionComponentUpdateQueue();
9332				currentlyRenderingFiber$1.updateQueue = componentUpdateQueue;
9333				componentUpdateQueue.stores = [check];
9334			} else {
9335				var stores = componentUpdateQueue.stores;
9336				if (stores === null) componentUpdateQueue.stores = [check];
9337				else stores.push(check);
9338			}
9339		}
9340		function updateStoreInstance(fiber, inst, nextSnapshot, getSnapshot) {
9341			inst.value = nextSnapshot;
9342			inst.getSnapshot = getSnapshot;
9343			if (checkIfSnapshotChanged(inst)) forceStoreRerender(fiber);
9344		}
9345		function subscribeToStore(fiber, inst, subscribe) {
9346			var handleStoreChange = function() {
9347				if (checkIfSnapshotChanged(inst)) forceStoreRerender(fiber);
9348			};
9349			return subscribe(handleStoreChange);
9350		}
9351		function checkIfSnapshotChanged(inst) {
9352			var latestGetSnapshot = inst.getSnapshot;
9353			var prevValue = inst.value;
9354			try {
9355				return !objectIs(prevValue, latestGetSnapshot());
9356			} catch (error$1) {
9357				return true;
9358			}
9359		}
9360		function forceStoreRerender(fiber) {
9361			var root$1 = enqueueConcurrentRenderForLane(fiber, SyncLane);
9362			if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, SyncLane, NoTimestamp);
9363		}
9364		function mountState(initialState) {
9365			var hook = mountWorkInProgressHook();
9366			if (typeof initialState === "function") initialState = initialState();
9367			hook.memoizedState = hook.baseState = initialState;
9368			var queue = {
9369				pending: null,
9370				interleaved: null,
9371				lanes: NoLanes,
9372				dispatch: null,
9373				lastRenderedReducer: basicStateReducer,
9374				lastRenderedState: initialState
9375			};
9376			hook.queue = queue;
9377			var dispatch = queue.dispatch = dispatchSetState.bind(null, currentlyRenderingFiber$1, queue);
9378			return [hook.memoizedState, dispatch];
9379		}
9380		function updateState(initialState) {
9381			return updateReducer(basicStateReducer);
9382		}
9383		function rerenderState(initialState) {
9384			return rerenderReducer(basicStateReducer);
9385		}
9386		function pushEffect(tag, create, destroy, deps) {
9387			var effect = {
9388				tag,
9389				create,
9390				destroy,
9391				deps,
9392				next: null
9393			};
9394			var componentUpdateQueue = currentlyRenderingFiber$1.updateQueue;
9395			if (componentUpdateQueue === null) {
9396				componentUpdateQueue = createFunctionComponentUpdateQueue();
9397				currentlyRenderingFiber$1.updateQueue = componentUpdateQueue;
9398				componentUpdateQueue.lastEffect = effect.next = effect;
9399			} else {
9400				var lastEffect = componentUpdateQueue.lastEffect;
9401				if (lastEffect === null) componentUpdateQueue.lastEffect = effect.next = effect;
9402				else {
9403					var firstEffect = lastEffect.next;
9404					lastEffect.next = effect;
9405					effect.next = firstEffect;
9406					componentUpdateQueue.lastEffect = effect;
9407				}
9408			}
9409			return effect;
9410		}
9411		function mountRef(initialValue) {
9412			var hook = mountWorkInProgressHook();
9413			var _ref2 = { current: initialValue };
9414			hook.memoizedState = _ref2;
9415			return _ref2;
9416		}
9417		function updateRef(initialValue) {
9418			return updateWorkInProgressHook().memoizedState;
9419		}
9420		function mountEffectImpl(fiberFlags, hookFlags, create, deps) {
9421			var hook = mountWorkInProgressHook();
9422			var nextDeps = deps === void 0 ? null : deps;
9423			currentlyRenderingFiber$1.flags |= fiberFlags;
9424			hook.memoizedState = pushEffect(HasEffect | hookFlags, create, void 0, nextDeps);
9425		}
9426		function updateEffectImpl(fiberFlags, hookFlags, create, deps) {
9427			var hook = updateWorkInProgressHook();
9428			var nextDeps = deps === void 0 ? null : deps;
9429			var destroy = void 0;
9430			if (currentHook !== null) {
9431				var prevEffect = currentHook.memoizedState;
9432				destroy = prevEffect.destroy;
9433				if (nextDeps !== null) {
9434					var prevDeps = prevEffect.deps;
9435					if (areHookInputsEqual(nextDeps, prevDeps)) {
9436						hook.memoizedState = pushEffect(hookFlags, create, destroy, nextDeps);
9437						return;
9438					}
9439				}
9440			}
9441			currentlyRenderingFiber$1.flags |= fiberFlags;
9442			hook.memoizedState = pushEffect(HasEffect | hookFlags, create, destroy, nextDeps);
9443		}
9444		function mountEffect(create, deps) {
9445			if ((currentlyRenderingFiber$1.mode & StrictEffectsMode) !== NoMode) return mountEffectImpl(MountPassiveDev | Passive | PassiveStatic, Passive$1, create, deps);
9446			else return mountEffectImpl(Passive | PassiveStatic, Passive$1, create, deps);
9447		}
9448		function updateEffect(create, deps) {
9449			return updateEffectImpl(Passive, Passive$1, create, deps);
9450		}
9451		function mountInsertionEffect(create, deps) {
9452			return mountEffectImpl(Update, Insertion, create, deps);
9453		}
9454		function updateInsertionEffect(create, deps) {
9455			return updateEffectImpl(Update, Insertion, create, deps);
9456		}
9457		function mountLayoutEffect(create, deps) {
9458			var fiberFlags = Update;
9459			fiberFlags |= LayoutStatic;
9460			if ((currentlyRenderingFiber$1.mode & StrictEffectsMode) !== NoMode) fiberFlags |= MountLayoutDev;
9461			return mountEffectImpl(fiberFlags, Layout, create, deps);
9462		}
9463		function updateLayoutEffect(create, deps) {
9464			return updateEffectImpl(Update, Layout, create, deps);
9465		}
9466		function imperativeHandleEffect(create, ref) {
9467			if (typeof ref === "function") {
9468				var refCallback = ref;
9469				refCallback(create());
9470				return function() {
9471					refCallback(null);
9472				};
9473			} else if (ref !== null && ref !== void 0) {
9474				var refObject = ref;
9475				if (!refObject.hasOwnProperty("current")) error("Expected useImperativeHandle() first argument to either be a ref callback or React.createRef() object. Instead received: %s.", "an object with keys {" + Object.keys(refObject).join(", ") + "}");
9476				refObject.current = create();
9477				return function() {
9478					refObject.current = null;
9479				};
9480			}
9481		}
9482		function mountImperativeHandle(ref, create, deps) {
9483			if (typeof create !== "function") error("Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.", create !== null ? typeof create : "null");
9484			var effectDeps = deps !== null && deps !== void 0 ? deps.concat([ref]) : null;
9485			var fiberFlags = Update;
9486			fiberFlags |= LayoutStatic;
9487			if ((currentlyRenderingFiber$1.mode & StrictEffectsMode) !== NoMode) fiberFlags |= MountLayoutDev;
9488			return mountEffectImpl(fiberFlags, Layout, imperativeHandleEffect.bind(null, create, ref), effectDeps);
9489		}
9490		function updateImperativeHandle(ref, create, deps) {
9491			if (typeof create !== "function") error("Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.", create !== null ? typeof create : "null");
9492			var effectDeps = deps !== null && deps !== void 0 ? deps.concat([ref]) : null;
9493			return updateEffectImpl(Update, Layout, imperativeHandleEffect.bind(null, create, ref), effectDeps);
9494		}
9495		function mountDebugValue(value, formatterFn) {}
9496		var updateDebugValue = mountDebugValue;
9497		function mountCallback(callback, deps) {
9498			var hook = mountWorkInProgressHook();
9499			hook.memoizedState = [callback, deps === void 0 ? null : deps];
9500			return callback;
9501		}
9502		function updateCallback(callback, deps) {
9503			var hook = updateWorkInProgressHook();
9504			var nextDeps = deps === void 0 ? null : deps;
9505			var prevState = hook.memoizedState;
9506			if (prevState !== null) {
9507				if (nextDeps !== null) {
9508					var prevDeps = prevState[1];
9509					if (areHookInputsEqual(nextDeps, prevDeps)) return prevState[0];
9510				}
9511			}
9512			hook.memoizedState = [callback, nextDeps];
9513			return callback;
9514		}
9515		function mountMemo(nextCreate, deps) {
9516			var hook = mountWorkInProgressHook();
9517			var nextDeps = deps === void 0 ? null : deps;
9518			var nextValue = nextCreate();
9519			hook.memoizedState = [nextValue, nextDeps];
9520			return nextValue;
9521		}
9522		function updateMemo(nextCreate, deps) {
9523			var hook = updateWorkInProgressHook();
9524			var nextDeps = deps === void 0 ? null : deps;
9525			var prevState = hook.memoizedState;
9526			if (prevState !== null) {
9527				if (nextDeps !== null) {
9528					var prevDeps = prevState[1];
9529					if (areHookInputsEqual(nextDeps, prevDeps)) return prevState[0];
9530				}
9531			}
9532			var nextValue = nextCreate();
9533			hook.memoizedState = [nextValue, nextDeps];
9534			return nextValue;
9535		}
9536		function mountDeferredValue(value) {
9537			var hook = mountWorkInProgressHook();
9538			hook.memoizedState = value;
9539			return value;
9540		}
9541		function updateDeferredValue(value) {
9542			var hook = updateWorkInProgressHook();
9543			var prevValue = currentHook.memoizedState;
9544			return updateDeferredValueImpl(hook, prevValue, value);
9545		}
9546		function rerenderDeferredValue(value) {
9547			var hook = updateWorkInProgressHook();
9548			if (currentHook === null) {
9549				hook.memoizedState = value;
9550				return value;
9551			} else {
9552				var prevValue = currentHook.memoizedState;
9553				return updateDeferredValueImpl(hook, prevValue, value);
9554			}
9555		}
9556		function updateDeferredValueImpl(hook, prevValue, value) {
9557			if (!includesOnlyNonUrgentLanes(renderLanes)) {
9558				if (!objectIs(value, prevValue)) {
9559					var deferredLane = claimNextTransitionLane();
9560					currentlyRenderingFiber$1.lanes = mergeLanes(currentlyRenderingFiber$1.lanes, deferredLane);
9561					markSkippedUpdateLanes(deferredLane);
9562					hook.baseState = true;
9563				}
9564				return prevValue;
9565			} else {
9566				if (hook.baseState) {
9567					hook.baseState = false;
9568					markWorkInProgressReceivedUpdate();
9569				}
9570				hook.memoizedState = value;
9571				return value;
9572			}
9573		}
9574		function startTransition(setPending, callback, options$1) {
9575			var previousPriority = getCurrentUpdatePriority();
9576			setCurrentUpdatePriority(higherEventPriority(previousPriority, ContinuousEventPriority));
9577			setPending(true);
9578			var prevTransition = ReactCurrentBatchConfig$2.transition;
9579			ReactCurrentBatchConfig$2.transition = {};
9580			var currentTransition = ReactCurrentBatchConfig$2.transition;
9581			ReactCurrentBatchConfig$2.transition._updatedFibers = /* @__PURE__ */ new Set();
9582			try {
9583				setPending(false);
9584				callback();
9585			} finally {
9586				setCurrentUpdatePriority(previousPriority);
9587				ReactCurrentBatchConfig$2.transition = prevTransition;
9588				if (prevTransition === null && currentTransition._updatedFibers) {
9589					if (currentTransition._updatedFibers.size > 10) warn("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.");
9590					currentTransition._updatedFibers.clear();
9591				}
9592			}
9593		}
9594		function mountTransition() {
9595			var _mountState = mountState(false), isPending = _mountState[0], setPending = _mountState[1];
9596			var start = startTransition.bind(null, setPending);
9597			var hook = mountWorkInProgressHook();
9598			hook.memoizedState = start;
9599			return [isPending, start];
9600		}
9601		function updateTransition() {
9602			return [updateState()[0], updateWorkInProgressHook().memoizedState];
9603		}
9604		function rerenderTransition() {
9605			return [rerenderState()[0], updateWorkInProgressHook().memoizedState];
9606		}
9607		var isUpdatingOpaqueValueInRenderPhase = false;
9608		function getIsUpdatingOpaqueValueInRenderPhaseInDEV() {
9609			return isUpdatingOpaqueValueInRenderPhase;
9610		}
9611		function mountId() {
9612			var hook = mountWorkInProgressHook();
9613			var identifierPrefix = getWorkInProgressRoot().identifierPrefix;
9614			var id;
9615			if (getIsHydrating()) {
9616				var treeId = getTreeId();
9617				id = ":" + identifierPrefix + "R" + treeId;
9618				var localId = localIdCounter++;
9619				if (localId > 0) id += "H" + localId.toString(32);
9620				id += ":";
9621			} else {
9622				var globalClientId = globalClientIdCounter++;
9623				id = ":" + identifierPrefix + "r" + globalClientId.toString(32) + ":";
9624			}
9625			hook.memoizedState = id;
9626			return id;
9627		}
9628		function updateId() {
9629			return updateWorkInProgressHook().memoizedState;
9630		}
9631		function dispatchReducerAction(fiber, queue, action) {
9632			if (typeof arguments[3] === "function") error("State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().");
9633			var lane = requestUpdateLane(fiber);
9634			var update = {
9635				lane,
9636				action,
9637				hasEagerState: false,
9638				eagerState: null,
9639				next: null
9640			};
9641			if (isRenderPhaseUpdate(fiber)) enqueueRenderPhaseUpdate(queue, update);
9642			else {
9643				var root$1 = enqueueConcurrentHookUpdate(fiber, queue, update, lane);
9644				if (root$1 !== null) {
9645					scheduleUpdateOnFiber(root$1, fiber, lane, requestEventTime());
9646					entangleTransitionUpdate(root$1, queue, lane);
9647				}
9648			}
9649			markUpdateInDevTools(fiber, lane);
9650		}
9651		function dispatchSetState(fiber, queue, action) {
9652			if (typeof arguments[3] === "function") error("State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().");
9653			var lane = requestUpdateLane(fiber);
9654			var update = {
9655				lane,
9656				action,
9657				hasEagerState: false,
9658				eagerState: null,
9659				next: null
9660			};
9661			if (isRenderPhaseUpdate(fiber)) enqueueRenderPhaseUpdate(queue, update);
9662			else {
9663				var alternate = fiber.alternate;
9664				if (fiber.lanes === NoLanes && (alternate === null || alternate.lanes === NoLanes)) {
9665					var lastRenderedReducer = queue.lastRenderedReducer;
9666					if (lastRenderedReducer !== null) {
9667						var prevDispatcher = ReactCurrentDispatcher$1.current;
9668						ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
9669						try {
9670							var currentState = queue.lastRenderedState;
9671							var eagerState = lastRenderedReducer(currentState, action);
9672							update.hasEagerState = true;
9673							update.eagerState = eagerState;
9674							if (objectIs(eagerState, currentState)) {
vendor: 25,392 bytes, lines 9675-10432
9675								enqueueConcurrentHookUpdateAndEagerlyBailout(fiber, queue, update, lane);
9676								return;
9677							}
9678						} catch (error$1) {} finally {
9679							ReactCurrentDispatcher$1.current = prevDispatcher;
9680						}
9681					}
9682				}
9683				var root$1 = enqueueConcurrentHookUpdate(fiber, queue, update, lane);
9684				if (root$1 !== null) {
9685					scheduleUpdateOnFiber(root$1, fiber, lane, requestEventTime());
9686					entangleTransitionUpdate(root$1, queue, lane);
9687				}
9688			}
9689			markUpdateInDevTools(fiber, lane);
9690		}
9691		function isRenderPhaseUpdate(fiber) {
9692			var alternate = fiber.alternate;
9693			return fiber === currentlyRenderingFiber$1 || alternate !== null && alternate === currentlyRenderingFiber$1;
9694		}
9695		function enqueueRenderPhaseUpdate(queue, update) {
9696			didScheduleRenderPhaseUpdateDuringThisPass = didScheduleRenderPhaseUpdate = true;
9697			var pending = queue.pending;
9698			if (pending === null) update.next = update;
9699			else {
9700				update.next = pending.next;
9701				pending.next = update;
9702			}
9703			queue.pending = update;
9704		}
9705		function entangleTransitionUpdate(root$1, queue, lane) {
9706			if (isTransitionLane(lane)) {
9707				var queueLanes = queue.lanes;
9708				queueLanes = intersectLanes(queueLanes, root$1.pendingLanes);
9709				var newQueueLanes = mergeLanes(queueLanes, lane);
9710				queue.lanes = newQueueLanes;
9711				markRootEntangled(root$1, newQueueLanes);
9712			}
9713		}
9714		function markUpdateInDevTools(fiber, lane, action) {
9715			markStateUpdateScheduled(fiber, lane);
9716		}
9717		var ContextOnlyDispatcher = {
9718			readContext,
9719			useCallback: throwInvalidHookError,
9720			useContext: throwInvalidHookError,
9721			useEffect: throwInvalidHookError,
9722			useImperativeHandle: throwInvalidHookError,
9723			useInsertionEffect: throwInvalidHookError,
9724			useLayoutEffect: throwInvalidHookError,
9725			useMemo: throwInvalidHookError,
9726			useReducer: throwInvalidHookError,
9727			useRef: throwInvalidHookError,
9728			useState: throwInvalidHookError,
9729			useDebugValue: throwInvalidHookError,
9730			useDeferredValue: throwInvalidHookError,
9731			useTransition: throwInvalidHookError,
9732			useMutableSource: throwInvalidHookError,
9733			useSyncExternalStore: throwInvalidHookError,
9734			useId: throwInvalidHookError,
9735			unstable_isNewReconciler: enableNewReconciler
9736		};
9737		var HooksDispatcherOnMountInDEV = null;
9738		var HooksDispatcherOnMountWithHookTypesInDEV = null;
9739		var HooksDispatcherOnUpdateInDEV = null;
9740		var HooksDispatcherOnRerenderInDEV = null;
9741		var InvalidNestedHooksDispatcherOnMountInDEV = null;
9742		var InvalidNestedHooksDispatcherOnUpdateInDEV = null;
9743		var InvalidNestedHooksDispatcherOnRerenderInDEV = null;
9744		var warnInvalidContextAccess = function() {
9745			error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().");
9746		};
9747		var warnInvalidHookAccess = function() {
9748			error("Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://reactjs.org/link/rules-of-hooks");
9749		};
9750		HooksDispatcherOnMountInDEV = {
9751			readContext: function(context) {
9752				return readContext(context);
9753			},
9754			useCallback: function(callback, deps) {
9755				currentHookNameInDev = "useCallback";
9756				mountHookTypesDev();
9757				checkDepsAreArrayDev(deps);
9758				return mountCallback(callback, deps);
9759			},
9760			useContext: function(context) {
9761				currentHookNameInDev = "useContext";
9762				mountHookTypesDev();
9763				return readContext(context);
9764			},
9765			useEffect: function(create, deps) {
9766				currentHookNameInDev = "useEffect";
9767				mountHookTypesDev();
9768				checkDepsAreArrayDev(deps);
9769				return mountEffect(create, deps);
9770			},
9771			useImperativeHandle: function(ref, create, deps) {
9772				currentHookNameInDev = "useImperativeHandle";
9773				mountHookTypesDev();
9774				checkDepsAreArrayDev(deps);
9775				return mountImperativeHandle(ref, create, deps);
9776			},
9777			useInsertionEffect: function(create, deps) {
9778				currentHookNameInDev = "useInsertionEffect";
9779				mountHookTypesDev();
9780				checkDepsAreArrayDev(deps);
9781				return mountInsertionEffect(create, deps);
9782			},
9783			useLayoutEffect: function(create, deps) {
9784				currentHookNameInDev = "useLayoutEffect";
9785				mountHookTypesDev();
9786				checkDepsAreArrayDev(deps);
9787				return mountLayoutEffect(create, deps);
9788			},
9789			useMemo: function(create, deps) {
9790				currentHookNameInDev = "useMemo";
9791				mountHookTypesDev();
9792				checkDepsAreArrayDev(deps);
9793				var prevDispatcher = ReactCurrentDispatcher$1.current;
9794				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
9795				try {
9796					return mountMemo(create, deps);
9797				} finally {
9798					ReactCurrentDispatcher$1.current = prevDispatcher;
9799				}
9800			},
9801			useReducer: function(reducer, initialArg, init) {
9802				currentHookNameInDev = "useReducer";
9803				mountHookTypesDev();
9804				var prevDispatcher = ReactCurrentDispatcher$1.current;
9805				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
9806				try {
9807					return mountReducer(reducer, initialArg, init);
9808				} finally {
9809					ReactCurrentDispatcher$1.current = prevDispatcher;
9810				}
9811			},
9812			useRef: function(initialValue) {
9813				currentHookNameInDev = "useRef";
9814				mountHookTypesDev();
9815				return mountRef(initialValue);
9816			},
9817			useState: function(initialState) {
9818				currentHookNameInDev = "useState";
9819				mountHookTypesDev();
9820				var prevDispatcher = ReactCurrentDispatcher$1.current;
9821				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
9822				try {
9823					return mountState(initialState);
9824				} finally {
9825					ReactCurrentDispatcher$1.current = prevDispatcher;
9826				}
9827			},
9828			useDebugValue: function(value, formatterFn) {
9829				currentHookNameInDev = "useDebugValue";
9830				mountHookTypesDev();
9831				return mountDebugValue();
9832			},
9833			useDeferredValue: function(value) {
9834				currentHookNameInDev = "useDeferredValue";
9835				mountHookTypesDev();
9836				return mountDeferredValue(value);
9837			},
9838			useTransition: function() {
9839				currentHookNameInDev = "useTransition";
9840				mountHookTypesDev();
9841				return mountTransition();
9842			},
9843			useMutableSource: function(source, getSnapshot, subscribe) {
9844				currentHookNameInDev = "useMutableSource";
9845				mountHookTypesDev();
9846				return mountMutableSource();
9847			},
9848			useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
9849				currentHookNameInDev = "useSyncExternalStore";
9850				mountHookTypesDev();
9851				return mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
9852			},
9853			useId: function() {
9854				currentHookNameInDev = "useId";
9855				mountHookTypesDev();
9856				return mountId();
9857			},
9858			unstable_isNewReconciler: enableNewReconciler
9859		};
9860		HooksDispatcherOnMountWithHookTypesInDEV = {
9861			readContext: function(context) {
9862				return readContext(context);
9863			},
9864			useCallback: function(callback, deps) {
9865				currentHookNameInDev = "useCallback";
9866				updateHookTypesDev();
9867				return mountCallback(callback, deps);
9868			},
9869			useContext: function(context) {
9870				currentHookNameInDev = "useContext";
9871				updateHookTypesDev();
9872				return readContext(context);
9873			},
9874			useEffect: function(create, deps) {
9875				currentHookNameInDev = "useEffect";
9876				updateHookTypesDev();
9877				return mountEffect(create, deps);
9878			},
9879			useImperativeHandle: function(ref, create, deps) {
9880				currentHookNameInDev = "useImperativeHandle";
9881				updateHookTypesDev();
9882				return mountImperativeHandle(ref, create, deps);
9883			},
9884			useInsertionEffect: function(create, deps) {
9885				currentHookNameInDev = "useInsertionEffect";
9886				updateHookTypesDev();
9887				return mountInsertionEffect(create, deps);
9888			},
9889			useLayoutEffect: function(create, deps) {
9890				currentHookNameInDev = "useLayoutEffect";
9891				updateHookTypesDev();
9892				return mountLayoutEffect(create, deps);
9893			},
9894			useMemo: function(create, deps) {
9895				currentHookNameInDev = "useMemo";
9896				updateHookTypesDev();
9897				var prevDispatcher = ReactCurrentDispatcher$1.current;
9898				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
9899				try {
9900					return mountMemo(create, deps);
9901				} finally {
9902					ReactCurrentDispatcher$1.current = prevDispatcher;
9903				}
9904			},
9905			useReducer: function(reducer, initialArg, init) {
9906				currentHookNameInDev = "useReducer";
9907				updateHookTypesDev();
9908				var prevDispatcher = ReactCurrentDispatcher$1.current;
9909				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
9910				try {
9911					return mountReducer(reducer, initialArg, init);
9912				} finally {
9913					ReactCurrentDispatcher$1.current = prevDispatcher;
9914				}
9915			},
9916			useRef: function(initialValue) {
9917				currentHookNameInDev = "useRef";
9918				updateHookTypesDev();
9919				return mountRef(initialValue);
9920			},
9921			useState: function(initialState) {
9922				currentHookNameInDev = "useState";
9923				updateHookTypesDev();
9924				var prevDispatcher = ReactCurrentDispatcher$1.current;
9925				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
9926				try {
9927					return mountState(initialState);
9928				} finally {
9929					ReactCurrentDispatcher$1.current = prevDispatcher;
9930				}
9931			},
9932			useDebugValue: function(value, formatterFn) {
9933				currentHookNameInDev = "useDebugValue";
9934				updateHookTypesDev();
9935				return mountDebugValue();
9936			},
9937			useDeferredValue: function(value) {
9938				currentHookNameInDev = "useDeferredValue";
9939				updateHookTypesDev();
9940				return mountDeferredValue(value);
9941			},
9942			useTransition: function() {
9943				currentHookNameInDev = "useTransition";
9944				updateHookTypesDev();
9945				return mountTransition();
9946			},
9947			useMutableSource: function(source, getSnapshot, subscribe) {
9948				currentHookNameInDev = "useMutableSource";
9949				updateHookTypesDev();
9950				return mountMutableSource();
9951			},
9952			useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
9953				currentHookNameInDev = "useSyncExternalStore";
9954				updateHookTypesDev();
9955				return mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
9956			},
9957			useId: function() {
9958				currentHookNameInDev = "useId";
9959				updateHookTypesDev();
9960				return mountId();
9961			},
9962			unstable_isNewReconciler: enableNewReconciler
9963		};
9964		HooksDispatcherOnUpdateInDEV = {
9965			readContext: function(context) {
9966				return readContext(context);
9967			},
9968			useCallback: function(callback, deps) {
9969				currentHookNameInDev = "useCallback";
9970				updateHookTypesDev();
9971				return updateCallback(callback, deps);
9972			},
9973			useContext: function(context) {
9974				currentHookNameInDev = "useContext";
9975				updateHookTypesDev();
9976				return readContext(context);
9977			},
9978			useEffect: function(create, deps) {
9979				currentHookNameInDev = "useEffect";
9980				updateHookTypesDev();
9981				return updateEffect(create, deps);
9982			},
9983			useImperativeHandle: function(ref, create, deps) {
9984				currentHookNameInDev = "useImperativeHandle";
9985				updateHookTypesDev();
9986				return updateImperativeHandle(ref, create, deps);
9987			},
9988			useInsertionEffect: function(create, deps) {
9989				currentHookNameInDev = "useInsertionEffect";
9990				updateHookTypesDev();
9991				return updateInsertionEffect(create, deps);
9992			},
9993			useLayoutEffect: function(create, deps) {
9994				currentHookNameInDev = "useLayoutEffect";
9995				updateHookTypesDev();
9996				return updateLayoutEffect(create, deps);
9997			},
9998			useMemo: function(create, deps) {
9999				currentHookNameInDev = "useMemo";
10000				updateHookTypesDev();
10001				var prevDispatcher = ReactCurrentDispatcher$1.current;
10002				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10003				try {
10004					return updateMemo(create, deps);
10005				} finally {
10006					ReactCurrentDispatcher$1.current = prevDispatcher;
10007				}
10008			},
10009			useReducer: function(reducer, initialArg, init) {
10010				currentHookNameInDev = "useReducer";
10011				updateHookTypesDev();
10012				var prevDispatcher = ReactCurrentDispatcher$1.current;
10013				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10014				try {
10015					return updateReducer(reducer, initialArg, init);
10016				} finally {
10017					ReactCurrentDispatcher$1.current = prevDispatcher;
10018				}
10019			},
10020			useRef: function(initialValue) {
10021				currentHookNameInDev = "useRef";
10022				updateHookTypesDev();
10023				return updateRef();
10024			},
10025			useState: function(initialState) {
10026				currentHookNameInDev = "useState";
10027				updateHookTypesDev();
10028				var prevDispatcher = ReactCurrentDispatcher$1.current;
10029				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10030				try {
10031					return updateState(initialState);
10032				} finally {
10033					ReactCurrentDispatcher$1.current = prevDispatcher;
10034				}
10035			},
10036			useDebugValue: function(value, formatterFn) {
10037				currentHookNameInDev = "useDebugValue";
10038				updateHookTypesDev();
10039				return updateDebugValue();
10040			},
10041			useDeferredValue: function(value) {
10042				currentHookNameInDev = "useDeferredValue";
10043				updateHookTypesDev();
10044				return updateDeferredValue(value);
10045			},
10046			useTransition: function() {
10047				currentHookNameInDev = "useTransition";
10048				updateHookTypesDev();
10049				return updateTransition();
10050			},
10051			useMutableSource: function(source, getSnapshot, subscribe) {
10052				currentHookNameInDev = "useMutableSource";
10053				updateHookTypesDev();
10054				return updateMutableSource();
10055			},
10056			useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
10057				currentHookNameInDev = "useSyncExternalStore";
10058				updateHookTypesDev();
10059				return updateSyncExternalStore(subscribe, getSnapshot);
10060			},
10061			useId: function() {
10062				currentHookNameInDev = "useId";
10063				updateHookTypesDev();
10064				return updateId();
10065			},
10066			unstable_isNewReconciler: enableNewReconciler
10067		};
10068		HooksDispatcherOnRerenderInDEV = {
10069			readContext: function(context) {
10070				return readContext(context);
10071			},
10072			useCallback: function(callback, deps) {
10073				currentHookNameInDev = "useCallback";
10074				updateHookTypesDev();
10075				return updateCallback(callback, deps);
10076			},
10077			useContext: function(context) {
10078				currentHookNameInDev = "useContext";
10079				updateHookTypesDev();
10080				return readContext(context);
10081			},
10082			useEffect: function(create, deps) {
10083				currentHookNameInDev = "useEffect";
10084				updateHookTypesDev();
10085				return updateEffect(create, deps);
10086			},
10087			useImperativeHandle: function(ref, create, deps) {
10088				currentHookNameInDev = "useImperativeHandle";
10089				updateHookTypesDev();
10090				return updateImperativeHandle(ref, create, deps);
10091			},
10092			useInsertionEffect: function(create, deps) {
10093				currentHookNameInDev = "useInsertionEffect";
10094				updateHookTypesDev();
10095				return updateInsertionEffect(create, deps);
10096			},
10097			useLayoutEffect: function(create, deps) {
10098				currentHookNameInDev = "useLayoutEffect";
10099				updateHookTypesDev();
10100				return updateLayoutEffect(create, deps);
10101			},
10102			useMemo: function(create, deps) {
10103				currentHookNameInDev = "useMemo";
10104				updateHookTypesDev();
10105				var prevDispatcher = ReactCurrentDispatcher$1.current;
10106				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnRerenderInDEV;
10107				try {
10108					return updateMemo(create, deps);
10109				} finally {
10110					ReactCurrentDispatcher$1.current = prevDispatcher;
10111				}
10112			},
10113			useReducer: function(reducer, initialArg, init) {
10114				currentHookNameInDev = "useReducer";
10115				updateHookTypesDev();
10116				var prevDispatcher = ReactCurrentDispatcher$1.current;
10117				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnRerenderInDEV;
10118				try {
10119					return rerenderReducer(reducer, initialArg, init);
10120				} finally {
10121					ReactCurrentDispatcher$1.current = prevDispatcher;
10122				}
10123			},
10124			useRef: function(initialValue) {
10125				currentHookNameInDev = "useRef";
10126				updateHookTypesDev();
10127				return updateRef();
10128			},
10129			useState: function(initialState) {
10130				currentHookNameInDev = "useState";
10131				updateHookTypesDev();
10132				var prevDispatcher = ReactCurrentDispatcher$1.current;
10133				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnRerenderInDEV;
10134				try {
10135					return rerenderState(initialState);
10136				} finally {
10137					ReactCurrentDispatcher$1.current = prevDispatcher;
10138				}
10139			},
10140			useDebugValue: function(value, formatterFn) {
10141				currentHookNameInDev = "useDebugValue";
10142				updateHookTypesDev();
10143				return updateDebugValue();
10144			},
10145			useDeferredValue: function(value) {
10146				currentHookNameInDev = "useDeferredValue";
10147				updateHookTypesDev();
10148				return rerenderDeferredValue(value);
10149			},
10150			useTransition: function() {
10151				currentHookNameInDev = "useTransition";
10152				updateHookTypesDev();
10153				return rerenderTransition();
10154			},
10155			useMutableSource: function(source, getSnapshot, subscribe) {
10156				currentHookNameInDev = "useMutableSource";
10157				updateHookTypesDev();
10158				return updateMutableSource();
10159			},
10160			useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
10161				currentHookNameInDev = "useSyncExternalStore";
10162				updateHookTypesDev();
10163				return updateSyncExternalStore(subscribe, getSnapshot);
10164			},
10165			useId: function() {
10166				currentHookNameInDev = "useId";
10167				updateHookTypesDev();
10168				return updateId();
10169			},
10170			unstable_isNewReconciler: enableNewReconciler
10171		};
10172		InvalidNestedHooksDispatcherOnMountInDEV = {
10173			readContext: function(context) {
10174				warnInvalidContextAccess();
10175				return readContext(context);
10176			},
10177			useCallback: function(callback, deps) {
10178				currentHookNameInDev = "useCallback";
10179				warnInvalidHookAccess();
10180				mountHookTypesDev();
10181				return mountCallback(callback, deps);
10182			},
10183			useContext: function(context) {
10184				currentHookNameInDev = "useContext";
10185				warnInvalidHookAccess();
10186				mountHookTypesDev();
10187				return readContext(context);
10188			},
10189			useEffect: function(create, deps) {
10190				currentHookNameInDev = "useEffect";
10191				warnInvalidHookAccess();
10192				mountHookTypesDev();
10193				return mountEffect(create, deps);
10194			},
10195			useImperativeHandle: function(ref, create, deps) {
10196				currentHookNameInDev = "useImperativeHandle";
10197				warnInvalidHookAccess();
10198				mountHookTypesDev();
10199				return mountImperativeHandle(ref, create, deps);
10200			},
10201			useInsertionEffect: function(create, deps) {
10202				currentHookNameInDev = "useInsertionEffect";
10203				warnInvalidHookAccess();
10204				mountHookTypesDev();
10205				return mountInsertionEffect(create, deps);
10206			},
10207			useLayoutEffect: function(create, deps) {
10208				currentHookNameInDev = "useLayoutEffect";
10209				warnInvalidHookAccess();
10210				mountHookTypesDev();
10211				return mountLayoutEffect(create, deps);
10212			},
10213			useMemo: function(create, deps) {
10214				currentHookNameInDev = "useMemo";
10215				warnInvalidHookAccess();
10216				mountHookTypesDev();
10217				var prevDispatcher = ReactCurrentDispatcher$1.current;
10218				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
10219				try {
10220					return mountMemo(create, deps);
10221				} finally {
10222					ReactCurrentDispatcher$1.current = prevDispatcher;
10223				}
10224			},
10225			useReducer: function(reducer, initialArg, init) {
10226				currentHookNameInDev = "useReducer";
10227				warnInvalidHookAccess();
10228				mountHookTypesDev();
10229				var prevDispatcher = ReactCurrentDispatcher$1.current;
10230				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
10231				try {
10232					return mountReducer(reducer, initialArg, init);
10233				} finally {
10234					ReactCurrentDispatcher$1.current = prevDispatcher;
10235				}
10236			},
10237			useRef: function(initialValue) {
10238				currentHookNameInDev = "useRef";
10239				warnInvalidHookAccess();
10240				mountHookTypesDev();
10241				return mountRef(initialValue);
10242			},
10243			useState: function(initialState) {
10244				currentHookNameInDev = "useState";
10245				warnInvalidHookAccess();
10246				mountHookTypesDev();
10247				var prevDispatcher = ReactCurrentDispatcher$1.current;
10248				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;
10249				try {
10250					return mountState(initialState);
10251				} finally {
10252					ReactCurrentDispatcher$1.current = prevDispatcher;
10253				}
10254			},
10255			useDebugValue: function(value, formatterFn) {
10256				currentHookNameInDev = "useDebugValue";
10257				warnInvalidHookAccess();
10258				mountHookTypesDev();
10259				return mountDebugValue();
10260			},
10261			useDeferredValue: function(value) {
10262				currentHookNameInDev = "useDeferredValue";
10263				warnInvalidHookAccess();
10264				mountHookTypesDev();
10265				return mountDeferredValue(value);
10266			},
10267			useTransition: function() {
10268				currentHookNameInDev = "useTransition";
10269				warnInvalidHookAccess();
10270				mountHookTypesDev();
10271				return mountTransition();
10272			},
10273			useMutableSource: function(source, getSnapshot, subscribe) {
10274				currentHookNameInDev = "useMutableSource";
10275				warnInvalidHookAccess();
10276				mountHookTypesDev();
10277				return mountMutableSource();
10278			},
10279			useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
10280				currentHookNameInDev = "useSyncExternalStore";
10281				warnInvalidHookAccess();
10282				mountHookTypesDev();
10283				return mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
10284			},
10285			useId: function() {
10286				currentHookNameInDev = "useId";
10287				warnInvalidHookAccess();
10288				mountHookTypesDev();
10289				return mountId();
10290			},
10291			unstable_isNewReconciler: enableNewReconciler
10292		};
10293		InvalidNestedHooksDispatcherOnUpdateInDEV = {
10294			readContext: function(context) {
10295				warnInvalidContextAccess();
10296				return readContext(context);
10297			},
10298			useCallback: function(callback, deps) {
10299				currentHookNameInDev = "useCallback";
10300				warnInvalidHookAccess();
10301				updateHookTypesDev();
10302				return updateCallback(callback, deps);
10303			},
10304			useContext: function(context) {
10305				currentHookNameInDev = "useContext";
10306				warnInvalidHookAccess();
10307				updateHookTypesDev();
10308				return readContext(context);
10309			},
10310			useEffect: function(create, deps) {
10311				currentHookNameInDev = "useEffect";
10312				warnInvalidHookAccess();
10313				updateHookTypesDev();
10314				return updateEffect(create, deps);
10315			},
10316			useImperativeHandle: function(ref, create, deps) {
10317				currentHookNameInDev = "useImperativeHandle";
10318				warnInvalidHookAccess();
10319				updateHookTypesDev();
10320				return updateImperativeHandle(ref, create, deps);
10321			},
10322			useInsertionEffect: function(create, deps) {
10323				currentHookNameInDev = "useInsertionEffect";
10324				warnInvalidHookAccess();
10325				updateHookTypesDev();
10326				return updateInsertionEffect(create, deps);
10327			},
10328			useLayoutEffect: function(create, deps) {
10329				currentHookNameInDev = "useLayoutEffect";
10330				warnInvalidHookAccess();
10331				updateHookTypesDev();
10332				return updateLayoutEffect(create, deps);
10333			},
10334			useMemo: function(create, deps) {
10335				currentHookNameInDev = "useMemo";
10336				warnInvalidHookAccess();
10337				updateHookTypesDev();
10338				var prevDispatcher = ReactCurrentDispatcher$1.current;
10339				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10340				try {
10341					return updateMemo(create, deps);
10342				} finally {
10343					ReactCurrentDispatcher$1.current = prevDispatcher;
10344				}
10345			},
10346			useReducer: function(reducer, initialArg, init) {
10347				currentHookNameInDev = "useReducer";
10348				warnInvalidHookAccess();
10349				updateHookTypesDev();
10350				var prevDispatcher = ReactCurrentDispatcher$1.current;
10351				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10352				try {
10353					return updateReducer(reducer, initialArg, init);
10354				} finally {
10355					ReactCurrentDispatcher$1.current = prevDispatcher;
10356				}
10357			},
10358			useRef: function(initialValue) {
10359				currentHookNameInDev = "useRef";
10360				warnInvalidHookAccess();
10361				updateHookTypesDev();
10362				return updateRef();
10363			},
10364			useState: function(initialState) {
10365				currentHookNameInDev = "useState";
10366				warnInvalidHookAccess();
10367				updateHookTypesDev();
10368				var prevDispatcher = ReactCurrentDispatcher$1.current;
10369				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10370				try {
10371					return updateState(initialState);
10372				} finally {
10373					ReactCurrentDispatcher$1.current = prevDispatcher;
10374				}
10375			},
10376			useDebugValue: function(value, formatterFn) {
10377				currentHookNameInDev = "useDebugValue";
10378				warnInvalidHookAccess();
10379				updateHookTypesDev();
10380				return updateDebugValue();
10381			},
10382			useDeferredValue: function(value) {
10383				currentHookNameInDev = "useDeferredValue";
10384				warnInvalidHookAccess();
10385				updateHookTypesDev();
10386				return updateDeferredValue(value);
10387			},
10388			useTransition: function() {
10389				currentHookNameInDev = "useTransition";
10390				warnInvalidHookAccess();
10391				updateHookTypesDev();
10392				return updateTransition();
10393			},
10394			useMutableSource: function(source, getSnapshot, subscribe) {
10395				currentHookNameInDev = "useMutableSource";
10396				warnInvalidHookAccess();
10397				updateHookTypesDev();
10398				return updateMutableSource();
10399			},
10400			useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
10401				currentHookNameInDev = "useSyncExternalStore";
10402				warnInvalidHookAccess();
10403				updateHookTypesDev();
10404				return updateSyncExternalStore(subscribe, getSnapshot);
10405			},
10406			useId: function() {
10407				currentHookNameInDev = "useId";
10408				warnInvalidHookAccess();
10409				updateHookTypesDev();
10410				return updateId();
10411			},
10412			unstable_isNewReconciler: enableNewReconciler
10413		};
10414		InvalidNestedHooksDispatcherOnRerenderInDEV = {
10415			readContext: function(context) {
10416				warnInvalidContextAccess();
10417				return readContext(context);
10418			},
10419			useCallback: function(callback, deps) {
10420				currentHookNameInDev = "useCallback";
10421				warnInvalidHookAccess();
10422				updateHookTypesDev();
10423				return updateCallback(callback, deps);
10424			},
10425			useContext: function(context) {
10426				currentHookNameInDev = "useContext";
10427				warnInvalidHookAccess();
10428				updateHookTypesDev();
10429				return readContext(context);
10430			},
10431			useEffect: function(create, deps) {
10432				currentHookNameInDev = "useEffect";
10433				warnInvalidHookAccess();
10434				updateHookTypesDev();
10435				return updateEffect(create, deps);
10436			},
10437			useImperativeHandle: function(ref, create, deps) {
10438				currentHookNameInDev = "useImperativeHandle";
10439				warnInvalidHookAccess();
10440				updateHookTypesDev();
10441				return updateImperativeHandle(ref, create, deps);
10442			},
10443			useInsertionEffect: function(create, deps) {
10444				currentHookNameInDev = "useInsertionEffect";
10445				warnInvalidHookAccess();
10446				updateHookTypesDev();
10447				return updateInsertionEffect(create, deps);
10448			},
10449			useLayoutEffect: function(create, deps) {
10450				currentHookNameInDev = "useLayoutEffect";
10451				warnInvalidHookAccess();
10452				updateHookTypesDev();
10453				return updateLayoutEffect(create, deps);
10454			},
10455			useMemo: function(create, deps) {
10456				currentHookNameInDev = "useMemo";
10457				warnInvalidHookAccess();
10458				updateHookTypesDev();
10459				var prevDispatcher = ReactCurrentDispatcher$1.current;
10460				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10461				try {
10462					return updateMemo(create, deps);
10463				} finally {
10464					ReactCurrentDispatcher$1.current = prevDispatcher;
10465				}
10466			},
10467			useReducer: function(reducer, initialArg, init) {
10468				currentHookNameInDev = "useReducer";
10469				warnInvalidHookAccess();
10470				updateHookTypesDev();
10471				var prevDispatcher = ReactCurrentDispatcher$1.current;
10472				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10473				try {
10474					return rerenderReducer(reducer, initialArg, init);
10475				} finally {
10476					ReactCurrentDispatcher$1.current = prevDispatcher;
10477				}
10478			},
10479			useRef: function(initialValue) {
10480				currentHookNameInDev = "useRef";
10481				warnInvalidHookAccess();
10482				updateHookTypesDev();
10483				return updateRef();
10484			},
10485			useState: function(initialState) {
10486				currentHookNameInDev = "useState";
10487				warnInvalidHookAccess();
10488				updateHookTypesDev();
10489				var prevDispatcher = ReactCurrentDispatcher$1.current;
10490				ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;
10491				try {
10492					return rerenderState(initialState);
10493				} finally {
10494					ReactCurrentDispatcher$1.current = prevDispatcher;
10495				}
10496			},
10497			useDebugValue: function(value, formatterFn) {
10498				currentHookNameInDev = "useDebugValue";
10499				warnInvalidHookAccess();
10500				updateHookTypesDev();
10501				return updateDebugValue();
10502			},
10503			useDeferredValue: function(value) {
10504				currentHookNameInDev = "useDeferredValue";
10505				warnInvalidHookAccess();
10506				updateHookTypesDev();
10507				return rerenderDeferredValue(value);
10508			},
10509			useTransition: function() {
10510				currentHookNameInDev = "useTransition";
10511				warnInvalidHookAccess();
10512				updateHookTypesDev();
10513				return rerenderTransition();
10514			},
10515			useMutableSource: function(source, getSnapshot, subscribe) {
10516				currentHookNameInDev = "useMutableSource";
10517				warnInvalidHookAccess();
10518				updateHookTypesDev();
10519				return updateMutableSource();
10520			},
10521			useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
10522				currentHookNameInDev = "useSyncExternalStore";
10523				warnInvalidHookAccess();
10524				updateHookTypesDev();
10525				return updateSyncExternalStore(subscribe, getSnapshot);
10526			},
10527			useId: function() {
10528				currentHookNameInDev = "useId";
10529				warnInvalidHookAccess();
10530				updateHookTypesDev();
10531				return updateId();
10532			},
10533			unstable_isNewReconciler: enableNewReconciler
10534		};
10535		var now$1 = Scheduler.unstable_now;
10536		var commitTime = 0;
10537		var layoutEffectStartTime = -1;
10538		var profilerStartTime = -1;
10539		var passiveEffectStartTime = -1;
10540		var currentUpdateIsNested = false;
10541		var nestedUpdateScheduled = false;
10542		function isCurrentUpdateNested() {
10543			return currentUpdateIsNested;
10544		}
10545		function markNestedUpdateScheduled() {
10546			nestedUpdateScheduled = true;
10547		}
10548		function resetNestedUpdateFlag() {
10549			currentUpdateIsNested = false;
10550			nestedUpdateScheduled = false;
10551		}
10552		function syncNestedUpdateFlag() {
10553			currentUpdateIsNested = nestedUpdateScheduled;
10554			nestedUpdateScheduled = false;
10555		}
10556		function getCommitTime() {
10557			return commitTime;
10558		}
10559		function recordCommitTime() {
10560			commitTime = now$1();
10561		}
10562		function startProfilerTimer(fiber) {
10563			profilerStartTime = now$1();
10564			if (fiber.actualStartTime < 0) fiber.actualStartTime = now$1();
10565		}
10566		function stopProfilerTimerIfRunning(fiber) {
10567			profilerStartTime = -1;
10568		}
10569		function stopProfilerTimerIfRunningAndRecordDelta(fiber, overrideBaseTime) {
10570			if (profilerStartTime >= 0) {
10571				var elapsedTime = now$1() - profilerStartTime;
10572				fiber.actualDuration += elapsedTime;
10573				if (overrideBaseTime) fiber.selfBaseDuration = elapsedTime;
10574				profilerStartTime = -1;
10575			}
10576		}
10577		function recordLayoutEffectDuration(fiber) {
10578			if (layoutEffectStartTime >= 0) {
10579				var elapsedTime = now$1() - layoutEffectStartTime;
10580				layoutEffectStartTime = -1;
10581				var parentFiber = fiber.return;
10582				while (parentFiber !== null) {
10583					switch (parentFiber.tag) {
10584						case HostRoot:
10585							var root$1 = parentFiber.stateNode;
10586							root$1.effectDuration += elapsedTime;
10587							return;
10588						case Profiler:
10589							var parentStateNode = parentFiber.stateNode;
10590							parentStateNode.effectDuration += elapsedTime;
10591							return;
10592					}
10593					parentFiber = parentFiber.return;
10594				}
10595			}
10596		}
10597		function recordPassiveEffectDuration(fiber) {
10598			if (passiveEffectStartTime >= 0) {
10599				var elapsedTime = now$1() - passiveEffectStartTime;
10600				passiveEffectStartTime = -1;
10601				var parentFiber = fiber.return;
10602				while (parentFiber !== null) {
10603					switch (parentFiber.tag) {
10604						case HostRoot:
10605							var root$1 = parentFiber.stateNode;
10606							if (root$1 !== null) root$1.passiveEffectDuration += elapsedTime;
10607							return;
10608						case Profiler:
10609							var parentStateNode = parentFiber.stateNode;
10610							if (parentStateNode !== null) parentStateNode.passiveEffectDuration += elapsedTime;
10611							return;
10612					}
10613					parentFiber = parentFiber.return;
10614				}
10615			}
10616		}
10617		function startLayoutEffectTimer() {
10618			layoutEffectStartTime = now$1();
10619		}
10620		function startPassiveEffectTimer() {
10621			passiveEffectStartTime = now$1();
10622		}
10623		function transferActualDuration(fiber) {
10624			var child = fiber.child;
10625			while (child) {
10626				fiber.actualDuration += child.actualDuration;
10627				child = child.sibling;
10628			}
10629		}
10630		function resolveDefaultProps(Component, baseProps) {
10631			if (Component && Component.defaultProps) {
10632				var props = assign({}, baseProps);
10633				var defaultProps = Component.defaultProps;
10634				for (var propName in defaultProps) if (props[propName] === void 0) props[propName] = defaultProps[propName];
10635				return props;
10636			}
10637			return baseProps;
10638		}
10639		var fakeInternalInstance = {};
10640		var didWarnAboutStateAssignmentForComponent;
10641		var didWarnAboutUninitializedState;
10642		var didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate;
10643		var didWarnAboutLegacyLifecyclesAndDerivedState;
10644		var didWarnAboutUndefinedDerivedState;
10645		var warnOnUndefinedDerivedState;
vendor: 3,420 bytes, lines 10646-10712
10646		var warnOnInvalidCallback;
10647		var didWarnAboutDirectlyAssigningPropsToState;
10648		var didWarnAboutContextTypeAndContextTypes;
10649		var didWarnAboutInvalidateContextType;
10650		var didWarnAboutLegacyContext$1;
10651		didWarnAboutStateAssignmentForComponent = /* @__PURE__ */ new Set();
10652		didWarnAboutUninitializedState = /* @__PURE__ */ new Set();
10653		didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate = /* @__PURE__ */ new Set();
10654		didWarnAboutLegacyLifecyclesAndDerivedState = /* @__PURE__ */ new Set();
10655		didWarnAboutDirectlyAssigningPropsToState = /* @__PURE__ */ new Set();
10656		didWarnAboutUndefinedDerivedState = /* @__PURE__ */ new Set();
10657		didWarnAboutContextTypeAndContextTypes = /* @__PURE__ */ new Set();
10658		didWarnAboutInvalidateContextType = /* @__PURE__ */ new Set();
10659		didWarnAboutLegacyContext$1 = /* @__PURE__ */ new Set();
10660		var didWarnOnInvalidCallback = /* @__PURE__ */ new Set();
10661		warnOnInvalidCallback = function(callback, callerName) {
10662			if (callback === null || typeof callback === "function") return;
10663			var key = callerName + "_" + callback;
10664			if (!didWarnOnInvalidCallback.has(key)) {
10665				didWarnOnInvalidCallback.add(key);
10666				error("%s(...): Expected the last optional `callback` argument to be a function. Instead received: %s.", callerName, callback);
10667			}
10668		};
10669		warnOnUndefinedDerivedState = function(type, partialState) {
10670			if (partialState === void 0) {
10671				var componentName = getComponentNameFromType(type) || "Component";
10672				if (!didWarnAboutUndefinedDerivedState.has(componentName)) {
10673					didWarnAboutUndefinedDerivedState.add(componentName);
10674					error("%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.", componentName);
10675				}
10676			}
10677		};
10678		Object.defineProperty(fakeInternalInstance, "_processChildContext", {
10679			enumerable: false,
10680			value: function() {
10681				throw new Error("_processChildContext is not available in React 16+. This likely means you have multiple copies of React and are attempting to nest a React 15 tree inside a React 16 tree using unstable_renderSubtreeIntoContainer, which isn't supported. Try to make sure you have only one copy of React (and ideally, switch to ReactDOM.createPortal).");
10682			}
10683		});
10684		Object.freeze(fakeInternalInstance);
10685		function applyDerivedStateFromProps(workInProgress$1, ctor, getDerivedStateFromProps, nextProps) {
10686			var prevState = workInProgress$1.memoizedState;
10687			var partialState = getDerivedStateFromProps(nextProps, prevState);
10688			if (workInProgress$1.mode & StrictLegacyMode) {
10689				setIsStrictModeForDevtools(true);
10690				try {
10691					partialState = getDerivedStateFromProps(nextProps, prevState);
10692				} finally {
10693					setIsStrictModeForDevtools(false);
10694				}
10695			}
10696			warnOnUndefinedDerivedState(ctor, partialState);
10697			var memoizedState = partialState === null || partialState === void 0 ? prevState : assign({}, prevState, partialState);
10698			workInProgress$1.memoizedState = memoizedState;
10699			if (workInProgress$1.lanes === NoLanes) {
10700				var updateQueue = workInProgress$1.updateQueue;
10701				updateQueue.baseState = memoizedState;
10702			}
10703		}
10704		var classComponentUpdater = {
10705			isMounted,
10706			enqueueSetState: function(inst, payload, callback) {
10707				var fiber = get(inst);
10708				var eventTime = requestEventTime();
10709				var lane = requestUpdateLane(fiber);
10710				var update = createUpdate(eventTime, lane);
10711				update.payload = payload;
10712				if (callback !== void 0 && callback !== null) {
10713					warnOnInvalidCallback(callback, "setState");
10714					update.callback = callback;
10715				}
10716				var root$1 = enqueueUpdate(fiber, update, lane);
10717				if (root$1 !== null) {
10718					scheduleUpdateOnFiber(root$1, fiber, lane, eventTime);
10719					entangleTransitions(root$1, fiber, lane);
10720				}
10721				markStateUpdateScheduled(fiber, lane);
10722			},
10723			enqueueReplaceState: function(inst, payload, callback) {
10724				var fiber = get(inst);
10725				var eventTime = requestEventTime();
10726				var lane = requestUpdateLane(fiber);
10727				var update = createUpdate(eventTime, lane);
10728				update.tag = ReplaceState;
10729				update.payload = payload;
10730				if (callback !== void 0 && callback !== null) {
10731					warnOnInvalidCallback(callback, "replaceState");
10732					update.callback = callback;
10733				}
10734				var root$1 = enqueueUpdate(fiber, update, lane);
10735				if (root$1 !== null) {
10736					scheduleUpdateOnFiber(root$1, fiber, lane, eventTime);
10737					entangleTransitions(root$1, fiber, lane);
10738				}
10739				markStateUpdateScheduled(fiber, lane);
10740			},
10741			enqueueForceUpdate: function(inst, callback) {
10742				var fiber = get(inst);
10743				var eventTime = requestEventTime();
10744				var lane = requestUpdateLane(fiber);
10745				var update = createUpdate(eventTime, lane);
10746				update.tag = ForceUpdate;
10747				if (callback !== void 0 && callback !== null) {
10748					warnOnInvalidCallback(callback, "forceUpdate");
10749					update.callback = callback;
10750				}
10751				var root$1 = enqueueUpdate(fiber, update, lane);
10752				if (root$1 !== null) {
10753					scheduleUpdateOnFiber(root$1, fiber, lane, eventTime);
10754					entangleTransitions(root$1, fiber, lane);
10755				}
10756				markForceUpdateScheduled(fiber, lane);
10757			}
10758		};
10759		function checkShouldComponentUpdate(workInProgress$1, ctor, oldProps, newProps, oldState, newState, nextContext) {
10760			var instance = workInProgress$1.stateNode;
10761			if (typeof instance.shouldComponentUpdate === "function") {
10762				var shouldUpdate = instance.shouldComponentUpdate(newProps, newState, nextContext);
10763				if (workInProgress$1.mode & StrictLegacyMode) {
10764					setIsStrictModeForDevtools(true);
10765					try {
10766						shouldUpdate = instance.shouldComponentUpdate(newProps, newState, nextContext);
10767					} finally {
10768						setIsStrictModeForDevtools(false);
10769					}
10770				}
10771				if (shouldUpdate === void 0) error("%s.shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false.", getComponentNameFromType(ctor) || "Component");
10772				return shouldUpdate;
10773			}
10774			if (ctor.prototype && ctor.prototype.isPureReactComponent) return !shallowEqual(oldProps, newProps) || !shallowEqual(oldState, newState);
10775			return true;
10776		}
10777		function checkClassInstance(workInProgress$1, ctor, newProps) {
10778			var instance = workInProgress$1.stateNode;
10779			var name = getComponentNameFromType(ctor) || "Component";
10780			if (!instance.render) if (ctor.prototype && typeof ctor.prototype.render === "function") error("%s(...): No `render` method found on the returned component instance: did you accidentally return an object from the constructor?", name);
10781			else error("%s(...): No `render` method found on the returned component instance: you may have forgotten to define `render`.", name);
10782			if (instance.getInitialState && !instance.getInitialState.isReactClassApproved && !instance.state) error("getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?", name);
10783			if (instance.getDefaultProps && !instance.getDefaultProps.isReactClassApproved) error("getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.", name);
10784			if (instance.propTypes) error("propTypes was defined as an instance property on %s. Use a static property to define propTypes instead.", name);
10785			if (instance.contextType) error("contextType was defined as an instance property on %s. Use a static property to define contextType instead.", name);
10786			if (ctor.childContextTypes && !didWarnAboutLegacyContext$1.has(ctor) && (workInProgress$1.mode & StrictLegacyMode) === NoMode) {
10787				didWarnAboutLegacyContext$1.add(ctor);
10788				error("%s uses the legacy childContextTypes API which is no longer supported and will be removed in the next major release. Use React.createContext() instead\n\n.Learn more about this warning here: https://reactjs.org/link/legacy-context", name);
10789			}
10790			if (ctor.contextTypes && !didWarnAboutLegacyContext$1.has(ctor) && (workInProgress$1.mode & StrictLegacyMode) === NoMode) {
10791				didWarnAboutLegacyContext$1.add(ctor);
10792				error("%s uses the legacy contextTypes API which is no longer supported and will be removed in the next major release. Use React.createContext() with static contextType instead.\n\nLearn more about this warning here: https://reactjs.org/link/legacy-context", name);
10793			}
10794			if (instance.contextTypes) error("contextTypes was defined as an instance property on %s. Use a static property to define contextTypes instead.", name);
10795			if (ctor.contextType && ctor.contextTypes && !didWarnAboutContextTypeAndContextTypes.has(ctor)) {
10796				didWarnAboutContextTypeAndContextTypes.add(ctor);
10797				error("%s declares both contextTypes and contextType static properties. The legacy contextTypes property will be ignored.", name);
10798			}
10799			if (typeof instance.componentShouldUpdate === "function") error("%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.", name);
10800			if (ctor.prototype && ctor.prototype.isPureReactComponent && typeof instance.shouldComponentUpdate !== "undefined") error("%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.", getComponentNameFromType(ctor) || "A pure component");
10801			if (typeof instance.componentDidUnmount === "function") error("%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?", name);
10802			if (typeof instance.componentDidReceiveProps === "function") error("%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().", name);
10803			if (typeof instance.componentWillRecieveProps === "function") error("%s has a method called componentWillRecieveProps(). Did 
10803you mean componentWillReceiveProps()?", name);
10804			if (typeof instance.UNSAFE_componentWillRecieveProps === "function") error("%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?", name);
10805			var hasMutatedProps = instance.props !== newProps;
10806			if (instance.props !== void 0 && hasMutatedProps) error("%s(...): When calling super() in `%s`, make sure to pass up the same props that your component's constructor was passed.", name, name);
10807			if (instance.defaultProps) error("Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.", name, name);
10808			if (typeof instance.getSnapshotBeforeUpdate === "function" && typeof instance.componentDidUpdate !== "function" && !didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate.has(ctor)) {
10809				didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate.add(ctor);
10810				error("%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.", getComponentNameFromType(ctor));
10811			}
10812			if (typeof instance.getDerivedStateFromProps === "function") error("%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.", name);
10813			if (typeof instance.getDerivedStateFromError === "function") error("%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.", name);
10814			if (typeof ctor.getSnapshotBeforeUpdate === "function") error("%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.", name);
10815			var _state = instance.state;
10816			if (_state && (typeof _state !== "object" || isArray(_state))) error("%s.state: must be set to an object or null", name);
10817			if (typeof instance.getChildContext === "function" && typeof ctor.childContextTypes !== "object") error("%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().", name);
10818		}
10819		function adoptClassInstance(workInProgress$1, instance) {
10820			instance.updater = classComponentUpdater;
10821			workInProgress$1.stateNode = instance;
10822			set(instance, workInProgress$1);
10823			instance._reactInternalInstance = fakeInternalInstance;
10824		}
10825		function constructClassInstance(workInProgress$1, ctor, props) {
10826			var isLegacyContextConsumer = false;
10827			var unmaskedContext = emptyContextObject;
10828			var context = emptyContextObject;
10829			var contextType = ctor.contextType;
10830			if ("contextType" in ctor) {
10831				if (!(contextType === null || contextType !== void 0 && contextType.$$typeof === REACT_CONTEXT_TYPE && contextType._context === void 0) && !didWarnAboutInvalidateContextType.has(ctor)) {
10832					didWarnAboutInvalidateContextType.add(ctor);
10833					var addendum = "";
10834					if (contextType === void 0) addendum = " However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file.";
10835					else if (typeof contextType !== "object") addendum = " However, it is set to a " + typeof contextType + ".";
10836					else if (contextType.$$typeof === REACT_PROVIDER_TYPE) addendum = " Did you accidentally pass the Context.Provider instead?";
10837					else if (contextType._context !== void 0) addendum = " Did you accidentally pass the Context.Consumer instead?";
10838					else addendum = " However, it is set to an object with keys {" + Object.keys(contextType).join(", ") + "}.";
10839					error("%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s", getComponentNameFromType(ctor) || "Component", addendum);
10840				}
10841			}
10842			if (typeof contextType === "object" && contextType !== null) context = readContext(contextType);
10843			else {
10844				unmaskedContext = getUnmaskedContext(workInProgress$1, ctor, true);
10845				var contextTypes = ctor.contextTypes;
10846				isLegacyContextConsumer = contextTypes !== null && contextTypes !== void 0;
10847				context = isLegacyContextConsumer ? getMaskedContext(workInProgress$1, unmaskedContext) : emptyContextObject;
10848			}
10849			var instance = new ctor(props, context);
10850			if (workInProgress$1.mode & StrictLegacyMode) {
10851				setIsStrictModeForDevtools(true);
10852				try {
10853					instance = new ctor(props, context);
10854				} finally {
10855					setIsStrictModeForDevtools(false);
10856				}
10857			}
10858			var state = workInProgress$1.memoizedState = instance.state !== null && instance.state !== void 0 ? instance.state : null;
10859			adoptClassInstance(workInProgress$1, instance);
10860			if (typeof ctor.getDerivedStateFromProps === "function" && state === null) {
10861				var componentName = getComponentNameFromType(ctor) || "Component";
10862				if (!didWarnAboutUninitializedState.has(componentName)) {
10863					didWarnAboutUninitializedState.add(componentName);
10864					error("`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.", componentName, instance.state === null ? "null" : "undefined", componentName);
10865				}
10866			}
10867			if (typeof ctor.getDerivedStateFromProps === "function" || typeof instance.getSnapshotBeforeUpdate === "function") {
10868				var foundWillMountName = null;
10869				var foundWillReceivePropsName = null;
10870				var foundWillUpdateName = null;
10871				if (typeof instance.componentWillMount === "function" && instance.componentWillMount.__suppressDeprecationWarning !== true) foundWillMountName = "componentWillMount";
10872				else if (typeof instance.UNSAFE_componentWillMount === "function") foundWillMountName = "UNSAFE_componentWillMount";
10873				if (typeof instance.componentWillReceiveProps === "function" && instance.componentWillReceiveProps.__suppressDeprecationWarning !== true) foundWillReceivePropsName = "componentWillReceiveProps";
10874				else if (typeof instance.UNSAFE_componentWillReceiveProps === "function") foundWillReceivePropsName = "UNSAFE_componentWillReceiveProps";
10875				if (typeof instance.componentWillUpdate === "function" && instance.componentWillUpdate.__suppressDeprecationWarning !== true) foundWillUpdateName = "componentWillUpdate";
10876				else if (typeof instance.UNSAFE_componentWillUpdate === "function") foundWillUpdateName = "UNSAFE_componentWillUpdate";
10877				if (foundWillMountName !== null || foundWillReceivePropsName !== null || foundWillUpdateName !== null) {
10878					var _componentName = getComponentNameFromType(ctor) || "Component";
10879					var newApiName = typeof ctor.getDerivedStateFromProps === "function" ? "getDerivedStateFromProps()" : "getSnapshotBeforeUpdate()";
10880					if (!didWarnAboutLegacyLifecyclesAndDerivedState.has(_componentName)) {
10881						didWarnAboutLegacyLifecyclesAndDerivedState.add(_componentName);
10882						error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n%s uses %s but also contains the following legacy lifecycles:%s%s%s\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://reactjs.org/link/unsafe-component-lifecycles", _componentName, newApiName, foundWillMountName !== null ? "\n  " + foundWillMountName : "", foundWillReceivePropsName !== null ? "\n  " + foundWillReceivePropsName : "", foundWillUpdateName !== null ? "\n  " + foundWillUpdateName : "");
10883					}
10884				}
10885			}
10886			if (isLegacyContextConsumer) cacheContext(workInProgress$1, unmaskedContext, context);
10887			return instance;
10888		}
10889		function callComponentWillMount(workInProgress$1, instance) {
10890			var oldState = instance.state;
10891			if (typeof instance.componentWillMount === "function") instance.componentWillMount();
10892			if (typeof instance.UNSAFE_componentWillMount === "function") instance.UNSAFE_componentWillMount();
10893			if (oldState !== instance.state) {
10894				error("%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.", getComponentNameFromFiber(workInProgress$1) || "Component");
10895				classComponentUpdater.enqueueReplaceState(instance, instance.state, null);
10896			}
10897		}
10898		function callComponentWillReceiveProps(workInProgress$1, instance, newProps, nextContext) {
10899			var oldState = instance.state;
10900			if (typeof instance.componentWillReceiveProps === "function") instance.componentWillReceiveProps(newProps, nextContext);
10901			if (typeof instance.UNSAFE_componentWillReceiveProps === "function") instance.UNSAFE_componentWillReceiveProps(newProps, nextContext);
10902			if (instance.state !== oldState) {
10903				var componentName = getComponentNameFromFiber(workInProgress$1) || "Component";
10904				if (!didWarnAboutStateAssignmentForComponent.has(componentName)) {
10905					didWarnAboutStateAssignmentForComponent.add(componentName);
10906					error("%s.componentWillReceiveProps(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.", componentName);
10907				}
10908				classComponentUpdater.enqueueReplaceState(instance, instance.state, null);
10909			}
10910		}
10911		function mountClassInstance(workInProgress$1, ctor, newProps, renderLanes$1) {
10912			checkClassInstance(workInProgress$1, ctor, newProps);
10913			var instance = workInProgress$1.stateNode;
10914			instance.props = newProps;
10915			instance.state = workInProgress$1.memoizedState;
10916			instance.refs = {};
10917			initializeUpdateQueue(workInProgress$1);
10918			var contextType = ctor.contextType;
10919			if (typeof contextType === "object" && contextType !== null) instance.context = readContext(contextType);
10920			else instance.context = getMaskedContext(workInProgress$1, getUnmaskedContext(workInProgress$1, ctor, true));
10921			if (instance.state === newProps) {
10922				var componentName = getComponentNameFromType(ctor) || "Component";
10923				if (!didWarnAboutDirectlyAssigningPropsToState.has(componentName)) {
10924					didWarnAboutDirectlyAssigningPropsToState.add(componentName);
10925					error("%s: It is not recommended to assign props directly to state because updates to props won't be reflected in state. In most cases, it is better to use props directly.", componentName);
10926				}
10927			}
10928			if (workInProgress$1.mode & StrictLegacyMode) ReactStrictModeWarnings.recordLegacyContextWarning(workInProgress$1, instance);
10929			ReactStrictModeWarnings.recordUnsafeLifecycleWarnings(workInProgress$1, instance);
10930			instance.state = workInProgress$1.memoizedState;
10931			var getDerivedStateFromProps = ctor.getDerivedStateFromProps;
10932			if (typeof getDerivedStateFromProps === "function") {
10933				applyDerivedStateFromProps(workInProgress$1, ctor, getDerivedStateFromProps, newProps);
10934				instance.state = workInProgress$1.memoizedState;
10935			}
10936			if (typeof ctor.getDerivedStateFromProps !== "function" && typeof instance.getSnapshotBeforeUpdate !== "function" && (typeof instance.UNSAFE_componentWillMount === "function" || typeof instance.componentWillMount === "function")) {
10937				callComponentWillMount(workInProgress$1, instance);
10938				processUpdateQueue(workInProgress$1, newProps, instance, renderLanes$1);
10939				instance.state = workInProgress$1.memoizedState;
10940			}
10941			if (typeof instance.componentDidMount === "function") {
10942				var fiberFlags = Update;
10943				fiberFlags |= LayoutStatic;
10944				if ((workInProgress$1.mode & StrictEffectsMode) !== NoMode) fiberFlags |= MountLayoutDev;
10945				workInProgress$1.flags |= fiberFlags;
10946			}
10947		}
10948		function resumeMountClassInstance(workInProgress$1, ctor, newProps, renderLanes$1) {
10949			var instance = workInProgress$1.stateNode;
10950			var oldProps = workInProgress$1.memoizedProps;
10951			instance.props = oldProps;
10952			var oldContext = instance.context;
10953			var contextType = ctor.contextType;
10954			var nextContext = emptyContextObject;
10955			if (typeof contextType === "object" && contextType !== null) nextContext = readContext(contextType);
10956			else nextContext = getMaskedContext(workInProgress$1, getUnmaskedContext(workInProgress$1, ctor, true));
10957			var getDerivedStateFromProps = ctor.getDerivedStateFromProps;
10958			var hasNewLifecycles = typeof getDerivedStateFromProps === "function" || typeof instance.getSnapshotBeforeUpdate === "function";
10959			if (!hasNewLifecycles && (typeof instance.UNSAFE_componentWillReceiveProps === "function" || typeof instance.componentWillReceiveProps === "function")) {
10960				if (oldProps !== newProps || oldContext !== nextContext) callComponentWillReceiveProps(workInProgress$1, instance, newProps, nextContext);
10961			}
10962			resetHasForceUpdateBeforeProcessing();
10963			var oldState = workInProgress$1.memoizedState;
10964			var newState = instance.state = oldState;
10965			processUpdateQueue(workInProgress$1, newProps, instance, renderLanes$1);
10966			newState = workInProgress$1.memoizedState;
10967			if (oldProps === newProps && oldState === newState && !hasContextChanged() && !checkHasForceUpdateAfterProcessing()) {
10968				if (typeof instance.componentDidMount === "function") {
10969					var fiberFlags = Update;
10970					fiberFlags |= LayoutStatic;
10971					if ((workInProgress$1.mode & StrictEffectsMode) !== NoMode) fiberFlags |= MountLayoutDev;
10972					workInProgress$1.flags |= fiberFlags;
10973				}
10974				return false;
10975			}
10976			if (typeof getDerivedStateFromProps === "function") {
10977				applyDerivedStateFromProps(workInProgress$1, ctor, getDerivedStateFromProps, newProps);
10978				newState = workInProgress$1.memoizedState;
10979			}
10980			var shouldUpdate = checkHasForceUpdateAfterProcessing() || checkShouldComponentUpdate(workInProgress$1, ctor, oldProps, newProps, oldState, newState, nextContext);
10981			if (shouldUpdate) {
10982				if (!hasNewLifecycles && (typeof instance.UNSAFE_componentWillMount === "function" || typeof instance.componentWillMount === "function")) {
10983					if (typeof instance.componentWillMount === "function") instance.componentWillMount();
10984					if (typeof instance.UNSAFE_componentWillMount === "function") instance.UNSAFE_componentWillMount();
10985				}
10986				if (typeof instance.componentDidMount === "function") {
10987					var _fiberFlags = Update;
10988					_fiberFlags |= LayoutStatic;
10989					if ((workInProgress$1.mode & StrictEffectsMode) !== NoMode) _fiberFlags |= MountLayoutDev;
10990					workInProgress$1.flags |= _fiberFlags;
10991				}
10992			} else {
10993				if (typeof instance.componentDidMount === "function") {
10994					var _fiberFlags2 = Update;
10995					_fiberFlags2 |= LayoutStatic;
10996					if ((workInProgress$1.mode & StrictEffectsMode) !== NoMode) _fiberFlags2 |= MountLayoutDev;
10997					workInProgress$1.flags |= _fiberFlags2;
10998				}
10999				workInProgress$1.memoizedProps = newProps;
11000				workInProgress$1.memoizedState = newState;
11001			}
11002			instance.props = newProps;
11003			instance.state = newState;
11004			instance.context = nextContext;
11005			return shouldUpdate;
11006		}
11007		function updateClassInstance(current$1, workInProgress$1, ctor, newProps, renderLanes$1) {
11008			var instance = workInProgress$1.stateNode;
11009			cloneUpdateQueue(current$1, workInProgress$1);
11010			var unresolvedOldProps = workInProgress$1.memoizedProps;
11011			var oldProps = workInProgress$1.type === workInProgress$1.elementType ? unresolvedOldProps : resolveDefaultProps(workInProgress$1.type, unresolvedOldProps);
11012			instance.props = oldProps;
11013			var unresolvedNewProps = workInProgress$1.pendingProps;
11014			var oldContext = instance.context;
11015			var contextType = ctor.contextType;
11016			var nextContext = emptyContextObject;
11017			if (typeof contextType === "object" && contextType !== null) nextContext = readContext(contextType);
11018			else nextContext = getMaskedContext(workInProgress$1, getUnmaskedContext(workInProgress$1, ctor, true));
11019			var getDerivedStateFromProps = ctor.getDerivedStateFromProps;
11020			var hasNewLifecycles = typeof getDerivedStateFromProps === "function" || typeof instance.getSnapshotBeforeUpdate === "function";
11021			if (!hasNewLifecycles && (typeof instance.UNSAFE_componentWillReceiveProps === "function" || typeof instance.componentWillReceiveProps === "function")) {
11022				if (unresolvedOldProps !== unresolvedNewProps || oldContext !== nextContext) callComponentWillReceiveProps(workInProgress$1, instance, newProps, nextContext);
11023			}
11024			resetHasForceUpdateBeforeProcessing();
11025			var oldState = workInProgress$1.memoizedState;
11026			var newState = instance.state = oldState;
11027			processUpdateQueue(workInProgress$1, newProps, instance, renderLanes$1);
11028			newState = workInProgress$1.memoizedState;
11029			if (unresolvedOldProps === unresolvedNewProps && oldState === newState && !hasContextChanged() && !checkHasForceUpdateAfterProcessing() && !enableLazyContextPropagation) {
11030				if (typeof instance.componentDidUpdate === "function") {
11031					if (unresolvedOldProps !== current$1.memoizedProps || oldState !== current$1.memoizedState) workInProgress$1.flags |= Update;
11032				}
11033				if (typeof instance.getSnapshotBeforeUpdate === "function") {
11034					if (unresolvedOldProps !== current$1.memoizedProps || oldState !== current$1.memoizedState) workInProgress$1.flags |= Snapshot;
11035				}
11036				return false;
11037			}
11038			if (typeof getDerivedStateFromProps === "function") {
11039				applyDerivedStateFromProps(workInProgress$1, ctor, getDerivedStateFromProps, newProps);
11040				newState = workInProgress$1.memoizedState;
11041			}
11042			var shouldUpdate = checkHasForceUpdateAfterProcessing() || checkShouldComponentUpdate(workInProgress$1, ctor, oldProps, newProps, oldState, newState, nextContext) || enableLazyContextPropagation;
11043			if (shouldUpdate) {
11044				if (!hasNewLifecycles && (typeof instance.UNSAFE_componentWillUpdate === "function" || typeof instance.componentWillUpdate === "function")) {
11045					if (typeof instance.componentWillUpdate === "function") instance.componentWillUpdate(newProps, newState, nextContext);
11046					if (typeof instance.UNSAFE_componentWillUpdate === "function") instance.UNSAFE_componentWillUpdate(newProps, newState, nextContext);
11047				}
11048				if (typeof instance.componentDidUpdate === "function") workInProgress$1.flags |= Update;
11049				if (typeof instance.getSnapshotBeforeUpdate === "function") workInProgress$1.flags |= Snapshot;
11050			} else {
11051				if (typeof instance.componentDidUpdate === "function") {
11052					if (unresolvedOldProps !== current$1.memoizedProps || oldState !== current$1.memoizedState) workInProgress$1.flags |= Update;
11053				}
11054				if (typeof instance.getSnapshotBeforeUpdate === "function") {
11055					if (unresolvedOldProps !== current$1.memoizedProps || oldState !== current$1.memoizedState) workInProgress$1.flags |= Snapshot;
11056				}
11057				workInProgress$1.memoizedProps = newProps;
11058				workInProgress$1.memoizedState = newState;
11059			}
11060			instance.props = newProps;
11061			instance.state = newState;
11062			instance.context = nextContext;
11063			return shouldUpdate;
11064		}
11065		function createCapturedValueAtFiber(value, source) {
11066			return {
11067				value,
11068				source,
11069				stack: getStackByFiberInDevAndProd(source),
11070				digest: null
11071			};
11072		}
11073		function createCapturedValue(value, digest, stack) {
11074			return {
11075				value,
11076				source: null,
11077				stack: stack != null ? stack : null,
11078				digest: digest != null ? digest : null
11079			};
11080		}
11081		function showErrorDialog(boundary, errorInfo) {
11082			return true;
11083		}
11084		function logCapturedError(boundary, errorInfo) {
11085			try {
11086				if (showErrorDialog(boundary, errorInfo) === false) return;
11087				var error$1 = errorInfo.value;
11088				var source = errorInfo.source;
11089				var stack = errorInfo.stack;
11090				var componentStack = stack !== null ? stack : "";
11091				if (error$1 != null && error$1._suppressLogging) {
11092					if (boundary.tag === ClassComponent) return;
11093					console["error"](error$1);
11094				}
11095				var componentName = source ? getComponentNameFromFiber(source) : null;
11096				var componentNameMessage = componentName ? "The above error occurred in the <" + componentName + "> component:" : "The above error occurred in one of your React components:";
11097				var errorBoundaryMessage;
11098				if (boundary.tag === HostRoot) errorBoundaryMessage = "Consider adding an error boundary to your tree to customize error handling behavior.\nVisit https://reactjs.org/link/error-boundaries to learn more about error boundaries.";
11099				else errorBoundaryMessage = "React will try to recreate this component tree from scratch " + ("using the error boundary you provided, " + (getComponentNameFromFiber(boundary) || "Anonymous") + ".");
11100				var combinedMessage = componentNameMessage + "\n" + componentStack + "\n\n" + ("" + errorBoundaryMessage);
11101				console["error"](combinedMessage);
11102			} catch (e) {
11103				setTimeout(function() {
11104					throw e;
11105				});
11106			}
11107		}
11108		var PossiblyWeakMap$1 = typeof WeakMap === "function" ? WeakMap : Map;
11109		function createRootErrorUpdate(fiber, errorInfo, lane) {
11110			var update = createUpdate(NoTimestamp, lane);
11111			update.tag = CaptureUpdate;
11112			update.payload = { element: null };
11113			var error$1 = errorInfo.value;
11114			update.callback = function() {
11115				onUncaughtError(error$1);
11116				logCapturedError(fiber, errorInfo);
11117			};
11118			return update;
11119		}
11120		function createClassErrorUpdate(fiber, errorInfo, lane) {
11121			var update = createUpdate(NoTimestamp, lane);
11122			update.tag = CaptureUpdate;
11123			var getDerivedStateFromError = fiber.type.getDerivedStateFromError;
11124			if (typeof getDerivedStateFromError === "function") {
11125				var error$1 = errorInfo.value;
11126				update.payload = function() {
11127					return getDerivedStateFromError(error$1);
11128				};
11129				update.callback = function() {
11130					markFailedErrorBoundaryForHotReloading(fiber);
11131					logCapturedError(fiber, errorInfo);
11132				};
11133			}
11134			var inst = fiber.stateNode;
11135			if (inst !== null && typeof inst.componentDidCatch === "function") update.callback = function callback() {
11136				markFailedErrorBoundaryForHotReloading(fiber);
11137				logCapturedError(fiber, errorInfo);
11138				if (typeof getDerivedStateFromError !== "function") markLegacyErrorBoundaryAsFailed(this);
11139				var error$1$1 = errorInfo.value;
11140				var stack = errorInfo.stack;
11141				this.componentDidCatch(error$1$1, { componentStack: stack !== null ? stack : "" });
11142				if (typeof getDerivedStateFromError !== "function") {
11143					if (!includesSomeLane(fiber.lanes, SyncLane)) error("%s: Error boundaries should implement getDerivedStateFromError(). In that method, return a state update to display an error message or fallback UI.", getComponentNameFromFiber(fiber) || "Unknown");
11144				}
11145			};
11146			return update;
11147		}
11148		function attachPingListener(root$1, wakeable, lanes) {
11149			var pingCache = root$1.pingCache;
11150			var threadIDs;
11151			if (pingCache === null) {
11152				pingCache = root$1.pingCache = new PossiblyWeakMap$1();
11153				threadIDs = /* @__PURE__ */ new Set();
11154				pingCache.set(wakeable, threadIDs);
11155			} else {
11156				threadIDs = pingCache.get(wakeable);
11157				if (threadIDs === void 0) {
11158					threadIDs = /* @__PURE__ */ new Set();
11159					pingCache.set(wakeable, threadIDs);
11160				}
11161			}
11162			if (!threadIDs.has(lanes)) {
11163				threadIDs.add(lanes);
11164				var ping = pingSuspendedRoot.bind(null, root$1, wakeable, lanes);
11165				if (isDevToolsPresent) restorePendingUpdaters(root$1, lanes);
11166				wakeable.then(ping, ping);
11167			}
11168		}
11169		function attachRetryListener(suspenseBoundary, root$1, wakeable, lanes) {
11170			var wakeables = suspenseBoundary.updateQueue;
11171			if (wakeables === null) {
11172				var updateQueue = /* @__PURE__ */ new Set();
11173				updateQueue.add(wakeable);
11174				suspenseBoundary.updateQueue = updateQueue;
11175			} else wakeables.add(wakeable);
11176		}
11177		function resetSuspendedComponent(sourceFiber, rootRenderLanes) {
11178			var tag = sourceFiber.tag;
11179			if ((sourceFiber.mode & ConcurrentMode) === NoMode && (tag === FunctionComponent || tag === ForwardRef || tag === SimpleMemoComponent)) {
11180				var currentSource = sourceFiber.alternate;
11181				if (currentSource) {
11182					sourceFiber.updateQueue = currentSource.updateQueue;
11183					sourceFiber.memoizedState = currentSource.memoizedState;
11184					sourceFiber.lanes = currentSource.lanes;
11185				} else {
11186					sourceFiber.updateQueue = null;
11187					sourceFiber.memoizedState = null;
11188				}
11189			}
11190		}
11191		function getNearestSuspenseBoundaryToCapture(returnFiber) {
11192			var node = returnFiber;
11193			do {
11194				if (node.tag === SuspenseComponent && shouldCaptureSuspense(node)) return node;
11195				node = node.return;
11196			} while (node !== null);
11197			return null;
11198		}
11199		function markSuspenseBoundaryShouldCapture(suspenseBoundary, returnFiber, sourceFiber, root$1, rootRenderLanes) {
11200			if ((suspenseBoundary.mode & ConcurrentMode) === NoMode) {
11201				if (suspenseBoundary === returnFiber) suspenseBoundary.flags |= ShouldCapture;
11202				else {
11203					suspenseBoundary.flags |= DidCapture;
11204					sourceFiber.flags |= ForceUpdateForLegacySuspense;
11205					sourceFiber.flags &= ~(LifecycleEffectMask | Incomplete);
11206					if (sourceFiber.tag === ClassComponent) if (sourceFiber.alternate === null) sourceFiber.tag = IncompleteClassComponent;
11207					else {
11208						var update = createUpdate(NoTimestamp, SyncLane);
11209						update.tag = ForceUpdate;
11210						enqueueUpdate(sourceFiber, update, SyncLane);
11211					}
11212					sourceFiber.lanes = mergeLanes(sourceFiber.lanes, SyncLane);
11213				}
11214				return suspenseBoundary;
11215			}
11216			suspenseBoundary.flags |= ShouldCapture;
11217			suspenseBoundary.lanes = rootRenderLanes;
11218			return suspenseBoundary;
11219		}
11220		function throwException(root$1, returnFiber, sourceFiber, value, rootRenderLanes) {
11221			sourceFiber.flags |= Incomplete;
11222			if (isDevToolsPresent) restorePendingUpdaters(root$1, rootRenderLanes);
11223			if (value !== null && typeof value === "object" && typeof value.then === "function") {
11224				var wakeable = value;
11225				resetSuspendedComponent(sourceFiber);
11226				if (getIsHydrating() && sourceFiber.mode & ConcurrentMode) markDidThrowWhileHydratingDEV();
11227				var suspenseBoundary = getNearestSuspenseBoundaryToCapture(returnFiber);
11228				if (suspenseBoundary !== null) {
11229					suspenseBoundary.flags &= ~ForceClientRender;
11230					markSuspenseBoundaryShouldCapture(suspenseBoundary, returnFiber, sourceFiber, root$1, rootRenderLanes);
11231					if (suspenseBoundary.mode & ConcurrentMode) attachPingListener(root$1, wakeable, rootRenderLanes);
11232					attachRetryListener(suspenseBoundary, root$1, wakeable);
11233					return;
11234				} else {
11235					if (!includesSyncLane(rootRenderLanes)) {
11236						attachPingListener(root$1, wakeable, rootRenderLanes);
11237						renderDidSuspendDelayIfPossible();
11238						return;
11239					}
11240					value = /* @__PURE__ */ new Error("A component suspended while responding to synchronous input. This will cause the UI to be replaced with a loading indicator. To fix, updates that suspend should be wrapped with startTransition.");
11241				}
11242			} else if (getIsHydrating() && sourceFiber.mode & ConcurrentMode) {
11243				markDidThrowWhileHydratingDEV();
11244				var _suspenseBoundary = getNearestSuspenseBoundaryToCapture(returnFiber);
11245				if (_suspenseBoundary !== null) {
11246					if ((_suspenseBoundary.flags & ShouldCapture) === NoFlags) _suspenseBoundary.flags |= ForceClientRender;
11247					markSuspenseBoundaryShouldCapture(_suspenseBoundary, returnFiber, sourceFiber, root$1, rootRenderLanes);
11248					queueHydrationError(createCapturedValueAtFiber(value, sourceFiber));
11249					return;
11250				}
11251			}
11252			value = createCapturedValueAtFiber(value, sourceFiber);
11253			renderDidError(value);
11254			var workInProgress$1 = returnFiber;
11255			do {
11256				switch (workInProgress$1.tag) {
11257					case HostRoot:
11258						var _errorInfo = value;
11259						workInProgress$1.flags |= ShouldCapture;
11260						var lane = pickArbitraryLane(rootRenderLanes);
11261						workInProgress$1.lanes = mergeLanes(workInProgress$1.lanes, lane);
11262						var update = createRootErrorUpdate(workInProgress$1, _errorInfo, lane);
11263						enqueueCapturedUpdate(workInProgress$1, update);
11264						return;
11265					case ClassComponent:
11266						var errorInfo = value;
11267						var ctor = workInProgress$1.type;
11268						var instance = workInProgress$1.stateNode;
11269						if ((workInProgress$1.flags & DidCapture) === NoFlags && (typeof ctor.getDerivedStateFromError === "function" || instance !== null && typeof instance.componentDidCatch === "function" && !isAlreadyFailedLegacyErrorBoundary(instance))) {
11270							workInProgress$1.flags |= ShouldCapture;
11271							var _lane = pickArbitraryLane(rootRenderLanes);
11272							workInProgress$1.lanes = mergeLanes(workInProgress$1.lanes, _lane);
11273							var _update = createClassErrorUpdate(workInProgress$1, errorInfo, _lane);
11274							enqueueCapturedUpdate(workInProgress$1, _update);
11275							return;
11276						}
11277						break;
11278				}
11279				workInProgress$1 = workInProgress$1.return;
11280			} while (workInProgress$1 !== null);
11281		}
11282		function getSuspendedCache() {
11283			return null;
11284		}
11285		var ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;
11286		var didReceiveUpdate = false;
11287		var didWarnAboutBadClass;
11288		var didWarnAboutModulePatternComponent;
11289		var didWarnAboutContextTypeOnFunctionComponent;
11290		var didWarnAboutGetDerivedStateOnFunctionComponent;
11291		var didWarnAboutFunctionRefs;
11292		var didWarnAboutReassigningProps;
11293		var didWarnAboutRevealOrder;
11294		var didWarnAboutTailOptions;
11295		var didWarnAboutDefaultPropsOnFunctionComponent;
11296		didWarnAboutBadClass = {};
11297		didWarnAboutModulePatternComponent = {};
11298		didWarnAboutContextTypeOnFunctionComponent = {};
11299		didWarnAboutGetDerivedStateOnFunctionComponent = {};
11300		didWarnAboutFunctionRefs = {};
11301		didWarnAboutReassigningProps = false;
11302		didWarnAboutRevealOrder = {};
11303		didWarnAboutTailOptions = {};
11304		didWarnAboutDefaultPropsOnFunctionComponent = {};
11305		function reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1) {
11306			if (current$1 === null) workInProgress$1.child = mountChildFibers(workInProgress$1, null, nextChildren, renderLanes$1);
11307			else workInProgress$1.child = reconcileChildFibers(workInProgress$1, current$1.child, nextChildren, renderLanes$1);
11308		}
11309		function forceUnmountCurrentAndReconcile(current$1, workInProgress$1, nextChildren, renderLanes$1) {
11310			workInProgress$1.child = reconcileChildFibers(workInProgress$1, current$1.child, null, renderLanes$1);
11311			workInProgress$1.child = reconcileChildFibers(workInProgress$1, null, nextChildren, renderLanes$1);
11312		}
11313		function updateForwardRef(current$1, workInProgress$1, Component, nextProps, renderLanes$1) {
11314			if (workInProgress$1.type !== workInProgress$1.elementType) {
11315				var innerPropTypes = Component.propTypes;
11316				if (innerPropTypes) checkPropTypes(innerPropTypes, nextProps, "prop", getComponentNameFromType(Component));
11317			}
11318			var render$1 = Component.render;
11319			var ref = workInProgress$1.ref;
11320			var nextChildren;
11321			var hasId;
11322			prepareToReadContext(workInProgress$1, renderLanes$1);
11323			markComponentRenderStarted(workInProgress$1);
11324			ReactCurrentOwner$1.current = workInProgress$1;
11325			setIsRendering(true);
11326			nextChildren = renderWithHooks(current$1, workInProgress$1, render$1, nextProps, ref, renderLanes$1);
11327			hasId = checkDidRenderIdHook();
11328			if (workInProgress$1.mode & StrictLegacyMode) {
11329				setIsStrictModeForDevtools(true);
11330				try {
11331					nextChildren = renderWithHooks(current$1, workInProgress$1, render$1, nextProps, ref, renderLanes$1);
11332					hasId = checkDidRenderIdHook();
11333				} finally {
11334					setIsStrictModeForDevtools(false);
11335				}
11336			}
11337			setIsRendering(false);
11338			markComponentRenderStopped();
11339			if (current$1 !== null && !didReceiveUpdate) {
11340				bailoutHooks(current$1, workInProgress$1, renderLanes$1);
11341				return bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
11342			}
11343			if (getIsHydrating() && hasId) pushMaterializedTreeId(workInProgress$1);
11344			workInProgress$1.flags |= PerformedWork;
11345			reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11346			return workInProgress$1.child;
11347		}
11348		function updateMemoComponent(current$1, workInProgress$1, Component, nextProps, renderLanes$1) {
11349			if (current$1 === null) {
11350				var type = Component.type;
11351				if (isSimpleFunctionComponent(type) && Component.compare === null && Component.defaultProps === void 0) {
11352					var resolvedType = type;
11353					resolvedType = resolveFunctionForHotReloading(type);
11354					workInProgress$1.tag = SimpleMemoComponent;
11355					workInProgress$1.type = resolvedType;
11356					validateFunctionComponentInDev(workInProgress$1, type);
11357					return updateSimpleMemoComponent(current$1, workInProgress$1, resolvedType, nextProps, renderLanes$1);
11358				}
11359				var innerPropTypes = type.propTypes;
11360				if (innerPropTypes) checkPropTypes(innerPropTypes, nextProps, "prop", getComponentNameFromType(type));
11361				if (Component.defaultProps !== void 0) {
11362					var componentName = getComponentNameFromType(type) || "Unknown";
11363					if (!didWarnAboutDefaultPropsOnFunctionComponent[componentName]) {
11364						error("%s: Support for defaultProps will be removed from memo components in a future major release. Use JavaScript default parameters instead.", componentName);
11365						didWarnAboutDefaultPropsOnFunctionComponent[componentName] = true;
11366					}
11367				}
11368				var child = createFiberFromTypeAndProps(Component.type, null, nextProps, workInProgress$1, workInProgress$1.mode, renderLanes$1);
11369				child.ref = workInProgress$1.ref;
11370				child.return = workInProgress$1;
11371				workInProgress$1.child = child;
11372				return child;
11373			}
11374			var _type = Component.type;
11375			var _innerPropTypes = _type.propTypes;
11376			if (_innerPropTypes) checkPropTypes(_innerPropTypes, nextProps, "prop", getComponentNameFromType(_type));
11377			var currentChild = current$1.child;
11378			if (!checkScheduledUpdateOrContext(current$1, renderLanes$1)) {
11379				var prevProps = currentChild.memoizedProps;
11380				var compare = Component.compare;
11381				compare = compare !== null ? compare : shallowEqual;
11382				if (compare(prevProps, nextProps) && current$1.ref === workInProgress$1.ref) return bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
11383			}
11384			workInProgress$1.flags |= PerformedWork;
11385			var newChild = createWorkInProgress(currentChild, nextProps);
11386			newChild.ref = workInProgress$1.ref;
11387			newChild.return = workInProgress$1;
11388			workInProgress$1.child = newChild;
11389			return newChild;
11390		}
11391		function updateSimpleMemoComponent(current$1, workInProgress$1, Component, nextProps, renderLanes$1) {
11392			if (workInProgress$1.type !== workInProgress$1.elementType) {
11393				var outerMemoType = workInProgress$1.elementType;
11394				if (outerMemoType.$$typeof === REACT_LAZY_TYPE) {
11395					var lazyComponent = outerMemoType;
11396					var payload = lazyComponent._payload;
11397					var init = lazyComponent._init;
11398					try {
11399						outerMemoType = init(payload);
11400					} catch (x) {
11401						outerMemoType = null;
11402					}
11403					var outerPropTypes = outerMemoType && outerMemoType.propTypes;
11404					if (outerPropTypes) checkPropTypes(outerPropTypes, nextProps, "prop", getComponentNameFromType(outerMemoType));
11405				}
11406			}
11407			if (current$1 !== null) {
11408				var prevProps = current$1.memoizedProps;
11409				if (shallowEqual(prevProps, nextProps) && current$1.ref === workInProgress$1.ref && workInProgress$1.type === current$1.type) {
11410					didReceiveUpdate = false;
11411					workInProgress$1.pendingProps = nextProps = prevProps;
11412					if (!checkScheduledUpdateOrContext(current$1, renderLanes$1)) {
11413						workInProgress$1.lanes = current$1.lanes;
11414						return bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
11415					} else if ((current$1.flags & ForceUpdateForLegacySuspense) !== NoFlags) didReceiveUpdate = true;
11416				}
11417			}
11418			return updateFunctionComponent(current$1, workInProgress$1, Component, nextProps, renderLanes$1);
11419		}
11420		function updateOffscreenComponent(current$1, workInProgress$1, renderLanes$1) {
11421			var nextProps = workInProgress$1.pendingProps;
11422			var nextChildren = nextProps.children;
11423			var prevState = current$1 !== null ? current$1.memoizedState : null;
11424			if (nextProps.mode === "hidden" || enableLegacyHidden) if ((workInProgress$1.mode & ConcurrentMode) === NoMode) {
11425				workInProgress$1.memoizedState = {
11426					baseLanes: NoLanes,
11427					cachePool: null,
11428					transitions: null
11429				};
11430				pushRenderLanes(workInProgress$1, renderLanes$1);
11431			} else if (!includesSomeLane(renderLanes$1, OffscreenLane)) {
11432				var spawnedCachePool = null;
11433				var nextBaseLanes;
11434				if (prevState !== null) {
11435					var prevBaseLanes = prevState.baseLanes;
11436					nextBaseLanes = mergeLanes(prevBaseLanes, renderLanes$1);
11437				} else nextBaseLanes = renderLanes$1;
11438				workInProgress$1.lanes = workInProgress$1.childLanes = laneToLanes(OffscreenLane);
11439				workInProgress$1.memoizedState = {
11440					baseLanes: nextBaseLanes,
11441					cachePool: spawnedCachePool,
11442					transitions: null
11443				};
11444				workInProgress$1.updateQueue = null;
11445				pushRenderLanes(workInProgress$1, nextBaseLanes);
11446				return null;
11447			} else {
11448				workInProgress$1.memoizedState = {
11449					baseLanes: NoLanes,
11450					cachePool: null,
11451					transitions: null
11452				};
11453				pushRenderLanes(workInProgress$1, prevState !== null ? prevState.baseLanes : renderLanes$1);
11454			}
11455			else {
11456				var _subtreeRenderLanes;
11457				if (prevState !== null) {
11458					_subtreeRenderLanes = mergeLanes(prevState.baseLanes, renderLanes$1);
11459					workInProgress$1.memoizedState = null;
11460				} else _subtreeRenderLanes = renderLanes$1;
11461				pushRenderLanes(workInProgress$1, _subtreeRenderLanes);
11462			}
11463			reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11464			return workInProgress$1.child;
11465		}
11466		function updateFragment(current$1, workInProgress$1, renderLanes$1) {
11467			var nextChildren = workInProgress$1.pendingProps;
11468			reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11469			return workInProgress$1.child;
11470		}
11471		function updateMode(current$1, workInProgress$1, renderLanes$1) {
11472			var nextChildren = workInProgress$1.pendingProps.children;
11473			reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11474			return workInProgress$1.child;
11475		}
11476		function updateProfiler(current$1, workInProgress$1, renderLanes$1) {
11477			workInProgress$1.flags |= Update;
11478			var stateNode = workInProgress$1.stateNode;
11479			stateNode.effectDuration = 0;
11480			stateNode.passiveEffectDuration = 0;
11481			var nextChildren = workInProgress$1.pendingProps.children;
11482			reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11483			return workInProgress$1.child;
11484		}
11485		function markRef(current$1, workInProgress$1) {
11486			var ref = workInProgress$1.ref;
11487			if (current$1 === null && ref !== null || current$1 !== null && current$1.ref !== ref) {
11488				workInProgress$1.flags |= Ref;
11489				workInProgress$1.flags |= RefStatic;
11490			}
11491		}
11492		function updateFunctionComponent(current$1, workInProgress$1, Component, nextProps, renderLanes$1) {
11493			if (workInProgress$1.type !== workInProgress$1.elementType) {
11494				var innerPropTypes = Component.propTypes;
11495				if (innerPropTypes) checkPropTypes(innerPropTypes, nextProps, "prop", getComponentNameFromType(Component));
11496			}
11497			var context = getMaskedContext(workInProgress$1, getUnmaskedContext(workInProgress$1, Component, true));
11498			var nextChildren;
11499			var hasId;
11500			prepareToReadContext(workInProgress$1, renderLanes$1);
11501			markComponentRenderStarted(workInProgress$1);
11502			ReactCurrentOwner$1.current = workInProgress$1;
11503			setIsRendering(true);
11504			nextChildren = renderWithHooks(current$1, workInProgress$1, Component, nextProps, context, renderLanes$1);
11505			hasId = checkDidRenderIdHook();
11506			if (workInProgress$1.mode & StrictLegacyMode) {
11507				setIsStrictModeForDevtools(true);
11508				try {
11509					nextChildren = renderWithHooks(current$1, workInProgress$1, Component, nextProps, context, renderLanes$1);
11510					hasId = checkDidRenderIdHook();
11511				} finally {
11512					setIsStrictModeForDevtools(false);
11513				}
11514			}
11515			setIsRendering(false);
11516			markComponentRenderStopped();
11517			if (current$1 !== null && !didReceiveUpdate) {
11518				bailoutHooks(current$1, workInProgress$1, renderLanes$1);
11519				return bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
11520			}
11521			if (getIsHydrating() && hasId) pushMaterializedTreeId(workInProgress$1);
11522			workInProgress$1.flags |= PerformedWork;
11523			reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11524			return workInProgress$1.child;
11525		}
11526		function updateClassComponent(current$1, workInProgress$1, Component, nextProps, renderLanes$1) {
11527			switch (shouldError(workInProgress$1)) {
11528				case false:
11529					var _instance = workInProgress$1.stateNode;
11530					var ctor = workInProgress$1.type;
11531					var state = new ctor(workInProgress$1.memoizedProps, _instance.context).state;
11532					_instance.updater.enqueueSetState(_instance, state, null);
11533					break;
11534				case true:
11535					workInProgress$1.flags |= DidCapture;
11536					workInProgress$1.flags |= ShouldCapture;
11537					var error$1 = /* @__PURE__ */ new Error("Simulated error coming from DevTools");
11538					var lane = pickArbitraryLane(renderLanes$1);
11539					workInProgress$1.lanes = mergeLanes(workInProgress$1.lanes, lane);
11540					enqueueCapturedUpdate(workInProgress$1, createClassErrorUpdate(workInProgress$1, createCapturedValueAtFiber(error$1, workInProgress$1), lane));
11541					break;
11542			}
11543			if (workInProgress$1.type !== workInProgress$1.elementType) {
11544				var innerPropTypes = Component.propTypes;
11545				if (innerPropTypes) checkPropTypes(innerPropTypes, nextProps, "prop", getComponentNameFromType(Component));
11546			}
11547			var hasContext;
11548			if (isContextProvider(Component)) {
11549				hasContext = true;
11550				pushContextProvider(workInProgress$1);
11551			} else hasContext = false;
11552			prepareToReadContext(workInProgress$1, renderLanes$1);
11553			var instance = workInProgress$1.stateNode;
11554			var shouldUpdate;
11555			if (instance === null) {
11556				resetSuspendedCurrentOnMountInLegacyMode(current$1, workInProgress$1);
11557				constructClassInstance(workInProgress$1, Component, nextProps);
11558				mountClassInstance(workInProgress$1, Component, nextProps, renderLanes$1);
11559				shouldUpdate = true;
11560			} else if (current$1 === null) shouldUpdate = resumeMountClassInstance(workInProgress$1, Component, nextProps, renderLanes$1);
11561			else shouldUpdate = updateClassInstance(current$1, workInProgress$1, Component, nextProps, renderLanes$1);
11562			var nextUnitOfWork = finishClassComponent(current$1, workInProgress$1, Component, shouldUpdate, hasContext, renderLanes$1);
11563			var inst = workInProgress$1.stateNode;
11564			if (shouldUpdate && inst.props !== nextProps) {
11565				if (!didWarnAboutReassigningProps) error("It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.", getComponentNameFromFiber(workInProgress$1) || "a component");
11566				didWarnAboutReassigningProps = true;
11567			}
11568			return nextUnitOfWork;
11569		}
11570		function finishClassComponent(current$1, workInProgress$1, Component, shouldUpdate, hasContext, renderLanes$1) {
11571			markRef(current$1, workInProgress$1);
11572			var didCaptureError = (workInProgress$1.flags & DidCapture) !== NoFlags;
11573			if (!shouldUpdate && !didCaptureError) {
11574				if (hasContext) invalidateContextProvider(workInProgress$1, Component, false);
11575				return bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
11576			}
11577			var instance = workInProgress$1.stateNode;
11578			ReactCurrentOwner$1.current = workInProgress$1;
11579			var nextChildren;
11580			if (didCaptureError && typeof Component.getDerivedStateFromError !== "function") {
11581				nextChildren = null;
11582				stopProfilerTimerIfRunning();
11583			} else {
11584				markComponentRenderStarted(workInProgress$1);
11585				setIsRendering(true);
11586				nextChildren = instance.render();
11587				if (workInProgress$1.mode & StrictLegacyMode) {
11588					setIsStrictModeForDevtools(true);
11589					try {
11590						instance.render();
11591					} finally {
11592						setIsStrictModeForDevtools(false);
11593					}
11594				}
11595				setIsRendering(false);
11596				markComponentRenderStopped();
11597			}
11598			workInProgress$1.flags |= PerformedWork;
11599			if (current$1 !== null && didCaptureError) forceUnmountCurrentAndReconcile(current$1, workInProgress$1, nextChildren, renderLanes$1);
11600			else reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11601			workInProgress$1.memoizedState = instance.state;
11602			if (hasContext) invalidateContextProvider(workInProgress$1, Component, true);
11603			return workInProgress$1.child;
11604		}
11605		function pushHostRootContext(workInProgress$1) {
11606			var root$1 = workInProgress$1.stateNode;
11607			if (root$1.pendingContext) pushTopLevelContextObject(workInProgress$1, root$1.pendingContext, root$1.pendingContext !== root$1.context);
11608			else if (root$1.context) pushTopLevelContextObject(workInProgress$1, root$1.context, false);
11609			pushHostContainer(workInProgress$1, root$1.containerInfo);
11610		}
11611		function updateHostRoot(current$1, workInProgress$1, renderLanes$1) {
11612			pushHostRootContext(workInProgress$1);
11613			if (current$1 === null) throw new Error("Should have a current fiber. This is a bug in React.");
11614			var nextProps = workInProgress$1.pendingProps;
11615			var prevState = workInProgress$1.memoizedState;
11616			var prevChildren = prevState.element;
11617			cloneUpdateQueue(current$1, workInProgress$1);
11618			processUpdateQueue(workInProgress$1, nextProps, null, renderLanes$1);
11619			var nextState = workInProgress$1.memoizedState;
11620			workInProgress$1.stateNode;
11621			var nextChildren = nextState.element;
11622			if (prevState.isDehydrated) {
11623				var overrideState = {
11624					element: nextChildren,
11625					isDehydrated: false,
11626					cache: nextState.cache,
11627					pendingSuspenseBoundaries: nextState.pendingSuspenseBoundaries,
11628					transitions: nextState.transitions
11629				};
11630				var updateQueue = workInProgress$1.updateQueue;
11631				updateQueue.baseState = overrideState;
11632				workInProgress$1.memoizedState = overrideState;
11633				if (workInProgress$1.flags & ForceClientRender) return mountHostRootWithoutHydrating(current$1, workInProgress$1, nextChildren, renderLanes$1, createCapturedValueAtFiber(/* @__PURE__ */ new Error("There was an error while hydrating. Because the error happened outside of a Suspense boundary, the entire root will switch to client rendering."), workInProgress$1));
11634				else if (nextChildren !== prevChildren) return mountHostRootWithoutHydrating(current$1, workInProgress$1, nextChildren, renderLanes$1, createCapturedValueAtFiber(/* @__PURE__ */ new Error("This root received an early update, before anything was able hydrate. Switched the entire root to client rendering."), workInProgress$1));
11635				else {
11636					enterHydrationState(workInProgress$1);
11637					var child = mountChildFibers(workInProgress$1, null, nextChildren, renderLanes$1);
11638					workInProgress$1.child = child;
11639					var node = child;
11640					while (node) {
11641						node.flags = node.flags & ~Placement | Hydrating;
11642						node = node.sibling;
11643					}
11644				}
11645			} else {
11646				resetHydrationState();
11647				if (nextChildren === prevChildren) return bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
11648				reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11649			}
11650			return workInProgress$1.child;
11651		}
11652		function mountHostRootWithoutHydrating(current$1, workInProgress$1, nextChildren, renderLanes$1, recoverableError) {
11653			resetHydrationState();
11654			queueHydrationError(recoverableError);
11655			workInProgress$1.flags |= ForceClientRender;
11656			reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11657			return workInProgress$1.child;
11658		}
11659		function updateHostComponent(current$1, workInProgress$1, renderLanes$1) {
11660			pushHostContext(workInProgress$1);
11661			if (current$1 === null) tryToClaimNextHydratableInstance(workInProgress$1);
11662			var type = workInProgress$1.type;
11663			var nextProps = workInProgress$1.pendingProps;
11664			var prevProps = current$1 !== null ? current$1.memoizedProps : null;
11665			var nextChildren = nextProps.children;
11666			if (shouldSetTextContent(type, nextProps)) nextChildren = null;
11667			else if (prevProps !== null && shouldSetTextContent(type, prevProps)) workInProgress$1.flags |= ContentReset;
11668			markRef(current$1, workInProgress$1);
11669			reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
11670			return workInProgress$1.child;
11671		}
11672		function updateHostText(current$1, workInProgress$1) {
11673			if (current$1 === null) tryToClaimNextHydratableInstance(workInProgress$1);
11674			return null;
11675		}
11676		function mountLazyComponent(_current, workInProgress$1, elementType, renderLanes$1) {
11677			resetSuspendedCurrentOnMountInLegacyMode(_current, workInProgress$1);
11678			var props = workInProgress$1.pendingProps;
11679			var lazyComponent = elementType;
11680			var payload = lazyComponent._payload;
11681			var init = lazyComponent._init;
11682			var Component = init(payload);
11683			workInProgress$1.type = Component;
11684			var resolvedTag = workInProgress$1.tag = resolveLazyComponentTag(Component);
11685			var resolvedProps = resolveDefaultProps(Component, props);
11686			var child;
11687			switch (resolvedTag) {
11688				case FunctionComponent:
11689					validateFunctionComponentInDev(workInProgress$1, Component);
11690					workInProgress$1.type = Component = resolveFunctionForHotReloading(Component);
11691					child = updateFunctionComponent(null, workInProgress$1, Component, resolvedProps, renderLanes$1);
11692					return child;
11693				case ClassComponent:
11694					workInProgress$1.type = Component = resolveClassForHotReloading(Component);
11695					child = updateClassComponent(null, workInProgress$1, Component, resolvedProps, renderLanes$1);
11696					return child;
11697				case ForwardRef:
11698					workInProgress$1.type = Component = resolveForwardRefForHotReloading(Component);
11699					child = updateForwardRef(null, workInProgress$1, Component, resolvedProps, renderLanes$1);
11700					return child;
11701				case MemoComponent:
11702					if (workInProgress$1.type !== workInProgress$1.elementType) {
11703						var outerPropTypes = Component.propTypes;
11704						if (outerPropTypes) checkPropTypes(outerPropTypes, resolvedProps, "prop", getComponentNameFromType(Component));
11705					}
11706					child = updateMemoComponent(null, workInProgress$1, Component, resolveDefaultProps(Component.type, resolvedProps), renderLanes$1);
11707					return child;
11708			}
11709			var hint = "";
11710			if (Component !== null && typeof Component === "object" && Component.$$typeof === REACT_LAZY_TYPE) hint = " Did you wrap a component in React.lazy() more than once?";
11711			throw new Error("Element type is invalid. Received a promise that resolves to: " + Component + ". " + ("Lazy element type must resolve to a class or function." + hint));
11712		}
11713		function mountIncompleteClassComponent(_current, workInProgress$1, Component, nextProps, renderLanes$1) {
11714			resetSuspendedCurrentOnMountInLegacyMode(_current, workInProgress$1);
11715			workInProgress$1.tag = ClassComponent;
11716			var hasContext;
11717			if (isContextProvider(Component)) {
11718				hasContext = true;
11719				pushContextProvider(workInProgress$1);
11720			} else hasContext = false;
11721			prepareToReadContext(workInProgress$1, renderLanes$1);
11722			constructClassInstance(workInProgress$1, Component, nextProps);
11723			mountClassInstance(workInProgress$1, Component, nextProps, renderLanes$1);
11724			return finishClassComponent(null, workInProgress$1, Component, true, hasContext, renderLanes$1);
11725		}
11726		function mountIndeterminateComponent(_current, workInProgress$1, Component, renderLanes$1) {
11727			resetSuspendedCurrentOnMountInLegacyMode(_current, workInProgress$1);
11728			var props = workInProgress$1.pendingProps;
11729			var context = getMaskedContext(workInProgress$1, getUnmaskedContext(workInProgress$1, Component, false));
11730			prepareToReadContext(workInProgress$1, renderLanes$1);
11731			var value;
11732			var hasId;
11733			markComponentRenderStarted(workInProgress$1);
11734			if (Component.prototype && typeof Component.prototype.render === "function") {
11735				var componentName = getComponentNameFromType(Component) || "Unknown";
11736				if (!didWarnAboutBadClass[componentName]) {
11737					error("The <%s /> component appears to have a render method, but doesn't extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.", componentName, componentName);
11738					didWarnAboutBadClass[componentName] = true;
11739				}
11740			}
11741			if (workInProgress$1.mode & StrictLegacyMode) ReactStrictModeWarnings.recordLegacyContextWarning(workInProgress$1, null);
11742			setIsRendering(true);
11743			ReactCurrentOwner$1.current = workInProgress$1;
11744			value = renderWithHooks(null, workInProgress$1, Component, props, context, renderLanes$1);
11745			hasId = checkDidRenderIdHook();
11746			setIsRendering(false);
11747			markComponentRenderStopped();
11748			workInProgress$1.flags |= PerformedWork;
11749			if (typeof value === "object" && value !== null && typeof value.render === "function" && value.$$typeof === void 0) {
11750				var _componentName = getComponentNameFromType(Component) || "Unknown";
11751				if (!didWarnAboutModulePatternComponent[_componentName]) {
11752					error("The <%s /> component appears to be a function component that returns a class instance. Change %s to a class that extends React.Component instead. If you can't use a class try assigning the prototype on the function as a workaround. `%s.prototype = React.Component.prototype`. Don't use an arrow function since it cannot be called with `new` by React.", _componentName, _componentName, _componentName);
11753					didWarnAboutModulePatternComponent[_componentName] = true;
11754				}
11755			}
11756			if (typeof value === "object" && value !== null && typeof value.render === "function" && value.$$typeof === void 0) {
11757				var _componentName2 = getComponentNameFromType(Component) || "Unknown";
11758				if (!didWarnAboutModulePatternComponent[_componentName2]) {
11759					error("The <%s /> component appears to be a function component that returns a class instance. Change %s to a class that extends React.Component instead. If you can't use a class try assigning the prototype on the function as a workaround. `%s.prototype = React.Component.prototype`. Don't use an arrow function since it cannot be called with `new` by React.", _componentName2, _componentName2, _componentName2);
11760					didWarnAboutModulePatternComponent[_componentName2] = true;
11761				}
11762				workInProgress$1.tag = ClassComponent;
11763				workInProgress$1.memoizedState = null;
11764				workInProgress$1.updateQueue = null;
11765				var hasContext = false;
11766				if (isContextProvider(Component)) {
11767					hasContext = true;
11768					pushContextProvider(workInProgress$1);
11769				} else hasContext = false;
11770				workInProgress$1.memoizedState = value.state !== null && value.state !== void 0 ? value.state : null;
11771				initializeUpdateQueue(workInProgress$1);
11772				adoptClassInstance(workInProgress$1, value);
11773				mountClassInstance(workInProgress$1, Component, props, renderLanes$1);
11774				return finishClassComponent(null, workInProgress$1, Component, true, hasContext, renderLanes$1);
11775			} else {
11776				workInProgress$1.tag = FunctionComponent;
11777				if (workInProgress$1.mode & StrictLegacyMode) {
11778					setIsStrictModeForDevtools(true);
11779					try {
11780						value = renderWithHooks(null, workInProgress$1, Component, props, context, renderLanes$1);
11781						hasId = checkDidRenderIdHook();
11782					} finally {
11783						setIsStrictModeForDevtools(false);
11784					}
11785				}
11786				if (getIsHydrating() && hasId) pushMaterializedTreeId(workInProgress$1);
11787				reconcileChildren(null, workInProgress$1, value, renderLanes$1);
11788				validateFunctionComponentInDev(workInProgress$1, Component);
11789				return workInProgress$1.child;
11790			}
11791		}
11792		function validateFunctionComponentInDev(workInProgress$1, Component) {
11793			if (Component) {
11794				if (Component.childContextTypes) error("%s(...): childContextTypes cannot be defined on a function component.", Component.displayName || Component.name || "Component");
11795			}
11796			if (workInProgress$1.ref !== null) {
11797				var info = "";
11798				var ownerName = getCurrentFiberOwnerNameInDevOrNull();
11799				if (ownerName) info += "\n\nCheck the render method of `" + ownerName + "`.";
11800				var warningKey = ownerName || "";
11801				var debugSource = workInProgress$1._debugSource;
11802				if (debugSource) warningKey = debugSource.fileName + ":" + debugSource.lineNumber;
11803				if (!didWarnAboutFunctionRefs[warningKey]) {
11804					didWarnAboutFunctionRefs[warningKey] = true;
11805					error("Function components cannot be given refs. Attempts to access this ref will fail. Did you mean to use React.forwardRef()?%s", info);
11806				}
11807			}
11808			if (Component.defaultProps !== void 0) {
11809				var componentName = getComponentNameFromType(Component) || "Unknown";
11810				if (!didWarnAboutDefaultPropsOnFunctionComponent[componentName]) {
11811					error("%s: Support for defaultProps will be removed from function components in a future major release. Use JavaScript default parameters instead.", componentName);
11812					didWarnAboutDefaultPropsOnFunctionComponent[componentName] = true;
11813				}
11814			}
11815			if (typeof Component.getDerivedStateFromProps === "function") {
11816				var _componentName3 = getComponentNameFromType(Component) || "Unknown";
11817				if (!didWarnAboutGetDerivedStateOnFunctionComponent[_componentName3]) {
11818					error("%s: Function components do not support getDerivedStateFromProps.", _componentName3);
11819					didWarnAboutGetDerivedStateOnFunctionComponent[_componentName3] = true;
11820				}
11821			}
11822			if (typeof Component.contextType === "object" && Component.contextType !== null) {
11823				var _componentName4 = getComponentNameFromType(Component) || "Unknown";
11824				if (!didWarnAboutContextTypeOnFunctionComponent[_componentName4]) {
11825					error("%s: Function components do not support contextType.", _componentName4);
11826					didWarnAboutContextTypeOnFunctionComponent[_componentName4] = true;
11827				}
11828			}
11829		}
11830		var SUSPENDED_MARKER = {
11831			dehydrated: null,
11832			treeContext: null,
11833			retryLane: NoLane
11834		};
11835		function mountSuspenseOffscreenState(renderLanes$1) {
11836			return {
11837				baseLanes: renderLanes$1,
11838				cachePool: getSuspendedCache(),
11839				transitions: null
11840			};
11841		}
11842		function updateSuspenseOffscreenState(prevOffscreenState, renderLanes$1) {
11843			return {
11844				baseLanes: mergeLanes(prevOffscreenState.baseLanes, renderLanes$1),
11845				cachePool: null,
11846				transitions: prevOffscreenState.transitions
11847			};
11848		}
11849		function shouldRemainOnFallback(suspenseContext, current$1, workInProgress$1, renderLanes$1) {
11850			if (current$1 !== null) {
11851				if (current$1.memoizedState === null) return false;
11852			}
11853			return hasSuspenseContext(suspenseContext, ForceSuspenseFallback);
11854		}
11855		function getRemainingWorkInPrimaryTree(current$1, renderLanes$1) {
11856			return removeLanes(current$1.childLanes, renderLanes$1);
11857		}
11858		function updateSuspenseComponent(current$1, workInProgress$1, renderLanes$1) {
11859			var nextProps = workInProgress$1.pendingProps;
11860			if (shouldSuspend(workInProgress$1)) workInProgress$1.flags |= DidCapture;
11861			var suspenseContext = suspenseStackCursor.current;
11862			var showFallback = false;
11863			var didSuspend = (workInProgress$1.flags & DidCapture) !== NoFlags;
11864			if (didSuspend || shouldRemainOnFallback(suspenseContext, current$1)) {
11865				showFallback = true;
11866				workInProgress$1.flags &= ~DidCapture;
11867			} else if (current$1 === null || current$1.memoizedState !== null) suspenseContext = addSubtreeSuspenseContext(suspenseContext, InvisibleParentSuspenseContext);
11868			suspenseContext = setDefaultShallowSuspenseContext(suspenseContext);
11869			pushSuspenseContext(workInProgress$1, suspenseContext);
11870			if (current$1 === null) {
11871				tryToClaimNextHydratableInstance(workInProgress$1);
11872				var suspenseState = workInProgress$1.memoizedState;
11873				if (suspenseState !== null) {
11874					var dehydrated = suspenseState.dehydrated;
11875					if (dehydrated !== null) return mountDehydratedSuspenseComponent(workInProgress$1, dehydrated);
11876				}
11877				var nextPrimaryChildren = nextProps.children;
11878				var nextFallbackChildren = nextProps.fallback;
11879				if (showFallback) {
11880					var fallbackFragment = mountSuspenseFallbackChildren(workInProgress$1, nextPrimaryChildren, nextFallbackChildren, renderLanes$1);
11881					var primaryChildFragment = workInProgress$1.child;
11882					primaryChildFragment.memoizedState = mountSuspenseOffscreenState(renderLanes$1);
11883					workInProgress$1.memoizedState = SUSPENDED_MARKER;
11884					return fallbackFragment;
11885				} else return mountSuspensePrimaryChildren(workInProgress$1, nextPrimaryChildren);
11886			} else {
11887				var prevState = current$1.memoizedState;
11888				if (prevState !== null) {
11889					var _dehydrated = prevState.dehydrated;
11890					if (_dehydrated !== null) return updateDehydratedSuspenseComponent(current$1, workInProgress$1, didSuspend, nextProps, _dehydrated, prevState, renderLanes$1);
11891				}
11892				if (showFallback) {
11893					var _nextFallbackChildren = nextProps.fallback;
11894					var _nextPrimaryChildren = nextProps.children;
11895					var fallbackChildFragment = updateSuspenseFallbackChildren(current$1, workInProgress$1, _nextPrimaryChildren, _nextFallbackChildren, renderLanes$1);
11896					var _primaryChildFragment2 = workInProgress$1.child;
11897					var prevOffscreenState = current$1.child.memoizedState;
11898					_primaryChildFragment2.memoizedState = prevOffscreenState === null ? mountSuspenseOffscreenState(renderLanes$1) : updateSuspenseOffscreenState(prevOffscreenState, renderLanes$1);
11899					_primaryChildFragment2.childLanes = getRemainingWorkInPrimaryTree(current$1, renderLanes$1);
11900					workInProgress$1.memoizedState = SUSPENDED_MARKER;
11901					return fallbackChildFragment;
11902				} else {
11903					var _nextPrimaryChildren2 = nextProps.children;
11904					var _primaryChildFragment3 = updateSuspensePrimaryChildren(current$1, workInProgress$1, _nextPrimaryChildren2, renderLanes$1);
11905					workInProgress$1.memoizedState = null;
11906					return _primaryChildFragment3;
11907				}
11908			}
11909		}
11910		function mountSuspensePrimaryChildren(workInProgress$1, primaryChildren, renderLanes$1) {
11911			var mode = workInProgress$1.mode;
11912			var primaryChildFragment = mountWorkInProgressOffscreenFiber({
11913				mode: "visible",
11914				children: primaryChildren
11915			}, mode);
11916			primaryChildFragment.return = workInProgress$1;
11917			workInProgress$1.child = primaryChildFragment;
11918			return primaryChildFragment;
11919		}
11920		function mountSuspenseFallbackChildren(workInProgress$1, primaryChildren, fallbackChildren, renderLanes$1) {
11921			var mode = workInProgress$1.mode;
11922			var progressedPrimaryFragment = workInProgress$1.child;
11923			var primaryChildProps = {
11924				mode: "hidden",
11925				children: primaryChildren
11926			};
11927			var primaryChildFragment;
11928			var fallbackChildFragment;
11929			if ((mode & ConcurrentMode) === NoMode && progressedPrimaryFragment !== null) {
11930				primaryChildFragment = progressedPrimaryFragment;
11931				primaryChildFragment.childLanes = NoLanes;
11932				primaryChildFragment.pendingProps = primaryChildProps;
11933				if (workInProgress$1.mode & ProfileMode) {
11934					primaryChildFragment.actualDuration = 0;
11935					primaryChildFragment.actualStartTime = -1;
11936					primaryChildFragment.selfBaseDuration = 0;
11937					primaryChildFragment.treeBaseDuration = 0;
11938				}
11939				fallbackChildFragment = createFiberFromFragment(fallbackChildren, mode, renderLanes$1, null);
11940			} else {
11941				primaryChildFragment = mountWorkInProgressOffscreenFiber(primaryChildProps, mode);
11942				fallbackChildFragment = createFiberFromFragment(fallbackChildren, mode, renderLanes$1, null);
11943			}
11944			primaryChildFragment.return = workInProgress$1;
11945			fallbackChildFragment.return = workInProgress$1;
11946			primaryChildFragment.sibling = fallbackChildFragment;
11947			workInProgress$1.child = primaryChildFragment;
11948			return fallbackChildFragment;
11949		}
11950		function mountWorkInProgressOffscreenFiber(offscreenProps, mode, renderLanes$1) {
11951			return createFiberFromOffscreen(offscreenProps, mode, NoLanes, null);
11952		}
11953		function updateWorkInProgressOffscreenFiber(current$1, offscreenProps) {
11954			return createWorkInProgress(current$1, offscreenProps);
11955		}
11956		function updateSuspensePrimaryChildren(current$1, workInProgress$1, primaryChildren, renderLanes$1) {
11957			var currentPrimaryChildFragment = current$1.child;
11958			var currentFallbackChildFragment = currentPrimaryChildFragment.sibling;
11959			var primaryChildFragment = updateWorkInProgressOffscreenFiber(currentPrimaryChildFragment, {
11960				mode: "visible",
11961				children: primaryChildren
11962			});
11963			if ((workInProgress$1.mode & ConcurrentMode) === NoMode) primaryChildFragment.lanes = renderLanes$1;
11964			primaryChildFragment.return = workInProgress$1;
11965			primaryChildFragment.sibling = null;
11966			if (currentFallbackChildFragment !== null) {
11967				var deletions = workInProgress$1.deletions;
11968				if (deletions === null) {
11969					workInProgress$1.deletions = [currentFallbackChildFragment];
11970					workInProgress$1.flags |= ChildDeletion;
11971				} else deletions.push(currentFallbackChildFragment);
11972			}
11973			workInProgress$1.child = primaryChildFragment;
11974			return primaryChildFragment;
11975		}
11976		function updateSuspenseFallbackChildren(current$1, workInProgress$1, primaryChildren, fallbackChildren, renderLanes$1) {
11977			var mode = workInProgress$1.mode;
11978			var currentPrimaryChildFragment = current$1.child;
11979			var currentFallbackChildFragment = currentPrimaryChildFragment.sibling;
11980			var primaryChildProps = {
11981				mode: "hidden",
11982				children: primaryChildren
11983			};
11984			var primaryChildFragment;
11985			if ((mode & ConcurrentMode) === NoMode && workInProgress$1.child !== currentPrimaryChildFragment) {
11986				primaryChildFragment = workInProgress$1.child;
11987				primaryChildFragment.childLanes = NoLanes;
11988				primaryChildFragment.pendingProps = primaryChildProps;
11989				if (workInProgress$1.mode & ProfileMode) {
11990					primaryChildFragment.actualDuration = 0;
11991					primaryChildFragment.actualStartTime = -1;
11992					primaryChildFragment.selfBaseDuration = currentPrimaryChildFragment.selfBaseDuration;
11993					primaryChildFragment.treeBaseDuration = currentPrimaryChildFragment.treeBaseDuration;
11994				}
11995				workInProgress$1.deletions = null;
11996			} else {
11997				primaryChildFragment = updateWorkInProgressOffscreenFiber(currentPrimaryChildFragment, primaryChildProps);
11998				primaryChildFragment.subtreeFlags = currentPrimaryChildFragment.subtreeFlags & StaticMask;
11999			}
12000			var fallbackChildFragment;
12001			if (currentFallbackChildFragment !== null) fallbackChildFragment = createWorkInProgress(currentFallbackChildFragment, fallbackChildren);
12002			else {
12003				fallbackChildFragment = createFiberFromFragment(fallbackChildren, mode, renderLanes$1, null);
12004				fallbackChildFragment.flags |= Placement;
12005			}
12006			fallbackChildFragment.return = workInProgress$1;
12007			primaryChildFragment.return = workInProgress$1;
12008			primaryChildFragment.sibling = fallbackChildFragment;
12009			workInProgress$1.child = primaryChildFragment;
12010			return fallbackChildFragment;
12011		}
12012		function retrySuspenseComponentWithoutHydrating(current$1, workInProgress$1, renderLanes$1, recoverableError) {
12013			if (recoverableError !== null) queueHydrationError(recoverableError);
12014			reconcileChildFibers(workInProgress$1, current$1.child, null, renderLanes$1);
12015			var primaryChildren = workInProgress$1.pendingProps.children;
12016			var primaryChildFragment = mountSuspensePrimaryChildren(workInProgress$1, primaryChildren);
12017			primaryChildFragment.flags |= Placement;
12018			workInProgress$1.memoizedState = null;
12019			return primaryChildFragment;
12020		}
12021		function mountSuspenseFallbackAfterRetryWithoutHydrating(current$1, workInProgress$1, primaryChildren, fallbackChildren, renderLanes$1) {
12022			var fiberMode = workInProgress$1.mode;
12023			var primaryChildFragment = mountWorkInProgressOffscreenFiber({
12024				mode: "visible",
12025				children: primaryChildren
12026			}, fiberMode);
12027			var fallbackChildFragment = createFiberFromFragment(fallbackChildren, fiberMode, renderLanes$1, null);
12028			fallbackChildFragment.flags |= Placement;
12029			primaryChildFragment.return = workInProgress$1;
12030			fallbackChildFragment.return = workInProgress$1;
12031			primaryChildFragment.sibling = fallbackChildFragment;
12032			workInProgress$1.child = primaryChildFragment;
12033			if ((workInProgress$1.mode & ConcurrentMode) !== NoMode) reconcileChildFibers(workInProgress$1, current$1.child, null, renderLanes$1);
12034			return fallbackChildFragment;
12035		}
12036		function mountDehydratedSuspenseComponent(workInProgress$1, suspenseInstance, renderLanes$1) {
12037			if ((workInProgress$1.mode & ConcurrentMode) === NoMode) {
12038				error("Cannot hydrate Suspense in legacy mode. Switch from ReactDOM.hydrate(element, container) to ReactDOMClient.hydrateRoot(container, <App />).render(element) or remove the Suspense components from the server rendered components.");
12039				workInProgress$1.lanes = laneToLanes(SyncLane);
12040			} else if (isSuspenseInstanceFallback(suspenseInstance)) workInProgress$1.lanes = laneToLanes(DefaultHydrationLane);
12041			else workInProgress$1.lanes = laneToLanes(OffscreenLane);
12042			return null;
12043		}
12044		function updateDehydratedSuspenseComponent(current$1, workInProgress$1, didSuspend, nextProps, suspenseInstance, suspenseState, renderLanes$1) {
12045			if (!didSuspend) {
12046				warnIfHydrating();
12047				if ((workInProgress$1.mode & ConcurrentMode) === NoMode) return retrySuspenseComponentWithoutHydrating(current$1, workInProgress$1, renderLanes$1, null);
12048				if (isSuspenseInstanceFallback(suspenseInstance)) {
12049					var digest, message, stack;
12050					var _getSuspenseInstanceF = getSuspenseInstanceFallbackErrorDetails(suspenseInstance);
12051					digest = _getSuspenseInstanceF.digest;
12052					message = _getSuspenseInstanceF.message;
12053					stack = _getSuspenseInstanceF.stack;
12054					var error$1;
12055					if (message) error$1 = new Error(message);
12056					else error$1 = /* @__PURE__ */ new Error("The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering.");
12057					return retrySuspenseComponentWithoutHydrating(current$1, workInProgress$1, renderLanes$1, createCapturedValue(error$1, digest, stack));
12058				}
12059				var hasContextChanged$1 = includesSomeLane(renderLanes$1, current$1.childLanes);
12060				if (didReceiveUpdate || hasContextChanged$1) {
12061					var root$1 = getWorkInProgressRoot();
12062					if (root$1 !== null) {
12063						var attemptHydrationAtLane = getBumpedLaneForHydration(root$1, renderLanes$1);
12064						if (attemptHydrationAtLane !== NoLane && attemptHydrationAtLane !== suspenseState.retryLane) {
12065							suspenseState.retryLane = attemptHydrationAtLane;
12066							var eventTime = NoTimestamp;
12067							enqueueConcurrentRenderForLane(current$1, attemptHydrationAtLane);
12068							scheduleUpdateOnFiber(root$1, current$1, attemptHydrationAtLane, eventTime);
12069						}
12070					}
12071					renderDidSuspendDelayIfPossible();
12072					return retrySuspenseComponentWithoutHydrating(current$1, workInProgress$1, renderLanes$1, createCapturedValue(/* @__PURE__ */ new Error("This Suspense boundary received an update before it finished hydrating. This caused the boundary to switch to client rendering. The usual way to fix this is to wrap the original update in startTransition.")));
12073				} else if (isSuspenseInstancePending(suspenseInstance)) {
12074					workInProgress$1.flags |= DidCapture;
12075					workInProgress$1.child = current$1.child;
12076					registerSuspenseInstanceRetry(suspenseInstance, retryDehydratedSuspenseBoundary.bind(null, current$1));
12077					return null;
12078				} else {
12079					reenterHydrationStateFromDehydratedSuspenseInstance(workInProgress$1, suspenseInstance, suspenseState.treeContext);
12080					var primaryChildren = nextProps.children;
12081					var primaryChildFragment = mountSuspensePrimaryChildren(workInProgress$1, primaryChildren);
12082					primaryChildFragment.flags |= Hydrating;
12083					return primaryChildFragment;
12084				}
12085			} else if (workInProgress$1.flags & ForceClientRender) {
12086				workInProgress$1.flags &= ~ForceClientRender;
12087				return retrySuspenseComponentWithoutHydrating(current$1, workInProgress$1, renderLanes$1, createCapturedValue(/* @__PURE__ */ new Error("There was an error while hydrating this Suspense boundary. Switched to client rendering.")));
12088			} else if (workInProgress$1.memoizedState !== null) {
12089				workInProgress$1.child = current$1.child;
12090				workInProgress$1.flags |= DidCapture;
12091				return null;
12092			} else {
12093				var nextPrimaryChildren = nextProps.children;
12094				var nextFallbackChildren = nextProps.fallback;
12095				var fallbackChildFragment = mountSuspenseFallbackAfterRetryWithoutHydrating(current$1, workInProgress$1, nextPrimaryChildren, nextFallbackChildren, renderLanes$1);
12096				var _primaryChildFragment4 = workInProgress$1.child;
12097				_primaryChildFragment4.memoizedState = mountSuspenseOffscreenState(renderLanes$1);
12098				workInProgress$1.memoizedState = SUSPENDED_MARKER;
12099				return fallbackChildFragment;
12100			}
12101		}
12102		function scheduleSuspenseWorkOnFiber(fiber, renderLanes$1, propagationRoot) {
12103			fiber.lanes = mergeLanes(fiber.lanes, renderLanes$1);
12104			var alternate = fiber.alternate;
12105			if (alternate !== null) alternate.lanes = mergeLanes(alternate.lanes, renderLanes$1);
12106			scheduleContextWorkOnParentPath(fiber.return, renderLanes$1, propagationRoot);
12107		}
12108		function propagateSuspenseContextChange(workInProgress$1, firstChild, renderLanes$1) {
12109			var node = firstChild;
12110			while (node !== null) {
12111				if (node.tag === SuspenseComponent) {
12112					if (node.memoizedState !== null) scheduleSuspenseWorkOnFiber(node, renderLanes$1, workInProgress$1);
12113				} else if (node.tag === SuspenseListComponent) scheduleSuspenseWorkOnFiber(node, renderLanes$1, workInProgress$1);
12114				else if (node.child !== null) {
12115					node.child.return = node;
12116					node = node.child;
12117					continue;
12118				}
12119				if (node === workInProgress$1) return;
12120				while (node.sibling === null) {
12121					if (node.return === null || node.return === workInProgress$1) return;
12122					node = node.return;
12123				}
12124				node.sibling.return = node.return;
12125				node = node.sibling;
12126			}
12127		}
12128		function findLastContentRow(firstChild) {
12129			var row = firstChild;
12130			var lastContentRow = null;
12131			while (row !== null) {
12132				var currentRow = row.alternate;
12133				if (currentRow !== null && findFirstSuspended(currentRow) === null) lastContentRow = row;
12134				row = row.sibling;
12135			}
12136			return lastContentRow;
12137		}
12138		function validateRevealOrder(revealOrder) {
12139			if (revealOrder !== void 0 && revealOrder !== "forwards" && revealOrder !== "backwards" && revealOrder !== "together" && !didWarnAboutRevealOrder[revealOrder]) {
12140				didWarnAboutRevealOrder[revealOrder] = true;
12141				if (typeof revealOrder === "string") switch (revealOrder.toLowerCase()) {
12142					case "together":
12143					case "forwards":
12144					case "backwards":
12145						error("\"%s\" is not a valid value for revealOrder on <SuspenseList />. Use lowercase \"%s\" instead.", revealOrder, revealOrder.toLowerCase());
12146						break;
12147					case "forward":
12148					case "backward":
12149						error("\"%s\" is not a valid value for revealOrder on <SuspenseList />. React uses the -s suffix in the spelling. Use \"%ss\" instead.", revealOrder, revealOrder.toLowerCase());
12150						break;
12151					default:
12152						error("\"%s\" is not a supported revealOrder on <SuspenseList />. Did you mean \"together\", \"forwards\" or \"backwards\"?", revealOrder);
12153						break;
12154				}
12155				else error("%s is not a supported value for revealOrder on <SuspenseList />. Did you mean \"together\", \"forwards\" or \"backwards\"?", revealOrder);
12156			}
12157		}
12158		function validateTailOptions(tailMode, revealOrder) {
12159			if (tailMode !== void 0 && !didWarnAboutTailOptions[tailMode]) {
12160				if (tailMode !== "collapsed" && tailMode !== "hidden") {
12161					didWarnAboutTailOptions[tailMode] = true;
12162					error("\"%s\" is not a supported value for tail on <SuspenseList />. Did you mean \"collapsed\" or \"hidden\"?", tailMode);
12163				} else if (revealOrder !== "forwards" && revealOrder !== "backwards") {
12164					didWarnAboutTailOptions[tailMode] = true;
12165					error("<SuspenseList tail=\"%s\" /> is only valid if revealOrder is \"forwards\" or \"backwards\". Did you mean to specify revealOrder=\"forwards\"?", tailMode);
12166				}
12167			}
12168		}
12169		function validateSuspenseListNestedChild(childSlot, index$1) {
12170			var isAnArray = isArray(childSlot);
12171			var isIterable = !isAnArray && typeof getIteratorFn(childSlot) === "function";
12172			if (isAnArray || isIterable) {
12173				var type = isAnArray ? "array" : "iterable";
12174				error("A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>", type, index$1, type);
12175				return false;
12176			}
12177			return true;
12178		}
12179		function validateSuspenseListChildren(children, revealOrder) {
12180			if ((revealOrder === "forwards" || revealOrder === "backwards") && children !== void 0 && children !== null && children !== false) if (isArray(children)) {
12181				for (var i = 0; i < children.length; i++) if (!validateSuspenseListNestedChild(children[i], i)) return;
12182			} else {
12183				var iteratorFn = getIteratorFn(children);
12184				if (typeof iteratorFn === "function") {
12185					var childrenIterator = iteratorFn.call(children);
12186					if (childrenIterator) {
12187						var step = childrenIterator.next();
12188						var _i = 0;
12189						for (; !step.done; step = childrenIterator.next()) {
12190							if (!validateSuspenseListNestedChild(step.value, _i)) return;
12191							_i++;
12192						}
12193					}
12194				} else error("A single row was passed to a <SuspenseList revealOrder=\"%s\" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?", revealOrder);
12195			}
12196		}
12197		function initSuspenseListRenderState(workInProgress$1, isBackwards, tail, lastContentRow, tailMode) {
12198			var renderState = workInProgress$1.memoizedState;
12199			if (renderState === null) workInProgress$1.memoizedState = {
12200				isBackwards,
12201				rendering: null,
12202				renderingStartTime: 0,
12203				last: lastContentRow,
12204				tail,
12205				tailMode
12206			};
12207			else {
12208				renderState.isBackwards = isBackwards;
12209				renderState.rendering = null;
12210				renderState.renderingStartTime = 0;
12211				renderState.last = lastContentRow;
12212				renderState.tail = tail;
12213				renderState.tailMode = tailMode;
12214			}
12215		}
12216		function updateSuspenseListComponent(current$1, workInProgress$1, renderLanes$1) {
12217			var nextProps = workInProgress$1.pendingProps;
12218			var revealOrder = nextProps.revealOrder;
12219			var tailMode = nextProps.tail;
12220			var newChildren = nextProps.children;
12221			validateRevealOrder(revealOrder);
12222			validateTailOptions(tailMode, revealOrder);
12223			validateSuspenseListChildren(newChildren, revealOrder);
12224			reconcileChildren(current$1, workInProgress$1, newChildren, renderLanes$1);
12225			var suspenseContext = suspenseStackCursor.current;
12226			if (hasSuspenseContext(suspenseContext, ForceSuspenseFallback)) {
12227				suspenseContext = setShallowSuspenseContext(suspenseContext, ForceSuspenseFallback);
12228				workInProgress$1.flags |= DidCapture;
12229			} else {
12230				if (current$1 !== null && (current$1.flags & DidCapture) !== NoFlags) propagateSuspenseContextChange(workInProgress$1, workInProgress$1.child, renderLanes$1);
12231				suspenseContext = setDefaultShallowSuspenseContext(suspenseContext);
12232			}
12233			pushSuspenseContext(workInProgress$1, suspenseContext);
12234			if ((workInProgress$1.mode & ConcurrentMode) === NoMode) workInProgress$1.memoizedState = null;
12235			else switch (revealOrder) {
12236				case "forwards":
12237					var lastContentRow = findLastContentRow(workInProgress$1.child);
12238					var tail;
12239					if (lastContentRow === null) {
12240						tail = workInProgress$1.child;
12241						workInProgress$1.child = null;
12242					} else {
12243						tail = lastContentRow.sibling;
12244						lastContentRow.sibling = null;
12245					}
12246					initSuspenseListRenderState(workInProgress$1, false, tail, lastContentRow, tailMode);
12247					break;
12248				case "backwards":
12249					var _tail = null;
12250					var row = workInProgress$1.child;
12251					workInProgress$1.child = null;
12252					while (row !== null) {
12253						var currentRow = row.alternate;
12254						if (currentRow !== null && findFirstSuspended(currentRow) === null) {
12255							workInProgress$1.child = row;
12256							break;
12257						}
12258						var nextRow = row.sibling;
12259						row.sibling = _tail;
12260						_tail = row;
12261						row = nextRow;
12262					}
12263					initSuspenseListRenderState(workInProgress$1, true, _tail, null, tailMode);
12264					break;
12265				case "together":
12266					initSuspenseListRenderState(workInProgress$1, false, null, null, void 0);
12267					break;
12268				default: workInProgress$1.memoizedState = null;
12269			}
12270			return workInProgress$1.child;
12271		}
12272		function updatePortalComponent(current$1, workInProgress$1, renderLanes$1) {
12273			pushHostContainer(workInProgress$1, workInProgress$1.stateNode.containerInfo);
12274			var nextChildren = workInProgress$1.pendingProps;
12275			if (current$1 === null) workInProgress$1.child = reconcileChildFibers(workInProgress$1, null, nextChildren, renderLanes$1);
12276			else reconcileChildren(current$1, workInProgress$1, nextChildren, renderLanes$1);
12277			return workInProgress$1.child;
12278		}
12279		var hasWarnedAboutUsingNoValuePropOnContextProvider = false;
12280		function updateContextProvider(current$1, workInProgress$1, renderLanes$1) {
12281			var context = workInProgress$1.type._context;
12282			var newProps = workInProgress$1.pendingProps;
12283			var oldProps = workInProgress$1.memoizedProps;
12284			var newValue = newProps.value;
12285			if (!("value" in newProps)) {
12286				if (!hasWarnedAboutUsingNoValuePropOnContextProvider) {
12287					hasWarnedAboutUsingNoValuePropOnContextProvider = true;
12288					error("The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?");
12289				}
12290			}
12291			var providerPropTypes = workInProgress$1.type.propTypes;
12292			if (providerPropTypes) checkPropTypes(providerPropTypes, newProps, "prop", "Context.Provider");
12293			pushProvider(workInProgress$1, context, newValue);
12294			if (oldProps !== null) {
12295				var oldValue = oldProps.value;
12296				if (objectIs(oldValue, newValue)) {
12297					if (oldProps.children === newProps.children && !hasContextChanged()) return bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
12298				} else propagateContextChange(workInProgress$1, context, renderLanes$1);
12299			}
12300			var newChildren = newProps.children;
12301			reconcileChildren(current$1, workInProgress$1, newChildren, renderLanes$1);
12302			return workInProgress$1.child;
12303		}
12304		var hasWarnedAboutUsingContextAsConsumer = false;
12305		function updateContextConsumer(current$1, workInProgress$1, renderLanes$1) {
12306			var context = workInProgress$1.type;
12307			if (context._context === void 0) {
12308				if (context !== context.Consumer) {
12309					if (!hasWarnedAboutUsingContextAsConsumer) {
12310						hasWarnedAboutUsingContextAsConsumer = true;
12311						error("Rendering <Context> directly is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?");
12312					}
12313				}
12314			} else context = context._context;
12315			var render$1 = workInProgress$1.pendingProps.children;
12316			if (typeof render$1 !== "function") error("A context consumer was rendered with multiple children, or a child that isn't a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it.");
12317			prepareToReadContext(workInProgress$1, renderLanes$1);
12318			var newValue = readContext(context);
12319			markComponentRenderStarted(workInProgress$1);
12320			var newChildren;
12321			ReactCurrentOwner$1.current = workInProgress$1;
12322			setIsRendering(true);
12323			newChildren = render$1(newValue);
12324			setIsRendering(false);
12325			markComponentRenderStopped();
12326			workInProgress$1.flags |= PerformedWork;
12327			reconcileChildren(current$1, workInProgress$1, newChildren, renderLanes$1);
12328			return workInProgress$1.child;
12329		}
12330		function markWorkInProgressReceivedUpdate() {
12331			didReceiveUpdate = true;
12332		}
12333		function resetSuspendedCurrentOnMountInLegacyMode(current$1, workInProgress$1) {
12334			if ((workInProgress$1.mode & ConcurrentMode) === NoMode) {
12335				if (current$1 !== null) {
12336					current$1.alternate = null;
12337					workInProgress$1.alternate = null;
12338					workInProgress$1.flags |= Placement;
12339				}
12340			}
12341		}
12342		function bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1) {
12343			if (current$1 !== null) workInProgress$1.dependencies = current$1.dependencies;
12344			stopProfilerTimerIfRunning();
12345			markSkippedUpdateLanes(workInProgress$1.lanes);
12346			if (!includesSomeLane(renderLanes$1, workInProgress$1.childLanes)) return null;
12347			cloneChildFibers(current$1, workInProgress$1);
12348			return workInProgress$1.child;
12349		}
12350		function remountFiber(current$1, oldWorkInProgress, newWorkInProgress) {
12351			var returnFiber = oldWorkInProgress.return;
12352			if (returnFiber === null) throw new Error("Cannot swap the root fiber.");
12353			current$1.alternate = null;
12354			oldWorkInProgress.alternate = null;
12355			newWorkInProgress.index = oldWorkInProgress.index;
12356			newWorkInProgress.sibling = oldWorkInProgress.sibling;
12357			newWorkInProgress.return = oldWorkInProgress.return;
12358			newWorkInProgress.ref = oldWorkInProgress.ref;
12359			if (oldWorkInProgress === returnFiber.child) returnFiber.child = newWorkInProgress;
12360			else {
12361				var prevSibling = returnFiber.child;
12362				if (prevSibling === null) throw new Error("Expected parent to have a child.");
12363				while (prevSibling.sibling !== oldWorkInProgress) {
12364					prevSibling = prevSibling.sibling;
12365					if (prevSibling === null) throw new Error("Expected to find the previous sibling.");
12366				}
12367				prevSibling.sibling = newWorkInProgress;
12368			}
12369			var deletions = returnFiber.deletions;
12370			if (deletions === null) {
12371				returnFiber.deletions = [current$1];
12372				returnFiber.flags |= ChildDeletion;
12373			} else deletions.push(current$1);
12374			newWorkInProgress.flags |= Placement;
12375			return newWorkInProgress;
12376		}
12377		function checkScheduledUpdateOrContext(current$1, renderLanes$1) {
12378			var updateLanes = current$1.lanes;
12379			if (includesSomeLane(updateLanes, renderLanes$1)) return true;
12380			return false;
12381		}
12382		function attemptEarlyBailoutIfNoScheduledUpdate(current$1, workInProgress$1, renderLanes$1) {
12383			switch (workInProgress$1.tag) {
12384				case HostRoot:
12385					pushHostRootContext(workInProgress$1);
12386					workInProgress$1.stateNode;
12387					resetHydrationState();
12388					break;
12389				case HostComponent:
12390					pushHostContext(workInProgress$1);
12391					break;
12392				case ClassComponent:
12393					var Component = workInProgress$1.type;
12394					if (isContextProvider(Component)) pushContextProvider(workInProgress$1);
12395					break;
12396				case HostPortal:
12397					pushHostContainer(workInProgress$1, workInProgress$1.stateNode.containerInfo);
12398					break;
12399				case ContextProvider:
12400					var newValue = workInProgress$1.memoizedProps.value;
12401					var context = workInProgress$1.type._context;
12402					pushProvider(workInProgress$1, context, newValue);
12403					break;
12404				case Profiler:
12405					if (includesSomeLane(renderLanes$1, workInProgress$1.childLanes)) workInProgress$1.flags |= Update;
12406					var stateNode = workInProgress$1.stateNode;
12407					stateNode.effectDuration = 0;
12408					stateNode.passiveEffectDuration = 0;
12409					break;
12410				case SuspenseComponent:
12411					var state = workInProgress$1.memoizedState;
12412					if (state !== null) {
12413						if (state.dehydrated !== null) {
12414							pushSuspenseContext(workInProgress$1, setDefaultShallowSuspenseContext(suspenseStackCursor.current));
12415							workInProgress$1.flags |= DidCapture;
12416							return null;
12417						}
12418						var primaryChildLanes = workInProgress$1.child.childLanes;
12419						if (includesSomeLane(renderLanes$1, primaryChildLanes)) return updateSuspenseComponent(current$1, workInProgress$1, renderLanes$1);
12420						else {
12421							pushSuspenseContext(workInProgress$1, setDefaultShallowSuspenseContext(suspenseStackCursor.current));
12422							var child = bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
12423							if (child !== null) return child.sibling;
12424							else return null;
12425						}
12426					} else pushSuspenseContext(workInProgress$1, setDefaultShallowSuspenseContext(suspenseStackCursor.current));
12427					break;
12428				case SuspenseListComponent:
12429					var didSuspendBefore = (current$1.flags & DidCapture) !== NoFlags;
12430					var _hasChildWork = includesSomeLane(renderLanes$1, workInProgress$1.childLanes);
12431					if (didSuspendBefore) {
12432						if (_hasChildWork) return updateSuspenseListComponent(current$1, workInProgress$1, renderLanes$1);
12433						workInProgress$1.flags |= DidCapture;
12434					}
12435					var renderState = workInProgress$1.memoizedState;
12436					if (renderState !== null) {
12437						renderState.rendering = null;
12438						renderState.tail = null;
12439						renderState.lastEffect = null;
12440					}
12441					pushSuspenseContext(workInProgress$1, suspenseStackCursor.current);
12442					if (_hasChildWork) break;
12443					else return null;
12444				case OffscreenComponent:
12445				case LegacyHiddenComponent:
12446					workInProgress$1.lanes = NoLanes;
12447					return updateOffscreenComponent(current$1, workInProgress$1, renderLanes$1);
12448			}
12449			return bailoutOnAlreadyFinishedWork(current$1, workInProgress$1, renderLanes$1);
12450		}
12451		function beginWork(current$1, workInProgress$1, renderLanes$1) {
12452			if (workInProgress$1._debugNeedsRemount && current$1 !== null) return remountFiber(current$1, workInProgress$1, createFiberFromTypeAndProps(workInProgress$1.type, workInProgress$1.key, workInProgress$1.pendingProps, workInProgress$1._debugOwner || null, workInProgress$1.mode, workInProgress$1.lanes));
12453			if (current$1 !== null) if (current$1.memoizedProps !== workInProgress$1.pendingProps || hasContextChanged() || workInProgress$1.type !== current$1.type) didReceiveUpdate = true;
12454			else {
12455				if (!checkScheduledUpdateOrContext(current$1, renderLanes$1) && (workInProgress$1.flags & DidCapture) === NoFlags) {
12456					didReceiveUpdate = false;
12457					return attemptEarlyBailoutIfNoScheduledUpdate(current$1, workInProgress$1, renderLanes$1);
12458				}
12459				if ((current$1.flags & ForceUpdateForLegacySuspense) !== NoFlags) didReceiveUpdate = true;
12460				else didReceiveUpdate = false;
12461			}
12462			else {
12463				didReceiveUpdate = false;
12464				if (getIsHydrating() && isForkedChild(workInProgress$1)) {
12465					var slotIndex = workInProgress$1.index;
12466					pushTreeId(workInProgress$1, getForksAtLevel(), slotIndex);
12467				}
12468			}
12469			workInProgress$1.lanes = NoLanes;
12470			switch (workInProgress$1.tag) {
12471				case IndeterminateComponent: return mountIndeterminateComponent(current$1, workInProgress$1, workInProgress$1.type, renderLanes$1);
12472				case LazyComponent:
12473					var elementType = workInProgress$1.elementType;
12474					return mountLazyComponent(current$1, workInProgress$1, elementType, renderLanes$1);
12475				case FunctionComponent:
12476					var Component = workInProgress$1.type;
12477					var unresolvedProps = workInProgress$1.pendingProps;
12478					return updateFunctionComponent(current$1, workInProgress$1, Component, workInProgress$1.elementType === Component ? unresolvedProps : resolveDefaultProps(Component, unresolvedProps), renderLanes$1);
12479				case ClassComponent:
12480					var _Component = workInProgress$1.type;
12481					var _unresolvedProps = workInProgress$1.pendingProps;
12482					return updateClassComponent(current$1, workInProgress$1, _Component, workInProgress$1.elementType === _Component ? _unresolvedProps : resolveDefaultProps(_Component, _unresolvedProps), renderLanes$1);
12483				case HostRoot: return updateHostRoot(current$1, workInProgress$1, renderLanes$1);
12484				case HostComponent: return updateHostComponent(current$1, workInProgress$1, renderLanes$1);
12485				case HostText: return updateHostText(current$1, workInProgress$1);
12486				case SuspenseComponent: return updateSuspenseComponent(current$1, workInProgress$1, renderLanes$1);
12487				case HostPortal: return updatePortalComponent(current$1, workInProgress$1, renderLanes$1);
12488				case ForwardRef:
12489					var type = workInProgress$1.type;
12490					var _unresolvedProps2 = workInProgress$1.pendingProps;
12491					return updateForwardRef(current$1, workInProgress$1, type, workInProgress$1.elementType === type ? _unresolvedProps2 : resolveDefaultProps(type, _unresolvedProps2), renderLanes$1);
12492				case Fragment: return updateFragment(current$1, workInProgress$1, renderLanes$1);
12493				case Mode: return updateMode(current$1, workInProgress$1, renderLanes$1);
12494				case Profiler: return updateProfiler(current$1, workInProgress$1, renderLanes$1);
12495				case ContextProvider: return updateContextProvider(current$1, workInProgress$1, renderLanes$1);
12496				case ContextConsumer: return updateContextConsumer(current$1, workInProgress$1, renderLanes$1);
12497				case MemoComponent:
12498					var _type2 = workInProgress$1.type;
12499					var _unresolvedProps3 = workInProgress$1.pendingProps;
12500					var _resolvedProps3 = resolveDefaultProps(_type2, _unresolvedProps3);
12501					if (workInProgress$1.type !== workInProgress$1.elementType) {
12502						var outerPropTypes = _type2.propTypes;
12503						if (outerPropTypes) checkPropTypes(outerPropTypes, _resolvedProps3, "prop", getComponentNameFromType(_type2));
12504					}
12505					_resolvedProps3 = resolveDefaultProps(_type2.type, _resolvedProps3);
12506					return updateMemoComponent(current$1, workInProgress$1, _type2, _resolvedProps3, renderLanes$1);
12507				case SimpleMemoComponent: return updateSimpleMemoComponent(current$1, workInProgress$1, workInProgress$1.type, workInProgress$1.pendingProps, renderLanes$1);
12508				case IncompleteClassComponent:
12509					var _Component2 = workInProgress$1.type;
12510					var _unresolvedProps4 = workInProgress$1.pendingProps;
12511					return mountIncompleteClassComponent(current$1, workInProgress$1, _Component2, workInProgress$1.elementType === _Component2 ? _unresolvedProps4 : resolveDefaultProps(_Component2, _unresolvedProps4), renderLanes$1);
12512				case SuspenseListComponent: return updateSuspenseListComponent(current$1, workInProgress$1, renderLanes$1);
12513				case ScopeComponent: break;
12514				case OffscreenComponent: return updateOffscreenComponent(current$1, workInProgress$1, renderLanes$1);
12515			}
12516			throw new Error("Unknown unit of work tag (" + workInProgress$1.tag + "). This error is likely caused by a bug in React. Please file an issue.");
12517		}
12518		function markUpdate(workInProgress$1) {
12519			workInProgress$1.flags |= Update;
12520		}
12521		function markRef$1(workInProgress$1) {
12522			workInProgress$1.flags |= Ref;
12523			workInProgress$1.flags |= RefStatic;
12524		}
12525		var appendAllChildren;
12526		var updateHostContainer;
12527		var updateHostComponent$1;
12528		var updateHostText$1;
12529		appendAllChildren = function(parent, workInProgress$1, needsVisibilityToggle, isHidden) {
12530			var node = workInProgress$1.child;
12531			while (node !== null) {
12532				if (node.tag === HostComponent || node.tag === HostText) appendInitialChild(parent, node.stateNode);
12533				else if (node.tag === HostPortal);
12534				else if (node.child !== null) {
12535					node.child.return = node;
12536					node = node.child;
12537					continue;
12538				}
12539				if (node === workInProgress$1) return;
12540				while (node.sibling === null) {
12541					if (node.return === null || node.return === workInProgress$1) return;
12542					node = node.return;
12543				}
12544				node.sibling.return = node.return;
12545				node = node.sibling;
12546			}
12547		};
12548		updateHostContainer = function(current$1, workInProgress$1) {};
12549		updateHostComponent$1 = function(current$1, workInProgress$1, type, newProps, rootContainerInstance) {
12550			var oldProps = current$1.memoizedProps;
12551			if (oldProps === newProps) return;
12552			var instance = workInProgress$1.stateNode;
12553			var updatePayload = prepareUpdate(instance, type, oldProps, newProps, rootContainerInstance, getHostContext());
12554			workInProgress$1.updateQueue = updatePayload;
12555			if (updatePayload) markUpdate(workInProgress$1);
12556		};
12557		updateHostText$1 = function(current$1, workInProgress$1, oldText, newText) {
12558			if (oldText !== newText) markUpdate(workInProgress$1);
12559		};
12560		function cutOffTailIfNeeded(renderState, hasRenderedATailFallback) {
12561			if (getIsHydrating()) return;
12562			switch (renderState.tailMode) {
12563				case "hidden":
12564					var tailNode = renderState.tail;
12565					var lastTailNode = null;
12566					while (tailNode !== null) {
12567						if (tailNode.alternate !== null) lastTailNode = tailNode;
12568						tailNode = tailNode.sibling;
12569					}
12570					if (lastTailNode === null) renderState.tail = null;
12571					else lastTailNode.sibling = null;
12572					break;
12573				case "collapsed":
12574					var _tailNode = renderState.tail;
12575					var _lastTailNode = null;
12576					while (_tailNode !== null) {
12577						if (_tailNode.alternate !== null) _lastTailNode = _tailNode;
12578						_tailNode = _tailNode.sibling;
12579					}
12580					if (_lastTailNode === null) if (!hasRenderedATailFallback && renderState.tail !== null) renderState.tail.sibling = null;
12581					else renderState.tail = null;
12582					else _lastTailNode.sibling = null;
12583					break;
12584			}
12585		}
12586		function bubbleProperties(completedWork) {
12587			var didBailout = completedWork.alternate !== null && completedWork.alternate.child === completedWork.child;
12588			var newChildLanes = NoLanes;
12589			var subtreeFlags = NoFlags;
12590			if (!didBailout) {
12591				if ((completedWork.mode & ProfileMode) !== NoMode) {
12592					var actualDuration = completedWork.actualDuration;
12593					var treeBaseDuration = completedWork.selfBaseDuration;
12594					var child = completedWork.child;
12595					while (child !== null) {
12596						newChildLanes = mergeLanes(newChildLanes, mergeLanes(child.lanes, child.childLanes));
12597						subtreeFlags |= child.subtreeFlags;
12598						subtreeFlags |= child.flags;
12599						actualDuration += child.actualDuration;
12600						treeBaseDuration += child.treeBaseDuration;
12601						child = child.sibling;
12602					}
12603					completedWork.actualDuration = actualDuration;
12604					completedWork.treeBaseDuration = treeBaseDuration;
12605				} else {
12606					var _child = completedWork.child;
12607					while (_child !== null) {
12608						newChildLanes = mergeLanes(newChildLanes, mergeLanes(_child.lanes, _child.childLanes));
12609						subtreeFlags |= _child.subtreeFlags;
12610						subtreeFlags |= _child.flags;
12611						_child.return = completedWork;
12612						_child = _child.sibling;
12613					}
12614				}
12615				completedWork.subtreeFlags |= subtreeFlags;
12616			} else {
12617				if ((completedWork.mode & ProfileMode) !== NoMode) {
12618					var _treeBaseDuration = completedWork.selfBaseDuration;
12619					var _child2 = completedWork.child;
12620					while (_child2 !== null) {
12621						newChildLanes = mergeLanes(newChildLanes, mergeLanes(_child2.lanes, _child2.childLanes));
12622						subtreeFlags |= _child2.subtreeFlags & StaticMask;
12623						subtreeFlags |= _child2.flags & StaticMask;
12624						_treeBaseDuration += _child2.treeBaseDuration;
12625						_child2 = _child2.sibling;
12626					}
12627					completedWork.treeBaseDuration = _treeBaseDuration;
12628				} else {
12629					var _child3 = completedWork.child;
12630					while (_child3 !== null) {
12631						newChildLanes = mergeLanes(newChildLanes, mergeLanes(_child3.lanes, _child3.childLanes));
12632						subtreeFlags |= _child3.subtreeFlags & StaticMask;
12633						subtreeFlags |= _child3.flags & StaticMask;
12634						_child3.return = completedWork;
12635						_child3 = _child3.sibling;
12636					}
12637				}
12638				completedWork.subtreeFlags |= subtreeFlags;
12639			}
12640			completedWork.childLanes = newChildLanes;
12641			return didBailout;
12642		}
12643		function completeDehydratedSuspenseBoundary(current$1, workInProgress$1, nextState) {
12644			if (hasUnhydratedTailNodes() && (workInProgress$1.mode & ConcurrentMode) !== NoMode && (workInProgress$1.flags & DidCapture) === NoFlags) {
12645				warnIfUnhydratedTailNodes(workInProgress$1);
12646				resetHydrationState();
12647				workInProgress$1.flags |= ForceClientRender | Incomplete | ShouldCapture;
12648				return false;
12649			}
12650			var wasHydrated = popHydrationState(workInProgress$1);
12651			if (nextState !== null && nextState.dehydrated !== null) if (current$1 === null) {
12652				if (!wasHydrated) throw new Error("A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.");
12653				prepareToHydrateHostSuspenseInstance(workInProgress$1);
12654				bubbleProperties(workInProgress$1);
12655				if ((workInProgress$1.mode & ProfileMode) !== NoMode) {
12656					if (nextState !== null) {
12657						var primaryChildFragment = workInProgress$1.child;
12658						if (primaryChildFragment !== null) workInProgress$1.treeBaseDuration -= primaryChildFragment.treeBaseDuration;
12659					}
12660				}
12661				return false;
12662			} else {
12663				resetHydrationState();
12664				if ((workInProgress$1.flags & DidCapture) === NoFlags) workInProgress$1.memoizedState = null;
12665				workInProgress$1.flags |= Update;
12666				bubbleProperties(workInProgress$1);
12667				if ((workInProgress$1.mode & ProfileMode) !== NoMode) {
12668					if (nextState !== null) {
12669						var _primaryChildFragment = workInProgress$1.child;
12670						if (_primaryChildFragment !== null) workInProgress$1.treeBaseDuration -= _primaryChildFragment.treeBaseDuration;
12671					}
12672				}
12673				return false;
12674			}
12675			else {
12676				upgradeHydrationErrorsToRecoverable();
12677				return true;
12678			}
12679		}
12680		function completeWork(current$1, workInProgress$1, renderLanes$1) {
12681			var newProps = workInProgress$1.pendingProps;
12682			popTreeContext(workInProgress$1);
12683			switch (workInProgress$1.tag) {
12684				case IndeterminateComponent:
12685				case LazyComponent:
12686				case SimpleMemoComponent:
12687				case FunctionComponent:
12688				case ForwardRef:
12689				case Fragment:
12690				case Mode:
12691				case Profiler:
12692				case ContextConsumer:
12693				case MemoComponent:
12694					bubbleProperties(workInProgress$1);
12695					return null;
12696				case ClassComponent:
12697					var Component = workInProgress$1.type;
12698					if (isContextProvider(Component)) popContext(workInProgress$1);
12699					bubbleProperties(workInProgress$1);
12700					return null;
12701				case HostRoot:
12702					var fiberRoot = workInProgress$1.stateNode;
12703					popHostContainer(workInProgress$1);
12704					popTopLevelContextObject(workInProgress$1);
12705					resetWorkInProgressVersions();
12706					if (fiberRoot.pendingContext) {
12707						fiberRoot.context = fiberRoot.pendingContext;
12708						fiberRoot.pendingContext = null;
12709					}
12710					if (current$1 === null || current$1.child === null) {
12711						if (popHydrationState(workInProgress$1)) markUpdate(workInProgress$1);
12712						else if (current$1 !== null) {
12713							if (!current$1.memoizedState.isDehydrated || (workInProgress$1.flags & ForceClientRender) !== NoFlags) {
12714								workInProgress$1.flags |= Snapshot;
12715								upgradeHydrationErrorsToRecoverable();
12716							}
12717						}
12718					}
12719					updateHostContainer(current$1, workInProgress$1);
12720					bubbleProperties(workInProgress$1);
12721					return null;
12722				case HostComponent:
12723					popHostContext(workInProgress$1);
12724					var rootContainerInstance = getRootHostContainer();
12725					var type = workInProgress$1.type;
12726					if (current$1 !== null && workInProgress$1.stateNode != null) {
12727						updateHostComponent$1(current$1, workInProgress$1, type, newProps, rootContainerInstance);
12728						if (current$1.ref !== workInProgress$1.ref) markRef$1(workInProgress$1);
12729					} else {
12730						if (!newProps) {
12731							if (workInProgress$1.stateNode === null) throw new Error("We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.");
12732							bubbleProperties(workInProgress$1);
12733							return null;
12734						}
12735						var currentHostContext = getHostContext();
12736						if (popHydrationState(workInProgress$1)) {
12737							if (prepareToHydrateHostInstance(workInProgress$1, rootContainerInstance, currentHostContext)) markUpdate(workInProgress$1);
12738						} else {
12739							var instance = createInstance(type, newProps, rootContainerInstance, currentHostContext, workInProgress$1);
12740							appendAllChildren(instance, workInProgress$1, false, false);
12741							workInProgress$1.stateNode = instance;
12742							if (finalizeInitialChildren(instance, type, newProps, rootContainerInstance)) markUpdate(workInProgress$1);
12743						}
12744						if (workInProgress$1.ref !== null) markRef$1(workInProgress$1);
12745					}
12746					bubbleProperties(workInProgress$1);
12747					return null;
12748				case HostText:
12749					var newText = newProps;
12750					if (current$1 && workInProgress$1.stateNode != null) {
12751						var oldText = current$1.memoizedProps;
12752						updateHostText$1(current$1, workInProgress$1, oldText, newText);
12753					} else {
12754						if (typeof newText !== "string") {
12755							if (workInProgress$1.stateNode === null) throw new Error("We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.");
12756						}
12757						var _rootContainerInstance = getRootHostContainer();
12758						var _currentHostContext = getHostContext();
12759						if (popHydrationState(workInProgress$1)) {
12760							if (prepareToHydrateHostTextInstance(workInProgress$1)) markUpdate(workInProgress$1);
12761						} else workInProgress$1.stateNode = createTextInstance(newText, _rootContainerInstance, _currentHostContext, workInProgress$1);
12762					}
12763					bubbleProperties(workInProgress$1);
12764					return null;
12765				case SuspenseComponent:
12766					popSuspenseContext(workInProgress$1);
12767					var nextState = workInProgress$1.memoizedState;
12768					if (current$1 === null || current$1.memoizedState !== null && current$1.memoizedState.dehydrated !== null) {
12769						if (!completeDehydratedSuspenseBoundary(current$1, workInProgress$1, nextState)) if (workInProgress$1.flags & ShouldCapture) return workInProgress$1;
12770						else return null;
12771					}
12772					if ((workInProgress$1.flags & DidCapture) !== NoFlags) {
12773						workInProgress$1.lanes = renderLanes$1;
12774						if ((workInProgress$1.mode & ProfileMode) !== NoMode) transferActualDuration(workInProgress$1);
12775						return workInProgress$1;
12776					}
12777					var nextDidTimeout = nextState !== null;
12778					if (nextDidTimeout !== (current$1 !== null && current$1.memoizedState !== null)) {
12779						if (nextDidTimeout) {
12780							var _offscreenFiber2 = workInProgress$1.child;
12781							_offscreenFiber2.flags |= Visibility;
12782							if ((workInProgress$1.mode & ConcurrentMode) !== NoMode) if (current$1 === null && (workInProgress$1.memoizedProps.unstable_avoidThisFallback !== true || !enableSuspenseAvoidThisFallback) || hasSuspenseContext(suspenseStackCursor.current, InvisibleParentSuspenseContext)) renderDidSuspend();
12783							else renderDidSuspendDelayIfPossible();
12784						}
12785					}
12786					if (workInProgress$1.updateQueue !== null) workInProgress$1.flags |= Update;
12787					bubbleProperties(workInProgress$1);
12788					if ((workInProgress$1.mode & ProfileMode) !== NoMode) {
12789						if (nextDidTimeout) {
12790							var primaryChildFragment = workInProgress$1.child;
12791							if (primaryChildFragment !== null) workInProgress$1.treeBaseDuration -= primaryChildFragment.treeBaseDuration;
12792						}
12793					}
12794					return null;
12795				case HostPortal:
12796					popHostContainer(workInProgress$1);
12797					updateHostContainer(current$1, workInProgress$1);
12798					if (current$1 === null) preparePortalMount(workInProgress$1.stateNode.containerInfo);
12799					bubbleProperties(workInProgress$1);
12800					return null;
12801				case ContextProvider:
12802					var context = workInProgress$1.type._context;
12803					popProvider(context, workInProgress$1);
12804					bubbleProperties(workInProgress$1);
12805					return null;
12806				case IncompleteClassComponent:
12807					var _Component = workInProgress$1.type;
12808					if (isContextProvider(_Component)) popContext(workInProgress$1);
12809					bubbleProperties(workInProgress$1);
12810					return null;
12811				case SuspenseListComponent:
12812					popSuspenseContext(workInProgress$1);
12813					var renderState = workInProgress$1.memoizedState;
12814					if (renderState === null) {
12815						bubbleProperties(workInProgress$1);
12816						return null;
12817					}
12818					var didSuspendAlready = (workInProgress$1.flags & DidCapture) !== NoFlags;
12819					var renderedTail = renderState.rendering;
12820					if (renderedTail === null) if (!didSuspendAlready) {
12821						if (!(renderHasNotSuspendedYet() && (current$1 === null || (current$1.flags & DidCapture) === NoFlags))) {
12822							var row = workInProgress$1.child;
12823							while (row !== null) {
12824								var suspended = findFirstSuspended(row);
12825								if (suspended !== null) {
12826									didSuspendAlready = true;
12827									workInProgress$1.flags |= DidCapture;
12828									cutOffTailIfNeeded(renderState, false);
12829									var newThenables = suspended.updateQueue;
12830									if (newThenables !== null) {
12831										workInProgress$1.updateQueue = newThenables;
12832										workInProgress$1.flags |= Update;
12833									}
12834									workInProgress$1.subtreeFlags = NoFlags;
12835									resetChildFibers(workInProgress$1, renderLanes$1);
12836									pushSuspenseContext(workInProgress$1, setShallowSuspenseContext(suspenseStackCursor.current, ForceSuspenseFallback));
12837									return workInProgress$1.child;
12838								}
12839								row = row.sibling;
12840							}
12841						}
12842						if (renderState.tail !== null && now() > getRenderTargetTime()) {
12843							workInProgress$1.flags |= DidCapture;
12844							didSuspendAlready = true;
12845							cutOffTailIfNeeded(renderState, false);
12846							workInProgress$1.lanes = SomeRetryLane;
12847						}
12848					} else cutOffTailIfNeeded(renderState, false);
12849					else {
12850						if (!didSuspendAlready) {
12851							var _suspended = findFirstSuspended(renderedTail);
12852							if (_suspended !== null) {
12853								workInProgress$1.flags |= DidCapture;
12854								didSuspendAlready = true;
12855								var _newThenables = _suspended.updateQueue;
12856								if (_newThenables !== null) {
12857									workInProgress$1.updateQueue = _newThenables;
12858									workInProgress$1.flags |= Update;
12859								}
12860								cutOffTailIfNeeded(renderState, true);
12861								if (renderState.tail === null && renderState.tailMode === "hidden" && !renderedTail.alternate && !getIsHydrating()) {
12862									bubbleProperties(workInProgress$1);
12863									return null;
12864								}
12865							} else if (now() * 2 - renderState.renderingStartTime > getRenderTargetTime() && renderLanes$1 !== OffscreenLane) {
12866								workInProgress$1.flags |= DidCapture;
12867								didSuspendAlready = true;
12868								cutOffTailIfNeeded(renderState, false);
12869								workInProgress$1.lanes = SomeRetryLane;
12870							}
12871						}
12872						if (renderState.isBackwards) {
12873							renderedTail.sibling = workInProgress$1.child;
12874							workInProgress$1.child = renderedTail;
12875						} else {
12876							var previousSibling = renderState.last;
12877							if (previousSibling !== null) previousSibling.sibling = renderedTail;
12878							else workInProgress$1.child = renderedTail;
12879							renderState.last = renderedTail;
12880						}
12881					}
12882					if (renderState.tail !== null) {
12883						var next = renderState.tail;
12884						renderState.rendering = next;
12885						renderState.tail = next.sibling;
12886						renderState.renderingStartTime = now();
12887						next.sibling = null;
12888						var suspenseContext = suspenseStackCursor.current;
12889						if (didSuspendAlready) suspenseContext = setShallowSuspenseContext(suspenseContext, ForceSuspenseFallback);
12890						else suspenseContext = setDefaultShallowSuspenseContext(suspenseContext);
12891						pushSuspenseContext(workInProgress$1, suspenseContext);
12892						return next;
12893					}
12894					bubbleProperties(workInProgress$1);
12895					return null;
12896				case ScopeComponent: break;
12897				case OffscreenComponent:
12898				case LegacyHiddenComponent:
12899					popRenderLanes(workInProgress$1);
12900					var nextIsHidden = workInProgress$1.memoizedState !== null;
12901					if (current$1 !== null) {
12902						if (current$1.memoizedState !== null !== nextIsHidden && !enableLegacyHidden
12902) workInProgress$1.flags |= Visibility;
12903					}
12904					if (!nextIsHidden || (workInProgress$1.mode & ConcurrentMode) === NoMode) bubbleProperties(workInProgress$1);
12905					else if (includesSomeLane(subtreeRenderLanes, OffscreenLane)) {
12906						bubbleProperties(workInProgress$1);
12907						if (workInProgress$1.subtreeFlags & (Placement | Update)) workInProgress$1.flags |= Visibility;
12908					}
12909					return null;
12910				case CacheComponent: return null;
12911				case TracingMarkerComponent: return null;
12912			}
12913			throw new Error("Unknown unit of work tag (" + workInProgress$1.tag + "). This error is likely caused by a bug in React. Please file an issue.");
12914		}
12915		function unwindWork(current$1, workInProgress$1, renderLanes$1) {
12916			popTreeContext(workInProgress$1);
12917			switch (workInProgress$1.tag) {
12918				case ClassComponent:
12919					var Component = workInProgress$1.type;
12920					if (isContextProvider(Component)) popContext(workInProgress$1);
12921					var flags = workInProgress$1.flags;
12922					if (flags & ShouldCapture) {
12923						workInProgress$1.flags = flags & ~ShouldCapture | DidCapture;
12924						if ((workInProgress$1.mode & ProfileMode) !== NoMode) transferActualDuration(workInProgress$1);
12925						return workInProgress$1;
12926					}
12927					return null;
12928				case HostRoot:
12929					workInProgress$1.stateNode;
12930					popHostContainer(workInProgress$1);
12931					popTopLevelContextObject(workInProgress$1);
12932					resetWorkInProgressVersions();
12933					var _flags = workInProgress$1.flags;
12934					if ((_flags & ShouldCapture) !== NoFlags && (_flags & DidCapture) === NoFlags) {
12935						workInProgress$1.flags = _flags & ~ShouldCapture | DidCapture;
12936						return workInProgress$1;
12937					}
12938					return null;
12939				case HostComponent:
12940					popHostContext(workInProgress$1);
12941					return null;
12942				case SuspenseComponent:
12943					popSuspenseContext(workInProgress$1);
12944					var suspenseState = workInProgress$1.memoizedState;
12945					if (suspenseState !== null && suspenseState.dehydrated !== null) {
12946						if (workInProgress$1.alternate === null) throw new Error("Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.");
12947						resetHydrationState();
12948					}
12949					var _flags2 = workInProgress$1.flags;
12950					if (_flags2 & ShouldCapture) {
12951						workInProgress$1.flags = _flags2 & ~ShouldCapture | DidCapture;
12952						if ((workInProgress$1.mode & ProfileMode) !== NoMode) transferActualDuration(workInProgress$1);
12953						return workInProgress$1;
12954					}
12955					return null;
12956				case SuspenseListComponent:
12957					popSuspenseContext(workInProgress$1);
12958					return null;
12959				case HostPortal:
12960					popHostContainer(workInProgress$1);
12961					return null;
12962				case ContextProvider:
12963					var context = workInProgress$1.type._context;
12964					popProvider(context, workInProgress$1);
12965					return null;
12966				case OffscreenComponent:
12967				case LegacyHiddenComponent:
12968					popRenderLanes(workInProgress$1);
12969					return null;
12970				case CacheComponent: return null;
12971				default: return null;
12972			}
12973		}
12974		function unwindInterruptedWork(current$1, interruptedWork, renderLanes$1) {
12975			popTreeContext(interruptedWork);
12976			switch (interruptedWork.tag) {
12977				case ClassComponent:
12978					var childContextTypes = interruptedWork.type.childContextTypes;
12979					if (childContextTypes !== null && childContextTypes !== void 0) popContext(interruptedWork);
12980					break;
12981				case HostRoot:
12982					interruptedWork.stateNode;
12983					popHostContainer(interruptedWork);
12984					popTopLevelContextObject(interruptedWork);
12985					resetWorkInProgressVersions();
12986					break;
12987				case HostComponent:
12988					popHostContext(interruptedWork);
12989					break;
12990				case HostPortal:
12991					popHostContainer(interruptedWork);
12992					break;
12993				case SuspenseComponent:
12994					popSuspenseContext(interruptedWork);
12995					break;
12996				case SuspenseListComponent:
12997					popSuspenseContext(interruptedWork);
12998					break;
12999				case ContextProvider:
13000					var context = interruptedWork.type._context;
13001					popProvider(context, interruptedWork);
13002					break;
13003				case OffscreenComponent:
13004				case LegacyHiddenComponent:
13005					popRenderLanes(interruptedWork);
13006					break;
13007			}
13008		}
13009		var didWarnAboutUndefinedSnapshotBeforeUpdate = null;
13010		didWarnAboutUndefinedSnapshotBeforeUpdate = /* @__PURE__ */ new Set();
13011		var offscreenSubtreeIsHidden = false;
13012		var offscreenSubtreeWasHidden = false;
13013		var PossiblyWeakSet = typeof WeakSet === "function" ? WeakSet : Set;
13014		var nextEffect = null;
13015		var inProgressLanes = null;
13016		var inProgressRoot = null;
13017		function reportUncaughtErrorInDEV(error$1) {
13018			invokeGuardedCallback(null, function() {
13019				throw error$1;
13020			});
13021			clearCaughtError();
13022		}
13023		var callComponentWillUnmountWithTimer = function(current$1, instance) {
13024			instance.props = current$1.memoizedProps;
13025			instance.state = current$1.memoizedState;
13026			if (current$1.mode & ProfileMode) try {
13027				startLayoutEffectTimer();
13028				instance.componentWillUnmount();
13029			} finally {
13030				recordLayoutEffectDuration(current$1);
13031			}
13032			else instance.componentWillUnmount();
13033		};
13034		function safelyCallCommitHookLayoutEffectListMount(current$1, nearestMountedAncestor) {
13035			try {
13036				commitHookEffectListMount(Layout, current$1);
13037			} catch (error$1) {
13038				captureCommitPhaseError(current$1, nearestMountedAncestor, error$1);
13039			}
13040		}
13041		function safelyCallComponentWillUnmount(current$1, nearestMountedAncestor, instance) {
13042			try {
13043				callComponentWillUnmountWithTimer(current$1, instance);
13044			} catch (error$1) {
13045				captureCommitPhaseError(current$1, nearestMountedAncestor, error$1);
13046			}
13047		}
13048		function safelyCallComponentDidMount(current$1, nearestMountedAncestor, instance) {
13049			try {
13050				instance.componentDidMount();
13051			} catch (error$1) {
13052				captureCommitPhaseError(current$1, nearestMountedAncestor, error$1);
13053			}
13054		}
13055		function safelyAttachRef(current$1, nearestMountedAncestor) {
13056			try {
13057				commitAttachRef(current$1);
13058			} catch (error$1) {
13059				captureCommitPhaseError(current$1, nearestMountedAncestor, error$1);
13060			}
13061		}
13062		function safelyDetachRef(current$1, nearestMountedAncestor) {
13063			var ref = current$1.ref;
13064			if (ref !== null) if (typeof ref === "function") {
13065				var retVal;
13066				try {
13067					if (enableProfilerTimer && enableProfilerCommitHooks && current$1.mode & ProfileMode) try {
13068						startLayoutEffectTimer();
13069						retVal = ref(null);
13070					} finally {
13071						recordLayoutEffectDuration(current$1);
13072					}
13073					else retVal = ref(null);
13074				} catch (error$1) {
13075					captureCommitPhaseError(current$1, nearestMountedAncestor, error$1);
13076				}
13077				if (typeof retVal === "function") error("Unexpected return value from a callback ref in %s. A callback ref should not return a function.", getComponentNameFromFiber(current$1));
13078			} else ref.current = null;
13079		}
13080		function safelyCallDestroy(current$1, nearestMountedAncestor, destroy) {
13081			try {
13082				destroy();
13083			} catch (error$1) {
13084				captureCommitPhaseError(current$1, nearestMountedAncestor, error$1);
13085			}
13086		}
13087		var shouldFireAfterActiveInstanceBlur = false;
13088		function commitBeforeMutationEffects(root$1, firstChild) {
13089			prepareForCommit(root$1.containerInfo);
13090			nextEffect = firstChild;
13091			commitBeforeMutationEffects_begin();
13092			var shouldFire = shouldFireAfterActiveInstanceBlur;
13093			shouldFireAfterActiveInstanceBlur = false;
13094			return shouldFire;
13095		}
13096		function commitBeforeMutationEffects_begin() {
13097			while (nextEffect !== null) {
13098				var fiber = nextEffect;
13099				var child = fiber.child;
13100				if ((fiber.subtreeFlags & BeforeMutationMask) !== NoFlags && child !== null) {
13101					child.return = fiber;
13102					nextEffect = child;
13103				} else commitBeforeMutationEffects_complete();
13104			}
13105		}
13106		function commitBeforeMutationEffects_complete() {
13107			while (nextEffect !== null) {
13108				var fiber = nextEffect;
13109				setCurrentFiber(fiber);
13110				try {
13111					commitBeforeMutationEffectsOnFiber(fiber);
13112				} catch (error$1) {
13113					captureCommitPhaseError(fiber, fiber.return, error$1);
13114				}
13115				resetCurrentFiber();
13116				var sibling = fiber.sibling;
13117				if (sibling !== null) {
13118					sibling.return = fiber.return;
13119					nextEffect = sibling;
13120					return;
13121				}
13122				nextEffect = fiber.return;
13123			}
13124		}
13125		function commitBeforeMutationEffectsOnFiber(finishedWork) {
13126			var current$1 = finishedWork.alternate;
13127			if ((finishedWork.flags & Snapshot) !== NoFlags) {
13128				setCurrentFiber(finishedWork);
13129				switch (finishedWork.tag) {
13130					case FunctionComponent:
13131					case ForwardRef:
13132					case SimpleMemoComponent: break;
13133					case ClassComponent:
13134						if (current$1 !== null) {
13135							var prevProps = current$1.memoizedProps;
13136							var prevState = current$1.memoizedState;
13137							var instance = finishedWork.stateNode;
13138							if (finishedWork.type === finishedWork.elementType && !didWarnAboutReassigningProps) {
13139								if (instance.props !== finishedWork.memoizedProps) error("Expected %s props to match memoized props before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.", getComponentNameFromFiber(finishedWork) || "instance");
13140								if (instance.state !== finishedWork.memoizedState) error("Expected %s state to match memoized state before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.", getComponentNameFromFiber(finishedWork) || "instance");
13141							}
13142							var snapshot = instance.getSnapshotBeforeUpdate(finishedWork.elementType === finishedWork.type ? prevProps : resolveDefaultProps(finishedWork.type, prevProps), prevState);
13143							var didWarnSet = didWarnAboutUndefinedSnapshotBeforeUpdate;
13144							if (snapshot === void 0 && !didWarnSet.has(finishedWork.type)) {
13145								didWarnSet.add(finishedWork.type);
13146								error("%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.", getComponentNameFromFiber(finishedWork));
13147							}
13148							instance.__reactInternalSnapshotBeforeUpdate = snapshot;
13149						}
13150						break;
13151					case HostRoot:
13152						var root$1 = finishedWork.stateNode;
13153						clearContainer(root$1.containerInfo);
13154						break;
13155					case HostComponent:
13156					case HostText:
13157					case HostPortal:
13158					case IncompleteClassComponent: break;
13159					default: throw new Error("This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.");
13160				}
13161				resetCurrentFiber();
13162			}
13163		}
13164		function commitHookEffectListUnmount(flags, finishedWork, nearestMountedAncestor) {
13165			var updateQueue = finishedWork.updateQueue;
13166			var lastEffect = updateQueue !== null ? updateQueue.lastEffect : null;
13167			if (lastEffect !== null) {
13168				var firstEffect = lastEffect.next;
13169				var effect = firstEffect;
13170				do {
13171					if ((effect.tag & flags) === flags) {
13172						var destroy = effect.destroy;
13173						effect.destroy = void 0;
13174						if (destroy !== void 0) {
13175							if ((flags & Passive$1) !== NoFlags$1) markComponentPassiveEffectUnmountStarted(finishedWork);
13176							else if ((flags & Layout) !== NoFlags$1) markComponentLayoutEffectUnmountStarted(finishedWork);
13177							if ((flags & Insertion) !== NoFlags$1) setIsRunningInsertionEffect(true);
13178							safelyCallDestroy(finishedWork, nearestMountedAncestor, destroy);
13179							if ((flags & Insertion) !== NoFlags$1) setIsRunningInsertionEffect(false);
13180							if ((flags & Passive$1) !== NoFlags$1) markComponentPassiveEffectUnmountStopped();
13181							else if ((flags & Layout) !== NoFlags$1) markComponentLayoutEffectUnmountStopped();
13182						}
13183					}
13184					effect = effect.next;
13185				} while (effect !== firstEffect);
13186			}
13187		}
13188		function commitHookEffectListMount(flags, finishedWork) {
13189			var updateQueue = finishedWork.updateQueue;
13190			var lastEffect = updateQueue !== null ? updateQueue.lastEffect : null;
13191			if (lastEffect !== null) {
13192				var firstEffect = lastEffect.next;
13193				var effect = firstEffect;
13194				do {
13195					if ((effect.tag & flags) === flags) {
13196						if ((flags & Passive$1) !== NoFlags$1) markComponentPassiveEffectMountStarted(finishedWork);
13197						else if ((flags & Layout) !== NoFlags$1) markComponentLayoutEffectMountStarted(finishedWork);
13198						var create = effect.create;
13199						if ((flags & Insertion) !== NoFlags$1) setIsRunningInsertionEffect(true);
13200						effect.destroy = create();
13201						if ((flags & Insertion) !== NoFlags$1) setIsRunningInsertionEffect(false);
13202						if ((flags & Passive$1) !== NoFlags$1) markComponentPassiveEffectMountStopped();
13203						else if ((flags & Layout) !== NoFlags$1) markComponentLayoutEffectMountStopped();
13204						var destroy = effect.destroy;
13205						if (destroy !== void 0 && typeof destroy !== "function") {
13206							var hookName = void 0;
13207							if ((effect.tag & Layout) !== NoFlags) hookName = "useLayoutEffect";
13208							else if ((effect.tag & Insertion) !== NoFlags) hookName = "useInsertionEffect";
13209							else hookName = "useEffect";
13210							var addendum = void 0;
13211							if (destroy === null) addendum = " You returned null. If your effect does not require clean up, return undefined (or nothing).";
13212							else if (typeof destroy.then === "function") addendum = "\n\nIt looks like you wrote " + hookName + "(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately:\n\n" + hookName + "(() =>
13212 {\n  async function fetchData() {\n    // You can await here\n    const response = await MyAPI.getData(someId);\n    // ...\n  }\n  fetchData();\n}, [someId]); // Or [] if effect doesn't need props or state\n\nLearn more about data fetching with Hooks: https://reactjs.org/link/hooks-data-fetching";
13213							else addendum = " You returned: " + destroy;
13214							error("%s must not return anything besides a function, which is used for clean-up.%s", hookName, addendum);
13215						}
13216					}
13217					effect = effect.next;
13218				} while (effect !== firstEffect);
13219			}
13220		}
13221		function commitPassiveEffectDurations(finishedRoot, finishedWork) {
13222			if ((finishedWork.flags & Update) !== NoFlags) switch (finishedWork.tag) {
13223				case Profiler:
13224					var passiveEffectDuration = finishedWork.stateNode.passiveEffectDuration;
13225					var _finishedWork$memoize = finishedWork.memoizedProps, id = _finishedWork$memoize.id, onPostCommit = _finishedWork$memoize.onPostCommit;
13226					var commitTime$1 = getCommitTime();
13227					var phase = finishedWork.alternate === null ? "mount" : "update";
13228					if (isCurrentUpdateNested()) phase = "nested-update";
13229					if (typeof onPostCommit === "function") onPostCommit(id, phase, passiveEffectDuration, commitTime$1);
13230					var parentFiber = finishedWork.return;
13231					outer: while (parentFiber !== null) {
13232						switch (parentFiber.tag) {
13233							case HostRoot:
13234								var root$1 = parentFiber.stateNode;
13235								root$1.passiveEffectDuration += passiveEffectDuration;
13236								break outer;
13237							case Profiler:
13238								var parentStateNode = parentFiber.stateNode;
13239								parentStateNode.passiveEffectDuration += passiveEffectDuration;
13240								break outer;
13241						}
13242						parentFiber = parentFiber.return;
13243					}
13244					break;
13245			}
13246		}
13247		function commitLayoutEffectOnFiber(finishedRoot, current$1, finishedWork, committedLanes) {
13248			if ((finishedWork.flags & LayoutMask) !== NoFlags) switch (finishedWork.tag) {
13249				case FunctionComponent:
13250				case ForwardRef:
13251				case SimpleMemoComponent:
13252					if (!offscreenSubtreeWasHidden) if (finishedWork.mode & ProfileMode) try {
13253						startLayoutEffectTimer();
13254						commitHookEffectListMount(Layout | HasEffect, finishedWork);
13255					} finally {
13256						recordLayoutEffectDuration(finishedWork);
13257					}
13258					else commitHookEffectListMount(Layout | HasEffect, finishedWork);
13259					break;
13260				case ClassComponent:
13261					var instance = finishedWork.stateNode;
13262					if (finishedWork.flags & Update) {
13263						if (!offscreenSubtreeWasHidden) if (current$1 === null) {
13264							if (finishedWork.type === finishedWork.elementType && !didWarnAboutReassigningProps) {
13265								if (instance.props !== finishedWork.memoizedProps) error("Expected %s props to match memoized props before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.", getComponentNameFromFiber(finishedWork) || "instance");
13266								if (instance.state !== finishedWork.memoizedState) error("Expected %s state to match memoized state before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.", getComponentNameFromFiber(finishedWork) || "instance");
13267							}
13268							if (finishedWork.mode & ProfileMode) try {
13269								startLayoutEffectTimer();
13270								instance.componentDidMount();
13271							} finally {
13272								recordLayoutEffectDuration(finishedWork);
13273							}
13274							else instance.componentDidMount();
13275						} else {
13276							var prevProps = finishedWork.elementType === finishedWork.type ? current$1.memoizedProps : resolveDefaultProps(finishedWork.type, current$1.memoizedProps);
13277							var prevState = current$1.memoizedState;
13278							if (finishedWork.type === finishedWork.elementType && !didWarnAboutReassigningProps) {
13279								if (instance.props !== finishedWork.memoizedProps) error("Expected %s props to match memoized props before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.", getComponentNameFromFiber(finishedWork) || "instance");
13280								if (instance.state !== finishedWork.memoizedState) error("Expected %s state to match memoized state before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.", getComponentNameFromFiber(finishedWork) || "instance");
13281							}
13282							if (finishedWork.mode & ProfileMode) try {
13283								startLayoutEffectTimer();
13284								instance.componentDidUpdate(prevProps, prevState, instance.__reactInternalSnapshotBeforeUpdate);
13285							} finally {
13286								recordLayoutEffectDuration(finishedWork);
13287							}
13288							else instance.componentDidUpdate(prevProps, prevState, instance.__reactInternalSnapshotBeforeUpdate);
13289						}
13290					}
13291					var updateQueue = finishedWork.updateQueue;
13292					if (updateQueue !== null) {
13293						if (finishedWork.type === finishedWork.elementType && !didWarnAboutReassigningProps) {
13294							if (instance.props !== finishedWork.memoizedProps) error("Expected %s props to match memoized props before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.", getComponentNameFromFiber(finishedWork) || "instance");
13295							if (instance.state !== finishedWork.memoizedState) error("Expected %s state to match memoized state before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.", getComponentNameFromFiber(finishedWork) || "instance");
13296						}
13297						commitUpdateQueue(finishedWork, updateQueue, instance);
13298					}
13299					break;
13300				case HostRoot:
13301					var _updateQueue = finishedWork.updateQueue;
13302					if (_updateQueue !== null) {
13303						var _instance = null;
13304						if (finishedWork.child !== null) switch (finishedWork.child.tag) {
13305							case HostComponent:
13306								_instance = getPublicInstance(finishedWork.child.stateNode);
13307								break;
13308							case ClassComponent:
13309								_instance = finishedWork.child.stateNode;
13310								break;
13311						}
13312						commitUpdateQueue(finishedWork, _updateQueue, _instance);
13313					}
13314					break;
13315				case HostComponent:
13316					var _instance2 = finishedWork.stateNode;
13317					if (current$1 === null && finishedWork.flags & Update) {
13318						var type = finishedWork.type;
13319						var props = finishedWork.memoizedProps;
13320						commitMount(_instance2, type, props);
13321					}
13322					break;
13323				case HostText: break;
13324				case HostPortal: break;
13325				case Profiler:
13326					var _finishedWork$memoize2 = finishedWork.memoizedProps, onCommit = _finishedWork$memoize2.onCommit, onRender = _finishedWork$memoize2.onRender;
13327					var effectDuration = finishedWork.stateNode.effectDuration;
13328					var commitTime$1 = getCommitTime();
13329					var phase = current$1 === null ? "mount" : "update";
13330					if (isCurrentUpdateNested()) phase = "nested-update";
13331					if (typeof onRender === "function") onRender(finishedWork.memoizedProps.id, phase, finishedWork.actualDuration, finishedWork.treeBaseDuration, finishedWork.actualStartTime, commitTime$1);
13332					if (typeof onCommit === "function") onCommit(finishedWork.memoizedProps.id, phase, effectDuration, commitTime$1);
13333					enqueuePendingPassiveProfilerEffect(finishedWork);
13334					var parentFiber = finishedWork.return;
13335					outer: while (parentFiber !== null) {
13336						switch (parentFiber.tag) {
13337							case HostRoot:
13338								var root$1 = parentFiber.stateNode;
13339								root$1.effectDuration += effectDuration;
13340								break outer;
13341							case Profiler:
13342								var parentStateNode = parentFiber.stateNode;
13343								parentStateNode.effectDuration += effectDuration;
13344								break outer;
13345						}
13346						parentFiber = parentFiber.return;
13347					}
13348					break;
13349				case SuspenseComponent:
13350					commitSuspenseHydrationCallbacks(finishedRoot, finishedWork);
13351					break;
13352				case SuspenseListComponent:
13353				case IncompleteClassComponent:
13354				case ScopeComponent:
13355				case OffscreenComponent:
13356				case LegacyHiddenComponent:
13357				case TracingMarkerComponent: break;
13358				default: throw new Error("This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.");
13359			}
13360			if (!offscreenSubtreeWasHidden) {
13361				if (finishedWork.flags & Ref) commitAttachRef(finishedWork);
13362			}
13363		}
13364		function reappearLayoutEffectsOnFiber(node) {
13365			switch (node.tag) {
13366				case FunctionComponent:
13367				case ForwardRef:
13368				case SimpleMemoComponent:
13369					if (node.mode & ProfileMode) try {
13370						startLayoutEffectTimer();
13371						safelyCallCommitHookLayoutEffectListMount(node, node.return);
13372					} finally {
13373						recordLayoutEffectDuration(node);
13374					}
13375					else safelyCallCommitHookLayoutEffectListMount(node, node.return);
13376					break;
13377				case ClassComponent:
13378					var instance = node.stateNode;
13379					if (typeof instance.componentDidMount === "function") safelyCallComponentDidMount(node, node.return, instance);
13380					safelyAttachRef(node, node.return);
13381					break;
13382				case HostComponent:
13383					safelyAttachRef(node, node.return);
13384					break;
13385			}
13386		}
13387		function hideOrUnhideAllChildren(finishedWork, isHidden) {
13388			var hostSubtreeRoot = null;
13389			var node = finishedWork;
13390			while (true) {
13391				if (node.tag === HostComponent) {
13392					if (hostSubtreeRoot === null) {
13393						hostSubtreeRoot = node;
13394						try {
13395							var instance = node.stateNode;
13396							if (isHidden) hideInstance(instance);
13397							else unhideInstance(node.stateNode, node.memoizedProps);
13398						} catch (error$1) {
13399							captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13400						}
13401					}
13402				} else if (node.tag === HostText) {
13403					if (hostSubtreeRoot === null) try {
13404						var _instance3 = node.stateNode;
13405						if (isHidden) hideTextInstance(_instance3);
13406						else unhideTextInstance(_instance3, node.memoizedProps);
13407					} catch (error$1) {
13408						captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13409					}
13410				} else if ((node.tag === OffscreenComponent || node.tag === LegacyHiddenComponent) && node.memoizedState !== null && node !== finishedWork);
13411				else if (node.child !== null) {
13412					node.child.return = node;
13413					node = node.child;
13414					continue;
13415				}
13416				if (node === finishedWork) return;
13417				while (node.sibling === null) {
13418					if (node.return === null || node.return === finishedWork) return;
13419					if (hostSubtreeRoot === node) hostSubtreeRoot = null;
13420					node = node.return;
13421				}
13422				if (hostSubtreeRoot === node) hostSubtreeRoot = null;
13423				node.sibling.return = node.return;
13424				node = node.sibling;
13425			}
13426		}
13427		function commitAttachRef(finishedWork) {
13428			var ref = finishedWork.ref;
13429			if (ref !== null) {
13430				var instance = finishedWork.stateNode;
13431				var instanceToUse;
13432				switch (finishedWork.tag) {
13433					case HostComponent:
13434						instanceToUse = getPublicInstance(instance);
13435						break;
13436					default: instanceToUse = instance;
13437				}
13438				if (typeof ref === "function") {
13439					var retVal;
13440					if (finishedWork.mode & ProfileMode) try {
13441						startLayoutEffectTimer();
13442						retVal = ref(instanceToUse);
13443					} finally {
13444						recordLayoutEffectDuration(finishedWork);
13445					}
13446					else retVal = ref(instanceToUse);
13447					if (typeof retVal === "function") error("Unexpected return value from a callback ref in %s. A callback ref should not return a function.", getComponentNameFromFiber(finishedWork));
13448				} else {
13449					if (!ref.hasOwnProperty("current")) error("Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().", getComponentNameFromFiber(finishedWork));
13450					ref.current = instanceToUse;
13451				}
13452			}
13453		}
13454		function detachFiberMutation(fiber) {
13455			var alternate = fiber.alternate;
13456			if (alternate !== null) alternate.return = null;
13457			fiber.return = null;
13458		}
13459		function detachFiberAfterEffects(fiber) {
13460			var alternate = fiber.alternate;
13461			if (alternate !== null) {
13462				fiber.alternate = null;
13463				detachFiberAfterEffects(alternate);
13464			}
13465			fiber.child = null;
13466			fiber.deletions = null;
13467			fiber.sibling = null;
13468			if (fiber.tag === HostComponent) {
13469				var hostInstance = fiber.stateNode;
13470				if (hostInstance !== null) detachDeletedInstance(hostInstance);
13471			}
13472			fiber.stateNode = null;
13473			fiber._debugOwner = null;
13474			fiber.return = null;
13475			fiber.dependencies = null;
13476			fiber.memoizedProps = null;
13477			fiber.memoizedState = null;
13478			fiber.pendingProps = null;
13479			fiber.stateNode = null;
13480			fiber.updateQueue = null;
13481		}
13482		function getHostParentFiber(fiber) {
13483			var parent = fiber.return;
13484			while (parent !== null) {
13485				if (isHostParent(parent)) return parent;
13486				parent = parent.return;
13487			}
13488			throw new Error("Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.");
13489		}
13490		function isHostParent(fiber) {
13491			return fiber.tag === HostComponent || fiber.tag === HostRoot || fiber.tag === HostPortal;
13492		}
13493		function getHostSibling(fiber) {
13494			var node = fiber;
13495			siblings: while (true) {
13496				while (node.sibling === null) {
13497					if (node.return === null || isHostParent(node.return)) return null;
13498					node = node.return;
13499				}
13500				node.sibling.return = node.return;
13501				node = node.sibling;
13502				while (node.tag !== HostComponent && node.tag !== HostText && node.tag !== DehydratedFragment) {
13503					if (node.flags & Placement) continue siblings;
13504					if (node.child === null || node.tag === HostPortal) continue siblings;
13505					else {
13506						node.child.return = node;
13507						node = node.child;
13508					}
13509				}
13510				if (!(node.flags & Placement)) return node.stateNode;
13511			}
13512		}
13513		function commitPlacement(finishedWork) {
13514			var parentFiber = getHostParentFiber(finishedWork);
13515			switch (parentFiber.tag) {
13516				case HostComponent:
13517					var parent = parentFiber.stateNode;
13518					if (parentFiber.flags & ContentReset) {
13519						resetTextContent(parent);
13520						parentFiber.flags &= ~ContentReset;
13521					}
13522					insertOrAppendPlacementNode(finishedWork, getHostSibling(finishedWork), parent);
13523					break;
13524				case HostRoot:
13525				case HostPortal:
13526					var _parent = parentFiber.stateNode.containerInfo;
13527					insertOrAppendPlacementNodeIntoContainer(finishedWork, getHostSibling(finishedWork), _parent);
13528					break;
13529				default: throw new Error("Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue.");
13530			}
13531		}
13532		function insertOrAppendPlacementNodeIntoContainer(node, before, parent) {
13533			var tag = node.tag;
13534			if (tag === HostComponent || tag === HostText) {
13535				var stateNode = node.stateNode;
13536				if (before) insertInContainerBefore(parent, stateNode, before);
13537				else appendChildToContainer(parent, stateNode);
13538			} else if (tag === HostPortal);
13539			else {
13540				var child = node.child;
13541				if (child !== null) {
13542					insertOrAppendPlacementNodeIntoContainer(child, before, parent);
13543					var sibling = child.sibling;
13544					while (sibling !== null) {
13545						insertOrAppendPlacementNodeIntoContainer(sibling, before, parent);
13546						sibling = sibling.sibling;
13547					}
13548				}
13549			}
13550		}
13551		function insertOrAppendPlacementNode(node, before, parent) {
13552			var tag = node.tag;
13553			if (tag === HostComponent || tag === HostText) {
13554				var stateNode = node.stateNode;
13555				if (before) insertBefore(parent, stateNode, before);
13556				else appendChild(parent, stateNode);
13557			} else if (tag === HostPortal);
13558			else {
13559				var child = node.child;
13560				if (child !== null) {
13561					insertOrAppendPlacementNode(child, before, parent);
13562					var sibling = child.sibling;
13563					while (sibling !== null) {
13564						insertOrAppendPlacementNode(sibling, before, parent);
13565						sibling = sibling.sibling;
13566					}
13567				}
13568			}
13569		}
13570		var hostParent = null;
13571		var hostParentIsContainer = false;
13572		function commitDeletionEffects(root$1, returnFiber, deletedFiber) {
13573			var parent = returnFiber;
13574			findParent: while (parent !== null) {
13575				switch (parent.tag) {
13576					case HostComponent:
13577						hostParent = parent.stateNode;
13578						hostParentIsContainer = false;
13579						break findParent;
13580					case HostRoot:
13581						hostParent = parent.stateNode.containerInfo;
13582						hostParentIsContainer = true;
13583						break findParent;
13584					case HostPortal:
13585						hostParent = parent.stateNode.containerInfo;
13586						hostParentIsContainer = true;
13587						break findParent;
13588				}
13589				parent = parent.return;
13590			}
13591			if (hostParent === null) throw new Error("Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.");
13592			commitDeletionEffectsOnFiber(root$1, returnFiber, deletedFiber);
13593			hostParent = null;
13594			hostParentIsContainer = false;
13595			detachFiberMutation(deletedFiber);
13596		}
13597		function recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, parent) {
13598			var child = parent.child;
13599			while (child !== null) {
13600				commitDeletionEffectsOnFiber(finishedRoot, nearestMountedAncestor, child);
13601				child = child.sibling;
13602			}
13603		}
13604		function commitDeletionEffectsOnFiber(finishedRoot, nearestMountedAncestor, deletedFiber) {
13605			onCommitUnmount(deletedFiber);
13606			switch (deletedFiber.tag) {
13607				case HostComponent: if (!offscreenSubtreeWasHidden) safelyDetachRef(deletedFiber, nearestMountedAncestor);
13608				case HostText:
13609					var prevHostParent = hostParent;
13610					var prevHostParentIsContainer = hostParentIsContainer;
13611					hostParent = null;
13612					recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);
13613					hostParent = prevHostParent;
13614					hostParentIsContainer = prevHostParentIsContainer;
13615					if (hostParent !== null) if (hostParentIsContainer) removeChildFromContainer(hostParent, deletedFiber.stateNode);
13616					else removeChild(hostParent, deletedFiber.stateNode);
13617					return;
13618				case DehydratedFragment:
13619					if (hostParent !== null) if (hostParentIsContainer) clearSuspenseBoundaryFromContainer(hostParent, deletedFiber.stateNode);
13620					else clearSuspenseBoundary(hostParent, deletedFiber.stateNode);
13621					return;
13622				case HostPortal:
13623					var _prevHostParent = hostParent;
13624					var _prevHostParentIsContainer = hostParentIsContainer;
13625					hostParent = deletedFiber.stateNode.containerInfo;
13626					hostParentIsContainer = true;
13627					recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);
13628					hostParent = _prevHostParent;
13629					hostParentIsContainer = _prevHostParentIsContainer;
13630					return;
13631				case FunctionComponent:
13632				case ForwardRef:
13633				case MemoComponent:
13634				case SimpleMemoComponent:
13635					if (!offscreenSubtreeWasHidden) {
13636						var updateQueue = deletedFiber.updateQueue;
13637						if (updateQueue !== null) {
13638							var lastEffect = updateQueue.lastEffect;
13639							if (lastEffect !== null) {
13640								var firstEffect = lastEffect.next;
13641								var effect = firstEffect;
13642								do {
13643									var _effect = effect, destroy = _effect.destroy, tag = _effect.tag;
13644									if (destroy !== void 0) {
13645										if ((tag & Insertion) !== NoFlags$1) safelyCallDestroy(deletedFiber, nearestMountedAncestor, destroy);
13646										else if ((tag & Layout) !== NoFlags$1) {
13647											markComponentLayoutEffectUnmountStarted(deletedFiber);
13648											if (deletedFiber.mode & ProfileMode) {
13649												startLayoutEffectTimer();
13650												safelyCallDestroy(deletedFiber, nearestMountedAncestor, destroy);
13651												recordLayoutEffectDuration(deletedFiber);
13652											} else safelyCallDestroy(deletedFiber, nearestMountedAncestor, destroy);
13653											markComponentLayoutEffectUnmountStopped();
13654										}
13655									}
13656									effect = effect.next;
13657								} while (effect !== firstEffect);
13658							}
13659						}
13660					}
13661					recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);
13662					return;
13663				case ClassComponent:
13664					if (!offscreenSubtreeWasHidden) {
13665						safelyDetachRef(deletedFiber, nearestMountedAncestor);
13666						var instance = deletedFiber.stateNode;
13667						if (typeof instance.componentWillUnmount === "function") safelyCallComponentWillUnmount(
13667deletedFiber, nearestMountedAncestor, instance);
13668					}
13669					recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);
13670					return;
13671				case ScopeComponent:
13672					recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);
13673					return;
13674				case OffscreenComponent:
13675					if (deletedFiber.mode & ConcurrentMode) {
13676						var prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;
13677						offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden || deletedFiber.memoizedState !== null;
13678						recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);
13679						offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;
13680					} else recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);
13681					break;
13682				default:
13683					recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);
13684					return;
13685			}
13686		}
13687		function commitSuspenseCallback(finishedWork) {
13688			finishedWork.memoizedState;
13689		}
13690		function commitSuspenseHydrationCallbacks(finishedRoot, finishedWork) {
13691			if (finishedWork.memoizedState === null) {
13692				var current$1 = finishedWork.alternate;
13693				if (current$1 !== null) {
13694					var prevState = current$1.memoizedState;
13695					if (prevState !== null) {
13696						var suspenseInstance = prevState.dehydrated;
13697						if (suspenseInstance !== null) commitHydratedSuspenseInstance(suspenseInstance);
13698					}
13699				}
13700			}
13701		}
13702		function attachSuspenseRetryListeners(finishedWork) {
13703			var wakeables = finishedWork.updateQueue;
13704			if (wakeables !== null) {
13705				finishedWork.updateQueue = null;
13706				var retryCache = finishedWork.stateNode;
13707				if (retryCache === null) retryCache = finishedWork.stateNode = new PossiblyWeakSet();
13708				wakeables.forEach(function(wakeable) {
13709					var retry = resolveRetryWakeable.bind(null, finishedWork, wakeable);
13710					if (!retryCache.has(wakeable)) {
13711						retryCache.add(wakeable);
13712						if (isDevToolsPresent) if (inProgressLanes !== null && inProgressRoot !== null) restorePendingUpdaters(inProgressRoot, inProgressLanes);
13713						else throw Error("Expected finished root and lanes to be set. This is a bug in React.");
13714						wakeable.then(retry, retry);
13715					}
13716				});
13717			}
13718		}
13719		function commitMutationEffects(root$1, finishedWork, committedLanes) {
13720			inProgressLanes = committedLanes;
13721			inProgressRoot = root$1;
13722			setCurrentFiber(finishedWork);
13723			commitMutationEffectsOnFiber(finishedWork, root$1);
13724			setCurrentFiber(finishedWork);
13725			inProgressLanes = null;
13726			inProgressRoot = null;
13727		}
13728		function recursivelyTraverseMutationEffects(root$1, parentFiber, lanes) {
13729			var deletions = parentFiber.deletions;
13730			if (deletions !== null) for (var i = 0; i < deletions.length; i++) {
13731				var childToDelete = deletions[i];
13732				try {
13733					commitDeletionEffects(root$1, parentFiber, childToDelete);
13734				} catch (error$1) {
13735					captureCommitPhaseError(childToDelete, parentFiber, error$1);
13736				}
13737			}
13738			var prevDebugFiber = getCurrentFiber();
13739			if (parentFiber.subtreeFlags & MutationMask) {
13740				var child = parentFiber.child;
13741				while (child !== null) {
13742					setCurrentFiber(child);
13743					commitMutationEffectsOnFiber(child, root$1);
13744					child = child.sibling;
13745				}
13746			}
13747			setCurrentFiber(prevDebugFiber);
13748		}
13749		function commitMutationEffectsOnFiber(finishedWork, root$1, lanes) {
13750			var current$1 = finishedWork.alternate;
13751			var flags = finishedWork.flags;
13752			switch (finishedWork.tag) {
13753				case FunctionComponent:
13754				case ForwardRef:
13755				case MemoComponent:
13756				case SimpleMemoComponent:
13757					recursivelyTraverseMutationEffects(root$1, finishedWork);
13758					commitReconciliationEffects(finishedWork);
13759					if (flags & Update) {
13760						try {
13761							commitHookEffectListUnmount(Insertion | HasEffect, finishedWork, finishedWork.return);
13762							commitHookEffectListMount(Insertion | HasEffect, finishedWork);
13763						} catch (error$1) {
13764							captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13765						}
13766						if (finishedWork.mode & ProfileMode) {
13767							try {
13768								startLayoutEffectTimer();
13769								commitHookEffectListUnmount(Layout | HasEffect, finishedWork, finishedWork.return);
13770							} catch (error$1) {
13771								captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13772							}
13773							recordLayoutEffectDuration(finishedWork);
13774						} else try {
13775							commitHookEffectListUnmount(Layout | HasEffect, finishedWork, finishedWork.return);
13776						} catch (error$1) {
13777							captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13778						}
13779					}
13780					return;
13781				case ClassComponent:
13782					recursivelyTraverseMutationEffects(root$1, finishedWork);
13783					commitReconciliationEffects(finishedWork);
13784					if (flags & Ref) {
13785						if (current$1 !== null) safelyDetachRef(current$1, current$1.return);
13786					}
13787					return;
13788				case HostComponent:
13789					recursivelyTraverseMutationEffects(root$1, finishedWork);
13790					commitReconciliationEffects(finishedWork);
13791					if (flags & Ref) {
13792						if (current$1 !== null) safelyDetachRef(current$1, current$1.return);
13793					}
13794					if (finishedWork.flags & ContentReset) {
13795						var instance = finishedWork.stateNode;
13796						try {
13797							resetTextContent(instance);
13798						} catch (error$1) {
13799							captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13800						}
13801					}
13802					if (flags & Update) {
13803						var _instance4 = finishedWork.stateNode;
13804						if (_instance4 != null) {
13805							var newProps = finishedWork.memoizedProps;
13806							var oldProps = current$1 !== null ? current$1.memoizedProps : newProps;
13807							var type = finishedWork.type;
13808							var updatePayload = finishedWork.updateQueue;
13809							finishedWork.updateQueue = null;
13810							if (updatePayload !== null) try {
13811								commitUpdate(_instance4, updatePayload, type, oldProps, newProps, finishedWork);
13812							} catch (error$1) {
13813								captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13814							}
13815						}
13816					}
13817					return;
13818				case HostText:
13819					recursivelyTraverseMutationEffects(root$1, finishedWork);
13820					commitReconciliationEffects(finishedWork);
13821					if (flags & Update) {
13822						if (finishedWork.stateNode === null) throw new Error("This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue.");
13823						var textInstance = finishedWork.stateNode;
13824						var newText = finishedWork.memoizedProps;
13825						var oldText = current$1 !== null ? current$1.memoizedProps : newText;
13826						try {
13827							commitTextUpdate(textInstance, oldText, newText);
13828						} catch (error$1) {
13829							captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13830						}
13831					}
13832					return;
13833				case HostRoot:
13834					recursivelyTraverseMutationEffects(root$1, finishedWork);
13835					commitReconciliationEffects(finishedWork);
13836					if (flags & Update) {
13837						if (current$1 !== null) {
13838							if (current$1.memoizedState.isDehydrated) try {
13839								commitHydratedContainer(root$1.containerInfo);
13840							} catch (error$1) {
13841								captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13842							}
13843						}
13844					}
13845					return;
13846				case HostPortal:
13847					recursivelyTraverseMutationEffects(root$1, finishedWork);
13848					commitReconciliationEffects(finishedWork);
13849					return;
13850				case SuspenseComponent:
13851					recursivelyTraverseMutationEffects(root$1, finishedWork);
13852					commitReconciliationEffects(finishedWork);
13853					var offscreenFiber = finishedWork.child;
13854					if (offscreenFiber.flags & Visibility) {
13855						var offscreenInstance = offscreenFiber.stateNode;
13856						var isHidden = offscreenFiber.memoizedState !== null;
13857						offscreenInstance.isHidden = isHidden;
13858						if (isHidden) {
13859							if (!(offscreenFiber.alternate !== null && offscreenFiber.alternate.memoizedState !== null)) markCommitTimeOfFallback();
13860						}
13861					}
13862					if (flags & Update) {
13863						try {
13864							commitSuspenseCallback(finishedWork);
13865						} catch (error$1) {
13866							captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13867						}
13868						attachSuspenseRetryListeners(finishedWork);
13869					}
13870					return;
13871				case OffscreenComponent:
13872					var _wasHidden = current$1 !== null && current$1.memoizedState !== null;
13873					if (finishedWork.mode & ConcurrentMode) {
13874						var prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;
13875						offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden || _wasHidden;
13876						recursivelyTraverseMutationEffects(root$1, finishedWork);
13877						offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;
13878					} else recursivelyTraverseMutationEffects(root$1, finishedWork);
13879					commitReconciliationEffects(finishedWork);
13880					if (flags & Visibility) {
13881						var _offscreenInstance = finishedWork.stateNode;
13882						var _isHidden = finishedWork.memoizedState !== null;
13883						var offscreenBoundary = finishedWork;
13884						_offscreenInstance.isHidden = _isHidden;
13885						if (_isHidden) {
13886							if (!_wasHidden) {
13887								if ((offscreenBoundary.mode & ConcurrentMode) !== NoMode) {
13888									nextEffect = offscreenBoundary;
13889									var offscreenChild = offscreenBoundary.child;
13890									while (offscreenChild !== null) {
13891										nextEffect = offscreenChild;
13892										disappearLayoutEffects_begin(offscreenChild);
13893										offscreenChild = offscreenChild.sibling;
13894									}
13895								}
13896							}
13897						}
13898						hideOrUnhideAllChildren(offscreenBoundary, _isHidden);
13899					}
13900					return;
13901				case SuspenseListComponent:
13902					recursivelyTraverseMutationEffects(root$1, finishedWork);
13903					commitReconciliationEffects(finishedWork);
13904					if (flags & Update) attachSuspenseRetryListeners(finishedWork);
13905					return;
13906				case ScopeComponent: return;
13907				default:
13908					recursivelyTraverseMutationEffects(root$1, finishedWork);
13909					commitReconciliationEffects(finishedWork);
13910					return;
13911			}
13912		}
13913		function commitReconciliationEffects(finishedWork) {
13914			var flags = finishedWork.flags;
13915			if (flags & Placement) {
13916				try {
13917					commitPlacement(finishedWork);
13918				} catch (error$1) {
13919					captureCommitPhaseError(finishedWork, finishedWork.return, error$1);
13920				}
13921				finishedWork.flags &= ~Placement;
13922			}
13923			if (flags & Hydrating) finishedWork.flags &= ~Hydrating;
13924		}
13925		function commitLayoutEffects(finishedWork, root$1, committedLanes) {
13926			inProgressLanes = committedLanes;
13927			inProgressRoot = root$1;
13928			nextEffect = finishedWork;
13929			commitLayoutEffects_begin(finishedWork, root$1, committedLanes);
13930			inProgressLanes = null;
13931			inProgressRoot = null;
13932		}
13933		function commitLayoutEffects_begin(subtreeRoot, root$1, committedLanes) {
13934			var isModernRoot = (subtreeRoot.mode & ConcurrentMode) !== NoMode;
13935			while (nextEffect !== null) {
13936				var fiber = nextEffect;
13937				var firstChild = fiber.child;
13938				if (fiber.tag === OffscreenComponent && isModernRoot) {
13939					var newOffscreenSubtreeIsHidden = fiber.memoizedState !== null || offscreenSubtreeIsHidden;
13940					if (newOffscreenSubtreeIsHidden) {
13941						commitLayoutMountEffects_complete(subtreeRoot, root$1, committedLanes);
13942						continue;
13943					} else {
13944						var current$1 = fiber.alternate;
13945						var newOffscreenSubtreeWasHidden = current$1 !== null && current$1.memoizedState !== null || offscreenSubtreeWasHidden;
13946						var prevOffscreenSubtreeIsHidden = offscreenSubtreeIsHidden;
13947						var prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;
13948						offscreenSubtreeIsHidden = newOffscreenSubtreeIsHidden;
13949						offscreenSubtreeWasHidden = newOffscreenSubtreeWasHidden;
13950						if (offscreenSubtreeWasHidden && !prevOffscreenSubtreeWasHidden) {
13951							nextEffect = fiber;
13952							reappearLayoutEffects_begin(fiber);
13953						}
13954						var child = firstChild;
13955						while (child !== null) {
13956							nextEffect = child;
13957							commitLayoutEffects_begin(child, root$1, committedLanes);
13958							child = child.sibling;
13959						}
13960						nextEffect = fiber;
13961						offscreenSubtreeIsHidden = prevOffscreenSubtreeIsHidden;
13962						offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;
13963						commitLayoutMountEffects_complete(subtreeRoot, root$1, committedLanes);
13964						continue;
13965					}
13966				}
13967				if ((fiber.subtreeFlags & LayoutMask) !== NoFlags && firstChild !== null) {
13968					firstChild.return = fiber;
13969					nextEffect = firstChild;
13970				} else commitLayoutMountEffects_complete(subtreeRoot, root$1, committedLanes);
13971			}
13972		}
13973		function commitLayoutMountEffects_complete(subtreeRoot, root$1, committedLanes) {
13974			while (nextEffect !== null) {
13975				var fiber = nextEffect;
13976				if ((fiber.flags & LayoutMask) !== NoFlags) {
13977					var current$1 = fiber.alternate;
13978					setCurrentFiber(fiber);
13979					try {
13980						commitLayoutEffectOnFiber(root$1, current$1, fiber, committedLanes);
13981					} catch (error$1) {
13982						captureCommitPhaseError(fiber, fiber.return, error$1);
13983					}
13984					resetCurrentFiber();
13985				}
13986				if (fiber === subtreeRoot) {
13987					nextEffect = null;
13988					return;
13989				}
13990				var sibling = fiber.sibling;
13991				if (sibling !== null) {
13992					sibling.return = fiber.return;
13993					nextEffect = sibling;
13994					return;
13995				}
13996				nextEffect = fiber.return;
13997			}
13998		}
13999		function disappearLayoutEffects_begin(subtreeRoot) {
14000			while (nextEffect !== null) {
14001				var fiber = nextEffect;
14002				var firstChild = fiber.child;
14003				switch (fiber.tag) {
14004					case FunctionComponent:
14005					case ForwardRef:
14006					case MemoComponent:
14007					case SimpleMemoComponent:
14008						if (fiber.mode & ProfileMode) try {
14009							startLayoutEffectTimer();
14010							commitHookEffectListUnmount(Layout, fiber, fiber.return);
14011						} finally {
14012							recordLayoutEffectDuration(fiber);
14013						}
14014						else commitHookEffectListUnmount(Layout, fiber, fiber.return);
14015						break;
14016					case ClassComponent:
14017						safelyDetachRef(fiber, fiber.return);
14018						var instance = fiber.stateNode;
14019						if (typeof instance.componentWillUnmount === "function") safelyCallComponentWillUnmount(fiber, fiber.return, instance);
14020						break;
14021					case HostComponent:
14022						safelyDetachRef(fiber, fiber.return);
14023						break;
14024					case OffscreenComponent:
14025						if (fiber.memoizedState !== null) {
14026							disappearLayoutEffects_complete(subtreeRoot);
14027							continue;
14028						}
14029						break;
14030				}
14031				if (firstChild !== null) {
14032					firstChild.return = fiber;
14033					nextEffect = firstChild;
14034				} else disappearLayoutEffects_complete(subtreeRoot);
14035			}
14036		}
14037		function disappearLayoutEffects_complete(subtreeRoot) {
14038			while (nextEffect !== null) {
14039				var fiber = nextEffect;
14040				if (fiber === subtreeRoot) {
14041					nextEffect = null;
14042					return;
14043				}
14044				var sibling = fiber.sibling;
14045				if (sibling !== null) {
14046					sibling.return = fiber.return;
14047					nextEffect = sibling;
14048					return;
14049				}
14050				nextEffect = fiber.return;
14051			}
14052		}
14053		function reappearLayoutEffects_begin(subtreeRoot) {
14054			while (nextEffect !== null) {
14055				var fiber = nextEffect;
14056				var firstChild = fiber.child;
14057				if (fiber.tag === OffscreenComponent) {
14058					if (fiber.memoizedState !== null) {
14059						reappearLayoutEffects_complete(subtreeRoot);
14060						continue;
14061					}
14062				}
14063				if (firstChild !== null) {
14064					firstChild.return = fiber;
14065					nextEffect = firstChild;
14066				} else reappearLayoutEffects_complete(subtreeRoot);
14067			}
14068		}
14069		function reappearLayoutEffects_complete(subtreeRoot) {
14070			while (nextEffect !== null) {
14071				var fiber = nextEffect;
14072				setCurrentFiber(fiber);
vendor: 4,187 bytes, lines 14073-14203
14073				try {
14074					reappearLayoutEffectsOnFiber(fiber);
14075				} catch (error$1) {
14076					captureCommitPhaseError(fiber, fiber.return, error$1);
14077				}
14078				resetCurrentFiber();
14079				if (fiber === subtreeRoot) {
14080					nextEffect = null;
14081					return;
14082				}
14083				var sibling = fiber.sibling;
14084				if (sibling !== null) {
14085					sibling.return = fiber.return;
14086					nextEffect = sibling;
14087					return;
14088				}
14089				nextEffect = fiber.return;
14090			}
14091		}
14092		function commitPassiveMountEffects(root$1, finishedWork, committedLanes, committedTransitions) {
14093			nextEffect = finishedWork;
14094			commitPassiveMountEffects_begin(finishedWork, root$1, committedLanes, committedTransitions);
14095		}
14096		function commitPassiveMountEffects_begin(subtreeRoot, root$1, committedLanes, committedTransitions) {
14097			while (nextEffect !== null) {
14098				var fiber = nextEffect;
14099				var firstChild = fiber.child;
14100				if ((fiber.subtreeFlags & PassiveMask) !== NoFlags && firstChild !== null) {
14101					firstChild.return = fiber;
14102					nextEffect = firstChild;
14103				} else commitPassiveMountEffects_complete(subtreeRoot, root$1, committedLanes, committedTransitions);
14104			}
14105		}
14106		function commitPassiveMountEffects_complete(subtreeRoot, root$1, committedLanes, committedTransitions) {
14107			while (nextEffect !== null) {
14108				var fiber = nextEffect;
14109				if ((fiber.flags & Passive) !== NoFlags) {
14110					setCurrentFiber(fiber);
14111					try {
14112						commitPassiveMountOnFiber(root$1, fiber, committedLanes, committedTransitions);
14113					} catch (error$1) {
14114						captureCommitPhaseError(fiber, fiber.return, error$1);
14115					}
14116					resetCurrentFiber();
14117				}
14118				if (fiber === subtreeRoot) {
14119					nextEffect = null;
14120					return;
14121				}
14122				var sibling = fiber.sibling;
14123				if (sibling !== null) {
14124					sibling.return = fiber.return;
14125					nextEffect = sibling;
14126					return;
14127				}
14128				nextEffect = fiber.return;
14129			}
14130		}
14131		function commitPassiveMountOnFiber(finishedRoot, finishedWork, committedLanes, committedTransitions) {
14132			switch (finishedWork.tag) {
14133				case FunctionComponent:
14134				case ForwardRef:
14135				case SimpleMemoComponent:
14136					if (finishedWork.mode & ProfileMode) {
14137						startPassiveEffectTimer();
14138						try {
14139							commitHookEffectListMount(Passive$1 | HasEffect, finishedWork);
14140						} finally {
14141							recordPassiveEffectDuration(finishedWork);
14142						}
14143					} else commitHookEffectListMount(Passive$1 | HasEffect, finishedWork);
14144					break;
14145			}
14146		}
14147		function commitPassiveUnmountEffects(firstChild) {
14148			nextEffect = firstChild;
14149			commitPassiveUnmountEffects_begin();
14150		}
14151		function commitPassiveUnmountEffects_begin() {
14152			while (nextEffect !== null) {
14153				var fiber = nextEffect;
14154				var child = fiber.child;
14155				if ((nextEffect.flags & ChildDeletion) !== NoFlags) {
14156					var deletions = fiber.deletions;
14157					if (deletions !== null) {
14158						for (var i = 0; i < deletions.length; i++) {
14159							var fiberToDelete = deletions[i];
14160							nextEffect = fiberToDelete;
14161							commitPassiveUnmountEffectsInsideOfDeletedTree_begin(fiberToDelete, fiber);
14162						}
14163						var previousFiber = fiber.alternate;
14164						if (previousFiber !== null) {
14165							var detachedChild = previousFiber.child;
14166							if (detachedChild !== null) {
14167								previousFiber.child = null;
14168								do {
14169									var detachedSibling = detachedChild.sibling;
14170									detachedChild.sibling = null;
14171									detachedChild = detachedSibling;
14172								} while (detachedChild !== null);
14173							}
14174						}
14175						nextEffect = fiber;
14176					}
14177				}
14178				if ((fiber.subtreeFlags & PassiveMask) !== NoFlags && child !== null) {
14179					child.return = fiber;
14180					nextEffect = child;
14181				} else commitPassiveUnmountEffects_complete();
14182			}
14183		}
14184		function commitPassiveUnmountEffects_complete() {
14185			while (nextEffect !== null) {
14186				var fiber = nextEffect;
14187				if ((fiber.flags & Passive) !== NoFlags) {
14188					setCurrentFiber(fiber);
14189					commitPassiveUnmountOnFiber(fiber);
14190					resetCurrentFiber();
14191				}
14192				var sibling = fiber.sibling;
14193				if (sibling !== null) {
14194					sibling.return = fiber.return;
14195					nextEffect = sibling;
14196					return;
14197				}
14198				nextEffect = fiber.return;
14199			}
14200		}
14201		function commitPassiveUnmountOnFiber(finishedWork) {
14202			switch (finishedWork.tag) {
14203				case FunctionComponent:
14204				case ForwardRef:
14205				case SimpleMemoComponent:
14206					if (finishedWork.mode & ProfileMode) {
14207						startPassiveEffectTimer();
14208						commitHookEffectListUnmount(Passive$1 | HasEffect, finishedWork, finishedWork.return);
14209						recordPassiveEffectDuration(finishedWork);
14210					} else commitHookEffectListUnmount(Passive$1 | HasEffect, finishedWork, finishedWork.return);
14211					break;
14212			}
14213		}
14214		function commitPassiveUnmountEffectsInsideOfDeletedTree_begin(deletedSubtreeRoot, nearestMountedAncestor) {
14215			while (nextEffect !== null) {
14216				var fiber = nextEffect;
14217				setCurrentFiber(fiber);
14218				commitPassiveUnmountInsideDeletedTreeOnFiber(fiber, nearestMountedAncestor);
14219				resetCurrentFiber();
14220				var child = fiber.child;
14221				if (child !== null) {
14222					child.return = fiber;
14223					nextEffect = child;
14224				} else commitPassiveUnmountEffectsInsideOfDeletedTree_complete(deletedSubtreeRoot);
14225			}
14226		}
14227		function commitPassiveUnmountEffectsInsideOfDeletedTree_complete(deletedSubtreeRoot) {
14228			while (nextEffect !== null) {
14229				var fiber = nextEffect;
14230				var sibling = fiber.sibling;
14231				var returnFiber = fiber.return;
14232				detachFiberAfterEffects(fiber);
14233				if (fiber === deletedSubtreeRoot) {
14234					nextEffect = null;
14235					return;
14236				}
14237				if (sibling !== null) {
14238					sibling.return = returnFiber;
14239					nextEffect = sibling;
14240					return;
14241				}
14242				nextEffect = returnFiber;
14243			}
14244		}
14245		function commitPassiveUnmountInsideDeletedTreeOnFiber(current$1, nearestMountedAncestor) {
14246			switch (current$1.tag) {
14247				case FunctionComponent:
14248				case ForwardRef:
14249				case SimpleMemoComponent:
14250					if (current$1.mode & ProfileMode) {
14251						startPassiveEffectTimer();
14252						commitHookEffectListUnmount(Passive$1, current$1, nearestMountedAncestor);
14253						recordPassiveEffectDuration(current$1);
14254					} else commitHookEffectListUnmount(Passive$1, current$1, nearestMountedAncestor);
14255					break;
14256			}
14257		}
14258		function invokeLayoutEffectMountInDEV(fiber) {
14259			switch (fiber.tag) {
14260				case FunctionComponent:
14261				case ForwardRef:
14262				case SimpleMemoComponent:
14263					try {
14264						commitHookEffectListMount(Layout | HasEffect, fiber);
14265					} catch (error$1) {
14266						captureCommitPhaseError(fiber, fiber.return, error$1);
14267					}
14268					break;
14269				case ClassComponent:
14270					var instance = fiber.stateNode;
14271					try {
14272						instance.componentDidMount();
14273					} catch (error$1) {
14274						captureCommitPhaseError(fiber, fiber.return, error$1);
14275					}
14276					break;
14277			}
14278		}
14279		function invokePassiveEffectMountInDEV(fiber) {
14280			switch (fiber.tag) {
14281				case FunctionComponent:
14282				case ForwardRef:
14283				case SimpleMemoComponent:
14284					try {
14285						commitHookEffectListMount(Passive$1 | HasEffect, fiber);
14286					} catch (error$1) {
14287						captureCommitPhaseError(fiber, fiber.return, error$1);
14288					}
14289					break;
14290			}
14291		}
14292		function invokeLayoutEffectUnmountInDEV(fiber) {
14293			switch (fiber.tag) {
14294				case FunctionComponent:
14295				case ForwardRef:
14296				case SimpleMemoComponent:
14297					try {
14298						commitHookEffectListUnmount(Layout | HasEffect, fiber, fiber.return);
14299					} catch (error$1) {
14300						captureCommitPhaseError(fiber, fiber.return, error$1);
14301					}
14302					break;
14303				case ClassComponent:
14304					var instance = fiber.stateNode;
14305					if (typeof instance.componentWillUnmount === "function") safelyCallComponentWillUnmount(fiber, fiber.return, instance);
14306					break;
14307			}
14308		}
14309		function invokePassiveEffectUnmountInDEV(fiber) {
14310			switch (fiber.tag) {
14311				case FunctionComponent:
14312				case ForwardRef:
14313				case SimpleMemoComponent: try {
14314					commitHookEffectListUnmount(Passive$1 | HasEffect, fiber, fiber.return);
14315				} catch (error$1) {
14316					captureCommitPhaseError(fiber, fiber.return, error$1);
14317				}
14318			}
14319		}
14320		if (typeof Symbol === "function" && Symbol.for) {
14321			var symbolFor = Symbol.for;
14322			symbolFor("selector.component");
14323			symbolFor("selector.has_pseudo_class");
14324			symbolFor("selector.role");
14325			symbolFor("selector.test_id");
14326			symbolFor("selector.text");
14327		}
14328		var commitHooks = [];
14329		function onCommitRoot$1() {
14330			commitHooks.forEach(function(commitHook) {
14331				return commitHook();
14332			});
14333		}
14334		var ReactCurrentActQueue = ReactSharedInternals.ReactCurrentActQueue;
14335		function isLegacyActEnvironment(fiber) {
14336			var isReactActEnvironmentGlobal = typeof IS_REACT_ACT_ENVIRONMENT !== "undefined" ? IS_REACT_ACT_ENVIRONMENT : void 0;
14337			return typeof jest !== "undefined" && isReactActEnvironmentGlobal !== false;
14338		}
14339		function isConcurrentActEnvironment() {
14340			var isReactActEnvironmentGlobal = typeof IS_REACT_ACT_ENVIRONMENT !== "undefined" ? IS_REACT_ACT_ENVIRONMENT : void 0;
14341			if (!isReactActEnvironmentGlobal && ReactCurrentActQueue.current !== null) error("The current testing environment is not configured to support act(...)");
14342			return isReactActEnvironmentGlobal;
14343		}
14344		var ceil = Math.ceil;
14345		var ReactCurrentDispatcher$2 = ReactSharedInternals.ReactCurrentDispatcher, ReactCurrentOwner$2 = ReactSharedInternals.ReactCurrentOwner, ReactCurrentBatchConfig$3 = ReactSharedInternals.ReactCurrentBatchConfig, ReactCurrentActQueue$1 = ReactSharedInternals.ReactCurrentActQueue;
14346		var NoContext = 0;
14347		var BatchedContext = 1;
14348		var RenderContext = 2;
14349		var CommitContext = 4;
14350		var RootInProgress = 0;
14351		var RootFatalErrored = 1;
14352		var RootErrored = 2;
14353		var RootSuspended = 3;
14354		var RootSuspendedWithDelay = 4;
14355		var RootCompleted = 5;
14356		var RootDidNotComplete = 6;
14357		var executionContext = NoContext;
14358		var workInProgressRoot = null;
14359		var workInProgress = null;
14360		var workInProgressRootRenderLanes = NoLanes;
14361		var subtreeRenderLanes = NoLanes;
14362		var subtreeRenderLanesCursor = createCursor(NoLanes);
14363		var workInProgressRootExitStatus = RootInProgress;
14364		var workInProgressRootFatalError = null;
14365		var workInProgressRootIncludedLanes = NoLanes;
14366		var workInProgressRootSkippedLanes = NoLanes;
14367		var workInProgressRootInterleavedUpdatedLanes = NoLanes;
14368		var workInProgressRootPingedLanes = NoLanes;
14369		var workInProgressRootConcurrentErrors = null;
14370		var workInProgressRootRecoverableErrors = null;
14371		var globalMostRecentFallbackTime = 0;
14372		var FALLBACK_THROTTLE_MS = 500;
14373		var workInProgressRootRenderTargetTime = Infinity;
14374		var RENDER_TIMEOUT_MS = 500;
14375		var workInProgressTransitions = null;
14376		function resetRenderTimer() {
14377			workInProgressRootRenderTargetTime = now() + RENDER_TIMEOUT_MS;
14378		}
14379		function getRenderTargetTime() {
14380			return workInProgressRootRenderTargetTime;
14381		}
14382		var hasUncaughtError = false;
14383		var firstUncaughtError = null;
14384		var legacyErrorBoundariesThatAlreadyFailed = null;
14385		var rootDoesHavePassiveEffects = false;
14386		var rootWithPendingPassiveEffects = null;
14387		var pendingPassiveEffectsLanes = NoLanes;
14388		var pendingPassiveProfilerEffects = [];
14389		var pendingPassiveTransitions = null;
14390		var NESTED_UPDATE_LIMIT = 50;
14391		var nestedUpdateCount = 0;
14392		var rootWithNestedUpdates = null;
14393		var isFlushingPassiveEffects = false;
14394		var didScheduleUpdateDuringPassiveEffects = false;
14395		var NESTED_PASSIVE_UPDATE_LIMIT = 50;
14396		var nestedPassiveUpdateCount = 0;
14397		var rootWithPassiveNestedUpdates = null;
14398		var currentEventTime = NoTimestamp;
14399		var currentEventTransitionLane = NoLanes;
14400		var isRunningInsertionEffect = false;
14401		function getWorkInProgressRoot() {
14402			return workInProgressRoot;
14403		}
14404		function requestEventTime() {
14405			if ((executionContext & (RenderContext | CommitContext)) !== NoContext) return now();
14406			if (currentEventTime !== NoTimestamp) return currentEventTime;
14407			currentEventTime = now();
14408			return currentEventTime;
14409		}
14410		function requestUpdateLane(fiber) {
14411			if ((fiber.mode & ConcurrentMode) === NoMode) return SyncLane;
14412			else if ((executionContext & RenderContext) !== NoContext && workInProgressRootRenderLanes !== NoLanes) return pickArbitraryLane(workInProgressRootRenderLanes);
14413			if (requestCurrentTransition() !== NoTransition) {
14414				if (ReactCurrentBatchConfig$3.transition !== null) {
14415					var transition = ReactCurrentBatchConfig$3.transition;
14416					if (!transition._updatedFibers) transition._updatedFibers = /* @__PURE__ */ new Set();
14417					transition._updatedFibers.add(fiber);
14418				}
14419				if (currentEventTransitionLane === NoLane) currentEventTransitionLane = claimNextTransitionLane();
14420				return currentEventTransitionLane;
14421			}
14422			var updateLane = getCurrentUpdatePriority();
14423			if (updateLane !== NoLane) return updateLane;
14424			return getCurrentEventPriority();
14425		}
14426		function requestRetryLane(fiber) {
14427			if ((fiber.mode & ConcurrentMode) === NoMode) return SyncLane;
14428			return claimNextRetryLane();
14429		}
14430		function scheduleUpdateOnFiber(root$1, fiber, lane, eventTime) {
14431			checkForNestedUpdates();
14432			if (isRunningInsertionEffect) error("useInsertionEffect must not schedule updates.");
14433			if (isFlushingPassiveEffects) didScheduleUpdateDuringPassiveEffects = true;
14434			markRootUpdated(root$1, lane, eventTime);
14435			if ((executionContext & RenderContext) !== NoLanes && root$1 === workInProgressRoot) warnAboutRenderPhaseUpdatesInDEV(fiber);
14436			else {
14437				if (isDevToolsPresent) addFiberToLanesMap(root$1, fiber, lane);
14438				warnIfUpdatesNotWrappedWithActDEV(fiber);
14439				if (root$1 === workInProgressRoot) {
14440					if ((executionContext & RenderContext) === NoContext) workInProgressRootInterleavedU
14440pdatedLanes = mergeLanes(workInProgressRootInterleavedUpdatedLanes, lane);
14441					if (workInProgressRootExitStatus === RootSuspendedWithDelay) markRootSuspended$1(root$1, workInProgressRootRenderLanes);
14442				}
14443				ensureRootIsScheduled(root$1, eventTime);
14444				if (lane === SyncLane && executionContext === NoContext && (fiber.mode & ConcurrentMode) === NoMode && !ReactCurrentActQueue$1.isBatchingLegacy) {
14445					resetRenderTimer();
14446					flushSyncCallbacksOnlyInLegacyMode();
14447				}
14448			}
14449		}
14450		function scheduleInitialHydrationOnRoot(root$1, lane, eventTime) {
14451			var current$1 = root$1.current;
14452			current$1.lanes = lane;
14453			markRootUpdated(root$1, lane, eventTime);
14454			ensureRootIsScheduled(root$1, eventTime);
14455		}
14456		function isUnsafeClassRenderPhaseUpdate(fiber) {
14457			return (executionContext & RenderContext) !== NoContext;
14458		}
14459		function ensureRootIsScheduled(root$1, currentTime) {
14460			var existingCallbackNode = root$1.callbackNode;
14461			markStarvedLanesAsExpired(root$1, currentTime);
14462			var nextLanes = getNextLanes(root$1, root$1 === workInProgressRoot ? workInProgressRootRenderLanes : NoLanes);
14463			if (nextLanes === NoLanes) {
14464				if (existingCallbackNode !== null) cancelCallback$1(existingCallbackNode);
14465				root$1.callbackNode = null;
14466				root$1.callbackPriority = NoLane;
14467				return;
14468			}
14469			var newCallbackPriority = getHighestPriorityLane(nextLanes);
14470			var existingCallbackPriority = root$1.callbackPriority;
14471			if (existingCallbackPriority === newCallbackPriority && !(ReactCurrentActQueue$1.current !== null && existingCallbackNode !== fakeActCallbackNode)) {
14472				if (existingCallbackNode == null && existingCallbackPriority !== SyncLane) error("Expected scheduled callback to exist. This error is likely caused by a bug in React. Please file an issue.");
14473				return;
14474			}
14475			if (existingCallbackNode != null) cancelCallback$1(existingCallbackNode);
14476			var newCallbackNode;
14477			if (newCallbackPriority === SyncLane) {
14478				if (root$1.tag === LegacyRoot) {
14479					if (ReactCurrentActQueue$1.isBatchingLegacy !== null) ReactCurrentActQueue$1.didScheduleLegacyUpdate = true;
14480					scheduleLegacySyncCallback(performSyncWorkOnRoot.bind(null, root$1));
14481				} else scheduleSyncCallback(performSyncWorkOnRoot.bind(null, root$1));
14482				if (ReactCurrentActQueue$1.current !== null) ReactCurrentActQueue$1.current.push(flushSyncCallbacks);
14483				else scheduleMicrotask(function() {
14484					if ((executionContext & (RenderContext | CommitContext)) === NoContext) flushSyncCallbacks();
14485				});
14486				newCallbackNode = null;
14487			} else {
14488				var schedulerPriorityLevel;
14489				switch (lanesToEventPriority(nextLanes)) {
14490					case DiscreteEventPriority:
14491						schedulerPriorityLevel = ImmediatePriority;
14492						break;
14493					case ContinuousEventPriority:
14494						schedulerPriorityLevel = UserBlockingPriority;
14495						break;
14496					case DefaultEventPriority:
14497						schedulerPriorityLevel = NormalPriority;
14498						break;
14499					case IdleEventPriority:
14500						schedulerPriorityLevel = IdlePriority;
14501						break;
14502					default:
14503						schedulerPriorityLevel = NormalPriority;
14504						break;
14505				}
14506				newCallbackNode = scheduleCallback$1(schedulerPriorityLevel, performConcurrentWorkOnRoot.bind(null, root$1));
14507			}
14508			root$1.callbackPriority = newCallbackPriority;
14509			root$1.callbackNode = newCallbackNode;
14510		}
14511		function performConcurrentWorkOnRoot(root$1, didTimeout) {
14512			resetNestedUpdateFlag();
14513			currentEventTime = NoTimestamp;
14514			currentEventTransitionLane = NoLanes;
14515			if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw new Error("Should not already be working.");
14516			var originalCallbackNode = root$1.callbackNode;
14517			if (flushPassiveEffects()) {
14518				if (root$1.callbackNode !== originalCallbackNode) return null;
14519			}
14520			var lanes = getNextLanes(root$1, root$1 === workInProgressRoot ? workInProgressRootRenderLanes : NoLanes);
14521			if (lanes === NoLanes) return null;
14522			var exitStatus = !includesBlockingLane(root$1, lanes) && !includesExpiredLane(root$1, lanes) && !didTimeout ? renderRootConcurrent(root$1, lanes) : renderRootSync(root$1, lanes);
14523			if (exitStatus !== RootInProgress) {
14524				if (exitStatus === RootErrored) {
14525					var errorRetryLanes = getLanesToRetrySynchronouslyOnError(root$1);
14526					if (errorRetryLanes !== NoLanes) {
14527						lanes = errorRetryLanes;
14528						exitStatus = recoverFromConcurrentError(root$1, errorRetryLanes);
14529					}
14530				}
14531				if (exitStatus === RootFatalErrored) {
14532					var fatalError = workInProgressRootFatalError;
14533					prepareFreshStack(root$1, NoLanes);
14534					markRootSuspended$1(root$1, lanes);
14535					ensureRootIsScheduled(root$1, now());
14536					throw fatalError;
14537				}
14538				if (exitStatus === RootDidNotComplete) markRootSuspended$1(root$1, lanes);
14539				else {
14540					var renderWasConcurrent = !includesBlockingLane(root$1, lanes);
14541					var finishedWork = root$1.current.alternate;
14542					if (renderWasConcurrent && !isRenderConsistentWithExternalStores(finishedWork)) {
14543						exitStatus = renderRootSync(root$1, lanes);
14544						if (exitStatus === RootErrored) {
14545							var _errorRetryLanes = getLanesToRetrySynchronouslyOnError(root$1);
14546							if (_errorRetryLanes !== NoLanes) {
14547								lanes = _errorRetryLanes;
14548								exitStatus = recoverFromConcurrentError(root$1, _errorRetryLanes);
14549							}
14550						}
14551						if (exitStatus === RootFatalErrored) {
14552							var _fatalError = workInProgressRootFatalError;
14553							prepareFreshStack(root$1, NoLanes);
14554							markRootSuspended$1(root$1, lanes);
14555							ensureRootIsScheduled(root$1, now());
14556							throw _fatalError;
14557						}
14558					}
14559					root$1.finishedWork = finishedWork;
14560					root$1.finishedLanes = lanes;
14561					finishConcurrentRender(root$1, exitStatus, lanes);
14562				}
14563			}
14564			ensureRootIsScheduled(root$1, now());
14565			if (root$1.callbackNode === originalCallbackNode) return performConcurrentWorkOnRoot.bind(null, root$1);
14566			return null;
14567		}
14568		function recoverFromConcurrentError(root$1, errorRetryLanes) {
14569			var errorsFromFirstAttempt = workInProgressRootConcurrentErrors;
14570			if (isRootDehydrated(root$1)) {
14571				var rootWorkInProgress = prepareFreshStack(root$1, errorRetryLanes);
14572				rootWorkInProgress.flags |= ForceClientRender;
14573				errorHydratingContainer(root$1.containerInfo);
14574			}
14575			var exitStatus = renderRootSync(root$1, errorRetryLanes);
14576			if (exitStatus !== RootErrored) {
14577				var errorsFromSecondAttempt = workInProgressRootRecoverableErrors;
14578				workInProgressRootRecoverableErrors = errorsFromFirstAttempt;
14579				if (errorsFromSecondAttempt !== null) queueRecoverableErrors(errorsFromSecondAttempt);
14580			}
14581			return exitStatus;
14582		}
14583		function queueRecoverableErrors(errors) {
14584			if (workInProgressRootRecoverableErrors === null) workInProgressRootRecoverableErrors = errors;
14585			else workInProgressRootRecoverableErrors.push.apply(workInProgressRootRecoverableErrors, errors);
14586		}
14587		function finishConcurrentRender(root$1, exitStatus, lanes) {
14588			switch (exitStatus) {
14589				case RootInProgress:
14590				case RootFatalErrored: throw new Error("Root did not complete. This is a bug in React.");
14591				case RootErrored:
14592					commitRoot(root$1, workInProgressRootRecoverableErrors, workInProgressTransitions);
14593					break;
14594				case RootSuspended:
14595					markRootSuspended$1(root$1, lanes);
14596					if (includesOnlyRetries(lanes) && !shouldForceFlushFallbacksInDEV()) {
14597						var msUntilTimeout = globalMostRecentFallbackTime + FALLBACK_THROTTLE_MS - now();
14598						if (msUntilTimeout > 10) {
14599							if (getNextLanes(root$1, NoLanes) !== NoLanes) break;
14600							var suspendedLanes = root$1.suspendedLanes;
14601							if (!isSubsetOfLanes(suspendedLanes, lanes)) {
14602								requestEventTime();
14603								markRootPinged(root$1, suspendedLanes);
14604								break;
14605							}
14606							root$1.timeoutHandle = scheduleTimeout(commitRoot.bind(null, root$1, workInProgressRootRecoverableErrors, workInProgressTransitions), msUntilTimeout);
14607							break;
14608						}
14609					}
14610					commitRoot(root$1, workInProgressRootRecoverableErrors, workInProgressTransitions);
14611					break;
14612				case RootSuspendedWithDelay:
14613					markRootSuspended$1(root$1, lanes);
14614					if (includesOnlyTransitions(lanes)) break;
14615					if (!shouldForceFlushFallbacksInDEV()) {
14616						var eventTimeMs = getMostRecentEventTime(root$1, lanes);
14617						var timeElapsedMs = now() - eventTimeMs;
14618						var _msUntilTimeout = jnd(timeElapsedMs) - timeElapsedMs;
14619						if (_msUntilTimeout > 10) {
14620							root$1.timeoutHandle = scheduleTimeout(commitRoot.bind(null, root$1, workInProgressRootRecoverableErrors, workInProgressTransitions), _msUntilTimeout);
14621							break;
14622						}
14623					}
14624					commitRoot(root$1, workInProgressRootRecoverableErrors, workInProgressTransitions);
14625					break;
14626				case RootCompleted:
14627					commitRoot(root$1, workInProgressRootRecoverableErrors, workInProgressTransitions);
14628					break;
14629				default: throw new Error("Unknown root exit status.");
14630			}
14631		}
14632		function isRenderConsistentWithExternalStores(finishedWork) {
14633			var node = finishedWork;
14634			while (true) {
14635				if (node.flags & StoreConsistency) {
14636					var updateQueue = node.updateQueue;
14637					if (updateQueue !== null) {
14638						var checks = updateQueue.stores;
14639						if (checks !== null) for (var i = 0; i < checks.length; i++) {
14640							var check = checks[i];
14641							var getSnapshot = check.getSnapshot;
14642							var renderedValue = check.value;
14643							try {
14644								if (!objectIs(getSnapshot(), renderedValue)) return false;
14645							} catch (error$1) {
14646								return false;
14647							}
14648						}
14649					}
14650				}
14651				var child = node.child;
14652				if (node.subtreeFlags & StoreConsistency && child !== null) {
14653					child.return = node;
14654					node = child;
14655					continue;
14656				}
14657				if (node === finishedWork) return true;
14658				while (node.sibling === null) {
14659					if (node.return === null || node.return === finishedWork) return true;
14660					node = node.return;
14661				}
14662				node.sibling.return = node.return;
14663				node = node.sibling;
14664			}
14665			return true;
14666		}
14667		function markRootSuspended$1(root$1, suspendedLanes) {
14668			suspendedLanes = removeLanes(suspendedLanes, workInProgressRootPingedLanes);
14669			suspendedLanes = removeLanes(suspendedLanes, workInProgressRootInterleavedUpdatedLanes);
14670			markRootSuspended(root$1, suspendedLanes);
14671		}
14672		function performSyncWorkOnRoot(root$1) {
14673			syncNestedUpdateFlag();
14674			if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw new Error("Should not already be working.");
14675			flushPassiveEffects();
14676			var lanes = getNextLanes(root$1, NoLanes);
14677			if (!includesSomeLane(lanes, SyncLane)) {
14678				ensureRootIsScheduled(root$1, now());
14679				return null;
14680			}
14681			var exitStatus = renderRootSync(root$1, lanes);
14682			if (root$1.tag !== LegacyRoot && exitStatus === RootErrored) {
14683				var errorRetryLanes = getLanesToRetrySynchronouslyOnError(root$1);
14684				if (errorRetryLanes !== NoLanes) {
14685					lanes = errorRetryLanes;
14686					exitStatus = recoverFromConcurrentError(root$1, errorRetryLanes);
14687				}
14688			}
14689			if (exitStatus === RootFatalErrored) {
14690				var fatalError = workInProgressRootFatalError;
14691				prepareFreshStack(root$1, NoLanes);
14692				markRootSuspended$1(root$1, lanes);
14693				ensureRootIsScheduled(root$1, now());
14694				throw fatalError;
14695			}
14696			if (exitStatus === RootDidNotComplete) throw new Error("Root did not complete. This is a bug in React.");
14697			root$1.finishedWork = root$1.current.alternate;
14698			root$1.finishedLanes = lanes;
14699			commitRoot(root$1, workInProgressRootRecoverableErrors, workInProgressTransitions);
14700			ensureRootIsScheduled(root$1, now());
14701			return null;
14702		}
14703		function flushRoot(root$1, lanes) {
14704			if (lanes !== NoLanes) {
14705				markRootEntangled(root$1, mergeLanes(lanes, SyncLane));
14706				ensureRootIsScheduled(root$1, now());
14707				if ((executionContext & (RenderContext | CommitContext)) === NoContext) {
14708					resetRenderTimer();
14709					flushSyncCallbacks();
14710				}
14711			}
14712		}
14713		function batchedUpdates$1(fn, a) {
14714			var prevExecutionContext = executionContext;
14715			executionContext |= BatchedContext;
14716			try {
14717				return fn(a);
14718			} finally {
14719				executionContext = prevExecutionContext;
14720				if (executionContext === NoContext && !ReactCurrentActQueue$1.isBatchingLegacy) {
14721					resetRenderTimer();
14722					flushSyncCallbacksOnlyInLegacyMode();
14723				}
14724			}
14725		}
14726		function discreteUpdates(fn, a, b, c, d) {
14727			var previousPriority = getCurrentUpdatePriority();
14728			var prevTransition = ReactCurrentBatchConfig$3.transition;
14729			try {
14730				ReactCurrentBatchConfig$3.transition = null;
14731				setCurrentUpdatePriority(DiscreteEventPriority);
14732				return fn(a, b, c, d);
14733			} finally {
14734				setCurrentUpdatePriority(previousPriority);
14735				ReactCurrentBatchConfig$3.transition = prevTransition;
14736				if (executionContext === NoContext) resetRenderTimer();
14737			}
14738		}
14739		function flushSync(fn) {
14740			if (rootWithPendingPassiveEffects !== null && rootWithPendingPassiveEffects.tag === LegacyRoot && (executionContext & (RenderContext | CommitContext)) === NoContext) flushPassiveEffects();
14741			var prevExecutionContext = executionContext;
14742			executionContext |= BatchedContext;
14743			var prevTransition = ReactCurrentBatchConfig$3.transition;
14744			var previousPriority = getCurrentUpdatePriority();
14745			try {
14746				ReactCurrentBatchConfig$3.transition = null;
14747				setCurrentUpdatePriority(DiscreteEventPriority);
14748				if (fn) return fn();
14749				else return;
14750			} finally {
14751				setCurrentUpdatePriority(previousPriority);
14752				ReactCurrentBatchConfig$3.transition = prevTransition;
14753				executionContext = prevExecutionContext;
14754				if ((executionContext & (RenderContext | CommitContext)) === NoContext) flushSyncCallbacks();
14755			}
14756		}
14757		function isAlreadyRendering() {
14758			return (executionContext & (RenderContext | CommitContext)) !== NoContext;
14759		}
14760		function pushRenderLanes(fiber, lanes) {
14761			push(subtreeRenderLanesCursor, subtreeRenderLanes, fiber);
14762			subtreeRenderLanes = mergeLanes(subtreeRenderLanes, lanes);
14763			workInProgressRootIncludedLanes = mergeLanes(workInProgressRootIncludedLanes, lanes);
14764		}
14765		function popRenderLanes(fiber) {
14766			subtreeRenderLanes = subtreeRenderLanesCursor.current;
14767			pop(subtreeRenderLanesCursor, fiber);
14768		}
14769		function prepareFreshStack(root$1, lanes) {
14770			root$1.finishedWork = null;
14771			root$1.finishedLanes = NoLanes;
14772			var timeoutHandle = root$1.timeoutHandle;
14773			if (timeoutHandle !== noTimeout) {
14774				root$1.timeoutHandle = noTimeout;
14775				cancelTimeout(timeoutHandle);
14776			}
14777			if (workInProgress !== null) {
14778				var interruptedWork = workInProgress.return;
14779				while (interruptedWork !== null) {
14780					var current$1 = interruptedWork.alternate;
14781					unwindInterruptedWork(current$1, interruptedWork);
14782					interruptedWork = interruptedWork.return;
14783				}
14784			}
14785			workInProgressRoot = root$1;
14786			var rootWorkInProgress = createWorkInProgress(root$1.current, null);
14787			workInProgress = rootWorkInProgress;
14788			workInProgressRootRenderLanes = subtreeRenderLanes = workInProgressRootIncludedLanes = lanes;
14789			workInProgressRootExitStatus = RootInProgress;
14790			workInProgressRootFatalError = null;
14791			workInProgressRootSkippedLanes = NoLanes;
14792			workInProgressRootInterleavedUpdatedLanes = NoLanes;
14793			workInProgressRootPingedLanes = NoLanes;
14794			workInProgressRootConcurrentErrors = null;
14795			workInProgressRootRecoverableErrors = null;
14796			finishQueueingConcurrentUpdates();
14797			ReactStrictModeWarnings.discardPendingWarnings();
14798			return rootWorkInProgress;
14799		}
14800		function handleError(root$1, thrownValue) {
14801			do {
14802				var erroredWork = workInProgress;
14803				try {
14804					resetContextDependencies();
14805					resetHooksAfterThrow();
14806					resetCurrentFiber();
14807					ReactCurrentOwner$2.current = null;
14808					if (erroredWork === null || erroredWork.return === null) {
14809						workInProgressRootExitStatus = RootFatalErrored;
14810						workInProgressRootFatalError = thrownValue;
14811						workInProgress = null;
14812						return;
14813					}
14814					if (enableProfilerTimer && erroredWork.mode & ProfileMode) stopProfilerTimerIfRunningAndRecordDelta(erroredWork, true);
14815					if (enableSchedulingProfiler) {
14816						markComponentRenderStopped();
14817						if (thrownValue !== null && typeof thrownValue === "object" && typeof thrownValue.then === "function") markComponentSuspended(erroredWork, thrownValue, workInProgressRootRenderLanes);
14818						else markComponentErrored(erroredWork, thrownValue, workInProgressRootRenderLanes);
14819					}
14820					throwException(root$1, erroredWork.return, erroredWork, thrownValue, workInProgressRootRenderLanes);
14821					completeUnitOfWork(erroredWork);
14822				} catch (yetAnotherThrownValue) {
14823					thrownValue = yetAnotherThrownValue;
14824					if (workInProgress === erroredWork && erroredWork !== null) {
14825						erroredWork = erroredWork.return;
14826						workInProgress = erroredWork;
14827					} else erroredWork = workInProgress;
14828					continue;
14829				}
14830				return;
14831			} while (true);
14832		}
14833		function pushDispatcher() {
14834			var prevDispatcher = ReactCurrentDispatcher$2.current;
14835			ReactCurrentDispatcher$2.current = ContextOnlyDispatcher;
14836			if (prevDispatcher === null) return ContextOnlyDispatcher;
14837			else return prevDispatcher;
14838		}
14839		function popDispatcher(prevDispatcher) {
14840			ReactCurrentDispatcher$2.current = prevDispatcher;
14841		}
14842		function markCommitTimeOfFallback() {
14843			globalMostRecentFallbackTime = now();
14844		}
14845		function markSkippedUpdateLanes(lane) {
14846			workInProgressRootSkippedLanes = mergeLanes(lane, workInProgressRootSkippedLanes);
14847		}
14848		function renderDidSuspend() {
14849			if (workInProgressRootExitStatus === RootInProgress) workInProgressRootExitStatus = RootSuspended;
14850		}
14851		function renderDidSuspendDelayIfPossible() {
14852			if (workInProgressRootExitStatus === RootInProgress || workInProgressRootExitStatus === RootSuspended || workInProgressRootExitStatus === RootErrored) workInProgressRootExitStatus = RootSuspendedWithDelay;
14853			if (workInProgressRoot !== null && (includesNonIdleWork(workInProgressRootSkippedLanes) || includesNonIdleWork(workInProgressRootInterleavedUpdatedLanes))) markRootSuspended$1(workInProgressRoot, workInProgressRootRenderLanes);
14854		}
14855		function renderDidError(error$1) {
14856			if (workInProgressRootExitStatus !== RootSuspendedWithDelay) workInProgressRootExitStatus = RootErrored;
14857			if (workInProgressRootConcurrentErrors === null) workInProgressRootConcurrentErrors = [error$1];
14858			else workInProgressRootConcurrentErrors.push(error$1);
14859		}
14860		function renderHasNotSuspendedYet() {
14861			return workInProgressRootExitStatus === RootInProgress;
14862		}
14863		function renderRootSync(root$1, lanes) {
14864			var prevExecutionContext = executionContext;
14865			executionContext |= RenderContext;
14866			var prevDispatcher = pushDispatcher();
14867			if (workInProgressRoot !== root$1 || workInProgressRootRenderLanes !== lanes) {
14868				if (isDevToolsPresent) {
14869					var memoizedUpdaters = root$1.memoizedUpdaters;
14870					if (memoizedUpdaters.size > 0) {
14871						restorePendingUpdaters(root$1, workInProgressRootRenderLanes);
14872						memoizedUpdaters.clear();
14873					}
14874					movePendingFibersToMemoized(root$1, lanes);
14875				}
14876				workInProgressTransitions = getTransitionsForLanes();
14877				prepareFreshStack(root$1, lanes);
14878			}
14879			markRenderStarted(lanes);
14880			do
14881				try {
14882					workLoopSync();
14883					break;
14884				} catch (thrownValue) {
14885					handleError(root$1, thrownValue);
14886				}
14887			while (true);
14888			resetContextDependencies();
14889			executionContext = prevExecutionContext;
14890			popDispatcher(prevDispatcher);
14891			if (workInProgress !== null) throw new Error("Cannot commit an incomplete root. This error is likely caused by a bug in React. Please file an issue.");
14892			markRenderStopped();
14893			workInProgressRoot = null;
14894			workInProgressRootRenderLanes = NoLanes;
14895			return workInProgressRootExitStatus;
14896		}
14897		function workLoopSync() {
14898			while (workInProgress !== null) performUnitOfWork(workInProgress);
14899		}
14900		function renderRootConcurrent(root$1, lanes) {
14901			var prevExecutionContext = executionContext;
14902			executionContext |= RenderContext;
14903			var prevDispatcher = pushDispatcher();
14904			if (workInProgressRoot !== root$1 || workInProgressRootRenderLanes !== lanes) {
14905				if (isDevToolsPresent) {
14906					var memoizedUpdaters = root$1.memoizedUpdaters;
14907					if (memoizedUpdaters.size > 0) {
14908						restorePendingUpdaters(root$1, workInProgressRootRenderLanes);
14909						memoizedUpdaters.clear();
14910					}
14911					movePendingFibersToMemoized(root$1, lanes);
14912				}
14913				workInProgressTransitions = getTransitionsForLanes();
14914				resetRenderTimer();
14915				prepareFreshStack(root$1, lanes);
14916			}
14917			markRenderStarted(lanes);
14918			do
14919				try {
14920					workLoopConcurrent();
14921					break;
14922				} catch (thrownValue) {
14923					handleError(root$1, thrownValue);
14924				}
14925			while (true);
14926			resetContextDependencies();
14927			popDispatcher(prevDispatcher);
14928			executionContext = prevExecutionContext;
14929			if (workInProgress !== null) {
14930				markRenderYielded();
14931				return RootInProgress;
14932			} else {
14933				markRenderStopped();
14934				workInProgressRoot = null;
14935				workInProgressRootRenderLanes = NoLanes;
14936				return workInProgressRootExitStatus;
14937			}
14938		}
14939		function workLoopConcurrent() {
14940			while (workInProgress !== null && !shouldYield()) performUnitOfWork(workInProgress);
14941		}
14942		function performUnitOfWork(unitOfWork) {
14943			var current$1 = unitOfWork.alternate;
14944			setCurrentFiber(unitOfWork);
14945			var next;
14946			if ((unitOfWork.mode & ProfileMode) !== NoMode) {
14947				startProfilerTimer(unitOfWork);
14948				next = beginWork$1(current$1, unitOfWork, subtreeRenderLanes);
14949				stopProfilerTimerIfRunningAndRecordDelta(unitOfWork, true);
14950			} else next = beginWork$1(current$1, unitOfWork, subtreeRenderLanes);
14951			resetCurrentFiber();
14952			unitOfWork.memoizedProps = unitOfWork.pendingProps;
14953			if (next === null) completeUnitOfWork(unitOfWork);
14954			else workInProgress = next;
14955			ReactCurrentOwner$2.current = null;
14956		}
14957		function completeUnitOfWork(unitOfWork) {
14958			var completedWork = unitOfWork;
14959			do {
14960				var current$1 = completedWork.alternate;
14961				var returnFiber = completedWork.return;
14962				if ((completedWork.flags & Incomplete) === NoFlags) {
14963					setCurrentFiber(completedWork);
14964					var next = void 0;
14965					if ((completedWork.mode & ProfileMode) === NoMode) next = completeWork(current$1, completedWork, subtreeRenderLanes);
14966					else {
14967						startProfilerTimer(completedWork);
14968						next = completeWork(current$1, completedWork, subtreeRenderLanes);
14969						stopProfilerTimerIfRunningAndRecordDelta(completedWork, false);
14970					}
14971					resetCurrentFiber();
14972					if (next !== null) {
14973						workInProgress = next;
14974						return;
14975					}
14976				} else {
14977					var _next = unwindWork(current$1, completedWork);
14978					if (_next !== null) {
14979						_next.flags &= HostEffectMask;
14980						workInProgress = _next;
14981						return;
14982					}
14983					if ((completedWork.mode & ProfileMode) !== NoMode) {
14984						stopProfilerTimerIfRunningAndRecordDelta(completedWork, false);
14985						var actualDuration = completedWork.actualDuration;
14986						var child = completedWork.child;
14987						while (child !== null) {
14988							actualDuration += child.actualDuration;
14989							child = child.sibling;
14990						}
14991						completedWork.actualDuration = actualDuration;
14992					}
14993					if (returnFiber !== null) {
14994						returnFiber.flags |= Incomplete;
14995						returnFiber.subtreeFlags = NoFlags;
14996						returnFiber.deletions = null;
14997					} else {
14998						workInProgressRootExitStatus = RootDidNotComplete;
14999						workInProgress = null;
15000						return;
15001					}
15002				}
15003				var siblingFiber = completedWork.sibling;
15004				if (siblingFiber !== null) {
15005					workInProgress = siblingFiber;
15006					return;
15007				}
15008				completedWork = returnFiber;
15009				workInProgress = completedWork;
15010			} while (completedWork !== null);
15011			if (workInProgressRootExitStatus === RootInProgress) workInProgressRootExitStatus = RootCompleted;
15012		}
15013		function commitRoot(root$1, recoverableErrors, transitions) {
15014			var previousUpdateLanePriority = getCurrentUpdatePriority();
15015			var prevTransition = ReactCurrentBatchConfig$3.transition;
15016			try {
15017				ReactCurrentBatchConfig$3.transition = null;
15018				setCurrentUpdatePriority(DiscreteEventPriority);
15019				commitRootImpl(root$1, recoverableErrors, transitions, previousUpdateLanePriority);
15020			} finally {
15021				ReactCurrentBatchConfig$3.transition = prevTransition;
15022				setCurrentUpdatePriority(previousUpdateLanePriority);
15023			}
15024			return null;
15025		}
15026		function commitRootImpl(root$1, recoverableErrors, transitions, renderPri
15026orityLevel) {
15027			do
15028				flushPassiveEffects();
15029			while (rootWithPendingPassiveEffects !== null);
15030			flushRenderPhaseStrictModeWarningsInDEV();
15031			if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw new Error("Should not already be working.");
15032			var finishedWork = root$1.finishedWork;
15033			var lanes = root$1.finishedLanes;
15034			markCommitStarted(lanes);
15035			if (finishedWork === null) {
15036				markCommitStopped();
15037				return null;
15038			} else if (lanes === NoLanes) error("root.finishedLanes should not be empty during a commit. This is a bug in React.");
15039			root$1.finishedWork = null;
15040			root$1.finishedLanes = NoLanes;
15041			if (finishedWork === root$1.current) throw new Error("Cannot commit the same tree as before. This error is likely caused by a bug in React. Please file an issue.");
15042			root$1.callbackNode = null;
15043			root$1.callbackPriority = NoLane;
15044			var remainingLanes = mergeLanes(finishedWork.lanes, finishedWork.childLanes);
15045			markRootFinished(root$1, remainingLanes);
15046			if (root$1 === workInProgressRoot) {
15047				workInProgressRoot = null;
15048				workInProgress = null;
15049				workInProgressRootRenderLanes = NoLanes;
15050			}
15051			if ((finishedWork.subtreeFlags & PassiveMask) !== NoFlags || (finishedWork.flags & PassiveMask) !== NoFlags) {
15052				if (!rootDoesHavePassiveEffects) {
15053					rootDoesHavePassiveEffects = true;
15054					pendingPassiveTransitions = transitions;
15055					scheduleCallback$1(NormalPriority, function() {
15056						flushPassiveEffects();
15057						return null;
15058					});
15059				}
15060			}
15061			var subtreeHasEffects = (finishedWork.subtreeFlags & (BeforeMutationMask | MutationMask | LayoutMask | PassiveMask)) !== NoFlags;
15062			var rootHasEffect = (finishedWork.flags & (BeforeMutationMask | MutationMask | LayoutMask | PassiveMask)) !== NoFlags;
15063			if (subtreeHasEffects || rootHasEffect) {
15064				var prevTransition = ReactCurrentBatchConfig$3.transition;
15065				ReactCurrentBatchConfig$3.transition = null;
15066				var previousPriority = getCurrentUpdatePriority();
15067				setCurrentUpdatePriority(DiscreteEventPriority);
15068				var prevExecutionContext = executionContext;
15069				executionContext |= CommitContext;
15070				ReactCurrentOwner$2.current = null;
15071				commitBeforeMutationEffects(root$1, finishedWork);
15072				recordCommitTime();
15073				commitMutationEffects(root$1, finishedWork, lanes);
15074				resetAfterCommit(root$1.containerInfo);
15075				root$1.current = finishedWork;
15076				markLayoutEffectsStarted(lanes);
15077				commitLayoutEffects(finishedWork, root$1, lanes);
15078				markLayoutEffectsStopped();
15079				requestPaint();
15080				executionContext = prevExecutionContext;
15081				setCurrentUpdatePriority(previousPriority);
15082				ReactCurrentBatchConfig$3.transition = prevTransition;
15083			} else {
15084				root$1.current = finishedWork;
15085				recordCommitTime();
15086			}
15087			var rootDidHavePassiveEffects = rootDoesHavePassiveEffects;
15088			if (rootDoesHavePassiveEffects) {
15089				rootDoesHavePassiveEffects = false;
15090				rootWithPendingPassiveEffects = root$1;
15091				pendingPassiveEffectsLanes = lanes;
15092			} else {
15093				nestedPassiveUpdateCount = 0;
15094				rootWithPassiveNestedUpdates = null;
15095			}
15096			remainingLanes = root$1.pendingLanes;
15097			if (remainingLanes === NoLanes) legacyErrorBoundariesThatAlreadyFailed = null;
15098			if (!rootDidHavePassiveEffects) commitDoubleInvokeEffectsInDEV(root$1.current, false);
15099			onCommitRoot(finishedWork.stateNode, renderPriorityLevel);
15100			if (isDevToolsPresent) root$1.memoizedUpdaters.clear();
15101			onCommitRoot$1();
15102			ensureRootIsScheduled(root$1, now());
15103			if (recoverableErrors !== null) {
15104				var onRecoverableError = root$1.onRecoverableError;
15105				for (var i = 0; i < recoverableErrors.length; i++) {
15106					var recoverableError = recoverableErrors[i];
15107					var componentStack = recoverableError.stack;
15108					var digest = recoverableError.digest;
15109					onRecoverableError(recoverableError.value, {
15110						componentStack,
15111						digest
15112					});
15113				}
15114			}
15115			if (hasUncaughtError) {
15116				hasUncaughtError = false;
15117				var error$1 = firstUncaughtError;
15118				firstUncaughtError = null;
15119				throw error$1;
15120			}
15121			if (includesSomeLane(pendingPassiveEffectsLanes, SyncLane) && root$1.tag !== LegacyRoot) flushPassiveEffects();
15122			remainingLanes = root$1.pendingLanes;
15123			if (includesSomeLane(remainingLanes, SyncLane)) {
15124				markNestedUpdateScheduled();
15125				if (root$1 === rootWithNestedUpdates) nestedUpdateCount++;
15126				else {
15127					nestedUpdateCount = 0;
15128					rootWithNestedUpdates = root$1;
15129				}
15130			} else nestedUpdateCount = 0;
15131			flushSyncCallbacks();
15132			markCommitStopped();
15133			return null;
15134		}
15135		function flushPassiveEffects() {
15136			if (rootWithPendingPassiveEffects !== null) {
15137				var priority = lowerEventPriority(DefaultEventPriority, lanesToEventPriority(pendingPassiveEffectsLanes));
15138				var prevTransition = ReactCurrentBatchConfig$3.transition;
15139				var previousPriority = getCurrentUpdatePriority();
15140				try {
15141					ReactCurrentBatchConfig$3.transition = null;
15142					setCurrentUpdatePriority(priority);
15143					return flushPassiveEffectsImpl();
15144				} finally {
15145					setCurrentUpdatePriority(previousPriority);
15146					ReactCurrentBatchConfig$3.transition = prevTransition;
15147				}
15148			}
15149			return false;
15150		}
15151		function enqueuePendingPassiveProfilerEffect(fiber) {
15152			pendingPassiveProfilerEffects.push(fiber);
15153			if (!rootDoesHavePassiveEffects) {
15154				rootDoesHavePassiveEffects = true;
15155				scheduleCallback$1(NormalPriority, function() {
15156					flushPassiveEffects();
15157					return null;
15158				});
15159			}
15160		}
15161		function flushPassiveEffectsImpl() {
15162			if (rootWithPendingPassiveEffects === null) return false;
15163			var transitions = pendingPassiveTransitions;
15164			pendingPassiveTransitions = null;
15165			var root$1 = rootWithPendingPassiveEffects;
15166			var lanes = pendingPassiveEffectsLanes;
15167			rootWithPendingPassiveEffects = null;
15168			pendingPassiveEffectsLanes = NoLanes;
15169			if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw new Error("Cannot flush passive effects while already rendering.");
15170			isFlushingPassiveEffects = true;
15171			didScheduleUpdateDuringPassiveEffects = false;
15172			markPassiveEffectsStarted(lanes);
15173			var prevExecutionContext = executionContext;
15174			executionContext |= CommitContext;
15175			commitPassiveUnmountEffects(root$1.current);
15176			commitPassiveMountEffects(root$1, root$1.current, lanes, transitions);
15177			var profilerEffects = pendingPassiveProfilerEffects;
15178			pendingPassiveProfilerEffects = [];
15179			for (var i = 0; i < profilerEffects.length; i++) {
15180				var _fiber = profilerEffects[i];
15181				commitPassiveEffectDurations(root$1, _fiber);
15182			}
15183			markPassiveEffectsStopped();
15184			commitDoubleInvokeEffectsInDEV(root$1.current, true);
15185			executionContext = prevExecutionContext;
15186			flushSyncCallbacks();
15187			if (didScheduleUpdateDuringPassiveEffects) if (root$1 === rootWithPassiveNestedUpdates) nestedPassiveUpdateCount++;
15188			else {
15189				nestedPassiveUpdateCount = 0;
15190				rootWithPassiveNestedUpdates = root$1;
15191			}
15192			else nestedPassiveUpdateCount = 0;
15193			isFlushingPassiveEffects = false;
15194			didScheduleUpdateDuringPassiveEffects = false;
15195			onPostCommitRoot(root$1);
15196			var stateNode = root$1.current.stateNode;
15197			stateNode.effectDuration = 0;
15198			stateNode.passiveEffectDuration = 0;
15199			return true;
15200		}
15201		function isAlreadyFailedLegacyErrorBoundary(instance) {
15202			return legacyErrorBoundariesThatAlreadyFailed !== null && legacyErrorBoundariesThatAlreadyFailed.has(instance);
15203		}
15204		function markLegacyErrorBoundaryAsFailed(instance) {
15205			if (legacyErrorBoundariesThatAlreadyFailed === null) legacyErrorBoundariesThatAlreadyFailed = new Set([instance]);
15206			else legacyErrorBoundariesThatAlreadyFailed.add(instance);
15207		}
15208		function prepareToThrowUncaughtError(error$1) {
15209			if (!hasUncaughtError) {
15210				hasUncaughtError = true;
15211				firstUncaughtError = error$1;
15212			}
15213		}
15214		var onUncaughtError = prepareToThrowUncaughtError;
15215		function captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error$1) {
15216			var root$1 = enqueueUpdate(rootFiber, createRootErrorUpdate(rootFiber, createCapturedValueAtFiber(error$1, sourceFiber), SyncLane), SyncLane);
15217			var eventTime = requestEventTime();
15218			if (root$1 !== null) {
15219				markRootUpdated(root$1, SyncLane, eventTime);
15220				ensureRootIsScheduled(root$1, eventTime);
15221			}
15222		}
15223		function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error$1) {
15224			reportUncaughtErrorInDEV(error$1);
15225			setIsRunningInsertionEffect(false);
15226			if (sourceFiber.tag === HostRoot) {
15227				captureCommitPhaseErrorOnRoot(sourceFiber, sourceFiber, error$1);
15228				return;
15229			}
15230			var fiber = null;
15231			fiber = nearestMountedAncestor;
15232			while (fiber !== null) {
15233				if (fiber.tag === HostRoot) {
15234					captureCommitPhaseErrorOnRoot(fiber, sourceFiber, error$1);
15235					return;
15236				} else if (fiber.tag === ClassComponent) {
15237					var ctor = fiber.type;
15238					var instance = fiber.stateNode;
15239					if (typeof ctor.getDerivedStateFromError === "function" || typeof instance.componentDidCatch === "function" && !isAlreadyFailedLegacyErrorBoundary(instance)) {
15240						var errorInfo = createCapturedValueAtFiber(error$1, sourceFiber);
15241						var update = createClassErrorUpdate(fiber, errorInfo, SyncLane);
15242						var root$1 = enqueueUpdate(fiber, update, SyncLane);
15243						var eventTime = requestEventTime();
15244						if (root$1 !== null) {
15245							markRootUpdated(root$1, SyncLane, eventTime);
15246							ensureRootIsScheduled(root$1, eventTime);
15247						}
15248						return;
15249					}
15250				}
15251				fiber = fiber.return;
15252			}
15253			error("Internal React error: Attempted to capture a commit phase error inside a detached tree. This indicates a bug in React. Likely causes include deleting the same fiber more than once, committing an already-finished tree, or an inconsistent return pointer.\n\nError message:\n\n%s", error$1);
15254		}
15255		function pingSuspendedRoot(root$1, wakeable, pingedLanes) {
15256			var pingCache = root$1.pingCache;
15257			if (pingCache !== null) pingCache.delete(wakeable);
15258			var eventTime = requestEventTime();
15259			markRootPinged(root$1, pingedLanes);
15260			warnIfSuspenseResolutionNotWrappedWithActDEV(root$1);
15261			if (workInProgressRoot === root$1 && isSubsetOfLanes(workInProgressRootRenderLanes, pingedLanes)) if (workInProgressRootExitStatus === RootSuspendedWithDelay || workInProgressRootExitStatus === RootSuspended && includesOnlyRetries(workInProgressRootRenderLanes) && now() - globalMostRecentFallbackTime < FALLBACK_THROTTLE_MS) prepareFreshStack(root$1, NoLanes);
15262			else workInProgressRootPingedLanes = mergeLanes(workInProgressRootPingedLanes, pingedLanes);
15263			ensureRootIsScheduled(root$1, eventTime);
15264		}
15265		function retryTimedOutBoundary(boundaryFiber, retryLane) {
15266			if (retryLane === NoLane) retryLane = requestRetryLane(boundaryFiber);
15267			var eventTime = requestEventTime();
15268			var root$1 = enqueueConcurrentRenderForLane(boundaryFiber, retryLane);
15269			if (root$1 !== null) {
15270				markRootUpdated(root$1, retryLane, eventTime);
15271				ensureRootIsScheduled(root$1, eventTime);
15272			}
15273		}
15274		function retryDehydratedSuspenseBoundary(boundaryFiber) {
15275			var suspenseState = boundaryFiber.memoizedState;
15276			var retryLane = NoLane;
15277			if (suspenseState !== null) retryLane = suspenseState.retryLane;
15278			retryTimedOutBoundary(boundaryFiber, retryLane);
15279		}
15280		function resolveRetryWakeable(boundaryFiber, wakeable) {
15281			var retryLane = NoLane;
15282			var retryCache;
15283			switch (boundaryFiber.tag) {
15284				case SuspenseComponent:
15285					retryCache = boundaryFiber.stateNode;
15286					var suspenseState = boundaryFiber.memoizedState;
15287					if (suspenseState !== null) retryLane = suspenseState.retryLane;
15288					break;
15289				case SuspenseListComponent:
15290					retryCache = boundaryFiber.stateNode;
15291					break;
15292				default: throw new Error("Pinged unknown suspense boundary type. This is probably a bug in React.");
15293			}
15294			if (retryCache !== null) retryCache.delete(wakeable);
15295			retryTimedOutBoundary(boundaryFiber, retryLane);
15296		}
15297		function jnd(timeElapsed) {
15298			return timeElapsed < 120 ? 120 : timeElapsed < 480 ? 480 : timeElapsed < 1080 ? 1080 : timeElapsed < 1920 ? 1920 : timeElapsed < 3e3 ? 3e3 : timeElapsed < 4320 ? 4320 : ceil(timeElapsed / 1960) * 1960;
15299		}
15300		function checkForNestedUpdates() {
15301			if (nestedUpdateCount > NESTED_UPDATE_LIMIT) {
15302				nestedUpdateCount = 0;
15303				rootWithNestedUpdates = null;
15304				throw new Error("Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.");
15305			}
15306			if (nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT) {
15307				nestedPassiveUpdateCount = 0;
15308				rootWithPassiveNestedUpdates = null;
15309				error("Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render.");
15310			}
15311		}
15312		function flushRenderPhaseStrictModeWarningsInDEV() {
15313			ReactStrictModeWarnings.flushLegacyContextWarning();
15314			ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings();
15315		}
15316		function commitDoubleInvokeEffectsInDEV(fiber, hasPassiveEffects) {
15317			setCurrentFiber(fiber);
15318			invokeEffectsInDev(fiber, MountLayoutDev, invokeLayoutEffectUnmountInDEV);
15319			if (hasPassiveEffects) invokeEffectsInDev(fiber, MountPassiveDev, invokePassiveEffectUnmountInDEV);
15320			invokeEffectsInDev(fiber, MountLayoutDev, invokeLayoutEffectMountInDEV);
15321			if (hasPassiveEffects) invokeEffectsInDev(fiber, MountPassiveDev, invokePassiveEffectMountInDEV);
15322			resetCurrentFiber();
15323		}
15324		function invokeEffectsInDev(firstChild, fiberFlags, invokeEffectFn) {
15325			var current$1 = firstChild;
15326			var subtreeRoot = null;
15327			while (current$1 !== null) {
15328				var primarySubtreeFlag = current$1.subtreeFlags & fiberFlags;
15329				if (current$1 !== subtreeRoot && current$1.child !== null && primarySubtreeFlag !== NoFlags) current$1 = current$1.child;
15330				else {
15331					if ((current$1.flags & fiberFlags) !== NoFlags) invokeEffectFn(current$1);
15332					if (current$1.sibling !== null) current$1 = current$1.sibling;
15333					else current$1 = subtreeRoot = current$1.return;
15334				}
15335			}
15336		}
15337		var didWarnStateUpdateForNotYetMountedComponent = null;
15338		function warnAboutUpdateOnNotYetMountedFiberInDEV(fiber) {
15339			if ((executionContext & RenderContext) !== NoContext) return;
15340			if (!(fiber.mode & ConcurrentMode)) return;
15341			var tag = fiber.tag;
15342			if (tag !== IndeterminateComponent && tag !== HostRoot && tag !== ClassComponent && tag !== FunctionComponent && tag !== ForwardRef && tag !== MemoComponent && tag !== SimpleMemoComponent) return;
15343			var componentName = getComponentNameFromFiber(fiber) || "ReactComponent";
15344			if (didWarnStateUpdateForNotYetMountedComponent !== null) {
15345				if (didWarnStateUpdateForNotYetMountedComponent.has(componentName)) return;
15346				didWarnStateUpdateForNotYetMountedComponent.add(componentName);
15347			} else didWarnStateUpdateForNotYetMountedComponent = new Set([componentName]);
15348			var previousFiber = current;
15349			try {
15350				setCurrentFiber(fiber);
15351				error("Can't perform a React state update on a component that hasn't mounted yet. This indicates that you have a side-effect in your render function that asynchronously later calls tries to update the component. Move this work to useEffect instead.");
15352			} finally {
15353				if (previousFiber) setCurrentFiber(fiber);
15354				else resetCurrentFiber();
15355			}
15356		}
15357		var beginWork$1;
15358		var dummyFiber = null;
15359		beginWork$1 = function(current$1, unitOfWork, lanes) {
15360			var originalWorkInProgressCopy = assignFiberPropertiesInDEV(dummyFiber, unitOfWork);
15361			try {
15362				return beginWork(current$1, unitOfWork, lanes);
15363			} catch (originalError) {
15364				if (didSuspendOrErrorWhileHydratingDEV() || originalError !== null && typeof originalError === "object" && typeof originalError.then === "function") throw originalError;
15365				resetContextDependencies();
15366				resetHooksAfterThrow();
15367				unwindInterruptedWork(current$1, unitOfWork);
15368				assignFiberPropertiesInDEV(unitOfWork, originalWorkInProgressCopy);
15369				if (unitOfWork.mode & ProfileMode) startProfilerTimer(unitOfWork);
15370				invokeGuardedCallback(null, beginWork, null, current$1, unitOfWork, lanes);
15371				if (hasCaughtError()) {
15372					var replayError = clearCaughtError();
15373					if (typeof replayError === "object" && replayError !== null && replayError._suppressLogging && typeof originalError === "object" && originalError !== null && !originalError._suppressLogging) originalError._suppressLogging = true;
15374				}
15375				throw originalError;
15376			}
15377		};
15378		var didWarnAboutUpdateInRender = false;
15379		var didWarnAboutUpdateInRenderForAnotherComponent = /* @__PURE__ */ new Set();
15380		function warnAboutRenderPhaseUpdatesInDEV(fiber) {
15381			if (isRendering && !getIsUpdatingOpaqueValueInRenderPhaseInDEV()) switch (fiber.tag) {
15382				case FunctionComponent:
15383				case ForwardRef:
15384				case SimpleMemoComponent:
15385					var renderingComponentName = workInProgress && getComponentNameFromFiber(workInProgress) || "Unknown";
15386					var dedupeKey = renderingComponentName;
15387					if (!didWarnAboutUpdateInRenderForAnotherComponent.has(dedupeKey)) {
15388						didWarnAboutUpdateInRenderForAnotherComponent.add(dedupeKey);
15389						error("Cannot update a component (`%s`) while rendering a different component (`%s`). To locate the bad setState() call inside `%s`, follow the stack trace as described in https://reactjs.org/link/setstate-in-render", getComponentNameFromFiber(fiber) || "Unknown", renderingComponentName, renderingComponentName);
15390					}
15391					break;
15392				case ClassComponent:
15393					if (!didWarnAboutUpdateInRender) {
15394						error("Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state.");
15395						didWarnAboutUpdateInRender = true;
15396					}
15397					break;
15398			}
15399		}
15400		function restorePendingUpdaters(root$1, lanes) {
15401			if (isDevToolsPresent) root$1.memoizedUpdaters.forEach(function(schedulingFiber) {
15402				addFiberToLanesMap(root$1, schedulingFiber, lanes);
15403			});
15404		}
15405		var fakeActCallbackNode = {};
15406		function scheduleCallback$1(priorityLevel, callback) {
15407			var actQueue = ReactCurrentActQueue$1.current;
15408			if (actQueue !== null) {
15409				actQueue.push(callback);
15410				return fakeActCallbackNode;
15411			} else return scheduleCallback(priorityLevel, callback);
15412		}
15413		function cancelCallback$1(callbackNode) {
15414			if (callbackNode === fakeActCallbackNode) return;
15415			return cancelCallback(callbackNode);
15416		}
15417		function shouldForceFlushFallbacksInDEV() {
15418			return ReactCurrentActQueue$1.current !== null;
15419		}
15420		function warnIfUpdatesNotWrappedWithActDEV(fiber) {
15421			if (fiber.mode & ConcurrentMode) {
15422				if (!isConcurrentActEnvironment()) return;
15423			} else {
15424				if (!isLegacyActEnvironment()) return;
15425				if (executionContext !== NoContext) return;
15426				if (fiber.tag !== FunctionComponent && fiber.tag !== ForwardRef && fiber.tag !== SimpleMemoComponent) return;
15427			}
15428			if (ReactCurrentActQueue$1.current === null) {
15429				var previousFiber = current;
15430				try {
15431					setCurrentFiber(fiber);
15432					error("An update to %s inside a test was not wrapped in act(...).\n\nWhen testing, code that causes React state updates should be wrapped into act(...):\n\nact(() => {\n  /* fire events that update state */\n});\n/* assert on the output */\n\nThis ensures that you're testing the behavior the user would see in the browser. Learn more at https://reactjs.org/link/wrap-tests-with-act", getComponentNameFromFiber(fiber));
15433				} finally {
15434					if (previousFiber) setCurrentFiber(fiber);
15435					else resetCurrentFiber();
15436				}
15437			}
15438		}
15439		function warnIfSuspenseResolutionNotWrappedWithActDEV(root$1) {
15440			if (root$1.tag !== LegacyRoot && isConcurrentActEnvironment() && ReactCurrentActQueue$1.current === null) error("A suspended resource finished loading inside a test, but the event was not wrapped in act(...).\n\nWhen testing, code that resolves suspended data should be wrapped into act(...):\n\nact(() => {\n  /* finish loading suspended data */\n});\n/* assert on the output */\n\nThis ensures that you're testing the behavior the user would see in the browser. Learn more at https://reactjs.org/link/wrap-tests-with-act");
15441		}
15442		function setIsRunningInsertionEffect(isRunning) {
15443			isRunningInsertionEffect = isRunning;
15444		}
15445		var resolveFamily = null;
15446		var failedBoundaries = null;
15447		var setRefreshHandler = function(handler) {
15448			resolveFamily = handler;
15449		};
15450		function resolveFunctionForHotReloading(type) {
15451			if (resolveFamily === null) return type;
15452			var family = resolveFamily(type);
15453			if (family === void 0) return type;
15454			return family.current;
15455		}
15456		function resolveClassForHotReloading(type) {
15457			return resolveFunctionForHotReloading(type);
15458		}
15459		function resolveForwardRefForHotReloading(type) {
15460			if (resolveFamily === null) return type;
15461			var family = resolveFamily(type);
15462			if (family === void 0) {
15463				if (type !== null && type !== void 0 && typeof type.render === "function") {
15464					var currentRender = resolveFunctionForHotReloading(type.render);
15465					if (type.render !== currentRender) {
15466						var syntheticType = {
15467							$$typeof: REACT_FORWARD_REF_TYPE,
15468							render: currentRender
15469						};
15470						if (type.displayName !== void 0) syntheticType.displayName = type.displayName;
15471						return syntheticType;
15472					}
15473				}
15474				return type;
15475			}
15476			return family.current;
15477		}
15478		function isCompatibleFamilyForHotReloading(fiber, element) {
15479			if (resolveFamily === null) return false;
15480			var prevType = fiber.elementType;
15481			var nextType = element.type;
15482			var needsCompareFamilies = false;
15483			var $$typeofNextType = typeof nextType === "object" && nextType !== null ? nextType.$$typeof : null;
15484			switch (fiber.tag) {
15485				case ClassComponent:
15486					if (typeof nextType === "function") needsCompareFamilies = true;
15487					break;
15488				case FunctionComponent:
15489					if (typeof nextType === "function") needsCompareFamilies = true;
15490					else if ($$typeofNextType === REACT_LAZY_TYPE) needsCompareFamilies = true;
15491					break;
15492				case ForwardRef:
15493					if ($$typeofNextType === REACT_FORWARD_REF_TYPE) needsCompareFamilies = true;
15494					else if ($$typeofNextType === REACT_LAZY_TYPE) needsCompareFamilies = true;
15495					break;
15496				case MemoComponent:
15497				case SimpleMemoComponent:
15498					if ($$typeofNextType === REACT_MEMO_TYPE) needsCompareFamilies = true;
15499					else if ($$typeofNextType === REACT_LAZY_TYPE) needsCompareFamilies = true;
15500					break;
15501				default: return false;
15502			}
15503			if (needsCompareFamilies) {
15504				var prevFamily = resolveFamily(prevType);
15505				if (prevFamily !== void 0 && prevFamily === resolveFamily(nextType)) return true;
15506			}
15507			return false;
15508		}
15509		function markFailedErrorBoundaryForHotReloading(fiber) {
15510			if (resolveFamily === null) return;
15511			if (typeof WeakSet !== "function") return;
15512			if (failedBoundaries === null) failedBoundaries = /* @__PURE__ */ new WeakSet();
15513			failedBoundaries.add(fiber);
15514		}
15515		var scheduleRefresh = function(root$1, update) {
15516			if (resolveFamily === null) return;
15517			var staleFamilies = update.staleFamilies, updatedFamilies = update.updatedFamilies;
15518			flushPassiveEffects();
15519			flushSync(function() {
15520				scheduleFibersWithFamiliesRecursively(root$1.current, updatedFamilies, staleFamilies);
15521			});
15522		};
15523		var scheduleRoot = function(root$1, element) {
15524			if (root$1.context !== emptyContextObject) return;
15525			flushPassiveEffects();
15526			flushSync(function() {
15527				updateContainer(element, root$1, null, null);
15528			});
15529		};
15530		function scheduleFibersWithFamiliesRecursively(fiber, updatedFamilies, staleFamilies) {
15531			var alternate = fiber.alternate, child = fiber.child, sibling = fiber.sibling, tag = fiber.tag, type = fiber.type;
15532			var candidateType = null;
15533			switch (tag) {
15534				case FunctionComponent:
15535				case SimpleMemoComponent:
15536				case ClassComponent:
15537					candidateType = type;
15538					break;
15539				case ForwardRef:
15540					candidateType = type.render;
15541					break;
15542			}
15543			if (resolveFamily === null) throw new Error("Expected resolveFamily to be set during hot reload.");
15544			var needsRender = false;
15545			var needsRemount = false;
15546			if (candidateType !== null) {
15547				var family = resolveFamily(candidateType);
15548				if (family !== void 0) {
15549					if (staleFamilies.has(family)) needsRemount = true;
15550					else if (updatedFamilies.has(family)) if (tag === ClassComponent) needsRemount = true;
15551					else needsRender = true;
15552				}
15553			}
15554			if (failedBoundaries !== null) {
15555				if (failedBoundaries.has(fiber) || alternate !== null && failedBoundaries.has(alternate)) needsRemount = true;
15556			}
15557			if (needsRemount) fiber._debugNeedsRemount = true;
15558			if (needsRemount || needsRender) {
15559				var _root = enqueueConcurrentRenderForLane(fiber, SyncLane);
15560				if (_root !== null) scheduleUpdateOnFiber(_root, fiber, SyncLane, NoTimestamp);
15561			}
15562			if (child !== null && !needsRemount) scheduleFibersWithFamiliesRecursively(child, updatedFamilies, staleFamilies);
15563			if (sibling !== null) scheduleFibersWithFamiliesRecursively(sibling, updatedFamilies, staleFamilies);
15564		}
15565		var findHostInstancesForRefresh = function(root$1, families) {
15566			var hostInstances = /* @__PURE__ */ new Set();
15567			var types = new Set(families.map(function(family) {
15568				return family.current;
15569			}));
15570			findHostInstancesForMatchingFibersRecursively(root$1.current, types, hostInstances);
15571			return hostInstances;
15572		};
15573		function findHostInstancesForMatchingFibersRecursively(fiber, types, hostInstances) {
15574			var child = fiber.child, sibling = fiber.sibling, tag = fiber.tag, type = fiber.type;
15575			var candidateType = null;
15576			switch (tag) {
15577				case FunctionComponent:
15578				case SimpleMemoComponent:
15579				case ClassComponent:
15580					candidateType = type;
15581					break;
15582				case ForwardRef:
15583					candidateType = type.render;
15584					break;
15585			}
15586			var didMatch = false;
15587			if (candidateType !== null) {
15588				if (types.has(candidateType)) didMatch = true;
15589			}
15590			if (didMatch) findHostInstancesForFiberShallowly(fiber, hostInstances);
15591			else if (child !== null) findHostInstancesForMatchingFibersRecursively(child, types, hostInstances);
15592			if (sibling !== null) findHostInstancesForMatchingFibersRecursively(sibling, types, hostInstances);
15593		}
15594		function findHostInstancesForFiberShallowly(fiber, hostInstances) {
15595			if (findChildHostInstancesForFiberShallowly(fiber, hostInstances)) return;
15596			var node = fiber;
15597			while (true) {
15598				switch (node.tag) {
15599					case HostComponent:
15600						hostInstances.add(node.stateNode);
15601						return;
15602					case HostPortal:
15603						hostInstances.add(node.stateNode.containerInfo);
15604						return;
15605					case HostRoot:
15606						hostInstances.add(node.stateNode.containerInfo);
15607						return;
15608				}
15609				if (node.return === null) throw new Error("Expected to reach root first.");
15610				node = node.return;
15611			}
15612		}
15613		function findChildHostInstancesForFiberShallowly(fiber, hostInstances) {
15614			var node = fiber;
15615			var foundHostInstances = false;
15616			while (true) {
15617				if (node.tag === HostComponent) {
15618					foundHostInstances = true;
15619					hostInstances.add(node.stateNode);
15620				} else if (node.child !== null) {
15621					node.child.return = node;
15622					node = node.child;
15623					continue;
15624				}
15625				if (node === fiber) return foundHostInstances;
15626				while (node.sibling === null) {
15627					if (node.return === null || node.return === fiber) return foundHostInstances;
15628					node = node.return;
15629				}
15630				node.sibling.return = node.return;
15631				node = node.sibling;
15632			}
15633			return false;
15634		}
15635		var hasBadMapPolyfill = false;
15636		try {
15637			var nonExtensibleObject = Object.preventExtensions({});
15638			new Map([[nonExtensibleObject, null]]);
15639			new Set([nonExtensibleObject]);
15640		} catch (e) {
15641			hasBadMapPolyfill = true;
15642		}
15643		function FiberNode(tag, pendingProps, key, mode) {
15644			this.tag = tag;
15645			this.key = key;
15646			this.elementType = null;
15647			this.type = null;
15648			this.stateNode = null;
15649			this.return = null;
15650			this.child = null;
15651			this.sibling = null;
15652			this.index = 0;
15653			this.ref = null;
15654			this.pendingProps = pendingProps;
15655			this.memoizedProps = null;
15656			this.updateQueue = null;
15657			this.memoizedState = null;
15658			this.dependencies = null;
15659			this.mode = mode;
15660			this.flags = NoFlags;
15661			this.subtreeFlags = NoFlags;
15662			this.deletions = null;
15663			this.lanes = NoLanes;
15664			this.childLanes = NoLanes;
15665			this.alternate = null;
15666			this.actualDuration = NaN;
15667			this.actualStartTime = NaN;
15668			this.selfBaseDuration = NaN;
15669			this.treeBaseDuration = NaN;
15670			this.actualDuration = 0;
15671			this.actualStartTime = -1;
15672			this.selfBaseDuration = 0;
15673			this.treeBaseDuration = 0;
15674			this._debugSource = null;
15675			this._debugOwner = null;
15676			this._debugNeedsRemount = false;
15677			this._debugHookTypes = null;
15678			if (!hasBadMapPolyfill && typeof Object.preventExtensions === "function") Object.preventExtensions(this);
15679		}
15680		var createFiber = function(tag, pendingProps, key, mode) {
15681			return new FiberNode(tag, pendingProps, key, mode);
15682		};
15683		function shouldConstruct$1(Component) {
15684			var prototype = Component.prototype;
15685			return !!(prototype && prototype.isReactComponent);
15686		}
15687		function isSimpleFunctionComponent(type) {
15688			return typeof type === "function" && !shouldConstruct$1(type) && type.defaultProps === void 0;
15689		}
15690		function resolveLazyComponentTag(Component) {
15691			if (typeof Component === "function") return shouldConstruct$1(Component) ? ClassComponent : FunctionComponent;
15692			else if (Component !== void 0 && Component !== null) {
15693				var $$typeof = Component.$$typeof;
15694				if ($$typeof === REACT_FORWARD_REF_TYPE) return ForwardRef;
15695				if ($$typeof === REACT_MEMO_TYPE) return MemoComponent;
15696			}
15697			return IndeterminateComponent;
15698		}
15699		function createWorkInProgress(current$1, pendingProps) {
15700			var workInProgress$1 = current$1.alternate;
15701			if (workInProgress$1 === null) {
15702				workInProgress$1 = createFiber(current$1.tag, pendingProps, current$1.key, current$1.mode);
15703				workInProgress$1.elementType = current$1.elementType;
15704				workInProgress$1.type = current$1.type;
15705				workInProgress$1.stateNode = current$1.stateNode;
15706				workInProgress$1._debugSource = current$1._debugSource;
15707				workInProgress$1._debugOwner = current$1._debugOwner;
15708				workInProgress$1._debugHookTypes = current$1._debugHookTypes;
15709				workInProgress$1.alternate = current$1;
15710				current$1.alternate = workInProgress$1;
15711			} else {
15712				workInProgress$1.pendingProps = pendingProps;
15713				workInProgress$1.type = current$1.type;
15714				workInProgress$1.flags = NoFlags;
15715				workInProgress$1.subtreeFlags = NoFlags;
15716				workInProgress$1.deletions = null;
15717				workInProgress$1.actualDuration = 0;
15718				workInProgress$1.actualStartTime = -1;
15719			}
15720			workInProgress$1.flags = current$1.flags & StaticMask;
15721			workInProgress$1.childLanes = current$1.childLanes;
15722			workInProgress$1.lanes = current$1.lanes;
15723			workInProgress$1.child = current$1.child;
15724			workInProgress$1.memoizedProps = current$1.memoizedProps;
15725			workInProgress$1.memoizedState = current$1.memoizedState;
15726			workInProgress$1.updateQueue = current$1.updateQueue;
15727			var currentDependencies = current$1.dependencies;
15728			workInProgress$1.dependencies = currentDependencies === null ? null : {
15729				lanes: currentDependencies.lanes,
15730				firstContext: currentDependencies.firstContext
15731			};
15732			workInProgress$1.sibling = current$1.sibling;
15733			workInProgress$1.index = current$1.index;
15734			workInProgress$1.ref = current$1.ref;
15735			workInProgress$1.selfBaseDuration = current$1.selfBaseDuration;
15736			workInProgress$1.treeBaseDuration = current$1.treeBaseDuration;
15737			workInProgress$1._debugNeedsRemount = current$1._debugNeedsRemount;
15738			switch (workInProgress$1.tag) {
15739				case IndeterminateComponent:
15740				case FunctionComponent:
15741				case SimpleMemoComponent:
15742					workInProgress$1.type = resolveFunctionForHotReloading(current$1.type);
15743					break;
15744				case ClassComponent:
15745					workInProgress$1.type = resolveClassForHotReloading(current$1.type);
15746					break;
15747				case ForwardRef:
15748					workInProgress$1.type = resolveForwardRefForHotReloading(current$1.type);
15749					break;
15750			}
15751			return workInProgress$1;
15752		}
15753		function resetWorkInProgress(workInProgress$1, renderLanes$1) {
15754			workInProgress$1.flags &= StaticMask | Placement;
15755			var current$1 = workInProgress$1.alternate;
15756			if (current$1 === null) {
15757				workInProgress$1.childLanes = NoLanes;
15758				workInProgress$1.lanes = renderLanes$1;
15759				workInProgress$1.child = null;
15760				workInProgress$1.subtreeFlags = NoFlags;
15761				workInProgress$1.memoizedProps = null;
15762				workInProgress$1.memoizedState = null;
15763				workInProgress$1.updateQueue = null;
15764				workInProgress$1.dependencies = null;
15765				workInProgress$1.stateNode = null;
15766				workInProgress$1.selfBaseDuration = 0;
15767				workInProgress$1.treeBaseDuration = 0;
15768			} else {
15769				workInProgress$1.childLanes = current$1.childLanes;
15770				workInProgress$1.lanes = current$1.lanes;
15771				workInProgress$1.child = current$1.child;
15772				workInProgress$1.subtreeFlags = NoFlags;
15773				workInProgress$1.deletions = null;
15774				workInProgress$1.memoizedProps = current$1.memoizedProps;
15775				workInProgress$1.memoizedState = current$1.memoizedState;
15776				workInProgress$1.updateQueue = current$1.updateQueue;
15777				workInProgress$1.type = current$1.type;
15778				var currentDependencies = current$1.dependencies;
15779				workInProgress$1.dependencies = currentDependencies === null ? null : {
15780					lanes: currentDependencies.lanes,
15781					firstContext: currentDependencies.firstContext
15782				};
15783				workInProgress$1.selfBaseDuration = current$1.selfBaseDuration;
15784				workInProgress$1.treeBaseDuration = current$1.treeBaseDuration;
15785			}
15786			return workInProgress$1;
15787		}
15788		function createHostRootFiber(tag, isStrictMode, concurrentUpdatesByDefaultOverride) {
15789			var mode;
15790			if (tag === ConcurrentRoot) {
15791				mode = ConcurrentMode;
15792				if (isStrictMode === true) {
15793					mode |= StrictLegacyMode;
15794					mode |= StrictEffectsMode;
15795				}
15796			} else mode = NoMode;
15797			if (isDevToolsPresent) mode |= ProfileMode;
15798			return createFiber(HostRoot, null, null, mode);
15799		}
15800		function createFiberFromTypeAndProps(type, key, pendingProps, owner, mode, lanes) {
15801			var fiberTag = IndeterminateComponent;
15802			var resolvedType = type;
15803			if (typeof type === "function") if (shouldConstruct$1(type)) {
15804				fiberTag = ClassComponent;
15805				resolvedType = resolveClassForHotReloading(resolvedType);
15806			} else resolvedType = resolveFunctionForHotReloading(resolvedType);
15807			else if (typeof type === "string") fiberTag = HostComponent;
15808			else getTag: switch (type) {
15809				case REACT_FRAGMENT_TYPE: return createFiberFromFragment(pendingProps.children, mode, lanes, key);
15810				case REACT_STRICT_MODE_TYPE:
15811					fiberTag = Mode;
15812					mode |= StrictLegacyMode;
15813					if ((mode & ConcurrentMode) !== NoMode) mode |= StrictEffectsMode;
15814					break;
15815				case REACT_PROFILER_TYPE: return createFiberFromProfiler(pendingProps, mode, lanes, key);
15816				case REACT_SUSPENSE_TYPE: return createFiberFromSuspense(pendingProps, mode, lanes, key);
15817				case REACT_SUSPENSE_LIST_TYPE: return createFiberFromSuspenseList(pendingProps, mode, lanes, key);
15818				case REACT_OFFSCREEN_TYPE: return createFiberFromOffscreen(pendingProps, mode, lanes, key);
15819				case REACT_LEGACY_HIDDEN_TYPE:
15820				case REACT_SCOPE_TYPE:
15821				case REACT_CACHE_TYPE:
15822				case REACT_TRACING_MARKER_TYPE:
15823				case REACT_DEBUG_TRACING_MODE_TYPE:
15824				default:
15825					if (typeof type === "object" && type !== null) switch (type.$$typeof) {
15826						case REACT_PROVIDER_TYPE:
15827							fiberTag = ContextProvider;
15828							break getTag;
15829						case REACT_CONTEXT_TYPE:
15830							fiberTag = ContextConsumer;
15831							break getTag;
15832						case REACT_FORWARD_REF_TYPE:
15833							fiberTag = ForwardRef;
15834							resolvedType = resolveForwardRefForHotReloading(resolvedType);
15835							break getTag;
15836						case REACT_MEMO_TYPE:
15837							fiberTag = MemoComponent;
15838							break getTag;
15839						case REACT_LAZY_TYPE:
15840							fiberTag = LazyComponent;
15841							resolvedType = null;
15842							break getTag;
15843					}
15844					var info = "";
15845					if (type === void 0 || typeof type === "object" && type !== null && Object.keys(type).length === 0) info += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.";
15846					var ownerName = owner ? getComponentNameFromFiber(owner) : null;
15847					if (ownerName) info += "\n\nCheck the render method of `" + ownerName + "`.";
15848					throw new Error("Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) " + ("but got: " + (type == null ? type : typeof type) + "." + info));
15849			}
15850			var fiber = createFiber(fiberTag, pendingProps, key, mode);
15851			fiber.elementType = type;
15852			fiber.type = resolvedType;
15853			fiber.lanes = lanes;
15854			fiber._debugOwner = owner;
15855			return fiber;
15856		}
15857		function createFiberFromElement(element, mode, lanes) {
15858			var owner = null;
15859			owner = element._owner;
15860			var type = element.type;
15861			var key = element.key;
15862			var pendingProps = element.props;
15863			var fiber = createFiberFromTypeAndProps(type, key, pendingProps, owner, mode, lanes);
15864			fiber._debugSource = element._source;
15865			fiber._debugOwner = element._owner;
15866			return fiber;
15867		}
15868		function createFiberFromFragment(elements, mode, lanes, key) {
15869			var fiber = createFiber(Fragment, elements, key, mode);
15870			fiber.lanes = lanes;
15871			return fiber;
15872		}
15873		function createFiberFromProfiler(pendingProps, mode, lanes, key) {
15874			if (typeof pendingProps.id !== "string") error("Profiler must specify an \"id\" of type `string` as a prop. Received the type `%s` instead.", typeof pendingProps.id);
15875			var fiber = createFiber(Profiler, pendingProps, key, mode | ProfileMode);
15876			fiber.elementType = REACT_PROFILER_TYPE;
15877			fiber.lanes = lanes;
15878			fiber.stateNode = {
15879				effectDuration: 0,
15880				passiveEffectDuration: 0
15881			};
15882			return fiber;
15883		}
15884		function createFiberFromSuspense(pendingProps, mode, lanes, key) {
15885			var fiber = createFiber(SuspenseComponent, pendingProps, key, mode);
15886			fiber.elementType = REACT_SUSPENSE_TYPE;
15887			fiber.lanes = lanes;
15888			return fiber;
15889		}
15890		function createFiberFromSuspenseList(pendingProps, mode, lanes, key) {
15891			var fiber = createFiber(SuspenseListComponent, pendingProps, key, mode);
15892			fiber.elementType = REACT_SUSPENSE_LIST_TYPE;
15893			fiber.lanes = lanes;
15894			return fiber;
15895		}
15896		function createFiberFromOffscreen(pendingProps, mode, lanes, key) {
15897			var fiber = createFiber(OffscreenComponent, pendingProps, key, mode);
15898			fiber.elementType = REACT_OFFSCREEN_TYPE;
15899			fiber.lanes = lanes;
15900			fiber.stateNode = { isHidden: false };
15901			return fiber;
15902		}
15903		function createFiberFromText(content, mode, lanes) {
15904			var fiber = createFiber(HostText, content, null, mode);
15905			fiber.lanes = lanes;
15906			return fiber;
15907		}
15908		function createFiberFromHostInstanceForDeletion() {
15909			var fiber = createFiber(HostComponent, null, null, NoMode);
15910			fiber.elementType = "DELETED";
15911			return fiber;
15912		}
15913		function createFiberFromDehydratedFragment(dehydratedNode) {
15914			var fiber = createFiber(DehydratedFragment, null, null, NoMode);
15915			fiber.stateNode = dehydratedNode;
15916			return fiber;
15917		}
15918		function createFiberFromPortal(portal, mode, lanes) {
15919			var fiber = createFiber(HostPortal, portal.children !== null ? portal.children : [], portal.key, mode);
15920			fiber.lanes = lanes;
15921			fiber.stateNode = {
15922				containerInfo: portal.containerInfo,
15923				pendingChildren: null,
15924				implementation: portal.implementation
15925			};
15926			return fiber;
15927		}
15928		function assignFiberPropertiesInDEV(target, source) {
15929			if (target === null) target = createFiber(IndeterminateComponent, null, null, NoMode);
15930			target.tag = source.tag;
15931			target.key = source.key;
15932			target.elementType = source.elementType;
15933			target.type = source.type;
15934			target.stateNode = source.stateNode;
15935			target.return = source.return;
15936			target.child = source.child;
15937			target.sibling = source.sibling;
15938			target.index = source.index;
15939			target.ref = source.ref;
15940			target.pendingProps = source.pendingProps;
15941			target.memoizedProps = source.memoizedProps;
15942			target.updateQueue = source.updateQueue;
15943			target.memoizedState = source.memoizedState;
15944			target.dependencies = source.dependencies;
15945			target.mode = source.mode;
15946			target.flags = source.flags;
15947			target.subtreeFlags = source.subtreeFlags;
15948			target.deletions = source.deletions;
15949			target.lanes = source.lanes;
15950			target.childLanes = source.childLanes;
15951			target.alternate = source.alternate;
15952			target.actualDuration = source.actualDuration;
15953			target.actualStartTime = source.actualStartTime;
15954			target.selfBaseDuration = source.selfBaseDuration;
15955			target.treeBaseDuration = source.treeBaseDuration;
15956			target._debugSource = source._debugSource;
15957			target._debugOwner = source._debugOwner;
15958			target._debugNeedsRemount = source._debugNeedsRemount;
15959			target._debugHookTypes = source._debugHookTypes;
15960			return target;
15961		}
15962		function FiberRootNode(containerInfo, tag, hydrate$1, identifierPrefix, onRecoverableError) {
15963			this.tag = tag;
15964			this.containerInfo = containerInfo;
15965			this.pendingChildren = null;
15966			this.current = null;
15967			this.pingCache = null;
15968			this.finishedWork = null;
15969			this.timeoutHandle = noTimeout;
15970			this.context = null;
15971			this.pendingContext = null;
15972			this.callbackNode = null;
15973			this.callbackPriority = NoLane;
15974			this.eventTimes = createLaneMap(NoLanes);
15975			this.expirationTimes = createLaneMap(NoTimestamp);
15976			this.pendingLanes = NoLanes;
15977			this.suspendedLanes = NoLanes;
15978			this.pingedLanes = NoLanes;
15979			this.expiredLanes = NoLanes;
15980			this.mutableReadLanes = NoLanes;
15981			this.finishedLanes = NoLanes;
15982			this.entangledLanes = NoLanes;
15983			this.entanglements = createLaneMap(NoLanes);
15984			this.identifierPrefix = identifierPrefix;
15985			this.onRecoverableError = onRecoverableError;
15986			this.mutableSourceEagerHydrationData = null;
15987			this.effectDuration = 0;
15988			this.passiveEffectDuration = 0;
15989			this.memoizedUpdaters = /* @__PURE__ */ new Set();
15990			var pendingUpdatersLaneMap = this.pendingUpdatersLaneMap = [];
15991			for (var _i = 0; _i < TotalLanes; _i++) pendingUpdatersLaneMap.push(/* @__PURE__ */ new Set());
15992			switch (tag) {
15993				case ConcurrentRoot:
15994					this._debugRootType = hydrate$1 ? "hydrateRoot()" : "createRoot()";
15995					break;
15996				case LegacyRoot:
15997					this._debugRootType = hydrate$1 ? "hydrate()" : "render()";
15998					break;
15999			}
16000		}
16001		function createFiberRoot(containerInfo, tag, hydrate$1, initialChildren, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError, transitionCallbacks) {
16002			var root$1 = new FiberRootNode(containerInfo, tag, hydrate$1, identifierPrefix, onRecoverableError);
16003			var uninitializedFiber = createHostRootFiber(tag, isStrictMode);
16004			root$1.current = uninitializedFiber;
16005			uninitializedFiber.stateNode = root$1;
16006			uninitializedFiber.memoizedState = {
16007				element: initialChildren,
16008				isDehydrated: hydrate$1,
16009				cache: null,
16010				transitions: null,
16011				pendingSuspenseBoundaries: null
16012			};
16013			initializeUpdateQueue(uninitializedFiber);
16014			return root$1;
16015		}
16016		var ReactVersion = "18.3.1";
16017		function createPortal(children, containerInfo, implementation) {
16018			var key = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : null;
16019			checkKeyStringCoercion(key);
16020			return {
16021				$$typeof: REACT_PORTAL_TYPE,
16022				key: key == null ? null : "" + key,
16023				children,
16024				containerInfo,
16025				implementation
16026			};
16027		}
16028		var didWarnAboutNestedUpdates;
16029		var didWarnAboutFindNodeInStrictMode;
16030		didWarnAboutNestedUpdates = false;
16031		didWarnAboutFindNodeInStrictMode = {};
16032		function getContextForSubtree(parentComponent) {
16033			if (!parentComponent) return emptyContextObject;
16034			var fiber = get(parentComponent);
16035			var parentContext = findCurrentUnmaskedContext(fiber);
16036			if (fiber.tag === ClassComponent) {
16037				var Component = fiber.type;
16038				if (isContextProvider(Component)) return processChildContext(fiber, Component, parentContext);
16039			}
16040			return parentContext;
16041		}
16042		function findHostInstanceWithWarning(component, methodName) {
16043			var fiber = get(component);
16044			if (fiber === void 0) if (typeof component.render === "function") throw new Error("Unable to find node on an unmounted component.");
16045			else {
16046				var keys = Object.keys(component).join(",");
16047				throw new Error("Argument appears to not be a ReactComponent. Keys: " + keys);
16048			}
16049			var hostFiber = findCurrentHostFiber(fiber);
16050			if (hostFiber === null) return null;
16051			if (hostFiber.mode & StrictLegacyMode) {
16052				var componentName = getComponentNameFromFiber(fiber) || "Component";
16053				if (!didWarnAboutFindNodeInStrictMode[componentName]) {
16054					didWarnAboutFindNodeInStrictMode[componentName] = true;
16055					var previousFiber = current;
16056					try {
16057						setCurrentFiber(hostFiber);
16058						if (fiber.mode & StrictLegacyMode) error("%s is deprecated 
16058in StrictMode. %s was passed an instance of %s which is inside StrictMode. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-find-node", methodName, methodName, componentName);
16059						else error("%s is deprecated in StrictMode. %s was passed an instance of %s which renders StrictMode children. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-find-node", methodName, methodName, componentName);
16060					} finally {
16061						if (previousFiber) setCurrentFiber(previousFiber);
16062						else resetCurrentFiber();
16063					}
16064				}
16065			}
16066			return hostFiber.stateNode;
16067		}
16068		function createContainer(containerInfo, tag, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError, transitionCallbacks) {
16069			return createFiberRoot(containerInfo, tag, false, null, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError);
16070		}
16071		function createHydrationContainer(initialChildren, callback, containerInfo, tag, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError, transitionCallbacks) {
16072			var root$1 = createFiberRoot(containerInfo, tag, true, initialChildren, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError);
16073			root$1.context = getContextForSubtree(null);
16074			var current$1 = root$1.current;
16075			var eventTime = requestEventTime();
16076			var lane = requestUpdateLane(current$1);
16077			var update = createUpdate(eventTime, lane);
16078			update.callback = callback !== void 0 && callback !== null ? callback : null;
16079			enqueueUpdate(current$1, update, lane);
16080			scheduleInitialHydrationOnRoot(root$1, lane, eventTime);
16081			return root$1;
16082		}
16083		function updateContainer(element, container, parentComponent, callback) {
16084			onScheduleRoot(container, element);
16085			var current$1 = container.current;
16086			var eventTime = requestEventTime();
16087			var lane = requestUpdateLane(current$1);
16088			markRenderScheduled(lane);
16089			var context = getContextForSubtree(parentComponent);
16090			if (container.context === null) container.context = context;
16091			else container.pendingContext = context;
16092			if (isRendering && current !== null && !didWarnAboutNestedUpdates) {
16093				didWarnAboutNestedUpdates = true;
16094				error("Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.\n\nCheck the render method of %s.", getComponentNameFromFiber(current) || "Unknown");
16095			}
16096			var update = createUpdate(eventTime, lane);
16097			update.payload = { element };
16098			callback = callback === void 0 ? null : callback;
16099			if (callback !== null) {
16100				if (typeof callback !== "function") error("render(...): Expected the last optional `callback` argument to be a function. Instead received: %s.", callback);
16101				update.callback = callback;
16102			}
16103			var root$1 = enqueueUpdate(current$1, update, lane);
16104			if (root$1 !== null) {
16105				scheduleUpdateOnFiber(root$1, current$1, lane, eventTime);
16106				entangleTransitions(root$1, current$1, lane);
16107			}
16108			return lane;
16109		}
16110		function getPublicRootInstance(container) {
16111			var containerFiber = container.current;
16112			if (!containerFiber.child) return null;
16113			switch (containerFiber.child.tag) {
16114				case HostComponent: return getPublicInstance(containerFiber.child.stateNode);
16115				default: return containerFiber.child.stateNode;
16116			}
16117		}
16118		function attemptSynchronousHydration$1(fiber) {
16119			switch (fiber.tag) {
16120				case HostRoot:
16121					var root$1 = fiber.stateNode;
16122					if (isRootDehydrated(root$1)) flushRoot(root$1, getHighestPriorityPendingLanes(root$1));
16123					break;
16124				case SuspenseComponent:
16125					flushSync(function() {
16126						var root$2 = enqueueConcurrentRenderForLane(fiber, SyncLane);
16127						if (root$2 !== null) scheduleUpdateOnFiber(root$2, fiber, SyncLane, requestEventTime());
16128					});
16129					markRetryLaneIfNotHydrated(fiber, SyncLane);
16130					break;
16131			}
16132		}
16133		function markRetryLaneImpl(fiber, retryLane) {
16134			var suspenseState = fiber.memoizedState;
16135			if (suspenseState !== null && suspenseState.dehydrated !== null) suspenseState.retryLane = higherPriorityLane(suspenseState.retryLane, retryLane);
16136		}
16137		function markRetryLaneIfNotHydrated(fiber, retryLane) {
16138			markRetryLaneImpl(fiber, retryLane);
16139			var alternate = fiber.alternate;
16140			if (alternate) markRetryLaneImpl(alternate, retryLane);
16141		}
16142		function attemptContinuousHydration$1(fiber) {
16143			if (fiber.tag !== SuspenseComponent) return;
16144			var lane = SelectiveHydrationLane;
16145			var root$1 = enqueueConcurrentRenderForLane(fiber, lane);
16146			if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, lane, requestEventTime());
16147			markRetryLaneIfNotHydrated(fiber, lane);
16148		}
16149		function attemptHydrationAtCurrentPriority$1(fiber) {
16150			if (fiber.tag !== SuspenseComponent) return;
16151			var lane = requestUpdateLane(fiber);
16152			var root$1 = enqueueConcurrentRenderForLane(fiber, lane);
16153			if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, lane, requestEventTime());
16154			markRetryLaneIfNotHydrated(fiber, lane);
16155		}
16156		function findHostInstanceWithNoPortals(fiber) {
16157			var hostFiber = findCurrentHostFiberWithNoPortals(fiber);
16158			if (hostFiber === null) return null;
16159			return hostFiber.stateNode;
16160		}
16161		var shouldErrorImpl = function(fiber) {
16162			return null;
16163		};
16164		function shouldError(fiber) {
16165			return shouldErrorImpl(fiber);
16166		}
16167		var shouldSuspendImpl = function(fiber) {
16168			return false;
16169		};
16170		function shouldSuspend(fiber) {
16171			return shouldSuspendImpl(fiber);
16172		}
16173		var overrideHookState = null;
16174		var overrideHookStateDeletePath = null;
16175		var overrideHookStateRenamePath = null;
16176		var overrideProps = null;
16177		var overridePropsDeletePath = null;
16178		var overridePropsRenamePath = null;
16179		var scheduleUpdate = null;
16180		var setErrorHandler = null;
16181		var setSuspenseHandler = null;
16182		var copyWithDeleteImpl = function(obj, path, index$1) {
16183			var key = path[index$1];
16184			var updated = isArray(obj) ? obj.slice() : assign({}, obj);
16185			if (index$1 + 1 === path.length) {
16186				if (isArray(updated)) updated.splice(key, 1);
16187				else delete updated[key];
16188				return updated;
16189			}
16190			updated[key] = copyWithDeleteImpl(obj[key], path, index$1 + 1);
16191			return updated;
16192		};
16193		var copyWithDelete = function(obj, path) {
16194			return copyWithDeleteImpl(obj, path, 0);
16195		};
16196		var copyWithRenameImpl = function(obj, oldPath, newPath, index$1) {
16197			var oldKey = oldPath[index$1];
16198			var updated = isArray(obj) ? obj.slice() : assign({}, obj);
16199			if (index$1 + 1 === oldPath.length) {
16200				var newKey = newPath[index$1];
16201				updated[newKey] = updated[oldKey];
16202				if (isArray(updated)) updated.splice(oldKey, 1);
16203				else delete updated[oldKey];
16204			} else updated[oldKey] = copyWithRenameImpl(obj[oldKey], oldPath, newPath, index$1 + 1);
16205			return updated;
16206		};
16207		var copyWithRename = function(obj, oldPath, newPath) {
16208			if (oldPath.length !== newPath.length) {
16209				warn("copyWithRename() expects paths of the same length");
16210				return;
16211			} else for (var i = 0; i < newPath.length - 1; i++) if (oldPath[i] !== newPath[i]) {
16212				warn("copyWithRename() expects paths to be the same except for the deepest key");
16213				return;
16214			}
16215			return copyWithRenameImpl(obj, oldPath, newPath, 0);
16216		};
16217		var copyWithSetImpl = function(obj, path, index$1, value) {
16218			if (index$1 >= path.length) return value;
16219			var key = path[index$1];
16220			var updated = isArray(obj) ? obj.slice() : assign({}, obj);
16221			updated[key] = copyWithSetImpl(obj[key], path, index$1 + 1, value);
16222			return updated;
16223		};
16224		var copyWithSet = function(obj, path, value) {
16225			return copyWithSetImpl(obj, path, 0, value);
16226		};
16227		var findHook = function(fiber, id) {
16228			var currentHook$1 = fiber.memoizedState;
16229			while (currentHook$1 !== null && id > 0) {
16230				currentHook$1 = currentHook$1.next;
16231				id--;
16232			}
16233			return currentHook$1;
16234		};
16235		overrideHookState = function(fiber, id, path, value) {
16236			var hook = findHook(fiber, id);
16237			if (hook !== null) {
16238				var newState = copyWithSet(hook.memoizedState, path, value);
16239				hook.memoizedState = newState;
16240				hook.baseState = newState;
16241				fiber.memoizedProps = assign({}, fiber.memoizedProps);
16242				var root$1 = enqueueConcurrentRenderForLane(fiber, SyncLane);
16243				if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, SyncLane, NoTimestamp);
16244			}
16245		};
16246		overrideHookStateDeletePath = function(fiber, id, path) {
16247			var hook = findHook(fiber, id);
16248			if (hook !== null) {
16249				var newState = copyWithDelete(hook.memoizedState, path);
16250				hook.memoizedState = newState;
16251				hook.baseState = newState;
16252				fiber.memoizedProps = assign({}, fiber.memoizedProps);
16253				var root$1 = enqueueConcurrentRenderForLane(fiber, SyncLane);
16254				if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, SyncLane, NoTimestamp);
16255			}
16256		};
16257		overrideHookStateRenamePath = function(fiber, id, oldPath, newPath) {
16258			var hook = findHook(fiber, id);
16259			if (hook !== null) {
16260				var newState = copyWithRename(hook.memoizedState, oldPath, newPath);
16261				hook.memoizedState = newState;
16262				hook.baseState = newState;
16263				fiber.memoizedProps = assign({}, fiber.memoizedProps);
16264				var root$1 = enqueueConcurrentRenderForLane(fiber, SyncLane);
16265				if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, SyncLane, NoTimestamp);
16266			}
16267		};
16268		overrideProps = function(fiber, path, value) {
16269			fiber.pendingProps = copyWithSet(fiber.memoizedProps, path, value);
16270			if (fiber.alternate) fiber.alternate.pendingProps = fiber.pendingProps;
16271			var root$1 = enqueueConcurrentRenderForLane(fiber, SyncLane);
16272			if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, SyncLane, NoTimestamp);
16273		};
16274		overridePropsDeletePath = function(fiber, path) {
16275			fiber.pendingProps = copyWithDelete(fiber.memoizedProps, path);
16276			if (fiber.alternate) fiber.alternate.pendingProps = fiber.pendingProps;
16277			var root$1 = enqueueConcurrentRenderForLane(fiber, SyncLane);
16278			if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, SyncLane, NoTimestamp);
16279		};
16280		overridePropsRenamePath = function(fiber, oldPath, newPath) {
16281			fiber.pendingProps = copyWithRename(fiber.memoizedProps, oldPath, newPath);
16282			if (fiber.alternate) fiber.alternate.pendingProps = fiber.pendingProps;
16283			var root$1 = enqueueConcurrentRenderForLane(fiber, SyncLane);
16284			if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, SyncLane, NoTimestamp);
16285		};
16286		scheduleUpdate = function(fiber) {
16287			var root$1 = enqueueConcurrentRenderForLane(fiber, SyncLane);
16288			if (root$1 !== null) scheduleUpdateOnFiber(root$1, fiber, SyncLane, NoTimestamp);
16289		};
16290		setErrorHandler = function(newShouldErrorImpl) {
16291			shouldErrorImpl = newShouldErrorImpl;
16292		};
16293		setSuspenseHandler = function(newShouldSuspendImpl) {
16294			shouldSuspendImpl = newShouldSuspendImpl;
16295		};
16296		function findHostInstanceByFiber(fiber) {
16297			var hostFiber = findCurrentHostFiber(fiber);
16298			if (hostFiber === null) return null;
16299			return hostFiber.stateNode;
16300		}
16301		function emptyFindFiberByHostInstance(instance) {
16302			return null;
16303		}
16304		function getCurrentFiberForDevTools() {
16305			return current;
16306		}
16307		function injectIntoDevTools(devToolsConfig) {
16308			var findFiberByHostInstance = devToolsConfig.findFiberByHostInstance;
16309			var ReactCurrentDispatcher$3 = ReactSharedInternals.ReactCurrentDispatcher;
16310			return injectInternals({
16311				bundleType: devToolsConfig.bundleType,
16312				version: devToolsConfig.version,
16313				rendererPackageName: devToolsConfig.rendererPackageName,
16314				rendererConfig: devToolsConfig.rendererConfig,
16315				overrideHookState,
16316				overrideHookStateDeletePath,
16317				overrideHookStateRenamePath,
16318				overrideProps,
16319				overridePropsDeletePath,
16320				overridePropsRenamePath,
16321				setErrorHandler,
16322				setSuspenseHandler,
16323				scheduleUpdate,
16324				currentDispatcherRef: ReactCurrentDispatcher$3,
16325				findHostInstanceByFiber,
16326				findFiberByHostInstance: findFiberByHostInstance || emptyFindFiberByHostInstance,
16327				findHostInstancesForRefresh,
16328				scheduleRefresh,
16329				scheduleRoot,
16330				setRefreshHandler,
16331				getCurrentFiber: getCurrentFiberForDevTools,
16332				reconcilerVersion: ReactVersion
16333			});
16334		}
16335		var defaultOnRecoverableError = typeof reportError === "function" ? reportError : function(error$1) {
16336			console["error"](error$1);
16337		};
16338		function ReactDOMRoot(internalRoot) {
16339			this._internalRoot = internalRoot;
16340		}
16341		ReactDOMHydrationRoot.prototype.render = ReactDOMRoot.prototype.render = function(children) {
16342			var root$1 = this._internalRoot;
16343			if (root$1 === null) throw new Error("Cannot update an unmounted root.");
16344			if (typeof arguments[1] === "function") error("render(...): does not support the second callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().");
16345			else if (isValidContainer(arguments[1])) error("You passed a container to the second argument of root.render(...). You don't need to pass it again since you already passed it to create the root.");
16346			else if (typeof arguments[1] !== "undefined") error("You passed a second argument to root.render(...) but it only accepts one argument.");
16347			var container = root$1.containerInfo;
16348			if (container.nodeType !== COMMENT_NODE) {
16349				var hostInstance = findHostInstanceWithNoPortals(root$1.current);
16350				if (hostInstance) {
16351					if (hostInstance.parentNode !== container) error("render(...): It looks like the React-rendered content of the root container was removed without using React. This is not supported and will cause errors. Instead, call root.unmount() to empty a root's container.");
16352				}
16353			}
16354			updateContainer(children, root$1, null, null);
16355		};
16356		ReactDOMHydrationRoot.prototype.unmount = ReactDOMRoot.prototype.unmount = function() {
16357			if (typeof arguments[0] === "function") error("unmount(...): does not support a callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().");
16358			var root$1 = this._internalRoot;
16359			if (root$1 !== null) {
16360				this._internalRoot = null;
16361				var container = root$1.containerInfo;
16362				if (isAlreadyRendering()) error("Attempted to synchronously unmount a root while React was already rendering. React cannot finish unmounting the root until the current render has completed, which may lead to a race condition.");
16363				flushSync(function() {
16364					updateContainer(null, root$1, null, null);
16365				});
16366				unmarkContainerAsRoot(container);
16367			}
16368		};
16369		function createRoot(container, options$1) {
16370			if (!isValidContainer(container)) throw new Error("createRoot(...): Target container is not a DOM element.");
16371			warnIfReactDOMContainerInDEV(container);
16372			var isStrictMode = false;
16373			var concurrentUpdatesByDefaultOverride = false;
16374			var identifierPrefix = "";
16375			var onRecoverableError = defaultOnRecoverableError;
16376			if (options$1 !== null && options$1 !== void 0) {
16377				if (options$1.hydrate) warn("hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead.");
16378				else if (typeof options$1 === "object" && options$1 !== null && options$1.$$typeof === REACT_ELEMENT_TYPE) error("You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage:\n\n  let root = createRoot(domContainer);\n  root.render(<App />);");
16379				if (options$1.unstable_strictMode === true) isStrictMode = true;
16380				if (options$1.identifierPrefix !== void 0) identifierPrefix = options$1.identifierPrefix;
16381				if (options$1.onRecoverableError !== void 0) onRecoverableError = options$1.onRecoverableError;
16382				if (options$1.transitionCallbacks !== void 0) options$1.transitionCallbacks;
16383			}
16384			var root$1 = createContainer(container, ConcurrentRoot, null, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError);
16385			markContainerAsRoot(root$1.current, container);
16386			listenToAllSupportedEvents(container.nodeType === COMMENT_NODE ? container.parentNode : container);
16387			return new ReactDOMRoot(root$1);
16388		}
16389		function ReactDOMHydrationRoot(internalRoot) {
16390			this._internalRoot = internalRoot;
16391		}
16392		function scheduleHydration(target) {
16393			if (target) queueExplicitHydrationTarget(target);
16394		}
16395		ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = scheduleHydration;
16396		function hydrateRoot(container, initialChildren, options$1) {
16397			if (!isValidContainer(container)) throw new Error("hydrateRoot(...): Target container is not a DOM element.");
16398			warnIfReactDOMContainerInDEV(container);
16399			if (initialChildren === void 0) error("Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)");
16400			var hydrationCallbacks = options$1 != null ? options$1 : null;
16401			var mutableSources = options$1 != null && options$1.hydratedSources || null;
16402			var isStrictMode = false;
16403			var concurrentUpdatesByDefaultOverride = false;
16404			var identifierPrefix = "";
16405			var onRecoverableError = defaultOnRecoverableError;
16406			if (options$1 !== null && options$1 !== void 0) {
16407				if (options$1.unstable_strictMode === true) isStrictMode = true;
16408				if (options$1.identifierPrefix !== void 0) identifierPrefix = options$1.identifierPrefix;
16409				if (options$1.onRecoverableError !== void 0) onRecoverableError = options$1.onRecoverableError;
16410			}
16411			var root$1 = createHydrationContainer(initialChildren, null, container, ConcurrentRoot, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError);
16412			markContainerAsRoot(root$1.current, container);
16413			listenToAllSupportedEvents(container);
16414			if (mutableSources) for (var i = 0; i < mutableSources.length; i++) {
16415				var mutableSource = mutableSources[i];
16416				registerMutableSourceForHydration(root$1, mutableSource);
16417			}
16418			return new ReactDOMHydrationRoot(root$1);
16419		}
16420		function isValidContainer(node) {
16421			return !!(node && (node.nodeType === ELEMENT_NODE || node.nodeType === DOCUMENT_NODE || node.nodeType === DOCUMENT_FRAGMENT_NODE || !disableCommentsAsDOMContainers
16421));
16422		}
16423		function isValidContainerLegacy(node) {
16424			return !!(node && (node.nodeType === ELEMENT_NODE || node.nodeType === DOCUMENT_NODE || node.nodeType === DOCUMENT_FRAGMENT_NODE || node.nodeType === COMMENT_NODE && node.nodeValue === " react-mount-point-unstable "));
16425		}
16426		function warnIfReactDOMContainerInDEV(container) {
16427			if (container.nodeType === ELEMENT_NODE && container.tagName && container.tagName.toUpperCase() === "BODY") error("createRoot(): Creating roots directly with document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try using a container element created for your app.");
16428			if (isContainerMarkedAsRoot(container)) if (container._reactRootContainer) error("You are calling ReactDOMClient.createRoot() on a container that was previously passed to ReactDOM.render(). This is not supported.");
16429			else error("You are calling ReactDOMClient.createRoot() on a container that has already been passed to createRoot() before. Instead, call root.render() on the existing root instead if you want to update it.");
16430		}
16431		var ReactCurrentOwner$3 = ReactSharedInternals.ReactCurrentOwner;
16432		var topLevelUpdateWarnings = function(container) {
16433			if (container._reactRootContainer && container.nodeType !== COMMENT_NODE) {
16434				var hostInstance = findHostInstanceWithNoPortals(container._reactRootContainer.current);
16435				if (hostInstance) {
16436					if (hostInstance.parentNode !== container) error("render(...): It looks like the React-rendered content of this container was removed without using React. This is not supported and will cause errors. Instead, call ReactDOM.unmountComponentAtNode to empty a container.");
16437				}
16438			}
16439			var isRootRenderedBySomeReact = !!container._reactRootContainer;
16440			var rootEl = getReactRootElementInContainer(container);
16441			if (!!(rootEl && getInstanceFromNode(rootEl)) && !isRootRenderedBySomeReact) error("render(...): Replacing React-rendered children with a new root component. If you intended to update the children of this node, you should instead have the existing children update their state and render the new components instead of calling ReactDOM.render.");
16442			if (container.nodeType === ELEMENT_NODE && container.tagName && container.tagName.toUpperCase() === "BODY") error("render(): Rendering components directly into document.body is discouraged, since its children are often manipulated by third-party scripts and browser extensions. This may lead to subtle reconciliation issues. Try rendering into a container element created for your app.");
16443		};
16444		function getReactRootElementInContainer(container) {
16445			if (!container) return null;
16446			if (container.nodeType === DOCUMENT_NODE) return container.documentElement;
16447			else return container.firstChild;
16448		}
16449		function noopOnRecoverableError() {}
16450		function legacyCreateRootFromDOMContainer(container, initialChildren, parentComponent, callback, isHydrationContainer) {
16451			if (isHydrationContainer) {
16452				if (typeof callback === "function") {
16453					var originalCallback = callback;
16454					callback = function() {
16455						var instance = getPublicRootInstance(root$1);
16456						originalCallback.call(instance);
16457					};
16458				}
16459				var root$1 = createHydrationContainer(initialChildren, callback, container, LegacyRoot, null, false, false, "", noopOnRecoverableError);
16460				container._reactRootContainer = root$1;
16461				markContainerAsRoot(root$1.current, container);
16462				listenToAllSupportedEvents(container.nodeType === COMMENT_NODE ? container.parentNode : container);
16463				flushSync();
16464				return root$1;
16465			} else {
16466				var rootSibling;
16467				while (rootSibling = container.lastChild) container.removeChild(rootSibling);
16468				if (typeof callback === "function") {
16469					var _originalCallback = callback;
16470					callback = function() {
16471						var instance = getPublicRootInstance(_root);
16472						_originalCallback.call(instance);
16473					};
16474				}
16475				var _root = createContainer(container, LegacyRoot, null, false, false, "", noopOnRecoverableError);
16476				container._reactRootContainer = _root;
16477				markContainerAsRoot(_root.current, container);
16478				listenToAllSupportedEvents(container.nodeType === COMMENT_NODE ? container.parentNode : container);
16479				flushSync(function() {
16480					updateContainer(initialChildren, _root, parentComponent, callback);
16481				});
16482				return _root;
16483			}
16484		}
16485		function warnOnInvalidCallback$1(callback, callerName) {
16486			if (callback !== null && typeof callback !== "function") error("%s(...): Expected the last optional `callback` argument to be a function. Instead received: %s.", callerName, callback);
16487		}
16488		function legacyRenderSubtreeIntoContainer(parentComponent, children, container, forceHydrate, callback) {
16489			topLevelUpdateWarnings(container);
16490			warnOnInvalidCallback$1(callback === void 0 ? null : callback, "render");
16491			var maybeRoot = container._reactRootContainer;
16492			var root$1;
16493			if (!maybeRoot) root$1 = legacyCreateRootFromDOMContainer(container, children, parentComponent, callback, forceHydrate);
16494			else {
16495				root$1 = maybeRoot;
16496				if (typeof callback === "function") {
16497					var originalCallback = callback;
16498					callback = function() {
16499						var instance = getPublicRootInstance(root$1);
16500						originalCallback.call(instance);
16501					};
16502				}
16503				updateContainer(children, root$1, parentComponent, callback);
16504			}
16505			return getPublicRootInstance(root$1);
16506		}
16507		var didWarnAboutFindDOMNode = false;
16508		function findDOMNode(componentOrElement) {
16509			if (!didWarnAboutFindDOMNode) {
16510				didWarnAboutFindDOMNode = true;
16511				error("findDOMNode is deprecated and will be removed in the next major release. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-find-node");
16512			}
16513			var owner = ReactCurrentOwner$3.current;
16514			if (owner !== null && owner.stateNode !== null) {
16515				if (!owner.stateNode._warnedAboutRefsInRender) error("%s is accessing findDOMNode inside its render(). render() should be a pure function of props and state. It should never access something that requires stale data from the previous render, such as refs. Move this logic to componentDidMount and componentDidUpdate instead.", getComponentNameFromType(owner.type) || "A component");
16516				owner.stateNode._warnedAboutRefsInRender = true;
16517			}
16518			if (componentOrElement == null) return null;
16519			if (componentOrElement.nodeType === ELEMENT_NODE) return componentOrElement;
16520			return findHostInstanceWithWarning(componentOrElement, "findDOMNode");
16521		}
16522		function hydrate(element, container, callback) {
16523			error("ReactDOM.hydrate is no longer supported in React 18. Use hydrateRoot instead. Until you switch to the new API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot");
16524			if (!isValidContainerLegacy(container)) throw new Error("Target container is not a DOM element.");
16525			if (isContainerMarkedAsRoot(container) && container._reactRootContainer === void 0) error("You are calling ReactDOM.hydrate() on a container that was previously passed to ReactDOMClient.createRoot(). This is not supported. Did you mean to call hydrateRoot(container, element)?");
16526			return legacyRenderSubtreeIntoContainer(null, element, container, true, callback);
16527		}
16528		function render(element, container, callback) {
16529			error("ReactDOM.render is no longer supported in React 18. Use createRoot instead. Until you switch to the new API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot");
16530			if (!isValidContainerLegacy(container)) throw new Error("Target container is not a DOM element.");
16531			if (isContainerMarkedAsRoot(container) && container._reactRootContainer === void 0) error("You are calling ReactDOM.render() on a container that was previously passed to ReactDOMClient.createRoot(). This is not supported. Did you mean to call root.render(element)?");
16532			return legacyRenderSubtreeIntoContainer(null, element, container, false, callback);
16533		}
16534		function unstable_renderSubtreeIntoContainer(parentComponent, element, containerNode, callback) {
16535			error("ReactDOM.unstable_renderSubtreeIntoContainer() is no longer supported in React 18. Consider using a portal instead. Until you switch to the createRoot API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot");
16536			if (!isValidContainerLegacy(containerNode)) throw new Error("Target container is not a DOM element.");
16537			if (parentComponent == null || !has(parentComponent)) throw new Error("parentComponent must be a valid React Component");
16538			return legacyRenderSubtreeIntoContainer(parentComponent, element, containerNode, false, callback);
16539		}
16540		var didWarnAboutUnmountComponentAtNode = false;
16541		function unmountComponentAtNode(container) {
16542			if (!didWarnAboutUnmountComponentAtNode) {
16543				didWarnAboutUnmountComponentAtNode = true;
16544				error("unmountComponentAtNode is deprecated and will be removed in the next major release. Switch to the createRoot API. Learn more: https://reactjs.org/link/switch-to-createroot");
16545			}
16546			if (!isValidContainerLegacy(container)) throw new Error("unmountComponentAtNode(...): Target container is not a DOM element.");
16547			if (isContainerMarkedAsRoot(container) && container._reactRootContainer === void 0) error("You are calling ReactDOM.unmountComponentAtNode() on a container that was previously passed to ReactDOMClient.createRoot(). This is not supported. Did you mean to call root.unmount()?");
16548			if (container._reactRootContainer) {
16549				var rootEl = getReactRootElementInContainer(container);
16550				if (rootEl && !getInstanceFromNode(rootEl)) error("unmountComponentAtNode(): The node you're attempting to unmount was rendered by another copy of React.");
16551				flushSync(function() {
16552					legacyRenderSubtreeIntoContainer(null, null, container, false, function() {
16553						container._reactRootContainer = null;
16554						unmarkContainerAsRoot(container);
16555					});
16556				});
16557				return true;
16558			} else {
16559				var _rootEl = getReactRootElementInContainer(container);
16560				var hasNonRootReactChild = !!(_rootEl && getInstanceFromNode(_rootEl));
16561				var isContainerReactRoot = container.nodeType === ELEMENT_NODE && isValidContainerLegacy(container.parentNode) && !!container.parentNode._reactRootContainer;
16562				if (hasNonRootReactChild) error("unmountComponentAtNode(): The node you're attempting to unmount was rendered by React and is not a top-level container. %s", isContainerReactRoot ? "You may have accidentally passed in a React root node instead of its container." : "Instead, have the parent component update its state and rerender in order to remove this component.");
16563				return false;
16564			}
16565		}
16566		setAttemptSynchronousHydration(attemptSynchronousHydration$1);
16567		setAttemptContinuousHydration(attemptContinuousHydration$1);
16568		setAttemptHydrationAtCurrentPriority(attemptHydrationAtCurrentPriority$1);
16569		setGetCurrentUpdatePriority(getCurrentUpdatePriority);
16570		setAttemptHydrationAtPriority(runWithPriority);
16571		if (typeof Map !== "function" || Map.prototype == null || typeof Map.prototype.forEach !== "function" || typeof Set !== "function" || Set.prototype == null || typeof Set.prototype.clear !== "function" || typeof Set.prototype.forEach !== "function") error("React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills");
16572		setRestoreImplementation(restoreControlledState$3);
16573		setBatchingImplementation(batchedUpdates$1, discreteUpdates, flushSync);
16574		function createPortal$1(children, container) {
16575			var key = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null;
16576			if (!isValidContainer(container)) throw new Error("Target container is not a DOM element.");
16577			return createPortal(children, container, null, key);
16578		}
16579		function renderSubtreeIntoContainer(parentComponent, element, containerNode, callback) {
16580			return unstable_renderSubtreeIntoContainer(parentComponent, element, containerNode, callback);
16581		}
16582		var Internals = {
16583			usingClientEntryPoint: false,
16584			Events: [
16585				getInstanceFromNode,
16586				getNodeFromInstance,
16587				getFiberCurrentPropsFromNode,
16588				enqueueStateRestore,
16589				restoreStateIfNeeded,
16590				batchedUpdates$1
16591			]
16592		};
16593		function createRoot$1(container, options$1) {
16594			if (!Internals.usingClientEntryPoint && true) error("You are importing createRoot from \"react-dom\" which is not supported. You should instead import it from \"react-dom/client\".");
16595			return createRoot(container, options$1);
16596		}
16597		function hydrateRoot$1(container, initialChildren, options$1) {
16598			if (!Internals.usingClientEntryPoint && true) error("You are importing hydrateRoot from \"react-dom\" which is not supported. You should instead import it from \"react-dom/client\".");
16599			return hydrateRoot(container, initialChildren, options$1);
16600		}
16601		function flushSync$1(fn) {
16602			if (isAlreadyRendering()) error("flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task.");
16603			return flushSync(fn);
16604		}
16605		if (!injectIntoDevTools({
16606			findFiberByHostInstance: getClosestInstanceFromNode,
16607			bundleType: 1,
16608			version: ReactVersion,
16609			rendererPackageName: "react-dom"
16610		}) && canUseDOM && window.top === window.self) {
16611			if (navigator.userAgent.indexOf("Chrome") > -1 && navigator.userAgent.indexOf("Edge") === -1 || navigator.userAgent.indexOf("Firefox") > -1) {
16612				var protocol = window.location.protocol;
16613				if (/^(https?|file):$/.test(protocol)) console.info("%cDownload the React DevTools for a better development experience: https://reactjs.org/link/react-devtools" + (protocol === "file:" ? "\nYou might need to use a local HTTP server (instead of file://): https://reactjs.org/link/react-devtools-faq" : ""), "font-weight:bold");
16614			}
16615		}
16616		exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Internals;
16617		exports.createPortal = createPortal$1;
16618		exports.createRoot = createRoot$1;
16619		exports.findDOMNode = findDOMNode;
16620		exports.flushSync = flushSync$1;
16621		exports.hydrate = hydrate;
16622		exports.hydrateRoot = hydrateRoot$1;
16623		exports.render = render;
16624		exports.unmountComponentAtNode = unmountComponentAtNode;
16625		exports.unstable_batchedUpdates = batchedUpdates$1;
16626		exports.unstable_renderSubtreeIntoContainer = renderSubtreeIntoContainer;
16627		exports.version = ReactVersion;
16628		if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop === "function") __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(/* @__PURE__ */ new Error());
16629	})();
16630}));
16631var require_react_dom = /* @__PURE__ */ __commonJSMin(((exports, module) => {
16632	module.exports = require_react_dom_development();
16633}));
16634export { require_react_dom as t };
16635
16636//# sourceMappingURL=react-dom-ld7mzddK.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.