// Copyright 2002-2026, University of Colorado Boulder
// This PhET-iO file requires a license
// USE WITHOUT A LICENSE AGREEMENT IS STRICTLY PROHIBITED.
// For licensing, please contact phethelp@colorado.edu
//
// Contains additional code under the specified licenses:

/**
 * @license React
 * react.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */
(function(){'use strict';(function(c,x){"object"===typeof exports&&"undefined"!==typeof module?x(exports):"function"===typeof define&&define.amd?define(["exports"],x):(c=c||self,x(c.React={}))})(this,function(c){function x(a){if(null===a||"object"!==typeof a)return null;a=V&&a[V]||a["@@iterator"];return"function"===typeof a?a:null}function w(a,b,e){this.props=a;this.context=b;this.refs=W;this.updater=e||X}function Y(){}function K(a,b,e){this.props=a;this.context=b;this.refs=W;this.updater=e||X}function Z(a,b,
e){var m,d={},c=null,h=null;if(null!=b)for(m in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(c=""+b.key),b)aa.call(b,m)&&!ba.hasOwnProperty(m)&&(d[m]=b[m]);var l=arguments.length-2;if(1===l)d.children=e;else if(1<l){for(var f=Array(l),k=0;k<l;k++)f[k]=arguments[k+2];d.children=f}if(a&&a.defaultProps)for(m in l=a.defaultProps,l)void 0===d[m]&&(d[m]=l[m]);return{$$typeof:y,type:a,key:c,ref:h,props:d,_owner:L.current}}function na(a,b){return{$$typeof:y,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}
function M(a){return"object"===typeof a&&null!==a&&a.$$typeof===y}function oa(a){var b={"=":"=0",":":"=2"};return"$"+a.replace(/[=:]/g,function(a){return b[a]})}function N(a,b){return"object"===typeof a&&null!==a&&null!=a.key?oa(""+a.key):b.toString(36)}function B(a,b,e,m,d){var c=typeof a;if("undefined"===c||"boolean"===c)a=null;var h=!1;if(null===a)h=!0;else switch(c){case "string":case "number":h=!0;break;case "object":switch(a.$$typeof){case y:case pa:h=!0}}if(h)return h=a,d=d(h),a=""===m?"."+
N(h,0):m,ca(d)?(e="",null!=a&&(e=a.replace(da,"$&/")+"/"),B(d,b,e,"",function(a){return a})):null!=d&&(M(d)&&(d=na(d,e+(!d.key||h&&h.key===d.key?"":(""+d.key).replace(da,"$&/")+"/")+a)),b.push(d)),1;h=0;m=""===m?".":m+":";if(ca(a))for(var l=0;l<a.length;l++){c=a[l];var f=m+N(c,l);h+=B(c,b,e,f,d)}else if(f=x(a),"function"===typeof f)for(a=f.call(a),l=0;!(c=a.next()).done;)c=c.value,f=m+N(c,l++),h+=B(c,b,e,f,d);else if("object"===c)throw b=String(a),Error("Objects are not valid as a React child (found: "+
("[object Object]"===b?"object with keys {"+Object.keys(a).join(", ")+"}":b)+"). If you meant to render a collection of children, use an array instead.");return h}function C(a,b,e){if(null==a)return a;var c=[],d=0;B(a,c,"","",function(a){return b.call(e,a,d++)});return c}function qa(a){if(-1===a._status){var b=a._result;b=b();b.then(function(b){if(0===a._status||-1===a._status)a._status=1,a._result=b},function(b){if(0===a._status||-1===a._status)a._status=2,a._result=b});-1===a._status&&(a._status=
0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}function O(a,b){var e=a.length;a.push(b);a:for(;0<e;){var c=e-1>>>1,d=a[c];if(0<D(d,b))a[c]=b,a[e]=d,e=c;else break a}}function p(a){return 0===a.length?null:a[0]}function E(a){if(0===a.length)return null;var b=a[0],e=a.pop();if(e!==b){a[0]=e;a:for(var c=0,d=a.length,k=d>>>1;c<k;){var h=2*(c+1)-1,l=a[h],f=h+1,g=a[f];if(0>D(l,e))f<d&&0>D(g,l)?(a[c]=g,a[f]=e,c=f):(a[c]=l,a[h]=e,c=h);else if(f<d&&0>D(g,e))a[c]=g,a[f]=e,c=f;else break a}}return b}
function D(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}function P(a){for(var b=p(r);null!==b;){if(null===b.callback)E(r);else if(b.startTime<=a)E(r),b.sortIndex=b.expirationTime,O(q,b);else break;b=p(r)}}function Q(a){z=!1;P(a);if(!u)if(null!==p(q))u=!0,R(S);else{var b=p(r);null!==b&&T(Q,b.startTime-a)}}function S(a,b){u=!1;z&&(z=!1,ea(A),A=-1);F=!0;var c=k;try{P(b);for(n=p(q);null!==n&&(!(n.expirationTime>b)||a&&!fa());){var m=n.callback;if("function"===typeof m){n.callback=null;
k=n.priorityLevel;var d=m(n.expirationTime<=b);b=v();"function"===typeof d?n.callback=d:n===p(q)&&E(q);P(b)}else E(q);n=p(q)}if(null!==n)var g=!0;else{var h=p(r);null!==h&&T(Q,h.startTime-b);g=!1}return g}finally{n=null,k=c,F=!1}}function fa(){return v()-ha<ia?!1:!0}function R(a){G=a;H||(H=!0,I())}function T(a,b){A=ja(function(){a(v())},b)}var y=Symbol.for("react.element"),pa=Symbol.for("react.portal"),ra=Symbol.for("react.fragment"),sa=Symbol.for("react.strict_mode"),ta=Symbol.for("react.profiler"),
ua=Symbol.for("react.provider"),va=Symbol.for("react.context"),wa=Symbol.for("react.forward_ref"),xa=Symbol.for("react.suspense"),ya=Symbol.for("react.memo"),za=Symbol.for("react.lazy"),V=Symbol.iterator,X={isMounted:function(a){return!1},enqueueForceUpdate:function(a,b,c){},enqueueReplaceState:function(a,b,c,m){},enqueueSetState:function(a,b,c,m){}},ka=Object.assign,W={};w.prototype.isReactComponent={};w.prototype.setState=function(a,b){if("object"!==typeof a&&"function"!==typeof a&&null!=a)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");
this.updater.enqueueSetState(this,a,b,"setState")};w.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,"forceUpdate")};Y.prototype=w.prototype;var t=K.prototype=new Y;t.constructor=K;ka(t,w.prototype);t.isPureReactComponent=!0;var ca=Array.isArray,aa=Object.prototype.hasOwnProperty,L={current:null},ba={key:!0,ref:!0,__self:!0,__source:!0},da=/\/+/g,g={current:null},J={transition:null};if("object"===typeof performance&&"function"===typeof performance.now){var Aa=performance;
var v=function(){return Aa.now()}}else{var la=Date,Ba=la.now();v=function(){return la.now()-Ba}}var q=[],r=[],Ca=1,n=null,k=3,F=!1,u=!1,z=!1,ja="function"===typeof setTimeout?setTimeout:null,ea="function"===typeof clearTimeout?clearTimeout:null,ma="undefined"!==typeof setImmediate?setImmediate:null;"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var H=!1,G=null,A=-1,ia=5,ha=
-1,U=function(){if(null!==G){var a=v();ha=a;var b=!0;try{b=G(!0,a)}finally{b?I():(H=!1,G=null)}}else H=!1};if("function"===typeof ma)var I=function(){ma(U)};else if("undefined"!==typeof MessageChannel){t=new MessageChannel;var Da=t.port2;t.port1.onmessage=U;I=function(){Da.postMessage(null)}}else I=function(){ja(U,0)};t={ReactCurrentDispatcher:g,ReactCurrentOwner:L,ReactCurrentBatchConfig:J,Scheduler:{__proto__:null,unstable_ImmediatePriority:1,unstable_UserBlockingPriority:2,unstable_NormalPriority:3,
unstable_IdlePriority:5,unstable_LowPriority:4,unstable_runWithPriority:function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=k;k=a;try{return b()}finally{k=c}},unstable_next:function(a){switch(k){case 1:case 2:case 3:var b=3;break;default:b=k}var c=k;k=b;try{return a()}finally{k=c}},unstable_scheduleCallback:function(a,b,c){var e=v();"object"===typeof c&&null!==c?(c=c.delay,c="number"===typeof c&&0<c?e+c:e):c=e;switch(a){case 1:var d=-1;break;case 2:d=250;break;case 5:d=
1073741823;break;case 4:d=1E4;break;default:d=5E3}d=c+d;a={id:Ca++,callback:b,priorityLevel:a,startTime:c,expirationTime:d,sortIndex:-1};c>e?(a.sortIndex=c,O(r,a),null===p(q)&&a===p(r)&&(z?(ea(A),A=-1):z=!0,T(Q,c-e))):(a.sortIndex=d,O(q,a),u||F||(u=!0,R(S)));return a},unstable_cancelCallback:function(a){a.callback=null},unstable_wrapCallback:function(a){var b=k;return function(){var c=k;k=b;try{return a.apply(this,arguments)}finally{k=c}}},unstable_getCurrentPriorityLevel:function(){return k},unstable_shouldYield:fa,
unstable_requestPaint:function(){},unstable_continueExecution:function(){u||F||(u=!0,R(S))},unstable_pauseExecution:function(){},unstable_getFirstCallbackNode:function(){return p(q)},get unstable_now(){return v},unstable_forceFrameRate:function(a){0>a||125<a?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ia=0<a?Math.floor(1E3/a):5},unstable_Profiling:null}};c.Children={map:C,forEach:function(a,b,c){C(a,function(){b.apply(this,
arguments)},c)},count:function(a){var b=0;C(a,function(){b++});return b},toArray:function(a){return C(a,function(a){return a})||[]},only:function(a){if(!M(a))throw Error("React.Children.only expected to receive a single React element child.");return a}};c.Component=w;c.Fragment=ra;c.Profiler=ta;c.PureComponent=K;c.StrictMode=sa;c.Suspense=xa;c.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=t;c.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+
a+".");var e=ka({},a.props),d=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=L.current);void 0!==b.key&&(d=""+b.key);if(a.type&&a.type.defaultProps)var l=a.type.defaultProps;for(f in b)aa.call(b,f)&&!ba.hasOwnProperty(f)&&(e[f]=void 0===b[f]&&void 0!==l?l[f]:b[f])}var f=arguments.length-2;if(1===f)e.children=c;else if(1<f){l=Array(f);for(var g=0;g<f;g++)l[g]=arguments[g+2];e.children=l}return{$$typeof:y,type:a.type,key:d,ref:k,props:e,_owner:h}};c.createContext=function(a){a={$$typeof:va,
_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};a.Provider={$$typeof:ua,_context:a};return a.Consumer=a};c.createElement=Z;c.createFactory=function(a){var b=Z.bind(null,a);b.type=a;return b};c.createRef=function(){return{current:null}};c.forwardRef=function(a){return{$$typeof:wa,render:a}};c.isValidElement=M;c.lazy=function(a){return{$$typeof:za,_payload:{_status:-1,_result:a},_init:qa}};c.memo=function(a,b){return{$$typeof:ya,type:a,
compare:void 0===b?null:b}};c.startTransition=function(a,b){b=J.transition;J.transition={};try{a()}finally{J.transition=b}};c.unstable_act=function(a){throw Error("act(...) is not supported in production builds of React.");};c.useCallback=function(a,b){return g.current.useCallback(a,b)};c.useContext=function(a){return g.current.useContext(a)};c.useDebugValue=function(a,b){};c.useDeferredValue=function(a){return g.current.useDeferredValue(a)};c.useEffect=function(a,b){return g.current.useEffect(a,
b)};c.useId=function(){return g.current.useId()};c.useImperativeHandle=function(a,b,c){return g.current.useImperativeHandle(a,b,c)};c.useInsertionEffect=function(a,b){return g.current.useInsertionEffect(a,b)};c.useLayoutEffect=function(a,b){return g.current.useLayoutEffect(a,b)};c.useMemo=function(a,b){return g.current.useMemo(a,b)};c.useReducer=function(a,b,c){return g.current.useReducer(a,b,c)};c.useRef=function(a){return g.current.useRef(a)};c.useState=function(a){return g.current.useState(a)};
c.useSyncExternalStore=function(a,b,c){return g.current.useSyncExternalStore(a,b,c)};c.useTransition=function(){return g.current.useTransition()};c.version="18.1.0"});
})();


/**
 * @license React
 * react-dom.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */
(function(){/*
 Modernizr 3.0.0pre (Custom Build) | MIT
*/
'use strict';(function(N,kb){"object"===typeof exports&&"undefined"!==typeof module?kb(exports,require("react")):"function"===typeof define&&define.amd?define(["exports","react"],kb):(N=N||self,kb(N.ReactDOM={},N.React))})(this,function(N,kb){function n(a){for(var b="https://reactjs.org/docs/error-decoder.html?invariant="+a,c=1;c<arguments.length;c++)b+="&args[]="+encodeURIComponent(arguments[c]);return"Minified React error #"+a+"; visit "+b+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}
function lb(a,b){xb(a,b);xb(a+"Capture",b)}function xb(a,b){Wb[a]=b;for(a=0;a<b.length;a++)Zf.add(b[a])}function aj(a){if(Xd.call($f,a))return!0;if(Xd.call(ag,a))return!1;if(bj.test(a))return $f[a]=!0;ag[a]=!0;return!1}function cj(a,b,c,d){if(null!==c&&0===c.type)return!1;switch(typeof b){case "function":case "symbol":return!0;case "boolean":if(d)return!1;if(null!==c)return!c.acceptsBooleans;a=a.toLowerCase().slice(0,5);return"data-"!==a&&"aria-"!==a;default:return!1}}function dj(a,b,c,d){if(null===
b||"undefined"===typeof b||cj(a,b,c,d))return!0;if(d)return!1;if(null!==c)switch(c.type){case 3:return!b;case 4:return!1===b;case 5:return isNaN(b);case 6:return isNaN(b)||1>b}return!1}function V(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}function Yd(a,b,c,d){var e=O.hasOwnProperty(b)?O[b]:null;if(null!==e?0!==e.type:d||!(2<b.length)||"o"!==
b[0]&&"O"!==b[0]||"n"!==b[1]&&"N"!==b[1])dj(b,c,e,d)&&(c=null),d||null===e?aj(b)&&(null===c?a.removeAttribute(b):a.setAttribute(b,""+c)):e.mustUseProperty?a[e.propertyName]=null===c?3===e.type?!1:"":c:(b=e.attributeName,d=e.attributeNamespace,null===c?a.removeAttribute(b):(e=e.type,c=3===e||4===e&&!0===c?"":""+c,d?a.setAttributeNS(d,b,c):a.setAttribute(b,c)))}function Xb(a){if(null===a||"object"!==typeof a)return null;a=bg&&a[bg]||a["@@iterator"];return"function"===typeof a?a:null}function Yb(a,b,
c){if(void 0===Zd)try{throw Error();}catch(d){Zd=(b=d.stack.trim().match(/\n( *(at )?)/))&&b[1]||""}return"\n"+Zd+a}function $d(a,b){if(!a||ae)return"";ae=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(b)if(b=function(){throw Error();},Object.defineProperty(b.prototype,"props",{set:function(){throw Error();}}),"object"===typeof Reflect&&Reflect.construct){try{Reflect.construct(b,[])}catch(l){var d=l}Reflect.construct(a,[],b)}else{try{b.call()}catch(l){d=l}a.call(b.prototype)}else{try{throw Error();
}catch(l){d=l}a()}}catch(l){if(l&&d&&"string"===typeof l.stack){for(var e=l.stack.split("\n"),f=d.stack.split("\n"),g=e.length-1,h=f.length-1;1<=g&&0<=h&&e[g]!==f[h];)h--;for(;1<=g&&0<=h;g--,h--)if(e[g]!==f[h]){if(1!==g||1!==h){do if(g--,h--,0>h||e[g]!==f[h]){var k="\n"+e[g].replace(" at new "," at ");a.displayName&&k.includes("<anonymous>")&&(k=k.replace("<anonymous>",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{ae=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:"")?Yb(a):
""}function ej(a){switch(a.tag){case 5:return Yb(a.type);case 16:return Yb("Lazy");case 13:return Yb("Suspense");case 19:return Yb("SuspenseList");case 0:case 2:case 15:return a=$d(a.type,!1),a;case 11:return a=$d(a.type.render,!1),a;case 1:return a=$d(a.type,!0),a;default:return""}}function be(a){if(null==a)return null;if("function"===typeof a)return a.displayName||a.name||null;if("string"===typeof a)return a;switch(a){case yb:return"Fragment";case zb:return"Portal";case ce:return"Profiler";case de:return"StrictMode";
case ee:return"Suspense";case fe:return"SuspenseList"}if("object"===typeof a)switch(a.$$typeof){case cg:return(a.displayName||"Context")+".Consumer";case dg:return(a._context.displayName||"Context")+".Provider";case ge:var b=a.render;a=a.displayName;a||(a=b.displayName||b.name||"",a=""!==a?"ForwardRef("+a+")":"ForwardRef");return a;case he:return b=a.displayName||null,null!==b?b:be(a.type)||"Memo";case Ra:b=a._payload;a=a._init;try{return be(a(b))}catch(c){}}return null}function fj(a){var b=a.type;
switch(a.tag){case 24:return"Cache";case 9:return(b.displayName||"Context")+".Consumer";case 10:return(b._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return a=b.render,a=a.displayName||a.name||"",b.displayName||(""!==a?"ForwardRef("+a+")":"ForwardRef");case 7:return"Fragment";case 5:return b;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return be(b);case 8:return b===de?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";
case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"===typeof b)return b.displayName||b.name||null;if("string"===typeof b)return b}return null}function Sa(a){switch(typeof a){case "boolean":case "number":case "string":case "undefined":return a;case "object":return a;default:return""}}function eg(a){var b=a.type;return(a=a.nodeName)&&"input"===a.toLowerCase()&&("checkbox"===b||"radio"===
b)}function gj(a){var b=eg(a)?"checked":"value",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=""+a[b];if(!a.hasOwnProperty(b)&&"undefined"!==typeof c&&"function"===typeof c.get&&"function"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=""+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=""+a},stopTracking:function(){a._valueTracker=
null;delete a[b]}}}}function Mc(a){a._valueTracker||(a._valueTracker=gj(a))}function fg(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d="";a&&(d=eg(a)?a.checked?"true":"false":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Nc(a){a=a||("undefined"!==typeof document?document:void 0);if("undefined"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}function ie(a,b){var c=b.checked;return D({},b,{defaultChecked:void 0,defaultValue:void 0,
value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function gg(a,b){var c=null==b.defaultValue?"":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:"checkbox"===b.type||"radio"===b.type?null!=b.checked:null!=b.value}}function hg(a,b){b=b.checked;null!=b&&Yd(a,"checked",b,!1)}function je(a,b){hg(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if("number"===d){if(0===c&&""===a.value||a.value!=
c)a.value=""+c}else a.value!==""+c&&(a.value=""+c);else if("submit"===d||"reset"===d){a.removeAttribute("value");return}b.hasOwnProperty("value")?ke(a,b.type,c):b.hasOwnProperty("defaultValue")&&ke(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}function ig(a,b,c){if(b.hasOwnProperty("value")||b.hasOwnProperty("defaultValue")){var d=b.type;if(!("submit"!==d&&"reset"!==d||void 0!==b.value&&null!==b.value))return;b=""+a._wrapperState.initialValue;
c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;""!==c&&(a.name="");a.defaultChecked=!!a._wrapperState.initialChecked;""!==c&&(a.name=c)}function ke(a,b,c){if("number"!==b||Nc(a.ownerDocument)!==a)null==c?a.defaultValue=""+a._wrapperState.initialValue:a.defaultValue!==""+c&&(a.defaultValue=""+c)}function Ab(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e<c.length;e++)b["$"+c[e]]=!0;for(c=0;c<a.length;c++)e=b.hasOwnProperty("$"+a[c].value),a[c].selected!==e&&(a[c].selected=e),e&&d&&(a[c].defaultSelected=
!0)}else{c=""+Sa(c);b=null;for(e=0;e<a.length;e++){if(a[e].value===c){a[e].selected=!0;d&&(a[e].defaultSelected=!0);return}null!==b||a[e].disabled||(b=a[e])}null!==b&&(b.selected=!0)}}function le(a,b){if(null!=b.dangerouslySetInnerHTML)throw Error(n(91));return D({},b,{value:void 0,defaultValue:void 0,children:""+a._wrapperState.initialValue})}function jg(a,b){var c=b.value;if(null==c){c=b.children;b=b.defaultValue;if(null!=c){if(null!=b)throw Error(n(92));if(Zb(c)){if(1<c.length)throw Error(n(93));
c=c[0]}b=c}null==b&&(b="");c=b}a._wrapperState={initialValue:Sa(c)}}function kg(a,b){var c=Sa(b.value),d=Sa(b.defaultValue);null!=c&&(c=""+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=""+d)}function lg(a,b){b=a.textContent;b===a._wrapperState.initialValue&&""!==b&&null!==b&&(a.value=b)}function mg(a){switch(a){case "svg":return"http://www.w3.org/2000/svg";case "math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}
function me(a,b){return null==a||"http://www.w3.org/1999/xhtml"===a?mg(b):"http://www.w3.org/2000/svg"===a&&"foreignObject"===b?"http://www.w3.org/1999/xhtml":a}function ng(a,b,c){return null==b||"boolean"===typeof b||""===b?"":c||"number"!==typeof b||0===b||$b.hasOwnProperty(a)&&$b[a]?(""+b).trim():b+"px"}function og(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf("--"),e=ng(c,b[c],d);"float"===c&&(c="cssFloat");d?a.setProperty(c,e):a[c]=e}}function ne(a,b){if(b){if(hj[a]&&
(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(n(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(n(60));if("object"!==typeof b.dangerouslySetInnerHTML||!("__html"in b.dangerouslySetInnerHTML))throw Error(n(61));}if(null!=b.style&&"object"!==typeof b.style)throw Error(n(62));}}function oe(a,b){if(-1===a.indexOf("-"))return"string"===typeof b.is;switch(a){case "annotation-xml":case "color-profile":case "font-face":case "font-face-src":case "font-face-uri":case "font-face-format":case "font-face-name":case "missing-glyph":return!1;
default:return!0}}function pe(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}function pg(a){if(a=ac(a)){if("function"!==typeof qe)throw Error(n(280));var b=a.stateNode;b&&(b=Oc(b),qe(a.stateNode,a.type,b))}}function qg(a){Bb?Cb?Cb.push(a):Cb=[a]:Bb=a}function rg(){if(Bb){var a=Bb,b=Cb;Cb=Bb=null;pg(a);if(b)for(a=0;a<b.length;a++)pg(b[a])}}function sg(a,b,c){if(re)return a(b,c);re=!0;try{return tg(a,b,c)}finally{if(re=
!1,null!==Bb||null!==Cb)ug(),rg()}}function bc(a,b){var c=a.stateNode;if(null===c)return null;var d=Oc(c);if(null===d)return null;c=d[b];a:switch(b){case "onClick":case "onClickCapture":case "onDoubleClick":case "onDoubleClickCapture":case "onMouseDown":case "onMouseDownCapture":case "onMouseMove":case "onMouseMoveCapture":case "onMouseUp":case "onMouseUpCapture":case "onMouseEnter":(d=!d.disabled)||(a=a.type,d=!("button"===a||"input"===a||"select"===a||"textarea"===a));a=!d;break a;default:a=!1}if(a)return null;
if(c&&"function"!==typeof c)throw Error(n(231,b,typeof c));return c}function ij(a,b,c,d,e,f,g,h,k){cc=!1;Pc=null;jj.apply(kj,arguments)}function lj(a,b,c,d,e,f,g,h,k){ij.apply(this,arguments);if(cc){if(cc){var l=Pc;cc=!1;Pc=null}else throw Error(n(198));Qc||(Qc=!0,se=l)}}function mb(a){var b=a,c=a;if(a.alternate)for(;b.return;)b=b.return;else{a=b;do b=a,0!==(b.flags&4098)&&(c=b.return),a=b.return;while(a)}return 3===b.tag?c:null}function vg(a){if(13===a.tag){var b=a.memoizedState;null===b&&(a=a.alternate,
null!==a&&(b=a.memoizedState));if(null!==b)return b.dehydrated}return null}function wg(a){if(mb(a)!==a)throw Error(n(188));}function mj(a){var b=a.alternate;if(!b){b=mb(a);if(null===b)throw Error(n(188));return b!==a?null:a}for(var c=a,d=b;;){var e=c.return;if(null===e)break;var f=e.alternate;if(null===f){d=e.return;if(null!==d){c=d;continue}break}if(e.child===f.child){for(f=e.child;f;){if(f===c)return wg(e),a;if(f===d)return wg(e),b;f=f.sibling}throw Error(n(188));}if(c.return!==d.return)c=e,d=f;
else{for(var g=!1,h=e.child;h;){if(h===c){g=!0;c=e;d=f;break}if(h===d){g=!0;d=e;c=f;break}h=h.sibling}if(!g){for(h=f.child;h;){if(h===c){g=!0;c=f;d=e;break}if(h===d){g=!0;d=f;c=e;break}h=h.sibling}if(!g)throw Error(n(189));}}if(c.alternate!==d)throw Error(n(190));}if(3!==c.tag)throw Error(n(188));return c.stateNode.current===c?a:b}function xg(a){a=mj(a);return null!==a?yg(a):null}function yg(a){if(5===a.tag||6===a.tag)return a;for(a=a.child;null!==a;){var b=yg(a);if(null!==b)return b;a=a.sibling}return null}
function nj(a,b){if(Ba&&"function"===typeof Ba.onCommitFiberRoot)try{Ba.onCommitFiberRoot(Rc,a,void 0,128===(a.current.flags&128))}catch(c){}}function oj(a){a>>>=0;return 0===a?32:31-(pj(a)/qj|0)|0}function dc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&
4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return a}}function Sc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=dc(h):(f&=g,0!==f&&(d=dc(f)))}else g=c&~e,0!==g?d=dc(g):0!==f&&(d=dc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&
(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0<b;)c=31-ta(b),e=1<<c,d|=a[c],b&=~e;return d}function rj(a,b){switch(a){case 1:case 2:case 4:return b+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return b+5E3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;
case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function sj(a,b){for(var c=a.suspendedLanes,d=a.pingedLanes,e=a.expirationTimes,f=a.pendingLanes;0<f;){var g=31-ta(f),h=1<<g,k=e[g];if(-1===k){if(0===(h&c)||0!==(h&d))e[g]=rj(h,b)}else k<=b&&(a.expiredLanes|=h);f&=~h}}function te(a){a=a.pendingLanes&-1073741825;return 0!==a?a:a&1073741824?1073741824:0}function zg(){var a=Tc;Tc<<=1;0===(Tc&4194240)&&(Tc=64);return a}function ue(a){for(var b=[],c=0;31>c;c++)b.push(a);
return b}function ec(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-ta(b);a[b]=c}function tj(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0<c;){var e=31-ta(c),f=1<<e;b[e]=0;d[e]=-1;a[e]=-1;c&=~f}}function ve(a,b){var c=a.entangledLanes|=b;for(a=a.entanglements;c;){var d=31-ta(c),e=1<<d;e&b|a[d]&
b&&(a[d]|=b);c&=~e}}function Ag(a){a&=-a;return 1<a?4<a?0!==(a&268435455)?16:536870912:4:1}function Bg(a,b){switch(a){case "focusin":case "focusout":Ta=null;break;case "dragenter":case "dragleave":Ua=null;break;case "mouseover":case "mouseout":Va=null;break;case "pointerover":case "pointerout":fc.delete(b.pointerId);break;case "gotpointercapture":case "lostpointercapture":gc.delete(b.pointerId)}}function hc(a,b,c,d,e,f){if(null===a||a.nativeEvent!==f)return a={blockedOn:b,domEventName:c,eventSystemFlags:d,
nativeEvent:f,targetContainers:[e]},null!==b&&(b=ac(b),null!==b&&Cg(b)),a;a.eventSystemFlags|=d;b=a.targetContainers;null!==e&&-1===b.indexOf(e)&&b.push(e);return a}function uj(a,b,c,d,e){switch(b){case "focusin":return Ta=hc(Ta,a,b,c,d,e),!0;case "dragenter":return Ua=hc(Ua,a,b,c,d,e),!0;case "mouseover":return Va=hc(Va,a,b,c,d,e),!0;case "pointerover":var f=e.pointerId;fc.set(f,hc(fc.get(f)||null,a,b,c,d,e));return!0;case "gotpointercapture":return f=e.pointerId,gc.set(f,hc(gc.get(f)||null,a,b,
c,d,e)),!0}return!1}function Dg(a){var b=nb(a.target);if(null!==b){var c=mb(b);if(null!==c)if(b=c.tag,13===b){if(b=vg(c),null!==b){a.blockedOn=b;vj(a.priority,function(){wj(c)});return}}else if(3===b&&c.stateNode.current.memoizedState.isDehydrated){a.blockedOn=3===c.tag?c.stateNode.containerInfo:null;return}}a.blockedOn=null}function Uc(a){if(null!==a.blockedOn)return!1;for(var b=a.targetContainers;0<b.length;){var c=we(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null===c){c=a.nativeEvent;
var d=new c.constructor(c.type,c);xe=d;c.target.dispatchEvent(d);xe=null}else return b=ac(c),null!==b&&Cg(b),a.blockedOn=c,!1;b.shift()}return!0}function Eg(a,b,c){Uc(a)&&c.delete(b)}function xj(){ye=!1;null!==Ta&&Uc(Ta)&&(Ta=null);null!==Ua&&Uc(Ua)&&(Ua=null);null!==Va&&Uc(Va)&&(Va=null);fc.forEach(Eg);gc.forEach(Eg)}function ic(a,b){a.blockedOn===b&&(a.blockedOn=null,ye||(ye=!0,Fg(Gg,xj)))}function jc(a){if(0<Vc.length){ic(Vc[0],a);for(var b=1;b<Vc.length;b++){var c=Vc[b];c.blockedOn===a&&(c.blockedOn=
null)}}null!==Ta&&ic(Ta,a);null!==Ua&&ic(Ua,a);null!==Va&&ic(Va,a);b=function(b){return ic(b,a)};fc.forEach(b);gc.forEach(b);for(b=0;b<Wa.length;b++)c=Wa[b],c.blockedOn===a&&(c.blockedOn=null);for(;0<Wa.length&&(b=Wa[0],null===b.blockedOn);)Dg(b),null===b.blockedOn&&Wa.shift()}function yj(a,b,c,d){var e=x,f=Db.transition;Db.transition=null;try{x=1,ze(a,b,c,d)}finally{x=e,Db.transition=f}}function zj(a,b,c,d){var e=x,f=Db.transition;Db.transition=null;try{x=4,ze(a,b,c,d)}finally{x=e,Db.transition=
f}}function ze(a,b,c,d){if(Wc){var e=we(a,b,c,d);if(null===e)Ae(a,b,d,Xc,c),Bg(a,d);else if(uj(e,a,b,c,d))d.stopPropagation();else if(Bg(a,d),b&4&&-1<Aj.indexOf(a)){for(;null!==e;){var f=ac(e);null!==f&&Bj(f);f=we(a,b,c,d);null===f&&Ae(a,b,d,Xc,c);if(f===e)break;e=f}null!==e&&d.stopPropagation()}else Ae(a,b,d,null,c)}}function we(a,b,c,d){Xc=null;a=pe(d);a=nb(a);if(null!==a)if(b=mb(a),null===b)a=null;else if(c=b.tag,13===c){a=vg(b);if(null!==a)return a;a=null}else if(3===c){if(b.stateNode.current.memoizedState.isDehydrated)return 3===
b.tag?b.stateNode.containerInfo:null;a=null}else b!==a&&(a=null);Xc=a;return null}function Hg(a){switch(a){case "cancel":case "click":case "close":case "contextmenu":case "copy":case "cut":case "auxclick":case "dblclick":case "dragend":case "dragstart":case "drop":case "focusin":case "focusout":case "input":case "invalid":case "keydown":case "keypress":case "keyup":case "mousedown":case "mouseup":case "paste":case "pause":case "play":case "pointercancel":case "pointerdown":case "pointerup":case "ratechange":case "reset":case "resize":case "seeked":case "submit":case "touchcancel":case "touchend":case "touchstart":case "volumechange":case "change":case "selectionchange":case "textInput":case "compositionstart":case "compositionend":case "compositionupdate":case "beforeblur":case "afterblur":case "beforeinput":case "blur":case "fullscreenchange":case "focus":case "hashchange":case "popstate":case "select":case "selectstart":return 1;
case "drag":case "dragenter":case "dragexit":case "dragleave":case "dragover":case "mousemove":case "mouseout":case "mouseover":case "pointermove":case "pointerout":case "pointerover":case "scroll":case "toggle":case "touchmove":case "wheel":case "mouseenter":case "mouseleave":case "pointerenter":case "pointerleave":return 4;case "message":switch(Cj()){case Be:return 1;case Ig:return 4;case Yc:case Dj:return 16;case Jg:return 536870912;default:return 16}default:return 16}}function Kg(){if(Zc)return Zc;
var a,b=Ce,c=b.length,d,e="value"in Xa?Xa.value:Xa.textContent,f=e.length;for(a=0;a<c&&b[a]===e[a];a++);var g=c-a;for(d=1;d<=g&&b[c-d]===e[f-d];d++);return Zc=e.slice(a,1<d?1-d:void 0)}function $c(a){var b=a.keyCode;"charCode"in a?(a=a.charCode,0===a&&13===b&&(a=13)):a=b;10===a&&(a=13);return 32<=a||13===a?a:0}function ad(){return!0}function Lg(){return!1}function ja(a){function b(b,d,e,f,g){this._reactName=b;this._targetInst=e;this.type=d;this.nativeEvent=f;this.target=g;this.currentTarget=null;
for(var c in a)a.hasOwnProperty(c)&&(b=a[c],this[c]=b?b(f):f[c]);this.isDefaultPrevented=(null!=f.defaultPrevented?f.defaultPrevented:!1===f.returnValue)?ad:Lg;this.isPropagationStopped=Lg;return this}D(b.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():"unknown"!==typeof a.returnValue&&(a.returnValue=!1),this.isDefaultPrevented=ad)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():
"unknown"!==typeof a.cancelBubble&&(a.cancelBubble=!0),this.isPropagationStopped=ad)},persist:function(){},isPersistent:ad});return b}function Ej(a){var b=this.nativeEvent;return b.getModifierState?b.getModifierState(a):(a=Fj[a])?!!b[a]:!1}function De(a){return Ej}function Mg(a,b){switch(a){case "keyup":return-1!==Gj.indexOf(b.keyCode);case "keydown":return 229!==b.keyCode;case "keypress":case "mousedown":case "focusout":return!0;default:return!1}}function Ng(a){a=a.detail;return"object"===typeof a&&
"data"in a?a.data:null}function Hj(a,b){switch(a){case "compositionend":return Ng(b);case "keypress":if(32!==b.which)return null;Og=!0;return Pg;case "textInput":return a=b.data,a===Pg&&Og?null:a;default:return null}}function Ij(a,b){if(Eb)return"compositionend"===a||!Ee&&Mg(a,b)?(a=Kg(),Zc=Ce=Xa=null,Eb=!1,a):null;switch(a){case "paste":return null;case "keypress":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1<b.char.length)return b.char;if(b.which)return String.fromCharCode(b.which)}return null;
case "compositionend":return Qg&&"ko"!==b.locale?null:b.data;default:return null}}function Rg(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return"input"===b?!!Jj[a.type]:"textarea"===b?!0:!1}function Kj(a){if(!Ha)return!1;a="on"+a;var b=a in document;b||(b=document.createElement("div"),b.setAttribute(a,"return;"),b="function"===typeof b[a]);return b}function Sg(a,b,c,d){qg(d);b=bd(b,"onChange");0<b.length&&(c=new Fe("onChange","change",null,c,d),a.push({event:c,listeners:b}))}function Lj(a){Tg(a,
0)}function cd(a){var b=Fb(a);if(fg(b))return a}function Mj(a,b){if("change"===a)return b}function Ug(){kc&&(kc.detachEvent("onpropertychange",Vg),lc=kc=null)}function Vg(a){if("value"===a.propertyName&&cd(lc)){var b=[];Sg(b,lc,a,pe(a));sg(Lj,b)}}function Nj(a,b,c){"focusin"===a?(Ug(),kc=b,lc=c,kc.attachEvent("onpropertychange",Vg)):"focusout"===a&&Ug()}function Oj(a,b){if("selectionchange"===a||"keyup"===a||"keydown"===a)return cd(lc)}function Pj(a,b){if("click"===a)return cd(b)}function Qj(a,b){if("input"===
a||"change"===a)return cd(b)}function Rj(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}function mc(a,b){if(ua(a,b))return!0;if("object"!==typeof a||null===a||"object"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++){var e=c[d];if(!Xd.call(b,e)||!ua(a[e],b[e]))return!1}return!0}function Wg(a){for(;a&&a.firstChild;)a=a.firstChild;return a}function Xg(a,b){var c=Wg(a);a=0;for(var d;c;){if(3===c.nodeType){d=a+c.textContent.length;
if(a<=b&&d>=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Wg(c)}}function Yg(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Yg(a,b.parentNode):"contains"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}function Zg(){for(var a=window,b=Nc();b instanceof a.HTMLIFrameElement;){try{var c="string"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;
b=Nc(a.document)}return b}function Ge(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&("input"===b&&("text"===a.type||"search"===a.type||"tel"===a.type||"url"===a.type||"password"===a.type)||"textarea"===b||"true"===a.contentEditable)}function Sj(a){var b=Zg(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Yg(c.ownerDocument.documentElement,c)){if(null!==d&&Ge(c))if(b=d.start,a=d.end,void 0===a&&(a=b),"selectionStart"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);
else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Xg(c,f);var g=Xg(c,d);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),
a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});"function"===typeof c.focus&&c.focus();for(c=0;c<b.length;c++)a=b[c],a.element.scrollLeft=a.left,a.element.scrollTop=a.top}}function $g(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;He||null==Gb||Gb!==Nc(d)||(d=Gb,"selectionStart"in d&&Ge(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d=
{anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),nc&&mc(nc,d)||(nc=d,d=bd(Ie,"onSelect"),0<d.length&&(b=new Fe("onSelect","select",null,b,c),a.push({event:b,listeners:d}),b.target=Gb)))}function dd(a,b){var c={};c[a.toLowerCase()]=b.toLowerCase();c["Webkit"+a]="webkit"+b;c["Moz"+a]="moz"+b;return c}function ed(a){if(Je[a])return Je[a];if(!Hb[a])return a;var b=Hb[a],c;for(c in b)if(b.hasOwnProperty(c)&&c in ah)return Je[a]=b[c];return a}function Ya(a,
b){bh.set(a,b);lb(b,[a])}function ch(a,b,c){var d=a.type||"unknown-event";a.currentTarget=c;lj(d,b,void 0,a);a.currentTarget=null}function Tg(a,b){b=0!==(b&4);for(var c=0;c<a.length;c++){var d=a[c],e=d.event;d=d.listeners;a:{var f=void 0;if(b)for(var g=d.length-1;0<=g;g--){var h=d[g],k=h.instance,l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;ch(e,h,l);f=k}else for(g=0;g<d.length;g++){h=d[g];k=h.instance;l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;
ch(e,h,l);f=k}}}if(Qc)throw a=se,Qc=!1,se=null,a;}function B(a,b){var c=b[Ke];void 0===c&&(c=b[Ke]=new Set);var d=a+"__bubble";c.has(d)||(dh(b,a,2,!1),c.add(d))}function Le(a,b,c){var d=0;b&&(d|=4);dh(c,a,d,b)}function oc(a){if(!a[fd]){a[fd]=!0;Zf.forEach(function(b){"selectionchange"!==b&&(Tj.has(b)||Le(b,!1,a),Le(b,!0,a))});var b=9===a.nodeType?a:a.ownerDocument;null===b||b[fd]||(b[fd]=!0,Le("selectionchange",!1,b))}}function dh(a,b,c,d,e){switch(Hg(b)){case 1:e=yj;break;case 4:e=zj;break;default:e=
ze}c=e.bind(null,b,c,a);e=void 0;!Me||"touchstart"!==b&&"touchmove"!==b&&"wheel"!==b||(e=!0);d?void 0!==e?a.addEventListener(b,c,{capture:!0,passive:e}):a.addEventListener(b,c,!0):void 0!==e?a.addEventListener(b,c,{passive:e}):a.addEventListener(b,c,!1)}function Ae(a,b,c,d,e){var f=d;if(0===(b&1)&&0===(b&2)&&null!==d)a:for(;;){if(null===d)return;var g=d.tag;if(3===g||4===g){var h=d.stateNode.containerInfo;if(h===e||8===h.nodeType&&h.parentNode===e)break;if(4===g)for(g=d.return;null!==g;){var k=g.tag;
if(3===k||4===k)if(k=g.stateNode.containerInfo,k===e||8===k.nodeType&&k.parentNode===e)return;g=g.return}for(;null!==h;){g=nb(h);if(null===g)return;k=g.tag;if(5===k||6===k){d=f=g;continue a}h=h.parentNode}}d=d.return}sg(function(){var d=f,e=pe(c),g=[];a:{var h=bh.get(a);if(void 0!==h){var k=Fe,n=a;switch(a){case "keypress":if(0===$c(c))break a;case "keydown":case "keyup":k=Uj;break;case "focusin":n="focus";k=Oe;break;case "focusout":n="blur";k=Oe;break;case "beforeblur":case "afterblur":k=Oe;break;
case "click":if(2===c.button)break a;case "auxclick":case "dblclick":case "mousedown":case "mousemove":case "mouseup":case "mouseout":case "mouseover":case "contextmenu":k=eh;break;case "drag":case "dragend":case "dragenter":case "dragexit":case "dragleave":case "dragover":case "dragstart":case "drop":k=Vj;break;case "touchcancel":case "touchend":case "touchmove":case "touchstart":k=Wj;break;case fh:case gh:case hh:k=Xj;break;case ih:k=Yj;break;case "scroll":k=Zj;break;case "wheel":k=ak;break;case "copy":case "cut":case "paste":k=
bk;break;case "gotpointercapture":case "lostpointercapture":case "pointercancel":case "pointerdown":case "pointermove":case "pointerout":case "pointerover":case "pointerup":k=jh}var m=0!==(b&4),p=!m&&"scroll"===a,A=m?null!==h?h+"Capture":null:h;m=[];for(var w=d,r;null!==w;){r=w;var W=r.stateNode;5===r.tag&&null!==W&&(r=W,null!==A&&(W=bc(w,A),null!=W&&m.push(pc(w,W,r))));if(p)break;w=w.return}0<m.length&&(h=new k(h,n,null,c,e),g.push({event:h,listeners:m}))}}if(0===(b&7)){a:{h="mouseover"===a||"pointerover"===
a;k="mouseout"===a||"pointerout"===a;if(h&&c!==xe&&(n=c.relatedTarget||c.fromElement)&&(nb(n)||n[Ia]))break a;if(k||h){h=e.window===e?e:(h=e.ownerDocument)?h.defaultView||h.parentWindow:window;if(k){if(n=c.relatedTarget||c.toElement,k=d,n=n?nb(n):null,null!==n&&(p=mb(n),n!==p||5!==n.tag&&6!==n.tag))n=null}else k=null,n=d;if(k!==n){m=eh;W="onMouseLeave";A="onMouseEnter";w="mouse";if("pointerout"===a||"pointerover"===a)m=jh,W="onPointerLeave",A="onPointerEnter",w="pointer";p=null==k?h:Fb(k);r=null==
n?h:Fb(n);h=new m(W,w+"leave",k,c,e);h.target=p;h.relatedTarget=r;W=null;nb(e)===d&&(m=new m(A,w+"enter",n,c,e),m.target=r,m.relatedTarget=p,W=m);p=W;if(k&&n)b:{m=k;A=n;w=0;for(r=m;r;r=Ib(r))w++;r=0;for(W=A;W;W=Ib(W))r++;for(;0<w-r;)m=Ib(m),w--;for(;0<r-w;)A=Ib(A),r--;for(;w--;){if(m===A||null!==A&&m===A.alternate)break b;m=Ib(m);A=Ib(A)}m=null}else m=null;null!==k&&kh(g,h,k,m,!1);null!==n&&null!==p&&kh(g,p,n,m,!0)}}}a:{h=d?Fb(d):window;k=h.nodeName&&h.nodeName.toLowerCase();if("select"===k||"input"===
k&&"file"===h.type)var X=Mj;else if(Rg(h))if(lh)X=Qj;else{X=Oj;var va=Nj}else(k=h.nodeName)&&"input"===k.toLowerCase()&&("checkbox"===h.type||"radio"===h.type)&&(X=Pj);if(X&&(X=X(a,d))){Sg(g,X,c,e);break a}va&&va(a,h,d);"focusout"===a&&(va=h._wrapperState)&&va.controlled&&"number"===h.type&&ke(h,"number",h.value)}va=d?Fb(d):window;switch(a){case "focusin":if(Rg(va)||"true"===va.contentEditable)Gb=va,Ie=d,nc=null;break;case "focusout":nc=Ie=Gb=null;break;case "mousedown":He=!0;break;case "contextmenu":case "mouseup":case "dragend":He=
!1;$g(g,c,e);break;case "selectionchange":if(ck)break;case "keydown":case "keyup":$g(g,c,e)}var Za;if(Ee)b:{switch(a){case "compositionstart":var ca="onCompositionStart";break b;case "compositionend":ca="onCompositionEnd";break b;case "compositionupdate":ca="onCompositionUpdate";break b}ca=void 0}else Eb?Mg(a,c)&&(ca="onCompositionEnd"):"keydown"===a&&229===c.keyCode&&(ca="onCompositionStart");ca&&(Qg&&"ko"!==c.locale&&(Eb||"onCompositionStart"!==ca?"onCompositionEnd"===ca&&Eb&&(Za=Kg()):(Xa=e,Ce=
"value"in Xa?Xa.value:Xa.textContent,Eb=!0)),va=bd(d,ca),0<va.length&&(ca=new mh(ca,a,null,c,e),g.push({event:ca,listeners:va}),Za?ca.data=Za:(Za=Ng(c),null!==Za&&(ca.data=Za))));if(Za=dk?Hj(a,c):Ij(a,c))d=bd(d,"onBeforeInput"),0<d.length&&(e=new ek("onBeforeInput","beforeinput",null,c,e),g.push({event:e,listeners:d}),e.data=Za)}Tg(g,b)})}function pc(a,b,c){return{instance:a,listener:b,currentTarget:c}}function bd(a,b){for(var c=b+"Capture",d=[];null!==a;){var e=a,f=e.stateNode;5===e.tag&&null!==
f&&(e=f,f=bc(a,c),null!=f&&d.unshift(pc(a,f,e)),f=bc(a,b),null!=f&&d.push(pc(a,f,e)));a=a.return}return d}function Ib(a){if(null===a)return null;do a=a.return;while(a&&5!==a.tag);return a?a:null}function kh(a,b,c,d,e){for(var f=b._reactName,g=[];null!==c&&c!==d;){var h=c,k=h.alternate,l=h.stateNode;if(null!==k&&k===d)break;5===h.tag&&null!==l&&(h=l,e?(k=bc(c,f),null!=k&&g.unshift(pc(c,k,h))):e||(k=bc(c,f),null!=k&&g.push(pc(c,k,h))));c=c.return}0!==g.length&&a.push({event:b,listeners:g})}function nh(a){return("string"===
typeof a?a:""+a).replace(fk,"\n").replace(gk,"")}function gd(a,b,c,d){b=nh(b);if(nh(a)!==b&&c)throw Error(n(425));}function hd(){}function Pe(a,b){return"textarea"===a||"noscript"===a||"string"===typeof b.children||"number"===typeof b.children||"object"===typeof b.dangerouslySetInnerHTML&&null!==b.dangerouslySetInnerHTML&&null!=b.dangerouslySetInnerHTML.__html}function hk(a){setTimeout(function(){throw a;})}function Qe(a,b){var c=b,d=0;do{var e=c.nextSibling;a.removeChild(c);if(e&&8===e.nodeType)if(c=
e.data,"/$"===c){if(0===d){a.removeChild(e);jc(b);return}d--}else"$"!==c&&"$?"!==c&&"$!"!==c||d++;c=e}while(c);jc(b)}function Ja(a){for(;null!=a;a=a.nextSibling){var b=a.nodeType;if(1===b||3===b)break;if(8===b){b=a.data;if("$"===b||"$!"===b||"$?"===b)break;if("/$"===b)return null}}return a}function oh(a){a=a.previousSibling;for(var b=0;a;){if(8===a.nodeType){var c=a.data;if("$"===c||"$!"===c||"$?"===c){if(0===b)return a;b--}else"/$"===c&&b++}a=a.previousSibling}return null}function nb(a){var b=a[Ca];
if(b)return b;for(var c=a.parentNode;c;){if(b=c[Ia]||c[Ca]){c=b.alternate;if(null!==b.child||null!==c&&null!==c.child)for(a=oh(a);null!==a;){if(c=a[Ca])return c;a=oh(a)}return b}a=c;c=a.parentNode}return null}function ac(a){a=a[Ca]||a[Ia];return!a||5!==a.tag&&6!==a.tag&&13!==a.tag&&3!==a.tag?null:a}function Fb(a){if(5===a.tag||6===a.tag)return a.stateNode;throw Error(n(33));}function Oc(a){return a[qc]||null}function $a(a){return{current:a}}function u(a,b){0>Jb||(a.current=Re[Jb],Re[Jb]=null,Jb--)}
function y(a,b,c){Jb++;Re[Jb]=a.current;a.current=b}function Kb(a,b){var c=a.type.contextTypes;if(!c)return ab;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function da(a){a=a.childContextTypes;return null!==a&&void 0!==a}function ph(a,b,c){if(I.current!==ab)throw Error(n(168));
y(I,b);y(P,c)}function qh(a,b,c){var d=a.stateNode;b=b.childContextTypes;if("function"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(n(108,fj(a)||"Unknown",e));return D({},c,d)}function id(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||ab;ob=I.current;y(I,a);y(P,P.current);return!0}function rh(a,b,c){var d=a.stateNode;if(!d)throw Error(n(169));c?(a=qh(a,b,ob),d.__reactInternalMemoizedMergedChildContext=a,u(P),u(I),y(I,a)):u(P);
y(P,c)}function sh(a){null===Ka?Ka=[a]:Ka.push(a)}function ik(a){jd=!0;sh(a)}function bb(){if(!Se&&null!==Ka){Se=!0;var a=0,b=x;try{var c=Ka;for(x=1;a<c.length;a++){var d=c[a];do d=d(!0);while(null!==d)}Ka=null;jd=!1}catch(e){throw null!==Ka&&(Ka=Ka.slice(a+1)),th(Be,bb),e;}finally{x=b,Se=!1}}return null}function wa(a,b){if(a&&a.defaultProps){b=D({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c]);return b}return b}function Te(){Ue=Lb=kd=null}function Ve(a,b){b=ld.current;u(ld);a._currentValue=
b}function We(a,b,c){for(;null!==a;){var d=a.alternate;(a.childLanes&b)!==b?(a.childLanes|=b,null!==d&&(d.childLanes|=b)):null!==d&&(d.childLanes&b)!==b&&(d.childLanes|=b);if(a===c)break;a=a.return}}function Mb(a,b){kd=a;Ue=Lb=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(ea=!0),a.firstContext=null)}function la(a){var b=a._currentValue;if(Ue!==a)if(a={context:a,memoizedValue:b,next:null},null===Lb){if(null===kd)throw Error(n(308));Lb=a;kd.dependencies={lanes:0,firstContext:a}}else Lb=
Lb.next=a;return b}function Xe(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function uh(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function La(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}function cb(a,b,c){c=a.updateQueue;null!==c&&
(c=c.shared,null===G&&null===ma||0===(a.mode&1)||0!==(p&2)?(a=c.pending,null===a?b.next=b:(b.next=a.next,a.next=b),c.pending=b):(a=c.interleaved,null===a?(b.next=b,null===ma?ma=[c]:ma.push(c)):(b.next=a.next,a.next=b),c.interleaved=b))}function md(a,b,c){b=b.updateQueue;if(null!==b&&(b=b.shared,0!==(c&4194240))){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;ve(a,c)}}function vh(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==
c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=b;c.lastBaseUpdate=b}function nd(a,b,c,d){var e=a.updateQueue;db=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==
h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var n=a.alternate;null!==n&&(n=n.updateQueue,h=n.lastBaseUpdate,h!==g&&(null===h?n.firstBaseUpdate=l:h.next=l,n.lastBaseUpdate=k))}if(null!==f){var m=e.baseState;g=0;n=l=k=null;h=f;do{var q=h.lane,p=h.eventTime;if((d&q)===q){null!==n&&(n=n.next={eventTime:p,lane:0,tag:h.tag,payload:h.payload,callback:h.callback,next:null});a:{var v=a,u=h;q=b;p=c;switch(u.tag){case 1:v=u.payload;if("function"===typeof v){m=v.call(p,m,q);
break a}m=v;break a;case 3:v.flags=v.flags&-65537|128;case 0:v=u.payload;q="function"===typeof v?v.call(p,m,q):v;if(null===q||void 0===q)break a;m=D({},m,q);break a;case 2:db=!0}}null!==h.callback&&0!==h.lane&&(a.flags|=64,q=e.effects,null===q?e.effects=[h]:q.push(h))}else p={eventTime:p,lane:q,tag:h.tag,payload:h.payload,callback:h.callback,next:null},null===n?(l=n=p,k=m):n=n.next=p,g|=q;h=h.next;if(null===h)if(h=e.shared.pending,null===h)break;else q=h,h=q.next,q.next=null,e.lastBaseUpdate=q,e.shared.pending=
null}while(1);null===n&&(k=m);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=n;b=e.shared.interleaved;if(null!==b){e=b;do g|=e.lane,e=e.next;while(e!==b)}else null===f&&(e.shared.lanes=0);na|=g;a.lanes=g;a.memoizedState=m}}function wh(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;b<a.length;b++){var d=a[b],e=d.callback;if(null!==e){d.callback=null;d=c;if("function"!==typeof e)throw Error(n(191,e));e.call(d)}}}function Ye(a,b,c,d){b=a.memoizedState;c=c(d,b);c=null===c||void 0===c?b:D({},
b,c);a.memoizedState=c;0===a.lanes&&(a.updateQueue.baseState=c)}function xh(a,b,c,d,e,f,g){a=a.stateNode;return"function"===typeof a.shouldComponentUpdate?a.shouldComponentUpdate(d,f,g):b.prototype&&b.prototype.isPureReactComponent?!mc(c,d)||!mc(e,f):!0}function yh(a,b,c){var d=!1,e=ab;var f=b.contextType;"object"===typeof f&&null!==f?f=la(f):(e=da(b)?ob:I.current,d=b.contextTypes,f=(d=null!==d&&void 0!==d)?Kb(a,e):ab);b=new b(c,f);a.memoizedState=null!==b.state&&void 0!==b.state?b.state:null;b.updater=
od;a.stateNode=b;b._reactInternals=a;d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=e,a.__reactInternalMemoizedMaskedChildContext=f);return b}function zh(a,b,c,d){a=b.state;"function"===typeof b.componentWillReceiveProps&&b.componentWillReceiveProps(c,d);"function"===typeof b.UNSAFE_componentWillReceiveProps&&b.UNSAFE_componentWillReceiveProps(c,d);b.state!==a&&od.enqueueReplaceState(b,b.state,null)}function Ze(a,b,c,d){var e=a.stateNode;e.props=c;e.state=a.memoizedState;e.refs=Ah;
Xe(a);var f=b.contextType;"object"===typeof f&&null!==f?e.context=la(f):(f=da(b)?ob:I.current,e.context=Kb(a,f));e.state=a.memoizedState;f=b.getDerivedStateFromProps;"function"===typeof f&&(Ye(a,b,f,c),e.state=a.memoizedState);"function"===typeof b.getDerivedStateFromProps||"function"===typeof e.getSnapshotBeforeUpdate||"function"!==typeof e.UNSAFE_componentWillMount&&"function"!==typeof e.componentWillMount||(b=e.state,"function"===typeof e.componentWillMount&&e.componentWillMount(),"function"===
typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),b!==e.state&&od.enqueueReplaceState(e,e.state,null),nd(a,c,e,d),e.state=a.memoizedState);"function"===typeof e.componentDidMount&&(a.flags|=4194308)}function pb(a,b){Nb[Ob++]=pd;Nb[Ob++]=qd;qd=a;pd=b}function Bh(a,b,c){oa[pa++]=Ma;oa[pa++]=Na;oa[pa++]=qb;qb=a;var d=Ma;a=Na;var e=32-ta(d)-1;d&=~(1<<e);c+=1;var f=32-ta(b)+e;if(30<f){var g=e-e%5;f=(d&(1<<g)-1).toString(32);d>>=g;e-=g;Ma=1<<32-ta(b)+e|c<<e|d;Na=f+a}else Ma=1<<f|c<<e|d,
Na=a}function $e(a){null!==a.return&&(pb(a,1),Bh(a,1,0))}function af(a){for(;a===qd;)qd=Nb[--Ob],Nb[Ob]=null,pd=Nb[--Ob],Nb[Ob]=null;for(;a===qb;)qb=oa[--pa],oa[pa]=null,Na=oa[--pa],oa[pa]=null,Ma=oa[--pa],oa[pa]=null}function Ch(a,b){var c=qa(5,null,null,0);c.elementType="DELETED";c.stateNode=b;c.return=a;b=a.deletions;null===b?(a.deletions=[c],a.flags|=16):b.push(c)}function Dh(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==
b?(a.stateNode=b,ka=a,fa=Ja(b.firstChild),!0):!1;case 6:return b=""===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,ka=a,fa=null,!0):!1;case 13:return b=8!==b.nodeType?null:b,null!==b?(c=null!==qb?{id:Ma,overflow:Na}:null,a.memoizedState={dehydrated:b,treeContext:c,retryLane:1073741824},c=qa(18,null,null,0),c.stateNode=b,c.return=a,a.child=c,ka=a,fa=null,!0):!1;default:return!1}}function bf(a){return 0!==(a.mode&1)&&0===(a.flags&128)}function cf(a){if(C){var b=fa;if(b){var c=b;if(!Dh(a,
b)){if(bf(a))throw Error(n(418));b=Ja(c.nextSibling);var d=ka;b&&Dh(a,b)?Ch(d,c):(a.flags=a.flags&-4097|2,C=!1,ka=a)}}else{if(bf(a))throw Error(n(418));a.flags=a.flags&-4097|2;C=!1;ka=a}}}function Eh(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;ka=a}function rc(a){if(a!==ka)return!1;if(!C)return Eh(a),C=!0,!1;var b;(b=3!==a.tag)&&!(b=5!==a.tag)&&(b=a.type,b="head"!==b&&"body"!==b&&!Pe(a.type,a.memoizedProps));if(b&&(b=fa)){if(bf(a)){for(a=fa;a;)a=Ja(a.nextSibling);throw Error(n(418));
}for(;b;)Ch(a,b),b=Ja(b.nextSibling)}Eh(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(n(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if("/$"===c){if(0===b){fa=Ja(a.nextSibling);break a}b--}else"$"!==c&&"$!"!==c&&"$?"!==c||b++}a=a.nextSibling}fa=null}}else fa=ka?Ja(a.stateNode.nextSibling):null;return!0}function Pb(){fa=ka=null;C=!1}function df(a){null===xa?xa=[a]:xa.push(a)}function sc(a,b,c){a=c.ref;if(null!==a&&"function"!==typeof a&&
"object"!==typeof a){if(c._owner){c=c._owner;if(c){if(1!==c.tag)throw Error(n(309));var d=c.stateNode}if(!d)throw Error(n(147,a));var e=d,f=""+a;if(null!==b&&null!==b.ref&&"function"===typeof b.ref&&b.ref._stringRef===f)return b.ref;b=function(a){var b=e.refs;b===Ah&&(b=e.refs={});null===a?delete b[f]:b[f]=a};b._stringRef=f;return b}if("string"!==typeof a)throw Error(n(284));if(!c._owner)throw Error(n(290,a));}return a}function rd(a,b){a=Object.prototype.toString.call(b);throw Error(n(31,"[object Object]"===
a?"object with keys {"+Object.keys(b).join(", ")+"}":a));}function Fh(a){var b=a._init;return b(a._payload)}function Gh(a){function b(b,c){if(a){var d=b.deletions;null===d?(b.deletions=[c],b.flags|=16):d.push(c)}}function c(c,d){if(!a)return null;for(;null!==d;)b(c,d),d=d.sibling;return null}function d(a,b){for(a=new Map;null!==b;)null!==b.key?a.set(b.key,b):a.set(b.index,b),b=b.sibling;return a}function e(a,b){a=eb(a,b);a.index=0;a.sibling=null;return a}function f(b,c,d){b.index=d;if(!a)return b.flags|=
1048576,c;d=b.alternate;if(null!==d)return d=d.index,d<c?(b.flags|=2,c):d;b.flags|=2;return c}function g(b){a&&null===b.alternate&&(b.flags|=2);return b}function h(a,b,c,d){if(null===b||6!==b.tag)return b=ef(c,a.mode,d),b.return=a,b;b=e(b,c);b.return=a;return b}function k(a,b,c,d){var f=c.type;if(f===yb)return m(a,b,c.props.children,d,c.key);if(null!==b&&(b.elementType===f||"object"===typeof f&&null!==f&&f.$$typeof===Ra&&Fh(f)===b.type))return d=e(b,c.props),d.ref=sc(a,b,c),d.return=a,d;d=sd(c.type,
c.key,c.props,null,a.mode,d);d.ref=sc(a,b,c);d.return=a;return d}function l(a,b,c,d){if(null===b||4!==b.tag||b.stateNode.containerInfo!==c.containerInfo||b.stateNode.implementation!==c.implementation)return b=ff(c,a.mode,d),b.return=a,b;b=e(b,c.children||[]);b.return=a;return b}function m(a,b,c,d,f){if(null===b||7!==b.tag)return b=rb(c,a.mode,d,f),b.return=a,b;b=e(b,c);b.return=a;return b}function Ne(a,b,c){if("string"===typeof b&&""!==b||"number"===typeof b)return b=ef(""+b,a.mode,c),b.return=a,
b;if("object"===typeof b&&null!==b){switch(b.$$typeof){case td:return c=sd(b.type,b.key,b.props,null,a.mode,c),c.ref=sc(a,null,b),c.return=a,c;case zb:return b=ff(b,a.mode,c),b.return=a,b;case Ra:var d=b._init;return Ne(a,d(b._payload),c)}if(Zb(b)||Xb(b))return b=rb(b,a.mode,c,null),b.return=a,b;rd(a,b)}return null}function q(a,b,c,d){var e=null!==b?b.key:null;if("string"===typeof c&&""!==c||"number"===typeof c)return null!==e?null:h(a,b,""+c,d);if("object"===typeof c&&null!==c){switch(c.$$typeof){case td:return c.key===
e?k(a,b,c,d):null;case zb:return c.key===e?l(a,b,c,d):null;case Ra:return e=c._init,q(a,b,e(c._payload),d)}if(Zb(c)||Xb(c))return null!==e?null:m(a,b,c,d,null);rd(a,c)}return null}function p(a,b,c,d,e){if("string"===typeof d&&""!==d||"number"===typeof d)return a=a.get(c)||null,h(b,a,""+d,e);if("object"===typeof d&&null!==d){switch(d.$$typeof){case td:return a=a.get(null===d.key?c:d.key)||null,k(b,a,d,e);case zb:return a=a.get(null===d.key?c:d.key)||null,l(b,a,d,e);case Ra:var f=d._init;return p(a,
b,c,f(d._payload),e)}if(Zb(d)||Xb(d))return a=a.get(c)||null,m(b,a,d,e,null);rd(b,d)}return null}function v(e,g,h,k){for(var l=null,n=null,m=g,r=g=0,w=null;null!==m&&r<h.length;r++){m.index>r?(w=m,m=null):w=m.sibling;var A=q(e,m,h[r],k);if(null===A){null===m&&(m=w);break}a&&m&&null===A.alternate&&b(e,m);g=f(A,g,r);null===n?l=A:n.sibling=A;n=A;m=w}if(r===h.length)return c(e,m),C&&pb(e,r),l;if(null===m){for(;r<h.length;r++)m=Ne(e,h[r],k),null!==m&&(g=f(m,g,r),null===n?l=m:n.sibling=m,n=m);C&&pb(e,r);
return l}for(m=d(e,m);r<h.length;r++)w=p(m,e,r,h[r],k),null!==w&&(a&&null!==w.alternate&&m.delete(null===w.key?r:w.key),g=f(w,g,r),null===n?l=w:n.sibling=w,n=w);a&&m.forEach(function(a){return b(e,a)});C&&pb(e,r);return l}function u(e,g,h,k){var l=Xb(h);if("function"!==typeof l)throw Error(n(150));h=l.call(h);if(null==h)throw Error(n(151));for(var m=l=null,r=g,w=g=0,A=null,t=h.next();null!==r&&!t.done;w++,t=h.next()){r.index>w?(A=r,r=null):A=r.sibling;var v=q(e,r,t.value,k);if(null===v){null===r&&
(r=A);break}a&&r&&null===v.alternate&&b(e,r);g=f(v,g,w);null===m?l=v:m.sibling=v;m=v;r=A}if(t.done)return c(e,r),C&&pb(e,w),l;if(null===r){for(;!t.done;w++,t=h.next())t=Ne(e,t.value,k),null!==t&&(g=f(t,g,w),null===m?l=t:m.sibling=t,m=t);C&&pb(e,w);return l}for(r=d(e,r);!t.done;w++,t=h.next())t=p(r,e,w,t.value,k),null!==t&&(a&&null!==t.alternate&&r.delete(null===t.key?w:t.key),g=f(t,g,w),null===m?l=t:m.sibling=t,m=t);a&&r.forEach(function(a){return b(e,a)});C&&pb(e,w);return l}function x(a,d,f,h){"object"===
typeof f&&null!==f&&f.type===yb&&null===f.key&&(f=f.props.children);if("object"===typeof f&&null!==f){switch(f.$$typeof){case td:a:{for(var k=f.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===yb){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||"object"===typeof k&&null!==k&&k.$$typeof===Ra&&Fh(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=sc(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===yb?(d=rb(f.props.children,
a.mode,h,f.key),d.return=a,a=d):(h=sd(f.type,f.key,f.props,null,a.mode,h),h.ref=sc(a,d,f),h.return=a,a=h)}return g(a);case zb:a:{for(l=f.key;null!==d;){if(d.key===l)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=ff(f,a.mode,h);d.return=a;a=d}return g(a);case Ra:return l=f._init,x(a,d,l(f._payload),h)}if(Zb(f))return v(a,d,f,h);if(Xb(f))return u(a,
d,f,h);rd(a,f)}return"string"===typeof f&&""!==f||"number"===typeof f?(f=""+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):(c(a,d),d=ef(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return x}function sb(a){if(a===tc)throw Error(n(174));return a}function gf(a,b){y(uc,b);y(vc,a);y(Da,tc);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:me(null,"");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=me(b,a)}u(Da);y(Da,b)}function Qb(a){u(Da);
u(vc);u(uc)}function Hh(a){sb(uc.current);var b=sb(Da.current);var c=me(b,a.type);b!==c&&(y(vc,a),y(Da,c))}function hf(a){vc.current===a&&(u(Da),u(vc))}function ud(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||"$?"===c.data||"$!"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&128))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===
b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}function jf(){for(var a=0;a<kf.length;a++)kf[a]._workInProgressVersionPrimary=null;kf.length=0}function S(){throw Error(n(321));}function lf(a,b){if(null===b)return!1;for(var c=0;c<b.length&&c<a.length;c++)if(!ua(a[c],b[c]))return!1;return!0}function mf(a,b,c,d,e,f){tb=f;z=b;b.memoizedState=null;b.updateQueue=null;b.lanes=0;vd.current=null===a||null===a.memoizedState?jk:kk;a=c(d,e);if(wc){f=0;do{wc=!1;
xc=0;if(25<=f)throw Error(n(301));f+=1;L=J=null;b.updateQueue=null;vd.current=lk;a=c(d,e)}while(wc)}vd.current=wd;b=null!==J&&null!==J.next;tb=0;L=J=z=null;xd=!1;if(b)throw Error(n(300));return a}function nf(){var a=0!==xc;xc=0;return a}function Ea(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===L?z.memoizedState=L=a:L=L.next=a;return L}function ra(){if(null===J){var a=z.alternate;a=null!==a?a.memoizedState:null}else a=J.next;var b=null===L?z.memoizedState:L.next;
if(null!==b)L=b,J=a;else{if(null===a)throw Error(n(310));J=a;a={memoizedState:J.memoizedState,baseState:J.baseState,baseQueue:J.baseQueue,queue:J.queue,next:null};null===L?z.memoizedState=L=a:L=L.next=a}return L}function yc(a,b){return"function"===typeof b?b(a):b}function of(a,b,c){b=ra();c=b.queue;if(null===c)throw Error(n(311));c.lastRenderedReducer=a;var d=J,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){f=e.next;
d=d.baseState;var h=g=null,k=null,l=f;do{var m=l.lane;if((tb&m)===m)null!==k&&(k=k.next={lane:0,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null}),d=l.hasEagerState?l.eagerState:a(d,l.action);else{var p={lane:m,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null};null===k?(h=k=p,g=d):k=k.next=p;z.lanes|=m;na|=m}l=l.next}while(null!==l&&l!==f);null===k?g=d:k.next=h;ua(d,b.memoizedState)||(ea=!0);b.memoizedState=d;b.baseState=g;b.baseQueue=
k;c.lastRenderedState=d}a=c.interleaved;if(null!==a){e=a;do f=e.lane,z.lanes|=f,na|=f,e=e.next;while(e!==a)}else null===e&&(c.lanes=0);return[b.memoizedState,c.dispatch]}function pf(a,b,c){b=ra();c=b.queue;if(null===c)throw Error(n(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);ua(f,b.memoizedState)||(ea=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,
d]}function Ih(a,b,c){}function Jh(a,b,c){c=z;var d=ra(),e=b(),f=!ua(d.memoizedState,e);f&&(d.memoizedState=e,ea=!0);d=d.queue;qf(Kh.bind(null,c,d,a),[a]);if(d.getSnapshot!==b||f||null!==L&&L.memoizedState.tag&1){c.flags|=2048;zc(9,Lh.bind(null,c,d,e,b),void 0,null);if(null===G)throw Error(n(349));0!==(tb&30)||Mh(c,b,e)}return e}function Mh(a,b,c){a.flags|=16384;a={getSnapshot:b,value:c};b=z.updateQueue;null===b?(b={lastEffect:null,stores:null},z.updateQueue=b,b.stores=[a]):(c=b.stores,null===c?b.stores=
[a]:c.push(a))}function Lh(a,b,c,d){b.value=c;b.getSnapshot=d;Nh(b)&&sa(a,1,-1)}function Kh(a,b,c){return c(function(){Nh(b)&&sa(a,1,-1)})}function Nh(a){var b=a.getSnapshot;a=a.value;try{var c=b();return!ua(a,c)}catch(d){return!0}}function Oh(a){var b=Ea();"function"===typeof a&&(a=a());b.memoizedState=b.baseState=a;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:yc,lastRenderedState:a};b.queue=a;a=a.dispatch=mk.bind(null,z,a);return[b.memoizedState,a]}function zc(a,b,
c,d){a={tag:a,create:b,destroy:c,deps:d,next:null};b=z.updateQueue;null===b?(b={lastEffect:null,stores:null},z.updateQueue=b,b.lastEffect=a.next=a):(c=b.lastEffect,null===c?b.lastEffect=a.next=a:(d=c.next,c.next=a,a.next=d,b.lastEffect=a));return a}function Ph(a){return ra().memoizedState}function yd(a,b,c,d){var e=Ea();z.flags|=a;e.memoizedState=zc(1|b,c,void 0,void 0===d?null:d)}function zd(a,b,c,d){var e=ra();d=void 0===d?null:d;var f=void 0;if(null!==J){var g=J.memoizedState;f=g.destroy;if(null!==
d&&lf(d,g.deps)){e.memoizedState=zc(b,c,f,d);return}}z.flags|=a;e.memoizedState=zc(1|b,c,f,d)}function Qh(a,b){return yd(8390656,8,a,b)}function qf(a,b){return zd(2048,8,a,b)}function Rh(a,b){return zd(4,2,a,b)}function Sh(a,b){return zd(4,4,a,b)}function Th(a,b){if("function"===typeof b)return a=a(),b(a),function(){b(null)};if(null!==b&&void 0!==b)return a=a(),b.current=a,function(){b.current=null}}function Uh(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return zd(4,4,Th.bind(null,b,a),c)}function rf(a,
b){}function Vh(a,b){var c=ra();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&lf(b,d[1]))return d[0];c.memoizedState=[a,b];return a}function Wh(a,b){var c=ra();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&lf(b,d[1]))return d[0];a=a();c.memoizedState=[a,b];return a}function Xh(a,b,c){if(0===(tb&21))return a.baseState&&(a.baseState=!1,ea=!0),a.memoizedState=c;ua(c,b)||(c=zg(),z.lanes|=c,na|=c,a.baseState=!0);return b}function nk(a,b,c){c=x;x=0!==c&&4>c?c:4;a(!0);
var d=sf.transition;sf.transition={};try{a(!1),b()}finally{x=c,sf.transition=d}}function Yh(){return ra().memoizedState}function ok(a,b,c){var d=fb(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};Zh(a)?$h(b,c):(ai(a,b,c),c=Y(),a=sa(a,d,c),null!==a&&bi(a,b,d))}function mk(a,b,c){var d=fb(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Zh(a))$h(b,e);else{ai(a,b,e);var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=
b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(ua(h,g))return}catch(k){}finally{}c=Y();a=sa(a,d,c);null!==a&&bi(a,b,d)}}function Zh(a){var b=a.alternate;return a===z||null!==b&&b===z}function $h(a,b){wc=xd=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function ai(a,b,c,d){null===G&&null===ma||0===(a.mode&1)||0!==(p&2)?(a=b.pending,null===a?c.next=c:(c.next=a.next,a.next=c),b.pending=c):(a=b.interleaved,null===a?(c.next=c,null===ma?ma=[b]:ma.push(b)):
(c.next=a.next,a.next=c),b.interleaved=c)}function bi(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;ve(a,c)}}function tf(a,b){try{var c="",d=b;do c+=ej(d),d=d.return;while(d);var e=c}catch(f){e="\nError generating stack: "+f.message+"\n"+f.stack}return{value:a,source:b,stack:e}}function uf(a,b){try{console.error(b.value)}catch(c){setTimeout(function(){throw c;})}}function ci(a,b,c){c=La(-1,c);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Ad||(Ad=
!0,vf=d);uf(a,b)};return c}function di(a,b,c){c=La(-1,c);c.tag=3;var d=a.type.getDerivedStateFromError;if("function"===typeof d){var e=b.value;c.payload=function(){return d(e)};c.callback=function(){uf(a,b)}}var f=a.stateNode;null!==f&&"function"===typeof f.componentDidCatch&&(c.callback=function(){uf(a,b);"function"!==typeof d&&(null===gb?gb=new Set([this]):gb.add(this));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:""})});return c}function ei(a,b,c){var d=a.pingCache;if(null===
d){d=a.pingCache=new pk;var e=new Set;d.set(b,e)}else e=d.get(b),void 0===e&&(e=new Set,d.set(b,e));e.has(c)||(e.add(c),a=qk.bind(null,a,b,c),b.then(a,a))}function fi(a){do{var b;if(b=13===a.tag)b=a.memoizedState,b=null!==b?null!==b.dehydrated?!0:!1:!0;if(b)return a;a=a.return}while(null!==a);return null}function gi(a,b,c,d,e){if(0===(a.mode&1))return a===b?a.flags|=65536:(a.flags|=128,c.flags|=131072,c.flags&=-52805,1===c.tag&&(null===c.alternate?c.tag=17:(b=La(-1,1),b.tag=2,cb(c,b))),c.lanes|=1),
a;a.flags|=65536;a.lanes=e;return a}function Ac(a,b){if(!C)switch(a.tailMode){case "hidden":b=a.tail;for(var c=null;null!==b;)null!==b.alternate&&(c=b),b=b.sibling;null===c?a.tail=null:c.sibling=null;break;case "collapsed":c=a.tail;for(var d=null;null!==c;)null!==c.alternate&&(d=c),c=c.sibling;null===d?b||null===a.tail?a.tail=null:a.tail.sibling=null:d.sibling=null}}function T(a){var b=null!==a.alternate&&a.alternate.child===a.child,c=0,d=0;if(b)for(var e=a.child;null!==e;)c|=e.lanes|e.childLanes,
d|=e.subtreeFlags&14680064,d|=e.flags&14680064,e.return=a,e=e.sibling;else for(e=a.child;null!==e;)c|=e.lanes|e.childLanes,d|=e.subtreeFlags,d|=e.flags,e.return=a,e=e.sibling;a.subtreeFlags|=d;a.childLanes=c;return b}function rk(a,b,c){var d=b.pendingProps;af(b);switch(b.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return T(b),null;case 1:return da(b.type)&&(u(P),u(I)),T(b),null;case 3:d=b.stateNode;Qb();u(P);u(I);jf();d.pendingContext&&(d.context=d.pendingContext,
d.pendingContext=null);if(null===a||null===a.child)rc(b)?b.flags|=4:null===a||a.memoizedState.isDehydrated&&0===(b.flags&256)||(b.flags|=1024,null!==xa&&(wf(xa),xa=null));hi(a,b);T(b);return null;case 5:hf(b);var e=sb(uc.current);c=b.type;if(null!==a&&null!=b.stateNode)sk(a,b,c,d,e),a.ref!==b.ref&&(b.flags|=512,b.flags|=2097152);else{if(!d){if(null===b.stateNode)throw Error(n(166));T(b);return null}a=sb(Da.current);if(rc(b)){d=b.stateNode;c=b.type;var f=b.memoizedProps;d[Ca]=b;d[qc]=f;a=0!==(b.mode&
1);switch(c){case "dialog":B("cancel",d);B("close",d);break;case "iframe":case "object":case "embed":B("load",d);break;case "video":case "audio":for(e=0;e<Bc.length;e++)B(Bc[e],d);break;case "source":B("error",d);break;case "img":case "image":case "link":B("error",d);B("load",d);break;case "details":B("toggle",d);break;case "input":gg(d,f);B("invalid",d);break;case "select":d._wrapperState={wasMultiple:!!f.multiple};B("invalid",d);break;case "textarea":jg(d,f),B("invalid",d)}ne(c,f);e=null;for(var g in f)if(f.hasOwnProperty(g)){var h=
f[g];"children"===g?"string"===typeof h?d.textContent!==h&&(!0!==f.suppressHydrationWarning&&gd(d.textContent,h,a),e=["children",h]):"number"===typeof h&&d.textContent!==""+h&&(!0!==f.suppressHydrationWarning&&gd(d.textContent,h,a),e=["children",""+h]):Wb.hasOwnProperty(g)&&null!=h&&"onScroll"===g&&B("scroll",d)}switch(c){case "input":Mc(d);ig(d,f,!0);break;case "textarea":Mc(d);lg(d);break;case "select":case "option":break;default:"function"===typeof f.onClick&&(d.onclick=hd)}d=e;b.updateQueue=d;
null!==d&&(b.flags|=4)}else{g=9===e.nodeType?e:e.ownerDocument;"http://www.w3.org/1999/xhtml"===a&&(a=mg(c));"http://www.w3.org/1999/xhtml"===a?"script"===c?(a=g.createElement("div"),a.innerHTML="<script>\x3c/script>",a=a.removeChild(a.firstChild)):"string"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),"select"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[Ca]=b;a[qc]=d;tk(a,b,!1,!1);b.stateNode=a;a:{g=oe(c,d);switch(c){case "dialog":B("cancel",
a);B("close",a);e=d;break;case "iframe":case "object":case "embed":B("load",a);e=d;break;case "video":case "audio":for(e=0;e<Bc.length;e++)B(Bc[e],a);e=d;break;case "source":B("error",a);e=d;break;case "img":case "image":case "link":B("error",a);B("load",a);e=d;break;case "details":B("toggle",a);e=d;break;case "input":gg(a,d);e=ie(a,d);B("invalid",a);break;case "option":e=d;break;case "select":a._wrapperState={wasMultiple:!!d.multiple};e=D({},d,{value:void 0});B("invalid",a);break;case "textarea":jg(a,
d);e=le(a,d);B("invalid",a);break;default:e=d}ne(c,e);h=e;for(f in h)if(h.hasOwnProperty(f)){var k=h[f];"style"===f?og(a,k):"dangerouslySetInnerHTML"===f?(k=k?k.__html:void 0,null!=k&&ii(a,k)):"children"===f?"string"===typeof k?("textarea"!==c||""!==k)&&Cc(a,k):"number"===typeof k&&Cc(a,""+k):"suppressContentEditableWarning"!==f&&"suppressHydrationWarning"!==f&&"autoFocus"!==f&&(Wb.hasOwnProperty(f)?null!=k&&"onScroll"===f&&B("scroll",a):null!=k&&Yd(a,f,k,g))}switch(c){case "input":Mc(a);ig(a,d,!1);
break;case "textarea":Mc(a);lg(a);break;case "option":null!=d.value&&a.setAttribute("value",""+Sa(d.value));break;case "select":a.multiple=!!d.multiple;f=d.value;null!=f?Ab(a,!!d.multiple,f,!1):null!=d.defaultValue&&Ab(a,!!d.multiple,d.defaultValue,!0);break;default:"function"===typeof e.onClick&&(a.onclick=hd)}switch(c){case "button":case "input":case "select":case "textarea":d=!!d.autoFocus;break a;case "img":d=!0;break a;default:d=!1}}d&&(b.flags|=4)}null!==b.ref&&(b.flags|=512,b.flags|=2097152)}T(b);
return null;case 6:if(a&&null!=b.stateNode)uk(a,b,a.memoizedProps,d);else{if("string"!==typeof d&&null===b.stateNode)throw Error(n(166));c=sb(uc.current);sb(Da.current);if(rc(b)){d=b.stateNode;c=b.memoizedProps;d[Ca]=b;if(f=d.nodeValue!==c)if(a=ka,null!==a)switch(a.tag){case 3:gd(d.nodeValue,c,0!==(a.mode&1));break;case 5:!0!==a.memoizedProps.suppressHydrationWarning&&gd(d.nodeValue,c,0!==(a.mode&1))}f&&(b.flags|=4)}else d=(9===c.nodeType?c:c.ownerDocument).createTextNode(d),d[Ca]=b,b.stateNode=d}T(b);
return null;case 13:u(E);d=b.memoizedState;if(C&&null!==fa&&0!==(b.mode&1)&&0===(b.flags&128)){for(d=fa;d;)d=Ja(d.nextSibling);Pb();b.flags|=98560;return b}if(null!==d&&null!==d.dehydrated){d=rc(b);if(null===a){if(!d)throw Error(n(318));d=b.memoizedState;d=null!==d?d.dehydrated:null;if(!d)throw Error(n(317));d[Ca]=b}else Pb(),0===(b.flags&128)&&(b.memoizedState=null),b.flags|=4;T(b);return null}null!==xa&&(wf(xa),xa=null);if(0!==(b.flags&128))return b.lanes=c,b;d=null!==d;c=!1;null===a?rc(b):c=null!==
a.memoizedState;d!==c&&d&&(b.child.flags|=8192,0!==(b.mode&1)&&(null===a||0!==(E.current&1)?0===K&&(K=3):xf()));null!==b.updateQueue&&(b.flags|=4);T(b);return null;case 4:return Qb(),hi(a,b),null===a&&oc(b.stateNode.containerInfo),T(b),null;case 10:return Ve(b.type._context),T(b),null;case 17:return da(b.type)&&(u(P),u(I)),T(b),null;case 19:u(E);f=b.memoizedState;if(null===f)return T(b),null;d=0!==(b.flags&128);g=f.rendering;if(null===g)if(d)Ac(f,!1);else{if(0!==K||null!==a&&0!==(a.flags&128))for(a=
b.child;null!==a;){g=ud(a);if(null!==g){b.flags|=128;Ac(f,!1);d=g.updateQueue;null!==d&&(b.updateQueue=d,b.flags|=4);b.subtreeFlags=0;d=c;for(c=b.child;null!==c;)f=c,a=d,f.flags&=14680066,g=f.alternate,null===g?(f.childLanes=0,f.lanes=a,f.child=null,f.subtreeFlags=0,f.memoizedProps=null,f.memoizedState=null,f.updateQueue=null,f.dependencies=null,f.stateNode=null):(f.childLanes=g.childLanes,f.lanes=g.lanes,f.child=g.child,f.subtreeFlags=0,f.deletions=null,f.memoizedProps=g.memoizedProps,f.memoizedState=
g.memoizedState,f.updateQueue=g.updateQueue,f.type=g.type,a=g.dependencies,f.dependencies=null===a?null:{lanes:a.lanes,firstContext:a.firstContext}),c=c.sibling;y(E,E.current&1|2);return b.child}a=a.sibling}null!==f.tail&&M()>yf&&(b.flags|=128,d=!0,Ac(f,!1),b.lanes=4194304)}else{if(!d)if(a=ud(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Ac(f,!0),null===f.tail&&"hidden"===f.tailMode&&!g.alternate&&!C)return T(b),null}else 2*M()-f.renderingStartTime>yf&&1073741824!==
c&&(b.flags|=128,d=!0,Ac(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=b,f.tail=b.sibling,f.renderingStartTime=M(),b.sibling=null,c=E.current,y(E,d?c&1|2:c&1),b;T(b);return null;case 22:case 23:return Z=Fa.current,u(Fa),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(Z&1073741824)&&(T(b),b.subtreeFlags&6&&(b.flags|=8192)):T(b),null;
case 24:return null;case 25:return null}throw Error(n(156,b.tag));}function aa(a,b,c,d){b.child=null===a?ji(b,null,c,d):Rb(b,a.child,c,d)}function ki(a,b,c,d,e){c=c.render;var f=b.ref;Mb(b,e);d=mf(a,b,c,d,f,e);c=nf();if(null!==a&&!ea)return b.updateQueue=a.updateQueue,b.flags&=-2053,a.lanes&=~e,Oa(a,b,e);C&&c&&$e(b);b.flags|=1;aa(a,b,d,e);return b.child}function li(a,b,c,d,e){if(null===a){var f=c.type;if("function"===typeof f&&!zf(f)&&void 0===f.defaultProps&&null===c.compare&&void 0===c.defaultProps)return b.tag=
15,b.type=f,mi(a,b,f,d,e);a=sd(c.type,null,d,b,b.mode,e);a.ref=b.ref;a.return=b;return b.child=a}f=a.child;if(0===(a.lanes&e)){var g=f.memoizedProps;c=c.compare;c=null!==c?c:mc;if(c(g,d)&&a.ref===b.ref)return Oa(a,b,e)}b.flags|=1;a=eb(f,d);a.ref=b.ref;a.return=b;return b.child=a}function mi(a,b,c,d,e){if(null!==a){var f=a.memoizedProps;if(mc(f,d)&&a.ref===b.ref)if(ea=!1,b.pendingProps=d=f,0!==(a.lanes&e))0!==(a.flags&131072)&&(ea=!0);else return b.lanes=a.lanes,Oa(a,b,e)}return Af(a,b,c,d,e)}function ni(a,
b,c){var d=b.pendingProps,e=d.children,f=null!==a?a.memoizedState:null;if("hidden"===d.mode)if(0===(b.mode&1))b.memoizedState={baseLanes:0,cachePool:null,transitions:null},y(Fa,Z),Z|=c;else if(0!==(c&1073741824))b.memoizedState={baseLanes:0,cachePool:null,transitions:null},d=null!==f?f.baseLanes:c,y(Fa,Z),Z|=d;else return a=null!==f?f.baseLanes|c:c,b.lanes=b.childLanes=1073741824,b.memoizedState={baseLanes:a,cachePool:null,transitions:null},b.updateQueue=null,y(Fa,Z),Z|=a,null;else null!==f?(d=f.baseLanes|
c,b.memoizedState=null):d=c,y(Fa,Z),Z|=d;aa(a,b,e,c);return b.child}function oi(a,b){var c=b.ref;if(null===a&&null!==c||null!==a&&a.ref!==c)b.flags|=512,b.flags|=2097152}function Af(a,b,c,d,e){var f=da(c)?ob:I.current;f=Kb(b,f);Mb(b,e);c=mf(a,b,c,d,f,e);d=nf();if(null!==a&&!ea)return b.updateQueue=a.updateQueue,b.flags&=-2053,a.lanes&=~e,Oa(a,b,e);C&&d&&$e(b);b.flags|=1;aa(a,b,c,e);return b.child}function pi(a,b,c,d,e){if(da(c)){var f=!0;id(b)}else f=!1;Mb(b,e);if(null===b.stateNode)null!==a&&(a.alternate=
null,b.alternate=null,b.flags|=2),yh(b,c,d),Ze(b,c,d,e),d=!0;else if(null===a){var g=b.stateNode,h=b.memoizedProps;g.props=h;var k=g.context,l=c.contextType;"object"===typeof l&&null!==l?l=la(l):(l=da(c)?ob:I.current,l=Kb(b,l));var m=c.getDerivedStateFromProps,n="function"===typeof m||"function"===typeof g.getSnapshotBeforeUpdate;n||"function"!==typeof g.UNSAFE_componentWillReceiveProps&&"function"!==typeof g.componentWillReceiveProps||(h!==d||k!==l)&&zh(b,g,d,l);db=!1;var q=b.memoizedState;g.state=
q;nd(b,d,g,e);k=b.memoizedState;h!==d||q!==k||P.current||db?("function"===typeof m&&(Ye(b,c,m,d),k=b.memoizedState),(h=db||xh(b,c,h,d,q,k,l))?(n||"function"!==typeof g.UNSAFE_componentWillMount&&"function"!==typeof g.componentWillMount||("function"===typeof g.componentWillMount&&g.componentWillMount(),"function"===typeof g.UNSAFE_componentWillMount&&g.UNSAFE_componentWillMount()),"function"===typeof g.componentDidMount&&(b.flags|=4194308)):("function"===typeof g.componentDidMount&&(b.flags|=4194308),
b.memoizedProps=d,b.memoizedState=k),g.props=d,g.state=k,g.context=l,d=h):("function"===typeof g.componentDidMount&&(b.flags|=4194308),d=!1)}else{g=b.stateNode;uh(a,b);h=b.memoizedProps;l=b.type===b.elementType?h:wa(b.type,h);g.props=l;n=b.pendingProps;q=g.context;k=c.contextType;"object"===typeof k&&null!==k?k=la(k):(k=da(c)?ob:I.current,k=Kb(b,k));var p=c.getDerivedStateFromProps;(m="function"===typeof p||"function"===typeof g.getSnapshotBeforeUpdate)||"function"!==typeof g.UNSAFE_componentWillReceiveProps&&
"function"!==typeof g.componentWillReceiveProps||(h!==n||q!==k)&&zh(b,g,d,k);db=!1;q=b.memoizedState;g.state=q;nd(b,d,g,e);var v=b.memoizedState;h!==n||q!==v||P.current||db?("function"===typeof p&&(Ye(b,c,p,d),v=b.memoizedState),(l=db||xh(b,c,l,d,q,v,k)||!1)?(m||"function"!==typeof g.UNSAFE_componentWillUpdate&&"function"!==typeof g.componentWillUpdate||("function"===typeof g.componentWillUpdate&&g.componentWillUpdate(d,v,k),"function"===typeof g.UNSAFE_componentWillUpdate&&g.UNSAFE_componentWillUpdate(d,
v,k)),"function"===typeof g.componentDidUpdate&&(b.flags|=4),"function"===typeof g.getSnapshotBeforeUpdate&&(b.flags|=1024)):("function"!==typeof g.componentDidUpdate||h===a.memoizedProps&&q===a.memoizedState||(b.flags|=4),"function"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&q===a.memoizedState||(b.flags|=1024),b.memoizedProps=d,b.memoizedState=v),g.props=d,g.state=v,g.context=k,d=l):("function"!==typeof g.componentDidUpdate||h===a.memoizedProps&&q===a.memoizedState||(b.flags|=4),"function"!==
typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&q===a.memoizedState||(b.flags|=1024),d=!1)}return Bf(a,b,c,d,f,e)}function Bf(a,b,c,d,e,f){oi(a,b);var g=0!==(b.flags&128);if(!d&&!g)return e&&rh(b,c,!1),Oa(a,b,f);d=b.stateNode;vk.current=b;var h=g&&"function"!==typeof c.getDerivedStateFromError?null:d.render();b.flags|=1;null!==a&&g?(b.child=Rb(b,a.child,null,f),b.child=Rb(b,null,h,f)):aa(a,b,h,f);b.memoizedState=d.state;e&&rh(b,c,!0);return b.child}function qi(a){var b=a.stateNode;b.pendingContext?
ph(a,b.pendingContext,b.pendingContext!==b.context):b.context&&ph(a,b.context,!1);gf(a,b.containerInfo)}function ri(a,b,c,d,e){Pb();df(e);b.flags|=256;aa(a,b,c,d);return b.child}function Bd(a){return{baseLanes:a,cachePool:null,transitions:null}}function si(a,b){return{baseLanes:a.baseLanes|b,cachePool:null,transitions:a.transitions}}function ti(a,b,c){var d=b.pendingProps,e=E.current,f=!1,g=0!==(b.flags&128),h;(h=g)||(h=null!==a&&null===a.memoizedState?!1:0!==(e&2));if(h)f=!0,b.flags&=-129;else if(null===
a||null!==a.memoizedState)e|=1;y(E,e&1);if(null===a){cf(b);a=b.memoizedState;if(null!==a&&(a=a.dehydrated,null!==a))return 0===(b.mode&1)?b.lanes=1:"$!"===a.data?b.lanes=8:b.lanes=1073741824,null;e=d.children;a=d.fallback;return f?(d=b.mode,f=b.child,e={mode:"hidden",children:e},0===(d&1)&&null!==f?(f.childLanes=0,f.pendingProps=e):f=Cd(e,d,0,null),a=rb(a,d,c,null),f.return=b,a.return=b,f.sibling=a,b.child=f,b.child.memoizedState=Bd(c),b.memoizedState=Dd,a):Cf(b,e)}e=a.memoizedState;if(null!==e){h=
e.dehydrated;if(null!==h){if(g){if(b.flags&256)return b.flags&=-257,Ed(a,b,c,Error(n(422)));if(null!==b.memoizedState)return b.child=a.child,b.flags|=128,null;f=d.fallback;e=b.mode;d=Cd({mode:"visible",children:d.children},e,0,null);f=rb(f,e,c,null);f.flags|=2;d.return=b;f.return=b;d.sibling=f;b.child=d;0!==(b.mode&1)&&Rb(b,a.child,null,c);b.child.memoizedState=Bd(c);b.memoizedState=Dd;return f}if(0===(b.mode&1))b=Ed(a,b,c,null);else if("$!"===h.data)b=Ed(a,b,c,Error(n(419)));else if(d=0!==(c&a.childLanes),
ea||d){d=G;if(null!==d){switch(c&-c){case 4:f=2;break;case 16:f=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:f=32;break;case 536870912:f=268435456;break;default:f=0}d=0!==(f&(d.suspendedLanes|c))?0:f;0!==d&&d!==e.retryLane&&(e.retryLane=d,sa(a,d,-1))}xf();b=Ed(a,b,c,Error(n(421)))}else"$?"===h.data?
(b.flags|=128,b.child=a.child,b=wk.bind(null,a),h._reactRetry=b,b=null):(c=e.treeContext,fa=Ja(h.nextSibling),ka=b,C=!0,xa=null,null!==c&&(oa[pa++]=Ma,oa[pa++]=Na,oa[pa++]=qb,Ma=c.id,Na=c.overflow,qb=b),b=Cf(b,b.pendingProps.children),b.flags|=4096);return b}if(f)return d=ui(a,b,d.children,d.fallback,c),f=b.child,e=a.child.memoizedState,f.memoizedState=null===e?Bd(c):si(e,c),f.childLanes=a.childLanes&~c,b.memoizedState=Dd,d;c=vi(a,b,d.children,c);b.memoizedState=null;return c}if(f)return d=ui(a,b,
d.children,d.fallback,c),f=b.child,e=a.child.memoizedState,f.memoizedState=null===e?Bd(c):si(e,c),f.childLanes=a.childLanes&~c,b.memoizedState=Dd,d;c=vi(a,b,d.children,c);b.memoizedState=null;return c}function Cf(a,b,c){b=Cd({mode:"visible",children:b},a.mode,0,null);b.return=a;return a.child=b}function vi(a,b,c,d){var e=a.child;a=e.sibling;c=eb(e,{mode:"visible",children:c});0===(b.mode&1)&&(c.lanes=d);c.return=b;c.sibling=null;null!==a&&(d=b.deletions,null===d?(b.deletions=[a],b.flags|=16):d.push(a));
return b.child=c}function ui(a,b,c,d,e){var f=b.mode;a=a.child;var g=a.sibling,h={mode:"hidden",children:c};0===(f&1)&&b.child!==a?(c=b.child,c.childLanes=0,c.pendingProps=h,b.deletions=null):(c=eb(a,h),c.subtreeFlags=a.subtreeFlags&14680064);null!==g?d=eb(g,d):(d=rb(d,f,e,null),d.flags|=2);d.return=b;c.return=b;c.sibling=d;b.child=c;return d}function Ed(a,b,c,d){null!==d&&df(d);Rb(b,a.child,null,c);a=Cf(b,b.pendingProps.children);a.flags|=2;b.memoizedState=null;return a}function wi(a,b,c){a.lanes|=
b;var d=a.alternate;null!==d&&(d.lanes|=b);We(a.return,b,c)}function Df(a,b,c,d,e){var f=a.memoizedState;null===f?a.memoizedState={isBackwards:b,rendering:null,renderingStartTime:0,last:d,tail:c,tailMode:e}:(f.isBackwards=b,f.rendering=null,f.renderingStartTime=0,f.last=d,f.tail=c,f.tailMode=e)}function xi(a,b,c){var d=b.pendingProps,e=d.revealOrder,f=d.tail;aa(a,b,d.children,c);d=E.current;if(0!==(d&2))d=d&1|2,b.flags|=128;else{if(null!==a&&0!==(a.flags&128))a:for(a=b.child;null!==a;){if(13===a.tag)null!==
a.memoizedState&&wi(a,c,b);else if(19===a.tag)wi(a,c,b);else if(null!==a.child){a.child.return=a;a=a.child;continue}if(a===b)break a;for(;null===a.sibling;){if(null===a.return||a.return===b)break a;a=a.return}a.sibling.return=a.return;a=a.sibling}d&=1}y(E,d);if(0===(b.mode&1))b.memoizedState=null;else switch(e){case "forwards":c=b.child;for(e=null;null!==c;)a=c.alternate,null!==a&&null===ud(a)&&(e=c),c=c.sibling;c=e;null===c?(e=b.child,b.child=null):(e=c.sibling,c.sibling=null);Df(b,!1,e,c,f);break;
case "backwards":c=null;e=b.child;for(b.child=null;null!==e;){a=e.alternate;if(null!==a&&null===ud(a)){b.child=e;break}a=e.sibling;e.sibling=c;c=e;e=a}Df(b,!0,c,null,f);break;case "together":Df(b,!1,null,null,void 0);break;default:b.memoizedState=null}return b.child}function Oa(a,b,c){null!==a&&(b.dependencies=a.dependencies);na|=b.lanes;if(0===(c&b.childLanes))return null;if(null!==a&&b.child!==a.child)throw Error(n(153));if(null!==b.child){a=b.child;c=eb(a,a.pendingProps);b.child=c;for(c.return=
b;null!==a.sibling;)a=a.sibling,c=c.sibling=eb(a,a.pendingProps),c.return=b;c.sibling=null}return b.child}function xk(a,b,c){switch(b.tag){case 3:qi(b);Pb();break;case 5:Hh(b);break;case 1:da(b.type)&&id(b);break;case 4:gf(b,b.stateNode.containerInfo);break;case 10:var d=b.type._context,e=b.memoizedProps.value;y(ld,d._currentValue);d._currentValue=e;break;case 13:d=b.memoizedState;if(null!==d){if(null!==d.dehydrated)return y(E,E.current&1),b.flags|=128,null;if(0!==(c&b.child.childLanes))return ti(a,
b,c);y(E,E.current&1);a=Oa(a,b,c);return null!==a?a.sibling:null}y(E,E.current&1);break;case 19:d=0!==(c&b.childLanes);if(0!==(a.flags&128)){if(d)return xi(a,b,c);b.flags|=128}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null,e.lastEffect=null);y(E,E.current);if(d)break;else return null;case 22:case 23:return b.lanes=0,ni(a,b,c)}return Oa(a,b,c)}function yk(a,b,c){af(b);switch(b.tag){case 1:return da(b.type)&&(u(P),u(I)),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return Qb(),u(P),
u(I),jf(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return hf(b),null;case 13:u(E);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(n(340));Pb()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return u(E),null;case 4:return Qb(),null;case 10:return Ve(b.type._context),null;case 22:case 23:return Z=Fa.current,u(Fa),null;case 24:return null;default:return null}}function Sb(a,b){var c=a.ref;if(null!==c)if("function"===
typeof c)try{c(null)}catch(d){F(a,b,d)}else c.current=null}function Ef(a,b,c){try{c()}catch(d){F(a,b,d)}}function zk(a,b){Ff=Wc;a=Zg();if(Ge(a)){if("selectionStart"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(X){c=null;break a}var g=0,h=-1,k=-1,l=0,t=0,p=a,q=null;b:for(;;){for(var u;;){p!==
c||0!==e&&3!==p.nodeType||(h=g+e);p!==f||0!==d&&3!==p.nodeType||(k=g+d);3===p.nodeType&&(g+=p.nodeValue.length);if(null===(u=p.firstChild))break;q=p;p=u}for(;;){if(p===a)break b;q===c&&++l===e&&(h=g);q===f&&++t===d&&(k=g);if(null!==(u=p.nextSibling))break;p=q;q=p.parentNode}p=u}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Gf={focusedElem:a,selectionRange:c};Wc=!1;for(m=b;null!==m;)if(b=m,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,m=a;else for(;null!==
m;){b=m;try{var v=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;case 1:if(null!==v){var x=v.memoizedProps,z=v.memoizedState,A=b.stateNode,w=A.getSnapshotBeforeUpdate(b.elementType===b.type?x:wa(b.type,x),z);A.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var r=b.stateNode.containerInfo;if(1===r.nodeType)r.textContent="";else if(9===r.nodeType){var y=r.body;null!=y&&(y.textContent="")}break;case 5:case 6:case 4:case 17:break;default:throw Error(n(163));}}catch(X){F(b,
b.return,X)}a=b.sibling;if(null!==a){a.return=b.return;m=a;break}m=b.return}v=yi;yi=!1;return v}function Dc(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Ef(b,c,f)}e=e.next}while(e!==d)}}function Fd(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Hf(a){var b=a.ref;if(null!==b){var c=a.stateNode;
switch(a.tag){case 5:a=c;break;default:a=c}"function"===typeof b?b(a):b.current=a}}function zi(a){var b=a.alternate;null!==b&&(a.alternate=null,zi(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Ca],delete b[qc],delete b[Ke],delete b[Ak],delete b[Bk]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Ai(a){return 5===a.tag||3===a.tag||4===a.tag}
function Bi(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Ai(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}function If(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,
b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=hd));else if(4!==d&&(a=a.child,null!==a))for(If(a,b,c),a=a.sibling;null!==a;)If(a,b,c),a=a.sibling}function Jf(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Jf(a,b,c),a=a.sibling;null!==a;)Jf(a,b,c),a=a.sibling}function hb(a,b,c){for(c=c.child;null!==c;)Ci(a,b,c),c=c.sibling}function Ci(a,b,c){if(Ba&&"function"===typeof Ba.onCommitFiberUnmount)try{Ba.onCommitFiberUnmount(Rc,
c)}catch(h){}switch(c.tag){case 5:U||Sb(c,b);case 6:var d=Q,e=ya;Q=null;hb(a,b,c);Q=d;ya=e;null!==Q&&(ya?(a=Q,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):Q.removeChild(c.stateNode));break;case 18:null!==Q&&(ya?(a=Q,c=c.stateNode,8===a.nodeType?Qe(a.parentNode,c):1===a.nodeType&&Qe(a,c),jc(a)):Qe(Q,c.stateNode));break;case 4:d=Q;e=ya;Q=c.stateNode.containerInfo;ya=!0;hb(a,b,c);Q=d;ya=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,
null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Ef(c,b,g):0!==(f&4)&&Ef(c,b,g));e=e.next}while(e!==d)}hb(a,b,c);break;case 1:if(!U&&(Sb(c,b),d=c.stateNode,"function"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){F(c,b,h)}hb(a,b,c);break;case 21:hb(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==c.memoizedState,hb(a,b,c),U=d):hb(a,b,c);break;default:hb(a,b,c)}}function Di(a){var b=a.updateQueue;if(null!==
b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Ck);b.forEach(function(b){var d=Dk.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}function za(a,b,c){c=b.deletions;if(null!==c)for(var d=0;d<c.length;d++){var e=c[d];try{var f=a,g=b,h=g;a:for(;null!==h;){switch(h.tag){case 5:Q=h.stateNode;ya=!1;break a;case 3:Q=h.stateNode.containerInfo;ya=!0;break a;case 4:Q=h.stateNode.containerInfo;ya=!0;break a}h=h.return}if(null===Q)throw Error(n(160));Ci(f,g,e);Q=null;ya=!1;var k=e.alternate;
null!==k&&(k.return=null);e.return=null}catch(l){F(e,b,l)}}if(b.subtreeFlags&12854)for(b=b.child;null!==b;)Ei(b,a),b=b.sibling}function Ei(a,b,c){var d=a.alternate;c=a.flags;switch(a.tag){case 0:case 11:case 14:case 15:za(b,a);Ga(a);if(c&4){try{Dc(3,a,a.return),Fd(3,a)}catch(v){F(a,a.return,v)}try{Dc(5,a,a.return)}catch(v){F(a,a.return,v)}}break;case 1:za(b,a);Ga(a);c&512&&null!==d&&Sb(d,d.return);break;case 5:za(b,a);Ga(a);c&512&&null!==d&&Sb(d,d.return);if(a.flags&32){var e=a.stateNode;try{Cc(e,
"")}catch(v){F(a,a.return,v)}}if(c&4&&(e=a.stateNode,null!=e)){var f=a.memoizedProps,g=null!==d?d.memoizedProps:f,h=a.type,k=a.updateQueue;a.updateQueue=null;if(null!==k)try{"input"===h&&"radio"===f.type&&null!=f.name&&hg(e,f);oe(h,g);var l=oe(h,f);for(g=0;g<k.length;g+=2){var t=k[g],p=k[g+1];"style"===t?og(e,p):"dangerouslySetInnerHTML"===t?ii(e,p):"children"===t?Cc(e,p):Yd(e,t,p,l)}switch(h){case "input":je(e,f);break;case "textarea":kg(e,f);break;case "select":var q=e._wrapperState.wasMultiple;
e._wrapperState.wasMultiple=!!f.multiple;var u=f.value;null!=u?Ab(e,!!f.multiple,u,!1):q!==!!f.multiple&&(null!=f.defaultValue?Ab(e,!!f.multiple,f.defaultValue,!0):Ab(e,!!f.multiple,f.multiple?[]:"",!1))}e[qc]=f}catch(v){F(a,a.return,v)}}break;case 6:za(b,a);Ga(a);if(c&4){if(null===a.stateNode)throw Error(n(162));l=a.stateNode;t=a.memoizedProps;try{l.nodeValue=t}catch(v){F(a,a.return,v)}}break;case 3:za(b,a);Ga(a);if(c&4&&null!==d&&d.memoizedState.isDehydrated)try{jc(b.containerInfo)}catch(v){F(a,
a.return,v)}break;case 4:za(b,a);Ga(a);break;case 13:za(b,a);Ga(a);l=a.child;l.flags&8192&&null!==l.memoizedState&&(null===l.alternate||null===l.alternate.memoizedState)&&(Kf=M());c&4&&Di(a);break;case 22:l=null!==d&&null!==d.memoizedState;a.mode&1?(U=(t=U)||l,za(b,a),U=t):za(b,a);Ga(a);if(c&8192){t=null!==a.memoizedState;a:for(p=null,q=a;;){if(5===q.tag){if(null===p){p=q;try{e=q.stateNode,t?(f=e.style,"function"===typeof f.setProperty?f.setProperty("display","none","important"):f.display="none"):
(h=q.stateNode,k=q.memoizedProps.style,g=void 0!==k&&null!==k&&k.hasOwnProperty("display")?k.display:null,h.style.display=ng("display",g))}catch(v){F(a,a.return,v)}}}else if(6===q.tag){if(null===p)try{q.stateNode.nodeValue=t?"":q.memoizedProps}catch(v){F(a,a.return,v)}}else if((22!==q.tag&&23!==q.tag||null===q.memoizedState||q===a)&&null!==q.child){q.child.return=q;q=q.child;continue}if(q===a)break a;for(;null===q.sibling;){if(null===q.return||q.return===a)break a;p===q&&(p=null);q=q.return}p===q&&
(p=null);q.sibling.return=q.return;q=q.sibling}if(t&&!l&&0!==(a.mode&1))for(m=a,a=a.child;null!==a;){for(l=m=a;null!==m;){t=m;p=t.child;switch(t.tag){case 0:case 11:case 14:case 15:Dc(4,t,t.return);break;case 1:Sb(t,t.return);f=t.stateNode;if("function"===typeof f.componentWillUnmount){q=t;u=t.return;try{e=q,f.props=e.memoizedProps,f.state=e.memoizedState,f.componentWillUnmount()}catch(v){F(q,u,v)}}break;case 5:Sb(t,t.return);break;case 22:if(null!==t.memoizedState){Fi(l);continue}}null!==p?(p.return=
t,m=p):Fi(l)}a=a.sibling}}break;case 19:za(b,a);Ga(a);c&4&&Di(a);break;case 21:break;default:za(b,a),Ga(a)}}function Ga(a){var b=a.flags;if(b&2){try{a:{for(var c=a.return;null!==c;){if(Ai(c)){var d=c;break a}c=c.return}throw Error(n(160));}switch(d.tag){case 5:var e=d.stateNode;d.flags&32&&(Cc(e,""),d.flags&=-33);var f=Bi(a);Jf(a,f,e);break;case 3:case 4:var g=d.stateNode.containerInfo,h=Bi(a);If(a,h,g);break;default:throw Error(n(161));}}catch(k){F(a,a.return,k)}a.flags&=-3}b&4096&&(a.flags&=-4097)}
function Ek(a,b,c){m=a;Gi(a,b,c)}function Gi(a,b,c){for(var d=0!==(a.mode&1);null!==m;){var e=m,f=e.child;if(22===e.tag&&d){var g=null!==e.memoizedState||Gd;if(!g){var h=e.alternate,k=null!==h&&null!==h.memoizedState||U;h=Gd;var l=U;Gd=g;if((U=k)&&!l)for(m=e;null!==m;)g=m,k=g.child,22===g.tag&&null!==g.memoizedState?Hi(e):null!==k?(k.return=g,m=k):Hi(e);for(;null!==f;)m=f,Gi(f,b,c),f=f.sibling;m=e;Gd=h;U=l}Ii(a,b,c)}else 0!==(e.subtreeFlags&8772)&&null!==f?(f.return=e,m=f):Ii(a,b,c)}}function Ii(a,
b,c){for(;null!==m;){b=m;if(0!==(b.flags&8772)){c=b.alternate;try{if(0!==(b.flags&8772))switch(b.tag){case 0:case 11:case 15:U||Fd(5,b);break;case 1:var d=b.stateNode;if(b.flags&4&&!U)if(null===c)d.componentDidMount();else{var e=b.elementType===b.type?c.memoizedProps:wa(b.type,c.memoizedProps);d.componentDidUpdate(e,c.memoizedState,d.__reactInternalSnapshotBeforeUpdate)}var f=b.updateQueue;null!==f&&wh(b,f,d);break;case 3:var g=b.updateQueue;if(null!==g){c=null;if(null!==b.child)switch(b.child.tag){case 5:c=
b.child.stateNode;break;case 1:c=b.child.stateNode}wh(b,g,c)}break;case 5:var h=b.stateNode;if(null===c&&b.flags&4){c=h;var k=b.memoizedProps;switch(b.type){case "button":case "input":case "select":case "textarea":k.autoFocus&&c.focus();break;case "img":k.src&&(c.src=k.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(null===b.memoizedState){var l=b.alternate;if(null!==l){var p=l.memoizedState;if(null!==p){var u=p.dehydrated;null!==u&&jc(u)}}}break;case 19:case 17:case 21:case 22:case 23:break;
default:throw Error(n(163));}U||b.flags&512&&Hf(b)}catch(q){F(b,b.return,q)}}if(b===a){m=null;break}c=b.sibling;if(null!==c){c.return=b.return;m=c;break}m=b.return}}function Fi(a){for(;null!==m;){var b=m;if(b===a){m=null;break}var c=b.sibling;if(null!==c){c.return=b.return;m=c;break}m=b.return}}function Hi(a){for(;null!==m;){var b=m;try{switch(b.tag){case 0:case 11:case 15:var c=b.return;try{Fd(4,b)}catch(k){F(b,c,k)}break;case 1:var d=b.stateNode;if("function"===typeof d.componentDidMount){var e=
b.return;try{d.componentDidMount()}catch(k){F(b,e,k)}}var f=b.return;try{Hf(b)}catch(k){F(b,f,k)}break;case 5:var g=b.return;try{Hf(b)}catch(k){F(b,g,k)}}}catch(k){F(b,b.return,k)}if(b===a){m=null;break}var h=b.sibling;if(null!==h){h.return=b.return;m=h;break}m=b.return}}function Ec(){yf=M()+500}function Y(){return 0!==(p&6)?M():-1!==Hd?Hd:Hd=M()}function fb(a){if(0===(a.mode&1))return 1;if(0!==(p&2)&&0!==R)return R&-R;if(null!==Fk.transition)return 0===Id&&(Id=zg()),Id;a=x;if(0!==a)return a;a=window.event;
a=void 0===a?16:Hg(a.type);return a}function sa(a,b,c){if(50<Fc)throw Fc=0,Lf=null,Error(n(185));var d=Jd(a,b);if(null===d)return null;ec(d,b,c);if(0===(p&2)||d!==G)d===G&&(0===(p&2)&&(Kd|=b),4===K&&ib(d,R)),ha(d,c),1===b&&0===p&&0===(a.mode&1)&&(Ec(),jd&&bb());return d}function Jd(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}function ha(a,b){var c=a.callbackNode;
sj(a,b);var d=Sc(a,a===G?R:0);if(0===d)null!==c&&Ji(c),a.callbackNode=null,a.callbackPriority=0;else if(b=d&-d,a.callbackPriority!==b){null!=c&&Ji(c);if(1===b)0===a.tag?ik(Ki.bind(null,a)):sh(Ki.bind(null,a)),Gk(function(){0===p&&bb()}),c=null;else{switch(Ag(d)){case 1:c=Be;break;case 4:c=Ig;break;case 16:c=Yc;break;case 536870912:c=Jg;break;default:c=Yc}c=Li(c,Mi.bind(null,a))}a.callbackPriority=b;a.callbackNode=c}}function Mi(a,b){Hd=-1;Id=0;if(0!==(p&6))throw Error(n(327));var c=a.callbackNode;
if(Tb()&&a.callbackNode!==c)return null;var d=Sc(a,a===G?R:0);if(0===d)return null;if(0!==(d&30)||0!==(d&a.expiredLanes)||b)b=Ld(a,d);else{b=d;var e=p;p|=2;var f=Ni();if(G!==a||R!==b)Pa=null,Ec(),ub(a,b);do try{Hk();break}catch(h){Oi(a,h)}while(1);Te();Md.current=f;p=e;null!==H?b=0:(G=null,R=0,b=K)}if(0!==b){2===b&&(e=te(a),0!==e&&(d=e,b=Mf(a,e)));if(1===b)throw c=Gc,ub(a,0),ib(a,d),ha(a,M()),c;if(6===b)ib(a,d);else{e=a.current.alternate;if(0===(d&30)&&!Ik(e)&&(b=Ld(a,d),2===b&&(f=te(a),0!==f&&(d=
f,b=Mf(a,f))),1===b))throw c=Gc,ub(a,0),ib(a,d),ha(a,M()),c;a.finishedWork=e;a.finishedLanes=d;switch(b){case 0:case 1:throw Error(n(345));case 2:vb(a,ia,Pa);break;case 3:ib(a,d);if((d&130023424)===d&&(b=Kf+500-M(),10<b)){if(0!==Sc(a,0))break;e=a.suspendedLanes;if((e&d)!==d){Y();a.pingedLanes|=a.suspendedLanes&e;break}a.timeoutHandle=Nf(vb.bind(null,a,ia,Pa),b);break}vb(a,ia,Pa);break;case 4:ib(a,d);if((d&4194240)===d)break;b=a.eventTimes;for(e=-1;0<d;){var g=31-ta(d);f=1<<g;g=b[g];g>e&&(e=g);d&=
~f}d=e;d=M()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*Jk(d/1960))-d;if(10<d){a.timeoutHandle=Nf(vb.bind(null,a,ia,Pa),d);break}vb(a,ia,Pa);break;case 5:vb(a,ia,Pa);break;default:throw Error(n(329));}}}ha(a,M());return a.callbackNode===c?Mi.bind(null,a):null}function Mf(a,b){var c=Hc;a.current.memoizedState.isDehydrated&&(ub(a,b).flags|=256);a=Ld(a,b);2!==a&&(b=ia,ia=c,null!==b&&wf(b));return a}function wf(a){null===ia?ia=a:ia.push.apply(ia,a)}function Ik(a){for(var b=
a;;){if(b.flags&16384){var c=b.updateQueue;if(null!==c&&(c=c.stores,null!==c))for(var d=0;d<c.length;d++){var e=c[d],f=e.getSnapshot;e=e.value;try{if(!ua(f(),e))return!1}catch(g){return!1}}}c=b.child;if(b.subtreeFlags&16384&&null!==c)c.return=b,b=c;else{if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return!0;b=b.return}b.sibling.return=b.return;b=b.sibling}}return!0}function ib(a,b){b&=~Of;b&=~Kd;a.suspendedLanes|=b;a.pingedLanes&=~b;for(a=a.expirationTimes;0<b;){var c=31-
ta(b),d=1<<c;a[c]=-1;b&=~d}}function Ki(a){if(0!==(p&6))throw Error(n(327));Tb();var b=Sc(a,0);if(0===(b&1))return ha(a,M()),null;var c=Ld(a,b);if(0!==a.tag&&2===c){var d=te(a);0!==d&&(b=d,c=Mf(a,d))}if(1===c)throw c=Gc,ub(a,0),ib(a,b),ha(a,M()),c;if(6===c)throw Error(n(345));a.finishedWork=a.current.alternate;a.finishedLanes=b;vb(a,ia,Pa);ha(a,M());return null}function Pf(a,b){var c=p;p|=1;try{return a(b)}finally{p=c,0===p&&(Ec(),jd&&bb())}}function wb(a){null!==jb&&0===jb.tag&&0===(p&6)&&Tb();var b=
p;p|=1;var c=ba.transition,d=x;try{if(ba.transition=null,x=1,a)return a()}finally{x=d,ba.transition=c,p=b,0===(p&6)&&bb()}}function ub(a,b){a.finishedWork=null;a.finishedLanes=0;var c=a.timeoutHandle;-1!==c&&(a.timeoutHandle=-1,Kk(c));if(null!==H)for(c=H.return;null!==c;){var d=c;af(d);switch(d.tag){case 1:d=d.type.childContextTypes;null!==d&&void 0!==d&&(u(P),u(I));break;case 3:Qb();u(P);u(I);jf();break;case 5:hf(d);break;case 4:Qb();break;case 13:u(E);break;case 19:u(E);break;case 10:Ve(d.type._context);
break;case 22:case 23:Z=Fa.current,u(Fa)}c=c.return}G=a;H=a=eb(a.current,null);R=Z=b;K=0;Gc=null;Of=Kd=na=0;ia=Hc=null;if(null!==ma){for(b=0;b<ma.length;b++)if(c=ma[b],d=c.interleaved,null!==d){c.interleaved=null;var e=d.next,f=c.pending;if(null!==f){var g=f.next;f.next=e;d.next=g}c.pending=d}ma=null}return a}function Oi(a,b){do{var c=H;try{Te();vd.current=wd;if(xd){for(var d=z.memoizedState;null!==d;){var e=d.queue;null!==e&&(e.pending=null);d=d.next}xd=!1}tb=0;L=J=z=null;wc=!1;xc=0;Qf.current=null;
if(null===c||null===c.return){K=1;Gc=b;H=null;break}a:{var f=a,g=c.return,h=c,k=b;b=R;h.flags|=32768;if(null!==k&&"object"===typeof k&&"function"===typeof k.then){var l=k,m=h,p=m.tag;if(0===(m.mode&1)&&(0===p||11===p||15===p)){var q=m.alternate;q?(m.updateQueue=q.updateQueue,m.memoizedState=q.memoizedState,m.lanes=q.lanes):(m.updateQueue=null,m.memoizedState=null)}var u=fi(g);if(null!==u){u.flags&=-257;gi(u,g,h,f,b);u.mode&1&&ei(f,l,b);b=u;k=l;var v=b.updateQueue;if(null===v){var x=new Set;x.add(k);
b.updateQueue=x}else v.add(k);break a}else{if(0===(b&1)){ei(f,l,b);xf();break a}k=Error(n(426))}}else if(C&&h.mode&1){var y=fi(g);if(null!==y){0===(y.flags&65536)&&(y.flags|=256);gi(y,g,h,f,b);df(k);break a}}f=k;4!==K&&(K=2);null===Hc?Hc=[f]:Hc.push(f);k=tf(k,h);h=g;do{switch(h.tag){case 3:h.flags|=65536;b&=-b;h.lanes|=b;var A=ci(h,k,b);vh(h,A);break a;case 1:f=k;var w=h.type,r=h.stateNode;if(0===(h.flags&128)&&("function"===typeof w.getDerivedStateFromError||null!==r&&"function"===typeof r.componentDidCatch&&
(null===gb||!gb.has(r)))){h.flags|=65536;b&=-b;h.lanes|=b;var B=di(h,f,b);vh(h,B);break a}}h=h.return}while(null!==h)}Pi(c)}catch(X){b=X;H===c&&null!==c&&(H=c=c.return);continue}break}while(1)}function Ni(){var a=Md.current;Md.current=wd;return null===a?wd:a}function xf(){if(0===K||3===K||2===K)K=4;null===G||0===(na&268435455)&&0===(Kd&268435455)||ib(G,R)}function Ld(a,b){var c=p;p|=2;var d=Ni();if(G!==a||R!==b)Pa=null,ub(a,b);do try{Lk();break}catch(e){Oi(a,e)}while(1);Te();p=c;Md.current=d;if(null!==
H)throw Error(n(261));G=null;R=0;return K}function Lk(){for(;null!==H;)Qi(H)}function Hk(){for(;null!==H&&!Mk();)Qi(H)}function Qi(a){var b=Nk(a.alternate,a,Z);a.memoizedProps=a.pendingProps;null===b?Pi(a):H=b;Qf.current=null}function Pi(a){var b=a;do{var c=b.alternate;a=b.return;if(0===(b.flags&32768)){if(c=rk(c,b,Z),null!==c){H=c;return}}else{c=yk(c,b);if(null!==c){c.flags&=32767;H=c;return}if(null!==a)a.flags|=32768,a.subtreeFlags=0,a.deletions=null;else{K=6;H=null;return}}b=b.sibling;if(null!==
b){H=b;return}H=b=a}while(null!==b);0===K&&(K=5)}function vb(a,b,c){var d=x,e=ba.transition;try{ba.transition=null,x=1,Ok(a,b,c,d)}finally{ba.transition=e,x=d}return null}function Ok(a,b,c,d){do Tb();while(null!==jb);if(0!==(p&6))throw Error(n(327));c=a.finishedWork;var e=a.finishedLanes;if(null===c)return null;a.finishedWork=null;a.finishedLanes=0;if(c===a.current)throw Error(n(177));a.callbackNode=null;a.callbackPriority=0;var f=c.lanes|c.childLanes;tj(a,f);a===G&&(H=G=null,R=0);0===(c.subtreeFlags&
2064)&&0===(c.flags&2064)||Nd||(Nd=!0,Li(Yc,function(){Tb();return null}));f=0!==(c.flags&15990);if(0!==(c.subtreeFlags&15990)||f){f=ba.transition;ba.transition=null;var g=x;x=1;var h=p;p|=4;Qf.current=null;zk(a,c);Ei(c,a);Sj(Gf);Wc=!!Ff;Gf=Ff=null;a.current=c;Ek(c,a,e);Pk();p=h;x=g;ba.transition=f}else a.current=c;Nd&&(Nd=!1,jb=a,Od=e);f=a.pendingLanes;0===f&&(gb=null);nj(c.stateNode,d);ha(a,M());if(null!==b)for(d=a.onRecoverableError,c=0;c<b.length;c++)d(b[c]);if(Ad)throw Ad=!1,a=vf,vf=null,a;0!==
(Od&1)&&0!==a.tag&&Tb();f=a.pendingLanes;0!==(f&1)?a===Lf?Fc++:(Fc=0,Lf=a):Fc=0;bb();return null}function Tb(){if(null!==jb){var a=Ag(Od),b=ba.transition,c=x;try{ba.transition=null;x=16>a?16:a;if(null===jb)var d=!1;else{a=jb;jb=null;Od=0;if(0!==(p&6))throw Error(n(331));var e=p;p|=4;for(m=a.current;null!==m;){var f=m,g=f.child;if(0!==(m.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;k<h.length;k++){var l=h[k];for(m=l;null!==m;){var t=m;switch(t.tag){case 0:case 11:case 15:Dc(8,t,f)}var u=t.child;
if(null!==u)u.return=t,m=u;else for(;null!==m;){t=m;var q=t.sibling,y=t.return;zi(t);if(t===l){m=null;break}if(null!==q){q.return=y;m=q;break}m=y}}}var v=f.alternate;if(null!==v){var z=v.child;if(null!==z){v.child=null;do{var B=z.sibling;z.sibling=null;z=B}while(null!==z)}}m=f}}if(0!==(f.subtreeFlags&2064)&&null!==g)g.return=f,m=g;else b:for(;null!==m;){f=m;if(0!==(f.flags&2048))switch(f.tag){case 0:case 11:case 15:Dc(9,f,f.return)}var A=f.sibling;if(null!==A){A.return=f.return;m=A;break b}m=f.return}}var w=
a.current;for(m=w;null!==m;){g=m;var r=g.child;if(0!==(g.subtreeFlags&2064)&&null!==r)r.return=g,m=r;else b:for(g=w;null!==m;){h=m;if(0!==(h.flags&2048))try{switch(h.tag){case 0:case 11:case 15:Fd(9,h)}}catch(X){F(h,h.return,X)}if(h===g){m=null;break b}var C=h.sibling;if(null!==C){C.return=h.return;m=C;break b}m=h.return}}p=e;bb();if(Ba&&"function"===typeof Ba.onPostCommitFiberRoot)try{Ba.onPostCommitFiberRoot(Rc,a)}catch(X){}d=!0}return d}finally{x=c,ba.transition=b}}return!1}function Ri(a,b,c){b=
tf(c,b);b=ci(a,b,1);cb(a,b);b=Y();a=Jd(a,1);null!==a&&(ec(a,1,b),ha(a,b))}function F(a,b,c){if(3===a.tag)Ri(a,a,c);else for(;null!==b;){if(3===b.tag){Ri(b,a,c);break}else if(1===b.tag){var d=b.stateNode;if("function"===typeof b.type.getDerivedStateFromError||"function"===typeof d.componentDidCatch&&(null===gb||!gb.has(d))){a=tf(c,a);a=di(b,a,1);cb(b,a);a=Y();b=Jd(b,1);null!==b&&(ec(b,1,a),ha(b,a));break}}b=b.return}}function qk(a,b,c){var d=a.pingCache;null!==d&&d.delete(b);b=Y();a.pingedLanes|=a.suspendedLanes&
c;G===a&&(R&c)===c&&(4===K||3===K&&(R&130023424)===R&&500>M()-Kf?ub(a,0):Of|=c);ha(a,b)}function Si(a,b){0===b&&(0===(a.mode&1)?b=1:(b=Pd,Pd<<=1,0===(Pd&130023424)&&(Pd=4194304)));var c=Y();a=Jd(a,b);null!==a&&(ec(a,b,c),ha(a,c))}function wk(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Si(a,c)}function Dk(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(n(314));}null!==d&&d.delete(b);
Si(a,c)}function Li(a,b){return th(a,b)}function Qk(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function zf(a){a=a.prototype;return!(!a||!a.isReactComponent)}function Rk(a){if("function"===typeof a)return zf(a)?
1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===ge)return 11;if(a===he)return 14}return 2}function eb(a,b){var c=a.alternate;null===c?(c=qa(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;
b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};c.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}function sd(a,b,c,d,e,f){var g=2;d=a;if("function"===typeof a)zf(a)&&(g=1);else if("string"===typeof a)g=5;else a:switch(a){case yb:return rb(c.children,e,f,b);case de:g=8;e|=8;break;case ce:return a=qa(12,c,b,e|2),a.elementType=ce,a.lanes=f,a;case ee:return a=qa(13,c,b,e),a.elementType=ee,a.lanes=f,a;case fe:return a=qa(19,c,b,e),a.elementType=fe,a.lanes=
f,a;case Ti:return Cd(c,e,f,b);default:if("object"===typeof a&&null!==a)switch(a.$$typeof){case dg:g=10;break a;case cg:g=9;break a;case ge:g=11;break a;case he:g=14;break a;case Ra:g=16;d=null;break a}throw Error(n(130,null==a?a:typeof a,""));}b=qa(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function rb(a,b,c,d){a=qa(7,a,d,b);a.lanes=c;return a}function Cd(a,b,c,d){a=qa(22,a,d,b);a.elementType=Ti;a.lanes=c;a.stateNode={};return a}function ef(a,b,c){a=qa(6,a,null,b);a.lanes=c;return a}function ff(a,
b,c){b=qa(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}function Sk(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=null;this.callbackPriority=0;this.eventTimes=ue(0);this.expirationTimes=ue(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=
this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=ue(0);this.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=null}function Rf(a,b,c,d,e,f,g,h,k,l){a=new Sk(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=qa(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};Xe(f);return a}function Tk(a,b,c){var d=3<arguments.length&&void 0!==arguments[3]?
arguments[3]:null;return{$$typeof:zb,key:null==d?null:""+d,children:a,containerInfo:b,implementation:c}}function Ui(a){if(!a)return ab;a=a._reactInternals;a:{if(mb(a)!==a||1!==a.tag)throw Error(n(170));var b=a;do{switch(b.tag){case 3:b=b.stateNode.context;break a;case 1:if(da(b.type)){b=b.stateNode.__reactInternalMemoizedMergedChildContext;break a}}b=b.return}while(null!==b);throw Error(n(171));}if(1===a.tag){var c=a.type;if(da(c))return qh(a,c,b)}return b}function Vi(a,b,c,d,e,f,g,h,k,l){a=Rf(c,
d,!0,a,e,f,g,h,k);a.context=Ui(null);c=a.current;d=Y();e=fb(c);f=La(d,e);f.callback=void 0!==b&&null!==b?b:null;cb(c,f);a.current.lanes=e;ec(a,e,d);ha(a,d);return a}function Qd(a,b,c,d){var e=b.current,f=Y(),g=fb(e);c=Ui(c);null===b.context?b.context=c:b.pendingContext=c;b=La(f,g);b.payload={element:a};d=void 0===d?null:d;null!==d&&(b.callback=d);cb(e,b);a=sa(e,g,f);null!==a&&md(a,e,g);return g}function Rd(a){a=a.current;if(!a.child)return null;switch(a.child.tag){case 5:return a.child.stateNode;
default:return a.child.stateNode}}function Wi(a,b){a=a.memoizedState;if(null!==a&&null!==a.dehydrated){var c=a.retryLane;a.retryLane=0!==c&&c<b?c:b}}function Sf(a,b){Wi(a,b);(a=a.alternate)&&Wi(a,b)}function Uk(a){a=xg(a);return null===a?null:a.stateNode}function Vk(a){return null}function Tf(a){this._internalRoot=a}function Sd(a){this._internalRoot=a}function Uf(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType)}function Td(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType&&
(8!==a.nodeType||" react-mount-point-unstable "!==a.nodeValue))}function Xi(){}function Wk(a,b,c,d,e){if(e){if("function"===typeof d){var f=d;d=function(){var a=Rd(g);f.call(a)}}var g=Vi(b,d,a,0,null,!1,!1,"",Xi);a._reactRootContainer=g;a[Ia]=g.current;oc(8===a.nodeType?a.parentNode:a);wb();return g}for(;e=a.lastChild;)a.removeChild(e);if("function"===typeof d){var h=d;d=function(){var a=Rd(k);h.call(a)}}var k=Rf(a,0,!1,null,null,!1,!1,"",Xi);a._reactRootContainer=k;a[Ia]=k.current;oc(8===a.nodeType?
a.parentNode:a);wb(function(){Qd(b,k,c,d)});return k}function Ud(a,b,c,d,e){var f=c._reactRootContainer;if(f){var g=f;if("function"===typeof e){var h=e;e=function(){var a=Rd(g);h.call(a)}}Qd(b,g,a,e)}else g=Wk(c,b,a,e,d);return Rd(g)}var Zf=new Set,Wb={},Ha=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement),Xd=Object.prototype.hasOwnProperty,bj=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,
ag={},$f={},O={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(a){O[a]=new V(a,0,!1,a,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(a){var b=a[0];O[b]=new V(b,1,!1,a[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(a){O[a]=new V(a,2,!1,a.toLowerCase(),null,
!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(a){O[a]=new V(a,2,!1,a,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(a){O[a]=new V(a,3,!1,a.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(a){O[a]=
new V(a,3,!0,a,null,!1,!1)});["capture","download"].forEach(function(a){O[a]=new V(a,4,!1,a,null,!1,!1)});["cols","rows","size","span"].forEach(function(a){O[a]=new V(a,6,!1,a,null,!1,!1)});["rowSpan","start"].forEach(function(a){O[a]=new V(a,5,!1,a.toLowerCase(),null,!1,!1)});var Vf=/[\-:]([a-z])/g,Wf=function(a){return a[1].toUpperCase()};"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(a){var b=
a.replace(Vf,Wf);O[b]=new V(b,1,!1,a,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(a){var b=a.replace(Vf,Wf);O[b]=new V(b,1,!1,a,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(a){var b=a.replace(Vf,Wf);O[b]=new V(b,1,!1,a,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(a){O[a]=new V(a,1,!1,a.toLowerCase(),null,!1,!1)});O.xlinkHref=new V("xlinkHref",
1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(a){O[a]=new V(a,1,!1,a.toLowerCase(),null,!0,!0)});var Qa=kb.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,td=Symbol.for("react.element"),zb=Symbol.for("react.portal"),yb=Symbol.for("react.fragment"),de=Symbol.for("react.strict_mode"),ce=Symbol.for("react.profiler"),dg=Symbol.for("react.provider"),cg=Symbol.for("react.context"),ge=Symbol.for("react.forward_ref"),ee=Symbol.for("react.suspense"),
fe=Symbol.for("react.suspense_list"),he=Symbol.for("react.memo"),Ra=Symbol.for("react.lazy");Symbol.for("react.scope");Symbol.for("react.debug_trace_mode");var Ti=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden");Symbol.for("react.cache");Symbol.for("react.tracing_marker");var bg=Symbol.iterator,D=Object.assign,Zd,ae=!1,Zb=Array.isArray,Vd,ii=function(a){return"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,
c,d,e)})}:a}(function(a,b){if("http://www.w3.org/2000/svg"!==a.namespaceURI||"innerHTML"in a)a.innerHTML=b;else{Vd=Vd||document.createElement("div");Vd.innerHTML="<svg>"+b.valueOf().toString()+"</svg>";for(b=Vd.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}}),Cc=function(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b},$b={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,
borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,
strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Xk=["Webkit","ms","Moz","O"];Object.keys($b).forEach(function(a){Xk.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);$b[b]=$b[a]})});var hj=D({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}),xe=null,qe=null,Bb=null,Cb=null,tg=function(a,b){return a(b)},ug=function(){},re=!1,Me=!1;if(Ha)try{var Ic={};Object.defineProperty(Ic,
"passive",{get:function(){Me=!0}});window.addEventListener("test",Ic,Ic);window.removeEventListener("test",Ic,Ic)}catch(a){Me=!1}var jj=function(a,b,c,d,e,f,g,h,k){var l=Array.prototype.slice.call(arguments,3);try{b.apply(c,l)}catch(t){this.onError(t)}},cc=!1,Pc=null,Qc=!1,se=null,kj={onError:function(a){cc=!0;Pc=a}},Aa=kb.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.Scheduler,Fg=Aa.unstable_scheduleCallback,Gg=Aa.unstable_NormalPriority,th=Fg,Ji=Aa.unstable_cancelCallback,Mk=Aa.unstable_shouldYield,
Pk=Aa.unstable_requestPaint,M=Aa.unstable_now,Cj=Aa.unstable_getCurrentPriorityLevel,Be=Aa.unstable_ImmediatePriority,Ig=Aa.unstable_UserBlockingPriority,Yc=Gg,Dj=Aa.unstable_LowPriority,Jg=Aa.unstable_IdlePriority,Rc=null,Ba=null,ta=Math.clz32?Math.clz32:oj,pj=Math.log,qj=Math.LN2,Tc=64,Pd=4194304,x=0,ye=!1,Vc=[],Ta=null,Ua=null,Va=null,fc=new Map,gc=new Map,Wa=[],Aj="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" "),
Db=Qa.ReactCurrentBatchConfig,Wc=!0,Xc=null,Xa=null,Ce=null,Zc=null,Ub={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(a){return a.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Fe=ja(Ub),Jc=D({},Ub,{view:0,detail:0}),Zj=ja(Jc),Xf,Yf,Kc,Wd=D({},Jc,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:De,button:0,buttons:0,relatedTarget:function(a){return void 0===a.relatedTarget?a.fromElement===a.srcElement?a.toElement:a.fromElement:
a.relatedTarget},movementX:function(a){if("movementX"in a)return a.movementX;a!==Kc&&(Kc&&"mousemove"===a.type?(Xf=a.screenX-Kc.screenX,Yf=a.screenY-Kc.screenY):Yf=Xf=0,Kc=a);return Xf},movementY:function(a){return"movementY"in a?a.movementY:Yf}}),eh=ja(Wd),Yk=D({},Wd,{dataTransfer:0}),Vj=ja(Yk),Zk=D({},Jc,{relatedTarget:0}),Oe=ja(Zk),$k=D({},Ub,{animationName:0,elapsedTime:0,pseudoElement:0}),Xj=ja($k),al=D({},Ub,{clipboardData:function(a){return"clipboardData"in a?a.clipboardData:window.clipboardData}}),
bk=ja(al),bl=D({},Ub,{data:0}),mh=ja(bl),ek=mh,cl={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},dl={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",
112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Fj={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"},el=D({},Jc,{key:function(a){if(a.key){var b=cl[a.key]||a.key;if("Unidentified"!==b)return b}return"keypress"===a.type?(a=$c(a),13===a?"Enter":String.fromCharCode(a)):"keydown"===a.type||"keyup"===a.type?dl[a.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,
metaKey:0,repeat:0,locale:0,getModifierState:De,charCode:function(a){return"keypress"===a.type?$c(a):0},keyCode:function(a){return"keydown"===a.type||"keyup"===a.type?a.keyCode:0},which:function(a){return"keypress"===a.type?$c(a):"keydown"===a.type||"keyup"===a.type?a.keyCode:0}}),Uj=ja(el),fl=D({},Wd,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),jh=ja(fl),gl=D({},Jc,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,
ctrlKey:0,shiftKey:0,getModifierState:De}),Wj=ja(gl),hl=D({},Ub,{propertyName:0,elapsedTime:0,pseudoElement:0}),Yj=ja(hl),il=D({},Wd,{deltaX:function(a){return"deltaX"in a?a.deltaX:"wheelDeltaX"in a?-a.wheelDeltaX:0},deltaY:function(a){return"deltaY"in a?a.deltaY:"wheelDeltaY"in a?-a.wheelDeltaY:"wheelDelta"in a?-a.wheelDelta:0},deltaZ:0,deltaMode:0}),ak=ja(il),Gj=[9,13,27,32],Ee=Ha&&"CompositionEvent"in window,Lc=null;Ha&&"documentMode"in document&&(Lc=document.documentMode);var dk=Ha&&"TextEvent"in
window&&!Lc,Qg=Ha&&(!Ee||Lc&&8<Lc&&11>=Lc),Pg=String.fromCharCode(32),Og=!1,Eb=!1,Jj={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0},kc=null,lc=null,lh=!1;Ha&&(lh=Kj("input")&&(!document.documentMode||9<document.documentMode));var ua="function"===typeof Object.is?Object.is:Rj,ck=Ha&&"documentMode"in document&&11>=document.documentMode,Gb=null,Ie=null,nc=null,He=!1,Hb={animationend:dd("Animation","AnimationEnd"),
animationiteration:dd("Animation","AnimationIteration"),animationstart:dd("Animation","AnimationStart"),transitionend:dd("Transition","TransitionEnd")},Je={},ah={};Ha&&(ah=document.createElement("div").style,"AnimationEvent"in window||(delete Hb.animationend.animation,delete Hb.animationiteration.animation,delete Hb.animationstart.animation),"TransitionEvent"in window||delete Hb.transitionend.transition);var fh=ed("animationend"),gh=ed("animationiteration"),hh=ed("animationstart"),ih=ed("transitionend"),
bh=new Map,Yi="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");
(function(){for(var a=0;a<Yi.length;a++){var b=Yi[a],c=b.toLowerCase();b=b[0].toUpperCase()+b.slice(1);Ya(c,"on"+b)}Ya(fh,"onAnimationEnd");Ya(gh,"onAnimationIteration");Ya(hh,"onAnimationStart");Ya("dblclick","onDoubleClick");Ya("focusin","onFocus");Ya("focusout","onBlur");Ya(ih,"onTransitionEnd")})();xb("onMouseEnter",["mouseout","mouseover"]);xb("onMouseLeave",["mouseout","mouseover"]);xb("onPointerEnter",["pointerout","pointerover"]);xb("onPointerLeave",["pointerout","pointerover"]);lb("onChange",
"change click focusin focusout input keydown keyup selectionchange".split(" "));lb("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));lb("onBeforeInput",["compositionend","keypress","textInput","paste"]);lb("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));lb("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));lb("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));
var Bc="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Tj=new Set("cancel close invalid load scroll toggle".split(" ").concat(Bc)),fd="_reactListening"+Math.random().toString(36).slice(2),fk=/\r\n?/g,gk=/\u0000|\uFFFD/g,Ff=null,Gf=null,Nf="function"===typeof setTimeout?setTimeout:void 0,Kk="function"===typeof clearTimeout?
clearTimeout:void 0,Zi="function"===typeof Promise?Promise:void 0,Gk="function"===typeof queueMicrotask?queueMicrotask:"undefined"!==typeof Zi?function(a){return Zi.resolve(null).then(a).catch(hk)}:Nf,Vb=Math.random().toString(36).slice(2),Ca="__reactFiber$"+Vb,qc="__reactProps$"+Vb,Ia="__reactContainer$"+Vb,Ke="__reactEvents$"+Vb,Ak="__reactListeners$"+Vb,Bk="__reactHandles$"+Vb,Re=[],Jb=-1,ab={},I=$a(ab),P=$a(!1),ob=ab,Ka=null,jd=!1,Se=!1,Fk=Qa.ReactCurrentBatchConfig,ld=$a(null),kd=null,Lb=null,
Ue=null,ma=null,db=!1,Ah=(new kb.Component).refs,od={isMounted:function(a){return(a=a._reactInternals)?mb(a)===a:!1},enqueueSetState:function(a,b,c){a=a._reactInternals;var d=Y(),e=fb(a),f=La(d,e);f.payload=b;void 0!==c&&null!==c&&(f.callback=c);cb(a,f);b=sa(a,e,d);null!==b&&md(b,a,e)},enqueueReplaceState:function(a,b,c){a=a._reactInternals;var d=Y(),e=fb(a),f=La(d,e);f.tag=1;f.payload=b;void 0!==c&&null!==c&&(f.callback=c);cb(a,f);b=sa(a,e,d);null!==b&&md(b,a,e)},enqueueForceUpdate:function(a,b){a=
a._reactInternals;var c=Y(),d=fb(a),e=La(c,d);e.tag=2;void 0!==b&&null!==b&&(e.callback=b);cb(a,e);b=sa(a,d,c);null!==b&&md(b,a,d)}},Nb=[],Ob=0,qd=null,pd=0,oa=[],pa=0,qb=null,Ma=1,Na="",ka=null,fa=null,C=!1,xa=null,Rb=Gh(!0),ji=Gh(!1),tc={},Da=$a(tc),vc=$a(tc),uc=$a(tc),E=$a(0),kf=[],vd=Qa.ReactCurrentDispatcher,sf=Qa.ReactCurrentBatchConfig,tb=0,z=null,J=null,L=null,xd=!1,wc=!1,xc=0,jl=0,wd={readContext:la,useCallback:S,useContext:S,useEffect:S,useImperativeHandle:S,useInsertionEffect:S,useLayoutEffect:S,
useMemo:S,useReducer:S,useRef:S,useState:S,useDebugValue:S,useDeferredValue:S,useTransition:S,useMutableSource:S,useSyncExternalStore:S,useId:S,unstable_isNewReconciler:!1},jk={readContext:la,useCallback:function(a,b){Ea().memoizedState=[a,void 0===b?null:b];return a},useContext:la,useEffect:Qh,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return yd(4194308,4,Th.bind(null,b,a),c)},useLayoutEffect:function(a,b){return yd(4194308,4,a,b)},useInsertionEffect:function(a,
b){return yd(4,2,a,b)},useMemo:function(a,b){var c=Ea();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Ea();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=ok.bind(null,z,a);return[d.memoizedState,a]},useRef:function(a){var b=Ea();a={current:a};return b.memoizedState=a},useState:Oh,useDebugValue:rf,useDeferredValue:function(a){return Ea().memoizedState=
a},useTransition:function(){var a=Oh(!1),b=a[0];a=nk.bind(null,a[1]);Ea().memoizedState=a;return[b,a]},useMutableSource:function(a,b,c){},useSyncExternalStore:function(a,b,c){var d=z,e=Ea();if(C){if(void 0===c)throw Error(n(407));c=c()}else{c=b();if(null===G)throw Error(n(349));0!==(tb&30)||Mh(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;Qh(Kh.bind(null,d,f,a),[a]);d.flags|=2048;zc(9,Lh.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=Ea(),b=G.identifierPrefix;
if(C){var c=Na;var d=Ma;c=(d&~(1<<32-ta(d)-1)).toString(32)+c;b=":"+b+"R"+c;c=xc++;0<c&&(b+="H"+c.toString(32));b+=":"}else c=jl++,b=":"+b+"r"+c.toString(32)+":";return a.memoizedState=b},unstable_isNewReconciler:!1},kk={readContext:la,useCallback:Vh,useContext:la,useEffect:qf,useImperativeHandle:Uh,useInsertionEffect:Rh,useLayoutEffect:Sh,useMemo:Wh,useReducer:of,useRef:Ph,useState:function(a){return of(yc)},useDebugValue:rf,useDeferredValue:function(a){var b=ra();return Xh(b,J.memoizedState,a)},
useTransition:function(){var a=of(yc)[0],b=ra().memoizedState;return[a,b]},useMutableSource:Ih,useSyncExternalStore:Jh,useId:Yh,unstable_isNewReconciler:!1},lk={readContext:la,useCallback:Vh,useContext:la,useEffect:qf,useImperativeHandle:Uh,useInsertionEffect:Rh,useLayoutEffect:Sh,useMemo:Wh,useReducer:pf,useRef:Ph,useState:function(a){return pf(yc)},useDebugValue:rf,useDeferredValue:function(a){var b=ra();return null===J?b.memoizedState=a:Xh(b,J.memoizedState,a)},useTransition:function(){var a=pf(yc)[0],
b=ra().memoizedState;return[a,b]},useMutableSource:Ih,useSyncExternalStore:Jh,useId:Yh,unstable_isNewReconciler:!1},pk="function"===typeof WeakMap?WeakMap:Map;var tk=function(a,b,c,d){for(c=b.child;null!==c;){if(5===c.tag||6===c.tag)a.appendChild(c.stateNode);else if(4!==c.tag&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return}c.sibling.return=c.return;c=c.sibling}};var hi=function(a,b){};var sk=function(a,
b,c,d,e){var f=a.memoizedProps;if(f!==d){a=b.stateNode;sb(Da.current);e=null;switch(c){case "input":f=ie(a,f);d=ie(a,d);e=[];break;case "select":f=D({},f,{value:void 0});d=D({},d,{value:void 0});e=[];break;case "textarea":f=le(a,f);d=le(a,d);e=[];break;default:"function"!==typeof f.onClick&&"function"===typeof d.onClick&&(a.onclick=hd)}ne(c,d);var g;c=null;for(l in f)if(!d.hasOwnProperty(l)&&f.hasOwnProperty(l)&&null!=f[l])if("style"===l){var h=f[l];for(g in h)h.hasOwnProperty(g)&&(c||(c={}),c[g]=
"")}else"dangerouslySetInnerHTML"!==l&&"children"!==l&&"suppressContentEditableWarning"!==l&&"suppressHydrationWarning"!==l&&"autoFocus"!==l&&(Wb.hasOwnProperty(l)?e||(e=[]):(e=e||[]).push(l,null));for(l in d){var k=d[l];h=null!=f?f[l]:void 0;if(d.hasOwnProperty(l)&&k!==h&&(null!=k||null!=h))if("style"===l)if(h){for(g in h)!h.hasOwnProperty(g)||k&&k.hasOwnProperty(g)||(c||(c={}),c[g]="");for(g in k)k.hasOwnProperty(g)&&h[g]!==k[g]&&(c||(c={}),c[g]=k[g])}else c||(e||(e=[]),e.push(l,c)),c=k;else"dangerouslySetInnerHTML"===
l?(k=k?k.__html:void 0,h=h?h.__html:void 0,null!=k&&h!==k&&(e=e||[]).push(l,k)):"children"===l?"string"!==typeof k&&"number"!==typeof k||(e=e||[]).push(l,""+k):"suppressContentEditableWarning"!==l&&"suppressHydrationWarning"!==l&&(Wb.hasOwnProperty(l)?(null!=k&&"onScroll"===l&&B("scroll",a),e||h===k||(e=[])):(e=e||[]).push(l,k))}c&&(e=e||[]).push("style",c);var l=e;if(b.updateQueue=l)b.flags|=4}};var uk=function(a,b,c,d){c!==d&&(b.flags|=4)};var vk=Qa.ReactCurrentOwner,ea=!1,Dd={dehydrated:null,treeContext:null,
retryLane:0},Gd=!1,U=!1,Ck="function"===typeof WeakSet?WeakSet:Set,m=null,yi=!1,Q=null,ya=!1,Jk=Math.ceil,Md=Qa.ReactCurrentDispatcher,Qf=Qa.ReactCurrentOwner,ba=Qa.ReactCurrentBatchConfig,p=0,G=null,H=null,R=0,Z=0,Fa=$a(0),K=0,Gc=null,na=0,Kd=0,Of=0,Hc=null,ia=null,Kf=0,yf=Infinity,Pa=null,Ad=!1,vf=null,gb=null,Nd=!1,jb=null,Od=0,Fc=0,Lf=null,Hd=-1,Id=0;var Nk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||P.current)ea=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return ea=!1,
xk(a,b,c);ea=0!==(a.flags&131072)?!0:!1}else ea=!1,C&&0!==(b.flags&1048576)&&Bh(b,pd,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);a=b.pendingProps;var e=Kb(b,I.current);Mb(b,c);e=mf(null,b,d,a,e,c);var f=nf();b.flags|=1;"object"===typeof e&&null!==e&&"function"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=null,da(d)?(f=!0,id(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,
Xe(b),e.updater=od,b.stateNode=e,e._reactInternals=b,Ze(b,d,a,c),b=Bf(null,b,d,!0,f,c)):(b.tag=0,C&&f&&$e(b),aa(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=Rk(d);a=wa(d,a);switch(e){case 0:b=Af(null,b,d,a,c);break a;case 1:b=pi(null,b,d,a,c);break a;case 11:b=ki(null,b,d,a,c);break a;case 14:b=li(null,b,d,wa(d.type,a),c);break a}throw Error(n(306,d,""));}return b;case 0:return d=
b.type,e=b.pendingProps,e=b.elementType===d?e:wa(d,e),Af(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:wa(d,e),pi(a,b,d,e,c);case 3:a:{qi(b);if(null===a)throw Error(n(387));d=b.pendingProps;f=b.memoizedState;e=f.element;uh(a,b);nd(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=f,b.memoizedState=f,b.flags&
256){e=Error(n(423));b=ri(a,b,d,c,e);break a}else if(d!==e){e=Error(n(424));b=ri(a,b,d,c,e);break a}else for(fa=Ja(b.stateNode.containerInfo.firstChild),ka=b,C=!0,xa=null,c=ji(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Pb();if(d===e){b=Oa(a,b,c);break a}aa(a,b,d,c)}b=b.child}return b;case 5:return Hh(b),null===a&&cf(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Pe(d,e)?g=null:null!==f&&Pe(d,f)&&(b.flags|=32),oi(a,b),aa(a,b,g,c),b.child;case 6:return null===
a&&cf(b),null;case 13:return ti(a,b,c);case 4:return gf(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Rb(b,null,d,c):aa(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:wa(d,e),ki(a,b,d,e,c);case 7:return aa(a,b,b.pendingProps,c),b.child;case 8:return aa(a,b,b.pendingProps.children,c),b.child;case 12:return aa(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;g=e.value;y(ld,d._currentValue);d._currentValue=
g;if(null!==f)if(ua(f.value,g)){if(f.children===e.children&&!P.current){b=Oa(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=La(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);We(f.return,c,b);h.lanes|=c;break}k=k.next}}else if(10===
f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(n(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);We(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}aa(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,Mb(b,c),e=la(e),d=d(e),b.flags|=1,aa(a,b,d,c),b.child;case 14:return d=b.type,e=wa(d,b.pendingProps),
e=wa(d.type,e),li(a,b,d,e,c);case 15:return mi(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:wa(d,e),null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2),b.tag=1,da(d)?(a=!0,id(b)):a=!1,Mb(b,c),yh(b,d,e),Ze(b,d,e,c),Bf(null,b,d,!0,a,c);case 19:return xi(a,b,c);case 22:return ni(a,b,c)}throw Error(n(156,b.tag));};var qa=function(a,b,c,d){return new Qk(a,b,c,d)},$i="function"===typeof reportError?reportError:function(a){console.error(a)};Sd.prototype.render=
Tf.prototype.render=function(a){var b=this._internalRoot;if(null===b)throw Error(n(409));Qd(a,b,null,null)};Sd.prototype.unmount=Tf.prototype.unmount=function(){var a=this._internalRoot;if(null!==a){this._internalRoot=null;var b=a.containerInfo;wb(function(){Qd(null,a,null,null)});b[Ia]=null}};Sd.prototype.unstable_scheduleHydration=function(a){if(a){var b=kl();a={blockedOn:null,target:a,priority:b};for(var c=0;c<Wa.length&&0!==b&&b<Wa[c].priority;c++);Wa.splice(c,0,a);0===c&&Dg(a)}};var Bj=function(a){switch(a.tag){case 3:var b=
a.stateNode;if(b.current.memoizedState.isDehydrated){var c=dc(b.pendingLanes);0!==c&&(ve(b,c|1),ha(b,M()),0===(p&6)&&(Ec(),bb()))}break;case 13:var d=Y();wb(function(){return sa(a,1,d)});Sf(a,1)}};var Cg=function(a){if(13===a.tag){var b=Y();sa(a,134217728,b);Sf(a,134217728)}};var wj=function(a){if(13===a.tag){var b=Y(),c=fb(a);sa(a,c,b);Sf(a,c)}};var kl=function(){return x};var vj=function(a,b){var c=x;try{return x=a,b()}finally{x=c}};qe=function(a,b,c){switch(b){case "input":je(a,c);b=c.name;if("radio"===
c.type&&null!=b){for(c=a;c.parentNode;)c=c.parentNode;c=c.querySelectorAll("input[name="+JSON.stringify(""+b)+'][type="radio"]');for(b=0;b<c.length;b++){var d=c[b];if(d!==a&&d.form===a.form){var e=Oc(d);if(!e)throw Error(n(90));fg(d);je(d,e)}}}break;case "textarea":kg(a,c);break;case "select":b=c.value,null!=b&&Ab(a,!!c.multiple,b,!1)}};(function(a,b,c){tg=a;ug=c})(Pf,function(a,b,c,d,e){var f=x,g=ba.transition;try{return ba.transition=null,x=1,a(b,c,d,e)}finally{x=f,ba.transition=g,0===p&&Ec()}},
wb);var ll={usingClientEntryPoint:!1,Events:[ac,Fb,Oc,qg,rg,Pf]};(function(a){a={bundleType:a.bundleType,version:a.version,rendererPackageName:a.rendererPackageName,rendererConfig:a.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Qa.ReactCurrentDispatcher,findHostInstanceByFiber:Uk,
findFiberByHostInstance:a.findFiberByHostInstance||Vk,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.1.0"};if("undefined"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)a=!1;else{var b=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(b.isDisabled||!b.supportsFiber)a=!0;else{try{Rc=b.inject(a),Ba=b}catch(c){}a=b.checkDCE?!0:!1}}return a})({findFiberByHostInstance:nb,bundleType:0,version:"18.1.0-next-22edb9f77-20220426",
rendererPackageName:"react-dom"});N.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ll;N.createPortal=function(a,b){var c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Uf(b))throw Error(n(200));return Tk(a,b,null,c)};N.createRoot=function(a,b){if(!Uf(a))throw Error(n(299));var c=!1,d="",e=$i;null!==b&&void 0!==b&&(!0===b.unstable_strictMode&&(c=!0),void 0!==b.identifierPrefix&&(d=b.identifierPrefix),void 0!==b.onRecoverableError&&(e=b.onRecoverableError));b=Rf(a,1,!1,null,null,
c,!1,d,e);a[Ia]=b.current;oc(8===a.nodeType?a.parentNode:a);return new Tf(b)};N.findDOMNode=function(a){if(null==a)return null;if(1===a.nodeType)return a;var b=a._reactInternals;if(void 0===b){if("function"===typeof a.render)throw Error(n(188));a=Object.keys(a).join(",");throw Error(n(268,a));}a=xg(b);a=null===a?null:a.stateNode;return a};N.flushSync=function(a){return wb(a)};N.hydrate=function(a,b,c){if(!Td(b))throw Error(n(200));return Ud(null,a,b,!0,c)};N.hydrateRoot=function(a,b,c){if(!Uf(a))throw Error(n(405));
var d=null!=c&&c.hydratedSources||null,e=!1,f="",g=$i;null!==c&&void 0!==c&&(!0===c.unstable_strictMode&&(e=!0),void 0!==c.identifierPrefix&&(f=c.identifierPrefix),void 0!==c.onRecoverableError&&(g=c.onRecoverableError));b=Vi(b,null,a,1,null!=c?c:null,e,!1,f,g);a[Ia]=b.current;oc(a);if(d)for(a=0;a<d.length;a++)c=d[a],e=c._getVersion,e=e(c._source),null==b.mutableSourceEagerHydrationData?b.mutableSourceEagerHydrationData=[c,e]:b.mutableSourceEagerHydrationData.push(c,e);return new Sd(b)};N.render=
function(a,b,c){if(!Td(b))throw Error(n(200));return Ud(null,a,b,!1,c)};N.unmountComponentAtNode=function(a){if(!Td(a))throw Error(n(40));return a._reactRootContainer?(wb(function(){Ud(null,null,a,!1,function(){a._reactRootContainer=null;a[Ia]=null})}),!0):!1};N.unstable_batchedUpdates=Pf;N.unstable_renderSubtreeIntoContainer=function(a,b,c,d){if(!Td(c))throw Error(n(200));if(null==a||void 0===a._reactInternals)throw Error(n(38));return Ud(a,b,c,!1,d)};N.version="18.1.0-next-22edb9f77-20220426"});
})();


/*! pako 2.0.3 https://github.com/nodeca/pako @license (MIT AND Zlib) */
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pako={})}(this,(function(t){"use strict";function e(t){let e=t.length;for(;--e>=0;)t[e]=0}const a=256,i=286,n=30,s=15,r=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),l=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),o=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),h=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),d=new Array(576);e(d);const _=new Array(60);e(_);const f=new Array(512);e(f);const c=new Array(256);e(c);const u=new Array(29);e(u);const w=new Array(n);function b(t,e,a,i,n){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=i,this.max_length=n,this.has_stree=t&&t.length}let g,p,m;function k(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}e(w);const v=t=>t<256?f[t]:f[256+(t>>>7)],y=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},x=(t,e,a)=>{t.bi_valid>16-a?(t.bi_buf|=e<<t.bi_valid&65535,y(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=a-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=a)},z=(t,e,a)=>{x(t,a[2*e],a[2*e+1])},A=(t,e)=>{let a=0;do{a|=1&t,t>>>=1,a<<=1}while(--e>0);return a>>>1},E=(t,e,a)=>{const i=new Array(16);let n,r,l=0;for(n=1;n<=s;n++)i[n]=l=l+a[n-1]<<1;for(r=0;r<=e;r++){let e=t[2*r+1];0!==e&&(t[2*r]=A(i[e]++,e))}},R=t=>{let e;for(e=0;e<i;e++)t.dyn_ltree[2*e]=0;for(e=0;e<n;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0},Z=t=>{t.bi_valid>8?y(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},U=(t,e,a,i)=>{const n=2*e,s=2*a;return t[n]<t[s]||t[n]===t[s]&&i[e]<=i[a]},S=(t,e,a)=>{const i=t.heap[a];let n=a<<1;for(;n<=t.heap_len&&(n<t.heap_len&&U(e,t.heap[n+1],t.heap[n],t.depth)&&n++,!U(e,i,t.heap[n],t.depth));)t.heap[a]=t.heap[n],a=n,n<<=1;t.heap[a]=i},D=(t,e,i)=>{let n,s,o,h,d=0;if(0!==t.last_lit)do{n=t.pending_buf[t.d_buf+2*d]<<8|t.pending_buf[t.d_buf+2*d+1],s=t.pending_buf[t.l_buf+d],d++,0===n?z(t,s,e):(o=c[s],z(t,o+a+1,e),h=r[o],0!==h&&(s-=u[o],x(t,s,h)),n--,o=v(n),z(t,o,i),h=l[o],0!==h&&(n-=w[o],x(t,n,h)))}while(d<t.last_lit);z(t,256,e)},O=(t,e)=>{const a=e.dyn_tree,i=e.stat_desc.static_tree,n=e.stat_desc.has_stree,r=e.stat_desc.elems;let l,o,h,d=-1;for(t.heap_len=0,t.heap_max=573,l=0;l<r;l++)0!==a[2*l]?(t.heap[++t.heap_len]=d=l,t.depth[l]=0):a[2*l+1]=0;for(;t.heap_len<2;)h=t.heap[++t.heap_len]=d<2?++d:0,a[2*h]=1,t.depth[h]=0,t.opt_len--,n&&(t.static_len-=i[2*h+1]);for(e.max_code=d,l=t.heap_len>>1;l>=1;l--)S(t,a,l);h=r;do{l=t.heap[1],t.heap[1]=t.heap[t.heap_len--],S(t,a,1),o=t.heap[1],t.heap[--t.heap_max]=l,t.heap[--t.heap_max]=o,a[2*h]=a[2*l]+a[2*o],t.depth[h]=(t.depth[l]>=t.depth[o]?t.depth[l]:t.depth[o])+1,a[2*l+1]=a[2*o+1]=h,t.heap[1]=h++,S(t,a,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const a=e.dyn_tree,i=e.max_code,n=e.stat_desc.static_tree,r=e.stat_desc.has_stree,l=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,h=e.stat_desc.max_length;let d,_,f,c,u,w,b=0;for(c=0;c<=s;c++)t.bl_count[c]=0;for(a[2*t.heap[t.heap_max]+1]=0,d=t.heap_max+1;d<573;d++)_=t.heap[d],c=a[2*a[2*_+1]+1]+1,c>h&&(c=h,b++),a[2*_+1]=c,_>i||(t.bl_count[c]++,u=0,_>=o&&(u=l[_-o]),w=a[2*_],t.opt_len+=w*(c+u),r&&(t.static_len+=w*(n[2*_+1]+u)));if(0!==b){do{for(c=h-1;0===t.bl_count[c];)c--;t.bl_count[c]--,t.bl_count[c+1]+=2,t.bl_count[h]--,b-=2}while(b>0);for(c=h;0!==c;c--)for(_=t.bl_count[c];0!==_;)f=t.heap[--d],f>i||(a[2*f+1]!==c&&(t.opt_len+=(c-a[2*f+1])*a[2*f],a[2*f+1]=c),_--)}})(t,e),E(a,d,t.bl_count)},T=(t,e,a)=>{let i,n,s=-1,r=e[1],l=0,o=7,h=4;for(0===r&&(o=138,h=3),e[2*(a+1)+1]=65535,i=0;i<=a;i++)n=r,r=e[2*(i+1)+1],++l<o&&n===r||(l<h?t.bl_tree[2*n]+=l:0!==n?(n!==s&&t.bl_tree[2*n]++,t.bl_tree[32]++):l<=10?t.bl_tree[34]++:t.bl_tree[36]++,l=0,s=n,0===r?(o=138,h=3):n===r?(o=6,h=3):(o=7,h=4))},I=(t,e,a)=>{let i,n,s=-1,r=e[1],l=0,o=7,h=4;for(0===r&&(o=138,h=3),i=0;i<=a;i++)if(n=r,r=e[2*(i+1)+1],!(++l<o&&n===r)){if(l<h)do{z(t,n,t.bl_tree)}while(0!=--l);else 0!==n?(n!==s&&(z(t,n,t.bl_tree),l--),z(t,16,t.bl_tree),x(t,l-3,2)):l<=10?(z(t,17,t.bl_tree),x(t,l-3,3)):(z(t,18,t.bl_tree),x(t,l-11,7));l=0,s=n,0===r?(o=138,h=3):n===r?(o=6,h=3):(o=7,h=4)}};let F=!1;const L=(t,e,a,i)=>{x(t,0+(i?1:0),3),((t,e,a,i)=>{Z(t),i&&(y(t,a),y(t,~a)),t.pending_buf.set(t.window.subarray(e,e+a),t.pending),t.pending+=a})(t,e,a,!0)};var N={_tr_init:t=>{F||((()=>{let t,e,a,h,k;const v=new Array(16);for(a=0,h=0;h<28;h++)for(u[h]=a,t=0;t<1<<r[h];t++)c[a++]=h;for(c[a-1]=h,k=0,h=0;h<16;h++)for(w[h]=k,t=0;t<1<<l[h];t++)f[k++]=h;for(k>>=7;h<n;h++)for(w[h]=k<<7,t=0;t<1<<l[h]-7;t++)f[256+k++]=h;for(e=0;e<=s;e++)v[e]=0;for(t=0;t<=143;)d[2*t+1]=8,t++,v[8]++;for(;t<=255;)d[2*t+1]=9,t++,v[9]++;for(;t<=279;)d[2*t+1]=7,t++,v[7]++;for(;t<=287;)d[2*t+1]=8,t++,v[8]++;for(E(d,287,v),t=0;t<n;t++)_[2*t+1]=5,_[2*t]=A(t,5);g=new b(d,r,257,i,s),p=new b(_,l,0,n,s),m=new b(new Array(0),o,0,19,7)})(),F=!0),t.l_desc=new k(t.dyn_ltree,g),t.d_desc=new k(t.dyn_dtree,p),t.bl_desc=new k(t.bl_tree,m),t.bi_buf=0,t.bi_valid=0,R(t)},_tr_stored_block:L,_tr_flush_block:(t,e,i,n)=>{let s,r,l=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,i=4093624447;for(e=0;e<=31;e++,i>>>=1)if(1&i&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<a;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),O(t,t.l_desc),O(t,t.d_desc),l=(t=>{let e;for(T(t,t.dyn_ltree,t.l_desc.max_code),T(t,t.dyn_dtree,t.d_desc.max_code),O(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*h[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),s=t.opt_len+3+7>>>3,r=t.static_len+3+7>>>3,r<=s&&(s=r)):s=r=i+5,i+4<=s&&-1!==e?L(t,e,i,n):4===t.strategy||r===s?(x(t,2+(n?1:0),3),D(t,d,_)):(x(t,4+(n?1:0),3),((t,e,a,i)=>{let n;for(x(t,e-257,5),x(t,a-1,5),x(t,i-4,4),n=0;n<i;n++)x(t,t.bl_tree[2*h[n]+1],3);I(t,t.dyn_ltree,e-1),I(t,t.dyn_dtree,a-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,l+1),D(t,t.dyn_ltree,t.dyn_dtree)),R(t),n&&Z(t)},_tr_tally:(t,e,i)=>(t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&i,t.last_lit++,0===e?t.dyn_ltree[2*i]++:(t.matches++,e--,t.dyn_ltree[2*(c[i]+a+1)]++,t.dyn_dtree[2*v(e)]++),t.last_lit===t.lit_bufsize-1),_tr_align:t=>{x(t,2,3),z(t,256,d),(t=>{16===t.bi_valid?(y(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)}};var B=(t,e,a,i)=>{let n=65535&t|0,s=t>>>16&65535|0,r=0;for(;0!==a;){r=a>2e3?2e3:a,a-=r;do{n=n+e[i++]|0,s=s+n|0}while(--r);n%=65521,s%=65521}return n|s<<16|0};const C=new Uint32Array((()=>{let t,e=[];for(var a=0;a<256;a++){t=a;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e})());var M=(t,e,a,i)=>{const n=C,s=i+a;t^=-1;for(let a=i;a<s;a++)t=t>>>8^n[255&(t^e[a])];return-1^t},H={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},j={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:K,_tr_stored_block:P,_tr_flush_block:Y,_tr_tally:G,_tr_align:X}=N,{Z_NO_FLUSH:W,Z_PARTIAL_FLUSH:q,Z_FULL_FLUSH:J,Z_FINISH:Q,Z_BLOCK:V,Z_OK:$,Z_STREAM_END:tt,Z_STREAM_ERROR:et,Z_DATA_ERROR:at,Z_BUF_ERROR:it,Z_DEFAULT_COMPRESSION:nt,Z_FILTERED:st,Z_HUFFMAN_ONLY:rt,Z_RLE:lt,Z_FIXED:ot,Z_DEFAULT_STRATEGY:ht,Z_UNKNOWN:dt,Z_DEFLATED:_t}=j,ft=258,ct=262,ut=103,wt=113,bt=666,gt=(t,e)=>(t.msg=H[e],e),pt=t=>(t<<1)-(t>4?9:0),mt=t=>{let e=t.length;for(;--e>=0;)t[e]=0};let kt=(t,e,a)=>(e<<t.hash_shift^a)&t.hash_mask;const vt=t=>{const e=t.state;let a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+a),t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))},yt=(t,e)=>{Y(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,vt(t.strm)},xt=(t,e)=>{t.pending_buf[t.pending++]=e},zt=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},At=(t,e,a,i)=>{let n=t.avail_in;return n>i&&(n=i),0===n?0:(t.avail_in-=n,e.set(t.input.subarray(t.next_in,t.next_in+n),a),1===t.state.wrap?t.adler=B(t.adler,e,n,a):2===t.state.wrap&&(t.adler=M(t.adler,e,n,a)),t.next_in+=n,t.total_in+=n,n)},Et=(t,e)=>{let a,i,n=t.max_chain_length,s=t.strstart,r=t.prev_length,l=t.nice_match;const o=t.strstart>t.w_size-ct?t.strstart-(t.w_size-ct):0,h=t.window,d=t.w_mask,_=t.prev,f=t.strstart+ft;let c=h[s+r-1],u=h[s+r];t.prev_length>=t.good_match&&(n>>=2),l>t.lookahead&&(l=t.lookahead);do{if(a=e,h[a+r]===u&&h[a+r-1]===c&&h[a]===h[s]&&h[++a]===h[s+1]){s+=2,a++;do{}while(h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&s<f);if(i=ft-(f-s),s=f-ft,i>r){if(t.match_start=e,r=i,i>=l)break;c=h[s+r-1],u=h[s+r]}}}while((e=_[e&d])>o&&0!=--n);return r<=t.lookahead?r:t.lookahead},Rt=t=>{const e=t.w_size;let a,i,n,s,r;do{if(s=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-ct)){t.window.set(t.window.subarray(e,e+e),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,i=t.hash_size,a=i;do{n=t.head[--a],t.head[a]=n>=e?n-e:0}while(--i);i=e,a=i;do{n=t.prev[--a],t.prev[a]=n>=e?n-e:0}while(--i);s+=e}if(0===t.strm.avail_in)break;if(i=At(t.strm,t.window,t.strstart+t.lookahead,s),t.lookahead+=i,t.lookahead+t.insert>=3)for(r=t.strstart-t.insert,t.ins_h=t.window[r],t.ins_h=kt(t,t.ins_h,t.window[r+1]);t.insert&&(t.ins_h=kt(t,t.ins_h,t.window[r+3-1]),t.prev[r&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=r,r++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<ct&&0!==t.strm.avail_in)},Zt=(t,e)=>{let a,i;for(;;){if(t.lookahead<ct){if(Rt(t),t.lookahead<ct&&e===W)return 1;if(0===t.lookahead)break}if(a=0,t.lookahead>=3&&(t.ins_h=kt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==a&&t.strstart-a<=t.w_size-ct&&(t.match_length=Et(t,a)),t.match_length>=3)if(i=G(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=kt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=kt(t,t.ins_h,t.window[t.strstart+1]);else i=G(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(yt(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===Q?(yt(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(yt(t,!1),0===t.strm.avail_out)?1:2},Ut=(t,e)=>{let a,i,n;for(;;){if(t.lookahead<ct){if(Rt(t),t.lookahead<ct&&e===W)return 1;if(0===t.lookahead)break}if(a=0,t.lookahead>=3&&(t.ins_h=kt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==a&&t.prev_length<t.max_lazy_match&&t.strstart-a<=t.w_size-ct&&(t.match_length=Et(t,a),t.match_length<=5&&(t.strategy===st||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){n=t.strstart+t.lookahead-3,i=G(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=n&&(t.ins_h=kt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,i&&(yt(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(i=G(t,0,t.window[t.strstart-1]),i&&yt(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=G(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===Q?(yt(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(yt(t,!1),0===t.strm.avail_out)?1:2};function St(t,e,a,i,n){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=i,this.func=n}const Dt=[new St(0,0,0,0,((t,e)=>{let a=65535;for(a>t.pending_buf_size-5&&(a=t.pending_buf_size-5);;){if(t.lookahead<=1){if(Rt(t),0===t.lookahead&&e===W)return 1;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;const i=t.block_start+a;if((0===t.strstart||t.strstart>=i)&&(t.lookahead=t.strstart-i,t.strstart=i,yt(t,!1),0===t.strm.avail_out))return 1;if(t.strstart-t.block_start>=t.w_size-ct&&(yt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Q?(yt(t,!0),0===t.strm.avail_out?3:4):(t.strstart>t.block_start&&(yt(t,!1),t.strm.avail_out),1)})),new St(4,4,8,4,Zt),new St(4,5,16,8,Zt),new St(4,6,32,32,Zt),new St(4,4,16,16,Ut),new St(8,16,32,32,Ut),new St(8,16,128,128,Ut),new St(8,32,128,256,Ut),new St(32,128,258,1024,Ut),new St(32,258,258,4096,Ut)];function Ot(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=_t,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),mt(this.dyn_ltree),mt(this.dyn_dtree),mt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),mt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),mt(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Tt=t=>{if(!t||!t.state)return gt(t,et);t.total_in=t.total_out=0,t.data_type=dt;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?42:wt,t.adler=2===e.wrap?0:1,e.last_flush=W,K(e),$},It=t=>{const e=Tt(t);var a;return e===$&&((a=t.state).window_size=2*a.w_size,mt(a.head),a.max_lazy_match=Dt[a.level].max_lazy,a.good_match=Dt[a.level].good_length,a.nice_match=Dt[a.level].nice_length,a.max_chain_length=Dt[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=2,a.match_available=0,a.ins_h=0),e},Ft=(t,e,a,i,n,s)=>{if(!t)return et;let r=1;if(e===nt&&(e=6),i<0?(r=0,i=-i):i>15&&(r=2,i-=16),n<1||n>9||a!==_t||i<8||i>15||e<0||e>9||s<0||s>ot)return gt(t,et);8===i&&(i=9);const l=new Ot;return t.state=l,l.strm=t,l.wrap=r,l.gzhead=null,l.w_bits=i,l.w_size=1<<l.w_bits,l.w_mask=l.w_size-1,l.hash_bits=n+7,l.hash_size=1<<l.hash_bits,l.hash_mask=l.hash_size-1,l.hash_shift=~~((l.hash_bits+3-1)/3),l.window=new Uint8Array(2*l.w_size),l.head=new Uint16Array(l.hash_size),l.prev=new Uint16Array(l.w_size),l.lit_bufsize=1<<n+6,l.pending_buf_size=4*l.lit_bufsize,l.pending_buf=new Uint8Array(l.pending_buf_size),l.d_buf=1*l.lit_bufsize,l.l_buf=3*l.lit_bufsize,l.level=e,l.strategy=s,l.method=a,It(t)};var Lt={deflateInit:(t,e)=>Ft(t,e,_t,15,8,ht),deflateInit2:Ft,deflateReset:It,deflateResetKeep:Tt,deflateSetHeader:(t,e)=>t&&t.state?2!==t.state.wrap?et:(t.state.gzhead=e,$):et,deflate:(t,e)=>{let a,i;if(!t||!t.state||e>V||e<0)return t?gt(t,et):et;const n=t.state;if(!t.output||!t.input&&0!==t.avail_in||n.status===bt&&e!==Q)return gt(t,0===t.avail_out?it:et);n.strm=t;const s=n.last_flush;if(n.last_flush=e,42===n.status)if(2===n.wrap)t.adler=0,xt(n,31),xt(n,139),xt(n,8),n.gzhead?(xt(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),xt(n,255&n.gzhead.time),xt(n,n.gzhead.time>>8&255),xt(n,n.gzhead.time>>16&255),xt(n,n.gzhead.time>>24&255),xt(n,9===n.level?2:n.strategy>=rt||n.level<2?4:0),xt(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(xt(n,255&n.gzhead.extra.length),xt(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(t.adler=M(t.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(xt(n,0),xt(n,0),xt(n,0),xt(n,0),xt(n,0),xt(n,9===n.level?2:n.strategy>=rt||n.level<2?4:0),xt(n,3),n.status=wt);else{let e=_t+(n.w_bits-8<<4)<<8,a=-1;a=n.strategy>=rt||n.level<2?0:n.level<6?1:6===n.level?2:3,e|=a<<6,0!==n.strstart&&(e|=32),e+=31-e%31,n.status=wt,zt(n,e),0!==n.strstart&&(zt(n,t.adler>>>16),zt(n,65535&t.adler)),t.adler=1}if(69===n.status)if(n.gzhead.extra){for(a=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>a&&(t.adler=M(t.adler,n.pending_buf,n.pending-a,a)),vt(t),a=n.pending,n.pending!==n.pending_buf_size));)xt(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>a&&(t.adler=M(t.adler,n.pending_buf,n.pending-a,a)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){a=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>a&&(t.adler=M(t.adler,n.pending_buf,n.pending-a,a)),vt(t),a=n.pending,n.pending===n.pending_buf_size)){i=1;break}i=n.gzindex<n.gzhead.name.length?255&n.gzhead.name.charCodeAt(n.gzindex++):0,xt(n,i)}while(0!==i);n.gzhead.hcrc&&n.pending>a&&(t.adler=M(t.adler,n.pending_buf,n.pending-a,a)),0===i&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){a=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>a&&(t.adler=M(t.adler,n.pending_buf,n.pending-a,a)),vt(t),a=n.pending,n.pending===n.pending_buf_size)){i=1;break}i=n.gzindex<n.gzhead.comment.length?255&n.gzhead.comment.charCodeAt(n.gzindex++):0,xt(n,i)}while(0!==i);n.gzhead.hcrc&&n.pending>a&&(t.adler=M(t.adler,n.pending_buf,n.pending-a,a)),0===i&&(n.status=ut)}else n.status=ut;if(n.status===ut&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&vt(t),n.pending+2<=n.pending_buf_size&&(xt(n,255&t.adler),xt(n,t.adler>>8&255),t.adler=0,n.status=wt)):n.status=wt),0!==n.pending){if(vt(t),0===t.avail_out)return n.last_flush=-1,$}else if(0===t.avail_in&&pt(e)<=pt(s)&&e!==Q)return gt(t,it);if(n.status===bt&&0!==t.avail_in)return gt(t,it);if(0!==t.avail_in||0!==n.lookahead||e!==W&&n.status!==bt){let a=n.strategy===rt?((t,e)=>{let a;for(;;){if(0===t.lookahead&&(Rt(t),0===t.lookahead)){if(e===W)return 1;break}if(t.match_length=0,a=G(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(yt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Q?(yt(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(yt(t,!1),0===t.strm.avail_out)?1:2})(n,e):n.strategy===lt?((t,e)=>{let a,i,n,s;const r=t.window;for(;;){if(t.lookahead<=ft){if(Rt(t),t.lookahead<=ft&&e===W)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(n=t.strstart-1,i=r[n],i===r[++n]&&i===r[++n]&&i===r[++n])){s=t.strstart+ft;do{}while(i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&n<s);t.match_length=ft-(s-n),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(a=G(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=G(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(yt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Q?(yt(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(yt(t,!1),0===t.strm.avail_out)?1:2})(n,e):Dt[n.level].func(n,e);if(3!==a&&4!==a||(n.status=bt),1===a||3===a)return 0===t.avail_out&&(n.last_flush=-1),$;if(2===a&&(e===q?X(n):e!==V&&(P(n,0,0,!1),e===J&&(mt(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),vt(t),0===t.avail_out))return n.last_flush=-1,$}return e!==Q?$:n.wrap<=0?tt:(2===n.wrap?(xt(n,255&t.adler),xt(n,t.adler>>8&255),xt(n,t.adler>>16&255),xt(n,t.adler>>24&255),xt(n,255&t.total_in),xt(n,t.total_in>>8&255),xt(n,t.total_in>>16&255),xt(n,t.total_in>>24&255)):(zt(n,t.adler>>>16),zt(n,65535&t.adler)),vt(t),n.wrap>0&&(n.wrap=-n.wrap),0!==n.pending?$:tt)},deflateEnd:t=>{if(!t||!t.state)return et;const e=t.state.status;return 42!==e&&69!==e&&73!==e&&91!==e&&e!==ut&&e!==wt&&e!==bt?gt(t,et):(t.state=null,e===wt?gt(t,at):$)},deflateSetDictionary:(t,e)=>{let a=e.length;if(!t||!t.state)return et;const i=t.state,n=i.wrap;if(2===n||1===n&&42!==i.status||i.lookahead)return et;if(1===n&&(t.adler=B(t.adler,e,a,0)),i.wrap=0,a>=i.w_size){0===n&&(mt(i.head),i.strstart=0,i.block_start=0,i.insert=0);let t=new Uint8Array(i.w_size);t.set(e.subarray(a-i.w_size,a),0),e=t,a=i.w_size}const s=t.avail_in,r=t.next_in,l=t.input;for(t.avail_in=a,t.next_in=0,t.input=e,Rt(i);i.lookahead>=3;){let t=i.strstart,e=i.lookahead-2;do{i.ins_h=kt(i,i.ins_h,i.window[t+3-1]),i.prev[t&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=t,t++}while(--e);i.strstart=t,i.lookahead=2,Rt(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,t.next_in=r,t.input=l,t.avail_in=s,i.wrap=n,$},deflateInfo:"pako deflate (from Nodeca project)"};const Nt=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var Bt=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(const e in a)Nt(a,e)&&(t[e]=a[e])}}return t},Ct=t=>{let e=0;for(let a=0,i=t.length;a<i;a++)e+=t[a].length;const a=new Uint8Array(e);for(let e=0,i=0,n=t.length;e<n;e++){let n=t[e];a.set(n,i),i+=n.length}return a};let Mt=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){Mt=!1}const Ht=new Uint8Array(256);for(let t=0;t<256;t++)Ht[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Ht[254]=Ht[254]=1;var jt=t=>{let e,a,i,n,s,r=t.length,l=0;for(n=0;n<r;n++)a=t.charCodeAt(n),55296==(64512&a)&&n+1<r&&(i=t.charCodeAt(n+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),n++)),l+=a<128?1:a<2048?2:a<65536?3:4;for(e=new Uint8Array(l),s=0,n=0;s<l;n++)a=t.charCodeAt(n),55296==(64512&a)&&n+1<r&&(i=t.charCodeAt(n+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),n++)),a<128?e[s++]=a:a<2048?(e[s++]=192|a>>>6,e[s++]=128|63&a):a<65536?(e[s++]=224|a>>>12,e[s++]=128|a>>>6&63,e[s++]=128|63&a):(e[s++]=240|a>>>18,e[s++]=128|a>>>12&63,e[s++]=128|a>>>6&63,e[s++]=128|63&a);return e},Kt=(t,e)=>{let a,i;const n=e||t.length,s=new Array(2*n);for(i=0,a=0;a<n;){let e=t[a++];if(e<128){s[i++]=e;continue}let r=Ht[e];if(r>4)s[i++]=65533,a+=r-1;else{for(e&=2===r?31:3===r?15:7;r>1&&a<n;)e=e<<6|63&t[a++],r--;r>1?s[i++]=65533:e<65536?s[i++]=e:(e-=65536,s[i++]=55296|e>>10&1023,s[i++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&Mt)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let a="";for(let i=0;i<e;i++)a+=String.fromCharCode(t[i]);return a})(s,i)},Pt=(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let a=e-1;for(;a>=0&&128==(192&t[a]);)a--;return a<0||0===a?e:a+Ht[t[a]]>e?a:e};var Yt=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const Gt=Object.prototype.toString,{Z_NO_FLUSH:Xt,Z_SYNC_FLUSH:Wt,Z_FULL_FLUSH:qt,Z_FINISH:Jt,Z_OK:Qt,Z_STREAM_END:Vt,Z_DEFAULT_COMPRESSION:$t,Z_DEFAULT_STRATEGY:te,Z_DEFLATED:ee}=j;function ae(t){this.options=Bt({level:$t,method:ee,chunkSize:16384,windowBits:15,memLevel:8,strategy:te},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Yt,this.strm.avail_out=0;let a=Lt.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==Qt)throw new Error(H[a]);if(e.header&&Lt.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?jt(e.dictionary):"[object ArrayBuffer]"===Gt.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=Lt.deflateSetDictionary(this.strm,t),a!==Qt)throw new Error(H[a]);this._dict_set=!0}}function ie(t,e){const a=new ae(e);if(a.push(t,!0),a.err)throw a.msg||H[a.err];return a.result}ae.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize;let n,s;if(this.ended)return!1;for(s=e===~~e?e:!0===e?Jt:Xt,"string"==typeof t?a.input=jt(t):"[object ArrayBuffer]"===Gt.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;)if(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),(s===Wt||s===qt)&&a.avail_out<=6)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else{if(n=Lt.deflate(a,s),n===Vt)return a.next_out>0&&this.onData(a.output.subarray(0,a.next_out)),n=Lt.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===Qt;if(0!==a.avail_out){if(s>0&&a.next_out>0)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else if(0===a.avail_in)break}else this.onData(a.output)}return!0},ae.prototype.onData=function(t){this.chunks.push(t)},ae.prototype.onEnd=function(t){t===Qt&&(this.result=Ct(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var ne={Deflate:ae,deflate:ie,deflateRaw:function(t,e){return(e=e||{}).raw=!0,ie(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,ie(t,e)},constants:j};var se=function(t,e){let a,i,n,s,r,l,o,h,d,_,f,c,u,w,b,g,p,m,k,v,y,x,z,A;const E=t.state;a=t.next_in,z=t.input,i=a+(t.avail_in-5),n=t.next_out,A=t.output,s=n-(e-t.avail_out),r=n+(t.avail_out-257),l=E.dmax,o=E.wsize,h=E.whave,d=E.wnext,_=E.window,f=E.hold,c=E.bits,u=E.lencode,w=E.distcode,b=(1<<E.lenbits)-1,g=(1<<E.distbits)-1;t:do{c<15&&(f+=z[a++]<<c,c+=8,f+=z[a++]<<c,c+=8),p=u[f&b];e:for(;;){if(m=p>>>24,f>>>=m,c-=m,m=p>>>16&255,0===m)A[n++]=65535&p;else{if(!(16&m)){if(0==(64&m)){p=u[(65535&p)+(f&(1<<m)-1)];continue e}if(32&m){E.mode=12;break t}t.msg="invalid literal/length code",E.mode=30;break t}k=65535&p,m&=15,m&&(c<m&&(f+=z[a++]<<c,c+=8),k+=f&(1<<m)-1,f>>>=m,c-=m),c<15&&(f+=z[a++]<<c,c+=8,f+=z[a++]<<c,c+=8),p=w[f&g];a:for(;;){if(m=p>>>24,f>>>=m,c-=m,m=p>>>16&255,!(16&m)){if(0==(64&m)){p=w[(65535&p)+(f&(1<<m)-1)];continue a}t.msg="invalid distance code",E.mode=30;break t}if(v=65535&p,m&=15,c<m&&(f+=z[a++]<<c,c+=8,c<m&&(f+=z[a++]<<c,c+=8)),v+=f&(1<<m)-1,v>l){t.msg="invalid distance too far back",E.mode=30;break t}if(f>>>=m,c-=m,m=n-s,v>m){if(m=v-m,m>h&&E.sane){t.msg="invalid distance too far back",E.mode=30;break t}if(y=0,x=_,0===d){if(y+=o-m,m<k){k-=m;do{A[n++]=_[y++]}while(--m);y=n-v,x=A}}else if(d<m){if(y+=o+d-m,m-=d,m<k){k-=m;do{A[n++]=_[y++]}while(--m);if(y=0,d<k){m=d,k-=m;do{A[n++]=_[y++]}while(--m);y=n-v,x=A}}}else if(y+=d-m,m<k){k-=m;do{A[n++]=_[y++]}while(--m);y=n-v,x=A}for(;k>2;)A[n++]=x[y++],A[n++]=x[y++],A[n++]=x[y++],k-=3;k&&(A[n++]=x[y++],k>1&&(A[n++]=x[y++]))}else{y=n-v;do{A[n++]=A[y++],A[n++]=A[y++],A[n++]=A[y++],k-=3}while(k>2);k&&(A[n++]=A[y++],k>1&&(A[n++]=A[y++]))}break}}break}}while(a<i&&n<r);k=c>>3,a-=k,c-=k<<3,f&=(1<<c)-1,t.next_in=a,t.next_out=n,t.avail_in=a<i?i-a+5:5-(a-i),t.avail_out=n<r?r-n+257:257-(n-r),E.hold=f,E.bits=c};const re=15,le=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),oe=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),he=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),de=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var _e=(t,e,a,i,n,s,r,l)=>{const o=l.bits;let h,d,_,f,c,u,w=0,b=0,g=0,p=0,m=0,k=0,v=0,y=0,x=0,z=0,A=null,E=0;const R=new Uint16Array(16),Z=new Uint16Array(16);let U,S,D,O=null,T=0;for(w=0;w<=re;w++)R[w]=0;for(b=0;b<i;b++)R[e[a+b]]++;for(m=o,p=re;p>=1&&0===R[p];p--);if(m>p&&(m=p),0===p)return n[s++]=20971520,n[s++]=20971520,l.bits=1,0;for(g=1;g<p&&0===R[g];g++);for(m<g&&(m=g),y=1,w=1;w<=re;w++)if(y<<=1,y-=R[w],y<0)return-1;if(y>0&&(0===t||1!==p))return-1;for(Z[1]=0,w=1;w<re;w++)Z[w+1]=Z[w]+R[w];for(b=0;b<i;b++)0!==e[a+b]&&(r[Z[e[a+b]]++]=b);if(0===t?(A=O=r,u=19):1===t?(A=le,E-=257,O=oe,T-=257,u=256):(A=he,O=de,u=-1),z=0,b=0,w=g,c=s,k=m,v=0,_=-1,x=1<<m,f=x-1,1===t&&x>852||2===t&&x>592)return 1;for(;;){U=w-v,r[b]<u?(S=0,D=r[b]):r[b]>u?(S=O[T+r[b]],D=A[E+r[b]]):(S=96,D=0),h=1<<w-v,d=1<<k,g=d;do{d-=h,n[c+(z>>v)+d]=U<<24|S<<16|D|0}while(0!==d);for(h=1<<w-1;z&h;)h>>=1;if(0!==h?(z&=h-1,z+=h):z=0,b++,0==--R[w]){if(w===p)break;w=e[a+r[b]]}if(w>m&&(z&f)!==_){for(0===v&&(v=m),c+=g,k=w-v,y=1<<k;k+v<p&&(y-=R[k+v],!(y<=0));)k++,y<<=1;if(x+=1<<k,1===t&&x>852||2===t&&x>592)return 1;_=z&f,n[_]=m<<24|k<<16|c-s|0}}return 0!==z&&(n[c+z]=w-v<<24|64<<16|0),l.bits=m,0};const{Z_FINISH:fe,Z_BLOCK:ce,Z_TREES:ue,Z_OK:we,Z_STREAM_END:be,Z_NEED_DICT:ge,Z_STREAM_ERROR:pe,Z_DATA_ERROR:me,Z_MEM_ERROR:ke,Z_BUF_ERROR:ve,Z_DEFLATED:ye}=j,xe=12,ze=30,Ae=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function Ee(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Re=t=>{if(!t||!t.state)return pe;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=1,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,we},Ze=t=>{if(!t||!t.state)return pe;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,Re(t)},Ue=(t,e)=>{let a;if(!t||!t.state)return pe;const i=t.state;return e<0?(a=0,e=-e):(a=1+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?pe:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=a,i.wbits=e,Ze(t))},Se=(t,e)=>{if(!t)return pe;const a=new Ee;t.state=a,a.window=null;const i=Ue(t,e);return i!==we&&(t.state=null),i};let De,Oe,Te=!0;const Ie=t=>{if(Te){De=new Int32Array(512),Oe=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(_e(1,t.lens,0,288,De,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;_e(2,t.lens,0,32,Oe,0,t.work,{bits:5}),Te=!1}t.lencode=De,t.lenbits=9,t.distcode=Oe,t.distbits=5},Fe=(t,e,a,i)=>{let n;const s=t.state;return null===s.window&&(s.wsize=1<<s.wbits,s.wnext=0,s.whave=0,s.window=new Uint8Array(s.wsize)),i>=s.wsize?(s.window.set(e.subarray(a-s.wsize,a),0),s.wnext=0,s.whave=s.wsize):(n=s.wsize-s.wnext,n>i&&(n=i),s.window.set(e.subarray(a-i,a-i+n),s.wnext),(i-=n)?(s.window.set(e.subarray(a-i,a),0),s.wnext=i,s.whave=s.wsize):(s.wnext+=n,s.wnext===s.wsize&&(s.wnext=0),s.whave<s.wsize&&(s.whave+=n))),0};var Le={inflateReset:Ze,inflateReset2:Ue,inflateResetKeep:Re,inflateInit:t=>Se(t,15),inflateInit2:Se,inflate:(t,e)=>{let a,i,n,s,r,l,o,h,d,_,f,c,u,w,b,g,p,m,k,v,y,x,z=0;const A=new Uint8Array(4);let E,R;const Z=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!t||!t.state||!t.output||!t.input&&0!==t.avail_in)return pe;a=t.state,a.mode===xe&&(a.mode=13),r=t.next_out,n=t.output,o=t.avail_out,s=t.next_in,i=t.input,l=t.avail_in,h=a.hold,d=a.bits,_=l,f=o,x=we;t:for(;;)switch(a.mode){case 1:if(0===a.wrap){a.mode=13;break}for(;d<16;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(2&a.wrap&&35615===h){a.check=0,A[0]=255&h,A[1]=h>>>8&255,a.check=M(a.check,A,2,0),h=0,d=0,a.mode=2;break}if(a.flags=0,a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&h)<<8)+(h>>8))%31){t.msg="incorrect header check",a.mode=ze;break}if((15&h)!==ye){t.msg="unknown compression method",a.mode=ze;break}if(h>>>=4,d-=4,y=8+(15&h),0===a.wbits)a.wbits=y;else if(y>a.wbits){t.msg="invalid window size",a.mode=ze;break}a.dmax=1<<a.wbits,t.adler=a.check=1,a.mode=512&h?10:xe,h=0,d=0;break;case 2:for(;d<16;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(a.flags=h,(255&a.flags)!==ye){t.msg="unknown compression method",a.mode=ze;break}if(57344&a.flags){t.msg="unknown header flags set",a.mode=ze;break}a.head&&(a.head.text=h>>8&1),512&a.flags&&(A[0]=255&h,A[1]=h>>>8&255,a.check=M(a.check,A,2,0)),h=0,d=0,a.mode=3;case 3:for(;d<32;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}a.head&&(a.head.time=h),512&a.flags&&(A[0]=255&h,A[1]=h>>>8&255,A[2]=h>>>16&255,A[3]=h>>>24&255,a.check=M(a.check,A,4,0)),h=0,d=0,a.mode=4;case 4:for(;d<16;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}a.head&&(a.head.xflags=255&h,a.head.os=h>>8),512&a.flags&&(A[0]=255&h,A[1]=h>>>8&255,a.check=M(a.check,A,2,0)),h=0,d=0,a.mode=5;case 5:if(1024&a.flags){for(;d<16;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}a.length=h,a.head&&(a.head.extra_len=h),512&a.flags&&(A[0]=255&h,A[1]=h>>>8&255,a.check=M(a.check,A,2,0)),h=0,d=0}else a.head&&(a.head.extra=null);a.mode=6;case 6:if(1024&a.flags&&(c=a.length,c>l&&(c=l),c&&(a.head&&(y=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(i.subarray(s,s+c),y)),512&a.flags&&(a.check=M(a.check,i,c,s)),l-=c,s+=c,a.length-=c),a.length))break t;a.length=0,a.mode=7;case 7:if(2048&a.flags){if(0===l)break t;c=0;do{y=i[s+c++],a.head&&y&&a.length<65536&&(a.head.name+=String.fromCharCode(y))}while(y&&c<l);if(512&a.flags&&(a.check=M(a.check,i,c,s)),l-=c,s+=c,y)break t}else a.head&&(a.head.name=null);a.length=0,a.mode=8;case 8:if(4096&a.flags){if(0===l)break t;c=0;do{y=i[s+c++],a.head&&y&&a.length<65536&&(a.head.comment+=String.fromCharCode(y))}while(y&&c<l);if(512&a.flags&&(a.check=M(a.check,i,c,s)),l-=c,s+=c,y)break t}else a.head&&(a.head.comment=null);a.mode=9;case 9:if(512&a.flags){for(;d<16;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(h!==(65535&a.check)){t.msg="header crc mismatch",a.mode=ze;break}h=0,d=0}a.head&&(a.head.hcrc=a.flags>>9&1,a.head.done=!0),t.adler=a.check=0,a.mode=xe;break;case 10:for(;d<32;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}t.adler=a.check=Ae(h),h=0,d=0,a.mode=11;case 11:if(0===a.havedict)return t.next_out=r,t.avail_out=o,t.next_in=s,t.avail_in=l,a.hold=h,a.bits=d,ge;t.adler=a.check=1,a.mode=xe;case xe:if(e===ce||e===ue)break t;case 13:if(a.last){h>>>=7&d,d-=7&d,a.mode=27;break}for(;d<3;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}switch(a.last=1&h,h>>>=1,d-=1,3&h){case 0:a.mode=14;break;case 1:if(Ie(a),a.mode=20,e===ue){h>>>=2,d-=2;break t}break;case 2:a.mode=17;break;case 3:t.msg="invalid block type",a.mode=ze}h>>>=2,d-=2;break;case 14:for(h>>>=7&d,d-=7&d;d<32;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if((65535&h)!=(h>>>16^65535)){t.msg="invalid stored block lengths",a.mode=ze;break}if(a.length=65535&h,h=0,d=0,a.mode=15,e===ue)break t;case 15:a.mode=16;case 16:if(c=a.length,c){if(c>l&&(c=l),c>o&&(c=o),0===c)break t;n.set(i.subarray(s,s+c),r),l-=c,s+=c,o-=c,r+=c,a.length-=c;break}a.mode=xe;break;case 17:for(;d<14;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(a.nlen=257+(31&h),h>>>=5,d-=5,a.ndist=1+(31&h),h>>>=5,d-=5,a.ncode=4+(15&h),h>>>=4,d-=4,a.nlen>286||a.ndist>30){t.msg="too many length or distance symbols",a.mode=ze;break}a.have=0,a.mode=18;case 18:for(;a.have<a.ncode;){for(;d<3;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}a.lens[Z[a.have++]]=7&h,h>>>=3,d-=3}for(;a.have<19;)a.lens[Z[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,E={bits:a.lenbits},x=_e(0,a.lens,0,19,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid code lengths set",a.mode=ze;break}a.have=0,a.mode=19;case 19:for(;a.have<a.nlen+a.ndist;){for(;z=a.lencode[h&(1<<a.lenbits)-1],b=z>>>24,g=z>>>16&255,p=65535&z,!(b<=d);){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(p<16)h>>>=b,d-=b,a.lens[a.have++]=p;else{if(16===p){for(R=b+2;d<R;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(h>>>=b,d-=b,0===a.have){t.msg="invalid bit length repeat",a.mode=ze;break}y=a.lens[a.have-1],c=3+(3&h),h>>>=2,d-=2}else if(17===p){for(R=b+3;d<R;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}h>>>=b,d-=b,y=0,c=3+(7&h),h>>>=3,d-=3}else{for(R=b+7;d<R;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}h>>>=b,d-=b,y=0,c=11+(127&h),h>>>=7,d-=7}if(a.have+c>a.nlen+a.ndist){t.msg="invalid bit length repeat",a.mode=ze;break}for(;c--;)a.lens[a.have++]=y}}if(a.mode===ze)break;if(0===a.lens[256]){t.msg="invalid code -- missing end-of-block",a.mode=ze;break}if(a.lenbits=9,E={bits:a.lenbits},x=_e(1,a.lens,0,a.nlen,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid literal/lengths set",a.mode=ze;break}if(a.distbits=6,a.distcode=a.distdyn,E={bits:a.distbits},x=_e(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,E),a.distbits=E.bits,x){t.msg="invalid distances set",a.mode=ze;break}if(a.mode=20,e===ue)break t;case 20:a.mode=21;case 21:if(l>=6&&o>=258){t.next_out=r,t.avail_out=o,t.next_in=s,t.avail_in=l,a.hold=h,a.bits=d,se(t,f),r=t.next_out,n=t.output,o=t.avail_out,s=t.next_in,i=t.input,l=t.avail_in,h=a.hold,d=a.bits,a.mode===xe&&(a.back=-1);break}for(a.back=0;z=a.lencode[h&(1<<a.lenbits)-1],b=z>>>24,g=z>>>16&255,p=65535&z,!(b<=d);){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(g&&0==(240&g)){for(m=b,k=g,v=p;z=a.lencode[v+((h&(1<<m+k)-1)>>m)],b=z>>>24,g=z>>>16&255,p=65535&z,!(m+b<=d);){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}h>>>=m,d-=m,a.back+=m}if(h>>>=b,d-=b,a.back+=b,a.length=p,0===g){a.mode=26;break}if(32&g){a.back=-1,a.mode=xe;break}if(64&g){t.msg="invalid literal/length code",a.mode=ze;break}a.extra=15&g,a.mode=22;case 22:if(a.extra){for(R=a.extra;d<R;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}a.length+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=23;case 23:for(;z=a.distcode[h&(1<<a.distbits)-1],b=z>>>24,g=z>>>16&255,p=65535&z,!(b<=d);){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(0==(240&g)){for(m=b,k=g,v=p;z=a.distcode[v+((h&(1<<m+k)-1)>>m)],b=z>>>24,g=z>>>16&255,p=65535&z,!(m+b<=d);){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}h>>>=m,d-=m,a.back+=m}if(h>>>=b,d-=b,a.back+=b,64&g){t.msg="invalid distance code",a.mode=ze;break}a.offset=p,a.extra=15&g,a.mode=24;case 24:if(a.extra){for(R=a.extra;d<R;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}a.offset+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){t.msg="invalid distance too far back",a.mode=ze;break}a.mode=25;case 25:if(0===o)break t;if(c=f-o,a.offset>c){if(c=a.offset-c,c>a.whave&&a.sane){t.msg="invalid distance too far back",a.mode=ze;break}c>a.wnext?(c-=a.wnext,u=a.wsize-c):u=a.wnext-c,c>a.length&&(c=a.length),w=a.window}else w=n,u=r-a.offset,c=a.length;c>o&&(c=o),o-=c,a.length-=c;do{n[r++]=w[u++]}while(--c);0===a.length&&(a.mode=21);break;case 26:if(0===o)break t;n[r++]=a.length,o--,a.mode=21;break;case 27:if(a.wrap){for(;d<32;){if(0===l)break t;l--,h|=i[s++]<<d,d+=8}if(f-=o,t.total_out+=f,a.total+=f,f&&(t.adler=a.check=a.flags?M(a.check,n,f,r-f):B(a.check,n,f,r-f)),f=o,(a.flags?h:Ae(h))!==a.check){t.msg="incorrect data check",a.mode=ze;break}h=0,d=0}a.mode=28;case 28:if(a.wrap&&a.flags){for(;d<32;){if(0===l)break t;l--,h+=i[s++]<<d,d+=8}if(h!==(4294967295&a.total)){t.msg="incorrect length check",a.mode=ze;break}h=0,d=0}a.mode=29;case 29:x=be;break t;case ze:x=me;break t;case 31:return ke;case 32:default:return pe}return t.next_out=r,t.avail_out=o,t.next_in=s,t.avail_in=l,a.hold=h,a.bits=d,(a.wsize||f!==t.avail_out&&a.mode<ze&&(a.mode<27||e!==fe))&&Fe(t,t.output,t.next_out,f-t.avail_out),_-=t.avail_in,f-=t.avail_out,t.total_in+=_,t.total_out+=f,a.total+=f,a.wrap&&f&&(t.adler=a.check=a.flags?M(a.check,n,f,t.next_out-f):B(a.check,n,f,t.next_out-f)),t.data_type=a.bits+(a.last?64:0)+(a.mode===xe?128:0)+(20===a.mode||15===a.mode?256:0),(0===_&&0===f||e===fe)&&x===we&&(x=ve),x},inflateEnd:t=>{if(!t||!t.state)return pe;let e=t.state;return e.window&&(e.window=null),t.state=null,we},inflateGetHeader:(t,e)=>{if(!t||!t.state)return pe;const a=t.state;return 0==(2&a.wrap)?pe:(a.head=e,e.done=!1,we)},inflateSetDictionary:(t,e)=>{const a=e.length;let i,n,s;return t&&t.state?(i=t.state,0!==i.wrap&&11!==i.mode?pe:11===i.mode&&(n=1,n=B(n,e,a,0),n!==i.check)?me:(s=Fe(t,e,a,a),s?(i.mode=31,ke):(i.havedict=1,we))):pe},inflateInfo:"pako inflate (from Nodeca project)"};var Ne=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const Be=Object.prototype.toString,{Z_NO_FLUSH:Ce,Z_FINISH:Me,Z_OK:He,Z_STREAM_END:je,Z_NEED_DICT:Ke,Z_STREAM_ERROR:Pe,Z_DATA_ERROR:Ye,Z_MEM_ERROR:Ge}=j;function Xe(t){this.options=Bt({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Yt,this.strm.avail_out=0;let a=Le.inflateInit2(this.strm,e.windowBits);if(a!==He)throw new Error(H[a]);if(this.header=new Ne,Le.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=jt(e.dictionary):"[object ArrayBuffer]"===Be.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(a=Le.inflateSetDictionary(this.strm,e.dictionary),a!==He)))throw new Error(H[a])}function We(t,e){const a=new Xe(e);if(a.push(t),a.err)throw a.msg||H[a.err];return a.result}Xe.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize,n=this.options.dictionary;let s,r,l;if(this.ended)return!1;for(r=e===~~e?e:!0===e?Me:Ce,"[object ArrayBuffer]"===Be.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;){for(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),s=Le.inflate(a,r),s===Ke&&n&&(s=Le.inflateSetDictionary(a,n),s===He?s=Le.inflate(a,r):s===Ye&&(s=Ke));a.avail_in>0&&s===je&&a.state.wrap>0&&0!==t[a.next_in];)Le.inflateReset(a),s=Le.inflate(a,r);switch(s){case Pe:case Ye:case Ke:case Ge:return this.onEnd(s),this.ended=!0,!1}if(l=a.avail_out,a.next_out&&(0===a.avail_out||s===je))if("string"===this.options.to){let t=Pt(a.output,a.next_out),e=a.next_out-t,n=Kt(a.output,t);a.next_out=e,a.avail_out=i-e,e&&a.output.set(a.output.subarray(t,t+e),0),this.onData(n)}else this.onData(a.output.length===a.next_out?a.output:a.output.subarray(0,a.next_out));if(s!==He||0!==l){if(s===je)return s=Le.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(0===a.avail_in)break}}return!0},Xe.prototype.onData=function(t){this.chunks.push(t)},Xe.prototype.onEnd=function(t){t===He&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Ct(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var qe={Inflate:Xe,inflate:We,inflateRaw:function(t,e){return(e=e||{}).raw=!0,We(t,e)},ungzip:We,constants:j};const{Deflate:Je,deflate:Qe,deflateRaw:Ve,gzip:$e}=ne,{Inflate:ta,inflate:ea,inflateRaw:aa,ungzip:ia}=qe;var na=Je,sa=Qe,ra=Ve,la=$e,oa=ta,ha=ea,da=aa,_a=ia,fa=j,ca={Deflate:na,deflate:sa,deflateRaw:ra,gzip:la,Inflate:oa,inflate:ha,inflateRaw:da,ungzip:_a,constants:fa};t.Deflate=na,t.Inflate=oa,t.constants=fa,t.default=ca,t.deflate=sa,t.deflateRaw=ra,t.gzip=la,t.inflate=ha,t.inflateRaw=da,t.ungzip=_a,Object.defineProperty(t,"__esModule",{value:!0})}));


/**
 * @license
 * Lodash lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE
 */
;(function(){function n(n,t){return n.set(t[0],t[1]),n}function t(n,t){return n.add(t),n}function r(n,t,r){switch(r.length){case 0:return n.call(t);case 1:return n.call(t,r[0]);case 2:return n.call(t,r[0],r[1]);case 3:return n.call(t,r[0],r[1],r[2])}return n.apply(t,r)}function e(n,t,r,e){for(var u=-1,i=null==n?0:n.length;++u<i;){var o=n[u];t(e,o,r(o),n)}return e}function u(n,t){for(var r=-1,e=null==n?0:n.length;++r<e&&false!==t(n[r],r,n););return n}function i(n,t){for(var r=null==n?0:n.length;r--&&false!==t(n[r],r,n););
  return n}function o(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(!t(n[r],r,n))return false;return true}function f(n,t){for(var r=-1,e=null==n?0:n.length,u=0,i=[];++r<e;){var o=n[r];t(o,r,n)&&(i[u++]=o)}return i}function c(n,t){return!(null==n||!n.length)&&-1<d(n,t,0)}function a(n,t,r){for(var e=-1,u=null==n?0:n.length;++e<u;)if(r(t,n[e]))return true;return false}function l(n,t){for(var r=-1,e=null==n?0:n.length,u=Array(e);++r<e;)u[r]=t(n[r],r,n);return u}function s(n,t){for(var r=-1,e=t.length,u=n.length;++r<e;)n[u+r]=t[r];
  return n}function h(n,t,r,e){var u=-1,i=null==n?0:n.length;for(e&&i&&(r=n[++u]);++u<i;)r=t(r,n[u],u,n);return r}function p(n,t,r,e){var u=null==n?0:n.length;for(e&&u&&(r=n[--u]);u--;)r=t(r,n[u],u,n);return r}function _(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(t(n[r],r,n))return true;return false}function v(n,t,r){var e;return r(n,function(n,r,u){if(t(n,r,u))return e=r,false}),e}function g(n,t,r,e){var u=n.length;for(r+=e?1:-1;e?r--:++r<u;)if(t(n[r],r,n))return r;return-1}function d(n,t,r){if(t===t)n:{
  --r;for(var e=n.length;++r<e;)if(n[r]===t){n=r;break n}n=-1}else n=g(n,b,r);return n}function y(n,t,r,e){--r;for(var u=n.length;++r<u;)if(e(n[r],t))return r;return-1}function b(n){return n!==n}function x(n,t){var r=null==n?0:n.length;return r?k(n,t)/r:P}function j(n){return function(t){return null==t?F:t[n]}}function w(n){return function(t){return null==n?F:n[t]}}function m(n,t,r,e,u){return u(n,function(n,u,i){r=e?(e=false,n):t(r,n,u,i)}),r}function A(n,t){var r=n.length;for(n.sort(t);r--;)n[r]=n[r].c;
  return n}function k(n,t){for(var r,e=-1,u=n.length;++e<u;){var i=t(n[e]);i!==F&&(r=r===F?i:r+i)}return r}function E(n,t){for(var r=-1,e=Array(n);++r<n;)e[r]=t(r);return e}function O(n,t){return l(t,function(t){return[t,n[t]]})}function S(n){return function(t){return n(t)}}function I(n,t){return l(t,function(t){return n[t]})}function R(n,t){return n.has(t)}function z(n,t){for(var r=-1,e=n.length;++r<e&&-1<d(t,n[r],0););return r}function W(n,t){for(var r=n.length;r--&&-1<d(t,n[r],0););return r}function B(n){
  return"\\"+Tn[n]}function L(n){var t=-1,r=Array(n.size);return n.forEach(function(n,e){r[++t]=[e,n]}),r}function U(n,t){return function(r){return n(t(r))}}function C(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var o=n[r];o!==t&&"__lodash_placeholder__"!==o||(n[r]="__lodash_placeholder__",i[u++]=r)}return i}function D(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=n}),r}function M(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=[n,n]}),r}function T(n){if(Bn.test(n)){
  for(var t=zn.lastIndex=0;zn.test(n);)++t;n=t}else n=tt(n);return n}function $(n){return Bn.test(n)?n.match(zn)||[]:n.split("")}var F,N=1/0,P=NaN,Z=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],q=/\b__p\+='';/g,V=/\b(__p\+=)''\+/g,K=/(__e\(.*?\)|\b__t\))\+'';/g,G=/&(?:amp|lt|gt|quot|#39);/g,H=/[&<>"']/g,J=RegExp(G.source),Y=RegExp(H.source),Q=/<%-([\s\S]+?)%>/g,X=/<%([\s\S]+?)%>/g,nn=/<%=([\s\S]+?)%>/g,tn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,rn=/^\w*$/,en=/^\./,un=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,on=/[\\^$.*+?()[\]{}|]/g,fn=RegExp(on.source),cn=/^\s+|\s+$/g,an=/^\s+/,ln=/\s+$/,sn=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,hn=/\{\n\/\* \[wrapped with (.+)\] \*/,pn=/,? & /,_n=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,vn=/\\(\\)?/g,gn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,dn=/\w*$/,yn=/^[-+]0x[0-9a-f]+$/i,bn=/^0b[01]+$/i,xn=/^\[object .+?Constructor\]$/,jn=/^0o[0-7]+$/i,wn=/^(?:0|[1-9]\d*)$/,mn=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,An=/($^)/,kn=/['\n\r\u2028\u2029\\]/g,En="[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\\ud83c[\\udffb-\\udfff])?(?:\\u200d(?:[^\\ud800-\\udfff]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff])[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\\ud83c[\\udffb-\\udfff])?)*",On="(?:[\\u2700-\\u27bf]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff])"+En,Sn="(?:[^\\ud800-\\udfff][\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]?|[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff])",In=RegExp("['\u2019]","g"),Rn=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]","g"),zn=RegExp("\\ud83c[\\udffb-\\udfff](?=\\ud83c[\\udffb-\\udfff])|"+Sn+En,"g"),Wn=RegExp(["[A-Z\\xc0-\\xd6\\xd8-\\xde]?[a-z\\xdf-\\xf6\\xf8-\\xff]+(?:['\u2019](?:d|ll|m|re|s|t|ve))?(?=[\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000]|[A-Z\\xc0-\\xd6\\xd8-\\xde]|$)|(?:[A-Z\\xc0-\\xd6\\xd8-\\xde]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?(?=[\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000]|[A-Z\\xc0-\\xd6\\xd8-\\xde](?:[a-z\\xdf-\\xf6\\xf8-\\xff]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])|$)|[A-Z\\xc0-\\xd6\\xd8-\\xde]?(?:[a-z\\xdf-\\xf6\\xf8-\\xff]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['\u2019](?:d|ll|m|re|s|t|ve))?|[A-Z\\xc0-\\xd6\\xd8-\\xde]+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?|\\d*(?:(?:1ST|2ND|3RD|(?![123])\\dTH)\\b)|\\d*(?:(?:1st|2nd|3rd|(?![123])\\dth)\\b)|\\d+",On].join("|"),"g"),Bn=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]"),Ln=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Un="Array Buffer DataView Date Error Float32Array Float64Array Function Int8Array Int16Array Int32Array Map Math Object Promise RegExp Set String Symbol TypeError Uint8Array Uint8ClampedArray Uint16Array Uint32Array WeakMap _ clearTimeout isFinite parseInt setTimeout".split(" "),Cn={};
  Cn["[object Float32Array]"]=Cn["[object Float64Array]"]=Cn["[object Int8Array]"]=Cn["[object Int16Array]"]=Cn["[object Int32Array]"]=Cn["[object Uint8Array]"]=Cn["[object Uint8ClampedArray]"]=Cn["[object Uint16Array]"]=Cn["[object Uint32Array]"]=true,Cn["[object Arguments]"]=Cn["[object Array]"]=Cn["[object ArrayBuffer]"]=Cn["[object Boolean]"]=Cn["[object DataView]"]=Cn["[object Date]"]=Cn["[object Error]"]=Cn["[object Function]"]=Cn["[object Map]"]=Cn["[object Number]"]=Cn["[object Object]"]=Cn["[object RegExp]"]=Cn["[object Set]"]=Cn["[object String]"]=Cn["[object WeakMap]"]=false;
  var Dn={};Dn["[object Arguments]"]=Dn["[object Array]"]=Dn["[object ArrayBuffer]"]=Dn["[object DataView]"]=Dn["[object Boolean]"]=Dn["[object Date]"]=Dn["[object Float32Array]"]=Dn["[object Float64Array]"]=Dn["[object Int8Array]"]=Dn["[object Int16Array]"]=Dn["[object Int32Array]"]=Dn["[object Map]"]=Dn["[object Number]"]=Dn["[object Object]"]=Dn["[object RegExp]"]=Dn["[object Set]"]=Dn["[object String]"]=Dn["[object Symbol]"]=Dn["[object Uint8Array]"]=Dn["[object Uint8ClampedArray]"]=Dn["[object Uint16Array]"]=Dn["[object Uint32Array]"]=true,
    Dn["[object Error]"]=Dn["[object Function]"]=Dn["[object WeakMap]"]=false;var Mn,Tn={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},$n=parseFloat,Fn=parseInt,Nn=typeof global=="object"&&global&&global.Object===Object&&global,Pn=typeof self=="object"&&self&&self.Object===Object&&self,Zn=Nn||Pn||Function("return this")(),qn=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Vn=qn&&typeof module=="object"&&module&&!module.nodeType&&module,Kn=Vn&&Vn.exports===qn,Gn=Kn&&Nn.process;
  n:{try{Mn=Gn&&Gn.binding&&Gn.binding("util");break n}catch(n){}Mn=void 0}var Hn=Mn&&Mn.isArrayBuffer,Jn=Mn&&Mn.isDate,Yn=Mn&&Mn.isMap,Qn=Mn&&Mn.isRegExp,Xn=Mn&&Mn.isSet,nt=Mn&&Mn.isTypedArray,tt=j("length"),rt=w({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I",
    "\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C",
    "\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i",
    "\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S",
    "\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe",
    "\u0149":"'n","\u017f":"s"}),et=w({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"}),ut=w({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),it=function w(En){function On(n){if(xu(n)&&!af(n)&&!(n instanceof Mn)){if(n instanceof zn)return n;if(ci.call(n,"__wrapped__"))return Pe(n)}return new zn(n)}function Sn(){}function zn(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=F}function Mn(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,
    this.__filtered__=false,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Tn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Nn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Pn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function qn(n){var t=-1,r=null==n?0:n.length;for(this.__data__=new Pn;++t<r;)this.add(n[t])}function Vn(n){
    this.size=(this.__data__=new Nn(n)).size}function Gn(n,t){var r,e=af(n),u=!e&&cf(n),i=!e&&!u&&sf(n),o=!e&&!u&&!i&&gf(n),u=(e=e||u||i||o)?E(n.length,ri):[],f=u.length;for(r in n)!t&&!ci.call(n,r)||e&&("length"==r||i&&("offset"==r||"parent"==r)||o&&("buffer"==r||"byteLength"==r||"byteOffset"==r)||Re(r,f))||u.push(r);return u}function tt(n){var t=n.length;return t?n[cr(0,t-1)]:F}function ot(n,t){return Te(Mr(n),gt(t,0,n.length))}function ft(n){return Te(Mr(n))}function ct(n,t,r){(r===F||hu(n[t],r))&&(r!==F||t in n)||_t(n,t,r);
  }function at(n,t,r){var e=n[t];ci.call(n,t)&&hu(e,r)&&(r!==F||t in n)||_t(n,t,r)}function lt(n,t){for(var r=n.length;r--;)if(hu(n[r][0],t))return r;return-1}function st(n,t,r,e){return oo(n,function(n,u,i){t(e,n,r(n),i)}),e}function ht(n,t){return n&&Tr(t,Lu(t),n)}function pt(n,t){return n&&Tr(t,Uu(t),n)}function _t(n,t,r){"__proto__"==t&&Ei?Ei(n,t,{configurable:true,enumerable:true,value:r,writable:true}):n[t]=r}function vt(n,t){for(var r=-1,e=t.length,u=Hu(e),i=null==n;++r<e;)u[r]=i?F:Wu(n,t[r]);return u;
  }function gt(n,t,r){return n===n&&(r!==F&&(n=n<=r?n:r),t!==F&&(n=n>=t?n:t)),n}function dt(n,t,r,e,i,o){var f,c=1&t,a=2&t,l=4&t;if(r&&(f=i?r(n,e,i,o):r(n)),f!==F)return f;if(!bu(n))return n;if(e=af(n)){if(f=Ee(n),!c)return Mr(n,f)}else{var s=yo(n),h="[object Function]"==s||"[object GeneratorFunction]"==s;if(sf(n))return Wr(n,c);if("[object Object]"==s||"[object Arguments]"==s||h&&!i){if(f=a||h?{}:Oe(n),!c)return a?Fr(n,pt(f,n)):$r(n,ht(f,n))}else{if(!Dn[s])return i?n:{};f=Se(n,s,dt,c)}}if(o||(o=new Vn),
      i=o.get(n))return i;o.set(n,f);var a=l?a?ye:de:a?Uu:Lu,p=e?F:a(n);return u(p||n,function(e,u){p&&(u=e,e=n[u]),at(f,u,dt(e,t,r,u,n,o))}),f}function yt(n){var t=Lu(n);return function(r){return bt(r,n,t)}}function bt(n,t,r){var e=r.length;if(null==n)return!e;for(n=ni(n);e--;){var u=r[e],i=t[u],o=n[u];if(o===F&&!(u in n)||!i(o))return false}return true}function xt(n,t,r){if(typeof n!="function")throw new ei("Expected a function");return jo(function(){n.apply(F,r)},t)}function jt(n,t,r,e){var u=-1,i=c,o=true,f=n.length,s=[],h=t.length;
    if(!f)return s;r&&(t=l(t,S(r))),e?(i=a,o=false):200<=t.length&&(i=R,o=false,t=new qn(t));n:for(;++u<f;){var p=n[u],_=null==r?p:r(p),p=e||0!==p?p:0;if(o&&_===_){for(var v=h;v--;)if(t[v]===_)continue n;s.push(p)}else i(t,_,e)||s.push(p)}return s}function wt(n,t){var r=true;return oo(n,function(n,e,u){return r=!!t(n,e,u)}),r}function mt(n,t,r){for(var e=-1,u=n.length;++e<u;){var i=n[e],o=t(i);if(null!=o&&(f===F?o===o&&!Au(o):r(o,f)))var f=o,c=i}return c}function At(n,t){var r=[];return oo(n,function(n,e,u){
    t(n,e,u)&&r.push(n)}),r}function kt(n,t,r,e,u){var i=-1,o=n.length;for(r||(r=Ie),u||(u=[]);++i<o;){var f=n[i];0<t&&r(f)?1<t?kt(f,t-1,r,e,u):s(u,f):e||(u[u.length]=f)}return u}function Et(n,t){return n&&co(n,t,Lu)}function Ot(n,t){return n&&ao(n,t,Lu)}function St(n,t){return f(t,function(t){return gu(n[t])})}function It(n,t){t=Rr(t,n);for(var r=0,e=t.length;null!=n&&r<e;)n=n[$e(t[r++])];return r&&r==e?n:F}function Rt(n,t,r){return t=t(n),af(n)?t:s(t,r(n))}function zt(n){if(null==n)n=n===F?"[object Undefined]":"[object Null]";else if(ki&&ki in ni(n)){
    var t=ci.call(n,ki),r=n[ki];try{n[ki]=F;var e=true}catch(n){}var u=si.call(n);e&&(t?n[ki]=r:delete n[ki]),n=u}else n=si.call(n);return n}function Wt(n,t){return n>t}function Bt(n,t){return null!=n&&ci.call(n,t)}function Lt(n,t){return null!=n&&t in ni(n)}function Ut(n,t,r){for(var e=r?a:c,u=n[0].length,i=n.length,o=i,f=Hu(i),s=1/0,h=[];o--;){var p=n[o];o&&t&&(p=l(p,S(t))),s=Mi(p.length,s),f[o]=!r&&(t||120<=u&&120<=p.length)?new qn(o&&p):F}var p=n[0],_=-1,v=f[0];n:for(;++_<u&&h.length<s;){var g=p[_],d=t?t(g):g,g=r||0!==g?g:0;
    if(v?!R(v,d):!e(h,d,r)){for(o=i;--o;){var y=f[o];if(y?!R(y,d):!e(n[o],d,r))continue n}v&&v.push(d),h.push(g)}}return h}function Ct(n,t,r){var e={};return Et(n,function(n,u,i){t(e,r(n),u,i)}),e}function Dt(n,t,e){return t=Rr(t,n),n=2>t.length?n:It(n,vr(t,0,-1)),t=null==n?n:n[$e(Ge(t))],null==t?F:r(t,n,e)}function Mt(n){return xu(n)&&"[object Arguments]"==zt(n)}function Tt(n){return xu(n)&&"[object ArrayBuffer]"==zt(n)}function $t(n){return xu(n)&&"[object Date]"==zt(n)}function Ft(n,t,r,e,u){if(n===t)t=true;else if(null==n||null==t||!xu(n)&&!xu(t))t=n!==n&&t!==t;else n:{
    var i=af(n),o=af(t),f=i?"[object Array]":yo(n),c=o?"[object Array]":yo(t),f="[object Arguments]"==f?"[object Object]":f,c="[object Arguments]"==c?"[object Object]":c,a="[object Object]"==f,o="[object Object]"==c;if((c=f==c)&&sf(n)){if(!sf(t)){t=false;break n}i=true,a=false}if(c&&!a)u||(u=new Vn),t=i||gf(n)?_e(n,t,r,e,Ft,u):ve(n,t,f,r,e,Ft,u);else{if(!(1&r)&&(i=a&&ci.call(n,"__wrapped__"),f=o&&ci.call(t,"__wrapped__"),i||f)){n=i?n.value():n,t=f?t.value():t,u||(u=new Vn),t=Ft(n,t,r,e,u);break n}if(c)t:if(u||(u=new Vn),
        i=1&r,f=de(n),o=f.length,c=de(t).length,o==c||i){for(a=o;a--;){var l=f[a];if(!(i?l in t:ci.call(t,l))){t=false;break t}}if((c=u.get(n))&&u.get(t))t=c==t;else{c=true,u.set(n,t),u.set(t,n);for(var s=i;++a<o;){var l=f[a],h=n[l],p=t[l];if(e)var _=i?e(p,h,l,t,n,u):e(h,p,l,n,t,u);if(_===F?h!==p&&!Ft(h,p,r,e,u):!_){c=false;break}s||(s="constructor"==l)}c&&!s&&(r=n.constructor,e=t.constructor,r!=e&&"constructor"in n&&"constructor"in t&&!(typeof r=="function"&&r instanceof r&&typeof e=="function"&&e instanceof e)&&(c=false)),
      u.delete(n),u.delete(t),t=c}}else t=false;else t=false}}return t}function Nt(n){return xu(n)&&"[object Map]"==yo(n)}function Pt(n,t,r,e){var u=r.length,i=u,o=!e;if(null==n)return!i;for(n=ni(n);u--;){var f=r[u];if(o&&f[2]?f[1]!==n[f[0]]:!(f[0]in n))return false}for(;++u<i;){var f=r[u],c=f[0],a=n[c],l=f[1];if(o&&f[2]){if(a===F&&!(c in n))return false}else{if(f=new Vn,e)var s=e(a,l,c,n,t,f);if(s===F?!Ft(l,a,3,e,f):!s)return false}}return true}function Zt(n){return!(!bu(n)||li&&li in n)&&(gu(n)?_i:xn).test(Fe(n))}function qt(n){
    return xu(n)&&"[object RegExp]"==zt(n)}function Vt(n){return xu(n)&&"[object Set]"==yo(n)}function Kt(n){return xu(n)&&yu(n.length)&&!!Cn[zt(n)]}function Gt(n){return typeof n=="function"?n:null==n?Nu:typeof n=="object"?af(n)?Xt(n[0],n[1]):Qt(n):Vu(n)}function Ht(n){if(!Le(n))return Ci(n);var t,r=[];for(t in ni(n))ci.call(n,t)&&"constructor"!=t&&r.push(t);return r}function Jt(n,t){return n<t}function Yt(n,t){var r=-1,e=pu(n)?Hu(n.length):[];return oo(n,function(n,u,i){e[++r]=t(n,u,i)}),e}function Qt(n){
    var t=me(n);return 1==t.length&&t[0][2]?Ue(t[0][0],t[0][1]):function(r){return r===n||Pt(r,n,t)}}function Xt(n,t){return We(n)&&t===t&&!bu(t)?Ue($e(n),t):function(r){var e=Wu(r,n);return e===F&&e===t?Bu(r,n):Ft(t,e,3)}}function nr(n,t,r,e,u){n!==t&&co(t,function(i,o){if(bu(i)){u||(u=new Vn);var f=u,c=n[o],a=t[o],l=f.get(a);if(l)ct(n,o,l);else{var l=e?e(c,a,o+"",n,t,f):F,s=l===F;if(s){var h=af(a),p=!h&&sf(a),_=!h&&!p&&gf(a),l=a;h||p||_?af(c)?l=c:_u(c)?l=Mr(c):p?(s=false,l=Wr(a,true)):_?(s=false,l=Lr(a,true)):l=[]:wu(a)||cf(a)?(l=c,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        cf(c)?l=Ru(c):(!bu(c)||r&&gu(c))&&(l=Oe(a))):s=false}s&&(f.set(a,l),nr(l,a,r,e,f),f.delete(a)),ct(n,o,l)}}else f=e?e(n[o],i,o+"",n,t,u):F,f===F&&(f=i),ct(n,o,f)},Uu)}function tr(n,t){var r=n.length;if(r)return t+=0>t?r:0,Re(t,r)?n[t]:F}function rr(n,t,r){var e=-1;return t=l(t.length?t:[Nu],S(je())),n=Yt(n,function(n){return{a:l(t,function(t){return t(n)}),b:++e,c:n}}),A(n,function(n,t){var e;n:{e=-1;for(var u=n.a,i=t.a,o=u.length,f=r.length;++e<o;){var c=Ur(u[e],i[e]);if(c){e=e>=f?c:c*("desc"==r[e]?-1:1);
    break n}}e=n.b-t.b}return e})}function er(n,t){return ur(n,t,function(t,r){return Bu(n,r)})}function ur(n,t,r){for(var e=-1,u=t.length,i={};++e<u;){var o=t[e],f=It(n,o);r(f,o)&&pr(i,Rr(o,n),f)}return i}function ir(n){return function(t){return It(t,n)}}function or(n,t,r,e){var u=e?y:d,i=-1,o=t.length,f=n;for(n===t&&(t=Mr(t)),r&&(f=l(n,S(r)));++i<o;)for(var c=0,a=t[i],a=r?r(a):a;-1<(c=u(f,a,c,e));)f!==n&&wi.call(f,c,1),wi.call(n,c,1);return n}function fr(n,t){for(var r=n?t.length:0,e=r-1;r--;){var u=t[r];
    if(r==e||u!==i){var i=u;Re(u)?wi.call(n,u,1):mr(n,u)}}}function cr(n,t){return n+zi(Fi()*(t-n+1))}function ar(n,t){var r="";if(!n||1>t||9007199254740991<t)return r;do t%2&&(r+=n),(t=zi(t/2))&&(n+=n);while(t);return r}function lr(n,t){return wo(Ce(n,t,Nu),n+"")}function sr(n){return tt(Du(n))}function hr(n,t){var r=Du(n);return Te(r,gt(t,0,r.length))}function pr(n,t,r,e){if(!bu(n))return n;t=Rr(t,n);for(var u=-1,i=t.length,o=i-1,f=n;null!=f&&++u<i;){var c=$e(t[u]),a=r;if(u!=o){var l=f[c],a=e?e(l,c,f):F;
    a===F&&(a=bu(l)?l:Re(t[u+1])?[]:{})}at(f,c,a),f=f[c]}return n}function _r(n){return Te(Du(n))}function vr(n,t,r){var e=-1,u=n.length;for(0>t&&(t=-t>u?0:u+t),r=r>u?u:r,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=Hu(u);++e<u;)r[e]=n[e+t];return r}function gr(n,t){var r;return oo(n,function(n,e,u){return r=t(n,e,u),!r}),!!r}function dr(n,t,r){var e=0,u=null==n?e:n.length;if(typeof t=="number"&&t===t&&2147483647>=u){for(;e<u;){var i=e+u>>>1,o=n[i];null!==o&&!Au(o)&&(r?o<=t:o<t)?e=i+1:u=i}return u}return yr(n,t,Nu,r);
  }function yr(n,t,r,e){t=r(t);for(var u=0,i=null==n?0:n.length,o=t!==t,f=null===t,c=Au(t),a=t===F;u<i;){var l=zi((u+i)/2),s=r(n[l]),h=s!==F,p=null===s,_=s===s,v=Au(s);(o?e||_:a?_&&(e||h):f?_&&h&&(e||!p):c?_&&h&&!p&&(e||!v):p||v?0:e?s<=t:s<t)?u=l+1:i=l}return Mi(i,4294967294)}function br(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var o=n[r],f=t?t(o):o;if(!r||!hu(f,c)){var c=f;i[u++]=0===o?0:o}}return i}function xr(n){return typeof n=="number"?n:Au(n)?P:+n}function jr(n){if(typeof n=="string")return n;
    if(af(n))return l(n,jr)+"";if(Au(n))return uo?uo.call(n):"";var t=n+"";return"0"==t&&1/n==-N?"-0":t}function wr(n,t,r){var e=-1,u=c,i=n.length,o=true,f=[],l=f;if(r)o=false,u=a;else if(200<=i){if(u=t?null:po(n))return D(u);o=false,u=R,l=new qn}else l=t?[]:f;n:for(;++e<i;){var s=n[e],h=t?t(s):s,s=r||0!==s?s:0;if(o&&h===h){for(var p=l.length;p--;)if(l[p]===h)continue n;t&&l.push(h),f.push(s)}else u(l,h,r)||(l!==f&&l.push(h),f.push(s))}return f}function mr(n,t){return t=Rr(t,n),n=2>t.length?n:It(n,vr(t,0,-1)),
  null==n||delete n[$e(Ge(t))]}function Ar(n,t,r,e){for(var u=n.length,i=e?u:-1;(e?i--:++i<u)&&t(n[i],i,n););return r?vr(n,e?0:i,e?i+1:u):vr(n,e?i+1:0,e?u:i)}function kr(n,t){var r=n;return r instanceof Mn&&(r=r.value()),h(t,function(n,t){return t.func.apply(t.thisArg,s([n],t.args))},r)}function Er(n,t,r){var e=n.length;if(2>e)return e?wr(n[0]):[];for(var u=-1,i=Hu(e);++u<e;)for(var o=n[u],f=-1;++f<e;)f!=u&&(i[u]=jt(i[u]||o,n[f],t,r));return wr(kt(i,1),t,r)}function Or(n,t,r){for(var e=-1,u=n.length,i=t.length,o={};++e<u;)r(o,n[e],e<i?t[e]:F);
    return o}function Sr(n){return _u(n)?n:[]}function Ir(n){return typeof n=="function"?n:Nu}function Rr(n,t){return af(n)?n:We(n,t)?[n]:mo(zu(n))}function zr(n,t,r){var e=n.length;return r=r===F?e:r,!t&&r>=e?n:vr(n,t,r)}function Wr(n,t){if(t)return n.slice();var r=n.length,r=yi?yi(r):new n.constructor(r);return n.copy(r),r}function Br(n){var t=new n.constructor(n.byteLength);return new di(t).set(new di(n)),t}function Lr(n,t){return new n.constructor(t?Br(n.buffer):n.buffer,n.byteOffset,n.length)}function Ur(n,t){
    if(n!==t){var r=n!==F,e=null===n,u=n===n,i=Au(n),o=t!==F,f=null===t,c=t===t,a=Au(t);if(!f&&!a&&!i&&n>t||i&&o&&c&&!f&&!a||e&&o&&c||!r&&c||!u)return 1;if(!e&&!i&&!a&&n<t||a&&r&&u&&!e&&!i||f&&r&&u||!o&&u||!c)return-1}return 0}function Cr(n,t,r,e){var u=-1,i=n.length,o=r.length,f=-1,c=t.length,a=Di(i-o,0),l=Hu(c+a);for(e=!e;++f<c;)l[f]=t[f];for(;++u<o;)(e||u<i)&&(l[r[u]]=n[u]);for(;a--;)l[f++]=n[u++];return l}function Dr(n,t,r,e){var u=-1,i=n.length,o=-1,f=r.length,c=-1,a=t.length,l=Di(i-f,0),s=Hu(l+a);
    for(e=!e;++u<l;)s[u]=n[u];for(l=u;++c<a;)s[l+c]=t[c];for(;++o<f;)(e||u<i)&&(s[l+r[o]]=n[u++]);return s}function Mr(n,t){var r=-1,e=n.length;for(t||(t=Hu(e));++r<e;)t[r]=n[r];return t}function Tr(n,t,r,e){var u=!r;r||(r={});for(var i=-1,o=t.length;++i<o;){var f=t[i],c=e?e(r[f],n[f],f,r,n):F;c===F&&(c=n[f]),u?_t(r,f,c):at(r,f,c)}return r}function $r(n,t){return Tr(n,vo(n),t)}function Fr(n,t){return Tr(n,go(n),t)}function Nr(n,t){return function(r,u){var i=af(r)?e:st,o=t?t():{};return i(r,n,je(u,2),o);
  }}function Pr(n){return lr(function(t,r){var e=-1,u=r.length,i=1<u?r[u-1]:F,o=2<u?r[2]:F,i=3<n.length&&typeof i=="function"?(u--,i):F;for(o&&ze(r[0],r[1],o)&&(i=3>u?F:i,u=1),t=ni(t);++e<u;)(o=r[e])&&n(t,o,e,i);return t})}function Zr(n,t){return function(r,e){if(null==r)return r;if(!pu(r))return n(r,e);for(var u=r.length,i=t?u:-1,o=ni(r);(t?i--:++i<u)&&false!==e(o[i],i,o););return r}}function qr(n){return function(t,r,e){var u=-1,i=ni(t);e=e(t);for(var o=e.length;o--;){var f=e[n?o:++u];if(false===r(i[f],f,i))break;
  }return t}}function Vr(n,t,r){function e(){return(this&&this!==Zn&&this instanceof e?i:n).apply(u?r:this,arguments)}var u=1&t,i=Hr(n);return e}function Kr(n){return function(t){t=zu(t);var r=Bn.test(t)?$(t):F,e=r?r[0]:t.charAt(0);return t=r?zr(r,1).join(""):t.slice(1),e[n]()+t}}function Gr(n){return function(t){return h($u(Tu(t).replace(In,"")),n,"")}}function Hr(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:
    return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=io(n.prototype),t=n.apply(r,t);return bu(t)?t:r}}function Jr(n,t,e){function u(){for(var o=arguments.length,f=Hu(o),c=o,a=xe(u);c--;)f[c]=arguments[c];return c=3>o&&f[0]!==a&&f[o-1]!==a?[]:C(f,a),o-=c.length,o<e?fe(n,t,Xr,u.placeholder,F,f,c,F,F,e-o):r(this&&this!==Zn&&this instanceof u?i:n,this,f);
  }var i=Hr(n);return u}function Yr(n){return function(t,r,e){var u=ni(t);if(!pu(t)){var i=je(r,3);t=Lu(t),r=function(n){return i(u[n],n,u)}}return r=n(t,r,e),-1<r?u[i?t[r]:r]:F}}function Qr(n){return ge(function(t){var r=t.length,e=r,u=zn.prototype.thru;for(n&&t.reverse();e--;){var i=t[e];if(typeof i!="function")throw new ei("Expected a function");if(u&&!o&&"wrapper"==be(i))var o=new zn([],true)}for(e=o?e:r;++e<r;)var i=t[e],u=be(i),f="wrapper"==u?_o(i):F,o=f&&Be(f[0])&&424==f[1]&&!f[4].length&&1==f[9]?o[be(f[0])].apply(o,f[3]):1==i.length&&Be(i)?o[u]():o.thru(i);
    return function(){var n=arguments,e=n[0];if(o&&1==n.length&&af(e))return o.plant(e).value();for(var u=0,n=r?t[u].apply(this,n):e;++u<r;)n=t[u].call(this,n);return n}})}function Xr(n,t,r,e,u,i,o,f,c,a){function l(){for(var d=arguments.length,y=Hu(d),b=d;b--;)y[b]=arguments[b];if(_){var x,j=xe(l),b=y.length;for(x=0;b--;)y[b]===j&&++x}if(e&&(y=Cr(y,e,u,_)),i&&(y=Dr(y,i,o,_)),d-=x,_&&d<a)return j=C(y,j),fe(n,t,Xr,l.placeholder,r,y,j,f,c,a-d);if(j=h?r:this,b=p?j[n]:n,d=y.length,f){x=y.length;for(var w=Mi(f.length,x),m=Mr(y);w--;){
    var A=f[w];y[w]=Re(A,x)?m[A]:F}}else v&&1<d&&y.reverse();return s&&c<d&&(y.length=c),this&&this!==Zn&&this instanceof l&&(b=g||Hr(b)),b.apply(j,y)}var s=128&t,h=1&t,p=2&t,_=24&t,v=512&t,g=p?F:Hr(n);return l}function ne(n,t){return function(r,e){return Ct(r,n,t(e))}}function te(n,t){return function(r,e){var u;if(r===F&&e===F)return t;if(r!==F&&(u=r),e!==F){if(u===F)return e;typeof r=="string"||typeof e=="string"?(r=jr(r),e=jr(e)):(r=xr(r),e=xr(e)),u=n(r,e)}return u}}function re(n){return ge(function(t){
    return t=l(t,S(je())),lr(function(e){var u=this;return n(t,function(n){return r(n,u,e)})})})}function ee(n,t){t=t===F?" ":jr(t);var r=t.length;return 2>r?r?ar(t,n):t:(r=ar(t,Ri(n/T(t))),Bn.test(t)?zr($(r),0,n).join(""):r.slice(0,n))}function ue(n,t,e,u){function i(){for(var t=-1,c=arguments.length,a=-1,l=u.length,s=Hu(l+c),h=this&&this!==Zn&&this instanceof i?f:n;++a<l;)s[a]=u[a];for(;c--;)s[a++]=arguments[++t];return r(h,o?e:this,s)}var o=1&t,f=Hr(n);return i}function ie(n){return function(t,r,e){
    e&&typeof e!="number"&&ze(t,r,e)&&(r=e=F),t=Eu(t),r===F?(r=t,t=0):r=Eu(r),e=e===F?t<r?1:-1:Eu(e);var u=-1;r=Di(Ri((r-t)/(e||1)),0);for(var i=Hu(r);r--;)i[n?r:++u]=t,t+=e;return i}}function oe(n){return function(t,r){return typeof t=="string"&&typeof r=="string"||(t=Iu(t),r=Iu(r)),n(t,r)}}function fe(n,t,r,e,u,i,o,f,c,a){var l=8&t,s=l?o:F;o=l?F:o;var h=l?i:F;return i=l?F:i,t=(t|(l?32:64))&~(l?64:32),4&t||(t&=-4),u=[n,t,u,h,s,i,o,f,c,a],r=r.apply(F,u),Be(n)&&xo(r,u),r.placeholder=e,De(r,n,t)}function ce(n){
    var t=Xu[n];return function(n,r){if(n=Iu(n),r=null==r?0:Mi(Ou(r),292)){var e=(zu(n)+"e").split("e"),e=t(e[0]+"e"+(+e[1]+r)),e=(zu(e)+"e").split("e");return+(e[0]+"e"+(+e[1]-r))}return t(n)}}function ae(n){return function(t){var r=yo(t);return"[object Map]"==r?L(t):"[object Set]"==r?M(t):O(t,n(t))}}function le(n,t,r,e,u,i,o,f){var c=2&t;if(!c&&typeof n!="function")throw new ei("Expected a function");var a=e?e.length:0;if(a||(t&=-97,e=u=F),o=o===F?o:Di(Ou(o),0),f=f===F?f:Ou(f),a-=u?u.length:0,64&t){
    var l=e,s=u;e=u=F}var h=c?F:_o(n);return i=[n,t,r,e,u,l,s,i,o,f],h&&(r=i[1],n=h[1],t=r|n,e=128==n&&8==r||128==n&&256==r&&i[7].length<=h[8]||384==n&&h[7].length<=h[8]&&8==r,131>t||e)&&(1&n&&(i[2]=h[2],t|=1&r?0:4),(r=h[3])&&(e=i[3],i[3]=e?Cr(e,r,h[4]):r,i[4]=e?C(i[3],"__lodash_placeholder__"):h[4]),(r=h[5])&&(e=i[5],i[5]=e?Dr(e,r,h[6]):r,i[6]=e?C(i[5],"__lodash_placeholder__"):h[6]),(r=h[7])&&(i[7]=r),128&n&&(i[8]=null==i[8]?h[8]:Mi(i[8],h[8])),null==i[9]&&(i[9]=h[9]),i[0]=h[0],i[1]=t),n=i[0],t=i[1],
    r=i[2],e=i[3],u=i[4],f=i[9]=i[9]===F?c?0:n.length:Di(i[9]-a,0),!f&&24&t&&(t&=-25),De((h?lo:xo)(t&&1!=t?8==t||16==t?Jr(n,t,f):32!=t&&33!=t||u.length?Xr.apply(F,i):ue(n,t,r,e):Vr(n,t,r),i),n,t)}function se(n,t,r,e){return n===F||hu(n,ii[r])&&!ci.call(e,r)?t:n}function he(n,t,r,e,u,i){return bu(n)&&bu(t)&&(i.set(t,n),nr(n,t,F,he,i),i.delete(t)),n}function pe(n){return wu(n)?F:n}function _e(n,t,r,e,u,i){var o=1&r,f=n.length,c=t.length;if(f!=c&&!(o&&c>f))return false;if((c=i.get(n))&&i.get(t))return c==t;var c=-1,a=true,l=2&r?new qn:F;
    for(i.set(n,t),i.set(t,n);++c<f;){var s=n[c],h=t[c];if(e)var p=o?e(h,s,c,t,n,i):e(s,h,c,n,t,i);if(p!==F){if(p)continue;a=false;break}if(l){if(!_(t,function(n,t){if(!R(l,t)&&(s===n||u(s,n,r,e,i)))return l.push(t)})){a=false;break}}else if(s!==h&&!u(s,h,r,e,i)){a=false;break}}return i.delete(n),i.delete(t),a}function ve(n,t,r,e,u,i,o){switch(r){case"[object DataView]":if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)break;n=n.buffer,t=t.buffer;case"[object ArrayBuffer]":if(n.byteLength!=t.byteLength||!i(new di(n),new di(t)))break;
    return true;case"[object Boolean]":case"[object Date]":case"[object Number]":return hu(+n,+t);case"[object Error]":return n.name==t.name&&n.message==t.message;case"[object RegExp]":case"[object String]":return n==t+"";case"[object Map]":var f=L;case"[object Set]":if(f||(f=D),n.size!=t.size&&!(1&e))break;return(r=o.get(n))?r==t:(e|=2,o.set(n,t),t=_e(f(n),f(t),e,u,i,o),o.delete(n),t);case"[object Symbol]":if(eo)return eo.call(n)==eo.call(t)}return false}function ge(n){return wo(Ce(n,F,Ve),n+"")}function de(n){
    return Rt(n,Lu,vo)}function ye(n){return Rt(n,Uu,go)}function be(n){for(var t=n.name+"",r=Ji[t],e=ci.call(Ji,t)?r.length:0;e--;){var u=r[e],i=u.func;if(null==i||i==n)return u.name}return t}function xe(n){return(ci.call(On,"placeholder")?On:n).placeholder}function je(){var n=On.iteratee||Pu,n=n===Pu?Gt:n;return arguments.length?n(arguments[0],arguments[1]):n}function we(n,t){var r=n.__data__,e=typeof t;return("string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t)?r[typeof t=="string"?"string":"hash"]:r.map;
  }function me(n){for(var t=Lu(n),r=t.length;r--;){var e=t[r],u=n[e];t[r]=[e,u,u===u&&!bu(u)]}return t}function Ae(n,t){var r=null==n?F:n[t];return Zt(r)?r:F}function ke(n,t,r){t=Rr(t,n);for(var e=-1,u=t.length,i=false;++e<u;){var o=$e(t[e]);if(!(i=null!=n&&r(n,o)))break;n=n[o]}return i||++e!=u?i:(u=null==n?0:n.length,!!u&&yu(u)&&Re(o,u)&&(af(n)||cf(n)))}function Ee(n){var t=n.length,r=n.constructor(t);return t&&"string"==typeof n[0]&&ci.call(n,"index")&&(r.index=n.index,r.input=n.input),r}function Oe(n){
    return typeof n.constructor!="function"||Le(n)?{}:io(bi(n))}function Se(r,e,u,i){var o=r.constructor;switch(e){case"[object ArrayBuffer]":return Br(r);case"[object Boolean]":case"[object Date]":return new o(+r);case"[object DataView]":return e=i?Br(r.buffer):r.buffer,new r.constructor(e,r.byteOffset,r.byteLength);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":
    case"[object Uint16Array]":case"[object Uint32Array]":return Lr(r,i);case"[object Map]":return e=i?u(L(r),1):L(r),h(e,n,new r.constructor);case"[object Number]":case"[object String]":return new o(r);case"[object RegExp]":return e=new r.constructor(r.source,dn.exec(r)),e.lastIndex=r.lastIndex,e;case"[object Set]":return e=i?u(D(r),1):D(r),h(e,t,new r.constructor);case"[object Symbol]":return eo?ni(eo.call(r)):{}}}function Ie(n){return af(n)||cf(n)||!!(mi&&n&&n[mi])}function Re(n,t){return t=null==t?9007199254740991:t,
  !!t&&(typeof n=="number"||wn.test(n))&&-1<n&&0==n%1&&n<t}function ze(n,t,r){if(!bu(r))return false;var e=typeof t;return!!("number"==e?pu(r)&&Re(t,r.length):"string"==e&&t in r)&&hu(r[t],n)}function We(n,t){if(af(n))return false;var r=typeof n;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=n&&!Au(n))||(rn.test(n)||!tn.test(n)||null!=t&&n in ni(t))}function Be(n){var t=be(n),r=On[t];return typeof r=="function"&&t in Mn.prototype&&(n===r||(t=_o(r),!!t&&n===t[0]))}function Le(n){var t=n&&n.constructor;
    return n===(typeof t=="function"&&t.prototype||ii)}function Ue(n,t){return function(r){return null!=r&&(r[n]===t&&(t!==F||n in ni(r)))}}function Ce(n,t,e){return t=Di(t===F?n.length-1:t,0),function(){for(var u=arguments,i=-1,o=Di(u.length-t,0),f=Hu(o);++i<o;)f[i]=u[t+i];for(i=-1,o=Hu(t+1);++i<t;)o[i]=u[i];return o[t]=e(f),r(n,this,o)}}function De(n,t,r){var e=t+"";t=wo;var u,i=Ne;return u=(u=e.match(hn))?u[1].split(pn):[],r=i(u,r),(i=r.length)&&(u=i-1,r[u]=(1<i?"& ":"")+r[u],r=r.join(2<i?", ":" "),
    e=e.replace(sn,"{\n/* [wrapped with "+r+"] */\n")),t(n,e)}function Me(n){var t=0,r=0;return function(){var e=Ti(),u=16-(e-r);if(r=e,0<u){if(800<=++t)return arguments[0]}else t=0;return n.apply(F,arguments)}}function Te(n,t){var r=-1,e=n.length,u=e-1;for(t=t===F?e:t;++r<t;){var e=cr(r,u),i=n[e];n[e]=n[r],n[r]=i}return n.length=t,n}function $e(n){if(typeof n=="string"||Au(n))return n;var t=n+"";return"0"==t&&1/n==-N?"-0":t}function Fe(n){if(null!=n){try{return fi.call(n)}catch(n){}return n+""}return"";
  }function Ne(n,t){return u(Z,function(r){var e="_."+r[0];t&r[1]&&!c(n,e)&&n.push(e)}),n.sort()}function Pe(n){if(n instanceof Mn)return n.clone();var t=new zn(n.__wrapped__,n.__chain__);return t.__actions__=Mr(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}function Ze(n,t,r){var e=null==n?0:n.length;return e?(r=null==r?0:Ou(r),0>r&&(r=Di(e+r,0)),g(n,je(t,3),r)):-1}function qe(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e-1;return r!==F&&(u=Ou(r),u=0>r?Di(e+u,0):Mi(u,e-1)),
    g(n,je(t,3),u,true)}function Ve(n){return(null==n?0:n.length)?kt(n,1):[]}function Ke(n){return n&&n.length?n[0]:F}function Ge(n){var t=null==n?0:n.length;return t?n[t-1]:F}function He(n,t){return n&&n.length&&t&&t.length?or(n,t):n}function Je(n){return null==n?n:Ni.call(n)}function Ye(n){if(!n||!n.length)return[];var t=0;return n=f(n,function(n){if(_u(n))return t=Di(n.length,t),true}),E(t,function(t){return l(n,j(t))})}function Qe(n,t){if(!n||!n.length)return[];var e=Ye(n);return null==t?e:l(e,function(n){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  return r(t,F,n)})}function Xe(n){return n=On(n),n.__chain__=true,n}function nu(n,t){return t(n)}function tu(){return this}function ru(n,t){return(af(n)?u:oo)(n,je(t,3))}function eu(n,t){return(af(n)?i:fo)(n,je(t,3))}function uu(n,t){return(af(n)?l:Yt)(n,je(t,3))}function iu(n,t,r){return t=r?F:t,t=n&&null==t?n.length:t,le(n,128,F,F,F,F,t)}function ou(n,t){var r;if(typeof t!="function")throw new ei("Expected a function");return n=Ou(n),function(){return 0<--n&&(r=t.apply(this,arguments)),1>=n&&(t=F),
    r}}function fu(n,t,r){return t=r?F:t,n=le(n,8,F,F,F,F,F,t),n.placeholder=fu.placeholder,n}function cu(n,t,r){return t=r?F:t,n=le(n,16,F,F,F,F,F,t),n.placeholder=cu.placeholder,n}function au(n,t,r){function e(t){var r=c,e=a;return c=a=F,_=t,s=n.apply(e,r)}function u(n){var r=n-p;return n-=_,p===F||r>=t||0>r||g&&n>=l}function i(){var n=Jo();if(u(n))return o(n);var r,e=jo;r=n-_,n=t-(n-p),r=g?Mi(n,l-r):n,h=e(i,r)}function o(n){return h=F,d&&c?e(n):(c=a=F,s)}function f(){var n=Jo(),r=u(n);if(c=arguments,
      a=this,p=n,r){if(h===F)return _=n=p,h=jo(i,t),v?e(n):s;if(g)return h=jo(i,t),e(p)}return h===F&&(h=jo(i,t)),s}var c,a,l,s,h,p,_=0,v=false,g=false,d=true;if(typeof n!="function")throw new ei("Expected a function");return t=Iu(t)||0,bu(r)&&(v=!!r.leading,l=(g="maxWait"in r)?Di(Iu(r.maxWait)||0,t):l,d="trailing"in r?!!r.trailing:d),f.cancel=function(){h!==F&&ho(h),_=0,c=p=a=h=F},f.flush=function(){return h===F?s:o(Jo())},f}function lu(n,t){function r(){var e=arguments,u=t?t.apply(this,e):e[0],i=r.cache;return i.has(u)?i.get(u):(e=n.apply(this,e),
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                r.cache=i.set(u,e)||i,e)}if(typeof n!="function"||null!=t&&typeof t!="function")throw new ei("Expected a function");return r.cache=new(lu.Cache||Pn),r}function su(n){if(typeof n!="function")throw new ei("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function hu(n,t){return n===t||n!==n&&t!==t}function pu(n){return null!=n&&yu(n.length)&&!gu(n);
  }function _u(n){return xu(n)&&pu(n)}function vu(n){if(!xu(n))return false;var t=zt(n);return"[object Error]"==t||"[object DOMException]"==t||typeof n.message=="string"&&typeof n.name=="string"&&!wu(n)}function gu(n){return!!bu(n)&&(n=zt(n),"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n)}function du(n){return typeof n=="number"&&n==Ou(n)}function yu(n){return typeof n=="number"&&-1<n&&0==n%1&&9007199254740991>=n}function bu(n){var t=typeof n;return null!=n&&("object"==t||"function"==t);
  }function xu(n){return null!=n&&typeof n=="object"}function ju(n){return typeof n=="number"||xu(n)&&"[object Number]"==zt(n)}function wu(n){return!(!xu(n)||"[object Object]"!=zt(n))&&(n=bi(n),null===n||(n=ci.call(n,"constructor")&&n.constructor,typeof n=="function"&&n instanceof n&&fi.call(n)==hi))}function mu(n){return typeof n=="string"||!af(n)&&xu(n)&&"[object String]"==zt(n)}function Au(n){return typeof n=="symbol"||xu(n)&&"[object Symbol]"==zt(n)}function ku(n){if(!n)return[];if(pu(n))return mu(n)?$(n):Mr(n);
    if(Ai&&n[Ai]){n=n[Ai]();for(var t,r=[];!(t=n.next()).done;)r.push(t.value);return r}return t=yo(n),("[object Map]"==t?L:"[object Set]"==t?D:Du)(n)}function Eu(n){return n?(n=Iu(n),n===N||n===-N?1.7976931348623157e308*(0>n?-1:1):n===n?n:0):0===n?n:0}function Ou(n){n=Eu(n);var t=n%1;return n===n?t?n-t:n:0}function Su(n){return n?gt(Ou(n),0,4294967295):0}function Iu(n){if(typeof n=="number")return n;if(Au(n))return P;if(bu(n)&&(n=typeof n.valueOf=="function"?n.valueOf():n,n=bu(n)?n+"":n),typeof n!="string")return 0===n?n:+n;
    n=n.replace(cn,"");var t=bn.test(n);return t||jn.test(n)?Fn(n.slice(2),t?2:8):yn.test(n)?P:+n}function Ru(n){return Tr(n,Uu(n))}function zu(n){return null==n?"":jr(n)}function Wu(n,t,r){return n=null==n?F:It(n,t),n===F?r:n}function Bu(n,t){return null!=n&&ke(n,t,Lt)}function Lu(n){return pu(n)?Gn(n):Ht(n)}function Uu(n){if(pu(n))n=Gn(n,true);else if(bu(n)){var t,r=Le(n),e=[];for(t in n)("constructor"!=t||!r&&ci.call(n,t))&&e.push(t);n=e}else{if(t=[],null!=n)for(r in ni(n))t.push(r);n=t}return n}function Cu(n,t){
    if(null==n)return{};var r=l(ye(n),function(n){return[n]});return t=je(t),ur(n,r,function(n,r){return t(n,r[0])})}function Du(n){return null==n?[]:I(n,Lu(n))}function Mu(n){return Nf(zu(n).toLowerCase())}function Tu(n){return(n=zu(n))&&n.replace(mn,rt).replace(Rn,"")}function $u(n,t,r){return n=zu(n),t=r?F:t,t===F?Ln.test(n)?n.match(Wn)||[]:n.match(_n)||[]:n.match(t)||[]}function Fu(n){return function(){return n}}function Nu(n){return n}function Pu(n){return Gt(typeof n=="function"?n:dt(n,1))}function Zu(n,t,r){
    var e=Lu(t),i=St(t,e);null!=r||bu(t)&&(i.length||!e.length)||(r=t,t=n,n=this,i=St(t,Lu(t)));var o=!(bu(r)&&"chain"in r&&!r.chain),f=gu(n);return u(i,function(r){var e=t[r];n[r]=e,f&&(n.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=n(this.__wrapped__);return(r.__actions__=Mr(this.__actions__)).push({func:e,args:arguments,thisArg:n}),r.__chain__=t,r}return e.apply(n,s([this.value()],arguments))})}),n}function qu(){}function Vu(n){return We(n)?j($e(n)):ir(n)}function Ku(){return[]}function Gu(){
    return false}En=null==En?Zn:it.defaults(Zn.Object(),En,it.pick(Zn,Un));var Hu=En.Array,Ju=En.Date,Yu=En.Error,Qu=En.Function,Xu=En.Math,ni=En.Object,ti=En.RegExp,ri=En.String,ei=En.TypeError,ui=Hu.prototype,ii=ni.prototype,oi=En["__core-js_shared__"],fi=Qu.prototype.toString,ci=ii.hasOwnProperty,ai=0,li=function(){var n=/[^.]+$/.exec(oi&&oi.keys&&oi.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),si=ii.toString,hi=fi.call(ni),pi=Zn._,_i=ti("^"+fi.call(ci).replace(on,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),vi=Kn?En.Buffer:F,gi=En.Symbol,di=En.Uint8Array,yi=vi?vi.f:F,bi=U(ni.getPrototypeOf,ni),xi=ni.create,ji=ii.propertyIsEnumerable,wi=ui.splice,mi=gi?gi.isConcatSpreadable:F,Ai=gi?gi.iterator:F,ki=gi?gi.toStringTag:F,Ei=function(){
    try{var n=Ae(ni,"defineProperty");return n({},"",{}),n}catch(n){}}(),Oi=En.clearTimeout!==Zn.clearTimeout&&En.clearTimeout,Si=Ju&&Ju.now!==Zn.Date.now&&Ju.now,Ii=En.setTimeout!==Zn.setTimeout&&En.setTimeout,Ri=Xu.ceil,zi=Xu.floor,Wi=ni.getOwnPropertySymbols,Bi=vi?vi.isBuffer:F,Li=En.isFinite,Ui=ui.join,Ci=U(ni.keys,ni),Di=Xu.max,Mi=Xu.min,Ti=Ju.now,$i=En.parseInt,Fi=Xu.random,Ni=ui.reverse,Pi=Ae(En,"DataView"),Zi=Ae(En,"Map"),qi=Ae(En,"Promise"),Vi=Ae(En,"Set"),Ki=Ae(En,"WeakMap"),Gi=Ae(ni,"create"),Hi=Ki&&new Ki,Ji={},Yi=Fe(Pi),Qi=Fe(Zi),Xi=Fe(qi),no=Fe(Vi),to=Fe(Ki),ro=gi?gi.prototype:F,eo=ro?ro.valueOf:F,uo=ro?ro.toString:F,io=function(){
    function n(){}return function(t){return bu(t)?xi?xi(t):(n.prototype=t,t=new n,n.prototype=F,t):{}}}();On.templateSettings={escape:Q,evaluate:X,interpolate:nn,variable:"",imports:{_:On}},On.prototype=Sn.prototype,On.prototype.constructor=On,zn.prototype=io(Sn.prototype),zn.prototype.constructor=zn,Mn.prototype=io(Sn.prototype),Mn.prototype.constructor=Mn,Tn.prototype.clear=function(){this.__data__=Gi?Gi(null):{},this.size=0},Tn.prototype.delete=function(n){return n=this.has(n)&&delete this.__data__[n],
    this.size-=n?1:0,n},Tn.prototype.get=function(n){var t=this.__data__;return Gi?(n=t[n],"__lodash_hash_undefined__"===n?F:n):ci.call(t,n)?t[n]:F},Tn.prototype.has=function(n){var t=this.__data__;return Gi?t[n]!==F:ci.call(t,n)},Tn.prototype.set=function(n,t){var r=this.__data__;return this.size+=this.has(n)?0:1,r[n]=Gi&&t===F?"__lodash_hash_undefined__":t,this},Nn.prototype.clear=function(){this.__data__=[],this.size=0},Nn.prototype.delete=function(n){var t=this.__data__;return n=lt(t,n),!(0>n)&&(n==t.length-1?t.pop():wi.call(t,n,1),
    --this.size,true)},Nn.prototype.get=function(n){var t=this.__data__;return n=lt(t,n),0>n?F:t[n][1]},Nn.prototype.has=function(n){return-1<lt(this.__data__,n)},Nn.prototype.set=function(n,t){var r=this.__data__,e=lt(r,n);return 0>e?(++this.size,r.push([n,t])):r[e][1]=t,this},Pn.prototype.clear=function(){this.size=0,this.__data__={hash:new Tn,map:new(Zi||Nn),string:new Tn}},Pn.prototype.delete=function(n){return n=we(this,n).delete(n),this.size-=n?1:0,n},Pn.prototype.get=function(n){return we(this,n).get(n);
  },Pn.prototype.has=function(n){return we(this,n).has(n)},Pn.prototype.set=function(n,t){var r=we(this,n),e=r.size;return r.set(n,t),this.size+=r.size==e?0:1,this},qn.prototype.add=qn.prototype.push=function(n){return this.__data__.set(n,"__lodash_hash_undefined__"),this},qn.prototype.has=function(n){return this.__data__.has(n)},Vn.prototype.clear=function(){this.__data__=new Nn,this.size=0},Vn.prototype.delete=function(n){var t=this.__data__;return n=t.delete(n),this.size=t.size,n},Vn.prototype.get=function(n){
    return this.__data__.get(n)},Vn.prototype.has=function(n){return this.__data__.has(n)},Vn.prototype.set=function(n,t){var r=this.__data__;if(r instanceof Nn){var e=r.__data__;if(!Zi||199>e.length)return e.push([n,t]),this.size=++r.size,this;r=this.__data__=new Pn(e)}return r.set(n,t),this.size=r.size,this};var oo=Zr(Et),fo=Zr(Ot,true),co=qr(),ao=qr(true),lo=Hi?function(n,t){return Hi.set(n,t),n}:Nu,so=Ei?function(n,t){return Ei(n,"toString",{configurable:true,enumerable:false,value:Fu(t),writable:true})}:Nu,ho=Oi||function(n){
      return Zn.clearTimeout(n)},po=Vi&&1/D(new Vi([,-0]))[1]==N?function(n){return new Vi(n)}:qu,_o=Hi?function(n){return Hi.get(n)}:qu,vo=Wi?function(n){return null==n?[]:(n=ni(n),f(Wi(n),function(t){return ji.call(n,t)}))}:Ku,go=Wi?function(n){for(var t=[];n;)s(t,vo(n)),n=bi(n);return t}:Ku,yo=zt;(Pi&&"[object DataView]"!=yo(new Pi(new ArrayBuffer(1)))||Zi&&"[object Map]"!=yo(new Zi)||qi&&"[object Promise]"!=yo(qi.resolve())||Vi&&"[object Set]"!=yo(new Vi)||Ki&&"[object WeakMap]"!=yo(new Ki))&&(yo=function(n){
    var t=zt(n);if(n=(n="[object Object]"==t?n.constructor:F)?Fe(n):"")switch(n){case Yi:return"[object DataView]";case Qi:return"[object Map]";case Xi:return"[object Promise]";case no:return"[object Set]";case to:return"[object WeakMap]"}return t});var bo=oi?gu:Gu,xo=Me(lo),jo=Ii||function(n,t){return Zn.setTimeout(n,t)},wo=Me(so),mo=function(n){n=lu(n,function(n){return 500===t.size&&t.clear(),n});var t=n.cache;return n}(function(n){var t=[];return en.test(n)&&t.push(""),n.replace(un,function(n,r,e,u){
    t.push(e?u.replace(vn,"$1"):r||n)}),t}),Ao=lr(function(n,t){return _u(n)?jt(n,kt(t,1,_u,true)):[]}),ko=lr(function(n,t){var r=Ge(t);return _u(r)&&(r=F),_u(n)?jt(n,kt(t,1,_u,true),je(r,2)):[]}),Eo=lr(function(n,t){var r=Ge(t);return _u(r)&&(r=F),_u(n)?jt(n,kt(t,1,_u,true),F,r):[]}),Oo=lr(function(n){var t=l(n,Sr);return t.length&&t[0]===n[0]?Ut(t):[]}),So=lr(function(n){var t=Ge(n),r=l(n,Sr);return t===Ge(r)?t=F:r.pop(),r.length&&r[0]===n[0]?Ut(r,je(t,2)):[]}),Io=lr(function(n){var t=Ge(n),r=l(n,Sr);return(t=typeof t=="function"?t:F)&&r.pop(),
    r.length&&r[0]===n[0]?Ut(r,F,t):[]}),Ro=lr(He),zo=ge(function(n,t){var r=null==n?0:n.length,e=vt(n,t);return fr(n,l(t,function(n){return Re(n,r)?+n:n}).sort(Ur)),e}),Wo=lr(function(n){return wr(kt(n,1,_u,true))}),Bo=lr(function(n){var t=Ge(n);return _u(t)&&(t=F),wr(kt(n,1,_u,true),je(t,2))}),Lo=lr(function(n){var t=Ge(n),t=typeof t=="function"?t:F;return wr(kt(n,1,_u,true),F,t)}),Uo=lr(function(n,t){return _u(n)?jt(n,t):[]}),Co=lr(function(n){return Er(f(n,_u))}),Do=lr(function(n){var t=Ge(n);return _u(t)&&(t=F),
    Er(f(n,_u),je(t,2))}),Mo=lr(function(n){var t=Ge(n),t=typeof t=="function"?t:F;return Er(f(n,_u),F,t)}),To=lr(Ye),$o=lr(function(n){var t=n.length,t=1<t?n[t-1]:F,t=typeof t=="function"?(n.pop(),t):F;return Qe(n,t)}),Fo=ge(function(n){function t(t){return vt(t,n)}var r=n.length,e=r?n[0]:0,u=this.__wrapped__;return!(1<r||this.__actions__.length)&&u instanceof Mn&&Re(e)?(u=u.slice(e,+e+(r?1:0)),u.__actions__.push({func:nu,args:[t],thisArg:F}),new zn(u,this.__chain__).thru(function(n){return r&&!n.length&&n.push(F),
                                                                                                                                                                                                                                                                                                                                                                                       n})):this.thru(t)}),No=Nr(function(n,t,r){ci.call(n,r)?++n[r]:_t(n,r,1)}),Po=Yr(Ze),Zo=Yr(qe),qo=Nr(function(n,t,r){ci.call(n,r)?n[r].push(t):_t(n,r,[t])}),Vo=lr(function(n,t,e){var u=-1,i=typeof t=="function",o=pu(n)?Hu(n.length):[];return oo(n,function(n){o[++u]=i?r(t,n,e):Dt(n,t,e)}),o}),Ko=Nr(function(n,t,r){_t(n,r,t)}),Go=Nr(function(n,t,r){n[r?0:1].push(t)},function(){return[[],[]]}),Ho=lr(function(n,t){if(null==n)return[];var r=t.length;return 1<r&&ze(n,t[0],t[1])?t=[]:2<r&&ze(t[0],t[1],t[2])&&(t=[t[0]]),
    rr(n,kt(t,1),[])}),Jo=Si||function(){return Zn.Date.now()},Yo=lr(function(n,t,r){var e=1;if(r.length)var u=C(r,xe(Yo)),e=32|e;return le(n,e,t,r,u)}),Qo=lr(function(n,t,r){var e=3;if(r.length)var u=C(r,xe(Qo)),e=32|e;return le(t,e,n,r,u)}),Xo=lr(function(n,t){return xt(n,1,t)}),nf=lr(function(n,t,r){return xt(n,Iu(t)||0,r)});lu.Cache=Pn;var tf=lr(function(n,t){t=1==t.length&&af(t[0])?l(t[0],S(je())):l(kt(t,1),S(je()));var e=t.length;return lr(function(u){for(var i=-1,o=Mi(u.length,e);++i<o;)u[i]=t[i].call(this,u[i]);
    return r(n,this,u)})}),rf=lr(function(n,t){return le(n,32,F,t,C(t,xe(rf)))}),ef=lr(function(n,t){return le(n,64,F,t,C(t,xe(ef)))}),uf=ge(function(n,t){return le(n,256,F,F,F,t)}),of=oe(Wt),ff=oe(function(n,t){return n>=t}),cf=Mt(function(){return arguments}())?Mt:function(n){return xu(n)&&ci.call(n,"callee")&&!ji.call(n,"callee")},af=Hu.isArray,lf=Hn?S(Hn):Tt,sf=Bi||Gu,hf=Jn?S(Jn):$t,pf=Yn?S(Yn):Nt,_f=Qn?S(Qn):qt,vf=Xn?S(Xn):Vt,gf=nt?S(nt):Kt,df=oe(Jt),yf=oe(function(n,t){return n<=t}),bf=Pr(function(n,t){
    if(Le(t)||pu(t))Tr(t,Lu(t),n);else for(var r in t)ci.call(t,r)&&at(n,r,t[r])}),xf=Pr(function(n,t){Tr(t,Uu(t),n)}),jf=Pr(function(n,t,r,e){Tr(t,Uu(t),n,e)}),wf=Pr(function(n,t,r,e){Tr(t,Lu(t),n,e)}),mf=ge(vt),Af=lr(function(n){return n.push(F,se),r(jf,F,n)}),kf=lr(function(n){return n.push(F,he),r(Rf,F,n)}),Ef=ne(function(n,t,r){n[t]=r},Fu(Nu)),Of=ne(function(n,t,r){ci.call(n,t)?n[t].push(r):n[t]=[r]},je),Sf=lr(Dt),If=Pr(function(n,t,r){nr(n,t,r)}),Rf=Pr(function(n,t,r,e){nr(n,t,r,e)}),zf=ge(function(n,t){
    var r={};if(null==n)return r;var e=false;t=l(t,function(t){return t=Rr(t,n),e||(e=1<t.length),t}),Tr(n,ye(n),r),e&&(r=dt(r,7,pe));for(var u=t.length;u--;)mr(r,t[u]);return r}),Wf=ge(function(n,t){return null==n?{}:er(n,t)}),Bf=ae(Lu),Lf=ae(Uu),Uf=Gr(function(n,t,r){return t=t.toLowerCase(),n+(r?Mu(t):t)}),Cf=Gr(function(n,t,r){return n+(r?"-":"")+t.toLowerCase()}),Df=Gr(function(n,t,r){return n+(r?" ":"")+t.toLowerCase()}),Mf=Kr("toLowerCase"),Tf=Gr(function(n,t,r){return n+(r?"_":"")+t.toLowerCase();
  }),$f=Gr(function(n,t,r){return n+(r?" ":"")+Nf(t)}),Ff=Gr(function(n,t,r){return n+(r?" ":"")+t.toUpperCase()}),Nf=Kr("toUpperCase"),Pf=lr(function(n,t){try{return r(n,F,t)}catch(n){return vu(n)?n:new Yu(n)}}),Zf=ge(function(n,t){return u(t,function(t){t=$e(t),_t(n,t,Yo(n[t],n))}),n}),qf=Qr(),Vf=Qr(true),Kf=lr(function(n,t){return function(r){return Dt(r,n,t)}}),Gf=lr(function(n,t){return function(r){return Dt(n,r,t)}}),Hf=re(l),Jf=re(o),Yf=re(_),Qf=ie(),Xf=ie(true),nc=te(function(n,t){return n+t},0),tc=ce("ceil"),rc=te(function(n,t){
    return n/t},1),ec=ce("floor"),uc=te(function(n,t){return n*t},1),ic=ce("round"),oc=te(function(n,t){return n-t},0);return On.after=function(n,t){if(typeof t!="function")throw new ei("Expected a function");return n=Ou(n),function(){if(1>--n)return t.apply(this,arguments)}},On.ary=iu,On.assign=bf,On.assignIn=xf,On.assignInWith=jf,On.assignWith=wf,On.at=mf,On.before=ou,On.bind=Yo,On.bindAll=Zf,On.bindKey=Qo,On.castArray=function(){if(!arguments.length)return[];var n=arguments[0];return af(n)?n:[n]},
    On.chain=Xe,On.chunk=function(n,t,r){if(t=(r?ze(n,t,r):t===F)?1:Di(Ou(t),0),r=null==n?0:n.length,!r||1>t)return[];for(var e=0,u=0,i=Hu(Ri(r/t));e<r;)i[u++]=vr(n,e,e+=t);return i},On.compact=function(n){for(var t=-1,r=null==n?0:n.length,e=0,u=[];++t<r;){var i=n[t];i&&(u[e++]=i)}return u},On.concat=function(){var n=arguments.length;if(!n)return[];for(var t=Hu(n-1),r=arguments[0];n--;)t[n-1]=arguments[n];return s(af(r)?Mr(r):[r],kt(t,1))},On.cond=function(n){var t=null==n?0:n.length,e=je();return n=t?l(n,function(n){
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            if("function"!=typeof n[1])throw new ei("Expected a function");return[e(n[0]),n[1]]}):[],lr(function(e){for(var u=-1;++u<t;){var i=n[u];if(r(i[0],this,e))return r(i[1],this,e)}})},On.conforms=function(n){return yt(dt(n,1))},On.constant=Fu,On.countBy=No,On.create=function(n,t){var r=io(n);return null==t?r:ht(r,t)},On.curry=fu,On.curryRight=cu,On.debounce=au,On.defaults=Af,On.defaultsDeep=kf,On.defer=Xo,On.delay=nf,On.difference=Ao,On.differenceBy=ko,On.differenceWith=Eo,On.drop=function(n,t,r){var e=null==n?0:n.length;
    return e?(t=r||t===F?1:Ou(t),vr(n,0>t?0:t,e)):[]},On.dropRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===F?1:Ou(t),t=e-t,vr(n,0,0>t?0:t)):[]},On.dropRightWhile=function(n,t){return n&&n.length?Ar(n,je(t,3),true,true):[]},On.dropWhile=function(n,t){return n&&n.length?Ar(n,je(t,3),true):[]},On.fill=function(n,t,r,e){var u=null==n?0:n.length;if(!u)return[];for(r&&typeof r!="number"&&ze(n,t,r)&&(r=0,e=u),u=n.length,r=Ou(r),0>r&&(r=-r>u?0:u+r),e=e===F||e>u?u:Ou(e),0>e&&(e+=u),e=r>e?0:Su(e);r<e;)n[r++]=t;
    return n},On.filter=function(n,t){return(af(n)?f:At)(n,je(t,3))},On.flatMap=function(n,t){return kt(uu(n,t),1)},On.flatMapDeep=function(n,t){return kt(uu(n,t),N)},On.flatMapDepth=function(n,t,r){return r=r===F?1:Ou(r),kt(uu(n,t),r)},On.flatten=Ve,On.flattenDeep=function(n){return(null==n?0:n.length)?kt(n,N):[]},On.flattenDepth=function(n,t){return null!=n&&n.length?(t=t===F?1:Ou(t),kt(n,t)):[]},On.flip=function(n){return le(n,512)},On.flow=qf,On.flowRight=Vf,On.fromPairs=function(n){for(var t=-1,r=null==n?0:n.length,e={};++t<r;){
    var u=n[t];e[u[0]]=u[1]}return e},On.functions=function(n){return null==n?[]:St(n,Lu(n))},On.functionsIn=function(n){return null==n?[]:St(n,Uu(n))},On.groupBy=qo,On.initial=function(n){return(null==n?0:n.length)?vr(n,0,-1):[]},On.intersection=Oo,On.intersectionBy=So,On.intersectionWith=Io,On.invert=Ef,On.invertBy=Of,On.invokeMap=Vo,On.iteratee=Pu,On.keyBy=Ko,On.keys=Lu,On.keysIn=Uu,On.map=uu,On.mapKeys=function(n,t){var r={};return t=je(t,3),Et(n,function(n,e,u){_t(r,t(n,e,u),n)}),r},On.mapValues=function(n,t){
    var r={};return t=je(t,3),Et(n,function(n,e,u){_t(r,e,t(n,e,u))}),r},On.matches=function(n){return Qt(dt(n,1))},On.matchesProperty=function(n,t){return Xt(n,dt(t,1))},On.memoize=lu,On.merge=If,On.mergeWith=Rf,On.method=Kf,On.methodOf=Gf,On.mixin=Zu,On.negate=su,On.nthArg=function(n){return n=Ou(n),lr(function(t){return tr(t,n)})},On.omit=zf,On.omitBy=function(n,t){return Cu(n,su(je(t)))},On.once=function(n){return ou(2,n)},On.orderBy=function(n,t,r,e){return null==n?[]:(af(t)||(t=null==t?[]:[t]),
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            r=e?F:r,af(r)||(r=null==r?[]:[r]),rr(n,t,r))},On.over=Hf,On.overArgs=tf,On.overEvery=Jf,On.overSome=Yf,On.partial=rf,On.partialRight=ef,On.partition=Go,On.pick=Wf,On.pickBy=Cu,On.property=Vu,On.propertyOf=function(n){return function(t){return null==n?F:It(n,t)}},On.pull=Ro,On.pullAll=He,On.pullAllBy=function(n,t,r){return n&&n.length&&t&&t.length?or(n,t,je(r,2)):n},On.pullAllWith=function(n,t,r){return n&&n.length&&t&&t.length?or(n,t,F,r):n},On.pullAt=zo,On.range=Qf,On.rangeRight=Xf,On.rearg=uf,On.reject=function(n,t){
    return(af(n)?f:At)(n,su(je(t,3)))},On.remove=function(n,t){var r=[];if(!n||!n.length)return r;var e=-1,u=[],i=n.length;for(t=je(t,3);++e<i;){var o=n[e];t(o,e,n)&&(r.push(o),u.push(e))}return fr(n,u),r},On.rest=function(n,t){if(typeof n!="function")throw new ei("Expected a function");return t=t===F?t:Ou(t),lr(n,t)},On.reverse=Je,On.sampleSize=function(n,t,r){return t=(r?ze(n,t,r):t===F)?1:Ou(t),(af(n)?ot:hr)(n,t)},On.set=function(n,t,r){return null==n?n:pr(n,t,r)},On.setWith=function(n,t,r,e){return e=typeof e=="function"?e:F,
    null==n?n:pr(n,t,r,e)},On.shuffle=function(n){return(af(n)?ft:_r)(n)},On.slice=function(n,t,r){var e=null==n?0:n.length;return e?(r&&typeof r!="number"&&ze(n,t,r)?(t=0,r=e):(t=null==t?0:Ou(t),r=r===F?e:Ou(r)),vr(n,t,r)):[]},On.sortBy=Ho,On.sortedUniq=function(n){return n&&n.length?br(n):[]},On.sortedUniqBy=function(n,t){return n&&n.length?br(n,je(t,2)):[]},On.split=function(n,t,r){return r&&typeof r!="number"&&ze(n,t,r)&&(t=r=F),r=r===F?4294967295:r>>>0,r?(n=zu(n))&&(typeof t=="string"||null!=t&&!_f(t))&&(t=jr(t),
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                !t&&Bn.test(n))?zr($(n),0,r):n.split(t,r):[]},On.spread=function(n,t){if(typeof n!="function")throw new ei("Expected a function");return t=null==t?0:Di(Ou(t),0),lr(function(e){var u=e[t];return e=zr(e,0,t),u&&s(e,u),r(n,this,e)})},On.tail=function(n){var t=null==n?0:n.length;return t?vr(n,1,t):[]},On.take=function(n,t,r){return n&&n.length?(t=r||t===F?1:Ou(t),vr(n,0,0>t?0:t)):[]},On.takeRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===F?1:Ou(t),t=e-t,vr(n,0>t?0:t,e)):[]},On.takeRightWhile=function(n,t){
    return n&&n.length?Ar(n,je(t,3),false,true):[]},On.takeWhile=function(n,t){return n&&n.length?Ar(n,je(t,3)):[]},On.tap=function(n,t){return t(n),n},On.throttle=function(n,t,r){var e=true,u=true;if(typeof n!="function")throw new ei("Expected a function");return bu(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),au(n,t,{leading:e,maxWait:t,trailing:u})},On.thru=nu,On.toArray=ku,On.toPairs=Bf,On.toPairsIn=Lf,On.toPath=function(n){return af(n)?l(n,$e):Au(n)?[n]:Mr(mo(zu(n)))},On.toPlainObject=Ru,
    On.transform=function(n,t,r){var e=af(n),i=e||sf(n)||gf(n);if(t=je(t,4),null==r){var o=n&&n.constructor;r=i?e?new o:[]:bu(n)&&gu(o)?io(bi(n)):{}}return(i?u:Et)(n,function(n,e,u){return t(r,n,e,u)}),r},On.unary=function(n){return iu(n,1)},On.union=Wo,On.unionBy=Bo,On.unionWith=Lo,On.uniq=function(n){return n&&n.length?wr(n):[]},On.uniqBy=function(n,t){return n&&n.length?wr(n,je(t,2)):[]},On.uniqWith=function(n,t){return t=typeof t=="function"?t:F,n&&n.length?wr(n,F,t):[]},On.unset=function(n,t){return null==n||mr(n,t);
    },On.unzip=Ye,On.unzipWith=Qe,On.update=function(n,t,r){return null==n?n:pr(n,t,Ir(r)(It(n,t)),void 0)},On.updateWith=function(n,t,r,e){return e=typeof e=="function"?e:F,null!=n&&(n=pr(n,t,Ir(r)(It(n,t)),e)),n},On.values=Du,On.valuesIn=function(n){return null==n?[]:I(n,Uu(n))},On.without=Uo,On.words=$u,On.wrap=function(n,t){return rf(Ir(t),n)},On.xor=Co,On.xorBy=Do,On.xorWith=Mo,On.zip=To,On.zipObject=function(n,t){return Or(n||[],t||[],at)},On.zipObjectDeep=function(n,t){return Or(n||[],t||[],pr);
    },On.zipWith=$o,On.entries=Bf,On.entriesIn=Lf,On.extend=xf,On.extendWith=jf,Zu(On,On),On.add=nc,On.attempt=Pf,On.camelCase=Uf,On.capitalize=Mu,On.ceil=tc,On.clamp=function(n,t,r){return r===F&&(r=t,t=F),r!==F&&(r=Iu(r),r=r===r?r:0),t!==F&&(t=Iu(t),t=t===t?t:0),gt(Iu(n),t,r)},On.clone=function(n){return dt(n,4)},On.cloneDeep=function(n){return dt(n,5)},On.cloneDeepWith=function(n,t){return t=typeof t=="function"?t:F,dt(n,5,t)},On.cloneWith=function(n,t){return t=typeof t=="function"?t:F,dt(n,4,t)},
    On.conformsTo=function(n,t){return null==t||bt(n,t,Lu(t))},On.deburr=Tu,On.defaultTo=function(n,t){return null==n||n!==n?t:n},On.divide=rc,On.endsWith=function(n,t,r){n=zu(n),t=jr(t);var e=n.length,e=r=r===F?e:gt(Ou(r),0,e);return r-=t.length,0<=r&&n.slice(r,e)==t},On.eq=hu,On.escape=function(n){return(n=zu(n))&&Y.test(n)?n.replace(H,et):n},On.escapeRegExp=function(n){return(n=zu(n))&&fn.test(n)?n.replace(on,"\\$&"):n},On.every=function(n,t,r){var e=af(n)?o:wt;return r&&ze(n,t,r)&&(t=F),e(n,je(t,3));
    },On.find=Po,On.findIndex=Ze,On.findKey=function(n,t){return v(n,je(t,3),Et)},On.findLast=Zo,On.findLastIndex=qe,On.findLastKey=function(n,t){return v(n,je(t,3),Ot)},On.floor=ec,On.forEach=ru,On.forEachRight=eu,On.forIn=function(n,t){return null==n?n:co(n,je(t,3),Uu)},On.forInRight=function(n,t){return null==n?n:ao(n,je(t,3),Uu)},On.forOwn=function(n,t){return n&&Et(n,je(t,3))},On.forOwnRight=function(n,t){return n&&Ot(n,je(t,3))},On.get=Wu,On.gt=of,On.gte=ff,On.has=function(n,t){return null!=n&&ke(n,t,Bt);
    },On.hasIn=Bu,On.head=Ke,On.identity=Nu,On.includes=function(n,t,r,e){return n=pu(n)?n:Du(n),r=r&&!e?Ou(r):0,e=n.length,0>r&&(r=Di(e+r,0)),mu(n)?r<=e&&-1<n.indexOf(t,r):!!e&&-1<d(n,t,r)},On.indexOf=function(n,t,r){var e=null==n?0:n.length;return e?(r=null==r?0:Ou(r),0>r&&(r=Di(e+r,0)),d(n,t,r)):-1},On.inRange=function(n,t,r){return t=Eu(t),r===F?(r=t,t=0):r=Eu(r),n=Iu(n),n>=Mi(t,r)&&n<Di(t,r)},On.invoke=Sf,On.isArguments=cf,On.isArray=af,On.isArrayBuffer=lf,On.isArrayLike=pu,On.isArrayLikeObject=_u,
    On.isBoolean=function(n){return true===n||false===n||xu(n)&&"[object Boolean]"==zt(n)},On.isBuffer=sf,On.isDate=hf,On.isElement=function(n){return xu(n)&&1===n.nodeType&&!wu(n)},On.isEmpty=function(n){if(null==n)return true;if(pu(n)&&(af(n)||typeof n=="string"||typeof n.splice=="function"||sf(n)||gf(n)||cf(n)))return!n.length;var t=yo(n);if("[object Map]"==t||"[object Set]"==t)return!n.size;if(Le(n))return!Ht(n).length;for(var r in n)if(ci.call(n,r))return false;return true},On.isEqual=function(n,t){return Ft(n,t);
    },On.isEqualWith=function(n,t,r){var e=(r=typeof r=="function"?r:F)?r(n,t):F;return e===F?Ft(n,t,F,r):!!e},On.isError=vu,On.isFinite=function(n){return typeof n=="number"&&Li(n)},On.isFunction=gu,On.isInteger=du,On.isLength=yu,On.isMap=pf,On.isMatch=function(n,t){return n===t||Pt(n,t,me(t))},On.isMatchWith=function(n,t,r){return r=typeof r=="function"?r:F,Pt(n,t,me(t),r)},On.isNaN=function(n){return ju(n)&&n!=+n},On.isNative=function(n){if(bo(n))throw new Yu("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");
      return Zt(n)},On.isNil=function(n){return null==n},On.isNull=function(n){return null===n},On.isNumber=ju,On.isObject=bu,On.isObjectLike=xu,On.isPlainObject=wu,On.isRegExp=_f,On.isSafeInteger=function(n){return du(n)&&-9007199254740991<=n&&9007199254740991>=n},On.isSet=vf,On.isString=mu,On.isSymbol=Au,On.isTypedArray=gf,On.isUndefined=function(n){return n===F},On.isWeakMap=function(n){return xu(n)&&"[object WeakMap]"==yo(n)},On.isWeakSet=function(n){return xu(n)&&"[object WeakSet]"==zt(n)},On.join=function(n,t){
      return null==n?"":Ui.call(n,t)},On.kebabCase=Cf,On.last=Ge,On.lastIndexOf=function(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e;if(r!==F&&(u=Ou(r),u=0>u?Di(e+u,0):Mi(u,e-1)),t===t){for(r=u+1;r--&&n[r]!==t;);n=r}else n=g(n,b,u,true);return n},On.lowerCase=Df,On.lowerFirst=Mf,On.lt=df,On.lte=yf,On.max=function(n){return n&&n.length?mt(n,Nu,Wt):F},On.maxBy=function(n,t){return n&&n.length?mt(n,je(t,2),Wt):F},On.mean=function(n){return x(n,Nu)},On.meanBy=function(n,t){return x(n,je(t,2))},On.min=function(n){
      return n&&n.length?mt(n,Nu,Jt):F},On.minBy=function(n,t){return n&&n.length?mt(n,je(t,2),Jt):F},On.stubArray=Ku,On.stubFalse=Gu,On.stubObject=function(){return{}},On.stubString=function(){return""},On.stubTrue=function(){return true},On.multiply=uc,On.nth=function(n,t){return n&&n.length?tr(n,Ou(t)):F},On.noConflict=function(){return Zn._===this&&(Zn._=pi),this},On.noop=qu,On.now=Jo,On.pad=function(n,t,r){n=zu(n);var e=(t=Ou(t))?T(n):0;return!t||e>=t?n:(t=(t-e)/2,ee(zi(t),r)+n+ee(Ri(t),r))},On.padEnd=function(n,t,r){
      n=zu(n);var e=(t=Ou(t))?T(n):0;return t&&e<t?n+ee(t-e,r):n},On.padStart=function(n,t,r){n=zu(n);var e=(t=Ou(t))?T(n):0;return t&&e<t?ee(t-e,r)+n:n},On.parseInt=function(n,t,r){return r||null==t?t=0:t&&(t=+t),$i(zu(n).replace(an,""),t||0)},On.random=function(n,t,r){if(r&&typeof r!="boolean"&&ze(n,t,r)&&(t=r=F),r===F&&(typeof t=="boolean"?(r=t,t=F):typeof n=="boolean"&&(r=n,n=F)),n===F&&t===F?(n=0,t=1):(n=Eu(n),t===F?(t=n,n=0):t=Eu(t)),n>t){var e=n;n=t,t=e}return r||n%1||t%1?(r=Fi(),Mi(n+r*(t-n+$n("1e-"+((r+"").length-1))),t)):cr(n,t);
    },On.reduce=function(n,t,r){var e=af(n)?h:m,u=3>arguments.length;return e(n,je(t,4),r,u,oo)},On.reduceRight=function(n,t,r){var e=af(n)?p:m,u=3>arguments.length;return e(n,je(t,4),r,u,fo)},On.repeat=function(n,t,r){return t=(r?ze(n,t,r):t===F)?1:Ou(t),ar(zu(n),t)},On.replace=function(){var n=arguments,t=zu(n[0]);return 3>n.length?t:t.replace(n[1],n[2])},On.result=function(n,t,r){t=Rr(t,n);var e=-1,u=t.length;for(u||(u=1,n=F);++e<u;){var i=null==n?F:n[$e(t[e])];i===F&&(e=u,i=r),n=gu(i)?i.call(n):i;
    }return n},On.round=ic,On.runInContext=w,On.sample=function(n){return(af(n)?tt:sr)(n)},On.size=function(n){if(null==n)return 0;if(pu(n))return mu(n)?T(n):n.length;var t=yo(n);return"[object Map]"==t||"[object Set]"==t?n.size:Ht(n).length},On.snakeCase=Tf,On.some=function(n,t,r){var e=af(n)?_:gr;return r&&ze(n,t,r)&&(t=F),e(n,je(t,3))},On.sortedIndex=function(n,t){return dr(n,t)},On.sortedIndexBy=function(n,t,r){return yr(n,t,je(r,2))},On.sortedIndexOf=function(n,t){var r=null==n?0:n.length;if(r){
      var e=dr(n,t);if(e<r&&hu(n[e],t))return e}return-1},On.sortedLastIndex=function(n,t){return dr(n,t,true)},On.sortedLastIndexBy=function(n,t,r){return yr(n,t,je(r,2),true)},On.sortedLastIndexOf=function(n,t){if(null==n?0:n.length){var r=dr(n,t,true)-1;if(hu(n[r],t))return r}return-1},On.startCase=$f,On.startsWith=function(n,t,r){return n=zu(n),r=null==r?0:gt(Ou(r),0,n.length),t=jr(t),n.slice(r,r+t.length)==t},On.subtract=oc,On.sum=function(n){return n&&n.length?k(n,Nu):0},On.sumBy=function(n,t){return n&&n.length?k(n,je(t,2)):0;
    },On.template=function(n,t,r){var e=On.templateSettings;r&&ze(n,t,r)&&(t=F),n=zu(n),t=jf({},t,e,se),r=jf({},t.imports,e.imports,se);var u,i,o=Lu(r),f=I(r,o),c=0;r=t.interpolate||An;var a="__p+='";r=ti((t.escape||An).source+"|"+r.source+"|"+(r===nn?gn:An).source+"|"+(t.evaluate||An).source+"|$","g");var l="sourceURL"in t?"//# sourceURL="+t.sourceURL+"\n":"";if(n.replace(r,function(t,r,e,o,f,l){return e||(e=o),a+=n.slice(c,l).replace(kn,B),r&&(u=true,a+="'+__e("+r+")+'"),f&&(i=true,a+="';"+f+";\n__p+='"),
      e&&(a+="'+((__t=("+e+"))==null?'':__t)+'"),c=l+t.length,t}),a+="';",(t=t.variable)||(a="with(obj){"+a+"}"),a=(i?a.replace(q,""):a).replace(V,"$1").replace(K,"$1;"),a="function("+(t||"obj")+"){"+(t?"":"obj||(obj={});")+"var __t,__p=''"+(u?",__e=_.escape":"")+(i?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+a+"return __p}",t=Pf(function(){return Qu(o,l+"return "+a).apply(F,f)}),t.source=a,vu(t))throw t;return t},On.times=function(n,t){if(n=Ou(n),1>n||9007199254740991<n)return[];
      var r=4294967295,e=Mi(n,4294967295);for(t=je(t),n-=4294967295,e=E(e,t);++r<n;)t(r);return e},On.toFinite=Eu,On.toInteger=Ou,On.toLength=Su,On.toLower=function(n){return zu(n).toLowerCase()},On.toNumber=Iu,On.toSafeInteger=function(n){return n?gt(Ou(n),-9007199254740991,9007199254740991):0===n?n:0},On.toString=zu,On.toUpper=function(n){return zu(n).toUpperCase()},On.trim=function(n,t,r){return(n=zu(n))&&(r||t===F)?n.replace(cn,""):n&&(t=jr(t))?(n=$(n),r=$(t),t=z(n,r),r=W(n,r)+1,zr(n,t,r).join("")):n;
    },On.trimEnd=function(n,t,r){return(n=zu(n))&&(r||t===F)?n.replace(ln,""):n&&(t=jr(t))?(n=$(n),t=W(n,$(t))+1,zr(n,0,t).join("")):n},On.trimStart=function(n,t,r){return(n=zu(n))&&(r||t===F)?n.replace(an,""):n&&(t=jr(t))?(n=$(n),t=z(n,$(t)),zr(n,t).join("")):n},On.truncate=function(n,t){var r=30,e="...";if(bu(t))var u="separator"in t?t.separator:u,r="length"in t?Ou(t.length):r,e="omission"in t?jr(t.omission):e;n=zu(n);var i=n.length;if(Bn.test(n))var o=$(n),i=o.length;if(r>=i)return n;if(i=r-T(e),1>i)return e;
      if(r=o?zr(o,0,i).join(""):n.slice(0,i),u===F)return r+e;if(o&&(i+=r.length-i),_f(u)){if(n.slice(i).search(u)){var f=r;for(u.global||(u=ti(u.source,zu(dn.exec(u))+"g")),u.lastIndex=0;o=u.exec(f);)var c=o.index;r=r.slice(0,c===F?i:c)}}else n.indexOf(jr(u),i)!=i&&(u=r.lastIndexOf(u),-1<u&&(r=r.slice(0,u)));return r+e},On.unescape=function(n){return(n=zu(n))&&J.test(n)?n.replace(G,ut):n},On.uniqueId=function(n){var t=++ai;return zu(n)+t},On.upperCase=Ff,On.upperFirst=Nf,On.each=ru,On.eachRight=eu,On.first=Ke,
    Zu(On,function(){var n={};return Et(On,function(t,r){ci.call(On.prototype,r)||(n[r]=t)}),n}(),{chain:false}),On.VERSION="4.17.4",u("bind bindKey curry curryRight partial partialRight".split(" "),function(n){On[n].placeholder=On}),u(["drop","take"],function(n,t){Mn.prototype[n]=function(r){r=r===F?1:Di(Ou(r),0);var e=this.__filtered__&&!t?new Mn(this):this.clone();return e.__filtered__?e.__takeCount__=Mi(r,e.__takeCount__):e.__views__.push({size:Mi(r,4294967295),type:n+(0>e.__dir__?"Right":"")}),e},Mn.prototype[n+"Right"]=function(t){
      return this.reverse()[n](t).reverse()}}),u(["filter","map","takeWhile"],function(n,t){var r=t+1,e=1==r||3==r;Mn.prototype[n]=function(n){var t=this.clone();return t.__iteratees__.push({iteratee:je(n,3),type:r}),t.__filtered__=t.__filtered__||e,t}}),u(["head","last"],function(n,t){var r="take"+(t?"Right":"");Mn.prototype[n]=function(){return this[r](1).value()[0]}}),u(["initial","tail"],function(n,t){var r="drop"+(t?"":"Right");Mn.prototype[n]=function(){return this.__filtered__?new Mn(this):this[r](1);
    }}),Mn.prototype.compact=function(){return this.filter(Nu)},Mn.prototype.find=function(n){return this.filter(n).head()},Mn.prototype.findLast=function(n){return this.reverse().find(n)},Mn.prototype.invokeMap=lr(function(n,t){return typeof n=="function"?new Mn(this):this.map(function(r){return Dt(r,n,t)})}),Mn.prototype.reject=function(n){return this.filter(su(je(n)))},Mn.prototype.slice=function(n,t){n=Ou(n);var r=this;return r.__filtered__&&(0<n||0>t)?new Mn(r):(0>n?r=r.takeRight(-n):n&&(r=r.drop(n)),
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            t!==F&&(t=Ou(t),r=0>t?r.dropRight(-t):r.take(t-n)),r)},Mn.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},Mn.prototype.toArray=function(){return this.take(4294967295)},Et(Mn.prototype,function(n,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),e=/^(?:head|last)$/.test(t),u=On[e?"take"+("last"==t?"Right":""):t],i=e||/^find/.test(t);u&&(On.prototype[t]=function(){function t(n){return n=u.apply(On,s([n],f)),e&&h?n[0]:n}var o=this.__wrapped__,f=e?[1]:arguments,c=o instanceof Mn,a=f[0],l=c||af(o);
      l&&r&&typeof a=="function"&&1!=a.length&&(c=l=false);var h=this.__chain__,p=!!this.__actions__.length,a=i&&!h,c=c&&!p;return!i&&l?(o=c?o:new Mn(this),o=n.apply(o,f),o.__actions__.push({func:nu,args:[t],thisArg:F}),new zn(o,h)):a&&c?n.apply(this,f):(o=this.thru(t),a?e?o.value()[0]:o.value():o)})}),u("pop push shift sort splice unshift".split(" "),function(n){var t=ui[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:pop|shift)$/.test(n);On.prototype[n]=function(){var n=arguments;if(e&&!this.__chain__){
      var u=this.value();return t.apply(af(u)?u:[],n)}return this[r](function(r){return t.apply(af(r)?r:[],n)})}}),Et(Mn.prototype,function(n,t){var r=On[t];if(r){var e=r.name+"";(Ji[e]||(Ji[e]=[])).push({name:t,func:r})}}),Ji[Xr(F,2).name]=[{name:"wrapper",func:F}],Mn.prototype.clone=function(){var n=new Mn(this.__wrapped__);return n.__actions__=Mr(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=Mr(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=Mr(this.__views__),
      n},Mn.prototype.reverse=function(){if(this.__filtered__){var n=new Mn(this);n.__dir__=-1,n.__filtered__=true}else n=this.clone(),n.__dir__*=-1;return n},Mn.prototype.value=function(){var n,t=this.__wrapped__.value(),r=this.__dir__,e=af(t),u=0>r,i=e?t.length:0;n=i;for(var o=this.__views__,f=0,c=-1,a=o.length;++c<a;){var l=o[c],s=l.size;switch(l.type){case"drop":f+=s;break;case"dropRight":n-=s;break;case"take":n=Mi(n,f+s);break;case"takeRight":f=Di(f,n-s)}}if(n={start:f,end:n},o=n.start,f=n.end,n=f-o,
        o=u?f:o-1,f=this.__iteratees__,c=f.length,a=0,l=Mi(n,this.__takeCount__),!e||!u&&i==n&&l==n)return kr(t,this.__actions__);e=[];n:for(;n--&&a<l;){for(o+=r,u=-1,i=t[o];++u<c;){var h=f[u],s=h.type,h=(0,h.iteratee)(i);if(2==s)i=h;else if(!h){if(1==s)continue n;break n}}e[a++]=i}return e},On.prototype.at=Fo,On.prototype.chain=function(){return Xe(this)},On.prototype.commit=function(){return new zn(this.value(),this.__chain__)},On.prototype.next=function(){this.__values__===F&&(this.__values__=ku(this.value()));
      var n=this.__index__>=this.__values__.length;return{done:n,value:n?F:this.__values__[this.__index__++]}},On.prototype.plant=function(n){for(var t,r=this;r instanceof Sn;){var e=Pe(r);e.__index__=0,e.__values__=F,t?u.__wrapped__=e:t=e;var u=e,r=r.__wrapped__}return u.__wrapped__=n,t},On.prototype.reverse=function(){var n=this.__wrapped__;return n instanceof Mn?(this.__actions__.length&&(n=new Mn(this)),n=n.reverse(),n.__actions__.push({func:nu,args:[Je],thisArg:F}),new zn(n,this.__chain__)):this.thru(Je);
    },On.prototype.toJSON=On.prototype.valueOf=On.prototype.value=function(){return kr(this.__wrapped__,this.__actions__)},On.prototype.first=On.prototype.head,Ai&&(On.prototype[Ai]=tu),On}();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Zn._=it, define(function(){return it})):Vn?((Vn.exports=it)._=it,qn._=it):Zn._=it}).call(this);

// Copyright 2002-2026, University of Colorado Boulder
// This PhET-iO file requires a license
// USE WITHOUT A LICENSE AGREEMENT IS STRICTLY PROHIBITED.
// For licensing, please contact phethelp@colorado.edu

"use strict";(()=>{function e(e,t){return e.hasOwnProperty(t)}var t=e=>0===e.length||e.startsWith("?"),r=(t,r,u,o,a)=>{if(!t)if(o.public)if(n.addWarning(r,u,a),e(o,"defaultValue"))u=o.defaultValue;else{const t=p[o.type];l(e(t,"defaultValue"),"Type must have a default value if the provided schema does not have one."),u=t.defaultValue}else l(t,a);return u},n={warnings:[],get:function(e,t){return this.getForString(e,t,window.location.search)},getAll:function(e){return{...this.getAllForString(e,window.location.search),SCHEMA_MAP:e}},getForString:function(n,a,s){if(!t(s))throw new Error('Query strings should be either the empty string or start with a "?": '+s);const l=a.private&&!(()=>{try{return"true"===localStorage.getItem("phetTeamMember")}catch(e){return!1}})()?[]:u(n,s);o(n,a);let h=i(n,a,l);if(e(a,"validValues")){const e=a.validValues;h=r(c(h,e),n,h,a,`Invalid value supplied for key "${n}": ${h} is not a member of valid values: ${e.join(", ")}`)}else e(a,"isValidValue")&&(h=r(a.isValidValue(h),n,h,a,`Invalid value supplied for key "${n}": ${h}`));let A=p[a.type].isValidValue(h);if("array"===a.type&&Array.isArray(h)){let t=!0;for(let r=0;r<h.length;r++){const n=h[r];if(!p[a.elementSchema.type].isValidValue(n)){t=!1;break}if(e(a.elementSchema,"isValidValue")&&!a.elementSchema.isValidValue(n)){t=!1;break}if(e(a.elementSchema,"validValues")&&!c(n,a.elementSchema.validValues)){t=!1;break}}A=A&&t}return h=r(A,n,h,a,"Invalid value for type, key: "+n),h},getAllForString:function(e,t){const r={};for(const n in e)e.hasOwnProperty(n)&&(r[n]=this.getForString(n,e[n],t));return r},containsKey:function(e){return this.containsKeyForString(e,window.location.search)},containsKeyForString:function(e,r){if(!t(r))throw new Error('Query strings should be either the empty string or start with a "?": '+r);return u(e,r).length>0},deepEquals:function(e,t){if(typeof e!=typeof t)return!1;if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return e===t;if(null===e&&null===t)return!0;if(void 0===e&&void 0===t)return!0;if(null===e&&void 0===t)return!1;if(void 0===e&&null===t)return!1;const r=Object.keys(e),u=Object.keys(t);if(r.length!==u.length)return!1;if(0===r.length)return e===t;for(let o=0;o<r.length;o++){if(r[o]!==u[o])return!1;const a=e[r[o]],s=t[r[o]];if(!n.deepEquals(a,s))return!1}return!0},removeKeyValuePair:function(e,r){if(l("string"==typeof e,"url should be string, but it was: "+typeof e),l("string"==typeof r,"url should be string, but it was: "+typeof r),l(t(e),"queryString should be length 0 or begin with ?"),l(r.length>0,"url should be a string with length > 0"),e.startsWith("?")){const t=[],n=e.substring(1).split("&");for(let e=0;e<n.length;e++){const u=n[e],o=u.split("=");decodeURIComponent(o[0])!==r&&t.push(u)}return t.length>0?"?"+t.join("&"):""}return e},removeKeyValuePairs:function(e,t){for(let r=0;r<t.length;r++)e=this.removeKeyValuePair(e,t[r]);return e},appendQueryString:function(e,t){if((t.startsWith("?")||t.startsWith("&"))&&(t=t.substring(1)),0===t.length)return e;const r=e.includes("?")?"&":"?";return e+r+t},appendQueryStringArray:function(e,t){for(let r=0;r<t.length;r++)e=this.appendQueryString(e,t[r]);return e},getQueryString:function(e){const t=e.indexOf("?");return t>=0?e.substring(t):"?"},addWarning:function(e,t,r){let n=!1;for(let u=0;u<this.warnings.length;u++){const o=this.warnings[u];if(e===o.key&&t===o.value&&r===o.message){n=!0;break}}n||(console.warn(r),this.warnings.push({key:e,value:t,message:r}))},hasWarning:function(e){let t=!1;for(let r=0;r<this.warnings.length&&!t;r++)t=this.warnings[r].key===e;return t},getQueryParametersFromString:function(e){if(e.startsWith("?")){return e.substring(1).split("&")}return[]},getSingleQueryParameterString:function(e,t){const r=this.getQueryString(t),n=this.getQueryParametersFromString(r);for(let u=0;u<n.length;u++){const t=n[u],r=t.split("=");if(decodeURIComponent(r[0])===e)return t}return null}},u=function(e,t){const r=[],n=t.slice(1).split("&");for(let u=0;u<n.length;u++){const t=n[u].split("="),o=t[0],a=t.slice(1).join("=");o===e&&(a?r.push(decodeURIComponent(a)):r.push(null))}return r},o=function(t,r){const n=p[r.type];l(r.hasOwnProperty("type"),"type field is required for key: "+t),l(p.hasOwnProperty(r.type),`invalid type: ${r.type} for key: ${t}`),e(r,"parse")&&l("function"==typeof r.parse,"parse must be a function for key: "+t),l(!(r.hasOwnProperty("validValues")&&r.hasOwnProperty("isValidValue")),"validValues and isValidValue are mutually exclusive for key: "+t),e(r,"validValues")&&l(Array.isArray(r.validValues),"isValidValue must be an array for key: "+t),e(r,"isValidValue")&&l("function"==typeof r.isValidValue,"isValidValue must be a function for key: "+t),e(r,"defaultValue")&&l(n.isValidValue(r.defaultValue),"defaultValue incorrect type: "+t),e(r,"validValues")&&r.validValues.forEach(e=>l(n.isValidValue(e),"validValue incorrect type for key: "+t)),e(r,"defaultValue")&&e(r,"validValues")&&l(c(r.defaultValue,r.validValues),"defaultValue must be a member of validValues, for key: "+t),e(r,"public")&&r.public&&"flag"!==r.type&&l(r.hasOwnProperty("defaultValue"),"defaultValue is required when public: true for key: "+t),s(t,r,n.required,n.optional),"array"===r.type&&a(t,r)},a=function(e,t){t.hasOwnProperty("separator")&&l("string"==typeof t.separator&&1===t.separator.length,`invalid separator: ${t.separator}, for key: ${e}`),l(!t.elementSchema.hasOwnProperty("public"),"Array elements should not declare public; it comes from the array schema itself."),o(e+".element",t.elementSchema)},s=function(e,t,r,n){const u=Object.getOwnPropertyNames(t);r.forEach(t=>{l(u.includes(t),`missing required property: ${t} for key: ${e}`)});const o=r.concat(n);u.forEach(t=>{l("type"===t||o.includes(t),`unsupported property: ${t} for key: ${e}`)})},i=function(e,t,r){let n;if(l(r.length<=1,"query parameter cannot occur multiple times: "+e),"flag"===t.type){n=p[t.type].parse(e,t,r[0])}else if(l(void 0!==r[0]||t.hasOwnProperty("defaultValue"),"missing required query parameter: "+e),void 0===r[0])n=t.defaultValue;else{n=p[t.type].parse(e,t,r[0])}return n},c=function(e,t){let r=!1;for(let u=0;u<t.length&&!r;u++)r=n.deepEquals(t[u],e);return r},l=function(e,t){if(!e)throw console&&console.log&&console.log(t),new Error("Query String Machine Assertion failed: "+t)},p={flag:{required:[],optional:["private","public"],parse:function(e,t,r){return null===r||void 0!==r&&r},isValidValue:e=>!0===e||!1===e,defaultValue:!0},boolean:{required:[],optional:["defaultValue","private","public"],parse:function(e,t,r){return"true"===r||"false"!==r&&r},isValidValue:e=>!0===e||!1===e},number:{required:[],optional:["defaultValue","validValues","isValidValue","private","public"],parse:function(e,t,r){const n=Number(r);return null===r||isNaN(n)?r:n},isValidValue:e=>"number"==typeof e&&!isNaN(e)},string:{required:[],optional:["defaultValue","validValues","isValidValue","private","public"],parse:function(e,t,r){return r},isValidValue:e=>null===e||"string"==typeof e},array:{required:["elementSchema"],optional:["defaultValue","validValues","isValidValue","separator","validValues","private","public"],parse:function(e,t,r){let n;return n=null===r?[]:r.split(t.separator||",").map(r=>i(e,t.elementSchema,[r])),n},isValidValue:e=>Array.isArray(e)||null===e},custom:{required:["parse"],optional:["defaultValue","validValues","isValidValue","private","public"],parse:function(e,t,r){return t.parse(r)},isValidValue:()=>!0}};self.QueryStringMachine=n})(),window.assertions=window.assertions||{},window.assertions.assertionHooks=[],window.assertions.assertFunction=window.assertions.assertFunction||function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];if(!e){r=r.filter(e=>!!r),window.navigator&&"Microsoft Internet Explorer"===window.navigator.appName&&r.push("stack=\n"+(new Error).stack);const e=r.length>0?"Assertion failed: ":"Assertion failed";console&&console.error&&console.error(e,...r),window.assertions.assertionHooks.forEach(e=>e()),window.QueryStringMachine&&QueryStringMachine.containsKey("debugger");const t=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit");t&&(t.writable||t.set&&"function"==typeof t.set)&&(Error.stackTraceLimit=20);const n=new Error(e+r.join("\n "));if(!QueryStringMachine.containsKey("eacontinue"))throw n;console.log(n.stack)}},window.assert=window.assert||null,window.assertSlow=window.assertSlow||null,window.assertions.enableAssert=function(){window.assert=window.assertions.assertFunction,window.console&&window.console.log&&window.console.log("enabling assert")},window.assertions.disableAssert=function(){window.assert=null,window.console&&window.console.log&&window.console.log("disabling assert")},window.assertions.enableAssertSlow=function(){window.assertSlow=window.assertions.assertFunction,window.console&&window.console.log&&window.console.log("enabling assertSlow")},window.assertions.disableAssertSlow=function(){window.assertSlow=null,window.console&&window.console.log&&window.console.log("disabling assertSlow")},(()=>{var __webpack_modules__={970:function(module,__unused_webpack_exports,__webpack_require__){var u;u=function(){var commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==__webpack_require__.g?__webpack_require__.g:"undefined"!=typeof self?self:{},GrammarLocation$4=function(){function e(e,t){this.source=e,this.start=t}return e.prototype.toString=function(){return String(this.source)},e.prototype.offset=function(e){return{line:e.line+this.start.line-1,column:1===e.line?e.column+this.start.column-1:e.column,offset:e.offset+this.start.offset}},e.offsetStart=function(e){return e.source&&"function"==typeof e.source.offset?e.source.offset(e.start):e.start},e.offsetEnd=function(e){return e.source&&"function"==typeof e.source.offset?e.source.offset(e.end):e.end},e}(),grammarLocation=GrammarLocation$4,__extends=commonjsGlobal&&commonjsGlobal.__extends||(extendStatics=function(e,t){return(extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}extendStatics(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),extendStatics,GrammarLocation$3=grammarLocation,setProtoOf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},GrammarError$3=function(e){function t(r,n,u){var o=e.call(this,r)||this;return setProtoOf(o,t.prototype),o.name="GrammarError",o.location=n,void 0===u&&(u=[]),o.diagnostics=u,o.stage=null,o.problems=[["error",r,n,u]],o}return __extends(t,e),t.prototype.toString=function(){var t=e.prototype.toString.call(this);this.location&&(t+="\n at ",void 0!==this.location.source&&null!==this.location.source&&(t+="".concat(this.location.source,":")),t+="".concat(this.location.start.line,":").concat(this.location.start.column));for(var r=0,n=this.diagnostics;r<n.length;r++){var u=n[r];t+="\n from ",void 0!==u.location.source&&null!==u.location.source&&(t+="".concat(u.location.source,":")),t+="".concat(u.location.start.line,":").concat(u.location.start.column,": ").concat(u.message)}return t},t.prototype.format=function(e){var t=e.map((function(e){var t=e.source,r=e.text;return{source:t,text:null!=r?String(r).split(/\r\n|\n|\r/g):[]}}));function r(e,r,n){void 0===n&&(n="");var u="",o=t.find((function(t){return t.source===e.source})),a=e.start,s=GrammarLocation$3.offsetStart(e);if(o){var i=e.end,c=o.text[a.line-1],l=(a.line===i.line?i.column:c.length+1)-a.column||1;n&&(u+="\nnote: ".concat(n)),u+="\n --\x3e ".concat(e.source,":").concat(s.line,":").concat(s.column,"\n").concat("".padEnd(r)," |\n").concat(s.line.toString().padStart(r)," | ").concat(c,"\n").concat("".padEnd(r)," | ").concat("".padEnd(a.column-1)).concat("".padEnd(l,"^"))}else u+="\n at ".concat(e.source,":").concat(s.line,":").concat(s.column),n&&(u+=": ".concat(n));return u}function n(e,t,n,u){void 0===u&&(u=[]);var o=-1/0;o=(o=n?u.reduce((function(e,t){var r=t.location;return Math.max(e,GrammarLocation$3.offsetStart(r).line)}),n.start.line):Math.max.apply(null,u.map((function(e){return e.location.start.line})))).toString().length;var a="".concat(e,": ").concat(t);n&&(a+=r(n,o));for(var s=0,i=u;s<i.length;s++){var c=i[s];a+=r(c.location,o,c.message)}return a}return this.problems.filter((function(e){return"info"!==e[0]})).map((function(e){return n.apply(void 0,e)})).join("\n\n")},t}(Error),grammarError=GrammarError$3,__spreadArray$3=commonjsGlobal&&commonjsGlobal.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,u=0,o=t.length;u<o;u++)!n&&u in t||(n||(n=Array.prototype.slice.call(t,0,u)),n[u]=t[u]);return e.concat(n||Array.prototype.slice.call(t))},visitor$b={build:function(e){function t(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return e[t.type].apply(e,__spreadArray$3([t],r,!1))}function r(){}function n(e){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return t.apply(void 0,__spreadArray$3([e.expression],r,!1))}function u(e){return function(r){for(var n=[],u=1;u<arguments.length;u++)n[u-1]=arguments[u];r[e].forEach((function(e){return t.apply(void 0,__spreadArray$3([e],n,!1))}))}}var o={grammar:function(e){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];e.topLevelInitializer&&t.apply(void 0,__spreadArray$3([e.topLevelInitializer],r,!1)),e.initializer&&t.apply(void 0,__spreadArray$3([e.initializer],r,!1)),e.rules.forEach((function(e){return t.apply(void 0,__spreadArray$3([e],r,!1))}))},top_level_initializer:r,initializer:r,rule:n,named:n,choice:u("alternatives"),action:n,sequence:u("elements"),labeled:n,text:n,simple_and:n,simple_not:n,optional:n,zero_or_more:n,one_or_more:n,repeated:function(e){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return e.delimiter&&t.apply(void 0,__spreadArray$3([e.delimiter],r,!1)),t.apply(void 0,__spreadArray$3([e.expression],r,!1))},group:n,semantic_and:r,semantic_not:r,rule_ref:r,literal:r,class:r,any:r};return Object.keys(o).forEach((function(t){Object.prototype.hasOwnProperty.call(e,t)||(e[t]=o[t])})),t}},visitor_1=visitor$b,visitor$a=visitor_1,asts$7={findRule:function(e,t){for(var r=0;r<e.rules.length;r++)if(e.rules[r].name===t)return e.rules[r]},indexOfRule:function(e,t){for(var r=0;r<e.rules.length;r++)if(e.rules[r].name===t)return r;return-1},alwaysConsumesOnSuccess:function(e,t){function r(){return!0}function n(){return!1}var u=visitor$a.build({choice:function(e){return e.alternatives.every(u)},sequence:function(e){return e.elements.some(u)},simple_and:n,simple_not:n,optional:n,zero_or_more:n,repeated:function(e){var t=e.min?e.min:e.max;return!("constant"!==t.type||0===t.value||!u(e.expression)&&!(t.value>1&&e.delimiter&&u(e.delimiter)))},semantic_and:n,semantic_not:n,rule_ref:function(t){var r=asts$7.findRule(e,t.name);return r?u(r):void 0},literal:function(e){return""!==e.value},class:r,any:r});return u(t)}},asts_1=asts$7,opcodes={PUSH:0,PUSH_EMPTY_STRING:35,PUSH_UNDEFINED:1,PUSH_NULL:2,PUSH_FAILED:3,PUSH_EMPTY_ARRAY:4,PUSH_CURR_POS:5,POP:6,POP_CURR_POS:7,POP_N:8,NIP:9,APPEND:10,WRAP:11,TEXT:12,PLUCK:36,IF:13,IF_ERROR:14,IF_NOT_ERROR:15,IF_LT:30,IF_GE:31,IF_LT_DYNAMIC:32,IF_GE_DYNAMIC:33,WHILE_NOT_ERROR:16,MATCH_ANY:17,MATCH_STRING:18,MATCH_STRING_IC:19,MATCH_CHAR_CLASS:20,MATCH_REGEXP:20,ACCEPT_N:21,ACCEPT_STRING:22,FAIL:23,LOAD_SAVED_POS:24,UPDATE_SAVED_POS:25,CALL:26,RULE:27,SILENT_FAILS_ON:28,SILENT_FAILS_OFF:29,SOURCE_MAP_PUSH:37,SOURCE_MAP_POP:38,SOURCE_MAP_LABEL_PUSH:39,SOURCE_MAP_LABEL_POP:40},opcodes_1=opcodes,visitor$9=visitor_1,asts$6=asts_1,GrammarError$2=grammarError,ALWAYS_MATCH$1=1,SOMETIMES_MATCH$1=0,NEVER_MATCH$1=-1;function inferenceMatchResult$1(e){function t(e){return e.match=SOMETIMES_MATCH$1}function r(e){return o(e.expression),e.match=ALWAYS_MATCH$1}function n(e){return e.match=o(e.expression)}function u(e,t){for(var r=e.length,n=0,u=0,a=0;a<r;++a){var s=o(e[a]);s===ALWAYS_MATCH$1&&++n,s===NEVER_MATCH$1&&++u}return n===r?ALWAYS_MATCH$1:t?u===r?NEVER_MATCH$1:SOMETIMES_MATCH$1:u>0?NEVER_MATCH$1:SOMETIMES_MATCH$1}var o=visitor$9.build({rule:function(e){var t=void 0,r=0;if(void 0===e.match){e.match=SOMETIMES_MATCH$1;do{if(t=e.match,e.match=o(e.expression),++r>6)throw new GrammarError$2("Infinity cycle detected when trying to evaluate node match result",e.location)}while(t!==e.match)}return e.match},named:n,choice:function(e){return e.match=u(e.alternatives,!0)},action:n,sequence:function(e){return e.match=u(e.elements,!1)},labeled:n,text:n,simple_and:n,simple_not:function(e){return e.match=-o(e.expression)},optional:r,zero_or_more:r,one_or_more:n,repeated:function(e){var t=o(e.expression),r=e.delimiter?o(e.delimiter):NEVER_MATCH$1,n=e.min?e.min:e.max;return"constant"!==n.type||"constant"!==e.max.type?e.match=SOMETIMES_MATCH$1:0===e.max.value||null!==e.max.value&&n.value>e.max.value?e.match=NEVER_MATCH$1:t===NEVER_MATCH$1?e.match=0===n.value?ALWAYS_MATCH$1:NEVER_MATCH$1:t===ALWAYS_MATCH$1?e.delimiter&&n.value>=2?e.match=r:e.match=ALWAYS_MATCH$1:e.delimiter&&n.value>=2?e.match=r===NEVER_MATCH$1?NEVER_MATCH$1:SOMETIMES_MATCH$1:e.match=0===n.value?ALWAYS_MATCH$1:SOMETIMES_MATCH$1},group:n,semantic_and:t,semantic_not:t,rule_ref:function(t){var r=asts$6.findRule(e,t.name);return t.match=o(r)},literal:function(e){var t=0===e.value.length?ALWAYS_MATCH$1:SOMETIMES_MATCH$1;return e.match=t},class:function(e){var t=0===e.parts.length?NEVER_MATCH$1:SOMETIMES_MATCH$1;return e.match=t},any:t});o(e)}inferenceMatchResult$1.ALWAYS_MATCH=ALWAYS_MATCH$1,inferenceMatchResult$1.SOMETIMES_MATCH=SOMETIMES_MATCH$1,inferenceMatchResult$1.NEVER_MATCH=NEVER_MATCH$1;var inferenceMatchResult_1=inferenceMatchResult$1,__spreadArray$2=commonjsGlobal&&commonjsGlobal.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,u=0,o=t.length;u<o;u++)!n&&u in t||(n||(n=Array.prototype.slice.call(t,0,u)),n[u]=t[u]);return e.concat(n||Array.prototype.slice.call(t))},asts$5=asts_1,op$1=opcodes_1,visitor$8=visitor_1,_a$1=inferenceMatchResult_1,ALWAYS_MATCH=_a$1.ALWAYS_MATCH,SOMETIMES_MATCH=_a$1.SOMETIMES_MATCH,NEVER_MATCH=_a$1.NEVER_MATCH;function generateBytecode$1(e,t){var r=[],n=[],u=[],o=[],a=[];function s(e){var t=r.indexOf(e);return-1===t?r.push(e)-1:t}function i(e){var t=JSON.stringify(e),r=u.findIndex((function(e){return JSON.stringify(e)===t}));return-1===r?u.push(e)-1:r}function c(e,t,r){var n={predicate:e,params:t,body:r.code,location:r.codeLocation},u=JSON.stringify(n),a=o.findIndex((function(e){return JSON.stringify(e)===u}));return-1===a?o.push(n)-1:a}function l(e){return a.push(e)-1}function p(e){var t={};return Object.keys(e).forEach((function(r){t[r]=e[r]})),t}function h(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return e.concat.apply(e,t)}function A(e,t,r,n){return e===ALWAYS_MATCH?r:e===NEVER_MATCH?n:t.concat([r.length,n.length],r,n)}function f(e,t,r,n){var u=Object.keys(r).map((function(e){return n-r[e]}));return[op$1.CALL,e,t,u.length].concat(u)}function d(e,t,r){var n=0|e.match;return h([op$1.PUSH_CURR_POS],[op$1.SILENT_FAILS_ON],_(e,{sp:r.sp+1,env:p(r.env),action:null}),[op$1.SILENT_FAILS_OFF],A(t?-n:n,[t?op$1.IF_ERROR:op$1.IF_NOT_ERROR],h([op$1.POP],[t?op$1.POP:op$1.POP_CURR_POS],[op$1.PUSH_UNDEFINED]),h([op$1.POP],[t?op$1.POP_CURR_POS:op$1.POP],[op$1.PUSH_FAILED])))}function E(e,t,r){var n=c(!0,Object.keys(r.env),e);return h([op$1.UPDATE_SAVED_POS],f(n,0,r.env,r.sp),A(0|e.match,[op$1.IF],h([op$1.POP],t?[op$1.PUSH_FAILED]:[op$1.PUSH_UNDEFINED]),h([op$1.POP],t?[op$1.PUSH_UNDEFINED]:[op$1.PUSH_FAILED])))}function g(e){return t=[op$1.WHILE_NOT_ERROR],r=h([op$1.APPEND],e),t.concat([r.length],r);var t,r}function m(e,t,r,n){switch(e.type){case"constant":return{pre:[],post:[],sp:r};case"variable":return e.sp=n+r-t[e.value],{pre:[],post:[],sp:r};case"function":return e.sp=n,{pre:f(c(!0,Object.keys(t),{code:e.value,codeLocation:e.codeLocation}),0,t,r),post:[op$1.NIP],sp:r+1};default:throw new Error('Unknown boundary type "'.concat(e.type,'" for the "repeated" node'))}}function C(e,t){if(null!==t.value){var r="constant"===t.type?[op$1.IF_GE,t.value]:[op$1.IF_GE_DYNAMIC,t.sp];return A(SOMETIMES_MATCH,r,[op$1.PUSH_FAILED],e)}return e}var y,_=(y={grammar:function(e){e.rules.forEach(_),e.literals=r,e.classes=n,e.expectations=u,e.functions=o,e.locations=a},rule:function(e){e.bytecode=_(e.expression,{sp:-1,env:{},pluck:[],action:null})},named:function(e,t){var r=0|e.match,n=r===NEVER_MATCH?null:i({type:"rule",value:e.name});return h([op$1.SILENT_FAILS_ON],_(e.expression,t),[op$1.SILENT_FAILS_OFF],A(r,[op$1.IF_ERROR],[op$1.FAIL,n],[]))},choice:function(e,t){return function e(t,r){var n=0|t[0].match,u=_(t[0],{sp:r.sp,env:p(r.env),action:null});return n===ALWAYS_MATCH?u:h(u,t.length>1?A(SOMETIMES_MATCH,[op$1.IF_ERROR],h([op$1.POP],e(t.slice(1),r)),[]):[])}(e.alternatives,t)},action:function(e,t){var r=p(t.env),n="sequence"!==e.expression.type||0===e.expression.elements.length,u=_(e.expression,{sp:t.sp+(n?1:0),env:r,action:e}),o=0|e.expression.match,a=n&&o!==NEVER_MATCH?c(!1,Object.keys(r),e):null;return n?h([op$1.PUSH_CURR_POS],u,A(o,[op$1.IF_NOT_ERROR],h([op$1.LOAD_SAVED_POS,1],f(a,1,r,t.sp+2)),[]),[op$1.NIP]):u},sequence:function(e,t){return h([op$1.PUSH_CURR_POS],function t(r,n){if(r.length>0){var u=e.elements.length-r.length+1;return h(_(r[0],{sp:n.sp,env:n.env,pluck:n.pluck,action:null}),A(0|r[0].match,[op$1.IF_NOT_ERROR],t(r.slice(1),{sp:n.sp+1,env:n.env,pluck:n.pluck,action:n.action}),h(u>1?[op$1.POP_N,u]:[op$1.POP],[op$1.POP_CURR_POS],[op$1.PUSH_FAILED])))}if(n.pluck.length>0)return h([op$1.PLUCK,e.elements.length+1,n.pluck.length],n.pluck.map((function(e){return n.sp-e})));if(n.action){var o=c(!1,Object.keys(n.env),n.action);return h([op$1.LOAD_SAVED_POS,e.elements.length],f(o,e.elements.length+1,n.env,n.sp))}return h([op$1.WRAP,e.elements.length],[op$1.NIP])}(e.elements,{sp:t.sp+1,env:t.env,pluck:[],action:t.action}))},labeled:function(e,r){var n=r.env,u=e.label,o=r.sp+1;u&&(n=p(r.env),r.env[e.label]=o),e.pick&&r.pluck.push(o);var a=_(e.expression,{sp:r.sp,env:n,action:null});return u&&e.labelLocation&&t&&"source-and-map"===t.output?h([op$1.SOURCE_MAP_LABEL_PUSH,o,s(u),l(e.labelLocation)],a,[op$1.SOURCE_MAP_LABEL_POP,o]):a},text:function(e,t){return h([op$1.PUSH_CURR_POS],_(e.expression,{sp:t.sp+1,env:p(t.env),action:null}),A(0|e.match,[op$1.IF_NOT_ERROR],h([op$1.POP],[op$1.TEXT]),[op$1.NIP]))},simple_and:function(e,t){return d(e.expression,!1,t)},simple_not:function(e,t){return d(e.expression,!0,t)},optional:function(e,t){return h(_(e.expression,{sp:t.sp,env:p(t.env),action:null}),A(-(0|e.expression.match),[op$1.IF_ERROR],h([op$1.POP],[op$1.PUSH_NULL]),[]))},zero_or_more:function(e,t){var r=_(e.expression,{sp:t.sp+1,env:p(t.env),action:null});return h([op$1.PUSH_EMPTY_ARRAY],r,g(r),[op$1.POP])},one_or_more:function(e,t){var r=_(e.expression,{sp:t.sp+1,env:p(t.env),action:null});return h([op$1.PUSH_EMPTY_ARRAY],r,A(0|e.expression.match,[op$1.IF_NOT_ERROR],h(g(r),[op$1.POP]),h([op$1.POP],[op$1.POP],[op$1.PUSH_FAILED])))},repeated:function(e,t){var r=e.min?e.min:e.max,n="constant"!==r.type||r.value>0,u="constant"!==e.max.type&&null!==e.max.value,o=n?2:1,a=e.min?m(e.min,t.env,t.sp,2+("function"===e.max.type?1:0)):{pre:[],post:[],sp:t.sp},s=m(e.max,t.env,a.sp,o),i=_(e.expression,{sp:s.sp+o,env:p(t.env),action:null}),c=null!==e.delimiter?_(e.expression,{sp:s.sp+o+1,env:p(t.env),action:null}):i,l=C(function(e,t,r,n,u){return e?h([op$1.PUSH_CURR_POS],_(e,{sp:n.sp+u+1,env:p(n.env),action:null}),A(0|e.match,[op$1.IF_NOT_ERROR],h([op$1.POP],r,A(-t,[op$1.IF_ERROR],[op$1.POP,op$1.POP_CURR_POS,op$1.PUSH_FAILED],[op$1.NIP])),[op$1.NIP])):r}(e.delimiter,0|e.expression.match,c,t,o),e.max),f=u?C(i,e.max):i,d=h(n?[op$1.PUSH_CURR_POS]:[],[op$1.PUSH_EMPTY_ARRAY],f,g(l),[op$1.POP]);return h(a.pre,s.pre,n?function(e,t){var r="constant"===t.type?[op$1.IF_LT,t.value]:[op$1.IF_LT_DYNAMIC,t.sp];return h(e,A(SOMETIMES_MATCH,r,[op$1.POP,op$1.POP_CURR_POS,op$1.PUSH_FAILED],[op$1.NIP]))}(d,r):d,s.post,a.post)},group:function(e,t){return _(e.expression,{sp:t.sp,env:p(t.env),action:null})},semantic_and:function(e,t){return E(e,!1,t)},semantic_not:function(e,t){return E(e,!0,t)},rule_ref:function(t){return[op$1.RULE,asts$5.indexOfRule(e,t.name)]},literal:function(e){if(e.value.length>0){var t=0|e.match,r=t===SOMETIMES_MATCH||t===ALWAYS_MATCH&&!e.ignoreCase?s(e.ignoreCase?e.value.toLowerCase():e.value):null,n=t!==ALWAYS_MATCH?i({type:"literal",value:e.value,ignoreCase:e.ignoreCase}):null;return A(t,e.ignoreCase?[op$1.MATCH_STRING_IC,r]:[op$1.MATCH_STRING,r],e.ignoreCase?[op$1.ACCEPT_N,e.value.length]:[op$1.ACCEPT_STRING,r],[op$1.FAIL,n])}return[op$1.PUSH_EMPTY_STRING]},class:function(e){var t=0|e.match,r=t===SOMETIMES_MATCH?function(e){var t={value:e.parts,inverted:e.inverted,ignoreCase:e.ignoreCase},r=JSON.stringify(t),u=n.findIndex((function(e){return JSON.stringify(e)===r}));return-1===u?n.push(t)-1:u}(e):null,u=t!==ALWAYS_MATCH?i({type:"class",value:e.parts,inverted:e.inverted,ignoreCase:e.ignoreCase}):null;return A(t,[op$1.MATCH_CHAR_CLASS,r],[op$1.ACCEPT_N,1],[op$1.FAIL,u])},any:function(e){var t=0|e.match,r=t!==ALWAYS_MATCH?i({type:"any"}):null;return A(t,[op$1.MATCH_ANY],[op$1.ACCEPT_N,1],[op$1.FAIL,r])}},t&&"source-and-map"===t.output&&Object.entries(y).forEach((function(e){var t=e[0],r=e[1];y[t]=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var u=r.apply(void 0,__spreadArray$2([e],t,!1));return void 0!==u&&e.location?h([op$1.SOURCE_MAP_PUSH,l(e.location)],u,[op$1.SOURCE_MAP_POP]):u}})),visitor$8.build(y));_(e)}var generateBytecode_1=generateBytecode$1,sourceMap={},sourceMapGenerator={},base64Vlq={},base64$3={};const intToCharMap="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");base64$3.encode=function(e){if(0<=e&&e<intToCharMap.length)return intToCharMap[e];throw new TypeError("Must be between 0 and 63: "+e)};const base64$2=base64$3,VLQ_BASE_SHIFT=5,VLQ_BASE=1<<VLQ_BASE_SHIFT,VLQ_BASE_MASK=VLQ_BASE-1,VLQ_CONTINUATION_BIT=VLQ_BASE;function toVLQSigned(e){return e<0?1+(-e<<1):0+(e<<1)}base64Vlq.encode=function(e){let t,r="",n=toVLQSigned(e);do{t=n&VLQ_BASE_MASK,n>>>=VLQ_BASE_SHIFT,n>0&&(t|=VLQ_CONTINUATION_BIT),r+=base64$2.encode(t)}while(n>0);return r};var util$3={};function getArg(e,t,r){if(t in e)return e[t];if(3===arguments.length)return r;throw new Error('"'+t+'" is a required argument.')}util$3.getArg=getArg;const supportsNullProto=!("__proto__"in Object.create(null));function identity(e){return e}function toSetString(e){return isProtoString(e)?"$"+e:e}function fromSetString(e){return isProtoString(e)?e.slice(1):e}function isProtoString(e){if(!e)return!1;const t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(let r=t-10;r>=0;r--)if(36!==e.charCodeAt(r))return!1;return!0}function strcmp(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}function compareByGeneratedPositionsInflated(e,t){let r=e.generatedLine-t.generatedLine;return 0!==r?r:(r=e.generatedColumn-t.generatedColumn,0!==r?r:(r=strcmp(e.source,t.source),0!==r?r:(r=e.originalLine-t.originalLine,0!==r?r:(r=e.originalColumn-t.originalColumn,0!==r?r:strcmp(e.name,t.name)))))}util$3.toSetString=supportsNullProto?identity:toSetString,util$3.fromSetString=supportsNullProto?identity:fromSetString,util$3.compareByGeneratedPositionsInflated=compareByGeneratedPositionsInflated;const PROTOCOL="http:",PROTOCOL_AND_HOST=PROTOCOL+"//host";function createSafeHandler(e){return t=>{const r=getURLType(t),n=buildSafeBase(t),u=new URL(t,n);e(u);const o=u.toString();return"absolute"===r?o:"scheme-relative"===r?o.slice(PROTOCOL.length):"path-absolute"===r?o.slice(PROTOCOL_AND_HOST.length):computeRelativeURL(n,o)}}function withBase(e,t){return new URL(e,t).toString()}function buildUniqueSegment(e,t){let r=0;for(;;){const n=e+r++;if(-1===t.indexOf(n))return n}}function buildSafeBase(e){const t=e.split("..").length-1,r=buildUniqueSegment("p",e);let n=PROTOCOL_AND_HOST+"/";for(let u=0;u<t;u++)n+=r+"/";return n}const ABSOLUTE_SCHEME=/^[A-Za-z0-9\+\-\.]+:/;function getURLType(e){return"/"===e[0]?"/"===e[1]?"scheme-relative":"path-absolute":ABSOLUTE_SCHEME.test(e)?"absolute":"path-relative"}function computeRelativeURL(e,t){"string"==typeof e&&(e=new URL(e)),"string"==typeof t&&(t=new URL(t));const r=t.pathname.split("/"),n=e.pathname.split("/");for(n.length>0&&!n[n.length-1]&&n.pop();r.length>0&&n.length>0&&r[0]===n[0];)r.shift(),n.shift();return n.map(()=>"..").concat(r).join("/")+t.search+t.hash}const ensureDirectory=createSafeHandler(e=>{e.pathname=e.pathname.replace(/\/?$/,"/")}),normalize=createSafeHandler(e=>{});function join(e,t){const r=getURLType(t),n=getURLType(e);if(e=ensureDirectory(e),"absolute"===r)return withBase(t,void 0);if("absolute"===n)return withBase(t,e);if("scheme-relative"===r)return normalize(t);if("scheme-relative"===n)return withBase(t,withBase(e,PROTOCOL_AND_HOST)).slice(PROTOCOL.length);if("path-absolute"===r)return normalize(t);if("path-absolute"===n)return withBase(t,withBase(e,PROTOCOL_AND_HOST)).slice(PROTOCOL_AND_HOST.length);const u=buildSafeBase(t+e);return computeRelativeURL(u,withBase(t,withBase(e,u)))}function relative(e,t){const r=relativeIfPossible(e,t);return"string"==typeof r?r:normalize(t)}function relativeIfPossible(e,t){if(getURLType(e)!==getURLType(t))return null;const r=buildSafeBase(e+t),n=new URL(e,r),u=new URL(t,r);try{new URL("",u.toString())}catch(e){return null}return u.protocol!==n.protocol||u.user!==n.user||u.password!==n.password||u.hostname!==n.hostname||u.port!==n.port?null:computeRelativeURL(n,u)}util$3.normalize=normalize,util$3.join=join,util$3.relative=relative;var arraySet={};let ArraySet$1=class e{static fromArray(t,r){const n=new e;for(let e=0,u=t.length;e<u;e++)n.add(t[e],r);return n}size(){return this._set.size}add(e,t){const r=this.has(e),n=this._array.length;r&&!t||this._array.push(e),r||this._set.set(e,n)}has(e){return this._set.has(e)}indexOf(e){const t=this._set.get(e);if(t>=0)return t;throw new Error('"'+e+'" is not in the set.')}at(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)}toArray(){return this._array.slice()}constructor(){this._array=[],this._set=new Map}};arraySet.ArraySet=ArraySet$1;var mappingList={};const util$2=util$3;function generatedPositionAfter(e,t){const r=e.generatedLine,n=t.generatedLine,u=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=u||util$2.compareByGeneratedPositionsInflated(e,t)<=0}let MappingList$1=class{unsortedForEach(e,t){this._array.forEach(e,t)}add(e){generatedPositionAfter(this._last,e)?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))}toArray(){return this._sorted||(this._array.sort(util$2.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}};mappingList.MappingList=MappingList$1;const base64VLQ=base64Vlq,util$1=util$3,ArraySet=arraySet.ArraySet,MappingList=mappingList.MappingList;let SourceMapGenerator$1=class e{static fromSourceMap(t){const r=t.sourceRoot,n=new e({file:t.file,sourceRoot:r});return t.eachMapping((function(e){const t={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(t.source=e.source,null!=r&&(t.source=util$1.relative(r,t.source)),t.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(t.name=e.name)),n.addMapping(t)})),t.sources.forEach((function(e){let u=e;null!=r&&(u=util$1.relative(r,e)),n._sources.has(u)||n._sources.add(u);const o=t.sourceContentFor(e);null!=o&&n.setSourceContent(e,o)})),n}addMapping(e){const t=util$1.getArg(e,"generated"),r=util$1.getArg(e,"original",null);let n=util$1.getArg(e,"source",null),u=util$1.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,r,n,u),null!=n&&(n=String(n),this._sources.has(n)||this._sources.add(n)),null!=u&&(u=String(u),this._names.has(u)||this._names.add(u)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:r&&r.line,originalColumn:r&&r.column,source:n,name:u})}setSourceContent(e,t){let r=e;null!=this._sourceRoot&&(r=util$1.relative(this._sourceRoot,r)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[util$1.toSetString(r)]=t):this._sourcesContents&&(delete this._sourcesContents[util$1.toSetString(r)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))}applySourceMap(e,t,r){let n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}const u=this._sourceRoot;null!=u&&(n=util$1.relative(u,n));const o=this._mappings.toArray().length>0?new ArraySet:this._sources,a=new ArraySet;this._mappings.unsortedForEach((function(t){if(t.source===n&&null!=t.originalLine){const n=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=n.source&&(t.source=n.source,null!=r&&(t.source=util$1.join(r,t.source)),null!=u&&(t.source=util$1.relative(u,t.source)),t.originalLine=n.line,t.originalColumn=n.column,null!=n.name&&(t.name=n.name))}const s=t.source;null==s||o.has(s)||o.add(s);const i=t.name;null==i||a.has(i)||a.add(i)}),this),this._sources=o,this._names=a,e.sources.forEach((function(t){const n=e.sourceContentFor(t);null!=n&&(null!=r&&(t=util$1.join(r,t)),null!=u&&(t=util$1.relative(u,t)),this.setSourceContent(t,n))}),this)}_validateMapping(e,t,r,n){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0&&!t&&!r&&!n);else if(!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))}_serializeMappings(){let e,t,r,n,u=0,o=1,a=0,s=0,i=0,c=0,l="";const p=this._mappings.toArray();for(let h=0,A=p.length;h<A;h++){if(t=p[h],e="",t.generatedLine!==o)for(u=0;t.generatedLine!==o;)e+=";",o++;else if(h>0){if(!util$1.compareByGeneratedPositionsInflated(t,p[h-1]))continue;e+=","}e+=base64VLQ.encode(t.generatedColumn-u),u=t.generatedColumn,null!=t.source&&(n=this._sources.indexOf(t.source),e+=base64VLQ.encode(n-c),c=n,e+=base64VLQ.encode(t.originalLine-1-s),s=t.originalLine-1,e+=base64VLQ.encode(t.originalColumn-a),a=t.originalColumn,null!=t.name&&(r=this._names.indexOf(t.name),e+=base64VLQ.encode(r-i),i=r)),l+=e}return l}_generateSourcesContent(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=util$1.relative(t,e));const r=util$1.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null}),this)}toJSON(){const e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e}toString(){return JSON.stringify(this.toJSON())}constructor(e){e||(e={}),this._file=util$1.getArg(e,"file",null),this._sourceRoot=util$1.getArg(e,"sourceRoot",null),this._skipValidation=util$1.getArg(e,"skipValidation",!1),this._sources=new ArraySet,this._names=new ArraySet,this._mappings=new MappingList,this._sourcesContents=null}};SourceMapGenerator$1.prototype._version=3,sourceMapGenerator.SourceMapGenerator=SourceMapGenerator$1;var sourceNode={};const SourceMapGenerator=sourceMapGenerator.SourceMapGenerator,util=util$3,REGEX_NEWLINE=/(\r?\n)/,NEWLINE_CODE=10,isSourceNode="$$$isSourceNode$$$";let SourceNode$2=class e{static fromStringWithSourceMap(t,r,n){const u=new e,o=t.split(REGEX_NEWLINE);let a=0;const s=function(){return e()+(e()||"");function e(){return a<o.length?o[a++]:void 0}};let i,c=1,l=0,p=null;return r.eachMapping((function(e){if(null!==p){if(!(c<e.generatedLine)){i=o[a]||"";const t=i.substr(0,e.generatedColumn-l);return o[a]=i.substr(e.generatedColumn-l),l=e.generatedColumn,h(p,t),void(p=e)}h(p,s()),c++,l=0}for(;c<e.generatedLine;)u.add(s()),c++;l<e.generatedColumn&&(i=o[a]||"",u.add(i.substr(0,e.generatedColumn)),o[a]=i.substr(e.generatedColumn),l=e.generatedColumn),p=e}),this),a<o.length&&(p&&h(p,s()),u.add(o.splice(a).join(""))),r.sources.forEach((function(e){const t=r.sourceContentFor(e);null!=t&&(null!=n&&(e=util.join(n,e)),u.setSourceContent(e,t))})),u;function h(t,r){if(null===t||void 0===t.source)u.add(r);else{const o=n?util.join(n,t.source):t.source;u.add(new e(t.originalLine,t.originalColumn,o,r,t.name))}}}add(e){if(Array.isArray(e))e.forEach((function(e){this.add(e)}),this);else{if(!e[isSourceNode]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this}prepend(e){if(Array.isArray(e))for(let t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[isSourceNode]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this}walk(e){let t;for(let r=0,n=this.children.length;r<n;r++)t=this.children[r],t[isSourceNode]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})}join(e){let t,r;const n=this.children.length;if(n>0){for(t=[],r=0;r<n-1;r++)t.push(this.children[r]),t.push(e);t.push(this.children[r]),this.children=t}return this}replaceRight(e,t){const r=this.children[this.children.length-1];return r[isSourceNode]?r.replaceRight(e,t):"string"==typeof r?this.children[this.children.length-1]=r.replace(e,t):this.children.push("".replace(e,t)),this}setSourceContent(e,t){this.sourceContents[util.toSetString(e)]=t}walkSourceContents(e){for(let r=0,n=this.children.length;r<n;r++)this.children[r][isSourceNode]&&this.children[r].walkSourceContents(e);const t=Object.keys(this.sourceContents);for(let r=0,n=t.length;r<n;r++)e(util.fromSetString(t[r]),this.sourceContents[t[r]])}toString(){let e="";return this.walk((function(t){e+=t})),e}toStringWithSourceMap(e){const t={code:"",line:1,column:0},r=new SourceMapGenerator(e);let n=!1,u=null,o=null,a=null,s=null;return this.walk((function(e,i){t.code+=e,null!==i.source&&null!==i.line&&null!==i.column?(u===i.source&&o===i.line&&a===i.column&&s===i.name||r.addMapping({source:i.source,original:{line:i.line,column:i.column},generated:{line:t.line,column:t.column},name:i.name}),u=i.source,o=i.line,a=i.column,s=i.name,n=!0):n&&(r.addMapping({generated:{line:t.line,column:t.column}}),u=null,n=!1);for(let o=0,a=e.length;o<a;o++)e.charCodeAt(o)===NEWLINE_CODE?(t.line++,t.column=0,o+1===a?(u=null,n=!1):n&&r.addMapping({source:i.source,original:{line:i.line,column:i.column},generated:{line:t.line,column:t.column},name:i.name})):t.column++})),this.walkSourceContents((function(e,t){r.setSourceContent(e,t)})),{code:t.code,map:r}}constructor(e,t,r,n,u){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==r?null:r,this.name=null==u?null:u,this[isSourceNode]=!0,null!=n&&this.add(n)}};sourceNode.SourceNode=SourceNode$2,sourceMap.SourceMapGenerator=sourceMapGenerator.SourceMapGenerator,sourceMap.SourceNode=sourceNode.SourceNode;var SourceNode$1=sourceMap.SourceNode,GrammarLocation$2=grammarLocation,Stack$1=function(){function e(e,t,r,n){this.sp=-1,this.maxSp=-1,this.varName=t,this.ruleName=e,this.type=r,this.bytecode=n,this.labels={},this.sourceMapStack=[]}return e.prototype.name=function(e){if(e<0)throw new RangeError("Rule '".concat(this.ruleName,"': The variable stack underflow: attempt to use a variable '").concat(this.varName,"<x>' at an index ").concat(e,".\nBytecode: ").concat(this.bytecode));return this.varName+e},e.sourceNode=function(e,t,r){var n=GrammarLocation$2.offsetStart(e);return new SourceNode$1(n.line,n.column?n.column-1:null,String(e.source),t,r)},e.prototype.push=function(t){++this.sp>this.maxSp&&(this.maxSp=this.sp);var r=this.labels[this.sp],n=[this.name(this.sp)," = ",t,";"];if(r){if(this.sourceMapStack.length){var u=e.sourceNode(r.location,n.splice(0,2),r.label),o=this.sourceMapPopInternal(),a=o.parts,s=o.location,i=s.start.offset<r.location.end.offset?{start:r.location.end,end:s.end,source:s.source}:s,c=e.sourceNode(i,n.concat("\n"));return this.sourceMapStack.push([a,a.length+1,s]),new SourceNode$1(null,null,r.location.source,[u,c])}return e.sourceNode(r.location,n.concat("\n"))}return n.join("")},e.prototype.pop=function(e){var t=this;return void 0!==e?(this.sp-=e,Array.from({length:e},(function(e,r){return t.name(t.sp+1+r)}))):this.name(this.sp--)},e.prototype.top=function(){return this.name(this.sp)},e.prototype.index=function(e){if(e<0)throw new RangeError("Rule '".concat(this.ruleName,"': The variable stack overflow: attempt to get a variable at a negative index ").concat(e,".\nBytecode: ").concat(this.bytecode));return this.name(this.sp-e)},e.prototype.result=function(){if(this.maxSp<0)throw new RangeError("Rule '".concat(this.ruleName,"': The variable stack is empty, can't get the result.\nBytecode: ").concat(this.bytecode));return this.name(0)},e.prototype.defines=function(){var e=this;return this.maxSp<0?"":this.type+" "+Array.from({length:this.maxSp+1},(function(t,r){return e.name(r)})).join(", ")+";"},e.prototype.checkedIf=function(e,t,r){var n=this.sp;if(t(),r){var u=this.sp;if(this.sp=n,r(),u!==this.sp)throw new Error("Rule '"+this.ruleName+"', position "+e+": Branches of a condition can't move the stack pointer differently (before: "+n+", after then: "+u+", after else: "+this.sp+"). Bytecode: "+this.bytecode)}},e.prototype.checkedLoop=function(e,t){var r=this.sp;if(t(),r!==this.sp)throw new Error("Rule '"+this.ruleName+"', position "+e+": Body of a loop can't move the stack pointer (before: "+r+", after: "+this.sp+"). Bytecode: "+this.bytecode)},e.prototype.sourceMapPush=function(e,t){if(this.sourceMapStack.length){var r=this.sourceMapStack[this.sourceMapStack.length-1];r[2].start.offset===t.start.offset&&r[2].end.offset>t.end.offset&&(r[2]={start:t.end,end:r[2].end,source:r[2].source})}this.sourceMapStack.push([e,e.length,t])},e.prototype.sourceMapPopInternal=function(){var e=this.sourceMapStack.pop(),t=e[0],r=e[1],n=e[2],u=t.splice(r).map((function(e){return e instanceof SourceNode$1?e:e+"\n"}));if(u.length){var o=GrammarLocation$2.offsetStart(n);t.push(new SourceNode$1(o.line,o.column-1,String(n.source),u))}return{parts:t,location:n}},e.prototype.sourceMapPop=function(e){var t=this.sourceMapPopInternal().location;if(this.sourceMapStack.length&&t.end.offset<this.sourceMapStack[this.sourceMapStack.length-1][2].end.offset){var r=this.sourceMapPopInternal(),n=r.parts,u=r.location,o=u.start.offset<t.end.offset?{start:t.end,end:u.end,source:u.source}:u;this.sourceMapStack.push([n,n.length+(e||0),o])}},e}(),stack=Stack$1,version="3.0.2",utils={};function hex(e){return e.charCodeAt(0).toString(16).toUpperCase()}function stringEscape$1(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\v/g,"\\v").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(e){return"\\x0"+hex(e)})).replace(/[\x10-\x1F\x7F-\xFF]/g,(function(e){return"\\x"+hex(e)})).replace(/[\u0100-\u0FFF]/g,(function(e){return"\\u0"+hex(e)})).replace(/[\u1000-\uFFFF]/g,(function(e){return"\\u"+hex(e)}))}function regexpClassEscape$1(e){return e.replace(/\\/g,"\\\\").replace(/\//g,"\\/").replace(/]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\v/g,"\\v").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(e){return"\\x0"+hex(e)})).replace(/[\x10-\x1F\x7F-\xFF]/g,(function(e){return"\\x"+hex(e)})).replace(/[\u0100-\u0FFF]/g,(function(e){return"\\u0"+hex(e)})).replace(/[\u1000-\uFFFF]/g,(function(e){return"\\u"+hex(e)}))}function base64$1(e){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=e.length%3,n=e.length-r,u="",o=0;o<n;o+=3)u+=t[e[o]>>2],u+=t[(3&e[o])<<4|e[o+1]>>4],u+=t[(15&e[o+1])<<2|e[o+2]>>6],u+=t[63&e[o+2]];return 1===r?(u+=t[e[n]>>2],u+=t[(3&e[n])<<4],u+="=="):2===r&&(u+=t[e[n]>>2],u+=t[(3&e[n])<<4|e[n+1]>>4],u+=t[(15&e[n+1])<<2],u+="="),u}utils.hex=hex,utils.stringEscape=stringEscape$1,utils.regexpClassEscape=regexpClassEscape$1,utils.base64=base64$1;var __spreadArray$1=commonjsGlobal&&commonjsGlobal.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,u=0,o=t.length;u<o;u++)!n&&u in t||(n||(n=Array.prototype.slice.call(t,0,u)),n[u]=t[u]);return e.concat(n||Array.prototype.slice.call(t))},asts$4=asts_1,op=opcodes_1,Stack=stack,VERSION$1=version,_a=utils,stringEscape=_a.stringEscape,regexpClassEscape=_a.regexpClassEscape,SourceNode=sourceMap.SourceNode,GrammarLocation$1=grammarLocation;function toSourceNode(e,t,r){var n=GrammarLocation$1.offsetStart(t),u=n.line,o=n.column-1,a=e.split("\n");return 1===a.length?new SourceNode(u,o,String(t.source),e,r):new SourceNode(null,null,String(t.source),a.map((function(e,n){return new SourceNode(u+n,0===n?o:0,String(t.source),n===a.length-1?e:[e,"\n"],r)})))}function wrapInSourceNode(e,t,r,n,u){if(r){var o=GrammarLocation$1.offsetEnd(r);return new SourceNode(null,null,String(r.source),[e,toSourceNode(t,r,u),new SourceNode(o.line,o.column-1,String(r.source),n)])}return new SourceNode(null,null,null,[e,t,n])}function generateJS$1(e,t){function r(e){var t=!0,r=0;return function e(n){return Array.isArray(n)?n.map(e):n instanceof SourceNode?(r++,n.children=e(n.children),r--,n):(n=t?n.replace(/^(.+)$/gm,"  $1"):n.replace(/\n(\s*\S)/g,"\n  $1"),t=!r||n.endsWith("\n"),n)}(e)}function n(e){return"peg$c"+e}function u(e){return"peg$r"+e}function o(e){return"peg$e"+e}function a(e){return"peg$f"+e}function s(e){return"peg$parse"+e}function i(e){return e.codeLocation?toSourceNode(e.code,e.codeLocation,"$"+e.type):e.code}e.code=function(e){function n(){return["// Generated by Peggy ".concat(VERSION$1,"."),"//","// https://peggyjs.org/"]}function u(){return t.trace?["{","  SyntaxError: peg$SyntaxError,","  DefaultTracer: peg$DefaultTracer,","  parse: peg$parse","}"].join("\n"):["{","  SyntaxError: peg$SyntaxError,","  parse: peg$parse","}"].join("\n")}var o={bare:function(){return __spreadArray$1(__spreadArray$1([],n(),!0),["(function() {",'  "use strict";',"",e,"",r("return "+u()+";"),"})()"],!1)},commonjs:function(){var r=Object.keys(t.dependencies),o=n();return o.push("",'"use strict";',""),r.length>0&&(r.forEach((function(e){o.push("var "+e+' = require("'+stringEscape(t.dependencies[e])+'");')})),o.push("")),o.push(e,"","module.exports = "+u()+";"),o},es:function(){var r=Object.keys(t.dependencies),u=n();return u.push(""),r.length>0&&(r.forEach((function(e){u.push("import "+e+' from "'+stringEscape(t.dependencies[e])+'";')})),u.push("")),u.push(e,"","export {","  peg$SyntaxError as SyntaxError,",t.trace?"  peg$DefaultTracer as DefaultTracer,":"","  peg$parse as parse","};"),u},amd:function(){var o=Object.keys(t.dependencies),a="["+o.map((function(e){return t.dependencies[e]})).map((function(e){return'"'+stringEscape(e)+'"'})).join(", ")+"]",s=o.join(", ");return __spreadArray$1(__spreadArray$1([],n(),!0),["define("+a+", function("+s+") {",'  "use strict";',"",e,"",r("return "+u()+";"),"});"],!1)},globals:function(){return __spreadArray$1(__spreadArray$1([],n(),!0),["(function(root) {",'  "use strict";',"",e,"",r("root."+t.exportVar+" = "+u()+";"),"})(this);"],!1)},umd:function(){var o=Object.keys(t.dependencies),a=o.map((function(e){return t.dependencies[e]})),s="["+a.map((function(e){return'"'+stringEscape(e)+'"'})).join(", ")+"]",i=a.map((function(e){return'require("'+stringEscape(e)+'")'})).join(", "),c=o.join(", "),l=n();return l.push("(function(root, factory) {",'  if (typeof define === "function" && define.amd) {',"    define("+s+", factory);",'  } else if (typeof module === "object" && module.exports) {',"    module.exports = factory("+i+");"),null!==t.exportVar&&l.push("  } else {","    root."+t.exportVar+" = factory();"),l.push("  }","})(this, function("+c+") {",'  "use strict";',"",e,"",r("return "+u()+";"),"});"),l}}[t.format]();return new SourceNode(null,null,t.grammarSource,o.map((function(e){return e instanceof SourceNode?e:e+"\n"})))}(function(){var c=[];e.topLevelInitializer&&(c.push(i(e.topLevelInitializer)),c.push("")),c.push("function peg$subclass(child, parent) {","  function C() { this.constructor = child; }","  C.prototype = parent.prototype;","  child.prototype = new C();","}","","function peg$SyntaxError(message, expected, found, location) {","  var self = Error.call(this, message);","  // istanbul ignore next Check is a necessary evil to support older environments","  if (Object.setPrototypeOf) {","    Object.setPrototypeOf(self, peg$SyntaxError.prototype);","  }","  self.expected = expected;","  self.found = found;","  self.location = location;",'  self.name = "SyntaxError";',"  return self;","}","","peg$subclass(peg$SyntaxError, Error);","","function peg$padEnd(str, targetLength, padString) {",'  padString = padString || " ";',"  if (str.length > targetLength) { return str; }","  targetLength -= str.length;","  padString += padString.repeat(targetLength);","  return str + padString.slice(0, targetLength);","}","","peg$SyntaxError.prototype.format = function(sources) {",'  var str = "Error: " + this.message;',"  if (this.location) {","    var src = null;","    var k;","    for (k = 0; k < sources.length; k++) {","      if (sources[k].source === this.location.source) {","        src = sources[k].text.split(/\\r\\n|\\n|\\r/g);","        break;","      }","    }","    var s = this.location.start;",'    var offset_s = (this.location.source && (typeof this.location.source.offset === "function"))',"      ? this.location.source.offset(s)","      : s;",'    var loc = this.location.source + ":" + offset_s.line + ":" + offset_s.column;',"    if (src) {","      var e = this.location.end;","      var filler = peg$padEnd(\"\", offset_s.line.toString().length, ' ');","      var line = src[s.line - 1];","      var last = s.line === e.line ? e.column : line.length + 1;","      var hatLen = (last - s.column) || 1;",'      str += "\\n --\x3e " + loc + "\\n"','          + filler + " |\\n"','          + offset_s.line + " | " + line + "\\n"','          + filler + " | " + peg$padEnd("", s.column - 1, \' \')','          + peg$padEnd("", hatLen, "^");',"    } else {",'      str += "\\n at " + loc;',"    }","  }","  return str;","};","","peg$SyntaxError.buildMessage = function(expected, found) {","  var DESCRIBE_EXPECTATION_FNS = {","    literal: function(expectation) {",'      return "\\"" + literalEscape(expectation.text) + "\\"";',"    },","","    class: function(expectation) {","      var escapedParts = expectation.parts.map(function(part) {","        return Array.isArray(part)",'          ? classEscape(part[0]) + "-" + classEscape(part[1])',"          : classEscape(part);","      });","",'      return "[" + (expectation.inverted ? "^" : "") + escapedParts.join("") + "]";',"    },","","    any: function() {",'      return "any character";',"    },","","    end: function() {",'      return "end of input";',"    },","","    other: function(expectation) {","      return expectation.description;","    }","  };","","  function hex(ch) {","    return ch.charCodeAt(0).toString(16).toUpperCase();","  }","","  function literalEscape(s) {","    return s",'      .replace(/\\\\/g, "\\\\\\\\")','      .replace(/"/g,  "\\\\\\"")','      .replace(/\\0/g, "\\\\0")','      .replace(/\\t/g, "\\\\t")','      .replace(/\\n/g, "\\\\n")','      .replace(/\\r/g, "\\\\r")','      .replace(/[\\x00-\\x0F]/g,          function(ch) { return "\\\\x0" + hex(ch); })','      .replace(/[\\x10-\\x1F\\x7F-\\x9F]/g, function(ch) { return "\\\\x"  + hex(ch); });',"  }","","  function classEscape(s) {","    return s",'      .replace(/\\\\/g, "\\\\\\\\")','      .replace(/\\]/g, "\\\\]")','      .replace(/\\^/g, "\\\\^")','      .replace(/-/g,  "\\\\-")','      .replace(/\\0/g, "\\\\0")','      .replace(/\\t/g, "\\\\t")','      .replace(/\\n/g, "\\\\n")','      .replace(/\\r/g, "\\\\r")','      .replace(/[\\x00-\\x0F]/g,          function(ch) { return "\\\\x0" + hex(ch); })','      .replace(/[\\x10-\\x1F\\x7F-\\x9F]/g, function(ch) { return "\\\\x"  + hex(ch); });',"  }","","  function describeExpectation(expectation) {","    return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);","  }","","  function describeExpected(expected) {","    var descriptions = expected.map(describeExpectation);","    var i, j;","","    descriptions.sort();","","    if (descriptions.length > 0) {","      for (i = 1, j = 1; i < descriptions.length; i++) {","        if (descriptions[i - 1] !== descriptions[i]) {","          descriptions[j] = descriptions[i];","          j++;","        }","      }","      descriptions.length = j;","    }","","    switch (descriptions.length) {","      case 1:","        return descriptions[0];","","      case 2:",'        return descriptions[0] + " or " + descriptions[1];',"","      default:",'        return descriptions.slice(0, -1).join(", ")','          + ", or "',"          + descriptions[descriptions.length - 1];","    }","  }","","  function describeFound(found) {",'    return found ? "\\"" + literalEscape(found) + "\\"" : "end of input";',"  }","",'  return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found.";',"};",""),t.trace&&c.push("function peg$DefaultTracer() {","  this.indentLevel = 0;","}","","peg$DefaultTracer.prototype.trace = function(event) {","  var that = this;","","  function log(event) {","    function repeat(string, n) {",'       var result = "", i;',"","       for (i = 0; i < n; i++) {","         result += string;","       }","","       return result;","    }","","    function pad(string, length) {",'      return string + repeat(" ", length - string.length);',"    }","",'    if (typeof console === "object") {',"      console.log(",'        event.location.start.line + ":" + event.location.start.column + "-"','          + event.location.end.line + ":" + event.location.end.column + " "','          + pad(event.type, 10) + " "','          + repeat("  ", that.indentLevel) + event.rule',"      );","    }","  }","","  switch (event.type) {",'    case "rule.enter":',"      log(event);","      this.indentLevel++;","      break;","",'    case "rule.match":',"      this.indentLevel--;","      log(event);","      break;","",'    case "rule.fail":',"      this.indentLevel--;","      log(event);","      break;","","    default:",'      throw new Error("Invalid event type: " + event.type + ".");',"  }","};","");var l="{ "+t.allowedStartRules.map((function(e){return e+": "+s(e)})).join(", ")+" }",p=s(t.allowedStartRules[0]);return c.push("function peg$parse(input, options) {","  options = options !== undefined ? options : {};","","  var peg$FAILED = {};","  var peg$source = options.grammarSource;","","  var peg$startRuleFunctions = "+l+";","  var peg$startRuleFunction = "+p+";","",new SourceNode(null,null,t.grammarSource,[e.literals.map((function(e,t){return"  var "+n(t)+' = "'+stringEscape(e)+'";'})).concat("",e.classes.map((function(e,t){return"  var "+u(t)+" = /^["+((r=e).inverted?"^":"")+r.value.map((function(e){return Array.isArray(e)?regexpClassEscape(e[0])+"-"+regexpClassEscape(e[1]):regexpClassEscape(e)})).join("")+"]/"+(r.ignoreCase?"i":"")+";";var r}))).concat("",e.expectations.map((function(e,t){return"  var "+o(t)+" = "+function(e){switch(e.type){case"rule":return'peg$otherExpectation("'+stringEscape(e.value)+'")';case"literal":return'peg$literalExpectation("'+stringEscape(e.value)+'", '+e.ignoreCase+")";case"class":return"peg$classExpectation(["+e.value.map((function(e){return Array.isArray(e)?'["'+stringEscape(e[0])+'", "'+stringEscape(e[1])+'"]':'"'+stringEscape(e)+'"'})).join(", ")+"], "+e.inverted+", "+e.ignoreCase+")";case"any":return"peg$anyExpectation()";default:throw new Error("Unknown expectation type ("+JSON.stringify(e)+")")}}(e)+";"}))).concat("").join("\n"),e.functions.map((function(e,t){return wrapInSourceNode("\n  var ".concat(a(t)," = function(").concat(e.params.join(", "),") {"),e.body,e.location,"};")}))]),"","  var peg$currPos = 0;","  var peg$savedPos = 0;","  var peg$posDetailsCache = [{ line: 1, column: 1 }];","  var peg$maxFailPos = 0;","  var peg$maxFailExpected = [];","  var peg$silentFails = 0;",""),t.cache&&c.push("  var peg$resultsCache = {};",""),t.trace&&c.push('  var peg$tracer = "tracer" in options ? options.tracer : new peg$DefaultTracer();',""),c.push("  var peg$result;","",'  if ("startRule" in options) {',"    if (!(options.startRule in peg$startRuleFunctions)) {",'      throw new Error("Can\'t start parsing from rule \\"" + options.startRule + "\\".");',"    }","","    peg$startRuleFunction = peg$startRuleFunctions[options.startRule];","  }","","  function text() {","    return input.substring(peg$savedPos, peg$currPos);","  }","","  function offset() {","    return peg$savedPos;","  }","","  function range() {","    return {","      source: peg$source,","      start: peg$savedPos,","      end: peg$currPos","    };","  }","","  function location() {","    return peg$computeLocation(peg$savedPos, peg$currPos);","  }","","  function expected(description, location) {","    location = location !== undefined","      ? location","      : peg$computeLocation(peg$savedPos, peg$currPos);","","    throw peg$buildStructuredError(","      [peg$otherExpectation(description)],","      input.substring(peg$savedPos, peg$currPos),","      location","    );","  }","","  function error(message, location) {","    location = location !== undefined","      ? location","      : peg$computeLocation(peg$savedPos, peg$currPos);","","    throw peg$buildSimpleError(message, location);","  }","","  function peg$literalExpectation(text, ignoreCase) {",'    return { type: "literal", text: text, ignoreCase: ignoreCase };',"  }","","  function peg$classExpectation(parts, inverted, ignoreCase) {",'    return { type: "class", parts: parts, inverted: inverted, ignoreCase: ignoreCase };',"  }","","  function peg$anyExpectation() {",'    return { type: "any" };',"  }","","  function peg$endExpectation() {",'    return { type: "end" };',"  }","","  function peg$otherExpectation(description) {",'    return { type: "other", description: description };',"  }","","  function peg$computePosDetails(pos) {","    var details = peg$posDetailsCache[pos];","    var p;","","    if (details) {","      return details;","    } else {","      p = pos - 1;","      while (!peg$posDetailsCache[p]) {","        p--;","      }","","      details = peg$posDetailsCache[p];","      details = {","        line: details.line,","        column: details.column","      };","","      while (p < pos) {","        if (input.charCodeAt(p) === 10) {","          details.line++;","          details.column = 1;","        } else {","          details.column++;","        }","","        p++;","      }","","      peg$posDetailsCache[pos] = details;","","      return details;","    }","  }","","  function peg$computeLocation(startPos, endPos, offset) {","    var startPosDetails = peg$computePosDetails(startPos);","    var endPosDetails = peg$computePosDetails(endPos);","","    var res = {","      source: peg$source,","      start: {","        offset: startPos,","        line: startPosDetails.line,","        column: startPosDetails.column","      },","      end: {","        offset: endPos,","        line: endPosDetails.line,","        column: endPosDetails.column","      }","    };",'    if (offset && peg$source && (typeof peg$source.offset === "function")) {',"      res.start = peg$source.offset(res.start);","      res.end = peg$source.offset(res.end);","    }","    return res;","  }","","  function peg$fail(expected) {","    if (peg$currPos < peg$maxFailPos) { return; }","","    if (peg$currPos > peg$maxFailPos) {","      peg$maxFailPos = peg$currPos;","      peg$maxFailExpected = [];","    }","","    peg$maxFailExpected.push(expected);","  }","","  function peg$buildSimpleError(message, location) {","    return new peg$SyntaxError(message, null, null, location);","  }","","  function peg$buildStructuredError(expected, found, location) {","    return new peg$SyntaxError(","      peg$SyntaxError.buildMessage(expected, found),","      expected,","      found,","      location","    );","  }",""),e.rules.forEach((function(i){c.push.apply(c,r(function(i){var c=[],l=new Stack(i.name,"s","var",i.bytecode),p=function t(c){var p=0,h=c.length,A=[],f=void 0;function d(e,n){var u=n+3,o=c[p+u-2],a=c[p+u-1],s=void 0,i=void 0;l.checkedIf(p,(function(){p+=u,s=t(c.slice(p,p+o)),p+=o}),a>0?function(){i=t(c.slice(p,p+a)),p+=a}:null),A.push("if ("+e+") {"),A.push.apply(A,r(s)),a>0&&(A.push("} else {"),A.push.apply(A,r(i))),A.push("}")}function E(e){var n=c[p+2-1],u=void 0;l.checkedLoop(p,(function(){p+=2,u=t(c.slice(p,p+n)),p+=n})),A.push("while ("+e+") {"),A.push.apply(A,r(u)),A.push("}")}function g(e){var t=c[p+e-1];return a(c[p+1])+"("+c.slice(p+e,p+e+t).map((function(e){return l.index(e)})).join(", ")+")"}for(;p<h;)switch(c[p]){case op.PUSH_EMPTY_STRING:A.push(l.push("''")),p++;break;case op.PUSH_CURR_POS:A.push(l.push("peg$currPos")),p++;break;case op.PUSH_UNDEFINED:A.push(l.push("undefined")),p++;break;case op.PUSH_NULL:A.push(l.push("null")),p++;break;case op.PUSH_FAILED:A.push(l.push("peg$FAILED")),p++;break;case op.PUSH_EMPTY_ARRAY:A.push(l.push("[]")),p++;break;case op.POP:l.pop(),p++;break;case op.POP_CURR_POS:A.push("peg$currPos = "+l.pop()+";"),p++;break;case op.POP_N:l.pop(c[p+1]),p+=2;break;case op.NIP:f=l.pop(),l.pop(),A.push(l.push(f)),p++;break;case op.APPEND:f=l.pop(),A.push(l.top()+".push("+f+");"),p++;break;case op.WRAP:A.push(l.push("["+l.pop(c[p+1]).join(", ")+"]")),p+=2;break;case op.TEXT:A.push(l.push("input.substring("+l.pop()+", peg$currPos)")),p++;break;case op.PLUCK:var m=c[p+3-1],C=3+m;f=c.slice(p+3,p+C),f=1===m?l.index(f[0]):"[ ".concat(f.map((function(e){return l.index(e)})).join(", ")," ]"),l.pop(c[p+1]),A.push(l.push(f)),p+=C;break;case op.IF:d(l.top(),0);break;case op.IF_ERROR:d(l.top()+" === peg$FAILED",0);break;case op.IF_NOT_ERROR:d(l.top()+" !== peg$FAILED",0);break;case op.IF_LT:d(l.top()+".length < "+c[p+1],1);break;case op.IF_GE:d(l.top()+".length >= "+c[p+1],1);break;case op.IF_LT_DYNAMIC:d(l.top()+".length < ("+l.index(c[p+1])+"|0)",1);break;case op.IF_GE_DYNAMIC:d(l.top()+".length >= ("+l.index(c[p+1])+"|0)",1);break;case op.WHILE_NOT_ERROR:E(l.top()+" !== peg$FAILED");break;case op.MATCH_ANY:d("input.length > peg$currPos",0);break;case op.MATCH_STRING:d(e.literals[c[p+1]].length>1?"input.substr(peg$currPos, "+e.literals[c[p+1]].length+") === "+n(c[p+1]):"input.charCodeAt(peg$currPos) === "+e.literals[c[p+1]].charCodeAt(0),1);break;case op.MATCH_STRING_IC:d("input.substr(peg$currPos, "+e.literals[c[p+1]].length+").toLowerCase() === "+n(c[p+1]),1);break;case op.MATCH_CHAR_CLASS:d(u(c[p+1])+".test(input.charAt(peg$currPos))",1);break;case op.ACCEPT_N:A.push(l.push(c[p+1]>1?"input.substr(peg$currPos, "+c[p+1]+")":"input.charAt(peg$currPos)")),A.push(c[p+1]>1?"peg$currPos += "+c[p+1]+";":"peg$currPos++;"),p+=2;break;case op.ACCEPT_STRING:A.push(l.push(n(c[p+1]))),A.push(e.literals[c[p+1]].length>1?"peg$currPos += "+e.literals[c[p+1]].length+";":"peg$currPos++;"),p+=2;break;case op.FAIL:A.push(l.push("peg$FAILED")),A.push("if (peg$silentFails === 0) { peg$fail("+o(c[p+1])+"); }"),p+=2;break;case op.LOAD_SAVED_POS:A.push("peg$savedPos = "+l.index(c[p+1])+";"),p+=2;break;case op.UPDATE_SAVED_POS:A.push("peg$savedPos = peg$currPos;"),p++;break;case op.CALL:f=g(4),l.pop(c[p+2]),A.push(l.push(f)),p+=4+c[p+3];break;case op.RULE:A.push(l.push(s(e.rules[c[p+1]].name)+"()")),p+=2;break;case op.SILENT_FAILS_ON:A.push("peg$silentFails++;"),p++;break;case op.SILENT_FAILS_OFF:A.push("peg$silentFails--;"),p++;break;case op.SOURCE_MAP_PUSH:l.sourceMapPush(A,e.locations[c[p+1]]),p+=2;break;case op.SOURCE_MAP_POP:l.sourceMapPop(),p++;break;case op.SOURCE_MAP_LABEL_PUSH:l.labels[c[p+1]]={label:e.literals[c[p+2]],location:e.locations[c[p+3]]},p+=4;break;case op.SOURCE_MAP_LABEL_POP:delete l.labels[c[p+1]],p+=2;break;default:throw new Error("Invalid opcode: "+c[p]+".",{rule:i.name,bytecode:c})}return A}(i.bytecode);return c.push(wrapInSourceNode("function ",s(i.name),i.nameLocation,"() {\n",i.name)),t.trace&&c.push("  var startPos = peg$currPos;"),c.push(r(l.defines())),c.push.apply(c,r(function(r,n){var u=[];return u.push(""),t.trace&&u.push("peg$tracer.trace({",'  type: "rule.enter",',"  rule: "+r+",","  location: peg$computeLocation(startPos, startPos, true)","});",""),t.cache&&(u.push("var key = peg$currPos * "+e.rules.length+" + "+n+";","var cached = peg$resultsCache[key];","","if (cached) {","  peg$currPos = cached.nextPos;",""),t.trace&&u.push("if (cached.result !== peg$FAILED) {","  peg$tracer.trace({",'    type: "rule.match",',"    rule: "+r+",","    result: cached.result,","    location: peg$computeLocation(startPos, peg$currPos, true)","  });","} else {","  peg$tracer.trace({",'    type: "rule.fail",',"    rule: "+r+",","    location: peg$computeLocation(startPos, startPos, true)","  });","}",""),u.push("  return cached.result;","}","")),u}('"'+stringEscape(i.name)+'"',asts$4.indexOfRule(e,i.name)))),c.push.apply(c,r(p)),c.push.apply(c,r(function(e,r){var n=[];return t.cache&&n.push("","peg$resultsCache[key] = { nextPos: peg$currPos, result: "+r+" };"),t.trace&&n.push("","if ("+r+" !== peg$FAILED) {","  peg$tracer.trace({",'    type: "rule.match",',"    rule: "+e+",","    result: "+r+",","    location: peg$computeLocation(startPos, peg$currPos, true)","  });","} else {","  peg$tracer.trace({",'    type: "rule.fail",',"    rule: "+e+",","    location: peg$computeLocation(startPos, startPos, true)","  });","}"),n.push("","return "+r+";"),n}('"'+stringEscape(i.name)+'"',l.result()))),c.push("}"),c}(i))),c.push("")})),e.initializer&&(c.push(i(e.initializer)),c.push("")),c.push("  peg$result = peg$startRuleFunction();","","  if (peg$result !== peg$FAILED && peg$currPos === input.length) {","    return peg$result;","  } else {","    if (peg$result !== peg$FAILED && peg$currPos < input.length) {","      peg$fail(peg$endExpectation());","    }","","    throw peg$buildStructuredError(","      peg$maxFailExpected,","      peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null,","      peg$maxFailPos < input.length","        ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1)","        : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)","    );","  }","}"),new SourceNode(null,null,t.grammarSource,c.map((function(e){return e instanceof SourceNode?e:e+"\n"})))}())}var generateJs=generateJS$1,asts$3=asts_1,visitor$7=visitor_1;function removeProxyRules$1(e,t,r){var n=[];e.rules.forEach((function(u,o){var a;"rule"===(a=u).type&&"rule_ref"===a.expression.type&&(function(e,t,n){visitor$7.build({rule_ref:function(u){u.name===t&&(u.name=n,r.info('Proxy rule "'.concat(t,'" replaced by the rule "').concat(n,'"'),u.location,[{message:"This rule will be used",location:asts$3.findRule(e,n).nameLocation}]))}})(e)}(e,u.name,u.expression.name),-1===t.allowedStartRules.indexOf(u.name)&&n.push(o))})),n.reverse(),n.forEach((function(t){e.rules.splice(t,1)}))}var removeProxyRules_1=removeProxyRules$1,visitor$6=visitor_1;function reportDuplicateLabels$1(e,t,r){function n(e){var t={};return Object.keys(e).forEach((function(r){t[r]=e[r]})),t}function u(e,t){o(e.expression,n(t))}var o=visitor$6.build({rule:function(e){o(e.expression,{})},choice:function(e,t){e.alternatives.forEach((function(e){o(e,n(t))}))},action:u,labeled:function(e,t){var n=e.label;n&&Object.prototype.hasOwnProperty.call(t,n)&&r.error('Label "'.concat(e.label,'" is already defined'),e.labelLocation,[{message:"Original label location",location:t[n]}]),o(e.expression,t),t[e.label]=e.labelLocation},text:u,simple_and:u,simple_not:u,optional:u,zero_or_more:u,one_or_more:u,repeated:function(e,t){e.delimiter&&o(e.delimiter,n(t)),o(e.expression,n(t))},group:u});o(e)}var reportDuplicateLabels_1=reportDuplicateLabels$1,visitor$5=visitor_1;function reportDuplicateRules$1(e,t,r){var n={};visitor$5.build({rule:function(e){Object.prototype.hasOwnProperty.call(n,e.name)?r.error('Rule "'.concat(e.name,'" is already defined'),e.nameLocation,[{message:"Original rule location",location:n[e.name]}]):n[e.name]=e.nameLocation}})(e)}var reportDuplicateRules_1=reportDuplicateRules$1,asts$2=asts_1,visitor$4=visitor_1;function reportInfiniteRecursion$1(e,t,r){var n=[],u=[],o=visitor$4.build({rule:function(e){n.push(e.name),o(e.expression),n.pop()},sequence:function(t){t.elements.every((function(t){return o(t),!asts$2.alwaysConsumesOnSuccess(e,t)}))},repeated:function(t){o(t.expression),t.delimiter&&!asts$2.alwaysConsumesOnSuccess(e,t.expression)&&o(t.delimiter)},rule_ref:function(t){u.push(t);var a=asts$2.findRule(e,t.name);if(-1!==n.indexOf(t.name))return n.push(t.name),void r.error("Possible infinite loop when parsing (left recursion: "+n.join(" -> ")+")",a.nameLocation,u.map((function(e,t,r){return{message:t+1!==r.length?"Step ".concat(t+1,': call of the rule "').concat(e.name,'" without input consumption'):"Step ".concat(t+1,": call itself without input consumption - left recursion"),location:e.location}})));a&&o(a),u.pop()}});o(e)}var reportInfiniteRecursion_1=reportInfiniteRecursion$1,asts$1=asts_1,visitor$3=visitor_1;function reportInfiniteRepetition$1(e,t,r){var n=visitor$3.build({zero_or_more:function(t){asts$1.alwaysConsumesOnSuccess(e,t.expression)||r.error("Possible infinite loop when parsing (repetition used with an expression that may not consume any input)",t.location)},one_or_more:function(t){asts$1.alwaysConsumesOnSuccess(e,t.expression)||r.error("Possible infinite loop when parsing (repetition used with an expression that may not consume any input)",t.location)},repeated:function(t){if(t.delimiter&&n(t.delimiter),!(asts$1.alwaysConsumesOnSuccess(e,t.expression)||t.delimiter&&asts$1.alwaysConsumesOnSuccess(e,t.delimiter)))if(null===t.max.value)r.error("Possible infinite loop when parsing (unbounded range repetition used with an expression that may not consume any input)",t.location);else{var u=t.min?t.min:t.max;r.warning("constant"===u.type&&"constant"===t.max.type?"An expression may not consume any input and may always match ".concat(t.max.value," times"):"An expression may not consume any input and may always match with a maximum repetition count",t.location)}}});n(e)}var reportInfiniteRepetition_1=reportInfiniteRepetition$1,asts=asts_1,visitor$2=visitor_1;function reportUndefinedRules$1(e,t,r){visitor$2.build({rule_ref:function(t){asts.findRule(e,t.name)||r.error('Rule "'.concat(t.name,'" is not defined'),t.location)}})(e)}var reportUndefinedRules_1=reportUndefinedRules$1,visitor$1=visitor_1;function reportIncorrectPlucking$1(e,t,r){var n=visitor$1.build({action:function(e){n(e.expression,e)},labeled:function(e,t){e.pick&&t&&r.error('"@" cannot be used with an action block',e.labelLocation,[{message:"Action block location",location:t.codeLocation}]),n(e.expression)}});n(e)}var reportIncorrectPlucking_1=reportIncorrectPlucking$1,__spreadArray=commonjsGlobal&&commonjsGlobal.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,u=0,o=t.length;u<o;u++)!n&&u in t||(n||(n=Array.prototype.slice.call(t,0,u)),n[u]=t[u]);return e.concat(n||Array.prototype.slice.call(t))},GrammarError$1=grammarError,Defaults=function(){function e(e){"function"==typeof(e=void 0!==e?e:{}).error&&(this.error=e.error),"function"==typeof e.warning&&(this.warning=e.warning),"function"==typeof e.info&&(this.info=e.info)}return e.prototype.error=function(){},e.prototype.warning=function(){},e.prototype.info=function(){},e}(),Session$1=function(){function e(e){this._callbacks=new Defaults(e),this._firstError=null,this.errors=0,this.problems=[],this.stage=null}return e.prototype.error=function(){for(var e,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];++this.errors,null===this._firstError&&(this._firstError=new(GrammarError$1.bind.apply(GrammarError$1,__spreadArray([void 0],t,!1))),this._firstError.stage=this.stage,this._firstError.problems=this.problems),this.problems.push(__spreadArray(["error"],t,!0)),(e=this._callbacks).error.apply(e,__spreadArray([this.stage],t,!1))},e.prototype.warning=function(){for(var e,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];this.problems.push(__spreadArray(["warning"],t,!0)),(e=this._callbacks).warning.apply(e,__spreadArray([this.stage],t,!1))},e.prototype.info=function(){for(var e,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];this.problems.push(__spreadArray(["info"],t,!0)),(e=this._callbacks).info.apply(e,__spreadArray([this.stage],t,!1))},e.prototype.checkErrors=function(){if(0!==this.errors)throw this._firstError},e}(),session=Session$1,generateBytecode=generateBytecode_1,generateJS=generateJs,inferenceMatchResult=inferenceMatchResult_1,removeProxyRules=removeProxyRules_1,reportDuplicateLabels=reportDuplicateLabels_1,reportDuplicateRules=reportDuplicateRules_1,reportInfiniteRecursion=reportInfiniteRecursion_1,reportInfiniteRepetition=reportInfiniteRepetition_1,reportUndefinedRules=reportUndefinedRules_1,reportIncorrectPlucking=reportIncorrectPlucking_1,Session=session,visitor=visitor_1,base64=utils.base64;function processOptions(e,t){var r={};return Object.keys(e).forEach((function(t){r[t]=e[t]})),Object.keys(t).forEach((function(e){Object.prototype.hasOwnProperty.call(r,e)||(r[e]=t[e])})),r}function isSourceMapCapable(e){return"string"==typeof e?e.length>0:e&&"function"==typeof e.offset}var compiler$1={visitor:visitor,passes:{check:[reportUndefinedRules,reportDuplicateRules,reportDuplicateLabels,reportInfiniteRecursion,reportInfiniteRepetition,reportIncorrectPlucking],transform:[removeProxyRules,inferenceMatchResult],generate:[generateBytecode,generateJS]},compile:function(ast,passes,options){if(options=void 0!==options?options:{},options=processOptions(options,{allowedStartRules:[ast.rules[0].name],cache:!1,dependencies:{},exportVar:null,format:"bare",output:"parser",trace:!1}),!Array.isArray(options.allowedStartRules))throw new Error("allowedStartRules must be an array");if(0===options.allowedStartRules.length)throw new Error("Must have at least one start rule");var allRules=ast.rules.map((function(e){return e.name}));if(options.allowedStartRules.some((function(e){return"*"===e})))options.allowedStartRules=allRules;else for(var _i=0,_a=options.allowedStartRules;_i<_a.length;_i++){var rule=_a[_i];if(-1===allRules.indexOf(rule))throw new Error('Unknown start rule "'.concat(rule,'"'))}if(("source-and-map"===options.output||"source-with-inline-map"===options.output)&&!isSourceMapCapable(options.grammarSource))throw new Error("Must provide grammarSource (as a string or GrammarLocation) in order to generate source maps");var session=new Session(options);switch(Object.keys(passes).forEach((function(e){session.stage=e,session.info("Process stage ".concat(e)),passes[e].forEach((function(t){session.info("Process pass ".concat(e,".").concat(t.name)),t(ast,options,session)})),session.checkErrors()})),options.output){case"parser":return eval(ast.code.toString());case"source":return ast.code.toString();case"source-and-map":return ast.code;case"source-with-inline-map":if("undefined"==typeof TextEncoder)throw new Error("TextEncoder is not supported by this platform");var sourceMap=ast.code.toStringWithSourceMap(),encoder=new TextEncoder,b64=base64(encoder.encode(JSON.stringify(sourceMap.map.toJSON())));return sourceMap.code+"//# sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(b64,"\n");case"ast":return ast;default:throw new Error("Invalid output format: "+options.output+".")}}},compiler_1=compiler$1,OPS_TO_PREFIXED_TYPES={$:"text","&":"simple_and","!":"simple_not"},OPS_TO_SUFFIXED_TYPES={"?":"optional","*":"zero_or_more","+":"one_or_more"},OPS_TO_SEMANTIC_PREDICATE_TYPES={"&":"semantic_and","!":"semantic_not"};function peg$subclass(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function peg$SyntaxError(e,t,r,n){var u=Error.call(this,e);return Object.setPrototypeOf&&Object.setPrototypeOf(u,peg$SyntaxError.prototype),u.expected=t,u.found=r,u.location=n,u.name="SyntaxError",u}function peg$padEnd(e,t,r){return r=r||" ",e.length>t?e:(t-=e.length,e+(r+=r.repeat(t)).slice(0,t))}function peg$parse(e,t){var r,n={},u=(t=void 0!==t?t:{}).grammarSource,o={Grammar:ht},a=ht,s="{",i="}",c="/*",l="*/",p="\\",h='"',A="'",f=/^[\n\r\u2028\u2029]/,d=/^[0-9]/,E=/^[0-9a-f]/i,g=/^[{}]/,m=/^[a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137-\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148-\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C-\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA-\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9-\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC-\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF-\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F-\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0-\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB-\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE-\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0561-\u0587\u13F8-\u13FD\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6-\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FC7\u1FD0-\u1FD3\u1FD6-\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6-\u1FF7\u210A\u210E-\u210F\u2113\u212F\u2134\u2139\u213C-\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65-\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73-\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3-\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7B5\uA7B7\uA7FA\uAB30-\uAB5A\uAB60-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]/,C=/^[\u02B0-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0374\u037A\u0559\u0640\u06E5-\u06E6\u07F4-\u07F5\u07FA\u081A\u0824\u0828\u0971\u0E46\u0EC6\u10FC\u17D7\u1843\u1AA7\u1C78-\u1C7D\u1D2C-\u1D6A\u1D78\u1D9B-\u1DBF\u2071\u207F\u2090-\u209C\u2C7C-\u2C7D\u2D6F\u2E2F\u3005\u3031-\u3035\u303B\u309D-\u309E\u30FC-\u30FE\uA015\uA4F8-\uA4FD\uA60C\uA67F\uA69C-\uA69D\uA717-\uA71F\uA770\uA788\uA7F8-\uA7F9\uA9CF\uA9E6\uAA70\uAADD\uAAF3-\uAAF4\uAB5C-\uAB5F\uFF70\uFF9E-\uFF9F]/,y=/^[\xAA\xBA\u01BB\u01C0-\u01C3\u0294\u05D0-\u05EA\u05F0-\u05F2\u0620-\u063F\u0641-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u0800-\u0815\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0972-\u0980\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60-\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u10D0-\u10FA\u10FD-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17DC\u1820-\u1842\u1844-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C77\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u2135-\u2138\u2D30-\u2D67\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3006\u303C\u3041-\u3096\u309F\u30A1-\u30FA\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA014\uA016-\uA48C\uA4D0-\uA4F7\uA500-\uA60B\uA610-\uA61F\uA62A-\uA62B\uA66E\uA6A0-\uA6E5\uA78F\uA7F7\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9E0-\uA9E4\uA9E7-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA6F\uAA71-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAAE0-\uAAEA\uAAF2\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF66-\uFF6F\uFF71-\uFF9D\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,_=/^[\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC]/,v=/^[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178-\u0179\u017B\u017D\u0181-\u0182\u0184\u0186-\u0187\u0189-\u018B\u018E-\u0191\u0193-\u0194\u0196-\u0198\u019C-\u019D\u019F-\u01A0\u01A2\u01A4\u01A6-\u01A7\u01A9\u01AC\u01AE-\u01AF\u01B1-\u01B3\u01B5\u01B7-\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A-\u023B\u023D-\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E-\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9-\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0-\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E-\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D-\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AD\uA7B0-\uA7B4\uA7B6\uFF21-\uFF3A]/,F=/^[\u0903\u093B\u093E-\u0940\u0949-\u094C\u094E-\u094F\u0982-\u0983\u09BE-\u09C0\u09C7-\u09C8\u09CB-\u09CC\u09D7\u0A03\u0A3E-\u0A40\u0A83\u0ABE-\u0AC0\u0AC9\u0ACB-\u0ACC\u0B02-\u0B03\u0B3E\u0B40\u0B47-\u0B48\u0B4B-\u0B4C\u0B57\u0BBE-\u0BBF\u0BC1-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD7\u0C01-\u0C03\u0C41-\u0C44\u0C82-\u0C83\u0CBE\u0CC0-\u0CC4\u0CC7-\u0CC8\u0CCA-\u0CCB\u0CD5-\u0CD6\u0D02-\u0D03\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D57\u0D82-\u0D83\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DF2-\u0DF3\u0F3E-\u0F3F\u0F7F\u102B-\u102C\u1031\u1038\u103B-\u103C\u1056-\u1057\u1062-\u1064\u1067-\u106D\u1083-\u1084\u1087-\u108C\u108F\u109A-\u109C\u17B6\u17BE-\u17C5\u17C7-\u17C8\u1923-\u1926\u1929-\u192B\u1930-\u1931\u1933-\u1938\u1A19-\u1A1A\u1A55\u1A57\u1A61\u1A63-\u1A64\u1A6D-\u1A72\u1B04\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B44\u1B82\u1BA1\u1BA6-\u1BA7\u1BAA\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2-\u1BF3\u1C24-\u1C2B\u1C34-\u1C35\u1CE1\u1CF2-\u1CF3\u302E-\u302F\uA823-\uA824\uA827\uA880-\uA881\uA8B4-\uA8C3\uA952-\uA953\uA983\uA9B4-\uA9B5\uA9BA-\uA9BB\uA9BD-\uA9C0\uAA2F-\uAA30\uAA33-\uAA34\uAA4D\uAA7B\uAA7D\uAAEB\uAAEE-\uAAEF\uAAF5\uABE3-\uABE4\uABE6-\uABE7\uABE9-\uABEA\uABEC]/,S=/^[\u0300-\u036F\u0483-\u0487\u0591-\u05BD\u05BF\u05C1-\u05C2\u05C4-\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7-\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962-\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2-\u09E3\u0A01-\u0A02\u0A3C\u0A41-\u0A42\u0A47-\u0A48\u0A4B-\u0A4D\u0A51\u0A70-\u0A71\u0A75\u0A81-\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7-\u0AC8\u0ACD\u0AE2-\u0AE3\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B56\u0B62-\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55-\u0C56\u0C62-\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC-\u0CCD\u0CE2-\u0CE3\u0D01\u0D41-\u0D44\u0D4D\u0D62-\u0D63\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB-\u0EBC\u0EC8-\u0ECD\u0F18-\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86-\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039-\u103A\u103D-\u103E\u1058-\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085-\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752-\u1753\u1772-\u1773\u17B4-\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u1922\u1927-\u1928\u1932\u1939-\u193B\u1A17-\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ABD\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80-\u1B81\u1BA2-\u1BA5\u1BA8-\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8-\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8-\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099-\u309A\uA66F\uA674-\uA67D\uA69E-\uA69F\uA6F0-\uA6F1\uA802\uA806\uA80B\uA825-\uA826\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9E5\uAA29-\uAA2E\uAA31-\uAA32\uAA35-\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7-\uAAB8\uAABE-\uAABF\uAAC1\uAAEC-\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/,D=/^[0-9\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0BE6-\u0BEF\u0C66-\u0C6F\u0CE6-\u0CEF\u0D66-\u0D6F\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F29\u1040-\u1049\u1090-\u1099\u17E0-\u17E9\u1810-\u1819\u1946-\u194F\u19D0-\u19D9\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\uA620-\uA629\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]/,B=/^[\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF]/,P=/^[_\u203F-\u2040\u2054\uFE33-\uFE34\uFE4D-\uFE4F\uFF3F]/,$=/^[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000]/,O=at("{",!1),b=at("}",!1),I=at("=",!1),T=at("/",!1),w=at("@",!1),x=at(":",!1),R=at("$",!1),N=at("&",!1),M=at("!",!1),L=at("?",!1),k=at("*",!1),V=at("+",!1),j=at("|",!1),H=at(",",!1),U=at("..",!1),G=at("(",!1),W=at(")",!1),Y={type:"any"},q=it("whitespace"),z=at("\t",!1),Q=at("\v",!1),J=at("\f",!1),K=at(" ",!1),X=at(" ",!1),Z=at("\ufeff",!1),ee=st(["\n","\r","\u2028","\u2029"],!1,!1),te=it("end of line"),re=at("\n",!1),ne=at("\r\n",!1),ue=at("\r",!1),oe=at("\u2028",!1),ae=at("\u2029",!1),se=it("comment"),ie=at("/*",!1),ce=at("*/",!1),le=at("//",!1),pe=it("identifier"),he=at("_",!1),Ae=at("\\",!1),fe=at("‌",!1),de=at("‍",!1),Ee=it("literal"),ge=at("i",!1),me=it("string"),Ce=at('"',!1),ye=at("'",!1),_e=it("character class"),ve=at("[",!1),Fe=at("^",!1),Se=at("]",!1),De=at("-",!1),Be=at("0",!1),Pe=at("b",!1),$e=at("f",!1),Oe=at("n",!1),be=at("r",!1),Ie=at("t",!1),Te=at("v",!1),we=at("x",!1),xe=at("u",!1),Re=st([["0","9"]],!1,!1),Ne=st([["0","9"],["a","f"]],!1,!0),Me=at(".",!1),Le=it("code block"),ke=st(["{","}"],!1,!1),Ve=st([["a","z"],"µ",["ß","ö"],["ø","ÿ"],"ā","ă","ą","ć","ĉ","ċ","č","ď","đ","ē","ĕ","ė","ę","ě","ĝ","ğ","ġ","ģ","ĥ","ħ","ĩ","ī","ĭ","į","ı","ĳ","ĵ",["ķ","ĸ"],"ĺ","ļ","ľ","ŀ","ł","ń","ņ",["ň","ŉ"],"ŋ","ō","ŏ","ő","œ","ŕ","ŗ","ř","ś","ŝ","ş","š","ţ","ť","ŧ","ũ","ū","ŭ","ů","ű","ų","ŵ","ŷ","ź","ż",["ž","ƀ"],"ƃ","ƅ","ƈ",["ƌ","ƍ"],"ƒ","ƕ",["ƙ","ƛ"],"ƞ","ơ","ƣ","ƥ","ƨ",["ƪ","ƫ"],"ƭ","ư","ƴ","ƶ",["ƹ","ƺ"],["ƽ","ƿ"],"ǆ","ǉ","ǌ","ǎ","ǐ","ǒ","ǔ","ǖ","ǘ","ǚ",["ǜ","ǝ"],"ǟ","ǡ","ǣ","ǥ","ǧ","ǩ","ǫ","ǭ",["ǯ","ǰ"],"ǳ","ǵ","ǹ","ǻ","ǽ","ǿ","ȁ","ȃ","ȅ","ȇ","ȉ","ȋ","ȍ","ȏ","ȑ","ȓ","ȕ","ȗ","ș","ț","ȝ","ȟ","ȡ","ȣ","ȥ","ȧ","ȩ","ȫ","ȭ","ȯ","ȱ",["ȳ","ȹ"],"ȼ",["ȿ","ɀ"],"ɂ","ɇ","ɉ","ɋ","ɍ",["ɏ","ʓ"],["ʕ","ʯ"],"ͱ","ͳ","ͷ",["ͻ","ͽ"],"ΐ",["ά","ώ"],["ϐ","ϑ"],["ϕ","ϗ"],"ϙ","ϛ","ϝ","ϟ","ϡ","ϣ","ϥ","ϧ","ϩ","ϫ","ϭ",["ϯ","ϳ"],"ϵ","ϸ",["ϻ","ϼ"],["а","џ"],"ѡ","ѣ","ѥ","ѧ","ѩ","ѫ","ѭ","ѯ","ѱ","ѳ","ѵ","ѷ","ѹ","ѻ","ѽ","ѿ","ҁ","ҋ","ҍ","ҏ","ґ","ғ","ҕ","җ","ҙ","қ","ҝ","ҟ","ҡ","ң","ҥ","ҧ","ҩ","ҫ","ҭ","ү","ұ","ҳ","ҵ","ҷ","ҹ","һ","ҽ","ҿ","ӂ","ӄ","ӆ","ӈ","ӊ","ӌ",["ӎ","ӏ"],"ӑ","ӓ","ӕ","ӗ","ә","ӛ","ӝ","ӟ","ӡ","ӣ","ӥ","ӧ","ө","ӫ","ӭ","ӯ","ӱ","ӳ","ӵ","ӷ","ӹ","ӻ","ӽ","ӿ","ԁ","ԃ","ԅ","ԇ","ԉ","ԋ","ԍ","ԏ","ԑ","ԓ","ԕ","ԗ","ԙ","ԛ","ԝ","ԟ","ԡ","ԣ","ԥ","ԧ","ԩ","ԫ","ԭ","ԯ",["ա","և"],["ᏸ","ᏽ"],["ᴀ","ᴫ"],["ᵫ","ᵷ"],["ᵹ","ᶚ"],"ḁ","ḃ","ḅ","ḇ","ḉ","ḋ","ḍ","ḏ","ḑ","ḓ","ḕ","ḗ","ḙ","ḛ","ḝ","ḟ","ḡ","ḣ","ḥ","ḧ","ḩ","ḫ","ḭ","ḯ","ḱ","ḳ","ḵ","ḷ","ḹ","ḻ","ḽ","ḿ","ṁ","ṃ","ṅ","ṇ","ṉ","ṋ","ṍ","ṏ","ṑ","ṓ","ṕ","ṗ","ṙ","ṛ","ṝ","ṟ","ṡ","ṣ","ṥ","ṧ","ṩ","ṫ","ṭ","ṯ","ṱ","ṳ","ṵ","ṷ","ṹ","ṻ","ṽ","ṿ","ẁ","ẃ","ẅ","ẇ","ẉ","ẋ","ẍ","ẏ","ẑ","ẓ",["ẕ","ẝ"],"ẟ","ạ","ả","ấ","ầ","ẩ","ẫ","ậ","ắ","ằ","ẳ","ẵ","ặ","ẹ","ẻ","ẽ","ế","ề","ể","ễ","ệ","ỉ","ị","ọ","ỏ","ố","ồ","ổ","ỗ","ộ","ớ","ờ","ở","ỡ","ợ","ụ","ủ","ứ","ừ","ử","ữ","ự","ỳ","ỵ","ỷ","ỹ","ỻ","ỽ",["ỿ","ἇ"],["ἐ","ἕ"],["ἠ","ἧ"],["ἰ","ἷ"],["ὀ","ὅ"],["ὐ","ὗ"],["ὠ","ὧ"],["ὰ","ώ"],["ᾀ","ᾇ"],["ᾐ","ᾗ"],["ᾠ","ᾧ"],["ᾰ","ᾴ"],["ᾶ","ᾷ"],"ι",["ῂ","ῄ"],["ῆ","ῇ"],["ῐ","ΐ"],["ῖ","ῗ"],["ῠ","ῧ"],["ῲ","ῴ"],["ῶ","ῷ"],"ℊ",["ℎ","ℏ"],"ℓ","ℯ","ℴ","ℹ",["ℼ","ℽ"],["ⅆ","ⅉ"],"ⅎ","ↄ",["ⰰ","ⱞ"],"ⱡ",["ⱥ","ⱦ"],"ⱨ","ⱪ","ⱬ","ⱱ",["ⱳ","ⱴ"],["ⱶ","ⱻ"],"ⲁ","ⲃ","ⲅ","ⲇ","ⲉ","ⲋ","ⲍ","ⲏ","ⲑ","ⲓ","ⲕ","ⲗ","ⲙ","ⲛ","ⲝ","ⲟ","ⲡ","ⲣ","ⲥ","ⲧ","ⲩ","ⲫ","ⲭ","ⲯ","ⲱ","ⲳ","ⲵ","ⲷ","ⲹ","ⲻ","ⲽ","ⲿ","ⳁ","ⳃ","ⳅ","ⳇ","ⳉ","ⳋ","ⳍ","ⳏ","ⳑ","ⳓ","ⳕ","ⳗ","ⳙ","ⳛ","ⳝ","ⳟ","ⳡ",["ⳣ","ⳤ"],"ⳬ","ⳮ","ⳳ",["ⴀ","ⴥ"],"ⴧ","ⴭ","ꙁ","ꙃ","ꙅ","ꙇ","ꙉ","ꙋ","ꙍ","ꙏ","ꙑ","ꙓ","ꙕ","ꙗ","ꙙ","ꙛ","ꙝ","ꙟ","ꙡ","ꙣ","ꙥ","ꙧ","ꙩ","ꙫ","ꙭ","ꚁ","ꚃ","ꚅ","ꚇ","ꚉ","ꚋ","ꚍ","ꚏ","ꚑ","ꚓ","ꚕ","ꚗ","ꚙ","ꚛ","ꜣ","ꜥ","ꜧ","ꜩ","ꜫ","ꜭ",["ꜯ","ꜱ"],"ꜳ","ꜵ","ꜷ","ꜹ","ꜻ","ꜽ","ꜿ","ꝁ","ꝃ","ꝅ","ꝇ","ꝉ","ꝋ","ꝍ","ꝏ","ꝑ","ꝓ","ꝕ","ꝗ","ꝙ","ꝛ","ꝝ","ꝟ","ꝡ","ꝣ","ꝥ","ꝧ","ꝩ","ꝫ","ꝭ","ꝯ",["ꝱ","ꝸ"],"ꝺ","ꝼ","ꝿ","ꞁ","ꞃ","ꞅ","ꞇ","ꞌ","ꞎ","ꞑ",["ꞓ","ꞕ"],"ꞗ","ꞙ","ꞛ","ꞝ","ꞟ","ꞡ","ꞣ","ꞥ","ꞧ","ꞩ","ꞵ","ꞷ","ꟺ",["ꬰ","ꭚ"],["ꭠ","ꭥ"],["ꭰ","ꮿ"],["ﬀ","ﬆ"],["ﬓ","ﬗ"],["ａ","ｚ"]],!1,!1),je=st([["ʰ","ˁ"],["ˆ","ˑ"],["ˠ","ˤ"],"ˬ","ˮ","ʹ","ͺ","ՙ","ـ",["ۥ","ۦ"],["ߴ","ߵ"],"ߺ","ࠚ","ࠤ","ࠨ","ॱ","ๆ","ໆ","ჼ","ៗ","ᡃ","ᪧ",["ᱸ","ᱽ"],["ᴬ","ᵪ"],"ᵸ",["ᶛ","ᶿ"],"ⁱ","ⁿ",["ₐ","ₜ"],["ⱼ","ⱽ"],"ⵯ","ⸯ","々",["〱","〵"],"〻",["ゝ","ゞ"],["ー","ヾ"],"ꀕ",["ꓸ","ꓽ"],"ꘌ","ꙿ",["ꚜ","ꚝ"],["ꜗ","ꜟ"],"ꝰ","ꞈ",["ꟸ","ꟹ"],"ꧏ","ꧦ","ꩰ","ꫝ",["ꫳ","ꫴ"],["ꭜ","ꭟ"],"ｰ",["ﾞ","ﾟ"]],!1,!1),He=st(["ª","º","ƻ",["ǀ","ǃ"],"ʔ",["א","ת"],["װ","ײ"],["ؠ","ؿ"],["ف","ي"],["ٮ","ٯ"],["ٱ","ۓ"],"ە",["ۮ","ۯ"],["ۺ","ۼ"],"ۿ","ܐ",["ܒ","ܯ"],["ݍ","ޥ"],"ޱ",["ߊ","ߪ"],["ࠀ","ࠕ"],["ࡀ","ࡘ"],["ࢠ","ࢴ"],["ऄ","ह"],"ऽ","ॐ",["क़","ॡ"],["ॲ","ঀ"],["অ","ঌ"],["এ","ঐ"],["ও","ন"],["প","র"],"ল",["শ","হ"],"ঽ","ৎ",["ড়","ঢ়"],["য়","ৡ"],["ৰ","ৱ"],["ਅ","ਊ"],["ਏ","ਐ"],["ਓ","ਨ"],["ਪ","ਰ"],["ਲ","ਲ਼"],["ਵ","ਸ਼"],["ਸ","ਹ"],["ਖ਼","ੜ"],"ਫ਼",["ੲ","ੴ"],["અ","ઍ"],["એ","ઑ"],["ઓ","ન"],["પ","ર"],["લ","ળ"],["વ","હ"],"ઽ","ૐ",["ૠ","ૡ"],"ૹ",["ଅ","ଌ"],["ଏ","ଐ"],["ଓ","ନ"],["ପ","ର"],["ଲ","ଳ"],["ଵ","ହ"],"ଽ",["ଡ଼","ଢ଼"],["ୟ","ୡ"],"ୱ","ஃ",["அ","ஊ"],["எ","ஐ"],["ஒ","க"],["ங","ச"],"ஜ",["ஞ","ட"],["ண","த"],["ந","ப"],["ம","ஹ"],"ௐ",["అ","ఌ"],["ఎ","ఐ"],["ఒ","న"],["ప","హ"],"ఽ",["ౘ","ౚ"],["ౠ","ౡ"],["ಅ","ಌ"],["ಎ","ಐ"],["ಒ","ನ"],["ಪ","ಳ"],["ವ","ಹ"],"ಽ","ೞ",["ೠ","ೡ"],["ೱ","ೲ"],["അ","ഌ"],["എ","ഐ"],["ഒ","ഺ"],"ഽ","ൎ",["ൟ","ൡ"],["ൺ","ൿ"],["අ","ඖ"],["ක","න"],["ඳ","ර"],"ල",["ව","ෆ"],["ก","ะ"],["า","ำ"],["เ","ๅ"],["ກ","ຂ"],"ຄ",["ງ","ຈ"],"ຊ","ຍ",["ດ","ທ"],["ນ","ຟ"],["ມ","ຣ"],"ລ","ວ",["ສ","ຫ"],["ອ","ະ"],["າ","ຳ"],"ຽ",["ເ","ໄ"],["ໜ","ໟ"],"ༀ",["ཀ","ཇ"],["ཉ","ཬ"],["ྈ","ྌ"],["က","ဪ"],"ဿ",["ၐ","ၕ"],["ၚ","ၝ"],"ၡ",["ၥ","ၦ"],["ၮ","ၰ"],["ၵ","ႁ"],"ႎ",["ა","ჺ"],["ჽ","ቈ"],["ቊ","ቍ"],["ቐ","ቖ"],"ቘ",["ቚ","ቝ"],["በ","ኈ"],["ኊ","ኍ"],["ነ","ኰ"],["ኲ","ኵ"],["ኸ","ኾ"],"ዀ",["ዂ","ዅ"],["ወ","ዖ"],["ዘ","ጐ"],["ጒ","ጕ"],["ጘ","ፚ"],["ᎀ","ᎏ"],["ᐁ","ᙬ"],["ᙯ","ᙿ"],["ᚁ","ᚚ"],["ᚠ","ᛪ"],["ᛱ","ᛸ"],["ᜀ","ᜌ"],["ᜎ","ᜑ"],["ᜠ","ᜱ"],["ᝀ","ᝑ"],["ᝠ","ᝬ"],["ᝮ","ᝰ"],["ក","ឳ"],"ៜ",["ᠠ","ᡂ"],["ᡄ","ᡷ"],["ᢀ","ᢨ"],"ᢪ",["ᢰ","ᣵ"],["ᤀ","ᤞ"],["ᥐ","ᥭ"],["ᥰ","ᥴ"],["ᦀ","ᦫ"],["ᦰ","ᧉ"],["ᨀ","ᨖ"],["ᨠ","ᩔ"],["ᬅ","ᬳ"],["ᭅ","ᭋ"],["ᮃ","ᮠ"],["ᮮ","ᮯ"],["ᮺ","ᯥ"],["ᰀ","ᰣ"],["ᱍ","ᱏ"],["ᱚ","ᱷ"],["ᳩ","ᳬ"],["ᳮ","ᳱ"],["ᳵ","ᳶ"],["ℵ","ℸ"],["ⴰ","ⵧ"],["ⶀ","ⶖ"],["ⶠ","ⶦ"],["ⶨ","ⶮ"],["ⶰ","ⶶ"],["ⶸ","ⶾ"],["ⷀ","ⷆ"],["ⷈ","ⷎ"],["ⷐ","ⷖ"],["ⷘ","ⷞ"],"〆","〼",["ぁ","ゖ"],"ゟ",["ァ","ヺ"],"ヿ",["ㄅ","ㄭ"],["ㄱ","ㆎ"],["ㆠ","ㆺ"],["ㇰ","ㇿ"],["㐀","䶵"],["一","鿕"],["ꀀ","ꀔ"],["ꀖ","ꒌ"],["ꓐ","ꓷ"],["ꔀ","ꘋ"],["ꘐ","ꘟ"],["ꘪ","ꘫ"],"ꙮ",["ꚠ","ꛥ"],"ꞏ","ꟷ",["ꟻ","ꠁ"],["ꠃ","ꠅ"],["ꠇ","ꠊ"],["ꠌ","ꠢ"],["ꡀ","ꡳ"],["ꢂ","ꢳ"],["ꣲ","ꣷ"],"ꣻ","ꣽ",["ꤊ","ꤥ"],["ꤰ","ꥆ"],["ꥠ","ꥼ"],["ꦄ","ꦲ"],["ꧠ","ꧤ"],["ꧧ","ꧯ"],["ꧺ","ꧾ"],["ꨀ","ꨨ"],["ꩀ","ꩂ"],["ꩄ","ꩋ"],["ꩠ","ꩯ"],["ꩱ","ꩶ"],"ꩺ",["ꩾ","ꪯ"],"ꪱ",["ꪵ","ꪶ"],["ꪹ","ꪽ"],"ꫀ","ꫂ",["ꫛ","ꫜ"],["ꫠ","ꫪ"],"ꫲ",["ꬁ","ꬆ"],["ꬉ","ꬎ"],["ꬑ","ꬖ"],["ꬠ","ꬦ"],["ꬨ","ꬮ"],["ꯀ","ꯢ"],["가","힣"],["ힰ","ퟆ"],["ퟋ","ퟻ"],["豈","舘"],["並","龎"],"יִ",["ײַ","ﬨ"],["שׁ","זּ"],["טּ","לּ"],"מּ",["נּ","סּ"],["ףּ","פּ"],["צּ","ﮱ"],["ﯓ","ﴽ"],["ﵐ","ﶏ"],["ﶒ","ﷇ"],["ﷰ","ﷻ"],["ﹰ","ﹴ"],["ﹶ","ﻼ"],["ｦ","ｯ"],["ｱ","ﾝ"],["ﾠ","ﾾ"],["ￂ","ￇ"],["ￊ","ￏ"],["ￒ","ￗ"],["ￚ","ￜ"]],!1,!1),Ue=st(["ǅ","ǈ","ǋ","ǲ",["ᾈ","ᾏ"],["ᾘ","ᾟ"],["ᾨ","ᾯ"],"ᾼ","ῌ","ῼ"],!1,!1),Ge=st([["A","Z"],["À","Ö"],["Ø","Þ"],"Ā","Ă","Ą","Ć","Ĉ","Ċ","Č","Ď","Đ","Ē","Ĕ","Ė","Ę","Ě","Ĝ","Ğ","Ġ","Ģ","Ĥ","Ħ","Ĩ","Ī","Ĭ","Į","İ","Ĳ","Ĵ","Ķ","Ĺ","Ļ","Ľ","Ŀ","Ł","Ń","Ņ","Ň","Ŋ","Ō","Ŏ","Ő","Œ","Ŕ","Ŗ","Ř","Ś","Ŝ","Ş","Š","Ţ","Ť","Ŧ","Ũ","Ū","Ŭ","Ů","Ű","Ų","Ŵ","Ŷ",["Ÿ","Ź"],"Ż","Ž",["Ɓ","Ƃ"],"Ƅ",["Ɔ","Ƈ"],["Ɖ","Ƌ"],["Ǝ","Ƒ"],["Ɠ","Ɣ"],["Ɩ","Ƙ"],["Ɯ","Ɲ"],["Ɵ","Ơ"],"Ƣ","Ƥ",["Ʀ","Ƨ"],"Ʃ","Ƭ",["Ʈ","Ư"],["Ʊ","Ƴ"],"Ƶ",["Ʒ","Ƹ"],"Ƽ","Ǆ","Ǉ","Ǌ","Ǎ","Ǐ","Ǒ","Ǔ","Ǖ","Ǘ","Ǚ","Ǜ","Ǟ","Ǡ","Ǣ","Ǥ","Ǧ","Ǩ","Ǫ","Ǭ","Ǯ","Ǳ","Ǵ",["Ƕ","Ǹ"],"Ǻ","Ǽ","Ǿ","Ȁ","Ȃ","Ȅ","Ȇ","Ȉ","Ȋ","Ȍ","Ȏ","Ȑ","Ȓ","Ȕ","Ȗ","Ș","Ț","Ȝ","Ȟ","Ƞ","Ȣ","Ȥ","Ȧ","Ȩ","Ȫ","Ȭ","Ȯ","Ȱ","Ȳ",["Ⱥ","Ȼ"],["Ƚ","Ⱦ"],"Ɂ",["Ƀ","Ɇ"],"Ɉ","Ɋ","Ɍ","Ɏ","Ͱ","Ͳ","Ͷ","Ϳ","Ά",["Έ","Ί"],"Ό",["Ύ","Ώ"],["Α","Ρ"],["Σ","Ϋ"],"Ϗ",["ϒ","ϔ"],"Ϙ","Ϛ","Ϝ","Ϟ","Ϡ","Ϣ","Ϥ","Ϧ","Ϩ","Ϫ","Ϭ","Ϯ","ϴ","Ϸ",["Ϲ","Ϻ"],["Ͻ","Я"],"Ѡ","Ѣ","Ѥ","Ѧ","Ѩ","Ѫ","Ѭ","Ѯ","Ѱ","Ѳ","Ѵ","Ѷ","Ѹ","Ѻ","Ѽ","Ѿ","Ҁ","Ҋ","Ҍ","Ҏ","Ґ","Ғ","Ҕ","Җ","Ҙ","Қ","Ҝ","Ҟ","Ҡ","Ң","Ҥ","Ҧ","Ҩ","Ҫ","Ҭ","Ү","Ұ","Ҳ","Ҵ","Ҷ","Ҹ","Һ","Ҽ","Ҿ",["Ӏ","Ӂ"],"Ӄ","Ӆ","Ӈ","Ӊ","Ӌ","Ӎ","Ӑ","Ӓ","Ӕ","Ӗ","Ә","Ӛ","Ӝ","Ӟ","Ӡ","Ӣ","Ӥ","Ӧ","Ө","Ӫ","Ӭ","Ӯ","Ӱ","Ӳ","Ӵ","Ӷ","Ӹ","Ӻ","Ӽ","Ӿ","Ԁ","Ԃ","Ԅ","Ԇ","Ԉ","Ԋ","Ԍ","Ԏ","Ԑ","Ԓ","Ԕ","Ԗ","Ԙ","Ԛ","Ԝ","Ԟ","Ԡ","Ԣ","Ԥ","Ԧ","Ԩ","Ԫ","Ԭ","Ԯ",["Ա","Ֆ"],["Ⴀ","Ⴥ"],"Ⴧ","Ⴭ",["Ꭰ","Ᏽ"],"Ḁ","Ḃ","Ḅ","Ḇ","Ḉ","Ḋ","Ḍ","Ḏ","Ḑ","Ḓ","Ḕ","Ḗ","Ḙ","Ḛ","Ḝ","Ḟ","Ḡ","Ḣ","Ḥ","Ḧ","Ḩ","Ḫ","Ḭ","Ḯ","Ḱ","Ḳ","Ḵ","Ḷ","Ḹ","Ḻ","Ḽ","Ḿ","Ṁ","Ṃ","Ṅ","Ṇ","Ṉ","Ṋ","Ṍ","Ṏ","Ṑ","Ṓ","Ṕ","Ṗ","Ṙ","Ṛ","Ṝ","Ṟ","Ṡ","Ṣ","Ṥ","Ṧ","Ṩ","Ṫ","Ṭ","Ṯ","Ṱ","Ṳ","Ṵ","Ṷ","Ṹ","Ṻ","Ṽ","Ṿ","Ẁ","Ẃ","Ẅ","Ẇ","Ẉ","Ẋ","Ẍ","Ẏ","Ẑ","Ẓ","Ẕ","ẞ","Ạ","Ả","Ấ","Ầ","Ẩ","Ẫ","Ậ","Ắ","Ằ","Ẳ","Ẵ","Ặ","Ẹ","Ẻ","Ẽ","Ế","Ề","Ể","Ễ","Ệ","Ỉ","Ị","Ọ","Ỏ","Ố","Ồ","Ổ","Ỗ","Ộ","Ớ","Ờ","Ở","Ỡ","Ợ","Ụ","Ủ","Ứ","Ừ","Ử","Ữ","Ự","Ỳ","Ỵ","Ỷ","Ỹ","Ỻ","Ỽ","Ỿ",["Ἀ","Ἇ"],["Ἐ","Ἕ"],["Ἠ","Ἧ"],["Ἰ","Ἷ"],["Ὀ","Ὅ"],"Ὑ","Ὓ","Ὕ","Ὗ",["Ὠ","Ὧ"],["Ᾰ","Ά"],["Ὲ","Ή"],["Ῐ","Ί"],["Ῠ","Ῥ"],["Ὸ","Ώ"],"ℂ","ℇ",["ℋ","ℍ"],["ℐ","ℒ"],"ℕ",["ℙ","ℝ"],"ℤ","Ω","ℨ",["K","ℭ"],["ℰ","ℳ"],["ℾ","ℿ"],"ⅅ","Ↄ",["Ⰰ","Ⱞ"],"Ⱡ",["Ɫ","Ɽ"],"Ⱨ","Ⱪ","Ⱬ",["Ɑ","Ɒ"],"Ⱳ","Ⱶ",["Ȿ","Ⲁ"],"Ⲃ","Ⲅ","Ⲇ","Ⲉ","Ⲋ","Ⲍ","Ⲏ","Ⲑ","Ⲓ","Ⲕ","Ⲗ","Ⲙ","Ⲛ","Ⲝ","Ⲟ","Ⲡ","Ⲣ","Ⲥ","Ⲧ","Ⲩ","Ⲫ","Ⲭ","Ⲯ","Ⲱ","Ⲳ","Ⲵ","Ⲷ","Ⲹ","Ⲻ","Ⲽ","Ⲿ","Ⳁ","Ⳃ","Ⳅ","Ⳇ","Ⳉ","Ⳋ","Ⳍ","Ⳏ","Ⳑ","Ⳓ","Ⳕ","Ⳗ","Ⳙ","Ⳛ","Ⳝ","Ⳟ","Ⳡ","Ⳣ","Ⳬ","Ⳮ","Ⳳ","Ꙁ","Ꙃ","Ꙅ","Ꙇ","Ꙉ","Ꙋ","Ꙍ","Ꙏ","Ꙑ","Ꙓ","Ꙕ","Ꙗ","Ꙙ","Ꙛ","Ꙝ","Ꙟ","Ꙡ","Ꙣ","Ꙥ","Ꙧ","Ꙩ","Ꙫ","Ꙭ","Ꚁ","Ꚃ","Ꚅ","Ꚇ","Ꚉ","Ꚋ","Ꚍ","Ꚏ","Ꚑ","Ꚓ","Ꚕ","Ꚗ","Ꚙ","Ꚛ","Ꜣ","Ꜥ","Ꜧ","Ꜩ","Ꜫ","Ꜭ","Ꜯ","Ꜳ","Ꜵ","Ꜷ","Ꜹ","Ꜻ","Ꜽ","Ꜿ","Ꝁ","Ꝃ","Ꝅ","Ꝇ","Ꝉ","Ꝋ","Ꝍ","Ꝏ","Ꝑ","Ꝓ","Ꝕ","Ꝗ","Ꝙ","Ꝛ","Ꝝ","Ꝟ","Ꝡ","Ꝣ","Ꝥ","Ꝧ","Ꝩ","Ꝫ","Ꝭ","Ꝯ","Ꝺ","Ꝼ",["Ᵹ","Ꝿ"],"Ꞁ","Ꞃ","Ꞅ","Ꞇ","Ꞌ","Ɥ","Ꞑ","Ꞓ","Ꞗ","Ꞙ","Ꞛ","Ꞝ","Ꞟ","Ꞡ","Ꞣ","Ꞥ","Ꞧ","Ꞩ",["Ɦ","Ɬ"],["Ʞ","Ꞵ"],"Ꞷ",["Ａ","Ｚ"]],!1,!1),We=st(["ः","ऻ",["ा","ी"],["ॉ","ौ"],["ॎ","ॏ"],["ং","ঃ"],["া","ী"],["ে","ৈ"],["ো","ৌ"],"ৗ","ਃ",["ਾ","ੀ"],"ઃ",["ા","ી"],"ૉ",["ો","ૌ"],["ଂ","ଃ"],"ା","ୀ",["େ","ୈ"],["ୋ","ୌ"],"ୗ",["ா","ி"],["ு","ூ"],["ெ","ை"],["ொ","ௌ"],"ௗ",["ఁ","ః"],["ు","ౄ"],["ಂ","ಃ"],"ಾ",["ೀ","ೄ"],["ೇ","ೈ"],["ೊ","ೋ"],["ೕ","ೖ"],["ം","ഃ"],["ാ","ീ"],["െ","ൈ"],["ൊ","ൌ"],"ൗ",["ං","ඃ"],["ා","ෑ"],["ෘ","ෟ"],["ෲ","ෳ"],["༾","༿"],"ཿ",["ါ","ာ"],"ေ","း",["ျ","ြ"],["ၖ","ၗ"],["ၢ","ၤ"],["ၧ","ၭ"],["ႃ","ႄ"],["ႇ","ႌ"],"ႏ",["ႚ","ႜ"],"ា",["ើ","ៅ"],["ះ","ៈ"],["ᤣ","ᤦ"],["ᤩ","ᤫ"],["ᤰ","ᤱ"],["ᤳ","ᤸ"],["ᨙ","ᨚ"],"ᩕ","ᩗ","ᩡ",["ᩣ","ᩤ"],["ᩭ","ᩲ"],"ᬄ","ᬵ","ᬻ",["ᬽ","ᭁ"],["ᭃ","᭄"],"ᮂ","ᮡ",["ᮦ","ᮧ"],"᮪","ᯧ",["ᯪ","ᯬ"],"ᯮ",["᯲","᯳"],["ᰤ","ᰫ"],["ᰴ","ᰵ"],"᳡",["ᳲ","ᳳ"],["〮","〯"],["ꠣ","ꠤ"],"ꠧ",["ꢀ","ꢁ"],["ꢴ","ꣃ"],["ꥒ","꥓"],"ꦃ",["ꦴ","ꦵ"],["ꦺ","ꦻ"],["ꦽ","꧀"],["ꨯ","ꨰ"],["ꨳ","ꨴ"],"ꩍ","ꩻ","ꩽ","ꫫ",["ꫮ","ꫯ"],"ꫵ",["ꯣ","ꯤ"],["ꯦ","ꯧ"],["ꯩ","ꯪ"],"꯬"],!1,!1),Ye=st([["̀","ͯ"],["҃","҇"],["֑","ֽ"],"ֿ",["ׁ","ׂ"],["ׄ","ׅ"],"ׇ",["ؐ","ؚ"],["ً","ٟ"],"ٰ",["ۖ","ۜ"],["۟","ۤ"],["ۧ","ۨ"],["۪","ۭ"],"ܑ",["ܰ","݊"],["ަ","ް"],["߫","߳"],["ࠖ","࠙"],["ࠛ","ࠣ"],["ࠥ","ࠧ"],["ࠩ","࠭"],["࡙","࡛"],["ࣣ","ं"],"ऺ","़",["ु","ै"],"्",["॑","ॗ"],["ॢ","ॣ"],"ঁ","়",["ু","ৄ"],"্",["ৢ","ৣ"],["ਁ","ਂ"],"਼",["ੁ","ੂ"],["ੇ","ੈ"],["ੋ","੍"],"ੑ",["ੰ","ੱ"],"ੵ",["ઁ","ં"],"઼",["ુ","ૅ"],["ે","ૈ"],"્",["ૢ","ૣ"],"ଁ","଼","ି",["ୁ","ୄ"],"୍","ୖ",["ୢ","ୣ"],"ஂ","ீ","்","ఀ",["ా","ీ"],["ె","ై"],["ొ","్"],["ౕ","ౖ"],["ౢ","ౣ"],"ಁ","಼","ಿ","ೆ",["ೌ","್"],["ೢ","ೣ"],"ഁ",["ു","ൄ"],"്",["ൢ","ൣ"],"්",["ි","ු"],"ූ","ั",["ิ","ฺ"],["็","๎"],"ັ",["ິ","ູ"],["ົ","ຼ"],["່","ໍ"],["༘","༙"],"༵","༷","༹",["ཱ","ཾ"],["ྀ","྄"],["྆","྇"],["ྍ","ྗ"],["ྙ","ྼ"],"࿆",["ိ","ူ"],["ဲ","့"],["္","်"],["ွ","ှ"],["ၘ","ၙ"],["ၞ","ၠ"],["ၱ","ၴ"],"ႂ",["ႅ","ႆ"],"ႍ","ႝ",["፝","፟"],["ᜒ","᜔"],["ᜲ","᜴"],["ᝒ","ᝓ"],["ᝲ","ᝳ"],["឴","឵"],["ិ","ួ"],"ំ",["៉","៓"],"៝",["᠋","᠍"],"ᢩ",["ᤠ","ᤢ"],["ᤧ","ᤨ"],"ᤲ",["᤹","᤻"],["ᨗ","ᨘ"],"ᨛ","ᩖ",["ᩘ","ᩞ"],"᩠","ᩢ",["ᩥ","ᩬ"],["ᩳ","᩼"],"᩿",["᪰","᪽"],["ᬀ","ᬃ"],"᬴",["ᬶ","ᬺ"],"ᬼ","ᭂ",["᭫","᭳"],["ᮀ","ᮁ"],["ᮢ","ᮥ"],["ᮨ","ᮩ"],["᮫","ᮭ"],"᯦",["ᯨ","ᯩ"],"ᯭ",["ᯯ","ᯱ"],["ᰬ","ᰳ"],["ᰶ","᰷"],["᳐","᳒"],["᳔","᳠"],["᳢","᳨"],"᳭","᳴",["᳸","᳹"],["᷀","᷵"],["᷼","᷿"],["⃐","⃜"],"⃡",["⃥","⃰"],["⳯","⳱"],"⵿",["ⷠ","ⷿ"],["〪","〭"],["゙","゚"],"꙯",["ꙴ","꙽"],["ꚞ","ꚟ"],["꛰","꛱"],"ꠂ","꠆","ꠋ",["ꠥ","ꠦ"],"꣄",["꣠","꣱"],["ꤦ","꤭"],["ꥇ","ꥑ"],["ꦀ","ꦂ"],"꦳",["ꦶ","ꦹ"],"ꦼ","ꧥ",["ꨩ","ꨮ"],["ꨱ","ꨲ"],["ꨵ","ꨶ"],"ꩃ","ꩌ","ꩼ","ꪰ",["ꪲ","ꪴ"],["ꪷ","ꪸ"],["ꪾ","꪿"],"꫁",["ꫬ","ꫭ"],"꫶","ꯥ","ꯨ","꯭","ﬞ",["︀","️"],["︠","︯"]],!1,!1),qe=st([["0","9"],["٠","٩"],["۰","۹"],["߀","߉"],["०","९"],["০","৯"],["੦","੯"],["૦","૯"],["୦","୯"],["௦","௯"],["౦","౯"],["೦","೯"],["൦","൯"],["෦","෯"],["๐","๙"],["໐","໙"],["༠","༩"],["၀","၉"],["႐","႙"],["០","៩"],["᠐","᠙"],["᥆","᥏"],["᧐","᧙"],["᪀","᪉"],["᪐","᪙"],["᭐","᭙"],["᮰","᮹"],["᱀","᱉"],["᱐","᱙"],["꘠","꘩"],["꣐","꣙"],["꤀","꤉"],["꧐","꧙"],["꧰","꧹"],["꩐","꩙"],["꯰","꯹"],["０","９"]],!1,!1),ze=st([["ᛮ","ᛰ"],["Ⅰ","ↂ"],["ↅ","ↈ"],"〇",["〡","〩"],["〸","〺"],["ꛦ","ꛯ"]],!1,!1),Qe=st(["_",["‿","⁀"],"⁔",["︳","︴"],["﹍","﹏"],"＿"],!1,!1),Je=st([" "," "," ",[" "," "]," "," ","　"],!1,!1),Ke=at(";",!1),Xe=0,Ze=0,et=[{line:1,column:1}],tt=0,rt=[],nt=0;if("startRule"in t){if(!(t.startRule in o))throw new Error("Can't start parsing from rule \""+t.startRule+'".');a=o[t.startRule]}function ut(){return lt(Ze,Xe)}function ot(e,t){throw function(e,t){return new peg$SyntaxError(e,null,null,t)}(e,t=void 0!==t?t:lt(Ze,Xe))}function at(e,t){return{type:"literal",text:e,ignoreCase:t}}function st(e,t,r){return{type:"class",parts:e,inverted:t,ignoreCase:r}}function it(e){return{type:"other",description:e}}function ct(t){var r,n=et[t];if(n)return n;for(r=t-1;!et[r];)r--;for(n={line:(n=et[r]).line,column:n.column};r<t;)10===e.charCodeAt(r)?(n.line++,n.column=1):n.column++,r++;return et[t]=n,n}function lt(e,t,r){var n=ct(e),o=ct(t),a={source:u,start:{offset:e,line:n.line,column:n.column},end:{offset:t,line:o.line,column:o.column}};return r&&u&&"function"==typeof u.offset&&(a.start=u.offset(a.start),a.end=u.offset(a.end)),a}function pt(e){Xe<tt||(Xe>tt&&(tt=Xe,rt=[]),rt.push(e))}function ht(){var t,r,u,o,a,c;if(t=Xe,Wt(),r=Xe,(u=function(){var t,r,u,o;return t=Xe,123===e.charCodeAt(Xe)?(r=s,Xe++):(r=n,0===nt&&pt(O)),r!==n&&(u=Ut())!==n?(125===e.charCodeAt(Xe)?(o=i,Xe++):(o=n,0===nt&&pt(b)),o!==n&&Yt()!==n?(Ze=t,t=function(e){return{type:"top_level_initializer",code:e[0],codeLocation:e[1],location:ut()}}(u)):(Xe=t,t=n)):(Xe=t,t=n),t}())!==n?(o=Wt(),r=u):(Xe=r,r=n),r===n&&(r=null),u=Xe,(o=function(){var e,t;return e=Xe,(t=Ut())!==n&&Yt()!==n?(Ze=e,e=function(e){return{type:"initializer",code:e[0],codeLocation:e[1],location:ut()}}(t)):(Xe=e,e=n),e}())!==n?(a=Wt(),u=o):(Xe=u,u=n),u===n&&(u=null),o=[],a=Xe,(c=At())!==n?(Wt(),a=c):(Xe=a,a=n),a!==n)for(;a!==n;)o.push(a),a=Xe,(c=At())!==n?(Wt(),a=c):(Xe=a,a=n);else o=n;return o!==n?(Ze=t,t=function(e,t,r){return{type:"grammar",topLevelInitializer:e,initializer:t,rules:r,location:ut()}}(r,u,o)):(Xe=t,t=n),t}function At(){var t,r,u,o,a;return t=Xe,(r=Ot())!==n?(Wt(),u=Xe,(o=Tt())!==n?(Wt(),u=o):(Xe=u,u=n),u===n&&(u=null),61===e.charCodeAt(Xe)?(o="=",Xe++):(o=n,0===nt&&pt(I)),o!==n?(Wt(),(a=ft())!==n&&Yt()!==n?(Ze=t,t=function(e,t,r){return{type:"rule",name:e[0],nameLocation:e[1],expression:null!==t?{type:"named",name:t,expression:r,location:ut()}:r,location:ut()}}(r,u,a)):(Xe=t,t=n)):(Xe=t,t=n)):(Xe=t,t=n),t}function ft(){var t,r,u,o,a,s;if(t=Xe,(r=dt())!==n){for(u=[],o=Xe,Wt(),47===e.charCodeAt(Xe)?(a="/",Xe++):(a=n,0===nt&&pt(T)),a!==n?(Wt(),(s=dt())!==n?o=s:(Xe=o,o=n)):(Xe=o,o=n);o!==n;)u.push(o),o=Xe,Wt(),47===e.charCodeAt(Xe)?(a="/",Xe++):(a=n,0===nt&&pt(T)),a!==n?(Wt(),(s=dt())!==n?o=s:(Xe=o,o=n)):(Xe=o,o=n);Ze=t,t=function(e,t){return t.length>0?{type:"choice",alternatives:[e].concat(t),location:ut()}:e}(r,u)}else Xe=t,t=n;return t}function dt(){var e,t,r,u;return e=Xe,(t=function(){var e,t,r,u,o;if(e=Xe,(t=Et())!==n){for(r=[],u=Xe,Wt(),(o=Et())!==n?u=o:(Xe=u,u=n);u!==n;)r.push(u),u=Xe,Wt(),(o=Et())!==n?u=o:(Xe=u,u=n);Ze=e,e=function(e,t){return t.length>0||"labeled"===e.type&&e.pick?{type:"sequence",elements:[e].concat(t),location:ut()}:e}(t,r)}else Xe=e,e=n;return e}())!==n?(r=Xe,Wt(),(u=Ut())!==n?r=u:(Xe=r,r=n),r===n&&(r=null),Ze=e,e=function(e,t){return null!==t?{type:"action",expression:e,code:t[0],codeLocation:t[1],location:ut()}:e}(t,r)):(Xe=e,e=n),e}function Et(){var t,r,u,o;return t=Xe,(r=function(){var t,r;return t=Xe,64===e.charCodeAt(Xe)?(r="@",Xe++):(r=n,0===nt&&pt(w)),r!==n&&(Ze=t,r=ut()),r}())!==n?((u=gt())===n&&(u=null),(o=mt())!==n?(Ze=t,t=function(e,t,r){return r.type.startsWith("semantic_")&&ot('"@" cannot be used on a semantic predicate',e),{type:"labeled",label:null!==t?t[0]:null,labelLocation:null!==t?t[1]:e,pick:!0,expression:r,location:ut()}}(r,u,o)):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=Xe,(r=gt())!==n?(u=Wt(),(o=mt())!==n?(Ze=t,t=function(e,t){return{type:"labeled",label:e[0],labelLocation:e[1],expression:t,location:ut()}}(r,o)):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=mt())),t}function gt(){var t,r,u;return t=Xe,(r=Ot())!==n?(Wt(),58===e.charCodeAt(Xe)?(u=":",Xe++):(u=n,0===nt&&pt(x)),u!==n?(Ze=t,t=function(e){return qt.indexOf(e[0])>=0&&ot("Label can't be a reserved word \"".concat(e[0],'"'),e[1]),e}(r)):(Xe=t,t=n)):(Xe=t,t=n),t}function mt(){var t,r,u;return t=Xe,(r=function(){var t;return 36===e.charCodeAt(Xe)?(t="$",Xe++):(t=n,0===nt&&pt(R)),t===n&&(38===e.charCodeAt(Xe)?(t="&",Xe++):(t=n,0===nt&&pt(N)),t===n&&(33===e.charCodeAt(Xe)?(t="!",Xe++):(t=n,0===nt&&pt(M)))),t}())!==n?(Wt(),(u=Ct())!==n?(Ze=t,t=function(e,t){return{type:OPS_TO_PREFIXED_TYPES[e],expression:t,location:ut()}}(r,u)):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=Ct()),t}function Ct(){var t,r,u;return t=Xe,(r=_t())!==n?(Wt(),(u=function(){var t;return 63===e.charCodeAt(Xe)?(t="?",Xe++):(t=n,0===nt&&pt(L)),t===n&&(42===e.charCodeAt(Xe)?(t="*",Xe++):(t=n,0===nt&&pt(k)),t===n&&(43===e.charCodeAt(Xe)?(t="+",Xe++):(t=n,0===nt&&pt(V)))),t}())!==n?(Ze=t,t=function(e,t){return{type:OPS_TO_SUFFIXED_TYPES[t],expression:e,location:ut()}}(r,u)):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=function(){var t,r,u,o,a,s,i;return t=Xe,(r=_t())!==n?(Wt(),124===e.charCodeAt(Xe)?(u="|",Xe++):(u=n,0===nt&&pt(j)),u!==n?(Wt(),(o=function(){var t,r,u,o;return t=Xe,(r=yt())===n&&(r=null),Wt(),".."===e.substr(Xe,2)?(u="..",Xe+=2):(u=n,0===nt&&pt(U)),u!==n?(Wt(),(o=yt())===n&&(o=null),Ze=t,t=function(e,t){return[null!==e?e:{type:"constant",value:0},null!==t?t:{type:"constant",value:null}]}(r,o)):(Xe=t,t=n),t===n&&(t=Xe,(r=yt())!==n&&(Ze=t,r=function(e){return[null,e]}(r)),t=r),t}())!==n?(Wt(),a=Xe,44===e.charCodeAt(Xe)?(s=",",Xe++):(s=n,0===nt&&pt(H)),s!==n?(Wt(),(i=ft())!==n?(Wt(),a=i):(Xe=a,a=n)):(Xe=a,a=n),a===n&&(a=null),124===e.charCodeAt(Xe)?(s="|",Xe++):(s=n,0===nt&&pt(j)),s!==n?(Ze=t,t=function(e,t,r){var n=t[0],u=t[1];return"constant"===u.type&&0===u.value&&ot("The maximum count of repetitions of the rule must be > 0",u.location),{type:"repeated",min:n,max:u,expression:e,delimiter:r,location:ut()}}(r,o,a)):(Xe=t,t=n)):(Xe=t,t=n)):(Xe=t,t=n)):(Xe=t,t=n),t}())===n&&(t=_t()),t}function yt(){var t,r;return t=Xe,(r=function(){var t,r,u,o;if(t=Xe,r=Xe,u=[],(o=jt())!==n)for(;o!==n;)u.push(o),o=jt();else u=n;return(r=u!==n?e.substring(r,Xe):u)!==n&&(Ze=t,r=function(e){return parseInt(e,10)}(r)),r}())!==n&&(Ze=t,r=function(e){return{type:"constant",value:e,location:ut()}}(r)),(t=r)===n&&(t=Xe,(r=Ot())!==n&&(Ze=t,r=function(e){return{type:"variable",value:e[0],location:ut()}}(r)),(t=r)===n&&(t=Xe,(r=Ut())!==n&&(Ze=t,r=function(e){return{type:"function",value:e[0],codeLocation:e[1],location:ut()}}(r)),t=r)),t}function _t(){var t,r,u,o;return(t=function(){var t,r,u;return nt++,t=Xe,(r=Tt())!==n?(105===e.charCodeAt(Xe)?(u="i",Xe++):(u=n,0===nt&&pt(ge)),u===n&&(u=null),Ze=t,t=function(e,t){return{type:"literal",value:e,ignoreCase:null!==t,location:ut()}}(r,u)):(Xe=t,t=n),nt--,t===n&&(r=n,0===nt&&pt(Ee)),t}())===n&&(t=function(){var t,r,u,o,a,s;if(nt++,t=Xe,91===e.charCodeAt(Xe)?(r="[",Xe++):(r=n,0===nt&&pt(ve)),r!==n){for(94===e.charCodeAt(Xe)?(u="^",Xe++):(u=n,0===nt&&pt(Fe)),u===n&&(u=null),o=[],(a=Rt())===n&&(a=Nt());a!==n;)o.push(a),(a=Rt())===n&&(a=Nt());93===e.charCodeAt(Xe)?(a="]",Xe++):(a=n,0===nt&&pt(Se)),a!==n?(105===e.charCodeAt(Xe)?(s="i",Xe++):(s=n,0===nt&&pt(ge)),s===n&&(s=null),Ze=t,t=function(e,t,r){return{type:"class",parts:t.filter((function(e){return""!==e})),inverted:null!==e,ignoreCase:null!==r,location:ut()}}(u,o,s)):(Xe=t,t=n)}else Xe=t,t=n;return nt--,t===n&&(r=n,0===nt&&pt(_e)),t}())===n&&(t=function(){var t,r;return t=Xe,46===e.charCodeAt(Xe)?(r=".",Xe++):(r=n,0===nt&&pt(Me)),r!==n&&(Ze=t,r={type:"any",location:ut()}),r}())===n&&(t=function(){var t,r,u,o,a,s,i;return t=Xe,(r=Ot())!==n?(u=Xe,nt++,o=Xe,a=Wt(),s=Xe,(i=Tt())!==n?s=i=[i,Wt()]:(Xe=s,s=n),s===n&&(s=null),61===e.charCodeAt(Xe)?(i="=",Xe++):(i=n,0===nt&&pt(I)),i!==n?o=a=[a,s,i]:(Xe=o,o=n),nt--,o===n?u=void 0:(Xe=u,u=n),u!==n?(Ze=t,t=function(e){return{type:"rule_ref",name:e[0],location:ut()}}(r)):(Xe=t,t=n)):(Xe=t,t=n),t}())===n&&(t=function(){var t,r,u;return t=Xe,(r=function(){var t;return 38===e.charCodeAt(Xe)?(t="&",Xe++):(t=n,0===nt&&pt(N)),t===n&&(33===e.charCodeAt(Xe)?(t="!",Xe++):(t=n,0===nt&&pt(M))),t}())!==n?(Wt(),(u=Ut())!==n?(Ze=t,t=function(e,t){return{type:OPS_TO_SEMANTIC_PREDICATE_TYPES[e],code:t[0],codeLocation:t[1],location:ut()}}(r,u)):(Xe=t,t=n)):(Xe=t,t=n),t}())===n&&(t=Xe,40===e.charCodeAt(Xe)?(r="(",Xe++):(r=n,0===nt&&pt(G)),r!==n?(Wt(),(u=ft())!==n?(Wt(),41===e.charCodeAt(Xe)?(o=")",Xe++):(o=n,0===nt&&pt(W)),o!==n?(Ze=t,t=function(e){return"labeled"===e.type||"sequence"===e.type?{type:"group",expression:e,location:ut()}:e}(u)):(Xe=t,t=n)):(Xe=t,t=n)):(Xe=t,t=n)),t}function vt(){var t;return e.length>Xe?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Y)),t}function Ft(){var t;return nt++,9===e.charCodeAt(Xe)?(t="\t",Xe++):(t=n,0===nt&&pt(z)),t===n&&(11===e.charCodeAt(Xe)?(t="\v",Xe++):(t=n,0===nt&&pt(Q)),t===n&&(12===e.charCodeAt(Xe)?(t="\f",Xe++):(t=n,0===nt&&pt(J)),t===n&&(32===e.charCodeAt(Xe)?(t=" ",Xe++):(t=n,0===nt&&pt(K)),t===n&&(160===e.charCodeAt(Xe)?(t=" ",Xe++):(t=n,0===nt&&pt(X)),t===n&&(65279===e.charCodeAt(Xe)?(t="\ufeff",Xe++):(t=n,0===nt&&pt(Z)),t===n&&(t=function(){var t;return $.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Je)),t}())))))),nt--,t===n&&0===nt&&pt(q),t}function St(){var t;return f.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(ee)),t}function Dt(){var t;return nt++,10===e.charCodeAt(Xe)?(t="\n",Xe++):(t=n,0===nt&&pt(re)),t===n&&("\r\n"===e.substr(Xe,2)?(t="\r\n",Xe+=2):(t=n,0===nt&&pt(ne)),t===n&&(13===e.charCodeAt(Xe)?(t="\r",Xe++):(t=n,0===nt&&pt(ue)),t===n&&(8232===e.charCodeAt(Xe)?(t="\u2028",Xe++):(t=n,0===nt&&pt(oe)),t===n&&(8233===e.charCodeAt(Xe)?(t="\u2029",Xe++):(t=n,0===nt&&pt(ae)))))),nt--,t===n&&0===nt&&pt(te),t}function Bt(){var t;return nt++,(t=function(){var t,r,u,o,a,s;if(t=Xe,e.substr(Xe,2)===c?(r=c,Xe+=2):(r=n,0===nt&&pt(ie)),r!==n){for(u=[],o=Xe,a=Xe,nt++,e.substr(Xe,2)===l?(s=l,Xe+=2):(s=n,0===nt&&pt(ce)),nt--,s===n?a=void 0:(Xe=a,a=n),a!==n&&(s=vt())!==n?o=a=[a,s]:(Xe=o,o=n);o!==n;)u.push(o),o=Xe,a=Xe,nt++,e.substr(Xe,2)===l?(s=l,Xe+=2):(s=n,0===nt&&pt(ce)),nt--,s===n?a=void 0:(Xe=a,a=n),a!==n&&(s=vt())!==n?o=a=[a,s]:(Xe=o,o=n);e.substr(Xe,2)===l?(o=l,Xe+=2):(o=n,0===nt&&pt(ce)),o!==n?t=r=[r,u,o]:(Xe=t,t=n)}else Xe=t,t=n;return t}())===n&&(t=$t()),nt--,t===n&&0===nt&&pt(se),t}function Pt(){var t,r,u,o,a,s;if(t=Xe,e.substr(Xe,2)===c?(r=c,Xe+=2):(r=n,0===nt&&pt(ie)),r!==n){for(u=[],o=Xe,a=Xe,nt++,e.substr(Xe,2)===l?(s=l,Xe+=2):(s=n,0===nt&&pt(ce)),s===n&&(s=St()),nt--,s===n?a=void 0:(Xe=a,a=n),a!==n&&(s=vt())!==n?o=a=[a,s]:(Xe=o,o=n);o!==n;)u.push(o),o=Xe,a=Xe,nt++,e.substr(Xe,2)===l?(s=l,Xe+=2):(s=n,0===nt&&pt(ce)),s===n&&(s=St()),nt--,s===n?a=void 0:(Xe=a,a=n),a!==n&&(s=vt())!==n?o=a=[a,s]:(Xe=o,o=n);e.substr(Xe,2)===l?(o=l,Xe+=2):(o=n,0===nt&&pt(ce)),o!==n?t=r=[r,u,o]:(Xe=t,t=n)}else Xe=t,t=n;return t}function $t(){var t,r,u,o,a,s;if(t=Xe,"//"===e.substr(Xe,2)?(r="//",Xe+=2):(r=n,0===nt&&pt(le)),r!==n){for(u=[],o=Xe,a=Xe,nt++,s=St(),nt--,s===n?a=void 0:(Xe=a,a=n),a!==n&&(s=vt())!==n?o=a=[a,s]:(Xe=o,o=n);o!==n;)u.push(o),o=Xe,a=Xe,nt++,s=St(),nt--,s===n?a=void 0:(Xe=a,a=n),a!==n&&(s=vt())!==n?o=a=[a,s]:(Xe=o,o=n);t=r=[r,u]}else Xe=t,t=n;return t}function Ot(){var e,t,r,u;if(nt++,e=Xe,(t=bt())!==n){for(r=[],u=It();u!==n;)r.push(u),u=It();Ze=e,e=function(e,t){return[e+t.join(""),ut()]}(t,r)}else Xe=e,e=n;return nt--,e===n&&(t=n,0===nt&&pt(pe)),e}function bt(){var t,r,u;return(t=function(){var t;return(t=function(){var t;return v.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ge)),t}())===n&&(t=function(){var t;return m.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ve)),t}())===n&&(t=function(){var t;return _.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ue)),t}())===n&&(t=function(){var t;return C.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(je)),t}())===n&&(t=function(){var t;return y.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(He)),t}())===n&&(t=function(){var t;return B.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(ze)),t}()),t}())===n&&(95===e.charCodeAt(Xe)?(t="_",Xe++):(t=n,0===nt&&pt(he)),t===n&&(t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(Ae)),r!==n&&(u=Vt())!==n?t=u:(Xe=t,t=n))),t}function It(){var t;return(t=bt())===n&&(36===e.charCodeAt(Xe)?(t="$",Xe++):(t=n,0===nt&&pt(R)),t===n&&(t=function(){var t;return(t=function(){var t;return S.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ye)),t}())===n&&(t=function(){var t;return F.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(We)),t}()),t}())===n&&(t=function(){var t;return D.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(qe)),t}())===n&&(t=function(){var t;return P.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Qe)),t}())===n&&(8204===e.charCodeAt(Xe)?(t="‌",Xe++):(t=n,0===nt&&pt(fe)),t===n&&(8205===e.charCodeAt(Xe)?(t="‍",Xe++):(t=n,0===nt&&pt(de))))),t}function Tt(){var t,r,u,o;if(nt++,t=Xe,34===e.charCodeAt(Xe)?(r=h,Xe++):(r=n,0===nt&&pt(Ce)),r!==n){for(u=[],o=wt();o!==n;)u.push(o),o=wt();34===e.charCodeAt(Xe)?(o=h,Xe++):(o=n,0===nt&&pt(Ce)),o!==n?(Ze=t,t=function(e){return e.join("")}(u)):(Xe=t,t=n)}else Xe=t,t=n;if(t===n)if(t=Xe,39===e.charCodeAt(Xe)?(r=A,Xe++):(r=n,0===nt&&pt(ye)),r!==n){for(u=[],o=xt();o!==n;)u.push(o),o=xt();39===e.charCodeAt(Xe)?(o=A,Xe++):(o=n,0===nt&&pt(ye)),o!==n?(Ze=t,t=function(e){return e.join("")}(u)):(Xe=t,t=n)}else Xe=t,t=n;return nt--,t===n&&(r=n,0===nt&&pt(me)),t}function wt(){var t,r,u,o;return t=Xe,r=Xe,u=Xe,nt++,34===e.charCodeAt(Xe)?(o=h,Xe++):(o=n,0===nt&&pt(Ce)),o===n&&(92===e.charCodeAt(Xe)?(o=p,Xe++):(o=n,0===nt&&pt(Ae)),o===n&&(o=St())),nt--,o===n?u=void 0:(Xe=u,u=n),u!==n&&(o=vt())!==n?r=u=[u,o]:(Xe=r,r=n),(t=r!==n?e.substring(t,Xe):r)===n&&(t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(Ae)),r!==n&&(u=Lt())!==n?t=u:(Xe=t,t=n),t===n&&(t=Mt())),t}function xt(){var t,r,u,o;return t=Xe,r=Xe,u=Xe,nt++,39===e.charCodeAt(Xe)?(o=A,Xe++):(o=n,0===nt&&pt(ye)),o===n&&(92===e.charCodeAt(Xe)?(o=p,Xe++):(o=n,0===nt&&pt(Ae)),o===n&&(o=St())),nt--,o===n?u=void 0:(Xe=u,u=n),u!==n&&(o=vt())!==n?r=u=[u,o]:(Xe=r,r=n),(t=r!==n?e.substring(t,Xe):r)===n&&(t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(Ae)),r!==n&&(u=Lt())!==n?t=u:(Xe=t,t=n),t===n&&(t=Mt())),t}function Rt(){var t,r,u,o;return t=Xe,(r=Nt())!==n?(45===e.charCodeAt(Xe)?(u="-",Xe++):(u=n,0===nt&&pt(De)),u!==n&&(o=Nt())!==n?(Ze=t,t=function(t,r){return t.charCodeAt(0)>r.charCodeAt(0)&&ot("Invalid character range: "+e.substring(Ze,Xe)+"."),[t,r]}(r,o)):(Xe=t,t=n)):(Xe=t,t=n),t}function Nt(){var t,r,u,o;return t=Xe,r=Xe,u=Xe,nt++,93===e.charCodeAt(Xe)?(o="]",Xe++):(o=n,0===nt&&pt(Se)),o===n&&(92===e.charCodeAt(Xe)?(o=p,Xe++):(o=n,0===nt&&pt(Ae)),o===n&&(o=St())),nt--,o===n?u=void 0:(Xe=u,u=n),u!==n&&(o=vt())!==n?r=u=[u,o]:(Xe=r,r=n),(t=r!==n?e.substring(t,Xe):r)===n&&(t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(Ae)),r!==n&&(u=Lt())!==n?t=u:(Xe=t,t=n),t===n&&(t=Mt())),t}function Mt(){var t,r;return t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(Ae)),r!==n&&Dt()!==n?(Ze=t,t=""):(Xe=t,t=n),t}function Lt(){var t,r,u,o;return(t=function(){var t;return(t=kt())===n&&(t=function(){var t,r,u,o;return t=Xe,r=Xe,u=Xe,nt++,(o=function(){var t;return(t=kt())===n&&(t=jt())===n&&(120===e.charCodeAt(Xe)?(t="x",Xe++):(t=n,0===nt&&pt(we)),t===n&&(117===e.charCodeAt(Xe)?(t="u",Xe++):(t=n,0===nt&&pt(xe)))),t}())===n&&(o=St()),nt--,o===n?u=void 0:(Xe=u,u=n),u!==n&&(o=vt())!==n?r=u=[u,o]:(Xe=r,r=n),r!==n?e.substring(t,Xe):r}()),t}())===n&&(t=Xe,48===e.charCodeAt(Xe)?(r="0",Xe++):(r=n,0===nt&&pt(Be)),r!==n?(u=Xe,nt++,o=jt(),nt--,o===n?u=void 0:(Xe=u,u=n),u!==n?(Ze=t,t="\0"):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=function(){var t,r,u,o,a,s;return t=Xe,120===e.charCodeAt(Xe)?(r="x",Xe++):(r=n,0===nt&&pt(we)),r!==n?(u=Xe,o=Xe,(a=Ht())!==n&&(s=Ht())!==n?o=a=[a,s]:(Xe=o,o=n),(u=o!==n?e.substring(u,Xe):o)!==n?(Ze=t,t=function(e){return String.fromCharCode(parseInt(e,16))}(u)):(Xe=t,t=n)):(Xe=t,t=n),t}())===n&&(t=Vt())),t}function kt(){var t,r;return 39===e.charCodeAt(Xe)?(t=A,Xe++):(t=n,0===nt&&pt(ye)),t===n&&(34===e.charCodeAt(Xe)?(t=h,Xe++):(t=n,0===nt&&pt(Ce)),t===n&&(92===e.charCodeAt(Xe)?(t=p,Xe++):(t=n,0===nt&&pt(Ae)),t===n&&(t=Xe,98===e.charCodeAt(Xe)?(r="b",Xe++):(r=n,0===nt&&pt(Pe)),r!==n&&(Ze=t,r="\b"),(t=r)===n&&(t=Xe,102===e.charCodeAt(Xe)?(r="f",Xe++):(r=n,0===nt&&pt($e)),r!==n&&(Ze=t,r="\f"),(t=r)===n&&(t=Xe,110===e.charCodeAt(Xe)?(r="n",Xe++):(r=n,0===nt&&pt(Oe)),r!==n&&(Ze=t,r="\n"),(t=r)===n&&(t=Xe,114===e.charCodeAt(Xe)?(r="r",Xe++):(r=n,0===nt&&pt(be)),r!==n&&(Ze=t,r="\r"),(t=r)===n&&(t=Xe,116===e.charCodeAt(Xe)?(r="t",Xe++):(r=n,0===nt&&pt(Ie)),r!==n&&(Ze=t,r="\t"),(t=r)===n&&(t=Xe,118===e.charCodeAt(Xe)?(r="v",Xe++):(r=n,0===nt&&pt(Te)),r!==n&&(Ze=t,r="\v"),t=r)))))))),t}function Vt(){var t,r,u,o,a,s,i,c;return t=Xe,117===e.charCodeAt(Xe)?(r="u",Xe++):(r=n,0===nt&&pt(xe)),r!==n?(u=Xe,o=Xe,(a=Ht())!==n&&(s=Ht())!==n&&(i=Ht())!==n&&(c=Ht())!==n?o=a=[a,s,i,c]:(Xe=o,o=n),(u=o!==n?e.substring(u,Xe):o)!==n?(Ze=t,t=function(e){return String.fromCharCode(parseInt(e,16))}(u)):(Xe=t,t=n)):(Xe=t,t=n),t}function jt(){var t;return d.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Re)),t}function Ht(){var t;return E.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ne)),t}function Ut(){var t,r,u,o;return nt++,t=Xe,123===e.charCodeAt(Xe)?(r=s,Xe++):(r=n,0===nt&&pt(O)),r!==n?(u=function(){var e,t;return e=Xe,t=Gt(),Ze=e,function(e){return[e,ut()]}(t)}(),125===e.charCodeAt(Xe)?(o=i,Xe++):(o=n,0===nt&&pt(b)),o!==n?t=u:(Xe=t,t=n)):(Xe=t,t=n),nt--,t===n&&(r=n,0===nt&&pt(Le)),t}function Gt(){var t,r,u,o,a,c;if(t=Xe,r=[],u=[],o=Xe,a=Xe,nt++,g.test(e.charAt(Xe))?(c=e.charAt(Xe),Xe++):(c=n,0===nt&&pt(ke)),nt--,c===n?a=void 0:(Xe=a,a=n),a!==n&&(c=vt())!==n?o=a=[a,c]:(Xe=o,o=n),o!==n)for(;o!==n;)u.push(o),o=Xe,a=Xe,nt++,g.test(e.charAt(Xe))?(c=e.charAt(Xe),Xe++):(c=n,0===nt&&pt(ke)),nt--,c===n?a=void 0:(Xe=a,a=n),a!==n&&(c=vt())!==n?o=a=[a,c]:(Xe=o,o=n);else u=n;for(u===n&&(u=Xe,123===e.charCodeAt(Xe)?(o=s,Xe++):(o=n,0===nt&&pt(O)),o!==n?(a=Gt(),125===e.charCodeAt(Xe)?(c=i,Xe++):(c=n,0===nt&&pt(b)),c!==n?u=o=[o,a,c]:(Xe=u,u=n)):(Xe=u,u=n));u!==n;){if(r.push(u),u=[],o=Xe,a=Xe,nt++,g.test(e.charAt(Xe))?(c=e.charAt(Xe),Xe++):(c=n,0===nt&&pt(ke)),nt--,c===n?a=void 0:(Xe=a,a=n),a!==n&&(c=vt())!==n?o=a=[a,c]:(Xe=o,o=n),o!==n)for(;o!==n;)u.push(o),o=Xe,a=Xe,nt++,g.test(e.charAt(Xe))?(c=e.charAt(Xe),Xe++):(c=n,0===nt&&pt(ke)),nt--,c===n?a=void 0:(Xe=a,a=n),a!==n&&(c=vt())!==n?o=a=[a,c]:(Xe=o,o=n);else u=n;u===n&&(u=Xe,123===e.charCodeAt(Xe)?(o=s,Xe++):(o=n,0===nt&&pt(O)),o!==n?(a=Gt(),125===e.charCodeAt(Xe)?(c=i,Xe++):(c=n,0===nt&&pt(b)),c!==n?u=o=[o,a,c]:(Xe=u,u=n)):(Xe=u,u=n))}return e.substring(t,Xe)}function Wt(){var e,t;for(e=[],(t=Ft())===n&&(t=Dt())===n&&(t=Bt());t!==n;)e.push(t),(t=Ft())===n&&(t=Dt())===n&&(t=Bt());return e}function Yt(){var t,r,u,o;if(t=[],r=Xe,u=Wt(),59===e.charCodeAt(Xe)?(o=";",Xe++):(o=n,0===nt&&pt(Ke)),o!==n?r=u=[u,o]:(Xe=r,r=n),r!==n)for(;r!==n;)t.push(r),r=Xe,u=Wt(),59===e.charCodeAt(Xe)?(o=";",Xe++):(o=n,0===nt&&pt(Ke)),o!==n?r=u=[u,o]:(Xe=r,r=n);else t=n;return t===n&&(t=Xe,r=function(){var e,t;for(e=[],(t=Ft())===n&&(t=Pt());t!==n;)e.push(t),(t=Ft())===n&&(t=Pt());return e}(),(u=$t())===n&&(u=null),(o=Dt())!==n?t=r=[r,u,o]:(Xe=t,t=n),t===n&&(t=Xe,r=Wt(),(u=function(){var t,r;return t=Xe,nt++,e.length>Xe?(r=e.charAt(Xe),Xe++):(r=n,0===nt&&pt(Y)),nt--,r===n?t=void 0:(Xe=t,t=n),t}())!==n?t=r=[r,u]:(Xe=t,t=n))),t}var qt=t.reservedWords||[];if((r=a())!==n&&Xe===e.length)return r;throw r!==n&&Xe<e.length&&pt({type:"end"}),function(e,t,r){return new peg$SyntaxError(peg$SyntaxError.buildMessage(e,t),e,t,r)}(rt,tt<e.length?e.charAt(tt):null,tt<e.length?lt(tt,tt+1):lt(tt,tt))}peg$subclass(peg$SyntaxError,Error),peg$SyntaxError.prototype.format=function(e){var t="Error: "+this.message;if(this.location){var r,n=null;for(r=0;r<e.length;r++)if(e[r].source===this.location.source){n=e[r].text.split(/\r\n|\n|\r/g);break}var u=this.location.start,o=this.location.source&&"function"==typeof this.location.source.offset?this.location.source.offset(u):u,a=this.location.source+":"+o.line+":"+o.column;if(n){var s=this.location.end,i=peg$padEnd("",o.line.toString().length," "),c=n[u.line-1],l=(u.line===s.line?s.column:c.length+1)-u.column||1;t+="\n --\x3e "+a+"\n"+i+" |\n"+o.line+" | "+c+"\n"+i+" | "+peg$padEnd("",u.column-1," ")+peg$padEnd("",l,"^")}else t+="\n at "+a}return t},peg$SyntaxError.buildMessage=function(e,t){var r={literal:function(e){return'"'+u(e.text)+'"'},class:function(e){var t=e.parts.map((function(e){return Array.isArray(e)?o(e[0])+"-"+o(e[1]):o(e)}));return"["+(e.inverted?"^":"")+t.join("")+"]"},any:function(){return"any character"},end:function(){return"end of input"},other:function(e){return e.description}};function n(e){return e.charCodeAt(0).toString(16).toUpperCase()}function u(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(e){return"\\x0"+n(e)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(e){return"\\x"+n(e)}))}function o(e){return e.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(e){return"\\x0"+n(e)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(e){return"\\x"+n(e)}))}function a(e){return r[e.type](e)}return"Expected "+function(e){var t,r,n=e.map(a);if(n.sort(),n.length>0){for(t=1,r=1;t<n.length;t++)n[t-1]!==n[t]&&(n[r]=n[t],r++);n.length=r}switch(n.length){case 1:return n[0];case 2:return n[0]+" or "+n[1];default:return n.slice(0,-1).join(", ")+", or "+n[n.length-1]}}(e)+" but "+function(e){return e?'"'+u(e)+'"':"end of input"}(t)+" found."};var parser$1={SyntaxError:peg$SyntaxError,parse:peg$parse},GrammarError=grammarError,GrammarLocation=grammarLocation,compiler=compiler_1,parser=parser$1,VERSION=version,RESERVED_WORDS=["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","finally","for","function","if","import","in","instanceof","new","return","super","switch","this","throw","try","typeof","var","void","while","with","null","true","false","enum","implements","interface","let","package","private","protected","public","static","yield","await","arguments","eval"],peg={VERSION:VERSION,RESERVED_WORDS:RESERVED_WORDS,GrammarError:GrammarError,GrammarLocation:GrammarLocation,parser:parser,compiler:compiler,generate:function(e,t){var r,n,u="plugins"in(t=void 0!==t?t:{})?t.plugins:[],o={parser:peg.parser,passes:(r=peg.compiler.passes,n={},Object.keys(r).forEach((function(e){n[e]=r[e].slice()})),n),reservedWords:peg.RESERVED_WORDS.slice()};return u.forEach((function(e){e.use(o,t)})),peg.compiler.compile(o.parser.parse(e,{grammarSource:t.grammarSource,reservedWords:o.reservedWords}),o.passes,t)}},peg_1=peg;return peg_1},module.exports=u()},700:(e,t,r)=>{var n=r(970),u=r(414);void 0===u.peggy&&(u.peggy=n),e.exports=n},414:(e,t,r)=>{e.exports=function(){if("object"==typeof globalThis)return globalThis;var e;try{e=this||new Function("return this")()}catch(t){if("object"==typeof window)return window;if("object"==typeof self)return self;if(void 0!==r.g)return r.g}return e}()}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.exports}__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),(()=>{const e=!globalThis.hasOwnProperty("window");function t(){return e||!!globalThis.assert}function r(e){if(t()&&!e){for(var r=arguments.length,u=new Array(r>1?r-1:0),o=1;o<r;o++)u[o-1]=arguments[o];const e=u.length>0?"Affirmation failed: ":"Affirmation failed";console.error(e,...u),n.forEach(e=>e());const t=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit");throw t&&(t.writable||t.set&&"function"==typeof t.set)&&(Error.stackTraceLimit=20),new Error(e+u.join("\n "))}}const n=[];const u=class{register(e,t){if(!globalThis.hasOwnProperty("window"))return t;if(e.includes("."))r(!this[e],`${e} is already registered for namespace ${this.name}`),this[e]=t;else{const n=e.split(".");let u=this;for(let t=0;t<n.length-1;t++)r(!!u[n[t]],`${[this.name].concat(n.slice(0,t+1)).join(".")} needs to be defined to register ${e}`),u=u[n[t]];const o=n[n.length-1];r(!u[o],`${e} is already registered for namespace ${this.name}`),u[o]=t}return t}constructor(e){if(this.name=e,globalThis.hasOwnProperty("window")&&globalThis.phet){if("chipper"===e)return globalThis.phet.chipper=globalThis.phet.chipper||{},globalThis.phet.chipper.name="chipper",globalThis.phet.chipper.register=this.register.bind(globalThis.phet.chipper),globalThis.phet.chipper;{var n,u;const o=!(null==(u=globalThis.phet)||null==(n=u.chipper)?void 0:n.brand)||"joist"===e;t()&&!o&&r(!globalThis.phet[e],`namespace ${e} already exists`),globalThis.phet[e]=this}}}},o=new u("tandem");let a=class{static append(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),u=1;u<t;u++)n[u-1]=arguments[u];return n.forEach(t=>{if(r(!t.includes("."),"separator appears in componentName: "+t),""===t)return;e+=(""===e?"":".")+t}),e}static getComponentName(e){r(e.length>0);const t=e.lastIndexOf(".");return-1===t?e:e.substring(t+1,e.length)}static getParentID(e){const t=e.lastIndexOf(".");return-1===t?null:e.substring(0,t)}static getDOMElementID(e){return"phetioID:"+e}static getScreenID(e){const t=[],r=e.split(".");for(let n=0;n<r.length;n++){const e=r[n];t.push(e);const u=e.indexOf("Screen");if(u>0&&u+"Screen".length===e.length)return t.join(".")}return null}static getGroupElementIndex(e){return r(e.includes(this.GROUP_SEPARATOR),"component name for phetioID should have group element syntax"),Number(e.split(this.GROUP_SEPARATOR)[1])}static isAncestor(e,t){const r=e.split("."),n=t.split(".");for(let u=0;u<r.length;u++)if(r[u]!==n[u])return!1;return t!==e}static getArchetypalPhetioID(e){const t=e.split(".");for(let r=0;r<t.length;r++){const e=t[r];if(e.endsWith("Capsule")&&r<t.length-1)t[r+1]="archetype",r++;else{const n=e.split("-").map(e=>e.includes("_")?"archetype":e);t[r]=n.join("-")}}return t.join(".")}constructor(){r(!1,"should not construct a PhetioIDUtils")}};a.SEPARATOR=".",a.GROUP_SEPARATOR="_",a.INTER_TERM_SEPARATOR="-",a.GENERAL_COMPONENT_NAME="general",a.GLOBAL_COMPONENT_NAME="global",a.HOME_SCREEN_COMPONENT_NAME="homeScreen",a.MODEL_COMPONENT_NAME="model",a.VIEW_COMPONENT_NAME="view",a.CONTROLLER_COMPONENT_NAME="controller",a.COLORS_COMPONENT_NAME="colors",a.STRINGS_COMPONENT_NAME="strings",a.ARCHETYPE="archetype",a.CAPSULE_SUFFIX="Capsule",o.register("PhetioIDUtils",a);const s=a,i={OBJECT_IO_TYPE_NAME:"ObjectIO",EVENT_TYPE_MODEL:"MODEL",PHET_IO_OBJECT_METADATA_DEFAULTS:{phetioTypeName:"ObjectIO",phetioDocumentation:"",phetioState:!0,phetioReadOnly:!1,phetioEventType:"MODEL",phetioHighFrequency:!1,phetioPlayback:!1,phetioDynamicElement:!1,phetioIsArchetype:!1,phetioFeatured:!1,phetioDesigned:!1,phetioArchetypePhetioID:null},METADATA_KEY_NAME:"_metadata",DATA_KEY_NAME:"_data",BASE_TANDEM_CHARACTER_CLASS:"a-zA-Z0-9[\\],",BASE_DYNAMIC_TANDEM_CHARACTER_CLASS:"a-zA-Z0-9[\\],_",BASE_DERIVED_TANDEM_CHARACTER_CLASS:"a-zA-Z0-9[\\],_\\-"};o.register("TandemConstants",i);const c=i;function l(e){r(null===e||e&&"object"==typeof e&&Object.getPrototypeOf(e)===Object.prototype,"object is not compatible with merge"),null!==e&&Object.keys(e).forEach(t=>{const n=Object.getOwnPropertyDescriptor(e,t);r(!n.hasOwnProperty("set"),"cannot use merge with an object that has a setter"),r(!n.hasOwnProperty("get"),"cannot use merge with an object that has a getter")})}const p=function e(n){t()&&l(n),r(null!==n,"target should not be null"),r((arguments.length<=1?0:arguments.length-1)>0,"at least one source expected");for(let u=0;u<(arguments.length<=1?0:arguments.length-1);u++){const o=u+1<1||arguments.length<=u+1?void 0:arguments[u+1];if(o){t()&&l(o);for(const t in o)if(o.hasOwnProperty(t)&&void 0!==o[t]){const u=o[t];t.endsWith("Options")&&"Options"!==t?(r(void 0!==u,"nested *Options should not be undefined"),n[t]=e(n[t]||{},u)):n[t]=u}}}return n},h=new u("phetCore");h.register("Namespace",u);const A=(e,t,r,n)=>p(e,t,r,n);function f(){return A}h.register("optionize",f);let d=0,E=class{process(e,t,r,n){this.clientMessage&&n.clientMessages.push(this.clientMessage),this.processProtected(e,t,r,n)}static getArchetypalPhetioID(e){return s.getArchetypalPhetioID(e)}getProcessorIdentifier(){return[this.id,...this.getProcessorIdentifierTokens()]}toString(){return this.getProcessorIdentifier().toString()}reportWorkDoneForPhetioIDs(e,t){const r=this.toString();e.forEach(e=>{t.allWorkDone[r]=t.allWorkDone[r]||[],t.allWorkDone[r].push(e)})}constructor(e){this.id=d++;const t=f()({clientMessage:null},e);this.clientMessage=t.clientMessage}};const g=s.ARCHETYPE,m=new RegExp(`\\b${g}\\b`,"g"),C="."+g,y=new RegExp(C+"\\b","g");const v=class extends E{matchesText(e){const t=s.getArchetypalPhetioID(e).includes(this.phetioIDFragment);return t||assert&&assert(!e.includes(this.phetioIDFragment),"phetioIDFragment should be written for the archetype, and not a corresponding dynamic element: "+this.phetioIDFragment),t}didWeMissAny(e){return!!JSON.stringify(e).match(this.dynamicElementSupportedRegex)}reportMissedProcessing(e,t,r){"client"!==t.reportingContext&&this.didWeMissAny(e)&&t[r].push(this.phetioIDFragment)}getNumberOfArchetypeTerms(e){const t=e.match(m);return t?t.length:0}isInterTermFragment(e){return e.includes(s.INTER_TERM_SEPARATOR)}constructor(e,t){super(t),this.phetioIDFragment=e,assert&&assert(!this.isInterTermFragment(this.phetioIDFragment),"inter-term phetioID fragments are not supported: "+this.phetioIDFragment),this.phetioIDFragment.includes(g)&&(assert&&assert(this.phetioIDFragment.includes(C),"This is unexpected, please include the parent of the archetype for easier dynamic element support, phetioIDFragment = "+this.phetioIDFragment),assert&&assert(!this.phetioIDFragment.endsWith(g),"PhetioIDProcessor does not currently support renaming direct "+g)),this.numberOfArchetypeTerms=this.getNumberOfArchetypeTerms(this.phetioIDFragment);const r=this.phetioIDFragment.replace(/\./g,"\\.").replace(/\[/g,"\\[").replace(/]/g,"\\]").replace(y,`.([${c.BASE_DYNAMIC_TANDEM_CHARACTER_CLASS}]+)`);this.dynamicElementSupportedRegex=new RegExp(r),assert&&assert(this.phetioIDFragment===s.getArchetypalPhetioID(this.phetioIDFragment),"fragment should never map to an archetype, it should be the archetype; "+e)}},F={"phetioEngine.phetioElementMouseOverProperty":{compositeStateKey:"value",deleteHandler:"setToNull"}};let S=class extends v{processProtected(e,t,r,n){this.matches=0,this.processAPI(e,n),Object.keys(t).forEach(e=>{this.matchesText(e)&&(delete t[e],this.reportWorkDoneForPhetioIDs([e],n))}),this.handleGeneralDeletesInState(t),0===this.matches&&n.processedNothing.push(this.getProcessorIdentifier()),this.reportMissedProcessing(t,n,"incompletePhetioElementDeletes")}getProcessorIdentifierTokens(){return["DeletePhetioElement",this.phetioIDFragment]}processAPI(e,t){const r=e.getPhetioIDs();for(let n=0;n<r.length;n++){const t=r[n];this.matchesText(t)&&(this.matches++,e.deletePhetioID(t))}return this.reportMissedProcessing(e,t,"incompletePhetioElementDeletes"),e}handleGeneralDeletesInState(e){Object.keys(F).forEach(t=>{if(e.hasOwnProperty(t)){const r=F[t],n=e[t],u=n[r.compositeStateKey];"string"==typeof u&&this.matchesText(u)&&"setToNull"===r.deleteHandler&&(n[r.compositeStateKey]=null)}})}constructor(e,t){super(e,t),this.matches=0}},D=class extends S{getProcessorIdentifierTokens(){return["DeleteUninstrumentedPhetioElement",this.phetioIDFragment]}};const B=["allWorkDone","reportProcessors","reportingContext","gracefullyDeletedState","clientMessages"],P=B;__webpack_require__(700);const $=window.peggy;assert&&assert($,"window.peggy is a required dependency for a MigrationEngine, please ensure this is available before running");const O=$.generate('\n/**\n* This parser is meant to only parse a single level. Instead of providing a nested tree, it parses only \n* a single layer deep to provide the parameter IOType(s). This is meant to work in conjunction with an API so that you\n* can then look up the stateSchema values manually given the parsed parameter IOTypes, if applicable. \n*/\n\n{\n  function isIOType(text) {\n    return text.endsWith(\'IO\') && text.toUpperCase() !== text && text !== "EnumerationIO";\n  }\n}\n\n// Top level entrypoint, kinda like a main()\nstart\n  = StateValueList\n\n// Make a newline separated list, for easier tests. Most often we just support a single entity, but you CAN \n// parse multiple at once.\nStateValueList\n  = StateValue|1.., \'\\n\'|\n\n// StateValue defines what possible states can be. Each entry is a separate parsing for a stateSchemaValue\nStateValue\n  = orIOState\n    ////////////////////\n    // Any state values that may match on a parameter type need to go above this!!\n    / parameterType\n    / nullableState\n    / termListBar // For the stateSchema value of EnumerationIO\n    / arrayState\n    / mapState\n    / stateValue\n\n\n// "parameter" here is defined as a value that a StateValue needs. It can be an IOType, or possible value for \n// the state (like an enum)\nparameterType\n  = orIOType\n    / StringUnionState\n    / EnumerationState\n    //////////////////////\n    // IOType must go after the above hard coded IOType-related migrationProcessors because otherwise it will \n    // match on something like "OrIO" or "StringUnionIO" and then complain when it gets in deeper to find the \n    // other parts don\'t match\n    / IOType\n\n// IOType will end in IOType, could be BooleanIO or ArrayIO<BooleanIO>\nIOType\n  = compoundType\n    / typeName:typeName\n\n// Comma-separated IOTypes, spaces next to commas supported but optional\nIOTypeListComma\n  = parameterType|1.., "," _ |\n\n// Bar-separated IOTypes, spaces next to commas supported but optional\nIOTypeListBar\n  = parameterType|2.., "|" |\n\n// IOType, without angle bracket support (only PropertyIO, not PropertyIO<BooleanIO>)\ntypeName\n  = ioTypeName:([A-Za-z0-9]*) &{ return isIOType(ioTypeName.join(\'\')); } { return {_ioTypeName: ioTypeName.join(\'\')}; }\n\n// IOType with parameter IOTypes, requiring angle brackets (PropertyIO<BooleanIO>)\ncompoundType\n  = name:typeName "<" parameterType:parameterType ">"  {return { _ioTypeName: text(), parameterIOTypes: [parameterType._ioTypeName] };}\n\n// The current serialization for infinite values in InfiniteNumberIO\ninfinity\n  =  \'\\\'POSITIVE_INFINITY\\\'\'\n     / \'\\\'NEGATIVE_INFINITY\\\'\'\n\n// Any value-based state, never an IOType.\nstateValue\n  = infinity\n    / valueIOState\n    / booleanIOState\n    / numberIOState\n    / stringIOState\n    / objectIOState\n    / float64ArrayIOState\n    / someValues:[A-Za-z_0-9]* &{ return !isIOType(someValues.join(\'\')); } {\n         return {\n           type: \'StateValue\', parameterIOTypes: [], orderedParameters: true, \n           parameterValues: [someValues.join(\'\')], _valueName: someValues.join(\'\') \n         };\n      }\n\n// Parsed state for NullableIO\nnullableState\n  = "null|<" parameterType:parameterType ">" { return { type: \'Nullable\', parameterIOTypes:[parameterType._ioTypeName] };}\n\n// Parsed state for ArrayIO\narrayState\n  = "Reference"? "Array<" parameterType:StateValue ">" { return {\n      type: \'Array\',\n      parameterIOTypes:[ parameterType._ioTypeName ]\n    };}\n\n// Parsed state for MapIO\nmapState\n  = "Map<" parameter1:IOType "," parameter2:IOType ">" { return { \n    type: \'Map\', \n    orderedParameters: true, \n    parameterIOTypes:[parameter1._ioTypeName, parameter2._ioTypeName] \n  };}\n\n// Parsed state for OrIO\norIOState\n  = ioTypes:IOTypeListBar { return {type: \'Or\',parameterIOTypes:ioTypes.map(t=>t._ioTypeName)};}\n\n// Parsed state for ValueIO\nvalueIOState\n  = \'*\'  { return {type: "Value", parameterIOTypes: []}; }\n\n// Parsed state for BooleanIO\nbooleanIOState\n  = \'boolean\'  { return { type: \'Boolean\', parameterIOTypes: [], _valueName: \'boolean\' } }\n\n// Parsed state for NumberIO\nnumberIOState\n  = \'number\'  { return {type: "Number", parameterIOTypes: [], _valueName: \'number\'}; }\n\n// Parsed state for StringIO\nstringIOState\n  = \'string\'  { return {type: "String", parameterIOTypes: [], _valueName: \'string\'}; }\n\n// Parsed state for ObjectLiteralIO\nobjectIOState\n  = \'object\'  { return {type: "Object", parameterIOTypes: [], _valueName: \'object\'}; }\n\n// Parsed state for Float64ArrayIO\nfloat64ArrayIOState\n  = \'Float64Array\'  { return {type: "Float64Array", parameterIOTypes: [], _valueName: \'Float64Array\'}; }\n\n// Parsed compound IOType for OrIO\norIOType\n  = "OrIO<" parameterTypes:IOTypeListComma ">"  {return { _ioTypeName: text(), parameterIOTypes: parameterTypes.map(x=>x._ioTypeName) };}\n\n// Parsed IOType for EnumerationIO, providing parameterValues for each enum value\nEnumerationState\n  = "EnumerationIO(" values:termListBar ")" { return { type: "Enumeration", parameterIOTypes:[], _ioTypeName: text(), parameterValues: values }; }\n\n// Parsed IOType for StringUnionIO, providing parameterValues for each string value\nStringUnionState\n  = "StringUnionIO<" values:termListComma ">" {\n      return { type: "StringUnion", parameterIOTypes:[], _ioTypeName: text(), parameterValues: values.map( x=> x._valueName ) };\n    }\n\n// support for comma separation, no spaces allowed\ntermListComma\n  = values:(stateValue|1.., "," |)\n\n// support for bar separation, no spaces allowed. For the stateSchema value of EnumerationIO\ntermListBar\n  = values:(stateValue|2.., "|" |) { return { \n    type: \'StateValueList\', \n    parameterIOTypes: [], \n    parameterValues: values.map( x => {\n      return x._valueName || x; // If it doesn\'t have a _valueName, assume it is a string itself\n    } )\n  } };\n\n_ "whitespace"\n  = [ \\t\\n\\r]*\n  \n'),b=(e,t)=>""===t?e:_.get(e,t),I=(s.append(s.GENERAL_COMPONENT_NAME,s.MODEL_COMPONENT_NAME,s.STRINGS_COMPONENT_NAME),(e,t)=>{if(""!==e){return`${e}${t.startsWith("[")?"":"."}${t}`}return assert&&assert(!t.startsWith("["),"cannot add bracket access to an empty path"),t});const T=["supertype","typeName","stateSchema","apiStateKeys"];let w=class extends E{processProtected(e,t,r,n){this.ioTypesToAdd&&(assert&&Object.keys(this.ioTypesToAdd).forEach(t=>{assert&&assert(!e.phetioTypes.hasOwnProperty(t),"ioType to add already exists in API: "+t)}),e.phetioTypes=_.assignIn({},this.ioTypesToAdd,e.phetioTypes));const u="verbose"===n.reportingContext?JSON.stringify(e):"",o="verbose"===n.reportingContext?JSON.stringify(t):"";this.processAPI(e,r,n),this.visitIOType&&Object.keys(t).forEach(u=>{const o="verbose"===n.reportingContext?JSON.stringify(t):"";this.visitPhetioID(u,t[u],e,r,n),"verbose"===n.reportingContext&&o!==JSON.stringify(t)&&this.reportWorkDoneForPhetioIDs([u],n)}),"verbose"===n.reportingContext&&u===JSON.stringify(e)&&o===JSON.stringify(t)&&n.processedNothing.push(this.getProcessorIdentifier())}getProcessorIdentifierTokens(){return["ChangePhetioElementValue",this.constructor.name,this.apiProcessor]}processAPI(e,t,r){this.apiProcessor&&this.apiProcessor(e),this.visitIOType&&this.processInitialState&&e.getPhetioIDs().forEach(n=>{const u=e.getInitialState(n);u&&this.visitPhetioID(n,u,e,t,r)})}visitPhetioID(e,t,r,n,u){assert&&assert(this.visitIOType,"no need to be recursing through state if there is no state visitor provided");const o=s.getArchetypalPhetioID(e);assert&&assert(r.phetioElements.hasOwnProperty(o),"phetioID not found in API: "+o);const a=r.getMetadata(o);a.phetioState&&this.visitStateSchema(o,a.phetioTypeName,t,"",r,n,u)}visitStateSchema(e,t,r,n,u,o,a){let s=u.phetioTypes[t];if(!s){const e=o.getRelatedTypesForTypeName(t);assert&&assert(e.includes(t)),e.forEach(e=>{if(!u.phetioTypes.hasOwnProperty(e)){const r=o.phetioTypes[e];assert&&assert(r,"IOTypeName not present in new API, cannot apply grace: "+e),a.newNeededIOTypes[e]=_.pick(r,T),u.phetioTypes[e]=r,t===e&&(s=r)}})}const i=null==s?void 0:s.stateSchema;this.visitIOType&&this.visitIOType(e,t,b(r,n),n,u);const c=s.supertype;if(c&&this.visitStateSchema(e,c,r,n,u,o,a),i)if("string"==typeof i){const t=O.parse(i);assert&&assert(1===t.length,"only one parsed stateSchema expected");const s=t[0];if("Array"===s.type){const t=b(r,n);if(Array.isArray(t)){const i=s.parameterIOTypes[0];for(let s=0;s<t.length;s++){const t=I(n,`[${s}]`);this.visitStateSchema(e,i,r,t,u,o,a)}}}else if("Map"===s.type){const t=b(r,n);for(let i=0;i<t.length;i++){const t=I(n,`[${i}]`),c=I(t,"[0]"),l=s.parameterIOTypes[0],p=I(t,"[1]"),h=s.parameterIOTypes[1];this.visitStateSchema(e,l,r,c,u,o,a),this.visitStateSchema(e,h,r,p,u,o,a)}}else if("Nullable"===s.type&&null===b(r,n));else for(let i=0;i<s.parameterIOTypes.length;i++){const t=s.parameterIOTypes[i];this.visitStateSchema(e,t,r,n,u,o,a)}}else Object.keys(i).forEach(t=>{const s=I(n,t),c=i[t];this.visitStateSchema(e,c,r,s,u,o,a)})}constructor(e){const t=f()({ioTypesToAdd:null,apiProcessor:null,visitIOType:null,processInitialState:!0},e);super(t),this.apiProcessor=t.apiProcessor,this.visitIOType=t.visitIOType,this.ioTypesToAdd=t.ioTypesToAdd,this.processInitialState=t.processInitialState}};const x={LinkedElementIO:{elementID:"RENAME_VALUE_AS_STRING"},ReferenceIO:{phetioID:"RENAME_VALUE_AS_STRING"},NumberPropertyIO:{rangePhetioID:"RENAME_VALUE_AS_STRING"},StringStateIO:{data:"RENAME_KEYS"}},R={"phetioEngine.phetioElementMouseOverProperty":"value"},N=Object.keys(x);let M=class extends v{processProtected(e,t,r,n){this.validateRelatedTypesHaveExpectedSchemas(e,n),this.matches=0,this.renameForState(t,e,r,n,"process"),this.reportMissedProcessing(t,n,"incompletePhetioElementRenames"),this.processAPI(e,r,n),0===this.matches&&n.processedNothing.push(this.getProcessorIdentifier())}getProcessorIdentifierTokens(){return["RenamePhetioElement",this.phetioIDFragment,this.newPhetioIDFragment]}rename(e){let t=e.split(this.phetioIDFragment).join(this.newPhetioIDFragment);if(this.phetioIDFragment.includes(g)){const r=e.match(this.dynamicElementSupportedRegex);if(r){assert&&assert(r.length-1===this.numberOfArchetypeTerms,"there should be a captured match for each archetype term");const n=r.slice(1);let u=this.newPhetioIDFragment;for(let e=0;e<n.length;e++)u=u.replace(g,n[e]);t=e.replace(this.dynamicElementSupportedRegex,u)}}return assert&&assert(t!==e,"RenamePhetioElement does not support renaming to the same phetioID value: "+e),t}validateRelatedTypesHaveExpectedSchemas(e,t){const r=Object.keys(x);e.getPhetioTypeNames().forEach(n=>{r.forEach(r=>{n.startsWith(r)&&Object.keys(x[r]).forEach(r=>{var u;(null==(u=e.getStateSchema(n))?void 0:u.hasOwnProperty(r))||t.relatedIOTypesForValueRenameHaveUnexpectedSchemas.push(r)})})})}renameForState(e,t,r,n,u){const o=Object.keys(e),a={};for(let s=0;s<o.length;s++){const i=o[s];if("process"===u&&this.renameInStateValue(i,e[i],t,r,n),this.matchesText(i)){const r=this.rename(i),o="process"===u&&e.hasOwnProperty(r)&&this.valueMatchesInitialState(i,e,t)?r:i;a[r]=e[o],this.reportWorkDoneForPhetioIDs([i],n)}else a.hasOwnProperty(i)||(a[i]=e[i])}for(const s in e)e.hasOwnProperty(s)&&delete e[s];Object.assign(e,a)}processAPI(e,t,r){const n=e.getPhetioIDs();for(let u=0;u<n.length;u++){const o=n[u],a=e.getInitialState(o);if(a&&this.renameInStateValue(o,a,e,t,r),this.matchesText(o)){this.matches++;const t=this.rename(o);e.phetioElements[t]=e.phetioElements[o],delete e.phetioElements[o]}}return this.reportMissedProcessing(e,r,"incompletePhetioElementRenames"),e}renameInStateValue(e,t,r,n,u){new w({visitIOType:(e,t,o,a)=>{if(N.forEach(e=>{if(t.startsWith(e)){const t=x[e];Object.keys(t).forEach(e=>{if(o&&o.hasOwnProperty(e)){const a=o[e];"RENAME_VALUE_AS_STRING"===t[e]?"string"==typeof a&&this.matchesText(a)&&(o[e]=this.rename(a)):"RENAME_KEYS"===t[e]&&this.renameForState(a,r,n,u,"renameInStateValue")}})}}),R.hasOwnProperty(e)&&""===a){const t=R[e],r=o[t];"string"==typeof r&&this.matchesText(r)&&(o[t]=this.rename(r))}}}).visitPhetioID(e,t,r,n,u)}valueMatchesInitialState(e,t,r){const n=E.getArchetypalPhetioID(e);return t.hasOwnProperty(e)&&r.hasPhetioElement(n)&&!!r.getData(n)&&_.isEqual(t[e],r.getInitialState(n))}constructor(e,t,r){super(e,r),this.newPhetioIDFragment=t,this.matches=0,assert&&assert(!this.isInterTermFragment(this.newPhetioIDFragment),"inter-term phetioID fragments are not supported: "+this.newPhetioIDFragment),assert&&assert(this.numberOfArchetypeTerms===this.getNumberOfArchetypeTerms(this.newPhetioIDFragment),"at this time, you can only rename to something with the same amount of archetype nesting, phetioIDFragment = "+e+", newPhetioIDFragment = "+this.newPhetioIDFragment),assert&&assert(t===s.getArchetypalPhetioID(t),`fragment should never map to an archetype, it should be the archetype; ${t}, phetioIDFragment = ${e}`)}},L=class extends w{getProcessorIdentifierTokens(){return[...super.getProcessorIdentifierTokens(),this.phetioIDs]}constructor(e,t,r){e.forEach(e=>assert&&assert(!e.includes(g),"one change state elements, not archetypes: "+e)),super(f()({visitIOType:(r,n,u,o,a)=>{e.includes(r)&&a.getPhetioTypeName(r)===n&&""===o&&t(u)}},r)),this.phetioIDs=e}};const k=new D("RadioButton.enabledProperty");window.phetio=window.phetio||{};const V="moleculePolarity",j={"1.4.0":[...((e,t)=>{const r=[new D(e+".homeScreen.view.titleText.stringProperty")];return t.forEach(t=>{r.push(new D(`${e}.general.view.navigationBar.${t}Button.text.stringProperty`),new D(`${e}.homeScreen.view.buttonGroup.${t}Button.text.stringProperty`))}),r})(V,["twoAtomsScreen","threeAtomsScreen","realMoleculesScreen"]),new D(V+".general.model.fallbackLocalesProperty"),...(e=>[new D(e+".general.view.navigationBar.phetButton.phetMenu.aboutMenuItem.visibleProperty")])(V),k,new D("moleculePolarity.general.view.navigationBar.preferencesButton.preferencesDialogCapsule.archetype.preferencesPanels.simulationPreferencesPanel.simPreferences.surfaceColorControl"),new M(V+".twoAtomsScreen.view.controlPanel.eFieldControl.onOffSwitch.toggleSwitch",V+".twoAtomsScreen.view.controlPanel.eFieldControl.onOffSwitch"),new M(V+".threeAtomsScreen.view.controlPanel.eFieldControl.onOffSwitch.toggleSwitch",V+".threeAtomsScreen.view.controlPanel.eFieldControl.onOffSwitch"),new L(["moleculePolarity.threeAtomsScreen.model.molecule.bondBC.angleProperty.rangeProperty"],e=>{e.value={min:0,max:2*Math.PI}}),new L(["moleculePolarity.threeAtomsScreen.model.molecule.bondBC.angleProperty"],e=>{e.value<0&&(e.value+=Math.PI)}),new D("moleculePolarity.twoAtomsScreen.view.controlPanel.surfaceControl.radioButtonGroup.visibleProperty")]};window.phetio.migrationProcessors=j})()})();
!function(){window.phet=window.phet||{},window.assertions=window.assertions||{},window.assertions.assertionHooks=[],window.assertions.assertFunction=window.assertions.assertFunction||function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];if(!e){r=r.filter(e=>!!r),window.navigator&&"Microsoft Internet Explorer"===window.navigator.appName&&r.push("stack=\n"+(new Error).stack);const e=r.length>0?"Assertion failed: ":"Assertion failed";console&&console.error&&console.error(e,...r),window.assertions.assertionHooks.forEach(e=>e()),window.QueryStringMachine&&QueryStringMachine.containsKey("debugger");const t=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit");t&&(t.writable||t.set&&"function"==typeof t.set)&&(Error.stackTraceLimit=20);const n=new Error(e+r.join("\n "));if(!QueryStringMachine.containsKey("eacontinue"))throw n;console.log(n.stack)}},window.assert=window.assert||null,window.assertSlow=window.assertSlow||null,window.assertions.enableAssert=function(){window.assert=window.assertions.assertFunction,window.console&&window.console.log&&window.console.log("enabling assert")},window.assertions.disableAssert=function(){window.assert=null,window.console&&window.console.log&&window.console.log("disabling assert")},window.assertions.enableAssertSlow=function(){window.assertSlow=window.assertions.assertFunction,window.console&&window.console.log&&window.console.log("enabling assertSlow")},window.assertions.disableAssertSlow=function(){window.assertSlow=null,window.console&&window.console.log&&window.console.log("disabling assertSlow")},(()=>{var __webpack_modules__={748:function(module,__unused_webpack_exports,__webpack_require__){var u;u=function(){"use strict";var commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==__webpack_require__.g?__webpack_require__.g:"undefined"!=typeof self?self:{},GrammarLocation$4=function(){function e(e,t){this.source=e,this.start=t}return e.prototype.toString=function(){return String(this.source)},e.prototype.offset=function(e){return{line:e.line+this.start.line-1,column:1===e.line?e.column+this.start.column-1:e.column,offset:e.offset+this.start.offset}},e.offsetStart=function(e){return e.source&&"function"==typeof e.source.offset?e.source.offset(e.start):e.start},e.offsetEnd=function(e){return e.source&&"function"==typeof e.source.offset?e.source.offset(e.end):e.end},e}(),grammarLocation=GrammarLocation$4,__extends=commonjsGlobal&&commonjsGlobal.__extends||(extendStatics=function(e,t){return(extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}extendStatics(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),extendStatics,GrammarLocation$3=grammarLocation,setProtoOf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},GrammarError$3=function(e){function t(r,n,o){var u=e.call(this,r)||this;return setProtoOf(u,t.prototype),u.name="GrammarError",u.location=n,void 0===o&&(o=[]),u.diagnostics=o,u.stage=null,u.problems=[["error",r,n,o]],u}return __extends(t,e),t.prototype.toString=function(){var t=e.prototype.toString.call(this);this.location&&(t+="\n at ",void 0!==this.location.source&&null!==this.location.source&&(t+="".concat(this.location.source,":")),t+="".concat(this.location.start.line,":").concat(this.location.start.column));for(var r=0,n=this.diagnostics;r<n.length;r++){var o=n[r];t+="\n from ",void 0!==o.location.source&&null!==o.location.source&&(t+="".concat(o.location.source,":")),t+="".concat(o.location.start.line,":").concat(o.location.start.column,": ").concat(o.message)}return t},t.prototype.format=function(e){var t=e.map((function(e){var t=e.source,r=e.text;return{source:t,text:null!=r?String(r).split(/\r\n|\n|\r/g):[]}}));function r(e,r,n){void 0===n&&(n="");var o="",u=t.find((function(t){return t.source===e.source})),a=e.start,i=GrammarLocation$3.offsetStart(e);if(u){var s=e.end,c=u.text[a.line-1],l=(a.line===s.line?s.column:c.length+1)-a.column||1;n&&(o+="\nnote: ".concat(n)),o+="\n --\x3e ".concat(e.source,":").concat(i.line,":").concat(i.column,"\n").concat("".padEnd(r)," |\n").concat(i.line.toString().padStart(r)," | ").concat(c,"\n").concat("".padEnd(r)," | ").concat("".padEnd(a.column-1)).concat("".padEnd(l,"^"))}else o+="\n at ".concat(e.source,":").concat(i.line,":").concat(i.column),n&&(o+=": ".concat(n));return o}function n(e,t,n,o){void 0===o&&(o=[]);var u=-1/0;u=(u=n?o.reduce((function(e,t){var r=t.location;return Math.max(e,GrammarLocation$3.offsetStart(r).line)}),n.start.line):Math.max.apply(null,o.map((function(e){return e.location.start.line})))).toString().length;var a="".concat(e,": ").concat(t);n&&(a+=r(n,u));for(var i=0,s=o;i<s.length;i++){var c=s[i];a+=r(c.location,u,c.message)}return a}return this.problems.filter((function(e){return"info"!==e[0]})).map((function(e){return n.apply(void 0,e)})).join("\n\n")},t}(Error),grammarError=GrammarError$3,__spreadArray$3=commonjsGlobal&&commonjsGlobal.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,u=t.length;o<u;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},visitor$b={build:function(e){function t(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return e[t.type].apply(e,__spreadArray$3([t],r,!1))}function r(){}function n(e){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return t.apply(void 0,__spreadArray$3([e.expression],r,!1))}function o(e){return function(r){for(var n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];r[e].forEach((function(e){return t.apply(void 0,__spreadArray$3([e],n,!1))}))}}var u={grammar:function(e){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];e.topLevelInitializer&&t.apply(void 0,__spreadArray$3([e.topLevelInitializer],r,!1)),e.initializer&&t.apply(void 0,__spreadArray$3([e.initializer],r,!1)),e.rules.forEach((function(e){return t.apply(void 0,__spreadArray$3([e],r,!1))}))},top_level_initializer:r,initializer:r,rule:n,named:n,choice:o("alternatives"),action:n,sequence:o("elements"),labeled:n,text:n,simple_and:n,simple_not:n,optional:n,zero_or_more:n,one_or_more:n,repeated:function(e){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return e.delimiter&&t.apply(void 0,__spreadArray$3([e.delimiter],r,!1)),t.apply(void 0,__spreadArray$3([e.expression],r,!1))},group:n,semantic_and:r,semantic_not:r,rule_ref:r,literal:r,class:r,any:r};return Object.keys(u).forEach((function(t){Object.prototype.hasOwnProperty.call(e,t)||(e[t]=u[t])})),t}},visitor_1=visitor$b,visitor$a=visitor_1,asts$7={findRule:function(e,t){for(var r=0;r<e.rules.length;r++)if(e.rules[r].name===t)return e.rules[r]},indexOfRule:function(e,t){for(var r=0;r<e.rules.length;r++)if(e.rules[r].name===t)return r;return-1},alwaysConsumesOnSuccess:function(e,t){function r(){return!0}function n(){return!1}var o=visitor$a.build({choice:function(e){return e.alternatives.every(o)},sequence:function(e){return e.elements.some(o)},simple_and:n,simple_not:n,optional:n,zero_or_more:n,repeated:function(e){var t=e.min?e.min:e.max;return!("constant"!==t.type||0===t.value||!o(e.expression)&&!(t.value>1&&e.delimiter&&o(e.delimiter)))},semantic_and:n,semantic_not:n,rule_ref:function(t){var r=asts$7.findRule(e,t.name);return r?o(r):void 0},literal:function(e){return""!==e.value},class:r,any:r});return o(t)}},asts_1=asts$7,opcodes={PUSH:0,PUSH_EMPTY_STRING:35,PUSH_UNDEFINED:1,PUSH_NULL:2,PUSH_FAILED:3,PUSH_EMPTY_ARRAY:4,PUSH_CURR_POS:5,POP:6,POP_CURR_POS:7,POP_N:8,NIP:9,APPEND:10,WRAP:11,TEXT:12,PLUCK:36,IF:13,IF_ERROR:14,IF_NOT_ERROR:15,IF_LT:30,IF_GE:31,IF_LT_DYNAMIC:32,IF_GE_DYNAMIC:33,WHILE_NOT_ERROR:16,MATCH_ANY:17,MATCH_STRING:18,MATCH_STRING_IC:19,MATCH_CHAR_CLASS:20,MATCH_REGEXP:20,ACCEPT_N:21,ACCEPT_STRING:22,FAIL:23,LOAD_SAVED_POS:24,UPDATE_SAVED_POS:25,CALL:26,RULE:27,SILENT_FAILS_ON:28,SILENT_FAILS_OFF:29,SOURCE_MAP_PUSH:37,SOURCE_MAP_POP:38,SOURCE_MAP_LABEL_PUSH:39,SOURCE_MAP_LABEL_POP:40},opcodes_1=opcodes,visitor$9=visitor_1,asts$6=asts_1,GrammarError$2=grammarError,ALWAYS_MATCH$1=1,SOMETIMES_MATCH$1=0,NEVER_MATCH$1=-1;function inferenceMatchResult$1(e){function t(e){return e.match=SOMETIMES_MATCH$1}function r(e){return u(e.expression),e.match=ALWAYS_MATCH$1}function n(e){return e.match=u(e.expression)}function o(e,t){for(var r=e.length,n=0,o=0,a=0;a<r;++a){var i=u(e[a]);i===ALWAYS_MATCH$1&&++n,i===NEVER_MATCH$1&&++o}return n===r?ALWAYS_MATCH$1:t?o===r?NEVER_MATCH$1:SOMETIMES_MATCH$1:o>0?NEVER_MATCH$1:SOMETIMES_MATCH$1}var u=visitor$9.build({rule:function(e){var t=void 0,r=0;if(void 0===e.match){e.match=SOMETIMES_MATCH$1;do{if(t=e.match,e.match=u(e.expression),++r>6)throw new GrammarError$2("Infinity cycle detected when trying to evaluate node match result",e.location)}while(t!==e.match)}return e.match},named:n,choice:function(e){return e.match=o(e.alternatives,!0)},action:n,sequence:function(e){return e.match=o(e.elements,!1)},labeled:n,text:n,simple_and:n,simple_not:function(e){return e.match=-u(e.expression)},optional:r,zero_or_more:r,one_or_more:n,repeated:function(e){var t=u(e.expression),r=e.delimiter?u(e.delimiter):NEVER_MATCH$1,n=e.min?e.min:e.max;return"constant"!==n.type||"constant"!==e.max.type?e.match=SOMETIMES_MATCH$1:0===e.max.value||null!==e.max.value&&n.value>e.max.value?e.match=NEVER_MATCH$1:t===NEVER_MATCH$1?e.match=0===n.value?ALWAYS_MATCH$1:NEVER_MATCH$1:t===ALWAYS_MATCH$1?e.delimiter&&n.value>=2?e.match=r:e.match=ALWAYS_MATCH$1:e.delimiter&&n.value>=2?e.match=r===NEVER_MATCH$1?NEVER_MATCH$1:SOMETIMES_MATCH$1:e.match=0===n.value?ALWAYS_MATCH$1:SOMETIMES_MATCH$1},group:n,semantic_and:t,semantic_not:t,rule_ref:function(t){var r=asts$6.findRule(e,t.name);return t.match=u(r)},literal:function(e){var t=0===e.value.length?ALWAYS_MATCH$1:SOMETIMES_MATCH$1;return e.match=t},class:function(e){var t=0===e.parts.length?NEVER_MATCH$1:SOMETIMES_MATCH$1;return e.match=t},any:t});u(e)}inferenceMatchResult$1.ALWAYS_MATCH=ALWAYS_MATCH$1,inferenceMatchResult$1.SOMETIMES_MATCH=SOMETIMES_MATCH$1,inferenceMatchResult$1.NEVER_MATCH=NEVER_MATCH$1;var inferenceMatchResult_1=inferenceMatchResult$1,__spreadArray$2=commonjsGlobal&&commonjsGlobal.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,u=t.length;o<u;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},asts$5=asts_1,op$1=opcodes_1,visitor$8=visitor_1,_a$1=inferenceMatchResult_1,ALWAYS_MATCH=_a$1.ALWAYS_MATCH,SOMETIMES_MATCH=_a$1.SOMETIMES_MATCH,NEVER_MATCH=_a$1.NEVER_MATCH;function generateBytecode$1(e,t){var r=[],n=[],o=[],u=[],a=[];function i(e){var t=r.indexOf(e);return-1===t?r.push(e)-1:t}function s(e){var t=JSON.stringify(e),r=o.findIndex((function(e){return JSON.stringify(e)===t}));return-1===r?o.push(e)-1:r}function c(e,t,r){var n={predicate:e,params:t,body:r.code,location:r.codeLocation},o=JSON.stringify(n),a=u.findIndex((function(e){return JSON.stringify(e)===o}));return-1===a?u.push(n)-1:a}function l(e){return a.push(e)-1}function p(e){var t={};return Object.keys(e).forEach((function(r){t[r]=e[r]})),t}function h(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return e.concat.apply(e,t)}function d(e,t,r,n){return e===ALWAYS_MATCH?r:e===NEVER_MATCH?n:t.concat([r.length,n.length],r,n)}function f(e,t,r,n){var o=Object.keys(r).map((function(e){return n-r[e]}));return[op$1.CALL,e,t,o.length].concat(o)}function m(e,t,r){var n=0|e.match;return h([op$1.PUSH_CURR_POS],[op$1.SILENT_FAILS_ON],S(e,{sp:r.sp+1,env:p(r.env),action:null}),[op$1.SILENT_FAILS_OFF],d(t?-n:n,[t?op$1.IF_ERROR:op$1.IF_NOT_ERROR],h([op$1.POP],[t?op$1.POP:op$1.POP_CURR_POS],[op$1.PUSH_UNDEFINED]),h([op$1.POP],[t?op$1.POP_CURR_POS:op$1.POP],[op$1.PUSH_FAILED])))}function g(e,t,r){var n=c(!0,Object.keys(r.env),e);return h([op$1.UPDATE_SAVED_POS],f(n,0,r.env,r.sp),d(0|e.match,[op$1.IF],h([op$1.POP],t?[op$1.PUSH_FAILED]:[op$1.PUSH_UNDEFINED]),h([op$1.POP],t?[op$1.PUSH_UNDEFINED]:[op$1.PUSH_FAILED])))}function A(e){return t=[op$1.WHILE_NOT_ERROR],r=h([op$1.APPEND],e),t.concat([r.length],r);var t,r}function E(e,t,r,n){switch(e.type){case"constant":return{pre:[],post:[],sp:r};case"variable":return e.sp=n+r-t[e.value],{pre:[],post:[],sp:r};case"function":return e.sp=n,{pre:f(c(!0,Object.keys(t),{code:e.value,codeLocation:e.codeLocation}),0,t,r),post:[op$1.NIP],sp:r+1};default:throw new Error('Unknown boundary type "'.concat(e.type,'" for the "repeated" node'))}}function y(e,t){if(null!==t.value){var r="constant"===t.type?[op$1.IF_GE,t.value]:[op$1.IF_GE_DYNAMIC,t.sp];return d(SOMETIMES_MATCH,r,[op$1.PUSH_FAILED],e)}return e}var C,S=(C={grammar:function(e){e.rules.forEach(S),e.literals=r,e.classes=n,e.expectations=o,e.functions=u,e.locations=a},rule:function(e){e.bytecode=S(e.expression,{sp:-1,env:{},pluck:[],action:null})},named:function(e,t){var r=0|e.match,n=r===NEVER_MATCH?null:s({type:"rule",value:e.name});return h([op$1.SILENT_FAILS_ON],S(e.expression,t),[op$1.SILENT_FAILS_OFF],d(r,[op$1.IF_ERROR],[op$1.FAIL,n],[]))},choice:function(e,t){return function e(t,r){var n=0|t[0].match,o=S(t[0],{sp:r.sp,env:p(r.env),action:null});return n===ALWAYS_MATCH?o:h(o,t.length>1?d(SOMETIMES_MATCH,[op$1.IF_ERROR],h([op$1.POP],e(t.slice(1),r)),[]):[])}(e.alternatives,t)},action:function(e,t){var r=p(t.env),n="sequence"!==e.expression.type||0===e.expression.elements.length,o=S(e.expression,{sp:t.sp+(n?1:0),env:r,action:e}),u=0|e.expression.match,a=n&&u!==NEVER_MATCH?c(!1,Object.keys(r),e):null;return n?h([op$1.PUSH_CURR_POS],o,d(u,[op$1.IF_NOT_ERROR],h([op$1.LOAD_SAVED_POS,1],f(a,1,r,t.sp+2)),[]),[op$1.NIP]):o},sequence:function(e,t){return h([op$1.PUSH_CURR_POS],function t(r,n){if(r.length>0){var o=e.elements.length-r.length+1;return h(S(r[0],{sp:n.sp,env:n.env,pluck:n.pluck,action:null}),d(0|r[0].match,[op$1.IF_NOT_ERROR],t(r.slice(1),{sp:n.sp+1,env:n.env,pluck:n.pluck,action:n.action}),h(o>1?[op$1.POP_N,o]:[op$1.POP],[op$1.POP_CURR_POS],[op$1.PUSH_FAILED])))}if(n.pluck.length>0)return h([op$1.PLUCK,e.elements.length+1,n.pluck.length],n.pluck.map((function(e){return n.sp-e})));if(n.action){var u=c(!1,Object.keys(n.env),n.action);return h([op$1.LOAD_SAVED_POS,e.elements.length],f(u,e.elements.length+1,n.env,n.sp))}return h([op$1.WRAP,e.elements.length],[op$1.NIP])}(e.elements,{sp:t.sp+1,env:t.env,pluck:[],action:t.action}))},labeled:function(e,r){var n=r.env,o=e.label,u=r.sp+1;o&&(n=p(r.env),r.env[e.label]=u),e.pick&&r.pluck.push(u);var a=S(e.expression,{sp:r.sp,env:n,action:null});return o&&e.labelLocation&&t&&"source-and-map"===t.output?h([op$1.SOURCE_MAP_LABEL_PUSH,u,i(o),l(e.labelLocation)],a,[op$1.SOURCE_MAP_LABEL_POP,u]):a},text:function(e,t){return h([op$1.PUSH_CURR_POS],S(e.expression,{sp:t.sp+1,env:p(t.env),action:null}),d(0|e.match,[op$1.IF_NOT_ERROR],h([op$1.POP],[op$1.TEXT]),[op$1.NIP]))},simple_and:function(e,t){return m(e.expression,!1,t)},simple_not:function(e,t){return m(e.expression,!0,t)},optional:function(e,t){return h(S(e.expression,{sp:t.sp,env:p(t.env),action:null}),d(-(0|e.expression.match),[op$1.IF_ERROR],h([op$1.POP],[op$1.PUSH_NULL]),[]))},zero_or_more:function(e,t){var r=S(e.expression,{sp:t.sp+1,env:p(t.env),action:null});return h([op$1.PUSH_EMPTY_ARRAY],r,A(r),[op$1.POP])},one_or_more:function(e,t){var r=S(e.expression,{sp:t.sp+1,env:p(t.env),action:null});return h([op$1.PUSH_EMPTY_ARRAY],r,d(0|e.expression.match,[op$1.IF_NOT_ERROR],h(A(r),[op$1.POP]),h([op$1.POP],[op$1.POP],[op$1.PUSH_FAILED])))},repeated:function(e,t){var r=e.min?e.min:e.max,n="constant"!==r.type||r.value>0,o="constant"!==e.max.type&&null!==e.max.value,u=n?2:1,a=e.min?E(e.min,t.env,t.sp,2+("function"===e.max.type?1:0)):{pre:[],post:[],sp:t.sp},i=E(e.max,t.env,a.sp,u),s=S(e.expression,{sp:i.sp+u,env:p(t.env),action:null}),c=null!==e.delimiter?S(e.expression,{sp:i.sp+u+1,env:p(t.env),action:null}):s,l=y(function(e,t,r,n,o){return e?h([op$1.PUSH_CURR_POS],S(e,{sp:n.sp+o+1,env:p(n.env),action:null}),d(0|e.match,[op$1.IF_NOT_ERROR],h([op$1.POP],r,d(-t,[op$1.IF_ERROR],[op$1.POP,op$1.POP_CURR_POS,op$1.PUSH_FAILED],[op$1.NIP])),[op$1.NIP])):r}(e.delimiter,0|e.expression.match,c,t,u),e.max),f=o?y(s,e.max):s,m=h(n?[op$1.PUSH_CURR_POS]:[],[op$1.PUSH_EMPTY_ARRAY],f,A(l),[op$1.POP]);return h(a.pre,i.pre,n?function(e,t){var r="constant"===t.type?[op$1.IF_LT,t.value]:[op$1.IF_LT_DYNAMIC,t.sp];return h(e,d(SOMETIMES_MATCH,r,[op$1.POP,op$1.POP_CURR_POS,op$1.PUSH_FAILED],[op$1.NIP]))}(m,r):m,i.post,a.post)},group:function(e,t){return S(e.expression,{sp:t.sp,env:p(t.env),action:null})},semantic_and:function(e,t){return g(e,!1,t)},semantic_not:function(e,t){return g(e,!0,t)},rule_ref:function(t){return[op$1.RULE,asts$5.indexOfRule(e,t.name)]},literal:function(e){if(e.value.length>0){var t=0|e.match,r=t===SOMETIMES_MATCH||t===ALWAYS_MATCH&&!e.ignoreCase?i(e.ignoreCase?e.value.toLowerCase():e.value):null,n=t!==ALWAYS_MATCH?s({type:"literal",value:e.value,ignoreCase:e.ignoreCase}):null;return d(t,e.ignoreCase?[op$1.MATCH_STRING_IC,r]:[op$1.MATCH_STRING,r],e.ignoreCase?[op$1.ACCEPT_N,e.value.length]:[op$1.ACCEPT_STRING,r],[op$1.FAIL,n])}return[op$1.PUSH_EMPTY_STRING]},class:function(e){var t=0|e.match,r=t===SOMETIMES_MATCH?function(e){var t={value:e.parts,inverted:e.inverted,ignoreCase:e.ignoreCase},r=JSON.stringify(t),o=n.findIndex((function(e){return JSON.stringify(e)===r}));return-1===o?n.push(t)-1:o}(e):null,o=t!==ALWAYS_MATCH?s({type:"class",value:e.parts,inverted:e.inverted,ignoreCase:e.ignoreCase}):null;return d(t,[op$1.MATCH_CHAR_CLASS,r],[op$1.ACCEPT_N,1],[op$1.FAIL,o])},any:function(e){var t=0|e.match,r=t!==ALWAYS_MATCH?s({type:"any"}):null;return d(t,[op$1.MATCH_ANY],[op$1.ACCEPT_N,1],[op$1.FAIL,r])}},t&&"source-and-map"===t.output&&Object.entries(C).forEach((function(e){var t=e[0],r=e[1];C[t]=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var o=r.apply(void 0,__spreadArray$2([e],t,!1));return void 0!==o&&e.location?h([op$1.SOURCE_MAP_PUSH,l(e.location)],o,[op$1.SOURCE_MAP_POP]):o}})),visitor$8.build(C));S(e)}var generateBytecode_1=generateBytecode$1,sourceMap={},sourceMapGenerator={},base64Vlq={},base64$3={};const intToCharMap="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");base64$3.encode=function(e){if(0<=e&&e<intToCharMap.length)return intToCharMap[e];throw new TypeError("Must be between 0 and 63: "+e)};const base64$2=base64$3,VLQ_BASE_SHIFT=5,VLQ_BASE=1<<VLQ_BASE_SHIFT,VLQ_BASE_MASK=VLQ_BASE-1,VLQ_CONTINUATION_BIT=VLQ_BASE;function toVLQSigned(e){return e<0?1+(-e<<1):0+(e<<1)}base64Vlq.encode=function(e){let t,r="",n=toVLQSigned(e);do{t=n&VLQ_BASE_MASK,n>>>=VLQ_BASE_SHIFT,n>0&&(t|=VLQ_CONTINUATION_BIT),r+=base64$2.encode(t)}while(n>0);return r};var util$3={};function getArg(e,t,r){if(t in e)return e[t];if(3===arguments.length)return r;throw new Error('"'+t+'" is a required argument.')}util$3.getArg=getArg;const supportsNullProto=!("__proto__"in Object.create(null));function identity(e){return e}function toSetString(e){return isProtoString(e)?"$"+e:e}function fromSetString(e){return isProtoString(e)?e.slice(1):e}function isProtoString(e){if(!e)return!1;const t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(let r=t-10;r>=0;r--)if(36!==e.charCodeAt(r))return!1;return!0}function strcmp(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}function compareByGeneratedPositionsInflated(e,t){let r=e.generatedLine-t.generatedLine;return 0!==r?r:(r=e.generatedColumn-t.generatedColumn,0!==r?r:(r=strcmp(e.source,t.source),0!==r?r:(r=e.originalLine-t.originalLine,0!==r?r:(r=e.originalColumn-t.originalColumn,0!==r?r:strcmp(e.name,t.name)))))}util$3.toSetString=supportsNullProto?identity:toSetString,util$3.fromSetString=supportsNullProto?identity:fromSetString,util$3.compareByGeneratedPositionsInflated=compareByGeneratedPositionsInflated;const PROTOCOL="http:",PROTOCOL_AND_HOST=PROTOCOL+"//host";function createSafeHandler(e){return t=>{const r=getURLType(t),n=buildSafeBase(t),o=new URL(t,n);e(o);const u=o.toString();return"absolute"===r?u:"scheme-relative"===r?u.slice(PROTOCOL.length):"path-absolute"===r?u.slice(PROTOCOL_AND_HOST.length):computeRelativeURL(n,u)}}function withBase(e,t){return new URL(e,t).toString()}function buildUniqueSegment(e,t){let r=0;for(;;){const n=e+r++;if(-1===t.indexOf(n))return n}}function buildSafeBase(e){const t=e.split("..").length-1,r=buildUniqueSegment("p",e);let n=PROTOCOL_AND_HOST+"/";for(let o=0;o<t;o++)n+=r+"/";return n}const ABSOLUTE_SCHEME=/^[A-Za-z0-9\+\-\.]+:/;function getURLType(e){return"/"===e[0]?"/"===e[1]?"scheme-relative":"path-absolute":ABSOLUTE_SCHEME.test(e)?"absolute":"path-relative"}function computeRelativeURL(e,t){"string"==typeof e&&(e=new URL(e)),"string"==typeof t&&(t=new URL(t));const r=t.pathname.split("/"),n=e.pathname.split("/");for(n.length>0&&!n[n.length-1]&&n.pop();r.length>0&&n.length>0&&r[0]===n[0];)r.shift(),n.shift();return n.map(()=>"..").concat(r).join("/")+t.search+t.hash}const ensureDirectory=createSafeHandler(e=>{e.pathname=e.pathname.replace(/\/?$/,"/")}),normalize=createSafeHandler(e=>{});function join(e,t){const r=getURLType(t),n=getURLType(e);if(e=ensureDirectory(e),"absolute"===r)return withBase(t,void 0);if("absolute"===n)return withBase(t,e);if("scheme-relative"===r)return normalize(t);if("scheme-relative"===n)return withBase(t,withBase(e,PROTOCOL_AND_HOST)).slice(PROTOCOL.length);if("path-absolute"===r)return normalize(t);if("path-absolute"===n)return withBase(t,withBase(e,PROTOCOL_AND_HOST)).slice(PROTOCOL_AND_HOST.length);const o=buildSafeBase(t+e);return computeRelativeURL(o,withBase(t,withBase(e,o)))}function relative(e,t){const r=relativeIfPossible(e,t);return"string"==typeof r?r:normalize(t)}function relativeIfPossible(e,t){if(getURLType(e)!==getURLType(t))return null;const r=buildSafeBase(e+t),n=new URL(e,r),o=new URL(t,r);try{new URL("",o.toString())}catch(e){return null}return o.protocol!==n.protocol||o.user!==n.user||o.password!==n.password||o.hostname!==n.hostname||o.port!==n.port?null:computeRelativeURL(n,o)}util$3.normalize=normalize,util$3.join=join,util$3.relative=relative;var arraySet={};let ArraySet$1=class e{static fromArray(t,r){const n=new e;for(let e=0,o=t.length;e<o;e++)n.add(t[e],r);return n}size(){return this._set.size}add(e,t){const r=this.has(e),n=this._array.length;r&&!t||this._array.push(e),r||this._set.set(e,n)}has(e){return this._set.has(e)}indexOf(e){const t=this._set.get(e);if(t>=0)return t;throw new Error('"'+e+'" is not in the set.')}at(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)}toArray(){return this._array.slice()}constructor(){this._array=[],this._set=new Map}};arraySet.ArraySet=ArraySet$1;var mappingList={};const util$2=util$3;function generatedPositionAfter(e,t){const r=e.generatedLine,n=t.generatedLine,o=e.generatedColumn,u=t.generatedColumn;return n>r||n==r&&u>=o||util$2.compareByGeneratedPositionsInflated(e,t)<=0}let MappingList$1=class{unsortedForEach(e,t){this._array.forEach(e,t)}add(e){generatedPositionAfter(this._last,e)?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))}toArray(){return this._sorted||(this._array.sort(util$2.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}};mappingList.MappingList=MappingList$1;const base64VLQ=base64Vlq,util$1=util$3,ArraySet=arraySet.ArraySet,MappingList=mappingList.MappingList;let SourceMapGenerator$1=class e{static fromSourceMap(t){const r=t.sourceRoot,n=new e({file:t.file,sourceRoot:r});return t.eachMapping((function(e){const t={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(t.source=e.source,null!=r&&(t.source=util$1.relative(r,t.source)),t.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(t.name=e.name)),n.addMapping(t)})),t.sources.forEach((function(e){let o=e;null!=r&&(o=util$1.relative(r,e)),n._sources.has(o)||n._sources.add(o);const u=t.sourceContentFor(e);null!=u&&n.setSourceContent(e,u)})),n}addMapping(e){const t=util$1.getArg(e,"generated"),r=util$1.getArg(e,"original",null);let n=util$1.getArg(e,"source",null),o=util$1.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,r,n,o),null!=n&&(n=String(n),this._sources.has(n)||this._sources.add(n)),null!=o&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:r&&r.line,originalColumn:r&&r.column,source:n,name:o})}setSourceContent(e,t){let r=e;null!=this._sourceRoot&&(r=util$1.relative(this._sourceRoot,r)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[util$1.toSetString(r)]=t):this._sourcesContents&&(delete this._sourcesContents[util$1.toSetString(r)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))}applySourceMap(e,t,r){let n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}const o=this._sourceRoot;null!=o&&(n=util$1.relative(o,n));const u=this._mappings.toArray().length>0?new ArraySet:this._sources,a=new ArraySet;this._mappings.unsortedForEach((function(t){if(t.source===n&&null!=t.originalLine){const n=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=n.source&&(t.source=n.source,null!=r&&(t.source=util$1.join(r,t.source)),null!=o&&(t.source=util$1.relative(o,t.source)),t.originalLine=n.line,t.originalColumn=n.column,null!=n.name&&(t.name=n.name))}const i=t.source;null==i||u.has(i)||u.add(i);const s=t.name;null==s||a.has(s)||a.add(s)}),this),this._sources=u,this._names=a,e.sources.forEach((function(t){const n=e.sourceContentFor(t);null!=n&&(null!=r&&(t=util$1.join(r,t)),null!=o&&(t=util$1.relative(o,t)),this.setSourceContent(t,n))}),this)}_validateMapping(e,t,r,n){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0&&!t&&!r&&!n);else if(!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))}_serializeMappings(){let e,t,r,n,o=0,u=1,a=0,i=0,s=0,c=0,l="";const p=this._mappings.toArray();for(let h=0,d=p.length;h<d;h++){if(t=p[h],e="",t.generatedLine!==u)for(o=0;t.generatedLine!==u;)e+=";",u++;else if(h>0){if(!util$1.compareByGeneratedPositionsInflated(t,p[h-1]))continue;e+=","}e+=base64VLQ.encode(t.generatedColumn-o),o=t.generatedColumn,null!=t.source&&(n=this._sources.indexOf(t.source),e+=base64VLQ.encode(n-c),c=n,e+=base64VLQ.encode(t.originalLine-1-i),i=t.originalLine-1,e+=base64VLQ.encode(t.originalColumn-a),a=t.originalColumn,null!=t.name&&(r=this._names.indexOf(t.name),e+=base64VLQ.encode(r-s),s=r)),l+=e}return l}_generateSourcesContent(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=util$1.relative(t,e));const r=util$1.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null}),this)}toJSON(){const e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e}toString(){return JSON.stringify(this.toJSON())}constructor(e){e||(e={}),this._file=util$1.getArg(e,"file",null),this._sourceRoot=util$1.getArg(e,"sourceRoot",null),this._skipValidation=util$1.getArg(e,"skipValidation",!1),this._sources=new ArraySet,this._names=new ArraySet,this._mappings=new MappingList,this._sourcesContents=null}};SourceMapGenerator$1.prototype._version=3,sourceMapGenerator.SourceMapGenerator=SourceMapGenerator$1;var sourceNode={};const SourceMapGenerator=sourceMapGenerator.SourceMapGenerator,util=util$3,REGEX_NEWLINE=/(\r?\n)/,NEWLINE_CODE=10,isSourceNode="$$$isSourceNode$$$";let SourceNode$2=class e{static fromStringWithSourceMap(t,r,n){const o=new e,u=t.split(REGEX_NEWLINE);let a=0;const i=function(){return e()+(e()||"");function e(){return a<u.length?u[a++]:void 0}};let s,c=1,l=0,p=null;return r.eachMapping((function(e){if(null!==p){if(!(c<e.generatedLine)){s=u[a]||"";const t=s.substr(0,e.generatedColumn-l);return u[a]=s.substr(e.generatedColumn-l),l=e.generatedColumn,h(p,t),void(p=e)}h(p,i()),c++,l=0}for(;c<e.generatedLine;)o.add(i()),c++;l<e.generatedColumn&&(s=u[a]||"",o.add(s.substr(0,e.generatedColumn)),u[a]=s.substr(e.generatedColumn),l=e.generatedColumn),p=e}),this),a<u.length&&(p&&h(p,i()),o.add(u.splice(a).join(""))),r.sources.forEach((function(e){const t=r.sourceContentFor(e);null!=t&&(null!=n&&(e=util.join(n,e)),o.setSourceContent(e,t))})),o;function h(t,r){if(null===t||void 0===t.source)o.add(r);else{const u=n?util.join(n,t.source):t.source;o.add(new e(t.originalLine,t.originalColumn,u,r,t.name))}}}add(e){if(Array.isArray(e))e.forEach((function(e){this.add(e)}),this);else{if(!e[isSourceNode]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this}prepend(e){if(Array.isArray(e))for(let t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[isSourceNode]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this}walk(e){let t;for(let r=0,n=this.children.length;r<n;r++)t=this.children[r],t[isSourceNode]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})}join(e){let t,r;const n=this.children.length;if(n>0){for(t=[],r=0;r<n-1;r++)t.push(this.children[r]),t.push(e);t.push(this.children[r]),this.children=t}return this}replaceRight(e,t){const r=this.children[this.children.length-1];return r[isSourceNode]?r.replaceRight(e,t):"string"==typeof r?this.children[this.children.length-1]=r.replace(e,t):this.children.push("".replace(e,t)),this}setSourceContent(e,t){this.sourceContents[util.toSetString(e)]=t}walkSourceContents(e){for(let r=0,n=this.children.length;r<n;r++)this.children[r][isSourceNode]&&this.children[r].walkSourceContents(e);const t=Object.keys(this.sourceContents);for(let r=0,n=t.length;r<n;r++)e(util.fromSetString(t[r]),this.sourceContents[t[r]])}toString(){let e="";return this.walk((function(t){e+=t})),e}toStringWithSourceMap(e){const t={code:"",line:1,column:0},r=new SourceMapGenerator(e);let n=!1,o=null,u=null,a=null,i=null;return this.walk((function(e,s){t.code+=e,null!==s.source&&null!==s.line&&null!==s.column?(o===s.source&&u===s.line&&a===s.column&&i===s.name||r.addMapping({source:s.source,original:{line:s.line,column:s.column},generated:{line:t.line,column:t.column},name:s.name}),o=s.source,u=s.line,a=s.column,i=s.name,n=!0):n&&(r.addMapping({generated:{line:t.line,column:t.column}}),o=null,n=!1);for(let u=0,a=e.length;u<a;u++)e.charCodeAt(u)===NEWLINE_CODE?(t.line++,t.column=0,u+1===a?(o=null,n=!1):n&&r.addMapping({source:s.source,original:{line:s.line,column:s.column},generated:{line:t.line,column:t.column},name:s.name})):t.column++})),this.walkSourceContents((function(e,t){r.setSourceContent(e,t)})),{code:t.code,map:r}}constructor(e,t,r,n,o){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==r?null:r,this.name=null==o?null:o,this[isSourceNode]=!0,null!=n&&this.add(n)}};sourceNode.SourceNode=SourceNode$2,sourceMap.SourceMapGenerator=sourceMapGenerator.SourceMapGenerator,sourceMap.SourceNode=sourceNode.SourceNode;var SourceNode$1=sourceMap.SourceNode,GrammarLocation$2=grammarLocation,Stack$1=function(){function e(e,t,r,n){this.sp=-1,this.maxSp=-1,this.varName=t,this.ruleName=e,this.type=r,this.bytecode=n,this.labels={},this.sourceMapStack=[]}return e.prototype.name=function(e){if(e<0)throw new RangeError("Rule '".concat(this.ruleName,"': The variable stack underflow: attempt to use a variable '").concat(this.varName,"<x>' at an index ").concat(e,".\nBytecode: ").concat(this.bytecode));return this.varName+e},e.sourceNode=function(e,t,r){var n=GrammarLocation$2.offsetStart(e);return new SourceNode$1(n.line,n.column?n.column-1:null,String(e.source),t,r)},e.prototype.push=function(t){++this.sp>this.maxSp&&(this.maxSp=this.sp);var r=this.labels[this.sp],n=[this.name(this.sp)," = ",t,";"];if(r){if(this.sourceMapStack.length){var o=e.sourceNode(r.location,n.splice(0,2),r.label),u=this.sourceMapPopInternal(),a=u.parts,i=u.location,s=i.start.offset<r.location.end.offset?{start:r.location.end,end:i.end,source:i.source}:i,c=e.sourceNode(s,n.concat("\n"));return this.sourceMapStack.push([a,a.length+1,i]),new SourceNode$1(null,null,r.location.source,[o,c])}return e.sourceNode(r.location,n.concat("\n"))}return n.join("")},e.prototype.pop=function(e){var t=this;return void 0!==e?(this.sp-=e,Array.from({length:e},(function(e,r){return t.name(t.sp+1+r)}))):this.name(this.sp--)},e.prototype.top=function(){return this.name(this.sp)},e.prototype.index=function(e){if(e<0)throw new RangeError("Rule '".concat(this.ruleName,"': The variable stack overflow: attempt to get a variable at a negative index ").concat(e,".\nBytecode: ").concat(this.bytecode));return this.name(this.sp-e)},e.prototype.result=function(){if(this.maxSp<0)throw new RangeError("Rule '".concat(this.ruleName,"': The variable stack is empty, can't get the result.\nBytecode: ").concat(this.bytecode));return this.name(0)},e.prototype.defines=function(){var e=this;return this.maxSp<0?"":this.type+" "+Array.from({length:this.maxSp+1},(function(t,r){return e.name(r)})).join(", ")+";"},e.prototype.checkedIf=function(e,t,r){var n=this.sp;if(t(),r){var o=this.sp;if(this.sp=n,r(),o!==this.sp)throw new Error("Rule '"+this.ruleName+"', position "+e+": Branches of a condition can't move the stack pointer differently (before: "+n+", after then: "+o+", after else: "+this.sp+"). Bytecode: "+this.bytecode)}},e.prototype.checkedLoop=function(e,t){var r=this.sp;if(t(),r!==this.sp)throw new Error("Rule '"+this.ruleName+"', position "+e+": Body of a loop can't move the stack pointer (before: "+r+", after: "+this.sp+"). Bytecode: "+this.bytecode)},e.prototype.sourceMapPush=function(e,t){if(this.sourceMapStack.length){var r=this.sourceMapStack[this.sourceMapStack.length-1];r[2].start.offset===t.start.offset&&r[2].end.offset>t.end.offset&&(r[2]={start:t.end,end:r[2].end,source:r[2].source})}this.sourceMapStack.push([e,e.length,t])},e.prototype.sourceMapPopInternal=function(){var e=this.sourceMapStack.pop(),t=e[0],r=e[1],n=e[2],o=t.splice(r).map((function(e){return e instanceof SourceNode$1?e:e+"\n"}));if(o.length){var u=GrammarLocation$2.offsetStart(n);t.push(new SourceNode$1(u.line,u.column-1,String(n.source),o))}return{parts:t,location:n}},e.prototype.sourceMapPop=function(e){var t=this.sourceMapPopInternal().location;if(this.sourceMapStack.length&&t.end.offset<this.sourceMapStack[this.sourceMapStack.length-1][2].end.offset){var r=this.sourceMapPopInternal(),n=r.parts,o=r.location,u=o.start.offset<t.end.offset?{start:t.end,end:o.end,source:o.source}:o;this.sourceMapStack.push([n,n.length+(e||0),u])}},e}(),stack=Stack$1,version="3.0.2",utils={};function hex(e){return e.charCodeAt(0).toString(16).toUpperCase()}function stringEscape$1(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\v/g,"\\v").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(e){return"\\x0"+hex(e)})).replace(/[\x10-\x1F\x7F-\xFF]/g,(function(e){return"\\x"+hex(e)})).replace(/[\u0100-\u0FFF]/g,(function(e){return"\\u0"+hex(e)})).replace(/[\u1000-\uFFFF]/g,(function(e){return"\\u"+hex(e)}))}function regexpClassEscape$1(e){return e.replace(/\\/g,"\\\\").replace(/\//g,"\\/").replace(/]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\x08/g,"\\b").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\v/g,"\\v").replace(/\f/g,"\\f").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(e){return"\\x0"+hex(e)})).replace(/[\x10-\x1F\x7F-\xFF]/g,(function(e){return"\\x"+hex(e)})).replace(/[\u0100-\u0FFF]/g,(function(e){return"\\u0"+hex(e)})).replace(/[\u1000-\uFFFF]/g,(function(e){return"\\u"+hex(e)}))}function base64$1(e){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=e.length%3,n=e.length-r,o="",u=0;u<n;u+=3)o+=t[e[u]>>2],o+=t[(3&e[u])<<4|e[u+1]>>4],o+=t[(15&e[u+1])<<2|e[u+2]>>6],o+=t[63&e[u+2]];return 1===r?(o+=t[e[n]>>2],o+=t[(3&e[n])<<4],o+="=="):2===r&&(o+=t[e[n]>>2],o+=t[(3&e[n])<<4|e[n+1]>>4],o+=t[(15&e[n+1])<<2],o+="="),o}utils.hex=hex,utils.stringEscape=stringEscape$1,utils.regexpClassEscape=regexpClassEscape$1,utils.base64=base64$1;var __spreadArray$1=commonjsGlobal&&commonjsGlobal.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,u=t.length;o<u;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},asts$4=asts_1,op=opcodes_1,Stack=stack,VERSION$1=version,_a=utils,stringEscape=_a.stringEscape,regexpClassEscape=_a.regexpClassEscape,SourceNode=sourceMap.SourceNode,GrammarLocation$1=grammarLocation;function toSourceNode(e,t,r){var n=GrammarLocation$1.offsetStart(t),o=n.line,u=n.column-1,a=e.split("\n");return 1===a.length?new SourceNode(o,u,String(t.source),e,r):new SourceNode(null,null,String(t.source),a.map((function(e,n){return new SourceNode(o+n,0===n?u:0,String(t.source),n===a.length-1?e:[e,"\n"],r)})))}function wrapInSourceNode(e,t,r,n,o){if(r){var u=GrammarLocation$1.offsetEnd(r);return new SourceNode(null,null,String(r.source),[e,toSourceNode(t,r,o),new SourceNode(u.line,u.column-1,String(r.source),n)])}return new SourceNode(null,null,null,[e,t,n])}function generateJS$1(e,t){function r(e){var t=!0,r=0;return function e(n){return Array.isArray(n)?n.map(e):n instanceof SourceNode?(r++,n.children=e(n.children),r--,n):(n=t?n.replace(/^(.+)$/gm,"  $1"):n.replace(/\n(\s*\S)/g,"\n  $1"),t=!r||n.endsWith("\n"),n)}(e)}function n(e){return"peg$c"+e}function o(e){return"peg$r"+e}function u(e){return"peg$e"+e}function a(e){return"peg$f"+e}function i(e){return"peg$parse"+e}function s(e){return e.codeLocation?toSourceNode(e.code,e.codeLocation,"$"+e.type):e.code}e.code=function(e){function n(){return["// Generated by Peggy ".concat(VERSION$1,"."),"//","// https://peggyjs.org/"]}function o(){return t.trace?["{","  SyntaxError: peg$SyntaxError,","  DefaultTracer: peg$DefaultTracer,","  parse: peg$parse","}"].join("\n"):["{","  SyntaxError: peg$SyntaxError,","  parse: peg$parse","}"].join("\n")}var u={bare:function(){return __spreadArray$1(__spreadArray$1([],n(),!0),["(function() {",'  "use strict";',"",e,"",r("return "+o()+";"),"})()"],!1)},commonjs:function(){var r=Object.keys(t.dependencies),u=n();return u.push("",'"use strict";',""),r.length>0&&(r.forEach((function(e){u.push("var "+e+' = require("'+stringEscape(t.dependencies[e])+'");')})),u.push("")),u.push(e,"","module.exports = "+o()+";"),u},es:function(){var r=Object.keys(t.dependencies),o=n();return o.push(""),r.length>0&&(r.forEach((function(e){o.push("import "+e+' from "'+stringEscape(t.dependencies[e])+'";')})),o.push("")),o.push(e,"","export {","  peg$SyntaxError as SyntaxError,",t.trace?"  peg$DefaultTracer as DefaultTracer,":"","  peg$parse as parse","};"),o},amd:function(){var u=Object.keys(t.dependencies),a="["+u.map((function(e){return t.dependencies[e]})).map((function(e){return'"'+stringEscape(e)+'"'})).join(", ")+"]",i=u.join(", ");return __spreadArray$1(__spreadArray$1([],n(),!0),["define("+a+", function("+i+") {",'  "use strict";',"",e,"",r("return "+o()+";"),"});"],!1)},globals:function(){return __spreadArray$1(__spreadArray$1([],n(),!0),["(function(root) {",'  "use strict";',"",e,"",r("root."+t.exportVar+" = "+o()+";"),"})(this);"],!1)},umd:function(){var u=Object.keys(t.dependencies),a=u.map((function(e){return t.dependencies[e]})),i="["+a.map((function(e){return'"'+stringEscape(e)+'"'})).join(", ")+"]",s=a.map((function(e){return'require("'+stringEscape(e)+'")'})).join(", "),c=u.join(", "),l=n();return l.push("(function(root, factory) {",'  if (typeof define === "function" && define.amd) {',"    define("+i+", factory);",'  } else if (typeof module === "object" && module.exports) {',"    module.exports = factory("+s+");"),null!==t.exportVar&&l.push("  } else {","    root."+t.exportVar+" = factory();"),l.push("  }","})(this, function("+c+") {",'  "use strict";',"",e,"",r("return "+o()+";"),"});"),l}}[t.format]();return new SourceNode(null,null,t.grammarSource,u.map((function(e){return e instanceof SourceNode?e:e+"\n"})))}(function(){var c=[];e.topLevelInitializer&&(c.push(s(e.topLevelInitializer)),c.push("")),c.push("function peg$subclass(child, parent) {","  function C() { this.constructor = child; }","  C.prototype = parent.prototype;","  child.prototype = new C();","}","","function peg$SyntaxError(message, expected, found, location) {","  var self = Error.call(this, message);","  // istanbul ignore next Check is a necessary evil to support older environments","  if (Object.setPrototypeOf) {","    Object.setPrototypeOf(self, peg$SyntaxError.prototype);","  }","  self.expected = expected;","  self.found = found;","  self.location = location;",'  self.name = "SyntaxError";',"  return self;","}","","peg$subclass(peg$SyntaxError, Error);","","function peg$padEnd(str, targetLength, padString) {",'  padString = padString || " ";',"  if (str.length > targetLength) { return str; }","  targetLength -= str.length;","  padString += padString.repeat(targetLength);","  return str + padString.slice(0, targetLength);","}","","peg$SyntaxError.prototype.format = function(sources) {",'  var str = "Error: " + this.message;',"  if (this.location) {","    var src = null;","    var k;","    for (k = 0; k < sources.length; k++) {","      if (sources[k].source === this.location.source) {","        src = sources[k].text.split(/\\r\\n|\\n|\\r/g);","        break;","      }","    }","    var s = this.location.start;",'    var offset_s = (this.location.source && (typeof this.location.source.offset === "function"))',"      ? this.location.source.offset(s)","      : s;",'    var loc = this.location.source + ":" + offset_s.line + ":" + offset_s.column;',"    if (src) {","      var e = this.location.end;","      var filler = peg$padEnd(\"\", offset_s.line.toString().length, ' ');","      var line = src[s.line - 1];","      var last = s.line === e.line ? e.column : line.length + 1;","      var hatLen = (last - s.column) || 1;",'      str += "\\n --\x3e " + loc + "\\n"','          + filler + " |\\n"','          + offset_s.line + " | " + line + "\\n"','          + filler + " | " + peg$padEnd("", s.column - 1, \' \')','          + peg$padEnd("", hatLen, "^");',"    } else {",'      str += "\\n at " + loc;',"    }","  }","  return str;","};","","peg$SyntaxError.buildMessage = function(expected, found) {","  var DESCRIBE_EXPECTATION_FNS = {","    literal: function(expectation) {",'      return "\\"" + literalEscape(expectation.text) + "\\"";',"    },","","    class: function(expectation) {","      var escapedParts = expectation.parts.map(function(part) {","        return Array.isArray(part)",'          ? classEscape(part[0]) + "-" + classEscape(part[1])',"          : classEscape(part);","      });","",'      return "[" + (expectation.inverted ? "^" : "") + escapedParts.join("") + "]";',"    },","","    any: function() {",'      return "any character";',"    },","","    end: function() {",'      return "end of input";',"    },","","    other: function(expectation) {","      return expectation.description;","    }","  };","","  function hex(ch) {","    return ch.charCodeAt(0).toString(16).toUpperCase();","  }","","  function literalEscape(s) {","    return s",'      .replace(/\\\\/g, "\\\\\\\\")','      .replace(/"/g,  "\\\\\\"")','      .replace(/\\0/g, "\\\\0")','      .replace(/\\t/g, "\\\\t")','      .replace(/\\n/g, "\\\\n")','      .replace(/\\r/g, "\\\\r")','      .replace(/[\\x00-\\x0F]/g,          function(ch) { return "\\\\x0" + hex(ch); })','      .replace(/[\\x10-\\x1F\\x7F-\\x9F]/g, function(ch) { return "\\\\x"  + hex(ch); });',"  }","","  function classEscape(s) {","    return s",'      .replace(/\\\\/g, "\\\\\\\\")','      .replace(/\\]/g, "\\\\]")','      .replace(/\\^/g, "\\\\^")','      .replace(/-/g,  "\\\\-")','      .replace(/\\0/g, "\\\\0")','      .replace(/\\t/g, "\\\\t")','      .replace(/\\n/g, "\\\\n")','      .replace(/\\r/g, "\\\\r")','      .replace(/[\\x00-\\x0F]/g,          function(ch) { return "\\\\x0" + hex(ch); })','      .replace(/[\\x10-\\x1F\\x7F-\\x9F]/g, function(ch) { return "\\\\x"  + hex(ch); });',"  }","","  function describeExpectation(expectation) {","    return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);","  }","","  function describeExpected(expected) {","    var descriptions = expected.map(describeExpectation);","    var i, j;","","    descriptions.sort();","","    if (descriptions.length > 0) {","      for (i = 1, j = 1; i < descriptions.length; i++) {","        if (descriptions[i - 1] !== descriptions[i]) {","          descriptions[j] = descriptions[i];","          j++;","        }","      }","      descriptions.length = j;","    }","","    switch (descriptions.length) {","      case 1:","        return descriptions[0];","","      case 2:",'        return descriptions[0] + " or " + descriptions[1];',"","      default:",'        return descriptions.slice(0, -1).join(", ")','          + ", or "',"          + descriptions[descriptions.length - 1];","    }","  }","","  function describeFound(found) {",'    return found ? "\\"" + literalEscape(found) + "\\"" : "end of input";',"  }","",'  return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found.";',"};",""),t.trace&&c.push("function peg$DefaultTracer() {","  this.indentLevel = 0;","}","","peg$DefaultTracer.prototype.trace = function(event) {","  var that = this;","","  function log(event) {","    function repeat(string, n) {",'       var result = "", i;',"","       for (i = 0; i < n; i++) {","         result += string;","       }","","       return result;","    }","","    function pad(string, length) {",'      return string + repeat(" ", length - string.length);',"    }","",'    if (typeof console === "object") {',"      console.log(",'        event.location.start.line + ":" + event.location.start.column + "-"','          + event.location.end.line + ":" + event.location.end.column + " "','          + pad(event.type, 10) + " "','          + repeat("  ", that.indentLevel) + event.rule',"      );","    }","  }","","  switch (event.type) {",'    case "rule.enter":',"      log(event);","      this.indentLevel++;","      break;","",'    case "rule.match":',"      this.indentLevel--;","      log(event);","      break;","",'    case "rule.fail":',"      this.indentLevel--;","      log(event);","      break;","","    default:",'      throw new Error("Invalid event type: " + event.type + ".");',"  }","};","");var l="{ "+t.allowedStartRules.map((function(e){return e+": "+i(e)})).join(", ")+" }",p=i(t.allowedStartRules[0]);return c.push("function peg$parse(input, options) {","  options = options !== undefined ? options : {};","","  var peg$FAILED = {};","  var peg$source = options.grammarSource;","","  var peg$startRuleFunctions = "+l+";","  var peg$startRuleFunction = "+p+";","",new SourceNode(null,null,t.grammarSource,[e.literals.map((function(e,t){return"  var "+n(t)+' = "'+stringEscape(e)+'";'})).concat("",e.classes.map((function(e,t){return"  var "+o(t)+" = /^["+((r=e).inverted?"^":"")+r.value.map((function(e){return Array.isArray(e)?regexpClassEscape(e[0])+"-"+regexpClassEscape(e[1]):regexpClassEscape(e)})).join("")+"]/"+(r.ignoreCase?"i":"")+";";var r}))).concat("",e.expectations.map((function(e,t){return"  var "+u(t)+" = "+function(e){switch(e.type){case"rule":return'peg$otherExpectation("'+stringEscape(e.value)+'")';case"literal":return'peg$literalExpectation("'+stringEscape(e.value)+'", '+e.ignoreCase+")";case"class":return"peg$classExpectation(["+e.value.map((function(e){return Array.isArray(e)?'["'+stringEscape(e[0])+'", "'+stringEscape(e[1])+'"]':'"'+stringEscape(e)+'"'})).join(", ")+"], "+e.inverted+", "+e.ignoreCase+")";case"any":return"peg$anyExpectation()";default:throw new Error("Unknown expectation type ("+JSON.stringify(e)+")")}}(e)+";"}))).concat("").join("\n"),e.functions.map((function(e,t){return wrapInSourceNode("\n  var ".concat(a(t)," = function(").concat(e.params.join(", "),") {"),e.body,e.location,"};")}))]),"","  var peg$currPos = 0;","  var peg$savedPos = 0;","  var peg$posDetailsCache = [{ line: 1, column: 1 }];","  var peg$maxFailPos = 0;","  var peg$maxFailExpected = [];","  var peg$silentFails = 0;",""),t.cache&&c.push("  var peg$resultsCache = {};",""),t.trace&&c.push('  var peg$tracer = "tracer" in options ? options.tracer : new peg$DefaultTracer();',""),c.push("  var peg$result;","",'  if ("startRule" in options) {',"    if (!(options.startRule in peg$startRuleFunctions)) {",'      throw new Error("Can\'t start parsing from rule \\"" + options.startRule + "\\".");',"    }","","    peg$startRuleFunction = peg$startRuleFunctions[options.startRule];","  }","","  function text() {","    return input.substring(peg$savedPos, peg$currPos);","  }","","  function offset() {","    return peg$savedPos;","  }","","  function range() {","    return {","      source: peg$source,","      start: peg$savedPos,","      end: peg$currPos","    };","  }","","  function location() {","    return peg$computeLocation(peg$savedPos, peg$currPos);","  }","","  function expected(description, location) {","    location = location !== undefined","      ? location","      : peg$computeLocation(peg$savedPos, peg$currPos);","","    throw peg$buildStructuredError(","      [peg$otherExpectation(description)],","      input.substring(peg$savedPos, peg$currPos),","      location","    );","  }","","  function error(message, location) {","    location = location !== undefined","      ? location","      : peg$computeLocation(peg$savedPos, peg$currPos);","","    throw peg$buildSimpleError(message, location);","  }","","  function peg$literalExpectation(text, ignoreCase) {",'    return { type: "literal", text: text, ignoreCase: ignoreCase };',"  }","","  function peg$classExpectation(parts, inverted, ignoreCase) {",'    return { type: "class", parts: parts, inverted: inverted, ignoreCase: ignoreCase };',"  }","","  function peg$anyExpectation() {",'    return { type: "any" };',"  }","","  function peg$endExpectation() {",'    return { type: "end" };',"  }","","  function peg$otherExpectation(description) {",'    return { type: "other", description: description };',"  }","","  function peg$computePosDetails(pos) {","    var details = peg$posDetailsCache[pos];","    var p;","","    if (details) {","      return details;","    } else {","      p = pos - 1;","      while (!peg$posDetailsCache[p]) {","        p--;","      }","","      details = peg$posDetailsCache[p];","      details = {","        line: details.line,","        column: details.column","      };","","      while (p < pos) {","        if (input.charCodeAt(p) === 10) {","          details.line++;","          details.column = 1;","        } else {","          details.column++;","        }","","        p++;","      }","","      peg$posDetailsCache[pos] = details;","","      return details;","    }","  }","","  function peg$computeLocation(startPos, endPos, offset) {","    var startPosDetails = peg$computePosDetails(startPos);","    var endPosDetails = peg$computePosDetails(endPos);","","    var res = {","      source: peg$source,","      start: {","        offset: startPos,","        line: startPosDetails.line,","        column: startPosDetails.column","      },","      end: {","        offset: endPos,","        line: endPosDetails.line,","        column: endPosDetails.column","      }","    };",'    if (offset && peg$source && (typeof peg$source.offset === "function")) {',"      res.start = peg$source.offset(res.start);","      res.end = peg$source.offset(res.end);","    }","    return res;","  }","","  function peg$fail(expected) {","    if (peg$currPos < peg$maxFailPos) { return; }","","    if (peg$currPos > peg$maxFailPos) {","      peg$maxFailPos = peg$currPos;","      peg$maxFailExpected = [];","    }","","    peg$maxFailExpected.push(expected);","  }","","  function peg$buildSimpleError(message, location) {","    return new peg$SyntaxError(message, null, null, location);","  }","","  function peg$buildStructuredError(expected, found, location) {","    return new peg$SyntaxError(","      peg$SyntaxError.buildMessage(expected, found),","      expected,","      found,","      location","    );","  }",""),e.rules.forEach((function(s){c.push.apply(c,r(function(s){var c=[],l=new Stack(s.name,"s","var",s.bytecode),p=function t(c){var p=0,h=c.length,d=[],f=void 0;function m(e,n){var o=n+3,u=c[p+o-2],a=c[p+o-1],i=void 0,s=void 0;l.checkedIf(p,(function(){p+=o,i=t(c.slice(p,p+u)),p+=u}),a>0?function(){s=t(c.slice(p,p+a)),p+=a}:null),d.push("if ("+e+") {"),d.push.apply(d,r(i)),a>0&&(d.push("} else {"),d.push.apply(d,r(s))),d.push("}")}function g(e){var n=c[p+2-1],o=void 0;l.checkedLoop(p,(function(){p+=2,o=t(c.slice(p,p+n)),p+=n})),d.push("while ("+e+") {"),d.push.apply(d,r(o)),d.push("}")}function A(e){var t=c[p+e-1];return a(c[p+1])+"("+c.slice(p+e,p+e+t).map((function(e){return l.index(e)})).join(", ")+")"}for(;p<h;)switch(c[p]){case op.PUSH_EMPTY_STRING:d.push(l.push("''")),p++;break;case op.PUSH_CURR_POS:d.push(l.push("peg$currPos")),p++;break;case op.PUSH_UNDEFINED:d.push(l.push("undefined")),p++;break;case op.PUSH_NULL:d.push(l.push("null")),p++;break;case op.PUSH_FAILED:d.push(l.push("peg$FAILED")),p++;break;case op.PUSH_EMPTY_ARRAY:d.push(l.push("[]")),p++;break;case op.POP:l.pop(),p++;break;case op.POP_CURR_POS:d.push("peg$currPos = "+l.pop()+";"),p++;break;case op.POP_N:l.pop(c[p+1]),p+=2;break;case op.NIP:f=l.pop(),l.pop(),d.push(l.push(f)),p++;break;case op.APPEND:f=l.pop(),d.push(l.top()+".push("+f+");"),p++;break;case op.WRAP:d.push(l.push("["+l.pop(c[p+1]).join(", ")+"]")),p+=2;break;case op.TEXT:d.push(l.push("input.substring("+l.pop()+", peg$currPos)")),p++;break;case op.PLUCK:var E=c[p+3-1],y=3+E;f=c.slice(p+3,p+y),f=1===E?l.index(f[0]):"[ ".concat(f.map((function(e){return l.index(e)})).join(", ")," ]"),l.pop(c[p+1]),d.push(l.push(f)),p+=y;break;case op.IF:m(l.top(),0);break;case op.IF_ERROR:m(l.top()+" === peg$FAILED",0);break;case op.IF_NOT_ERROR:m(l.top()+" !== peg$FAILED",0);break;case op.IF_LT:m(l.top()+".length < "+c[p+1],1);break;case op.IF_GE:m(l.top()+".length >= "+c[p+1],1);break;case op.IF_LT_DYNAMIC:m(l.top()+".length < ("+l.index(c[p+1])+"|0)",1);break;case op.IF_GE_DYNAMIC:m(l.top()+".length >= ("+l.index(c[p+1])+"|0)",1);break;case op.WHILE_NOT_ERROR:g(l.top()+" !== peg$FAILED");break;case op.MATCH_ANY:m("input.length > peg$currPos",0);break;case op.MATCH_STRING:m(e.literals[c[p+1]].length>1?"input.substr(peg$currPos, "+e.literals[c[p+1]].length+") === "+n(c[p+1]):"input.charCodeAt(peg$currPos) === "+e.literals[c[p+1]].charCodeAt(0),1);break;case op.MATCH_STRING_IC:m("input.substr(peg$currPos, "+e.literals[c[p+1]].length+").toLowerCase() === "+n(c[p+1]),1);break;case op.MATCH_CHAR_CLASS:m(o(c[p+1])+".test(input.charAt(peg$currPos))",1);break;case op.ACCEPT_N:d.push(l.push(c[p+1]>1?"input.substr(peg$currPos, "+c[p+1]+")":"input.charAt(peg$currPos)")),d.push(c[p+1]>1?"peg$currPos += "+c[p+1]+";":"peg$currPos++;"),p+=2;break;case op.ACCEPT_STRING:d.push(l.push(n(c[p+1]))),d.push(e.literals[c[p+1]].length>1?"peg$currPos += "+e.literals[c[p+1]].length+";":"peg$currPos++;"),p+=2;break;case op.FAIL:d.push(l.push("peg$FAILED")),d.push("if (peg$silentFails === 0) { peg$fail("+u(c[p+1])+"); }"),p+=2;break;case op.LOAD_SAVED_POS:d.push("peg$savedPos = "+l.index(c[p+1])+";"),p+=2;break;case op.UPDATE_SAVED_POS:d.push("peg$savedPos = peg$currPos;"),p++;break;case op.CALL:f=A(4),l.pop(c[p+2]),d.push(l.push(f)),p+=4+c[p+3];break;case op.RULE:d.push(l.push(i(e.rules[c[p+1]].name)+"()")),p+=2;break;case op.SILENT_FAILS_ON:d.push("peg$silentFails++;"),p++;break;case op.SILENT_FAILS_OFF:d.push("peg$silentFails--;"),p++;break;case op.SOURCE_MAP_PUSH:l.sourceMapPush(d,e.locations[c[p+1]]),p+=2;break;case op.SOURCE_MAP_POP:l.sourceMapPop(),p++;break;case op.SOURCE_MAP_LABEL_PUSH:l.labels[c[p+1]]={label:e.literals[c[p+2]],location:e.locations[c[p+3]]},p+=4;break;case op.SOURCE_MAP_LABEL_POP:delete l.labels[c[p+1]],p+=2;break;default:throw new Error("Invalid opcode: "+c[p]+".",{rule:s.name,bytecode:c})}return d}(s.bytecode);return c.push(wrapInSourceNode("function ",i(s.name),s.nameLocation,"() {\n",s.name)),t.trace&&c.push("  var startPos = peg$currPos;"),c.push(r(l.defines())),c.push.apply(c,r(function(r,n){var o=[];return o.push(""),t.trace&&o.push("peg$tracer.trace({",'  type: "rule.enter",',"  rule: "+r+",","  location: peg$computeLocation(startPos, startPos, true)","});",""),t.cache&&(o.push("var key = peg$currPos * "+e.rules.length+" + "+n+";","var cached = peg$resultsCache[key];","","if (cached) {","  peg$currPos = cached.nextPos;",""),t.trace&&o.push("if (cached.result !== peg$FAILED) {","  peg$tracer.trace({",'    type: "rule.match",',"    rule: "+r+",","    result: cached.result,","    location: peg$computeLocation(startPos, peg$currPos, true)","  });","} else {","  peg$tracer.trace({",'    type: "rule.fail",',"    rule: "+r+",","    location: peg$computeLocation(startPos, startPos, true)","  });","}",""),o.push("  return cached.result;","}","")),o}('"'+stringEscape(s.name)+'"',asts$4.indexOfRule(e,s.name)))),c.push.apply(c,r(p)),c.push.apply(c,r(function(e,r){var n=[];return t.cache&&n.push("","peg$resultsCache[key] = { nextPos: peg$currPos, result: "+r+" };"),t.trace&&n.push("","if ("+r+" !== peg$FAILED) {","  peg$tracer.trace({",'    type: "rule.match",',"    rule: "+e+",","    result: "+r+",","    location: peg$computeLocation(startPos, peg$currPos, true)","  });","} else {","  peg$tracer.trace({",'    type: "rule.fail",',"    rule: "+e+",","    location: peg$computeLocation(startPos, startPos, true)","  });","}"),n.push("","return "+r+";"),n}('"'+stringEscape(s.name)+'"',l.result()))),c.push("}"),c}(s))),c.push("")})),e.initializer&&(c.push(s(e.initializer)),c.push("")),c.push("  peg$result = peg$startRuleFunction();","","  if (peg$result !== peg$FAILED && peg$currPos === input.length) {","    return peg$result;","  } else {","    if (peg$result !== peg$FAILED && peg$currPos < input.length) {","      peg$fail(peg$endExpectation());","    }","","    throw peg$buildStructuredError(","      peg$maxFailExpected,","      peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null,","      peg$maxFailPos < input.length","        ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1)","        : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)","    );","  }","}"),new SourceNode(null,null,t.grammarSource,c.map((function(e){return e instanceof SourceNode?e:e+"\n"})))}())}var generateJs=generateJS$1,asts$3=asts_1,visitor$7=visitor_1;function removeProxyRules$1(e,t,r){var n=[];e.rules.forEach((function(o,u){var a;"rule"===(a=o).type&&"rule_ref"===a.expression.type&&(function(e,t,n){visitor$7.build({rule_ref:function(o){o.name===t&&(o.name=n,r.info('Proxy rule "'.concat(t,'" replaced by the rule "').concat(n,'"'),o.location,[{message:"This rule will be used",location:asts$3.findRule(e,n).nameLocation}]))}})(e)}(e,o.name,o.expression.name),-1===t.allowedStartRules.indexOf(o.name)&&n.push(u))})),n.reverse(),n.forEach((function(t){e.rules.splice(t,1)}))}var removeProxyRules_1=removeProxyRules$1,visitor$6=visitor_1;function reportDuplicateLabels$1(e,t,r){function n(e){var t={};return Object.keys(e).forEach((function(r){t[r]=e[r]})),t}function o(e,t){u(e.expression,n(t))}var u=visitor$6.build({rule:function(e){u(e.expression,{})},choice:function(e,t){e.alternatives.forEach((function(e){u(e,n(t))}))},action:o,labeled:function(e,t){var n=e.label;n&&Object.prototype.hasOwnProperty.call(t,n)&&r.error('Label "'.concat(e.label,'" is already defined'),e.labelLocation,[{message:"Original label location",location:t[n]}]),u(e.expression,t),t[e.label]=e.labelLocation},text:o,simple_and:o,simple_not:o,optional:o,zero_or_more:o,one_or_more:o,repeated:function(e,t){e.delimiter&&u(e.delimiter,n(t)),u(e.expression,n(t))},group:o});u(e)}var reportDuplicateLabels_1=reportDuplicateLabels$1,visitor$5=visitor_1;function reportDuplicateRules$1(e,t,r){var n={};visitor$5.build({rule:function(e){Object.prototype.hasOwnProperty.call(n,e.name)?r.error('Rule "'.concat(e.name,'" is already defined'),e.nameLocation,[{message:"Original rule location",location:n[e.name]}]):n[e.name]=e.nameLocation}})(e)}var reportDuplicateRules_1=reportDuplicateRules$1,asts$2=asts_1,visitor$4=visitor_1;function reportInfiniteRecursion$1(e,t,r){var n=[],o=[],u=visitor$4.build({rule:function(e){n.push(e.name),u(e.expression),n.pop()},sequence:function(t){t.elements.every((function(t){return u(t),!asts$2.alwaysConsumesOnSuccess(e,t)}))},repeated:function(t){u(t.expression),t.delimiter&&!asts$2.alwaysConsumesOnSuccess(e,t.expression)&&u(t.delimiter)},rule_ref:function(t){o.push(t);var a=asts$2.findRule(e,t.name);if(-1!==n.indexOf(t.name))return n.push(t.name),void r.error("Possible infinite loop when parsing (left recursion: "+n.join(" -> ")+")",a.nameLocation,o.map((function(e,t,r){return{message:t+1!==r.length?"Step ".concat(t+1,': call of the rule "').concat(e.name,'" without input consumption'):"Step ".concat(t+1,": call itself without input consumption - left recursion"),location:e.location}})));a&&u(a),o.pop()}});u(e)}var reportInfiniteRecursion_1=reportInfiniteRecursion$1,asts$1=asts_1,visitor$3=visitor_1;function reportInfiniteRepetition$1(e,t,r){var n=visitor$3.build({zero_or_more:function(t){asts$1.alwaysConsumesOnSuccess(e,t.expression)||r.error("Possible infinite loop when parsing (repetition used with an expression that may not consume any input)",t.location)},one_or_more:function(t){asts$1.alwaysConsumesOnSuccess(e,t.expression)||r.error("Possible infinite loop when parsing (repetition used with an expression that may not consume any input)",t.location)},repeated:function(t){if(t.delimiter&&n(t.delimiter),!(asts$1.alwaysConsumesOnSuccess(e,t.expression)||t.delimiter&&asts$1.alwaysConsumesOnSuccess(e,t.delimiter)))if(null===t.max.value)r.error("Possible infinite loop when parsing (unbounded range repetition used with an expression that may not consume any input)",t.location);else{var o=t.min?t.min:t.max;r.warning("constant"===o.type&&"constant"===t.max.type?"An expression may not consume any input and may always match ".concat(t.max.value," times"):"An expression may not consume any input and may always match with a maximum repetition count",t.location)}}});n(e)}var reportInfiniteRepetition_1=reportInfiniteRepetition$1,asts=asts_1,visitor$2=visitor_1;function reportUndefinedRules$1(e,t,r){visitor$2.build({rule_ref:function(t){asts.findRule(e,t.name)||r.error('Rule "'.concat(t.name,'" is not defined'),t.location)}})(e)}var reportUndefinedRules_1=reportUndefinedRules$1,visitor$1=visitor_1;function reportIncorrectPlucking$1(e,t,r){var n=visitor$1.build({action:function(e){n(e.expression,e)},labeled:function(e,t){e.pick&&t&&r.error('"@" cannot be used with an action block',e.labelLocation,[{message:"Action block location",location:t.codeLocation}]),n(e.expression)}});n(e)}var reportIncorrectPlucking_1=reportIncorrectPlucking$1,__spreadArray=commonjsGlobal&&commonjsGlobal.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,o=0,u=t.length;o<u;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))},GrammarError$1=grammarError,Defaults=function(){function e(e){"function"==typeof(e=void 0!==e?e:{}).error&&(this.error=e.error),"function"==typeof e.warning&&(this.warning=e.warning),"function"==typeof e.info&&(this.info=e.info)}return e.prototype.error=function(){},e.prototype.warning=function(){},e.prototype.info=function(){},e}(),Session$1=function(){function e(e){this._callbacks=new Defaults(e),this._firstError=null,this.errors=0,this.problems=[],this.stage=null}return e.prototype.error=function(){for(var e,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];++this.errors,null===this._firstError&&(this._firstError=new(GrammarError$1.bind.apply(GrammarError$1,__spreadArray([void 0],t,!1))),this._firstError.stage=this.stage,this._firstError.problems=this.problems),this.problems.push(__spreadArray(["error"],t,!0)),(e=this._callbacks).error.apply(e,__spreadArray([this.stage],t,!1))},e.prototype.warning=function(){for(var e,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];this.problems.push(__spreadArray(["warning"],t,!0)),(e=this._callbacks).warning.apply(e,__spreadArray([this.stage],t,!1))},e.prototype.info=function(){for(var e,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];this.problems.push(__spreadArray(["info"],t,!0)),(e=this._callbacks).info.apply(e,__spreadArray([this.stage],t,!1))},e.prototype.checkErrors=function(){if(0!==this.errors)throw this._firstError},e}(),session=Session$1,generateBytecode=generateBytecode_1,generateJS=generateJs,inferenceMatchResult=inferenceMatchResult_1,removeProxyRules=removeProxyRules_1,reportDuplicateLabels=reportDuplicateLabels_1,reportDuplicateRules=reportDuplicateRules_1,reportInfiniteRecursion=reportInfiniteRecursion_1,reportInfiniteRepetition=reportInfiniteRepetition_1,reportUndefinedRules=reportUndefinedRules_1,reportIncorrectPlucking=reportIncorrectPlucking_1,Session=session,visitor=visitor_1,base64=utils.base64;function processOptions(e,t){var r={};return Object.keys(e).forEach((function(t){r[t]=e[t]})),Object.keys(t).forEach((function(e){Object.prototype.hasOwnProperty.call(r,e)||(r[e]=t[e])})),r}function isSourceMapCapable(e){return"string"==typeof e?e.length>0:e&&"function"==typeof e.offset}var compiler$1={visitor:visitor,passes:{check:[reportUndefinedRules,reportDuplicateRules,reportDuplicateLabels,reportInfiniteRecursion,reportInfiniteRepetition,reportIncorrectPlucking],transform:[removeProxyRules,inferenceMatchResult],generate:[generateBytecode,generateJS]},compile:function(ast,passes,options){if(options=void 0!==options?options:{},options=processOptions(options,{allowedStartRules:[ast.rules[0].name],cache:!1,dependencies:{},exportVar:null,format:"bare",output:"parser",trace:!1}),!Array.isArray(options.allowedStartRules))throw new Error("allowedStartRules must be an array");if(0===options.allowedStartRules.length)throw new Error("Must have at least one start rule");var allRules=ast.rules.map((function(e){return e.name}));if(options.allowedStartRules.some((function(e){return"*"===e})))options.allowedStartRules=allRules;else for(var _i=0,_a=options.allowedStartRules;_i<_a.length;_i++){var rule=_a[_i];if(-1===allRules.indexOf(rule))throw new Error('Unknown start rule "'.concat(rule,'"'))}if(("source-and-map"===options.output||"source-with-inline-map"===options.output)&&!isSourceMapCapable(options.grammarSource))throw new Error("Must provide grammarSource (as a string or GrammarLocation) in order to generate source maps");var session=new Session(options);switch(Object.keys(passes).forEach((function(e){session.stage=e,session.info("Process stage ".concat(e)),passes[e].forEach((function(t){session.info("Process pass ".concat(e,".").concat(t.name)),t(ast,options,session)})),session.checkErrors()})),options.output){case"parser":return eval(ast.code.toString());case"source":return ast.code.toString();case"source-and-map":return ast.code;case"source-with-inline-map":if("undefined"==typeof TextEncoder)throw new Error("TextEncoder is not supported by this platform");var sourceMap=ast.code.toStringWithSourceMap(),encoder=new TextEncoder,b64=base64(encoder.encode(JSON.stringify(sourceMap.map.toJSON())));return sourceMap.code+"//# sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(b64,"\n");case"ast":return ast;default:throw new Error("Invalid output format: "+options.output+".")}}},compiler_1=compiler$1,OPS_TO_PREFIXED_TYPES={$:"text","&":"simple_and","!":"simple_not"},OPS_TO_SUFFIXED_TYPES={"?":"optional","*":"zero_or_more","+":"one_or_more"},OPS_TO_SEMANTIC_PREDICATE_TYPES={"&":"semantic_and","!":"semantic_not"};function peg$subclass(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function peg$SyntaxError(e,t,r,n){var o=Error.call(this,e);return Object.setPrototypeOf&&Object.setPrototypeOf(o,peg$SyntaxError.prototype),o.expected=t,o.found=r,o.location=n,o.name="SyntaxError",o}function peg$padEnd(e,t,r){return r=r||" ",e.length>t?e:(t-=e.length,e+(r+=r.repeat(t)).slice(0,t))}function peg$parse(e,t){var r,n={},o=(t=void 0!==t?t:{}).grammarSource,u={Grammar:ht},a=ht,i="{",s="}",c="/*",l="*/",p="\\",h='"',d="'",f=/^[\n\r\u2028\u2029]/,m=/^[0-9]/,g=/^[0-9a-f]/i,A=/^[{}]/,E=/^[a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137-\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148-\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C-\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA-\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9-\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC-\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF-\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F-\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0-\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB-\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE-\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0561-\u0587\u13F8-\u13FD\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6-\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FC7\u1FD0-\u1FD3\u1FD6-\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6-\u1FF7\u210A\u210E-\u210F\u2113\u212F\u2134\u2139\u213C-\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65-\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73-\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3-\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7B5\uA7B7\uA7FA\uAB30-\uAB5A\uAB60-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]/,y=/^[\u02B0-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0374\u037A\u0559\u0640\u06E5-\u06E6\u07F4-\u07F5\u07FA\u081A\u0824\u0828\u0971\u0E46\u0EC6\u10FC\u17D7\u1843\u1AA7\u1C78-\u1C7D\u1D2C-\u1D6A\u1D78\u1D9B-\u1DBF\u2071\u207F\u2090-\u209C\u2C7C-\u2C7D\u2D6F\u2E2F\u3005\u3031-\u3035\u303B\u309D-\u309E\u30FC-\u30FE\uA015\uA4F8-\uA4FD\uA60C\uA67F\uA69C-\uA69D\uA717-\uA71F\uA770\uA788\uA7F8-\uA7F9\uA9CF\uA9E6\uAA70\uAADD\uAAF3-\uAAF4\uAB5C-\uAB5F\uFF70\uFF9E-\uFF9F]/,C=/^[\xAA\xBA\u01BB\u01C0-\u01C3\u0294\u05D0-\u05EA\u05F0-\u05F2\u0620-\u063F\u0641-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u0800-\u0815\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0972-\u0980\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60-\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u10D0-\u10FA\u10FD-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17DC\u1820-\u1842\u1844-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C77\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u2135-\u2138\u2D30-\u2D67\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3006\u303C\u3041-\u3096\u309F\u30A1-\u30FA\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA014\uA016-\uA48C\uA4D0-\uA4F7\uA500-\uA60B\uA610-\uA61F\uA62A-\uA62B\uA66E\uA6A0-\uA6E5\uA78F\uA7F7\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9E0-\uA9E4\uA9E7-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA6F\uAA71-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAAE0-\uAAEA\uAAF2\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF66-\uFF6F\uFF71-\uFF9D\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,S=/^[\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC]/,v=/^[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178-\u0179\u017B\u017D\u0181-\u0182\u0184\u0186-\u0187\u0189-\u018B\u018E-\u0191\u0193-\u0194\u0196-\u0198\u019C-\u019D\u019F-\u01A0\u01A2\u01A4\u01A6-\u01A7\u01A9\u01AC\u01AE-\u01AF\u01B1-\u01B3\u01B5\u01B7-\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A-\u023B\u023D-\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E-\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9-\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0-\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E-\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D-\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AD\uA7B0-\uA7B4\uA7B6\uFF21-\uFF3A]/,_=/^[\u0903\u093B\u093E-\u0940\u0949-\u094C\u094E-\u094F\u0982-\u0983\u09BE-\u09C0\u09C7-\u09C8\u09CB-\u09CC\u09D7\u0A03\u0A3E-\u0A40\u0A83\u0ABE-\u0AC0\u0AC9\u0ACB-\u0ACC\u0B02-\u0B03\u0B3E\u0B40\u0B47-\u0B48\u0B4B-\u0B4C\u0B57\u0BBE-\u0BBF\u0BC1-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD7\u0C01-\u0C03\u0C41-\u0C44\u0C82-\u0C83\u0CBE\u0CC0-\u0CC4\u0CC7-\u0CC8\u0CCA-\u0CCB\u0CD5-\u0CD6\u0D02-\u0D03\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D57\u0D82-\u0D83\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DF2-\u0DF3\u0F3E-\u0F3F\u0F7F\u102B-\u102C\u1031\u1038\u103B-\u103C\u1056-\u1057\u1062-\u1064\u1067-\u106D\u1083-\u1084\u1087-\u108C\u108F\u109A-\u109C\u17B6\u17BE-\u17C5\u17C7-\u17C8\u1923-\u1926\u1929-\u192B\u1930-\u1931\u1933-\u1938\u1A19-\u1A1A\u1A55\u1A57\u1A61\u1A63-\u1A64\u1A6D-\u1A72\u1B04\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B44\u1B82\u1BA1\u1BA6-\u1BA7\u1BAA\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2-\u1BF3\u1C24-\u1C2B\u1C34-\u1C35\u1CE1\u1CF2-\u1CF3\u302E-\u302F\uA823-\uA824\uA827\uA880-\uA881\uA8B4-\uA8C3\uA952-\uA953\uA983\uA9B4-\uA9B5\uA9BA-\uA9BB\uA9BD-\uA9C0\uAA2F-\uAA30\uAA33-\uAA34\uAA4D\uAA7B\uAA7D\uAAEB\uAAEE-\uAAEF\uAAF5\uABE3-\uABE4\uABE6-\uABE7\uABE9-\uABEA\uABEC]/,F=/^[\u0300-\u036F\u0483-\u0487\u0591-\u05BD\u05BF\u05C1-\u05C2\u05C4-\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7-\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962-\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2-\u09E3\u0A01-\u0A02\u0A3C\u0A41-\u0A42\u0A47-\u0A48\u0A4B-\u0A4D\u0A51\u0A70-\u0A71\u0A75\u0A81-\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7-\u0AC8\u0ACD\u0AE2-\u0AE3\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B56\u0B62-\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55-\u0C56\u0C62-\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC-\u0CCD\u0CE2-\u0CE3\u0D01\u0D41-\u0D44\u0D4D\u0D62-\u0D63\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB-\u0EBC\u0EC8-\u0ECD\u0F18-\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86-\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039-\u103A\u103D-\u103E\u1058-\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085-\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752-\u1753\u1772-\u1773\u17B4-\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u1922\u1927-\u1928\u1932\u1939-\u193B\u1A17-\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ABD\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80-\u1B81\u1BA2-\u1BA5\u1BA8-\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8-\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8-\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099-\u309A\uA66F\uA674-\uA67D\uA69E-\uA69F\uA6F0-\uA6F1\uA802\uA806\uA80B\uA825-\uA826\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9E5\uAA29-\uAA2E\uAA31-\uAA32\uAA35-\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7-\uAAB8\uAABE-\uAABF\uAAC1\uAAEC-\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/,w=/^[0-9\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0BE6-\u0BEF\u0C66-\u0C6F\u0CE6-\u0CEF\u0D66-\u0D6F\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F29\u1040-\u1049\u1090-\u1099\u17E0-\u17E9\u1810-\u1819\u1946-\u194F\u19D0-\u19D9\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\uA620-\uA629\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]/,b=/^[\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF]/,I=/^[_\u203F-\u2040\u2054\uFE33-\uFE34\uFE4D-\uFE4F\uFF3F]/,P=/^[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000]/,O=at("{",!1),D=at("}",!1),T=at("=",!1),$=at("/",!1),B=at("@",!1),N=at(":",!1),R=at("$",!1),L=at("&",!1),x=at("!",!1),M=at("?",!1),k=at("*",!1),V=at("+",!1),j=at("|",!1),U=at(",",!1),H=at("..",!1),W=at("(",!1),G=at(")",!1),q={type:"any"},z=st("whitespace"),Y=at("\t",!1),Q=at("\v",!1),K=at("\f",!1),J=at(" ",!1),X=at(" ",!1),Z=at("\ufeff",!1),ee=it(["\n","\r","\u2028","\u2029"],!1,!1),te=st("end of line"),re=at("\n",!1),ne=at("\r\n",!1),oe=at("\r",!1),ue=at("\u2028",!1),ae=at("\u2029",!1),ie=st("comment"),se=at("/*",!1),ce=at("*/",!1),le=at("//",!1),pe=st("identifier"),he=at("_",!1),de=at("\\",!1),fe=at("‌",!1),me=at("‍",!1),ge=st("literal"),Ae=at("i",!1),Ee=st("string"),ye=at('"',!1),Ce=at("'",!1),Se=st("character class"),ve=at("[",!1),_e=at("^",!1),Fe=at("]",!1),we=at("-",!1),be=at("0",!1),Ie=at("b",!1),Pe=at("f",!1),Oe=at("n",!1),De=at("r",!1),Te=at("t",!1),$e=at("v",!1),Be=at("x",!1),Ne=at("u",!1),Re=it([["0","9"]],!1,!1),Le=it([["0","9"],["a","f"]],!1,!0),xe=at(".",!1),Me=st("code block"),ke=it(["{","}"],!1,!1),Ve=it([["a","z"],"µ",["ß","ö"],["ø","ÿ"],"ā","ă","ą","ć","ĉ","ċ","č","ď","đ","ē","ĕ","ė","ę","ě","ĝ","ğ","ġ","ģ","ĥ","ħ","ĩ","ī","ĭ","į","ı","ĳ","ĵ",["ķ","ĸ"],"ĺ","ļ","ľ","ŀ","ł","ń","ņ",["ň","ŉ"],"ŋ","ō","ŏ","ő","œ","ŕ","ŗ","ř","ś","ŝ","ş","š","ţ","ť","ŧ","ũ","ū","ŭ","ů","ű","ų","ŵ","ŷ","ź","ż",["ž","ƀ"],"ƃ","ƅ","ƈ",["ƌ","ƍ"],"ƒ","ƕ",["ƙ","ƛ"],"ƞ","ơ","ƣ","ƥ","ƨ",["ƪ","ƫ"],"ƭ","ư","ƴ","ƶ",["ƹ","ƺ"],["ƽ","ƿ"],"ǆ","ǉ","ǌ","ǎ","ǐ","ǒ","ǔ","ǖ","ǘ","ǚ",["ǜ","ǝ"],"ǟ","ǡ","ǣ","ǥ","ǧ","ǩ","ǫ","ǭ",["ǯ","ǰ"],"ǳ","ǵ","ǹ","ǻ","ǽ","ǿ","ȁ","ȃ","ȅ","ȇ","ȉ","ȋ","ȍ","ȏ","ȑ","ȓ","ȕ","ȗ","ș","ț","ȝ","ȟ","ȡ","ȣ","ȥ","ȧ","ȩ","ȫ","ȭ","ȯ","ȱ",["ȳ","ȹ"],"ȼ",["ȿ","ɀ"],"ɂ","ɇ","ɉ","ɋ","ɍ",["ɏ","ʓ"],["ʕ","ʯ"],"ͱ","ͳ","ͷ",["ͻ","ͽ"],"ΐ",["ά","ώ"],["ϐ","ϑ"],["ϕ","ϗ"],"ϙ","ϛ","ϝ","ϟ","ϡ","ϣ","ϥ","ϧ","ϩ","ϫ","ϭ",["ϯ","ϳ"],"ϵ","ϸ",["ϻ","ϼ"],["а","џ"],"ѡ","ѣ","ѥ","ѧ","ѩ","ѫ","ѭ","ѯ","ѱ","ѳ","ѵ","ѷ","ѹ","ѻ","ѽ","ѿ","ҁ","ҋ","ҍ","ҏ","ґ","ғ","ҕ","җ","ҙ","қ","ҝ","ҟ","ҡ","ң","ҥ","ҧ","ҩ","ҫ","ҭ","ү","ұ","ҳ","ҵ","ҷ","ҹ","һ","ҽ","ҿ","ӂ","ӄ","ӆ","ӈ","ӊ","ӌ",["ӎ","ӏ"],"ӑ","ӓ","ӕ","ӗ","ә","ӛ","ӝ","ӟ","ӡ","ӣ","ӥ","ӧ","ө","ӫ","ӭ","ӯ","ӱ","ӳ","ӵ","ӷ","ӹ","ӻ","ӽ","ӿ","ԁ","ԃ","ԅ","ԇ","ԉ","ԋ","ԍ","ԏ","ԑ","ԓ","ԕ","ԗ","ԙ","ԛ","ԝ","ԟ","ԡ","ԣ","ԥ","ԧ","ԩ","ԫ","ԭ","ԯ",["ա","և"],["ᏸ","ᏽ"],["ᴀ","ᴫ"],["ᵫ","ᵷ"],["ᵹ","ᶚ"],"ḁ","ḃ","ḅ","ḇ","ḉ","ḋ","ḍ","ḏ","ḑ","ḓ","ḕ","ḗ","ḙ","ḛ","ḝ","ḟ","ḡ","ḣ","ḥ","ḧ","ḩ","ḫ","ḭ","ḯ","ḱ","ḳ","ḵ","ḷ","ḹ","ḻ","ḽ","ḿ","ṁ","ṃ","ṅ","ṇ","ṉ","ṋ","ṍ","ṏ","ṑ","ṓ","ṕ","ṗ","ṙ","ṛ","ṝ","ṟ","ṡ","ṣ","ṥ","ṧ","ṩ","ṫ","ṭ","ṯ","ṱ","ṳ","ṵ","ṷ","ṹ","ṻ","ṽ","ṿ","ẁ","ẃ","ẅ","ẇ","ẉ","ẋ","ẍ","ẏ","ẑ","ẓ",["ẕ","ẝ"],"ẟ","ạ","ả","ấ","ầ","ẩ","ẫ","ậ","ắ","ằ","ẳ","ẵ","ặ","ẹ","ẻ","ẽ","ế","ề","ể","ễ","ệ","ỉ","ị","ọ","ỏ","ố","ồ","ổ","ỗ","ộ","ớ","ờ","ở","ỡ","ợ","ụ","ủ","ứ","ừ","ử","ữ","ự","ỳ","ỵ","ỷ","ỹ","ỻ","ỽ",["ỿ","ἇ"],["ἐ","ἕ"],["ἠ","ἧ"],["ἰ","ἷ"],["ὀ","ὅ"],["ὐ","ὗ"],["ὠ","ὧ"],["ὰ","ώ"],["ᾀ","ᾇ"],["ᾐ","ᾗ"],["ᾠ","ᾧ"],["ᾰ","ᾴ"],["ᾶ","ᾷ"],"ι",["ῂ","ῄ"],["ῆ","ῇ"],["ῐ","ΐ"],["ῖ","ῗ"],["ῠ","ῧ"],["ῲ","ῴ"],["ῶ","ῷ"],"ℊ",["ℎ","ℏ"],"ℓ","ℯ","ℴ","ℹ",["ℼ","ℽ"],["ⅆ","ⅉ"],"ⅎ","ↄ",["ⰰ","ⱞ"],"ⱡ",["ⱥ","ⱦ"],"ⱨ","ⱪ","ⱬ","ⱱ",["ⱳ","ⱴ"],["ⱶ","ⱻ"],"ⲁ","ⲃ","ⲅ","ⲇ","ⲉ","ⲋ","ⲍ","ⲏ","ⲑ","ⲓ","ⲕ","ⲗ","ⲙ","ⲛ","ⲝ","ⲟ","ⲡ","ⲣ","ⲥ","ⲧ","ⲩ","ⲫ","ⲭ","ⲯ","ⲱ","ⲳ","ⲵ","ⲷ","ⲹ","ⲻ","ⲽ","ⲿ","ⳁ","ⳃ","ⳅ","ⳇ","ⳉ","ⳋ","ⳍ","ⳏ","ⳑ","ⳓ","ⳕ","ⳗ","ⳙ","ⳛ","ⳝ","ⳟ","ⳡ",["ⳣ","ⳤ"],"ⳬ","ⳮ","ⳳ",["ⴀ","ⴥ"],"ⴧ","ⴭ","ꙁ","ꙃ","ꙅ","ꙇ","ꙉ","ꙋ","ꙍ","ꙏ","ꙑ","ꙓ","ꙕ","ꙗ","ꙙ","ꙛ","ꙝ","ꙟ","ꙡ","ꙣ","ꙥ","ꙧ","ꙩ","ꙫ","ꙭ","ꚁ","ꚃ","ꚅ","ꚇ","ꚉ","ꚋ","ꚍ","ꚏ","ꚑ","ꚓ","ꚕ","ꚗ","ꚙ","ꚛ","ꜣ","ꜥ","ꜧ","ꜩ","ꜫ","ꜭ",["ꜯ","ꜱ"],"ꜳ","ꜵ","ꜷ","ꜹ","ꜻ","ꜽ","ꜿ","ꝁ","ꝃ","ꝅ","ꝇ","ꝉ","ꝋ","ꝍ","ꝏ","ꝑ","ꝓ","ꝕ","ꝗ","ꝙ","ꝛ","ꝝ","ꝟ","ꝡ","ꝣ","ꝥ","ꝧ","ꝩ","ꝫ","ꝭ","ꝯ",["ꝱ","ꝸ"],"ꝺ","ꝼ","ꝿ","ꞁ","ꞃ","ꞅ","ꞇ","ꞌ","ꞎ","ꞑ",["ꞓ","ꞕ"],"ꞗ","ꞙ","ꞛ","ꞝ","ꞟ","ꞡ","ꞣ","ꞥ","ꞧ","ꞩ","ꞵ","ꞷ","ꟺ",["ꬰ","ꭚ"],["ꭠ","ꭥ"],["ꭰ","ꮿ"],["ﬀ","ﬆ"],["ﬓ","ﬗ"],["ａ","ｚ"]],!1,!1),je=it([["ʰ","ˁ"],["ˆ","ˑ"],["ˠ","ˤ"],"ˬ","ˮ","ʹ","ͺ","ՙ","ـ",["ۥ","ۦ"],["ߴ","ߵ"],"ߺ","ࠚ","ࠤ","ࠨ","ॱ","ๆ","ໆ","ჼ","ៗ","ᡃ","ᪧ",["ᱸ","ᱽ"],["ᴬ","ᵪ"],"ᵸ",["ᶛ","ᶿ"],"ⁱ","ⁿ",["ₐ","ₜ"],["ⱼ","ⱽ"],"ⵯ","ⸯ","々",["〱","〵"],"〻",["ゝ","ゞ"],["ー","ヾ"],"ꀕ",["ꓸ","ꓽ"],"ꘌ","ꙿ",["ꚜ","ꚝ"],["ꜗ","ꜟ"],"ꝰ","ꞈ",["ꟸ","ꟹ"],"ꧏ","ꧦ","ꩰ","ꫝ",["ꫳ","ꫴ"],["ꭜ","ꭟ"],"ｰ",["ﾞ","ﾟ"]],!1,!1),Ue=it(["ª","º","ƻ",["ǀ","ǃ"],"ʔ",["א","ת"],["װ","ײ"],["ؠ","ؿ"],["ف","ي"],["ٮ","ٯ"],["ٱ","ۓ"],"ە",["ۮ","ۯ"],["ۺ","ۼ"],"ۿ","ܐ",["ܒ","ܯ"],["ݍ","ޥ"],"ޱ",["ߊ","ߪ"],["ࠀ","ࠕ"],["ࡀ","ࡘ"],["ࢠ","ࢴ"],["ऄ","ह"],"ऽ","ॐ",["क़","ॡ"],["ॲ","ঀ"],["অ","ঌ"],["এ","ঐ"],["ও","ন"],["প","র"],"ল",["শ","হ"],"ঽ","ৎ",["ড়","ঢ়"],["য়","ৡ"],["ৰ","ৱ"],["ਅ","ਊ"],["ਏ","ਐ"],["ਓ","ਨ"],["ਪ","ਰ"],["ਲ","ਲ਼"],["ਵ","ਸ਼"],["ਸ","ਹ"],["ਖ਼","ੜ"],"ਫ਼",["ੲ","ੴ"],["અ","ઍ"],["એ","ઑ"],["ઓ","ન"],["પ","ર"],["લ","ળ"],["વ","હ"],"ઽ","ૐ",["ૠ","ૡ"],"ૹ",["ଅ","ଌ"],["ଏ","ଐ"],["ଓ","ନ"],["ପ","ର"],["ଲ","ଳ"],["ଵ","ହ"],"ଽ",["ଡ଼","ଢ଼"],["ୟ","ୡ"],"ୱ","ஃ",["அ","ஊ"],["எ","ஐ"],["ஒ","க"],["ங","ச"],"ஜ",["ஞ","ட"],["ண","த"],["ந","ப"],["ம","ஹ"],"ௐ",["అ","ఌ"],["ఎ","ఐ"],["ఒ","న"],["ప","హ"],"ఽ",["ౘ","ౚ"],["ౠ","ౡ"],["ಅ","ಌ"],["ಎ","ಐ"],["ಒ","ನ"],["ಪ","ಳ"],["ವ","ಹ"],"ಽ","ೞ",["ೠ","ೡ"],["ೱ","ೲ"],["അ","ഌ"],["എ","ഐ"],["ഒ","ഺ"],"ഽ","ൎ",["ൟ","ൡ"],["ൺ","ൿ"],["අ","ඖ"],["ක","න"],["ඳ","ර"],"ල",["ව","ෆ"],["ก","ะ"],["า","ำ"],["เ","ๅ"],["ກ","ຂ"],"ຄ",["ງ","ຈ"],"ຊ","ຍ",["ດ","ທ"],["ນ","ຟ"],["ມ","ຣ"],"ລ","ວ",["ສ","ຫ"],["ອ","ະ"],["າ","ຳ"],"ຽ",["ເ","ໄ"],["ໜ","ໟ"],"ༀ",["ཀ","ཇ"],["ཉ","ཬ"],["ྈ","ྌ"],["က","ဪ"],"ဿ",["ၐ","ၕ"],["ၚ","ၝ"],"ၡ",["ၥ","ၦ"],["ၮ","ၰ"],["ၵ","ႁ"],"ႎ",["ა","ჺ"],["ჽ","ቈ"],["ቊ","ቍ"],["ቐ","ቖ"],"ቘ",["ቚ","ቝ"],["በ","ኈ"],["ኊ","ኍ"],["ነ","ኰ"],["ኲ","ኵ"],["ኸ","ኾ"],"ዀ",["ዂ","ዅ"],["ወ","ዖ"],["ዘ","ጐ"],["ጒ","ጕ"],["ጘ","ፚ"],["ᎀ","ᎏ"],["ᐁ","ᙬ"],["ᙯ","ᙿ"],["ᚁ","ᚚ"],["ᚠ","ᛪ"],["ᛱ","ᛸ"],["ᜀ","ᜌ"],["ᜎ","ᜑ"],["ᜠ","ᜱ"],["ᝀ","ᝑ"],["ᝠ","ᝬ"],["ᝮ","ᝰ"],["ក","ឳ"],"ៜ",["ᠠ","ᡂ"],["ᡄ","ᡷ"],["ᢀ","ᢨ"],"ᢪ",["ᢰ","ᣵ"],["ᤀ","ᤞ"],["ᥐ","ᥭ"],["ᥰ","ᥴ"],["ᦀ","ᦫ"],["ᦰ","ᧉ"],["ᨀ","ᨖ"],["ᨠ","ᩔ"],["ᬅ","ᬳ"],["ᭅ","ᭋ"],["ᮃ","ᮠ"],["ᮮ","ᮯ"],["ᮺ","ᯥ"],["ᰀ","ᰣ"],["ᱍ","ᱏ"],["ᱚ","ᱷ"],["ᳩ","ᳬ"],["ᳮ","ᳱ"],["ᳵ","ᳶ"],["ℵ","ℸ"],["ⴰ","ⵧ"],["ⶀ","ⶖ"],["ⶠ","ⶦ"],["ⶨ","ⶮ"],["ⶰ","ⶶ"],["ⶸ","ⶾ"],["ⷀ","ⷆ"],["ⷈ","ⷎ"],["ⷐ","ⷖ"],["ⷘ","ⷞ"],"〆","〼",["ぁ","ゖ"],"ゟ",["ァ","ヺ"],"ヿ",["ㄅ","ㄭ"],["ㄱ","ㆎ"],["ㆠ","ㆺ"],["ㇰ","ㇿ"],["㐀","䶵"],["一","鿕"],["ꀀ","ꀔ"],["ꀖ","ꒌ"],["ꓐ","ꓷ"],["ꔀ","ꘋ"],["ꘐ","ꘟ"],["ꘪ","ꘫ"],"ꙮ",["ꚠ","ꛥ"],"ꞏ","ꟷ",["ꟻ","ꠁ"],["ꠃ","ꠅ"],["ꠇ","ꠊ"],["ꠌ","ꠢ"],["ꡀ","ꡳ"],["ꢂ","ꢳ"],["ꣲ","ꣷ"],"ꣻ","ꣽ",["ꤊ","ꤥ"],["ꤰ","ꥆ"],["ꥠ","ꥼ"],["ꦄ","ꦲ"],["ꧠ","ꧤ"],["ꧧ","ꧯ"],["ꧺ","ꧾ"],["ꨀ","ꨨ"],["ꩀ","ꩂ"],["ꩄ","ꩋ"],["ꩠ","ꩯ"],["ꩱ","ꩶ"],"ꩺ",["ꩾ","ꪯ"],"ꪱ",["ꪵ","ꪶ"],["ꪹ","ꪽ"],"ꫀ","ꫂ",["ꫛ","ꫜ"],["ꫠ","ꫪ"],"ꫲ",["ꬁ","ꬆ"],["ꬉ","ꬎ"],["ꬑ","ꬖ"],["ꬠ","ꬦ"],["ꬨ","ꬮ"],["ꯀ","ꯢ"],["가","힣"],["ힰ","ퟆ"],["ퟋ","ퟻ"],["豈","舘"],["並","龎"],"יִ",["ײַ","ﬨ"],["שׁ","זּ"],["טּ","לּ"],"מּ",["נּ","סּ"],["ףּ","פּ"],["צּ","ﮱ"],["ﯓ","ﴽ"],["ﵐ","ﶏ"],["ﶒ","ﷇ"],["ﷰ","ﷻ"],["ﹰ","ﹴ"],["ﹶ","ﻼ"],["ｦ","ｯ"],["ｱ","ﾝ"],["ﾠ","ﾾ"],["ￂ","ￇ"],["ￊ","ￏ"],["ￒ","ￗ"],["ￚ","ￜ"]],!1,!1),He=it(["ǅ","ǈ","ǋ","ǲ",["ᾈ","ᾏ"],["ᾘ","ᾟ"],["ᾨ","ᾯ"],"ᾼ","ῌ","ῼ"],!1,!1),We=it([["A","Z"],["À","Ö"],["Ø","Þ"],"Ā","Ă","Ą","Ć","Ĉ","Ċ","Č","Ď","Đ","Ē","Ĕ","Ė","Ę","Ě","Ĝ","Ğ","Ġ","Ģ","Ĥ","Ħ","Ĩ","Ī","Ĭ","Į","İ","Ĳ","Ĵ","Ķ","Ĺ","Ļ","Ľ","Ŀ","Ł","Ń","Ņ","Ň","Ŋ","Ō","Ŏ","Ő","Œ","Ŕ","Ŗ","Ř","Ś","Ŝ","Ş","Š","Ţ","Ť","Ŧ","Ũ","Ū","Ŭ","Ů","Ű","Ų","Ŵ","Ŷ",["Ÿ","Ź"],"Ż","Ž",["Ɓ","Ƃ"],"Ƅ",["Ɔ","Ƈ"],["Ɖ","Ƌ"],["Ǝ","Ƒ"],["Ɠ","Ɣ"],["Ɩ","Ƙ"],["Ɯ","Ɲ"],["Ɵ","Ơ"],"Ƣ","Ƥ",["Ʀ","Ƨ"],"Ʃ","Ƭ",["Ʈ","Ư"],["Ʊ","Ƴ"],"Ƶ",["Ʒ","Ƹ"],"Ƽ","Ǆ","Ǉ","Ǌ","Ǎ","Ǐ","Ǒ","Ǔ","Ǖ","Ǘ","Ǚ","Ǜ","Ǟ","Ǡ","Ǣ","Ǥ","Ǧ","Ǩ","Ǫ","Ǭ","Ǯ","Ǳ","Ǵ",["Ƕ","Ǹ"],"Ǻ","Ǽ","Ǿ","Ȁ","Ȃ","Ȅ","Ȇ","Ȉ","Ȋ","Ȍ","Ȏ","Ȑ","Ȓ","Ȕ","Ȗ","Ș","Ț","Ȝ","Ȟ","Ƞ","Ȣ","Ȥ","Ȧ","Ȩ","Ȫ","Ȭ","Ȯ","Ȱ","Ȳ",["Ⱥ","Ȼ"],["Ƚ","Ⱦ"],"Ɂ",["Ƀ","Ɇ"],"Ɉ","Ɋ","Ɍ","Ɏ","Ͱ","Ͳ","Ͷ","Ϳ","Ά",["Έ","Ί"],"Ό",["Ύ","Ώ"],["Α","Ρ"],["Σ","Ϋ"],"Ϗ",["ϒ","ϔ"],"Ϙ","Ϛ","Ϝ","Ϟ","Ϡ","Ϣ","Ϥ","Ϧ","Ϩ","Ϫ","Ϭ","Ϯ","ϴ","Ϸ",["Ϲ","Ϻ"],["Ͻ","Я"],"Ѡ","Ѣ","Ѥ","Ѧ","Ѩ","Ѫ","Ѭ","Ѯ","Ѱ","Ѳ","Ѵ","Ѷ","Ѹ","Ѻ","Ѽ","Ѿ","Ҁ","Ҋ","Ҍ","Ҏ","Ґ","Ғ","Ҕ","Җ","Ҙ","Қ","Ҝ","Ҟ","Ҡ","Ң","Ҥ","Ҧ","Ҩ","Ҫ","Ҭ","Ү","Ұ","Ҳ","Ҵ","Ҷ","Ҹ","Һ","Ҽ","Ҿ",["Ӏ","Ӂ"],"Ӄ","Ӆ","Ӈ","Ӊ","Ӌ","Ӎ","Ӑ","Ӓ","Ӕ","Ӗ","Ә","Ӛ","Ӝ","Ӟ","Ӡ","Ӣ","Ӥ","Ӧ","Ө","Ӫ","Ӭ","Ӯ","Ӱ","Ӳ","Ӵ","Ӷ","Ӹ","Ӻ","Ӽ","Ӿ","Ԁ","Ԃ","Ԅ","Ԇ","Ԉ","Ԋ","Ԍ","Ԏ","Ԑ","Ԓ","Ԕ","Ԗ","Ԙ","Ԛ","Ԝ","Ԟ","Ԡ","Ԣ","Ԥ","Ԧ","Ԩ","Ԫ","Ԭ","Ԯ",["Ա","Ֆ"],["Ⴀ","Ⴥ"],"Ⴧ","Ⴭ",["Ꭰ","Ᏽ"],"Ḁ","Ḃ","Ḅ","Ḇ","Ḉ","Ḋ","Ḍ","Ḏ","Ḑ","Ḓ","Ḕ","Ḗ","Ḙ","Ḛ","Ḝ","Ḟ","Ḡ","Ḣ","Ḥ","Ḧ","Ḩ","Ḫ","Ḭ","Ḯ","Ḱ","Ḳ","Ḵ","Ḷ","Ḹ","Ḻ","Ḽ","Ḿ","Ṁ","Ṃ","Ṅ","Ṇ","Ṉ","Ṋ","Ṍ","Ṏ","Ṑ","Ṓ","Ṕ","Ṗ","Ṙ","Ṛ","Ṝ","Ṟ","Ṡ","Ṣ","Ṥ","Ṧ","Ṩ","Ṫ","Ṭ","Ṯ","Ṱ","Ṳ","Ṵ","Ṷ","Ṹ","Ṻ","Ṽ","Ṿ","Ẁ","Ẃ","Ẅ","Ẇ","Ẉ","Ẋ","Ẍ","Ẏ","Ẑ","Ẓ","Ẕ","ẞ","Ạ","Ả","Ấ","Ầ","Ẩ","Ẫ","Ậ","Ắ","Ằ","Ẳ","Ẵ","Ặ","Ẹ","Ẻ","Ẽ","Ế","Ề","Ể","Ễ","Ệ","Ỉ","Ị","Ọ","Ỏ","Ố","Ồ","Ổ","Ỗ","Ộ","Ớ","Ờ","Ở","Ỡ","Ợ","Ụ","Ủ","Ứ","Ừ","Ử","Ữ","Ự","Ỳ","Ỵ","Ỷ","Ỹ","Ỻ","Ỽ","Ỿ",["Ἀ","Ἇ"],["Ἐ","Ἕ"],["Ἠ","Ἧ"],["Ἰ","Ἷ"],["Ὀ","Ὅ"],"Ὑ","Ὓ","Ὕ","Ὗ",["Ὠ","Ὧ"],["Ᾰ","Ά"],["Ὲ","Ή"],["Ῐ","Ί"],["Ῠ","Ῥ"],["Ὸ","Ώ"],"ℂ","ℇ",["ℋ","ℍ"],["ℐ","ℒ"],"ℕ",["ℙ","ℝ"],"ℤ","Ω","ℨ",["K","ℭ"],["ℰ","ℳ"],["ℾ","ℿ"],"ⅅ","Ↄ",["Ⰰ","Ⱞ"],"Ⱡ",["Ɫ","Ɽ"],"Ⱨ","Ⱪ","Ⱬ",["Ɑ","Ɒ"],"Ⱳ","Ⱶ",["Ȿ","Ⲁ"],"Ⲃ","Ⲅ","Ⲇ","Ⲉ","Ⲋ","Ⲍ","Ⲏ","Ⲑ","Ⲓ","Ⲕ","Ⲗ","Ⲙ","Ⲛ","Ⲝ","Ⲟ","Ⲡ","Ⲣ","Ⲥ","Ⲧ","Ⲩ","Ⲫ","Ⲭ","Ⲯ","Ⲱ","Ⲳ","Ⲵ","Ⲷ","Ⲹ","Ⲻ","Ⲽ","Ⲿ","Ⳁ","Ⳃ","Ⳅ","Ⳇ","Ⳉ","Ⳋ","Ⳍ","Ⳏ","Ⳑ","Ⳓ","Ⳕ","Ⳗ","Ⳙ","Ⳛ","Ⳝ","Ⳟ","Ⳡ","Ⳣ","Ⳬ","Ⳮ","Ⳳ","Ꙁ","Ꙃ","Ꙅ","Ꙇ","Ꙉ","Ꙋ","Ꙍ","Ꙏ","Ꙑ","Ꙓ","Ꙕ","Ꙗ","Ꙙ","Ꙛ","Ꙝ","Ꙟ","Ꙡ","Ꙣ","Ꙥ","Ꙧ","Ꙩ","Ꙫ","Ꙭ","Ꚁ","Ꚃ","Ꚅ","Ꚇ","Ꚉ","Ꚋ","Ꚍ","Ꚏ","Ꚑ","Ꚓ","Ꚕ","Ꚗ","Ꚙ","Ꚛ","Ꜣ","Ꜥ","Ꜧ","Ꜩ","Ꜫ","Ꜭ","Ꜯ","Ꜳ","Ꜵ","Ꜷ","Ꜹ","Ꜻ","Ꜽ","Ꜿ","Ꝁ","Ꝃ","Ꝅ","Ꝇ","Ꝉ","Ꝋ","Ꝍ","Ꝏ","Ꝑ","Ꝓ","Ꝕ","Ꝗ","Ꝙ","Ꝛ","Ꝝ","Ꝟ","Ꝡ","Ꝣ","Ꝥ","Ꝧ","Ꝩ","Ꝫ","Ꝭ","Ꝯ","Ꝺ","Ꝼ",["Ᵹ","Ꝿ"],"Ꞁ","Ꞃ","Ꞅ","Ꞇ","Ꞌ","Ɥ","Ꞑ","Ꞓ","Ꞗ","Ꞙ","Ꞛ","Ꞝ","Ꞟ","Ꞡ","Ꞣ","Ꞥ","Ꞧ","Ꞩ",["Ɦ","Ɬ"],["Ʞ","Ꞵ"],"Ꞷ",["Ａ","Ｚ"]],!1,!1),Ge=it(["ः","ऻ",["ा","ी"],["ॉ","ौ"],["ॎ","ॏ"],["ং","ঃ"],["া","ী"],["ে","ৈ"],["ো","ৌ"],"ৗ","ਃ",["ਾ","ੀ"],"ઃ",["ા","ી"],"ૉ",["ો","ૌ"],["ଂ","ଃ"],"ା","ୀ",["େ","ୈ"],["ୋ","ୌ"],"ୗ",["ா","ி"],["ு","ூ"],["ெ","ை"],["ொ","ௌ"],"ௗ",["ఁ","ః"],["ు","ౄ"],["ಂ","ಃ"],"ಾ",["ೀ","ೄ"],["ೇ","ೈ"],["ೊ","ೋ"],["ೕ","ೖ"],["ം","ഃ"],["ാ","ീ"],["െ","ൈ"],["ൊ","ൌ"],"ൗ",["ං","ඃ"],["ා","ෑ"],["ෘ","ෟ"],["ෲ","ෳ"],["༾","༿"],"ཿ",["ါ","ာ"],"ေ","း",["ျ","ြ"],["ၖ","ၗ"],["ၢ","ၤ"],["ၧ","ၭ"],["ႃ","ႄ"],["ႇ","ႌ"],"ႏ",["ႚ","ႜ"],"ា",["ើ","ៅ"],["ះ","ៈ"],["ᤣ","ᤦ"],["ᤩ","ᤫ"],["ᤰ","ᤱ"],["ᤳ","ᤸ"],["ᨙ","ᨚ"],"ᩕ","ᩗ","ᩡ",["ᩣ","ᩤ"],["ᩭ","ᩲ"],"ᬄ","ᬵ","ᬻ",["ᬽ","ᭁ"],["ᭃ","᭄"],"ᮂ","ᮡ",["ᮦ","ᮧ"],"᮪","ᯧ",["ᯪ","ᯬ"],"ᯮ",["᯲","᯳"],["ᰤ","ᰫ"],["ᰴ","ᰵ"],"᳡",["ᳲ","ᳳ"],["〮","〯"],["ꠣ","ꠤ"],"ꠧ",["ꢀ","ꢁ"],["ꢴ","ꣃ"],["ꥒ","꥓"],"ꦃ",["ꦴ","ꦵ"],["ꦺ","ꦻ"],["ꦽ","꧀"],["ꨯ","ꨰ"],["ꨳ","ꨴ"],"ꩍ","ꩻ","ꩽ","ꫫ",["ꫮ","ꫯ"],"ꫵ",["ꯣ","ꯤ"],["ꯦ","ꯧ"],["ꯩ","ꯪ"],"꯬"],!1,!1),qe=it([["̀","ͯ"],["҃","҇"],["֑","ֽ"],"ֿ",["ׁ","ׂ"],["ׄ","ׅ"],"ׇ",["ؐ","ؚ"],["ً","ٟ"],"ٰ",["ۖ","ۜ"],["۟","ۤ"],["ۧ","ۨ"],["۪","ۭ"],"ܑ",["ܰ","݊"],["ަ","ް"],["߫","߳"],["ࠖ","࠙"],["ࠛ","ࠣ"],["ࠥ","ࠧ"],["ࠩ","࠭"],["࡙","࡛"],["ࣣ","ं"],"ऺ","़",["ु","ै"],"्",["॑","ॗ"],["ॢ","ॣ"],"ঁ","়",["ু","ৄ"],"্",["ৢ","ৣ"],["ਁ","ਂ"],"਼",["ੁ","ੂ"],["ੇ","ੈ"],["ੋ","੍"],"ੑ",["ੰ","ੱ"],"ੵ",["ઁ","ં"],"઼",["ુ","ૅ"],["ે","ૈ"],"્",["ૢ","ૣ"],"ଁ","଼","ି",["ୁ","ୄ"],"୍","ୖ",["ୢ","ୣ"],"ஂ","ீ","்","ఀ",["ా","ీ"],["ె","ై"],["ొ","్"],["ౕ","ౖ"],["ౢ","ౣ"],"ಁ","಼","ಿ","ೆ",["ೌ","್"],["ೢ","ೣ"],"ഁ",["ു","ൄ"],"്",["ൢ","ൣ"],"්",["ි","ු"],"ූ","ั",["ิ","ฺ"],["็","๎"],"ັ",["ິ","ູ"],["ົ","ຼ"],["່","ໍ"],["༘","༙"],"༵","༷","༹",["ཱ","ཾ"],["ྀ","྄"],["྆","྇"],["ྍ","ྗ"],["ྙ","ྼ"],"࿆",["ိ","ူ"],["ဲ","့"],["္","်"],["ွ","ှ"],["ၘ","ၙ"],["ၞ","ၠ"],["ၱ","ၴ"],"ႂ",["ႅ","ႆ"],"ႍ","ႝ",["፝","፟"],["ᜒ","᜔"],["ᜲ","᜴"],["ᝒ","ᝓ"],["ᝲ","ᝳ"],["឴","឵"],["ិ","ួ"],"ំ",["៉","៓"],"៝",["᠋","᠍"],"ᢩ",["ᤠ","ᤢ"],["ᤧ","ᤨ"],"ᤲ",["᤹","᤻"],["ᨗ","ᨘ"],"ᨛ","ᩖ",["ᩘ","ᩞ"],"᩠","ᩢ",["ᩥ","ᩬ"],["ᩳ","᩼"],"᩿",["᪰","᪽"],["ᬀ","ᬃ"],"᬴",["ᬶ","ᬺ"],"ᬼ","ᭂ",["᭫","᭳"],["ᮀ","ᮁ"],["ᮢ","ᮥ"],["ᮨ","ᮩ"],["᮫","ᮭ"],"᯦",["ᯨ","ᯩ"],"ᯭ",["ᯯ","ᯱ"],["ᰬ","ᰳ"],["ᰶ","᰷"],["᳐","᳒"],["᳔","᳠"],["᳢","᳨"],"᳭","᳴",["᳸","᳹"],["᷀","᷵"],["᷼","᷿"],["⃐","⃜"],"⃡",["⃥","⃰"],["⳯","⳱"],"⵿",["ⷠ","ⷿ"],["〪","〭"],["゙","゚"],"꙯",["ꙴ","꙽"],["ꚞ","ꚟ"],["꛰","꛱"],"ꠂ","꠆","ꠋ",["ꠥ","ꠦ"],"꣄",["꣠","꣱"],["ꤦ","꤭"],["ꥇ","ꥑ"],["ꦀ","ꦂ"],"꦳",["ꦶ","ꦹ"],"ꦼ","ꧥ",["ꨩ","ꨮ"],["ꨱ","ꨲ"],["ꨵ","ꨶ"],"ꩃ","ꩌ","ꩼ","ꪰ",["ꪲ","ꪴ"],["ꪷ","ꪸ"],["ꪾ","꪿"],"꫁",["ꫬ","ꫭ"],"꫶","ꯥ","ꯨ","꯭","ﬞ",["︀","️"],["︠","︯"]],!1,!1),ze=it([["0","9"],["٠","٩"],["۰","۹"],["߀","߉"],["०","९"],["০","৯"],["੦","੯"],["૦","૯"],["୦","୯"],["௦","௯"],["౦","౯"],["೦","೯"],["൦","൯"],["෦","෯"],["๐","๙"],["໐","໙"],["༠","༩"],["၀","၉"],["႐","႙"],["០","៩"],["᠐","᠙"],["᥆","᥏"],["᧐","᧙"],["᪀","᪉"],["᪐","᪙"],["᭐","᭙"],["᮰","᮹"],["᱀","᱉"],["᱐","᱙"],["꘠","꘩"],["꣐","꣙"],["꤀","꤉"],["꧐","꧙"],["꧰","꧹"],["꩐","꩙"],["꯰","꯹"],["０","９"]],!1,!1),Ye=it([["ᛮ","ᛰ"],["Ⅰ","ↂ"],["ↅ","ↈ"],"〇",["〡","〩"],["〸","〺"],["ꛦ","ꛯ"]],!1,!1),Qe=it(["_",["‿","⁀"],"⁔",["︳","︴"],["﹍","﹏"],"＿"],!1,!1),Ke=it([" "," "," ",[" "," "]," "," ","　"],!1,!1),Je=at(";",!1),Xe=0,Ze=0,et=[{line:1,column:1}],tt=0,rt=[],nt=0;if("startRule"in t){if(!(t.startRule in u))throw new Error("Can't start parsing from rule \""+t.startRule+'".');a=u[t.startRule]}function ot(){return lt(Ze,Xe)}function ut(e,t){throw function(e,t){return new peg$SyntaxError(e,null,null,t)}(e,t=void 0!==t?t:lt(Ze,Xe))}function at(e,t){return{type:"literal",text:e,ignoreCase:t}}function it(e,t,r){return{type:"class",parts:e,inverted:t,ignoreCase:r}}function st(e){return{type:"other",description:e}}function ct(t){var r,n=et[t];if(n)return n;for(r=t-1;!et[r];)r--;for(n={line:(n=et[r]).line,column:n.column};r<t;)10===e.charCodeAt(r)?(n.line++,n.column=1):n.column++,r++;return et[t]=n,n}function lt(e,t,r){var n=ct(e),u=ct(t),a={source:o,start:{offset:e,line:n.line,column:n.column},end:{offset:t,line:u.line,column:u.column}};return r&&o&&"function"==typeof o.offset&&(a.start=o.offset(a.start),a.end=o.offset(a.end)),a}function pt(e){Xe<tt||(Xe>tt&&(tt=Xe,rt=[]),rt.push(e))}function ht(){var t,r,o,u,a,c;if(t=Xe,Gt(),r=Xe,(o=function(){var t,r,o,u;return t=Xe,123===e.charCodeAt(Xe)?(r=i,Xe++):(r=n,0===nt&&pt(O)),r!==n&&(o=Ht())!==n?(125===e.charCodeAt(Xe)?(u=s,Xe++):(u=n,0===nt&&pt(D)),u!==n&&qt()!==n?(Ze=t,t=function(e){return{type:"top_level_initializer",code:e[0],codeLocation:e[1],location:ot()}}(o)):(Xe=t,t=n)):(Xe=t,t=n),t}())!==n?(u=Gt(),r=o):(Xe=r,r=n),r===n&&(r=null),o=Xe,(u=function(){var e,t;return e=Xe,(t=Ht())!==n&&qt()!==n?(Ze=e,e=function(e){return{type:"initializer",code:e[0],codeLocation:e[1],location:ot()}}(t)):(Xe=e,e=n),e}())!==n?(a=Gt(),o=u):(Xe=o,o=n),o===n&&(o=null),u=[],a=Xe,(c=dt())!==n?(Gt(),a=c):(Xe=a,a=n),a!==n)for(;a!==n;)u.push(a),a=Xe,(c=dt())!==n?(Gt(),a=c):(Xe=a,a=n);else u=n;return u!==n?(Ze=t,t=function(e,t,r){return{type:"grammar",topLevelInitializer:e,initializer:t,rules:r,location:ot()}}(r,o,u)):(Xe=t,t=n),t}function dt(){var t,r,o,u,a;return t=Xe,(r=Ot())!==n?(Gt(),o=Xe,(u=$t())!==n?(Gt(),o=u):(Xe=o,o=n),o===n&&(o=null),61===e.charCodeAt(Xe)?(u="=",Xe++):(u=n,0===nt&&pt(T)),u!==n?(Gt(),(a=ft())!==n&&qt()!==n?(Ze=t,t=function(e,t,r){return{type:"rule",name:e[0],nameLocation:e[1],expression:null!==t?{type:"named",name:t,expression:r,location:ot()}:r,location:ot()}}(r,o,a)):(Xe=t,t=n)):(Xe=t,t=n)):(Xe=t,t=n),t}function ft(){var t,r,o,u,a,i;if(t=Xe,(r=mt())!==n){for(o=[],u=Xe,Gt(),47===e.charCodeAt(Xe)?(a="/",Xe++):(a=n,0===nt&&pt($)),a!==n?(Gt(),(i=mt())!==n?u=i:(Xe=u,u=n)):(Xe=u,u=n);u!==n;)o.push(u),u=Xe,Gt(),47===e.charCodeAt(Xe)?(a="/",Xe++):(a=n,0===nt&&pt($)),a!==n?(Gt(),(i=mt())!==n?u=i:(Xe=u,u=n)):(Xe=u,u=n);Ze=t,t=function(e,t){return t.length>0?{type:"choice",alternatives:[e].concat(t),location:ot()}:e}(r,o)}else Xe=t,t=n;return t}function mt(){var e,t,r,o;return e=Xe,(t=function(){var e,t,r,o,u;if(e=Xe,(t=gt())!==n){for(r=[],o=Xe,Gt(),(u=gt())!==n?o=u:(Xe=o,o=n);o!==n;)r.push(o),o=Xe,Gt(),(u=gt())!==n?o=u:(Xe=o,o=n);Ze=e,e=function(e,t){return t.length>0||"labeled"===e.type&&e.pick?{type:"sequence",elements:[e].concat(t),location:ot()}:e}(t,r)}else Xe=e,e=n;return e}())!==n?(r=Xe,Gt(),(o=Ht())!==n?r=o:(Xe=r,r=n),r===n&&(r=null),Ze=e,e=function(e,t){return null!==t?{type:"action",expression:e,code:t[0],codeLocation:t[1],location:ot()}:e}(t,r)):(Xe=e,e=n),e}function gt(){var t,r,o,u;return t=Xe,(r=function(){var t,r;return t=Xe,64===e.charCodeAt(Xe)?(r="@",Xe++):(r=n,0===nt&&pt(B)),r!==n&&(Ze=t,r=ot()),r}())!==n?((o=At())===n&&(o=null),(u=Et())!==n?(Ze=t,t=function(e,t,r){return r.type.startsWith("semantic_")&&ut('"@" cannot be used on a semantic predicate',e),{type:"labeled",label:null!==t?t[0]:null,labelLocation:null!==t?t[1]:e,pick:!0,expression:r,location:ot()}}(r,o,u)):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=Xe,(r=At())!==n?(o=Gt(),(u=Et())!==n?(Ze=t,t=function(e,t){return{type:"labeled",label:e[0],labelLocation:e[1],expression:t,location:ot()}}(r,u)):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=Et())),t}function At(){var t,r,o;return t=Xe,(r=Ot())!==n?(Gt(),58===e.charCodeAt(Xe)?(o=":",Xe++):(o=n,0===nt&&pt(N)),o!==n?(Ze=t,t=function(e){return zt.indexOf(e[0])>=0&&ut("Label can't be a reserved word \"".concat(e[0],'"'),e[1]),e}(r)):(Xe=t,t=n)):(Xe=t,t=n),t}function Et(){var t,r,o;return t=Xe,(r=function(){var t;return 36===e.charCodeAt(Xe)?(t="$",Xe++):(t=n,0===nt&&pt(R)),t===n&&(38===e.charCodeAt(Xe)?(t="&",Xe++):(t=n,0===nt&&pt(L)),t===n&&(33===e.charCodeAt(Xe)?(t="!",Xe++):(t=n,0===nt&&pt(x)))),t}())!==n?(Gt(),(o=yt())!==n?(Ze=t,t=function(e,t){return{type:OPS_TO_PREFIXED_TYPES[e],expression:t,location:ot()}}(r,o)):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=yt()),t}function yt(){var t,r,o;return t=Xe,(r=St())!==n?(Gt(),(o=function(){var t;return 63===e.charCodeAt(Xe)?(t="?",Xe++):(t=n,0===nt&&pt(M)),t===n&&(42===e.charCodeAt(Xe)?(t="*",Xe++):(t=n,0===nt&&pt(k)),t===n&&(43===e.charCodeAt(Xe)?(t="+",Xe++):(t=n,0===nt&&pt(V)))),t}())!==n?(Ze=t,t=function(e,t){return{type:OPS_TO_SUFFIXED_TYPES[t],expression:e,location:ot()}}(r,o)):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=function(){var t,r,o,u,a,i,s;return t=Xe,(r=St())!==n?(Gt(),124===e.charCodeAt(Xe)?(o="|",Xe++):(o=n,0===nt&&pt(j)),o!==n?(Gt(),(u=function(){var t,r,o,u;return t=Xe,(r=Ct())===n&&(r=null),Gt(),".."===e.substr(Xe,2)?(o="..",Xe+=2):(o=n,0===nt&&pt(H)),o!==n?(Gt(),(u=Ct())===n&&(u=null),Ze=t,t=function(e,t){return[null!==e?e:{type:"constant",value:0},null!==t?t:{type:"constant",value:null}]}(r,u)):(Xe=t,t=n),t===n&&(t=Xe,(r=Ct())!==n&&(Ze=t,r=function(e){return[null,e]}(r)),t=r),t}())!==n?(Gt(),a=Xe,44===e.charCodeAt(Xe)?(i=",",Xe++):(i=n,0===nt&&pt(U)),i!==n?(Gt(),(s=ft())!==n?(Gt(),a=s):(Xe=a,a=n)):(Xe=a,a=n),a===n&&(a=null),124===e.charCodeAt(Xe)?(i="|",Xe++):(i=n,0===nt&&pt(j)),i!==n?(Ze=t,t=function(e,t,r){var n=t[0],o=t[1];return"constant"===o.type&&0===o.value&&ut("The maximum count of repetitions of the rule must be > 0",o.location),{type:"repeated",min:n,max:o,expression:e,delimiter:r,location:ot()}}(r,u,a)):(Xe=t,t=n)):(Xe=t,t=n)):(Xe=t,t=n)):(Xe=t,t=n),t}())===n&&(t=St()),t}function Ct(){var t,r;return t=Xe,(r=function(){var t,r,o,u;if(t=Xe,r=Xe,o=[],(u=jt())!==n)for(;u!==n;)o.push(u),u=jt();else o=n;return(r=o!==n?e.substring(r,Xe):o)!==n&&(Ze=t,r=function(e){return parseInt(e,10)}(r)),r}())!==n&&(Ze=t,r=function(e){return{type:"constant",value:e,location:ot()}}(r)),(t=r)===n&&(t=Xe,(r=Ot())!==n&&(Ze=t,r=function(e){return{type:"variable",value:e[0],location:ot()}}(r)),(t=r)===n&&(t=Xe,(r=Ht())!==n&&(Ze=t,r=function(e){return{type:"function",value:e[0],codeLocation:e[1],location:ot()}}(r)),t=r)),t}function St(){var t,r,o,u;return(t=function(){var t,r,o;return nt++,t=Xe,(r=$t())!==n?(105===e.charCodeAt(Xe)?(o="i",Xe++):(o=n,0===nt&&pt(Ae)),o===n&&(o=null),Ze=t,t=function(e,t){return{type:"literal",value:e,ignoreCase:null!==t,location:ot()}}(r,o)):(Xe=t,t=n),nt--,t===n&&(r=n,0===nt&&pt(ge)),t}())===n&&(t=function(){var t,r,o,u,a,i;if(nt++,t=Xe,91===e.charCodeAt(Xe)?(r="[",Xe++):(r=n,0===nt&&pt(ve)),r!==n){for(94===e.charCodeAt(Xe)?(o="^",Xe++):(o=n,0===nt&&pt(_e)),o===n&&(o=null),u=[],(a=Rt())===n&&(a=Lt());a!==n;)u.push(a),(a=Rt())===n&&(a=Lt());93===e.charCodeAt(Xe)?(a="]",Xe++):(a=n,0===nt&&pt(Fe)),a!==n?(105===e.charCodeAt(Xe)?(i="i",Xe++):(i=n,0===nt&&pt(Ae)),i===n&&(i=null),Ze=t,t=function(e,t,r){return{type:"class",parts:t.filter((function(e){return""!==e})),inverted:null!==e,ignoreCase:null!==r,location:ot()}}(o,u,i)):(Xe=t,t=n)}else Xe=t,t=n;return nt--,t===n&&(r=n,0===nt&&pt(Se)),t}())===n&&(t=function(){var t,r;return t=Xe,46===e.charCodeAt(Xe)?(r=".",Xe++):(r=n,0===nt&&pt(xe)),r!==n&&(Ze=t,r={type:"any",location:ot()}),r}())===n&&(t=function(){var t,r,o,u,a,i,s;return t=Xe,(r=Ot())!==n?(o=Xe,nt++,u=Xe,a=Gt(),i=Xe,(s=$t())!==n?i=s=[s,Gt()]:(Xe=i,i=n),i===n&&(i=null),61===e.charCodeAt(Xe)?(s="=",Xe++):(s=n,0===nt&&pt(T)),s!==n?u=a=[a,i,s]:(Xe=u,u=n),nt--,u===n?o=void 0:(Xe=o,o=n),o!==n?(Ze=t,t=function(e){return{type:"rule_ref",name:e[0],location:ot()}}(r)):(Xe=t,t=n)):(Xe=t,t=n),t}())===n&&(t=function(){var t,r,o;return t=Xe,(r=function(){var t;return 38===e.charCodeAt(Xe)?(t="&",Xe++):(t=n,0===nt&&pt(L)),t===n&&(33===e.charCodeAt(Xe)?(t="!",Xe++):(t=n,0===nt&&pt(x))),t}())!==n?(Gt(),(o=Ht())!==n?(Ze=t,t=function(e,t){return{type:OPS_TO_SEMANTIC_PREDICATE_TYPES[e],code:t[0],codeLocation:t[1],location:ot()}}(r,o)):(Xe=t,t=n)):(Xe=t,t=n),t}())===n&&(t=Xe,40===e.charCodeAt(Xe)?(r="(",Xe++):(r=n,0===nt&&pt(W)),r!==n?(Gt(),(o=ft())!==n?(Gt(),41===e.charCodeAt(Xe)?(u=")",Xe++):(u=n,0===nt&&pt(G)),u!==n?(Ze=t,t=function(e){return"labeled"===e.type||"sequence"===e.type?{type:"group",expression:e,location:ot()}:e}(o)):(Xe=t,t=n)):(Xe=t,t=n)):(Xe=t,t=n)),t}function vt(){var t;return e.length>Xe?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(q)),t}function _t(){var t;return nt++,9===e.charCodeAt(Xe)?(t="\t",Xe++):(t=n,0===nt&&pt(Y)),t===n&&(11===e.charCodeAt(Xe)?(t="\v",Xe++):(t=n,0===nt&&pt(Q)),t===n&&(12===e.charCodeAt(Xe)?(t="\f",Xe++):(t=n,0===nt&&pt(K)),t===n&&(32===e.charCodeAt(Xe)?(t=" ",Xe++):(t=n,0===nt&&pt(J)),t===n&&(160===e.charCodeAt(Xe)?(t=" ",Xe++):(t=n,0===nt&&pt(X)),t===n&&(65279===e.charCodeAt(Xe)?(t="\ufeff",Xe++):(t=n,0===nt&&pt(Z)),t===n&&(t=function(){var t;return P.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ke)),t}())))))),nt--,t===n&&0===nt&&pt(z),t}function Ft(){var t;return f.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(ee)),t}function wt(){var t;return nt++,10===e.charCodeAt(Xe)?(t="\n",Xe++):(t=n,0===nt&&pt(re)),t===n&&("\r\n"===e.substr(Xe,2)?(t="\r\n",Xe+=2):(t=n,0===nt&&pt(ne)),t===n&&(13===e.charCodeAt(Xe)?(t="\r",Xe++):(t=n,0===nt&&pt(oe)),t===n&&(8232===e.charCodeAt(Xe)?(t="\u2028",Xe++):(t=n,0===nt&&pt(ue)),t===n&&(8233===e.charCodeAt(Xe)?(t="\u2029",Xe++):(t=n,0===nt&&pt(ae)))))),nt--,t===n&&0===nt&&pt(te),t}function bt(){var t;return nt++,(t=function(){var t,r,o,u,a,i;if(t=Xe,e.substr(Xe,2)===c?(r=c,Xe+=2):(r=n,0===nt&&pt(se)),r!==n){for(o=[],u=Xe,a=Xe,nt++,e.substr(Xe,2)===l?(i=l,Xe+=2):(i=n,0===nt&&pt(ce)),nt--,i===n?a=void 0:(Xe=a,a=n),a!==n&&(i=vt())!==n?u=a=[a,i]:(Xe=u,u=n);u!==n;)o.push(u),u=Xe,a=Xe,nt++,e.substr(Xe,2)===l?(i=l,Xe+=2):(i=n,0===nt&&pt(ce)),nt--,i===n?a=void 0:(Xe=a,a=n),a!==n&&(i=vt())!==n?u=a=[a,i]:(Xe=u,u=n);e.substr(Xe,2)===l?(u=l,Xe+=2):(u=n,0===nt&&pt(ce)),u!==n?t=r=[r,o,u]:(Xe=t,t=n)}else Xe=t,t=n;return t}())===n&&(t=Pt()),nt--,t===n&&0===nt&&pt(ie),t}function It(){var t,r,o,u,a,i;if(t=Xe,e.substr(Xe,2)===c?(r=c,Xe+=2):(r=n,0===nt&&pt(se)),r!==n){for(o=[],u=Xe,a=Xe,nt++,e.substr(Xe,2)===l?(i=l,Xe+=2):(i=n,0===nt&&pt(ce)),i===n&&(i=Ft()),nt--,i===n?a=void 0:(Xe=a,a=n),a!==n&&(i=vt())!==n?u=a=[a,i]:(Xe=u,u=n);u!==n;)o.push(u),u=Xe,a=Xe,nt++,e.substr(Xe,2)===l?(i=l,Xe+=2):(i=n,0===nt&&pt(ce)),i===n&&(i=Ft()),nt--,i===n?a=void 0:(Xe=a,a=n),a!==n&&(i=vt())!==n?u=a=[a,i]:(Xe=u,u=n);e.substr(Xe,2)===l?(u=l,Xe+=2):(u=n,0===nt&&pt(ce)),u!==n?t=r=[r,o,u]:(Xe=t,t=n)}else Xe=t,t=n;return t}function Pt(){var t,r,o,u,a,i;if(t=Xe,"//"===e.substr(Xe,2)?(r="//",Xe+=2):(r=n,0===nt&&pt(le)),r!==n){for(o=[],u=Xe,a=Xe,nt++,i=Ft(),nt--,i===n?a=void 0:(Xe=a,a=n),a!==n&&(i=vt())!==n?u=a=[a,i]:(Xe=u,u=n);u!==n;)o.push(u),u=Xe,a=Xe,nt++,i=Ft(),nt--,i===n?a=void 0:(Xe=a,a=n),a!==n&&(i=vt())!==n?u=a=[a,i]:(Xe=u,u=n);t=r=[r,o]}else Xe=t,t=n;return t}function Ot(){var e,t,r,o;if(nt++,e=Xe,(t=Dt())!==n){for(r=[],o=Tt();o!==n;)r.push(o),o=Tt();Ze=e,e=function(e,t){return[e+t.join(""),ot()]}(t,r)}else Xe=e,e=n;return nt--,e===n&&(t=n,0===nt&&pt(pe)),e}function Dt(){var t,r,o;return(t=function(){var t;return(t=function(){var t;return v.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(We)),t}())===n&&(t=function(){var t;return E.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ve)),t}())===n&&(t=function(){var t;return S.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(He)),t}())===n&&(t=function(){var t;return y.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(je)),t}())===n&&(t=function(){var t;return C.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ue)),t}())===n&&(t=function(){var t;return b.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ye)),t}()),t}())===n&&(95===e.charCodeAt(Xe)?(t="_",Xe++):(t=n,0===nt&&pt(he)),t===n&&(t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(de)),r!==n&&(o=Vt())!==n?t=o:(Xe=t,t=n))),t}function Tt(){var t;return(t=Dt())===n&&(36===e.charCodeAt(Xe)?(t="$",Xe++):(t=n,0===nt&&pt(R)),t===n&&(t=function(){var t;return(t=function(){var t;return F.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(qe)),t}())===n&&(t=function(){var t;return _.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Ge)),t}()),t}())===n&&(t=function(){var t;return w.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(ze)),t}())===n&&(t=function(){var t;return I.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Qe)),t}())===n&&(8204===e.charCodeAt(Xe)?(t="‌",Xe++):(t=n,0===nt&&pt(fe)),t===n&&(8205===e.charCodeAt(Xe)?(t="‍",Xe++):(t=n,0===nt&&pt(me))))),t}function $t(){var t,r,o,u;if(nt++,t=Xe,34===e.charCodeAt(Xe)?(r=h,Xe++):(r=n,0===nt&&pt(ye)),r!==n){for(o=[],u=Bt();u!==n;)o.push(u),u=Bt();34===e.charCodeAt(Xe)?(u=h,Xe++):(u=n,0===nt&&pt(ye)),u!==n?(Ze=t,t=function(e){return e.join("")}(o)):(Xe=t,t=n)}else Xe=t,t=n;if(t===n)if(t=Xe,39===e.charCodeAt(Xe)?(r=d,Xe++):(r=n,0===nt&&pt(Ce)),r!==n){for(o=[],u=Nt();u!==n;)o.push(u),u=Nt();39===e.charCodeAt(Xe)?(u=d,Xe++):(u=n,0===nt&&pt(Ce)),u!==n?(Ze=t,t=function(e){return e.join("")}(o)):(Xe=t,t=n)}else Xe=t,t=n;return nt--,t===n&&(r=n,0===nt&&pt(Ee)),t}function Bt(){var t,r,o,u;return t=Xe,r=Xe,o=Xe,nt++,34===e.charCodeAt(Xe)?(u=h,Xe++):(u=n,0===nt&&pt(ye)),u===n&&(92===e.charCodeAt(Xe)?(u=p,Xe++):(u=n,0===nt&&pt(de)),u===n&&(u=Ft())),nt--,u===n?o=void 0:(Xe=o,o=n),o!==n&&(u=vt())!==n?r=o=[o,u]:(Xe=r,r=n),(t=r!==n?e.substring(t,Xe):r)===n&&(t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(de)),r!==n&&(o=Mt())!==n?t=o:(Xe=t,t=n),t===n&&(t=xt())),t}function Nt(){var t,r,o,u;return t=Xe,r=Xe,o=Xe,nt++,39===e.charCodeAt(Xe)?(u=d,Xe++):(u=n,0===nt&&pt(Ce)),u===n&&(92===e.charCodeAt(Xe)?(u=p,Xe++):(u=n,0===nt&&pt(de)),u===n&&(u=Ft())),nt--,u===n?o=void 0:(Xe=o,o=n),o!==n&&(u=vt())!==n?r=o=[o,u]:(Xe=r,r=n),(t=r!==n?e.substring(t,Xe):r)===n&&(t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(de)),r!==n&&(o=Mt())!==n?t=o:(Xe=t,t=n),t===n&&(t=xt())),t}function Rt(){var t,r,o,u;return t=Xe,(r=Lt())!==n?(45===e.charCodeAt(Xe)?(o="-",Xe++):(o=n,0===nt&&pt(we)),o!==n&&(u=Lt())!==n?(Ze=t,t=function(t,r){return t.charCodeAt(0)>r.charCodeAt(0)&&ut("Invalid character range: "+e.substring(Ze,Xe)+"."),[t,r]}(r,u)):(Xe=t,t=n)):(Xe=t,t=n),t}function Lt(){var t,r,o,u;return t=Xe,r=Xe,o=Xe,nt++,93===e.charCodeAt(Xe)?(u="]",Xe++):(u=n,0===nt&&pt(Fe)),u===n&&(92===e.charCodeAt(Xe)?(u=p,Xe++):(u=n,0===nt&&pt(de)),u===n&&(u=Ft())),nt--,u===n?o=void 0:(Xe=o,o=n),o!==n&&(u=vt())!==n?r=o=[o,u]:(Xe=r,r=n),(t=r!==n?e.substring(t,Xe):r)===n&&(t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(de)),r!==n&&(o=Mt())!==n?t=o:(Xe=t,t=n),t===n&&(t=xt())),t}function xt(){var t,r;return t=Xe,92===e.charCodeAt(Xe)?(r=p,Xe++):(r=n,0===nt&&pt(de)),r!==n&&wt()!==n?(Ze=t,t=""):(Xe=t,t=n),t}function Mt(){var t,r,o,u;return(t=function(){var t;return(t=kt())===n&&(t=function(){var t,r,o,u;return t=Xe,r=Xe,o=Xe,nt++,(u=function(){var t;return(t=kt())===n&&(t=jt())===n&&(120===e.charCodeAt(Xe)?(t="x",Xe++):(t=n,0===nt&&pt(Be)),t===n&&(117===e.charCodeAt(Xe)?(t="u",Xe++):(t=n,0===nt&&pt(Ne)))),t}())===n&&(u=Ft()),nt--,u===n?o=void 0:(Xe=o,o=n),o!==n&&(u=vt())!==n?r=o=[o,u]:(Xe=r,r=n),r!==n?e.substring(t,Xe):r}()),t}())===n&&(t=Xe,48===e.charCodeAt(Xe)?(r="0",Xe++):(r=n,0===nt&&pt(be)),r!==n?(o=Xe,nt++,u=jt(),nt--,u===n?o=void 0:(Xe=o,o=n),o!==n?(Ze=t,t="\0"):(Xe=t,t=n)):(Xe=t,t=n),t===n&&(t=function(){var t,r,o,u,a,i;return t=Xe,120===e.charCodeAt(Xe)?(r="x",Xe++):(r=n,0===nt&&pt(Be)),r!==n?(o=Xe,u=Xe,(a=Ut())!==n&&(i=Ut())!==n?u=a=[a,i]:(Xe=u,u=n),(o=u!==n?e.substring(o,Xe):u)!==n?(Ze=t,t=function(e){return String.fromCharCode(parseInt(e,16))}(o)):(Xe=t,t=n)):(Xe=t,t=n),t}())===n&&(t=Vt())),t}function kt(){var t,r;return 39===e.charCodeAt(Xe)?(t=d,Xe++):(t=n,0===nt&&pt(Ce)),t===n&&(34===e.charCodeAt(Xe)?(t=h,Xe++):(t=n,0===nt&&pt(ye)),t===n&&(92===e.charCodeAt(Xe)?(t=p,Xe++):(t=n,0===nt&&pt(de)),t===n&&(t=Xe,98===e.charCodeAt(Xe)?(r="b",Xe++):(r=n,0===nt&&pt(Ie)),r!==n&&(Ze=t,r="\b"),(t=r)===n&&(t=Xe,102===e.charCodeAt(Xe)?(r="f",Xe++):(r=n,0===nt&&pt(Pe)),r!==n&&(Ze=t,r="\f"),(t=r)===n&&(t=Xe,110===e.charCodeAt(Xe)?(r="n",Xe++):(r=n,0===nt&&pt(Oe)),r!==n&&(Ze=t,r="\n"),(t=r)===n&&(t=Xe,114===e.charCodeAt(Xe)?(r="r",Xe++):(r=n,0===nt&&pt(De)),r!==n&&(Ze=t,r="\r"),(t=r)===n&&(t=Xe,116===e.charCodeAt(Xe)?(r="t",Xe++):(r=n,0===nt&&pt(Te)),r!==n&&(Ze=t,r="\t"),(t=r)===n&&(t=Xe,118===e.charCodeAt(Xe)?(r="v",Xe++):(r=n,0===nt&&pt($e)),r!==n&&(Ze=t,r="\v"),t=r)))))))),t}function Vt(){var t,r,o,u,a,i,s,c;return t=Xe,117===e.charCodeAt(Xe)?(r="u",Xe++):(r=n,0===nt&&pt(Ne)),r!==n?(o=Xe,u=Xe,(a=Ut())!==n&&(i=Ut())!==n&&(s=Ut())!==n&&(c=Ut())!==n?u=a=[a,i,s,c]:(Xe=u,u=n),(o=u!==n?e.substring(o,Xe):u)!==n?(Ze=t,t=function(e){return String.fromCharCode(parseInt(e,16))}(o)):(Xe=t,t=n)):(Xe=t,t=n),t}function jt(){var t;return m.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Re)),t}function Ut(){var t;return g.test(e.charAt(Xe))?(t=e.charAt(Xe),Xe++):(t=n,0===nt&&pt(Le)),t}function Ht(){var t,r,o,u;return nt++,t=Xe,123===e.charCodeAt(Xe)?(r=i,Xe++):(r=n,0===nt&&pt(O)),r!==n?(o=function(){var e,t;return e=Xe,t=Wt(),Ze=e,function(e){return[e,ot()]}(t)}(),125===e.charCodeAt(Xe)?(u=s,Xe++):(u=n,0===nt&&pt(D)),u!==n?t=o:(Xe=t,t=n)):(Xe=t,t=n),nt--,t===n&&(r=n,0===nt&&pt(Me)),t}function Wt(){var t,r,o,u,a,c;if(t=Xe,r=[],o=[],u=Xe,a=Xe,nt++,A.test(e.charAt(Xe))?(c=e.charAt(Xe),Xe++):(c=n,0===nt&&pt(ke)),nt--,c===n?a=void 0:(Xe=a,a=n),a!==n&&(c=vt())!==n?u=a=[a,c]:(Xe=u,u=n),u!==n)for(;u!==n;)o.push(u),u=Xe,a=Xe,nt++,A.test(e.charAt(Xe))?(c=e.charAt(Xe),Xe++):(c=n,0===nt&&pt(ke)),nt--,c===n?a=void 0:(Xe=a,a=n),a!==n&&(c=vt())!==n?u=a=[a,c]:(Xe=u,u=n);else o=n;for(o===n&&(o=Xe,123===e.charCodeAt(Xe)?(u=i,Xe++):(u=n,0===nt&&pt(O)),u!==n?(a=Wt(),125===e.charCodeAt(Xe)?(c=s,Xe++):(c=n,0===nt&&pt(D)),c!==n?o=u=[u,a,c]:(Xe=o,o=n)):(Xe=o,o=n));o!==n;){if(r.push(o),o=[],u=Xe,a=Xe,nt++,A.test(e.charAt(Xe))?(c=e.charAt(Xe),Xe++):(c=n,0===nt&&pt(ke)),nt--,c===n?a=void 0:(Xe=a,a=n),a!==n&&(c=vt())!==n?u=a=[a,c]:(Xe=u,u=n),u!==n)for(;u!==n;)o.push(u),u=Xe,a=Xe,nt++,A.test(e.charAt(Xe))?(c=e.charAt(Xe),Xe++):(c=n,0===nt&&pt(ke)),nt--,c===n?a=void 0:(Xe=a,a=n),a!==n&&(c=vt())!==n?u=a=[a,c]:(Xe=u,u=n);else o=n;o===n&&(o=Xe,123===e.charCodeAt(Xe)?(u=i,Xe++):(u=n,0===nt&&pt(O)),u!==n?(a=Wt(),125===e.charCodeAt(Xe)?(c=s,Xe++):(c=n,0===nt&&pt(D)),c!==n?o=u=[u,a,c]:(Xe=o,o=n)):(Xe=o,o=n))}return e.substring(t,Xe)}function Gt(){var e,t;for(e=[],(t=_t())===n&&(t=wt())===n&&(t=bt());t!==n;)e.push(t),(t=_t())===n&&(t=wt())===n&&(t=bt());return e}function qt(){var t,r,o,u;if(t=[],r=Xe,o=Gt(),59===e.charCodeAt(Xe)?(u=";",Xe++):(u=n,0===nt&&pt(Je)),u!==n?r=o=[o,u]:(Xe=r,r=n),r!==n)for(;r!==n;)t.push(r),r=Xe,o=Gt(),59===e.charCodeAt(Xe)?(u=";",Xe++):(u=n,0===nt&&pt(Je)),u!==n?r=o=[o,u]:(Xe=r,r=n);else t=n;return t===n&&(t=Xe,r=function(){var e,t;for(e=[],(t=_t())===n&&(t=It());t!==n;)e.push(t),(t=_t())===n&&(t=It());return e}(),(o=Pt())===n&&(o=null),(u=wt())!==n?t=r=[r,o,u]:(Xe=t,t=n),t===n&&(t=Xe,r=Gt(),(o=function(){var t,r;return t=Xe,nt++,e.length>Xe?(r=e.charAt(Xe),Xe++):(r=n,0===nt&&pt(q)),nt--,r===n?t=void 0:(Xe=t,t=n),t}())!==n?t=r=[r,o]:(Xe=t,t=n))),t}var zt=t.reservedWords||[];if((r=a())!==n&&Xe===e.length)return r;throw r!==n&&Xe<e.length&&pt({type:"end"}),function(e,t,r){return new peg$SyntaxError(peg$SyntaxError.buildMessage(e,t),e,t,r)}(rt,tt<e.length?e.charAt(tt):null,tt<e.length?lt(tt,tt+1):lt(tt,tt))}peg$subclass(peg$SyntaxError,Error),peg$SyntaxError.prototype.format=function(e){var t="Error: "+this.message;if(this.location){var r,n=null;for(r=0;r<e.length;r++)if(e[r].source===this.location.source){n=e[r].text.split(/\r\n|\n|\r/g);break}var o=this.location.start,u=this.location.source&&"function"==typeof this.location.source.offset?this.location.source.offset(o):o,a=this.location.source+":"+u.line+":"+u.column;if(n){var i=this.location.end,s=peg$padEnd("",u.line.toString().length," "),c=n[o.line-1],l=(o.line===i.line?i.column:c.length+1)-o.column||1;t+="\n --\x3e "+a+"\n"+s+" |\n"+u.line+" | "+c+"\n"+s+" | "+peg$padEnd("",o.column-1," ")+peg$padEnd("",l,"^")}else t+="\n at "+a}return t},peg$SyntaxError.buildMessage=function(e,t){var r={literal:function(e){return'"'+o(e.text)+'"'},class:function(e){var t=e.parts.map((function(e){return Array.isArray(e)?u(e[0])+"-"+u(e[1]):u(e)}));return"["+(e.inverted?"^":"")+t.join("")+"]"},any:function(){return"any character"},end:function(){return"end of input"},other:function(e){return e.description}};function n(e){return e.charCodeAt(0).toString(16).toUpperCase()}function o(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(e){return"\\x0"+n(e)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(e){return"\\x"+n(e)}))}function u(e){return e.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(e){return"\\x0"+n(e)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(e){return"\\x"+n(e)}))}function a(e){return r[e.type](e)}return"Expected "+function(e){var t,r,n=e.map(a);if(n.sort(),n.length>0){for(t=1,r=1;t<n.length;t++)n[t-1]!==n[t]&&(n[r]=n[t],r++);n.length=r}switch(n.length){case 1:return n[0];case 2:return n[0]+" or "+n[1];default:return n.slice(0,-1).join(", ")+", or "+n[n.length-1]}}(e)+" but "+function(e){return e?'"'+o(e)+'"':"end of input"}(t)+" found."};var parser$1={SyntaxError:peg$SyntaxError,parse:peg$parse},GrammarError=grammarError,GrammarLocation=grammarLocation,compiler=compiler_1,parser=parser$1,VERSION=version,RESERVED_WORDS=["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","finally","for","function","if","import","in","instanceof","new","return","super","switch","this","throw","try","typeof","var","void","while","with","null","true","false","enum","implements","interface","let","package","private","protected","public","static","yield","await","arguments","eval"],peg={VERSION:VERSION,RESERVED_WORDS:RESERVED_WORDS,GrammarError:GrammarError,GrammarLocation:GrammarLocation,parser:parser,compiler:compiler,generate:function(e,t){var r,n,o="plugins"in(t=void 0!==t?t:{})?t.plugins:[],u={parser:peg.parser,passes:(r=peg.compiler.passes,n={},Object.keys(r).forEach((function(e){n[e]=r[e].slice()})),n),reservedWords:peg.RESERVED_WORDS.slice()};return o.forEach((function(e){e.use(u,t)})),peg.compiler.compile(u.parser.parse(e,{grammarSource:t.grammarSource,reservedWords:u.reservedWords}),u.passes,t)}},peg_1=peg;return peg_1},module.exports=u()},184:(e,t,r)=>{"use strict";e.exports=function(){if("object"==typeof globalThis)return globalThis;var e;try{e=this||new Function("return this")()}catch(t){if("object"==typeof window)return window;if("object"==typeof self)return self;if(void 0!==r.g)return r.g}return e}()},689:(e,t,r)=>{var n=r(748),o=r(184);void 0===o.peggy&&(o.peggy=n),e.exports=n}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.exports}__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),(()=>{"use strict";const e=!globalThis.hasOwnProperty("window");function t(){return e||!!globalThis.assert}function r(e){if(t()&&!e){for(var r=arguments.length,o=new Array(r>1?r-1:0),u=1;u<r;u++)o[u-1]=arguments[u];const e=o.length>0?"Affirmation failed: ":"Affirmation failed";console.error(e,...o),n.forEach(e=>e());const t=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit");throw t&&(t.writable||t.set&&"function"==typeof t.set)&&(Error.stackTraceLimit=20),new Error(e+o.join("\n "))}}const n=[];const o=(e,t)=>function e(t,r){if(Array.isArray(t)){if(!Array.isArray(r))return!1;if(r.length!==t.length)return!1;for(let n=0;n<t.length;n++){if(!e(t[n],r[n]))return!1}return!0}if("object"==typeof t&&null!==t){if("object"!=typeof r||null===r||Array.isArray(r))return!1;for(const n in t)if(t.hasOwnProperty(n)){if(!r.hasOwnProperty(n))return!1;if(!e(t[n],r[n]))return!1}return!0}return r===t}(e,t),u=e=>"_metadata"!==e&&"_data"!==e,a=(e,t)=>{const r=t.cloneDeep(e),n={};return Object.keys(e.phetioElements).forEach(t=>{const r=e.phetioElements[t],o=t.split(".");let u=n;o.forEach(e=>{u[e]=u[e]||{},u=u[e]}),u._metadata={},Object.keys(r).forEach(e=>{u._metadata[e]=r[e]})}),r.phetioElements=n,r},i=(e,t,r)=>{const n=e._metadata&&e._metadata.phetioTypeName||"ObjectIO";if(t.version){const o=s(n,t,r);return r.merge(o,e._metadata)}return e._metadata},s=(e,t,n)=>{const o=t.phetioTypes[e];return assert&&r(o,"entry missing: "+e),o.supertype?n.merge(s(o.supertype,t,n),o.metadataDefaults):n.merge({},o.metadataDefaults)},c=e=>!e.hasOwnProperty("version"),l=(e,t,r,n)=>{c(t)&&(t=a(t,r)),c(e)&&(e=a(e,r));const s=r.assignIn({compareDesignedAPIChanges:!0,compareBreakingAPIChanges:!0},n),l=[],h=[],d=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];t&&s.compareDesignedAPIChanges?h.push(e):!t&&s.compareBreakingAPIChanges&&l.push(e)},f=(e,t)=>{d(e,!1),t&&d(e,!0)},m=(n,a,s,l)=>{var h;const g=n.join(".");if(a.hasOwnProperty("_metadata")){l=l||a._metadata.phetioDesigned;const u=i(a,e,r),h=i(s,t,r),m=(r,n,o)=>{const a=u[r],i=h?h[r]:{};if(a!==i){const u=c(t)&&"phetioArchetypePhetioID"===r&&null===a&&void 0===i,s=c(e)&&"phetioArchetypePhetioID"===r&&null===i&&void 0===a;u||s||(void 0===o||n?d(`${g}.${r} changed from "${JSON.stringify(a)}" to "${JSON.stringify(i)}"`,n):n||i===o&&d(`${g}.${r} changed from "${JSON.stringify(a)}" to "${JSON.stringify(i)}"`))}};if(m("phetioTypeName",!1),m("phetioEventType",!1),m("phetioPlayback",!1),m("phetioDynamicElement",!1),m("phetioIsArchetype",!1),m("phetioArchetypePhetioID",!1),m("phetioState",!1,!1),m("phetioReadOnly",!1,!0),l&&Object.keys(u).forEach(e=>{m(e,!0)}),a._data&&a._data.initialState)if(s._data&&s._data.initialState){const e=a._data.initialState,t=s._data.initialState,u=u=>{if(!r.isEqualWith(e,t,(r,a)=>{if(e===r&&t===a)return g===n[0]+".general.model.localeProperty"?u||r.validValues.every(e=>a.validValues.includes(e)):u?void 0:o(r,a)})){const e=`${g}._data.initialState differs. \nExpected:\n${JSON.stringify(a._data.initialState)}\n actual:\n${JSON.stringify(s._data.initialState)}\n`;(!u||l)&&d(e,u)}};u(!0),u(!1)}else p(e)!==p(t)&&f(g+"._data.initialState is missing from proposed API",!1)}else(null==(h=s._data)?void 0:h.initialState)&&l&&d(g+"._data.initialState is not in reference API but is in proposed",!0);for(const e in a)a.hasOwnProperty(e)&&u(e)&&(s.hasOwnProperty(e)?m(n.concat(e),a[e],s[e],l):f(`PhET-iO Element missing: ${g}.${e}`,l));for(const e in s)l&&s.hasOwnProperty(e)&&u(e)&&!a.hasOwnProperty(e)&&d(`New PhET-iO Element (or uninstrumented intermediate container) not in reference: ${g}.${e}`,!0)};m([],e.phetioElements,t.phetioElements,!1);for(const o in e.phetioTypes)if(e.phetioTypes.hasOwnProperty(o))if(t.phetioTypes.hasOwnProperty(o)){const n=e.phetioTypes[o],u=t.phetioTypes[o],a=n.methods,i=u.methods;for(const e in a)if(a.hasOwnProperty(e))if(i.hasOwnProperty(e)){const t=a[e].parameterTypes,r=i[e].parameterTypes;t.join(",")!==r.join(",")&&d(`${o}.${e} has different parameter types: [${t.join(", ")}] => [${r.join(", ")}]`);const n=a[e].returnType,u=i[e].returnType;n!==u&&d(`${o}.${e} has a different return type ${n} => ${u}`)}else d(`Method missing, type=${o}, method=${e}`);const s=n.events,c=u.events;if(s.forEach(e=>{c.includes(e)||d(`${o} is missing event: ${e}`)}),p(e)&&p(t))if(!!n.apiStateKeys!=!!u.apiStateKeys){const e=n.apiStateKeys?"present":"absent",t=`${o} apiStateKeys unexpectedly ${e}`;d(t,!0),n.apiStateKeys&&d(t,!1)}else{const e=n.apiStateKeys,t=u.apiStateKeys;if(!r.isEqual(e,t)){const n=r.difference(e,t),u=r.difference(t,e);d(o+" apiStateKeys differ:\n"+`  In reference: ${n}\n  In proposed: `+u,!0),r.every(e,e=>t.includes(e))||d(`${o} apiStateKeys missing from proposed: ${n}`,!1)}}const l=n.supertype,h=u.supertype;l!==h&&d(`${o} supertype changed from "${l}" to "${h}". This may or may not \n          be a breaking change, but we are reporting it just in case.`);const f=n.parameterTypes||[],m=u.parameterTypes;if(r.isEqual(f,m)||d(`${o} parameter types changed from [${f.join(", ")}] to [${m.join(", ")}]. This may or may not \n          be a breaking change, but we are reporting it just in case.`),e.version&&t.version){const r=e.phetioTypes[o].metadataDefaults,n=t.phetioTypes[o].metadataDefaults;!!r!=!!n?d(`${o} metadata defaults not found from "${JSON.stringify(r)}" to \n"${JSON.stringify(n)}". This may or may not be a breaking change, but we are reporting it just in case.`):r&&n&&Object.keys(r).forEach(e=>{r[e]!==n[e]&&d(`${o} metadata value ${e} changed from "${r[e]}" to "${n[e]}". This may or may not be a breaking change, but we are reporting it just in case.`)})}}else d("Type missing: "+o);return{breakingProblems:l,designedProblems:h}},p=e=>e.version&&e.version.major>=1&&e.version.minor>=1;l.toStructuredTree=a;const h=l;let d=class e{serialize(){return{major:this.major,minor:this.minor,maintenance:this.maintenance,testType:this.testType,testNumber:this.testNumber,buildTimestamp:this.buildTimestamp}}get isSimNotPublished(){return!!(this.major<1||1===this.major&&0===this.minor&&0===this.maintenance&&this.testType)}get isSimPublished(){return!this.isSimNotPublished}get majorMinor(){return`${this.major}.${this.minor}`}static deserialize(t){let{major:r,minor:n,maintenance:o,testType:u,testNumber:a,buildTimestamp:i}=t;return new e(r,n,o,{testType:u,testNumber:a,buildTimestamp:i})}compareNumber(t){return e.comparator(this,t)}static comparator(e,t){return e.major<t.major?-1:e.major>t.major?1:e.minor<t.minor?-1:e.minor>t.minor?1:e.maintenance<t.maintenance?-1:e.maintenance>t.maintenance?1:0}isAfter(e){return 1===this.compareNumber(e)}isBeforeOrEqualTo(e){return this.compareNumber(e)<=0}toString(){let e=`${this.major}.${this.minor}.${this.maintenance}`;return"string"==typeof this.testType&&(e+=`-${this.testType}.${this.testNumber}`),e}static parse(t,r){const n=t.match(/^(\d+)\.(\d+)\.(\d+)(-(([^.-]+)\.(\d+)))?(-([^.-]+))?$/);if(!n)throw new Error("could not parse version: "+t);const o=Number(n[1]),u=Number(n[2]),a=Number(n[3]),i=n[6],s=void 0===n[7]?n[7]:Number(n[7]);return new e(o,u,a,{testType:i,testNumber:s,buildTimestamp:r})}static fromBranch(t){const n=t.split(".");assert&&r(2===n.length,"Bad branch, should be {{MAJOR}}.{{MINOR}}, had: "+t);const o=Number(t.split(".")[0]),u=Number(t.split(".")[1]);return new e(o,u,0)}static ensureReleaseBranch(t){const n=e.fromBranch(t.split("-")[0]);assert&&r(n.major>0,"Major version for a branch should be greater than zero"),assert&&r(n.minor>=0,"Minor version for a branch should be greater than (or equal) to zero")}constructor(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};"string"==typeof e&&(e=Number(e)),"string"==typeof t&&(t=Number(t)),"string"==typeof n&&(n=Number(n)),"string"==typeof o.testNumber&&(o.testNumber=Number(o.testNumber));const{buildTimestamp:u=null,testType:a=null,testNumber:i=null}=o;assert&&r("number"==typeof e&&e>=0&&e%1==0,"major version should be a non-negative integer: "+e),assert&&r("number"==typeof t&&t>=0&&t%1==0,"minor version should be a non-negative integer: "+t),assert&&r("number"==typeof n&&n>=0&&n%1==0,"maintenance version should be a non-negative integer: "+n),assert&&r("string"!=typeof a||"number"==typeof i,"if testType is provided, testNumber should be a number"),this.major=e,this.minor=t,this.maintenance=n,this.testType=a,this.testNumber=i,this.buildTimestamp=u}};const f=class{register(e,t){if(!globalThis.hasOwnProperty("window"))return t;if(e.includes("."))assert&&r(!this[e],`${e} is already registered for namespace ${this.name}`),this[e]=t;else{const n=e.split(".");let o=this;for(let t=0;t<n.length-1;t++)assert&&r(!!o[n[t]],`${[this.name].concat(n.slice(0,t+1)).join(".")} needs to be defined to register ${e}`),o=o[n[t]];const u=n[n.length-1];assert&&r(!o[u],`${e} is already registered for namespace ${this.name}`),o[u]=t}return t}constructor(e){if(this.name=e,globalThis.hasOwnProperty("window")&&globalThis.phet){if("chipper"===e)return globalThis.phet.chipper=globalThis.phet.chipper||{},globalThis.phet.chipper.name="chipper",globalThis.phet.chipper.register=this.register.bind(globalThis.phet.chipper),globalThis.phet.chipper;{var n,o;const u=!(null==(o=globalThis.phet)||null==(n=o.chipper)?void 0:n.brand)||"joist"===e;t()&&!u&&assert&&r(!globalThis.phet[e],`namespace ${e} already exists`),globalThis.phet[e]=this}}}},m=new f("phetCore");m.register("Namespace",f);const g=m,A={},E=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window.phet&&window.phet.chipper&&window.phet.chipper.queryParameters&&phet.chipper.queryParameters.deprecationWarnings;t&&!A.hasOwnProperty(e)&&(A[e]=!0,console.warn("Deprecation warning: "+e))};g.register("deprecationWarning",E);const y=E;function C(e){assert&&r(null===e||e&&"object"==typeof e&&Object.getPrototypeOf(e)===Object.prototype,"object is not compatible with merge"),null!==e&&Object.keys(e).forEach(t=>{const n=Object.getOwnPropertyDescriptor(e,t);assert&&r(!n.hasOwnProperty("set"),"cannot use merge with an object that has a setter"),assert&&r(!n.hasOwnProperty("get"),"cannot use merge with an object that has a getter")})}const S=function e(n){t()&&C(n),assert&&r(null!==n,"target should not be null"),assert&&r((arguments.length<=1?0:arguments.length-1)>0,"at least one source expected");for(let o=0;o<(arguments.length<=1?0:arguments.length-1);o++){const u=o+1<1||arguments.length<=o+1?void 0:arguments[o+1];if(u){t()&&C(u);for(const t in u)if(u.hasOwnProperty(t)&&void 0!==u[t]){const o=u[t];t.endsWith("Options")&&"Options"!==t?(assert&&r(void 0!==o,"nested *Options should not be undefined"),n[t]=e(n[t]||{},o)):n[t]=o}}}return n},v=(e,t,r,n)=>S(e,t,r,n);function F(){return v}function w(){return(w=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}g.register("optionize",F);function b(e,t){return e.hasOwnProperty(t)}const I=e=>0===e.length||e.startsWith("?"),P=(e,t,r,n,o)=>{if(!e)if(n.public)if(O.addWarning(t,r,o),b(n,"defaultValue"))r=n.defaultValue;else{const e=x[n.type];L(b(e,"defaultValue"),"Type must have a default value if the provided schema does not have one."),r=e.defaultValue}else L(e,o);return r},O={warnings:[],get:function(e,t){return this.getForString(e,t,window.location.search)},getAll:function(e){return w({},this.getAllForString(e,window.location.search),{SCHEMA_MAP:e})},getForString:function(e,t,r){if(!I(r))throw new Error('Query strings should be either the empty string or start with a "?": '+r);const n=t.private&&!(()=>{try{return"true"===localStorage.getItem("phetTeamMember")}catch(e){return!1}})()?[]:D(e,r);T(e,t);let o=N(e,t,n);if(b(t,"validValues")){const r=t.validValues;o=P(R(o,r),e,o,t,`Invalid value supplied for key "${e}": ${o} is not a member of valid values: ${r.join(", ")}`)}else b(t,"isValidValue")&&(o=P(t.isValidValue(o),e,o,t,`Invalid value supplied for key "${e}": ${o}`));let u=x[t.type].isValidValue(o);if("array"===t.type&&Array.isArray(o)){let e=!0;for(let r=0;r<o.length;r++){const n=o[r];if(!x[t.elementSchema.type].isValidValue(n)){e=!1;break}if(b(t.elementSchema,"isValidValue")&&!t.elementSchema.isValidValue(n)){e=!1;break}if(b(t.elementSchema,"validValues")&&!R(n,t.elementSchema.validValues)){e=!1;break}}u=u&&e}return o=P(u,e,o,t,"Invalid value for type, key: "+e),o},getAllForString:function(e,t){const r={};for(const n in e)e.hasOwnProperty(n)&&(r[n]=this.getForString(n,e[n],t));return r},containsKey:function(e){return this.containsKeyForString(e,window.location.search)},containsKeyForString:function(e,t){if(!I(t))throw new Error('Query strings should be either the empty string or start with a "?": '+t);return D(e,t).length>0},deepEquals:function(e,t){if(typeof e!=typeof t)return!1;if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return e===t;if(null===e&&null===t)return!0;if(void 0===e&&void 0===t)return!0;if(null===e&&void 0===t)return!1;if(void 0===e&&null===t)return!1;const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;if(0===r.length)return e===t;for(let o=0;o<r.length;o++){if(r[o]!==n[o])return!1;const u=e[r[o]],a=t[r[o]];if(!O.deepEquals(u,a))return!1}return!0},removeKeyValuePair:function(e,t){if(L("string"==typeof e,"url should be string, but it was: "+typeof e),L("string"==typeof t,"url should be string, but it was: "+typeof t),L(I(e),"queryString should be length 0 or begin with ?"),L(t.length>0,"url should be a string with length > 0"),e.startsWith("?")){const r=[],n=e.substring(1).split("&");for(let e=0;e<n.length;e++){const o=n[e],u=o.split("=");decodeURIComponent(u[0])!==t&&r.push(o)}return r.length>0?"?"+r.join("&"):""}return e},removeKeyValuePairs:function(e,t){for(let r=0;r<t.length;r++)e=this.removeKeyValuePair(e,t[r]);return e},appendQueryString:function(e,t){if((t.startsWith("?")||t.startsWith("&"))&&(t=t.substring(1)),0===t.length)return e;const r=e.includes("?")?"&":"?";return e+r+t},appendQueryStringArray:function(e,t){for(let r=0;r<t.length;r++)e=this.appendQueryString(e,t[r]);return e},getQueryString:function(e){const t=e.indexOf("?");return t>=0?e.substring(t):"?"},addWarning:function(e,t,r){let n=!1;for(let o=0;o<this.warnings.length;o++){const u=this.warnings[o];if(e===u.key&&t===u.value&&r===u.message){n=!0;break}}n||(console.warn(r),this.warnings.push({key:e,value:t,message:r}))},hasWarning:function(e){let t=!1;for(let r=0;r<this.warnings.length&&!t;r++)t=this.warnings[r].key===e;return t},getQueryParametersFromString:function(e){if(e.startsWith("?")){return e.substring(1).split("&")}return[]},getSingleQueryParameterString:function(e,t){const r=this.getQueryString(t),n=this.getQueryParametersFromString(r);for(let o=0;o<n.length;o++){const t=n[o],r=t.split("=");if(decodeURIComponent(r[0])===e)return t}return null}},D=function(e,t){const r=[],n=t.slice(1).split("&");for(let o=0;o<n.length;o++){const t=n[o].split("="),u=t[0],a=t.slice(1).join("=");u===e&&(a?r.push(decodeURIComponent(a)):r.push(null))}return r},T=function(e,t){const r=x[t.type];L(t.hasOwnProperty("type"),"type field is required for key: "+e),L(x.hasOwnProperty(t.type),`invalid type: ${t.type} for key: ${e}`),b(t,"parse")&&L("function"==typeof t.parse,"parse must be a function for key: "+e),L(!(t.hasOwnProperty("validValues")&&t.hasOwnProperty("isValidValue")),"validValues and isValidValue are mutually exclusive for key: "+e),b(t,"validValues")&&L(Array.isArray(t.validValues),"isValidValue must be an array for key: "+e),b(t,"isValidValue")&&L("function"==typeof t.isValidValue,"isValidValue must be a function for key: "+e),b(t,"defaultValue")&&L(r.isValidValue(t.defaultValue),"defaultValue incorrect type: "+e),b(t,"validValues")&&t.validValues.forEach(t=>L(r.isValidValue(t),"validValue incorrect type for key: "+e)),b(t,"defaultValue")&&b(t,"validValues")&&L(R(t.defaultValue,t.validValues),"defaultValue must be a member of validValues, for key: "+e),b(t,"public")&&t.public&&"flag"!==t.type&&L(t.hasOwnProperty("defaultValue"),"defaultValue is required when public: true for key: "+e),B(e,t,r.required,r.optional),"array"===t.type&&$(e,t)},$=function(e,t){t.hasOwnProperty("separator")&&L("string"==typeof t.separator&&1===t.separator.length,`invalid separator: ${t.separator}, for key: ${e}`),L(!t.elementSchema.hasOwnProperty("public"),"Array elements should not declare public; it comes from the array schema itself."),T(e+".element",t.elementSchema)},B=function(e,t,r,n){const o=Object.getOwnPropertyNames(t);r.forEach(t=>{L(o.includes(t),`missing required property: ${t} for key: ${e}`)});const u=r.concat(n);o.forEach(t=>{L("type"===t||u.includes(t),`unsupported property: ${t} for key: ${e}`)})},N=function(e,t,r){let n;if(L(r.length<=1,"query parameter cannot occur multiple times: "+e),"flag"===t.type){n=x[t.type].parse(e,t,r[0])}else if(L(void 0!==r[0]||t.hasOwnProperty("defaultValue"),"missing required query parameter: "+e),void 0===r[0])n=t.defaultValue;else{n=x[t.type].parse(e,t,r[0])}return n},R=function(e,t){let r=!1;for(let n=0;n<t.length&&!r;n++)r=O.deepEquals(t[n],e);return r},L=function(e,t){if(!e)throw console.log(t),new Error("Query String Machine Assertion failed: "+t)},x={flag:{required:[],optional:["private","public"],parse:function(e,t,r){return null===r||void 0!==r&&r},isValidValue:e=>!0===e||!1===e,defaultValue:!0},boolean:{required:[],optional:["defaultValue","private","public"],parse:function(e,t,r){return"true"===r||"false"!==r&&r},isValidValue:e=>!0===e||!1===e},number:{required:[],optional:["defaultValue","validValues","isValidValue","private","public"],parse:function(e,t,r){const n=Number(r);return null===r||isNaN(n)?r:n},isValidValue:e=>"number"==typeof e&&!isNaN(e)},string:{required:[],optional:["defaultValue","validValues","isValidValue","private","public"],parse:function(e,t,r){return r},isValidValue:e=>null===e||"string"==typeof e},array:{required:["elementSchema"],optional:["defaultValue","validValues","isValidValue","separator","validValues","private","public"],parse:function(e,t,r){let n;return n=null===r?[]:r.split(t.separator||",").map(r=>N(e,t.elementSchema,[r])),n},isValidValue:e=>Array.isArray(e)||null===e},custom:{required:["parse"],optional:["defaultValue","validValues","isValidValue","private","public"],parse:function(e,t,r){return t.parse(r)},isValidValue:()=>!0}},M=new f("tandem");let k=class{static append(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];return n.forEach(t=>{if(assert&&r(!t.includes("."),"separator appears in componentName: "+t),""===t)return;e+=(""===e?"":".")+t}),e}static getComponentName(e){assert&&r(e.length>0);const t=e.lastIndexOf(".");return-1===t?e:e.substring(t+1,e.length)}static getParentID(e){const t=e.lastIndexOf(".");return-1===t?null:e.substring(0,t)}static getDOMElementID(e){return"phetioID:"+e}static getScreenID(e){const t=[],r=e.split(".");for(let n=0;n<r.length;n++){const e=r[n];t.push(e);const o=e.indexOf("Screen");if(o>0&&o+"Screen".length===e.length)return t.join(".")}return null}static getGroupElementIndex(e){return assert&&r(e.includes(this.GROUP_SEPARATOR),"component name for phetioID should have group element syntax"),Number(e.split(this.GROUP_SEPARATOR)[1])}static isAncestor(e,t){const r=e.split("."),n=t.split(".");for(let o=0;o<r.length;o++)if(r[o]!==n[o])return!1;return t!==e}static getArchetypalPhetioID(e){const t=e.split(".");for(let r=0;r<t.length;r++){const e=t[r];if(e.endsWith("Capsule")&&r<t.length-1)t[r+1]="archetype",r++;else{const n=e.split("-").map(e=>e.includes("_")?"archetype":e);t[r]=n.join("-")}}return t.join(".")}constructor(){assert&&r(!1,"should not construct a PhetioIDUtils")}};k.SEPARATOR=".",k.GROUP_SEPARATOR="_",k.INTER_TERM_SEPARATOR="-",k.GENERAL_COMPONENT_NAME="general",k.GLOBAL_COMPONENT_NAME="global",k.HOME_SCREEN_COMPONENT_NAME="homeScreen",k.MODEL_COMPONENT_NAME="model",k.VIEW_COMPONENT_NAME="view",k.CONTROLLER_COMPONENT_NAME="controller",k.COLORS_COMPONENT_NAME="colors",k.STRINGS_COMPONENT_NAME="strings",k.ARCHETYPE="archetype",k.CAPSULE_SUFFIX="Capsule",M.register("PhetioIDUtils",k);const V=k;function j(e,t,r,n,o,u,a){try{var i=e[u](a),s=i.value}catch(c){return void r(c)}i.done?t(s):Promise.resolve(s).then(n,o)}function U(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var u=e.apply(t,r);function a(e){j(u,n,o,a,i,"next",e)}function i(e){j(u,n,o,a,i,"throw",e)}a(void 0)}))}}function H(){return(H=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}const W="phetio.wrappers.common.promptCredentials.username";let G=null;let q=class e extends React.Component{render(){const e={marginTop:"1rem",marginRight:"1rem"},t={borderWidth:"1px",borderRadius:"4px",padding:"4px",marginTop:"2px"},r=this.retrying?React.createElement("div",null,React.createElement("span",{style:{color:"red"}},"incorrect username or",React.createElement("br",null)," password")):React.createElement("span",null);return React.createElement("div",{id:"credentialsDialog",style:{border:"black",display:"inline-block",borderWidth:"1px",borderStyle:"solid",margin:"10px",padding:"10px",position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",WebkitTransform:"translate(-50%, -50%)",borderRadius:"10px",zIndex:400,backgroundColor:"white"}},React.createElement("div",null,React.createElement("label",{htmlFor:"username",style:{display:"block"}},"PhET-iO Username"),React.createElement("input",{type:"text",id:"username",name:"username",style:t,required:!0})),React.createElement("div",{style:{marginTop:"1rem"}},React.createElement("label",{htmlFor:"password",style:{display:"block"}},"PhET-iO Password"),React.createElement("input",{type:"password",id:"password",name:"password",style:t,required:!0})),r,React.createElement("input",{id:"submitButton",type:"submit",value:"Sign in",style:e}),React.createElement("input",{id:"cancelButton",type:"submit",value:"Cancel",style:e}),React.createElement("div",{style:{marginTop:"10px"}},React.createElement("input",{type:"checkbox",id:"checkbox"}),React.createElement("label",{htmlFor:"checkbox"},"Remember username")))}componentDidMount(){const e=document.getElementById("submitButton"),t=document.getElementById("cancelButton"),r=document.getElementById("username"),n=document.getElementById("password"),o=document.getElementById("checkbox");let u="",a=!1;try{a="true"===localStorage.getItem("phetio.wrappers.common.promptCredentials.storeUsername"),a&&(u=localStorage.getItem(W)||"")}catch(c){}const i=()=>{const e=r.value.trim(),t=n.value.trim();if(0!==e.length&&0!==t.length){o.checked&&localStorage.setItem(W,e);const r=document.getElementById("credentialsDialog");r.parentElement.removeChild(r),this.resolve({username:e,password:t})}},s=e=>{"Enter"===e.key&&i()};r.value=u,o.checked=a,r.addEventListener("keyup",s),n.addEventListener("keyup",s),e.addEventListener("click",i),t.addEventListener("click",()=>{const e=document.getElementById("credentialsDialog");e.parentElement.removeChild(e),this.resolve("cancelled")}),0===u.length?r.focus():n.focus(),o.addEventListener("click",()=>{const e=o.checked;localStorage.setItem("phetio.wrappers.common.promptCredentials.storeUsername",e?"true":"false"),e||localStorage.removeItem(W)})}static show(t){return U((function*(){return new Promise(r=>{let n=document.getElementById("root");n||(n=document.createElement("div"),n.id="root",document.body.appendChild(n)),assert&&assert(n,"root should exist"),ReactDOM.createRoot(n).render(React.createElement(e,{resolve:r,retrying:t}))})}))()}static getResourceWithCredentials(t,r){var n=this;return U((function*(){(r=r||{}).phetRetrying=r.phetRetrying||!1;const o=G||(yield e.show(r.phetRetrying));if("cancelled"===o)return null;r.headers={Authorization:"Basic "+btoa(`${o.username}:${o.password}`)};const u=yield fetch(t,r);return u.ok?(G=o,u):(G&&(G=null),n.getResourceWithCredentials(t,H({},r,{phetRetrying:!0})))}))()}constructor(e){super(e),this.resolve=e.resolve,this.retrying=e.retrying}};const z=["allWorkDone","reportProcessors","reportingContext","gracefullyDeletedState","clientMessages"],Y=z,Q=["allWorkDone","reportProcessors","gracefullyDeletedState"],K=[...Y,"clientMessages","processedNothing"];function J(e,t,r){r.gracefullyDeletedState[e]=t[e],delete t[e]}const X={PropertyIO:(e,t,r,n,u)=>{const a=t.validValues,i=r.validValues;if(Array.isArray(a)&&Array.isArray(i))for(const o of a)i.includes(o)||e.endsWith(".general.model.localeProperty")||(n.propertyValidValueNoLongerSupported.push({phetioID:e,missingValue:o}),i.includes(t.value)||(n.switchedFromInvalidValueToNewDefault.push(e),t.value=r.value));const s=_.cloneDeep(r);delete s.validValues,o(s,t)||Z(e,t,r,u,n)},NumberPropertyIO:(e,t,r,n,o)=>t.range.min>=r.range.min&&t.range.max<=r.range.max||(Z(e,t,r,o,n),!1)};function Z(e,t,r,n,o){o.initialStatesAreIncompatible.push({phetioID:e,migratedInitialState:t,newInitialState:r}),J(e,n,o)}__webpack_require__(689);const ee=window.peggy;assert&&assert(ee,"window.peggy is a required dependency for a MigrationEngine, please ensure this is available before running");const te=ee.generate('\n/**\n* This parser is meant to only parse a single level. Instead of providing a nested tree, it parses only \n* a single layer deep to provide the parameter IOType(s). This is meant to work in conjunction with an API so that you\n* can then look up the stateSchema values manually given the parsed parameter IOTypes, if applicable. \n*/\n\n{\n  function isIOType(text) {\n    return text.endsWith(\'IO\') && text.toUpperCase() !== text && text !== "EnumerationIO";\n  }\n}\n\n// Top level entrypoint, kinda like a main()\nstart\n  = StateValueList\n\n// Make a newline separated list, for easier tests. Most often we just support a single entity, but you CAN \n// parse multiple at once.\nStateValueList\n  = StateValue|1.., \'\\n\'|\n\n// StateValue defines what possible states can be. Each entry is a separate parsing for a stateSchemaValue\nStateValue\n  = orIOState\n    ////////////////////\n    // Any state values that may match on a parameter type need to go above this!!\n    / parameterType\n    / nullableState\n    / termListBar // For the stateSchema value of EnumerationIO\n    / arrayState\n    / mapState\n    / stateValue\n\n\n// "parameter" here is defined as a value that a StateValue needs. It can be an IOType, or possible value for \n// the state (like an enum)\nparameterType\n  = orIOType\n    / StringUnionState\n    / EnumerationState\n    //////////////////////\n    // IOType must go after the above hard coded IOType-related migrationProcessors because otherwise it will \n    // match on something like "OrIO" or "StringUnionIO" and then complain when it gets in deeper to find the \n    // other parts don\'t match\n    / IOType\n\n// IOType will end in IOType, could be BooleanIO or ArrayIO<BooleanIO>\nIOType\n  = compoundType\n    / typeName:typeName\n\n// Comma-separated IOTypes, spaces next to commas supported but optional\nIOTypeListComma\n  = parameterType|1.., "," _ |\n\n// Bar-separated IOTypes, spaces next to commas supported but optional\nIOTypeListBar\n  = parameterType|2.., "|" |\n\n// IOType, without angle bracket support (only PropertyIO, not PropertyIO<BooleanIO>)\ntypeName\n  = ioTypeName:([A-Za-z0-9]*) &{ return isIOType(ioTypeName.join(\'\')); } { return {_ioTypeName: ioTypeName.join(\'\')}; }\n\n// IOType with parameter IOTypes, requiring angle brackets (PropertyIO<BooleanIO>)\ncompoundType\n  = name:typeName "<" parameterType:parameterType ">"  {return { _ioTypeName: text(), parameterIOTypes: [parameterType._ioTypeName] };}\n\n// The current serialization for infinite values in InfiniteNumberIO\ninfinity\n  =  \'\\\'POSITIVE_INFINITY\\\'\'\n     / \'\\\'NEGATIVE_INFINITY\\\'\'\n\n// Any value-based state, never an IOType.\nstateValue\n  = infinity\n    / valueIOState\n    / booleanIOState\n    / numberIOState\n    / stringIOState\n    / objectIOState\n    / float64ArrayIOState\n    / someValues:[A-Za-z_0-9]* &{ return !isIOType(someValues.join(\'\')); } {\n         return {\n           type: \'StateValue\', parameterIOTypes: [], orderedParameters: true, \n           parameterValues: [someValues.join(\'\')], _valueName: someValues.join(\'\') \n         };\n      }\n\n// Parsed state for NullableIO\nnullableState\n  = "null|<" parameterType:parameterType ">" { return { type: \'Nullable\', parameterIOTypes:[parameterType._ioTypeName] };}\n\n// Parsed state for ArrayIO\narrayState\n  = "Reference"? "Array<" parameterType:StateValue ">" { return {\n      type: \'Array\',\n      parameterIOTypes:[ parameterType._ioTypeName ]\n    };}\n\n// Parsed state for MapIO\nmapState\n  = "Map<" parameter1:IOType "," parameter2:IOType ">" { return { \n    type: \'Map\', \n    orderedParameters: true, \n    parameterIOTypes:[parameter1._ioTypeName, parameter2._ioTypeName] \n  };}\n\n// Parsed state for OrIO\norIOState\n  = ioTypes:IOTypeListBar { return {type: \'Or\',parameterIOTypes:ioTypes.map(t=>t._ioTypeName)};}\n\n// Parsed state for ValueIO\nvalueIOState\n  = \'*\'  { return {type: "Value", parameterIOTypes: []}; }\n\n// Parsed state for BooleanIO\nbooleanIOState\n  = \'boolean\'  { return { type: \'Boolean\', parameterIOTypes: [], _valueName: \'boolean\' } }\n\n// Parsed state for NumberIO\nnumberIOState\n  = \'number\'  { return {type: "Number", parameterIOTypes: [], _valueName: \'number\'}; }\n\n// Parsed state for StringIO\nstringIOState\n  = \'string\'  { return {type: "String", parameterIOTypes: [], _valueName: \'string\'}; }\n\n// Parsed state for ObjectLiteralIO\nobjectIOState\n  = \'object\'  { return {type: "Object", parameterIOTypes: [], _valueName: \'object\'}; }\n\n// Parsed state for Float64ArrayIO\nfloat64ArrayIOState\n  = \'Float64Array\'  { return {type: "Float64Array", parameterIOTypes: [], _valueName: \'Float64Array\'}; }\n\n// Parsed compound IOType for OrIO\norIOType\n  = "OrIO<" parameterTypes:IOTypeListComma ">"  {return { _ioTypeName: text(), parameterIOTypes: parameterTypes.map(x=>x._ioTypeName) };}\n\n// Parsed IOType for EnumerationIO, providing parameterValues for each enum value\nEnumerationState\n  = "EnumerationIO(" values:termListBar ")" { return { type: "Enumeration", parameterIOTypes:[], _ioTypeName: text(), parameterValues: values }; }\n\n// Parsed IOType for StringUnionIO, providing parameterValues for each string value\nStringUnionState\n  = "StringUnionIO<" values:termListComma ">" {\n      return { type: "StringUnion", parameterIOTypes:[], _ioTypeName: text(), parameterValues: values.map( x=> x._valueName ) };\n    }\n\n// support for comma separation, no spaces allowed\ntermListComma\n  = values:(stateValue|1.., "," |)\n\n// support for bar separation, no spaces allowed. For the stateSchema value of EnumerationIO\ntermListBar\n  = values:(stateValue|2.., "|" |) { return { \n    type: \'StateValueList\', \n    parameterIOTypes: [], \n    parameterValues: values.map( x => {\n      return x._valueName || x; // If it doesn\'t have a _valueName, assume it is a string itself\n    } )\n  } };\n\n_ "whitespace"\n  = [ \\t\\n\\r]*\n  \n'),re=V.append(V.GENERAL_COMPONENT_NAME,V.MODEL_COMPONENT_NAME,V.STRINGS_COMPONENT_NAME),ne=["LinkedElementIO","DerivedPropertyIO"];function oe(e,t,r,n,u,a){if(_.some(ne,e=>r.getPhetioTypeName(t).startsWith(e)))return void J(e,u,a);if(t.includes(re)&&!n.phetioElements.hasOwnProperty(t)&&a.missingStringPhetioElements.push(e),!r.getPhetioState(t))return void(assert&&assert(!u.hasOwnProperty(e),"unstateful item in the state!??!?! "+e));if(!n.phetioElements.hasOwnProperty(t))return!a.phetioIDNotInNewAPI.includes(t)&&a.phetioIDNotInNewAPI.push(t),void J(e,u,a);if(!n.getPhetioState(t))return!a.notStatefulAnymore.includes(t)&&a.notStatefulAnymore.push(t),void J(e,u,a);const i=r.getPhetioTypeName(t),s=n.getPhetioTypeName(t),c=a.stateSchemaIncompatible.length,l=function e(t,r,n,o,u,a,i,s){const c=ue(r,i),l=ue(n,s);if(null===c||null===l){return!!i.getTypeHierarchy(r).includes("DynamicMarkerIO")||(a.stateSchemaIncompatible.push({phetioID:t,problem:["state schema not found for one of the following types:",r,n]}),!1)}if("string"==typeof c||"string"==typeof l){if("string"!=typeof c||"string"!=typeof l)return a.stateSchemaIncompatible.push({phetioID:t,problem:["one state schema was a value string and one was composite: migratedStateSchema = ",c,"newStateSchema = ",l,u,"full state schema",ue(i.getPhetioTypeName(t),i)]}),!1;{const r=te.parse(c),n=te.parse(l);assert&&assert(1===r.length,"only one parsed stateSchema expected"),assert&&assert(1===n.length,"only one parsed stateSchema expected");const p=r[0],h=n[0];if(!function(e,t){if(e.type!==t.type)return!1;if(!!e.parameterValues!=!!t.parameterValues)return!1;if(e.parameterValues&&t.parameterValues){if(e.orderedParameters!==t.orderedParameters)return!1;if(e.orderedParameters&&!_.isEqual(e.parameterValues,t.parameterValues))return!1;if(!e.orderedParameters&&0!==_.difference(e.parameterValues,t.parameterValues).length)return!1}return!0}(p,h))return a.stateSchemaIncompatible.push({phetioID:t,problem:["incorrect, state schema values are not the same!!",p,h]}),!1;const d=p.parameterIOTypes,f=h.parameterIOTypes;if(d.length!==f.length)return a.stateSchemaIncompatible.push({phetioID:t,problem:["parameter IOTypes order length difference, migratedParameterIOTypes = ",d,", newParameterIOTypes = ",f]}),!1;"Or"===p.type&&assert&&assert(p.parameterIOTypes.length>1,"OrIO deserves 2 or more parameter IOTypes."),"Map"===p.type&&assert&&assert(2===p.parameterIOTypes.length,"MapIO deserves 2 parameter IOTypes.");let m=!0;for(let c=0;c<d.length;c++){const r=e(t,d[c],f[c],o,u,a,i,s);m=m&&r}return m}}{const r=Object.keys(c),n=Object.keys(l);let p=!0;return r.forEach(e=>{if(!n.includes(e)){const n=(r=o,""===(i=u)?r:_.get(r,i));n?(a.stateSchemaIncompatible.push({phetioID:t,problem:["graceful support for migratedStateKey",e,"in phetioID",t]}),delete n[e]):(a.stateSchemaIncompatible.push({phetioID:t,problem:["state is not defined at level",t,e,u]}),p=!1)}var r,i}),n.forEach(e=>{r.includes(e)||(a.stateSchemaIncompatible.push({phetioID:t,problem:["new key in state: ",t,", newStateKey = ",e,u]}),p=!1)}),r.forEach(r=>{if(n.includes(r)){const n=e(t,c[r],l[r],o,((e,t)=>{if(""!==e){return`${e}${t.startsWith("[")?"":"."}${t}`}return assert&&assert(!t.startsWith("["),"cannot add bracket access to an empty path"),t})(u,r),a,i,s);p=p&&n}else a.stateSchemaIncompatible.push({phetioID:t,problem:["new state schema does not have composite key:",r,t]}),p=!1}),p}}(t,i,s,u[e],"",a,r,n);assert&&!l&&assert(c<a.stateSchemaIncompatible.length,"should have added to report.stateSchemaIncompatible if not compatible"),l?function(e,t,r,n,u){var a;const i=null==(a=r.getData(e))?void 0:a.initialState;if(i){var s;const a=null==(s=t.getData(e))?void 0:s.initialState;if(!a)return void Z(e,a,i,n,u);if(!o(i,a)){const o=t.getTypeHierarchy(t.getPhetioTypeName(e));let s=!1;o.forEach(t=>{Object.keys(X).forEach(o=>{if(t.startsWith(o)){const c=r.phetioTypes[t].apiStateKeys||[];X[o](e,_.pick(a,c),_.pick(i,c),u,n),s=!0}})}),s||Z(e,a,i,n,u)}}}(t,r,n,u,a):J(e,u,a)}function ue(e,t){const r=t.phetioTypes[e];if(assert&&assert(r,e+" is not in API"),"ObjectIO"===e)return null;if("string"==typeof r.stateSchema)return r.stateSchema;if(r.stateSchema){let e=null;return r.supertype&&(e=ue(r.supertype,t)),"string"==typeof e?r.stateSchema:_.merge({},e,r.stateSchema)}return r.supertype?ue(r.supertype,t):null}const ae={OBJECT_IO_TYPE_NAME:"ObjectIO",EVENT_TYPE_MODEL:"MODEL",PHET_IO_OBJECT_METADATA_DEFAULTS:{phetioTypeName:"ObjectIO",phetioDocumentation:"",phetioState:!0,phetioReadOnly:!1,phetioEventType:"MODEL",phetioHighFrequency:!1,phetioPlayback:!1,phetioDynamicElement:!1,phetioIsArchetype:!1,phetioFeatured:!1,phetioDesigned:!1,phetioArchetypePhetioID:null},METADATA_KEY_NAME:"_metadata",DATA_KEY_NAME:"_data",BASE_TANDEM_CHARACTER_CLASS:"a-zA-Z0-9[\\],",BASE_DYNAMIC_TANDEM_CHARACTER_CLASS:"a-zA-Z0-9[\\],_",BASE_DERIVED_TANDEM_CHARACTER_CLASS:"a-zA-Z0-9[\\],_\\-"};M.register("TandemConstants",ae);const ie=["_metadata","_data"],se=ae.METADATA_KEY_NAME,ce=ae.DATA_KEY_NAME;let le=class e{get phetioTypes(){return this.phetioAPI.phetioTypes}set phetioTypes(e){this.phetioAPI.phetioTypes=e}get phetioElements(){return this.phetioAPI.phetioElements}set phetioElements(e){this.phetioAPI.phetioElements=e}getPhetioIDs(){return Object.keys(this.phetioElements)}getPhetioTypeNames(){return Object.keys(this.phetioTypes)}deletePhetioID(e){assert&&assert(this.phetioElements[e],"phetioID is not in the API: "+e),delete this.phetioElements[e]}getPhetioTypeName(e){return this.getMetadata(e).phetioTypeName}getPhetioState(e){return this.getMetadata(e).phetioState}getMetadata(e){const t=V.getArchetypalPhetioID(e);return assert&&assert(this.phetioElements[t],"archetypalPhetioID is not in the API: "+t),this.phetioElements[t]._metadata}getInitialState(e){var t;return assert&&assert(this.phetioElements[e],"phetioID is not in the API: "+e),null==(t=this.phetioElements[e]._data)?void 0:t.initialState}getData(e){return this.phetioElements[e]._data}getPhetioElementCount(){return Object.keys(this.phetioElements).length}getTypeHierarchy(e){const t=[];let r=e;for(;r;)t.push(r),r=this.phetioTypes[r].supertype;return assert&&assert(t[0]===e),assert&&assert("ObjectIO"===t[t.length-1]),t}hasPhetioElement(e){return this.phetioElements.hasOwnProperty(e)}getStateSchema(e){return assert&&assert(this.phetioTypes[e],"IOType is not in the API: "+e),this.phetioTypes[e].stateSchema}static getMetadataDefaults(t,r){const n=r.phetioTypes[t];return n.supertype?_.merge(e.getMetadataDefaults(n.supertype,r),n.metadataDefaults):_.merge({},n.metadataDefaults)}static getMetadataValues(t,r){const n=t[se]&&t[se].phetioTypeName||"ObjectIO";if(r.version){const o=e.getMetadataDefaults(n,r);return _.merge(o,t[se])}return t[se]}static flattenAPI(t,r){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const u=Object.keys(r);return r.hasOwnProperty("_metadata")&&(o[n]={[se]:e.getMetadataValues(r,t)},r[ce]&&(o[n][ce]=r[ce])),u.forEach(u=>{ie.includes(u)||e.flattenAPI(t,r[u],n?n+"."+u:u,o)}),o}getRelatedTypesForTypeName(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const n=this.phetioTypes[t];assert&&assert(n,"related type not in API: "+t),r.push(t);const o=[];n.supertype&&o.push(n.supertype),n.stateSchema&&o.push(...e.getRelatedTypesForStateSchema(n.stateSchema));const u=_.concat(...o.map(e=>r.includes(e)?[]:this.getRelatedTypesForTypeName(e,r)),[t]),a=_.uniq(u);return assert&&assert(a.includes(t),'"Related types" should includes myself in it: '+n.typeName),a}static getRelatedTypesForStateSchema(e){return"string"==typeof e?te.parse(e)[0].parameterIOTypes:Object.values(e)}constructor(t){const r=e.flattenAPI(t,t.phetioElements);this.phetioAPI=_.assignIn({},t,{phetioElements:r}),this.version=t.version}};const pe=O.getAll({phetioMigrationReport:{type:"string",validValues:["assert","client","dev","verbose"],defaultValue:"client"}});function he(e,t,r,n,o,u,a){try{var i=e[u](a),s=i.value}catch(c){return void r(c)}i.done?t(s):Promise.resolve(s).then(n,o)}let de=class e{migrate(e){const t=new class{reportForContext(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.reportingContext;if("client"===e)this.clientMessages.length>0?console.log("Migration Details:\n"+this.clientMessages.join("\n")):console.log("Migration successful; no further details.");else if("dev"===e){const e=this.getPrunedReport((e,t)=>z.includes(e)||Array.isArray(t)&&0===t.length||t instanceof Object&&0===Object.keys(t).length);0===Object.keys(e).length?console.log("Dev Report: Congratulations, there are no reported problems"):console.log("Dev Report:",e)}else if("verbose"===e)console.log("Verbose Report:",this);else if("assert"===e){let e;for(e in this)if(this.hasOwnProperty(e)&&!K.includes(e)){const t=this[e],r=this.getPrunedReport(e=>Y.includes(e));Array.isArray(t)?assert&&assert(0===t.length,`MigrationReport problem: ${e} \n\n ${JSON.stringify(r,null,2)}`,r):t instanceof Object&&assert&&assert(0===Object.keys(t).length,`MigrationReport problem: ${e} \n\n ${JSON.stringify(r,null,2)}`,r)}}}getPrunedReport(e){const t=_.clone(this);let r;for(r in t)if(t.hasOwnProperty(r)){e(r,t[r])&&delete t[r]}return t}pushReportProcessor(e){this.reportProcessors.push(e)}isProduction(){return"client"===this.reportingContext}equalsReport(e){let t;for(t in this)if(this.hasOwnProperty(t)&&!Q.includes(t)&&!_.isEqual(e[t],this[t]))return!1;return!0}constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"dev";this.reportingContext=e,this.clientMessages=[],this.stateSchemaIncompatible=[],this.initialStatesAreIncompatible=[],this.propertyValidValueNoLongerSupported=[],this.switchedFromInvalidValueToNewDefault=[],this.phetioIDNotInNewAPI=[],this.notStatefulAnymore=[],this.incompletePhetioElementRenames=[],this.incompletePhetioElementDeletes=[],this.processedNothing=[],this.newNeededIOTypes={},this.relatedIOTypesForValueRenameHaveUnexpectedSchemas=[],this.missingStringPhetioElements=[],this.reportProcessors=[],this.allWorkDone={},this.gracefullyDeletedState={}}}(pe.phetioMigrationReport),r={command:e,report:t};if("phetioEngine"===e.phetioID&&"setState"===e.method){const r=_.cloneDeep(this.oldAPI),n=e.args[0];this.migrationProcessors.forEach(e=>{e.process(r,n,this.newAPI,t)}),function(e,t,r,n){const o=[];Object.keys(r).forEach(u=>{const a=V.getArchetypalPhetioID(u);o.push(a),oe(u,a,e,t,r,n)}),e.getPhetioIDs().forEach(u=>{o.includes(u)||oe(u,u,e,t,r,n)}),n.reportProcessors.forEach(e=>e.processReport(n,r))}(r,this.newAPI,n,t),t.reportForContext()}return r}static create(t,r,n){var o,u=this;return(o=function*(){if(t===r)return null;if(!Xe.IS_BUILT)try{yield u.loadLocalMigrationProcessors(n)}catch(s){console.error("Could not load local, unbuilt migration processors, good luck.")}window.phetio.migrationProcessors||console.log("No migration processors found"),assert&&window.phetio.migrationProcessors&&assert(!Array.isArray(window.phetio.migrationProcessors),"migrationProcessors are an object with versions as keys, and value as an array of MigrationProcessors");const o=e.getRelevantProcessorsInOrder(window.phetio.migrationProcessors,t,r,Xe.IS_BUILT);0===o.length&&console.log("No migration processors will be applied to this migration.");const a=yield Xe.getAPIFile(t),i=yield Xe.getAPIFile(r);return a&&i?new e(a,i,o):(console.error("Could not load API files for migration engine"),window.alert("Could not load API files for migration engine"),null)},function(){var e=this,t=arguments;return new Promise((function(r,n){var u=o.apply(e,t);function a(e){he(u,r,n,a,i,"next",e)}function i(e){he(u,r,n,a,i,"throw",e)}a(void 0)}))})()}static loadLocalMigrationProcessors(e){return new Promise((t,r)=>{const n=window.onerror;window.onerror=function(e,t,o,u,a){return window.onerror=n,r(a),!1};const o=document.createElement("script");o.type="module",o.onload=()=>{window.onerror=n,document.body.removeChild(o),t()},o.onerror=e=>{window.onerror=n,r(e)},o.src=`../chipper/dist/js/phet-io-sim-specific/repos/${e}/js/${e}-migration-processors.js`,document.body.appendChild(o)})}static getRelevantVersionsInOrder(e,t,r,n){const o=e.filter(e=>d.parse(e).isAfter(d.parse(t))&&(!n||d.parse(e).isBeforeOrEqualTo(d.parse(r))));return o.sort((e,t)=>{const r=d.parse(e),n=d.parse(t);return r.compareNumber(n)}),o}static getRelevantProcessorsInOrder(t,r,n,o){if(!t)return[];if(r===n)return[];const u=e.getRelevantVersionsInOrder(Object.keys(t),r,n,o),a=[];return u.forEach(e=>{a.push(...t[e])}),a}constructor(e,t,r){this.migrationProcessors=r,this.oldAPI=new le(e),this.newAPI=new le(t)}};function fe(e){return[{name:"locale",phetioID:e+".general.model.localeProperty",queryParameterValueToPhetioValue:_.identity,queryParameterSchemaType:"string"},{name:"regionAndCulture",phetioID:e+".general.model.regionAndCultureProperty",queryParameterValueToPhetioValue:_.identity,queryParameterSchemaType:"string"}]}const me=fe("").map(e=>e.name),ge=fe;window.phetio=window.phetio||{};const Ae={"standardPhetioWrapperTemplateSkeleton.html":`<!DOCTYPE HTML>
<!--
Copyright 2016-2022, University of Colorado Boulder
This PhET-iO file requires a license
USE WITHOUT A LICENSE AGREEMENT IS STRICTLY PROHIBITED.
For licensing, please contact phethelp@colorado.edu

This is an auto generated file and should not be edited. To get an editable PhET-iO wrapper see the example template in
the wrapper index.
-->
<html lang="en">
<head>
  <meta charset="utf-8"/>
  <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="Description" content="Minimal template for developing a wrapper.">
  <meta name="robots" content="none">
  <title>Standard PhET-iO Wrapper</title>

  <!--
  This CSS Launches the Simulation iframe in fullscreen.  To use a non-fullscreen iframe, delete the use of the "fullscreen"
  class in the iframe below and adjust the body/html css if needed.
  -->
  <style>

    /*Show the iframe at full size with no margins or padding*/
    body, html {
      margin: 0;
      padding: 0;
      height: 100%;
      width: 100%;
      overflow: hidden;
    }

    .fullscreen {
      border: none;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: black;
    }
  </style>
</head>
<body>
<iframe id="sim" width="{{{WIDTH}}}" height="{{{HEIGHT}}}" class="fullscreen" allowfullscreen></iframe>
<!--{{{LOAD_PHET_IO_SCRIPTS}}}-->
<script> <!--{{{TYPE_MODULE_SCRIPT_TAG}}}-->

//{{{BEGINNING_OF_MAIN_SCRIPT}}}
const simFrame = document.getElementById( 'sim' );
const phetioClient = new phetio.PhetioClient( simFrame );
phetioClient.launchSimulation( {
  queryString: '{{QUERY_STRING}}',
  passThroughQueryParameters: [ /*{{PASS_THROUGH_QUERY_STRINGS}}*/ ],
  displaySim: false,
  targetAPIVersion: '2.0.0-rc.3',
  forwardZoomKeyboardEventsToSim: true,
  onSimInitialized: async function() {
    //{{{ON_SIM_INITIALIZED}}}
  }
} );

// NOTE: This variable name global is PhET-iO client facing, do not rename.
window.phetioClient = phetioClient;

</script>
</body>
</html>`,"customPhetioWrapperTemplateSkeleton.html":`<!DOCTYPE HTML>
<!--
Copyright 2016-2018, University of Colorado Boulder
This PhET-iO file requires a license
USE WITHOUT A LICENSE AGREEMENT IS STRICTLY PROHIBITED.
For licensing, please contact phethelp@colorado.edu

This is a minimal template for developing a wrapper. It can be used to create a very powerful wrapper with many PhET-iO
features. It is meant to be a starting point. See "PhetioClient.launchSimulation()" documentation to understand how to customize
the PhET-iO simulation. This template is not meant to demonstrate the complete PhET-iO feature set. There are some
more advanced features outlined in some wrapper suite examples, and in the API docs.
-->
<html lang="en">
<head>
  <meta charset="utf-8"/>
  <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="Description" content="Minimal template for developing a wrapper.">
  <meta name="robots" content="none">
  <title>Custom PhET-iO Wrapper Template</title>

  <!--
  This CSS Launches the Simulation iframe in fullscreen.  To use a non-fullscreen iframe, delete the use of the "fullscreen"
  class in the iframe below and adjust the body/html css if needed.
  -->
  <style>

    /*Show the iframe at full size with no margins or padding*/
    body, html {
      margin: 0;
      padding: 0;
      height: 100%;
      width: 100%;
      overflow: hidden;
    }

    .fullscreen {
      border: none;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: black;
    }
  </style>
</head>
<body>

<!-- Specify the simulation to run in the iframe. -->
<iframe id="sim" width="{{{WIDTH}}}" height="{{{HEIGHT}}}" class="fullscreen" allowfullscreen></iframe>

<!--Load the PhET-iO library script.-->
<!--PhET-iO simulation versions are typically specified as MAJOR.MINOR and automatically use the latest MAINTENANCE
release in that series. This way, the simulation and associated wrappers will seamlessly receive bugfixes. In the rare
case that a wrapper cannot use the latest maintenance version of a simulation, it can specify MAJOR.MINOR.MAINTENANCE
to receive that specific version.-->
<!--{{{LOAD_PHET_IO_SCRIPTS}}}-->

<script> <!--{{{TYPE_MODULE_SCRIPT_TAG}}}-->

/**
 * Construct the sim iframe phet-io client that can be used to interface between the sim. The phetioClient can send messages
 * and receive messages as changes occur in the sim.
 */
const simFrame = document.getElementById( 'sim' );
const phetioClient = new phetio.PhetioClient( simFrame );

/**
 * Start the simulation with specific customizations and callbacks. This outlines some examples, but for a complete
 * list, see full documentation and available in the API docs for PhetioClient.prototype.launchSimulation.
 *
 * To launch the sim with louder, more eager error reporting, add ?phetioDebug=true to the querystring while testing
 * and exploring.
 */
phetioClient.launchSimulation( {

  /**
   * Extra query parameters to append to the sim URL when loading the sim.
   * NOTE: Please see API documentation for supported query parameters.
   */
  queryString: '',

  /**
   *  Query parameters can be supplied in the launchSimulation primary argument above. If wanting to support passing through
   *  query parameters supplied to the wrapper, set this to true. However, duplicate query parameters are not allowed.
   *  To block all query parameters from passing through, use false.
   *  Alternatively, you can also provide a list of allowed parameter keys to pass through, like '[ 'locale' ]'.
   */
  passThroughQueryParameters: [ 'locale', 'regionAndCulture' ],

  /**
   * Data stream customizations:
   * Choose what the sim should emit to the data stream in addition to events from PhET-iO Elements.
   * This can be overridden by their query parameter counterparts in the wrapper.
   */

  /**
   *  By default, the sim will be immediately displayed when it starts up. Set this flag to false in order to stay on
   * the splash screen until after customizations have been applied to the sim from a wrapper. Display the sim
   * manually by calling 'await phetioClient.invokeAsync( 'phetioEngine', 'displaySimulation' )'.
   */
  displaySim: true,

  /**
   * Called for each new event from the sim's data stream.
   *
   * NOTE ON PERFORMANCE: This option will cause many messages to be sent from the sim for the data stream feature.
   * If not using this, you should delete it.
   *
   * @param {Object} event - for object signature see "Data Stream" section of the dev guide.
   * @param {Object} rootEvent - This callback will be called on every new event, even when events are children of
   *                             other, events. In this case this param is a reference to the root ancestor of this
   *                             event's hierarchy. The "event parameter" will either be the same as the "rootEvent"
   *                             parameter, or the "rootEvent" will be a child (or descendant) to the "event"
   *                             parameter.
   */
  onEvent: function( event, rootEvent ) {},

  /**
   * Add a listener that is called when PhET-iO is ready, before the simulation has started initialization
   */
  onPhetioInitialized: async function() {

    /* add a listener called whenever a phet-io element is created in the simulation, print out that created phetioID */
    await phetioClient.invokeAsync( 'phetioEngine.phetioElementAddedEmitter', 'addListener', [
      function( phetioID ) {
        console.log( phetioID + ' has been created' );
      } ] );
  },

  /**
   * Add a listener that is called after the simulation has been initialized
   */
  onSimInitialized: async function() {
    console.log( 'sim initialized' );

    /* Invoke a method on a variable in the simulation. Refer to the Studio wrapper to see all elements and methods. */
    const state = await phetioClient.invokeAsync( 'phetioEngine', 'getState' );
    console.log( 'got the simulation state: ' + JSON.stringify( state, null, 2 ) );
  },

  /**
   * Callback when the sim encounters an error. Instead of attaching this global listener, you can also receive
   * individual  errors via callbacks from "phetio.PhetioClient.invoke" or "phetio.PhetioClient.invokeSequence"
   */
  onError: function( error ) {},

  /**
   * Set the simulation version that this wrapper was developed with. This is used to migrate this wrapper to future
   * versions of PhET-iO.
   */
  targetAPIVersion: '2.0.0-rc.3',

  /**
   * Forward all key commands to the simulation iframe, preventing default pan and zoom behavior on the parent window.
   * Typically important for a full-screen sim iframe.
   */
  forwardZoomKeyboardEventsToSim: true
} );
</script>
</body>
</html>`};window.phetio.loadWrapperTemplate=(e,t)=>{t=_.merge({htmlFilename:"customPhetioWrapperTemplateSkeleton.html",pathToRoot:"./",width:"1024",height:"668",beginningOfMainScript:"",onSimInitialized:""},t),assert&&assert("/"===t.pathToRoot.charAt(t.pathToRoot.length-1),"pathToRoot should end in a slash");const r=phetio.PhetioClient.IS_BUILT,n=r?t.pathToRoot+"wrappers/":t.pathToRoot+"phet-io-wrappers/",o=n=>{n=(n=(n=(n=(n=(n=r?n.replace(new RegExp("\x3c!--{{{LOAD_PHET_IO_SCRIPTS}}}--\x3e","gm"),`<script src="${phetio.PhetioClient.PHET_IO_LIB_ABSOLUTE_PATH}"><\/script>`):n.replace(new RegExp("^.*{{{LOAD_PHET_IO_SCRIPTS}}}.*$","gm"),`<script src="${t.pathToRoot}sherpa/lib/react-18.1.0.production.min.js"><\/script>\n<script src="${t.pathToRoot}sherpa/lib/react-dom-18.1.0.production.min.js"><\/script>\n<script src="${t.pathToRoot}sherpa/lib/pako-2.0.3.min.js"><\/script>\n<script src="${t.pathToRoot}sherpa/lib/lodash-4.17.4.min.js"><\/script>\n<script src="${t.pathToRoot}query-string-machine/js/QueryStringMachine.js"><\/script>\n<script src="${t.pathToRoot}assert/js/assert.js"><\/script>\n<script type="module" src="${t.pathToRoot}chipper/dist/js/phet-io-wrappers/js/phet-io-wrappers-main.js"><\/script>\n`)).replace(new RegExp("{{{BEGINNING_OF_MAIN_SCRIPT}}}","g"),t.beginningOfMainScript)).replace(new RegExp("{{{WIDTH}}}","g"),t.width)).replace(new RegExp("{{{HEIGHT}}}","g"),t.height)).replace(new RegExp("^.*{{{ON_SIM_INITIALIZED}}}.*$","gm"),t.onSimInitialized)).replace(new RegExp("^.*{{{TYPE_MODULE_SCRIPT_TAG}}}.*$","gm"),r?"<script>":'<script type="module">'),assert&&assert(-1===n.indexOf("{{{"),"loadWrapperTemplate should fill in all template values"),e(n)};if(r){const e=Ae[t.htmlFilename];assert&&assert(e,"unsupported template filename: "+t.htmlFilename),o(e)}else window.phetio.readFile(`${n}common/html/${t.htmlFilename}`,o)};const Ee=window.phetio.loadWrapperTemplate;function ye(e,t,r,n,o,u,a){try{var i=e[u](a),s=i.value}catch(c){return void r(c)}i.done?t(s):Promise.resolve(s).then(n,o)}function Ce(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var u=e.apply(t,r);function a(e){ye(u,n,o,a,i,"next",e)}function i(e){ye(u,n,o,a,i,"throw",e)}a(void 0)}))}}const Se=["keyboardLocaleSwitcher"],ve=["sim","phetioWrapperDebug","phetioElementsDisplay","phetioDebug","exposeStandardPhetioWrapper","brand","ea","debugger","postMessageOnError","phetioEmitAPIBaseline","phetioCreateArchetypes","phetioEmitStates","phetioEmitStatesInterval","phetioEmitHighFrequencyEvents","phetioPrintMissingTandems","phetioPrintAPIProblems",...me,"wrapperContinuousTest","phetioMigrationReport"];let _e=class e{getConfigFromSim(){var t=this;return Ce((function*(){if(!t.phetioClient.simStarted){const e="Sim has not completed launch yet, cannot get customizations from sim until initialized.";throw window.location.search.includes("wrapperContinuousTest")||alert(e),new Error(e)}return new Promise(r=>{t.phetioClient.invokeSequence([{phetioID:"phetioEngine",method:"getState"},{phetioID:"phetioEngine",method:"getInitialState"},{phetioID:"phetioEngine",method:"getChangedState"}],(n,o,u,a,i,s)=>{assert&&assert(!a&&!i&&!s,"no errors expected when getting sim state values");const c={initialState:o,changedState:u,state:null},l=_.assignIn({},o,u);Object.keys(l).forEach(e=>{"DELETED"===l[e]&&delete l[e]});const p=_.isEqual(l,n);assert&&assert(p,"state could not be computed as initialState + changedState"),p||(c.state=n);const h=pako.deflate(JSON.stringify(c)),d=Array.from(h),f=e.getSimInfoFromState(n),m={phetioConfigVersion:"1.0",simName:f.simName,repoName:f.repoName,simVersion:f.simVersion,screens:f.screens,phetioLibURL:t.clientType.PHET_IO_LIB_ABSOLUTE_PATH,simURL:f.url,compression:"pako-2.0.3,array-apply",compressedStateComponents:p?["initial","changed"]:["initial","changed","state"],compressed:d};r(m)})})}))()}getStandardPhetioWrapper(e){var t=this;return Ce((function*(){const r=yield t.getConfigFromSim(),n=` The configuration data includes metadata like version information and compression algorithm.\n// The compressed data includes the state of the simulation which may either be a full state or an initial state + delta.\nconst phetioConfig = /***START_CONFIG***/${JSON.stringify(r)}/***END_CONFIG***/;\n  `;return new Promise(r=>{Ee(e=>{const n=O.removeKeyValuePairs(O.getQueryString(t.phetioClient.frame.src),ve);return e=(e=e.replace(new RegExp("{{QUERY_STRING}}","g"),n)).split("/*{{PASS_THROUGH_QUERY_STRINGS}}*/").join(Se.map(e=>`'${e}'`).join(", ")),r(e)},{pathToRoot:t.clientType.IS_BUILT?e:"../",beginningOfMainScript:n,onSimInitialized:"\n    await phetioClient.setStateFromConfig( phetioConfig );\n    await phetioClient.invokeAsync( 'phetioEngine', 'displaySimulation' );",htmlFilename:"standardPhetioWrapperTemplateSkeleton.html"})})}))()}loadStandardPhetioWrapperFromHTML(t,r){var n=this;return Ce((function*(){const o=F()({alertOnVersionUpgrade:!0},r);if(!n.phetioClient.simStarted){const e="Sim has not completed launch yet, cannot load customizations into it until sim is initialized.";throw alert(e),new Error(e)}const u=e.getConfigFromStandardPhetioWrapper(t),a=e.getStateFromConfig(u),i=e.getSimInfoFromState(a),s=yield n.phetioClient.invokeAsync("phetioEngine","getState"),c=e.getSimInfoFromState(s);if(!Fe(i,c))throw new Error("states incompatible");assert&&assert(!n.phetioClient.isSettingState,"cannot load while sim is already isSettingState"),n.phetioClient.isSettingState=!0;const l={phetioID:"phetioEngine",method:"setState",args:[a]},p=yield Xe.createMigrationEngine(i.simVersion);if(p){const e=p.migrate(l);yield n.phetioClient.invokeAsync(e.command.phetioID,e.command.method,e.command.args);let t=`Standard PhET-iO Wrapper version ${i.simVersion} upgraded to ${c.simVersion}. For more information, please check the browser console.`;e.report.clientMessages.length>0&&(t+="\n\nMigration Details:\n"+e.report.clientMessages.map(e=>"\t* "+e).join("\n")),o.alertOnVersionUpgrade&&window.alert(t),"assert"!==e.report.reportingContext&&console.log(t)}else yield n.phetioClient.invokeAsync(l.phetioID,l.method,l.args);yield n.overrideFromQueryString(),n.phetioClient.isSettingState=!1}))()}static getConfigFromStandardPhetioWrapper(e){if(e.includes("/***START_CONFIG***/")){if(e.includes("/***END_CONFIG***/")){if(e.indexOf("/***START_CONFIG***/")!==e.lastIndexOf("/***START_CONFIG***/")||e.indexOf("/***END_CONFIG***/")!==e.lastIndexOf("/***END_CONFIG***/"))throw window.alert("too many config key markers"),new Error("too many config key markers");const t=e.indexOf("/***START_CONFIG***/")+"/***START_CONFIG***/".length,r=e.indexOf("/***END_CONFIG***/"),n=e.substring(t,r);return JSON.parse(n)}throw window.alert("No END_CONFIG_KEY"),new Error("No END_CONFIG_KEY")}throw window.alert("No START_CONFIG_KEY"),new Error("No START_CONFIG_KEY")}overrideFromQueryString(){var e=this;return Ce((function*(){const t=ge(e.clientType.CAMEL_CASE_SIMULATION_NAME);for(const r of t){const t=r.name;if(O.containsKey(t)){const n=O.get(t,{type:r.queryParameterSchemaType}),o=r.phetioID,u=r.queryParameterValueToPhetioValue(n);if(!!(yield e.phetioClient.invokeAsync("phetioEngine","getPhetioElementState",[o]))){const r=yield e.phetioClient.invokeAsync(o,"getValidationError",[u]);null===r?yield e.phetioClient.invokeAsync(o,"setValue",[u]):assert&&assert(!1,`Error setting ${t} from query string: ${r}`)}}}}))()}static getStateFromConfig(e){const t=(e=>JSON.parse(pako.inflate(new Uint8Array(e.compressed),{to:"string"})))(e);O.get("decompress",{type:"flag"})&&console.log(JSON.stringify(t,null,2));let r=null;return t.state?r=t.state:(r=_.assignIn({},t.initialState,t.changedState),Object.keys(r).forEach(e=>{r&&"DELETED"===r[e]&&delete r[e]})),r}static getSimInfoFromState(e){const t=Object.keys(e).filter(e=>e.includes("general.model.simInfo"));return assert&&assert(1===t.length,"too many matches for version"),e[t[0]]}setStateFromConfig(t){var r=this;return Ce((function*(){try{const n=e.getStateFromConfig(t);yield r.phetioClient.invokeAsync("phetioEngine","setState",[n]),yield r.overrideFromQueryString(),console.log("Finished launching with customizations.")}catch(n){throw alert("Error accessing configuration state"),console.log(n),n}}))()}constructor(e,t){this.phetioClient=e,this.clientType=t}};const Fe=(e,t)=>{if(e.repoName!==t.repoName)return window.alert(`Cannot load from ${e.repoName} into ${t.repoName}`),!1;if(!_.isEqual(new Set(e.screens.map(e=>e.phetioID)),new Set(t.screens.map(e=>e.phetioID))))return window.alert(`Cannot load from sim with screens:\n${e.screens.map(e=>e.phetioID).join("\n")}\n\n into sim with screens:\n${t.screens.map(e=>e.phetioID).join("\n")}`),!1;const r=e=>O.getQueryParametersFromString(O.removeKeyValuePairs(O.getQueryString(e),[...ve,...Se,"locales","frameTitle"])),n=r(e.url),o=r(t.url);return!!_.isEqual(new Set(n),new Set(o))||(window.alert("Query strings are incompatible, currentQueryString = "+o+", loadedQueryString = "+n),!1)};function we(e,t,r,n,o,u,a){try{var i=e[u](a),s=i.value}catch(c){return void r(c)}i.done?t(s):Promise.resolve(s).then(n,o)}function be(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var u=e.apply(t,r);function a(e){we(u,n,o,a,i,"next",e)}function i(e){we(u,n,o,a,i,"throw",e)}a(void 0)}))}}window.phetio=window.phetio||{},window.phetio.PhetioIDUtils=V;let Ie="molecule-polarity";const Pe=!"true".includes("{"),Oe=_.noop,De={phetioDebug:{type:"boolean",defaultValue:!1},phetioWrapperDebug:{type:"boolean",defaultValue:!1},wrapperContinuousTest:{type:"string",defaultValue:""},keyboardLocaleSwitcher:{type:"flag"}};Pe||(De.sim={type:"string"});const Te=O.getAll(De);window.assertions&&Te.phetioWrapperDebug&&window.assertions.enableAssert(),assert&&assert(!O.containsKey("phetioStandalone"),"unsupported wrapper side query parameter: phetioStandalone");const $e="2.0.0-rc.3".startsWith("{{")?"UNBUILT":"2.0.0-rc.3".match(/^\d+.\d+/)[0];assert&&assert($e,"MAJOR_MINOR version should not be null even in unbuilt mode");const Be=$e;let Ne=null,Re=Me()+"chipper/dist/js/phet-io-wrappers/js/phet-io-wrappers-main.js";const Le=Ie+"_all_phet-io.html",xe=Ie+"_all_phet-io_debug.html?ea";if(Pe){assert&&assert(document.currentScript instanceof window.Element,"currentScript should not be null in built mode");const e=document.currentScript;assert&&assert(e.src.includes("lib/phet-io.js"),"unexpected script src: "+e.src),Ne=e.src.replace("lib/phet-io.js",""),Re=e.src}else Ie=Te.sim;function Me(){assert&&r(!0,"import.meta is not available, cannot proceed");const e="file:///data/share/phet/build-server/release-branches/molecule-polarity-2.0/chipper/dist/js/common/js/PhetioClient.js".indexOf("/chipper/dist/");return e>=0?"file:///data/share/phet/build-server/release-branches/molecule-polarity-2.0/chipper/dist/js/common/js/PhetioClient.js".substring(0,e+1):function(){const e="file:///data/share/phet/build-server/release-branches/molecule-polarity-2.0/chipper/dist/js/common/js/PhetioClient.js".split("/"),t=e.length-1;return e.slice(0,t).join("/")+"/"+"../../../../../../"}()}function ke(){return(ke=be((function*(){const e=`${Me()}${Ie}/package.json`;try{const t=yield fetch(e),r=yield t.json();return d.parse(r.version)}catch(t){return assert&&assert(!1,"error loading unbuilt simVersion",t),new d(0,0,0)}}))).apply(this,arguments)}let Ve=null,je=null;"UNBUILT"===$e&&be((function*(){Ve=function(){return ke.apply(this,arguments)}(),je=yield Ve,Ve=null}))();const Ue=[];function He(e,t){const r=[],n=[];for(let o=0;o<e;o++)r.push(t[o]),n.push(t[e+o]);return[r,n]}let We=class e{static wireUpContinuousTesting(e){if(Te.wrapperContinuousTest&&window.parent!==window){const t=e=>{const t={continuousTest:JSON.parse(Te.wrapperContinuousTest),url:window.location.href};_.extend(t,e),window.parent&&window.parent.postMessage(JSON.stringify(t),"*")};e&&e.addSimulationInitializedListener(()=>{t({type:"continuous-test-wrapper-load"})});const r=e=>{let r="",n="";e&&e.message&&(r=e.message),e&&e.stack&&(n=e.stack),t({type:"continuous-test-wrapper-error",message:r,stack:n})};return window.addEventListener("error",e=>{r(e.error)}),window.addEventListener("unhandledrejection",e=>{r(e.reason)}),window.addEventListener("beforeunload",()=>{t({type:"continuous-test-wrapper-unload"})}),()=>{t({type:"continuous-test-wrapper-load"})}}return _.noop}dispatch(e){if("callback"===e.type){const t=e;assert&&assert(t.functionHandle,"callbacks must have a functionHandle"),assert&&assert(t.args,"callbacks must have args");const r=this.handleToFunctionMap.get(t.functionHandle)(...t.args);return void(r&&r.catch&&r.catch(e=>{console.error("An error occurred in processing PhetioClient message listener:",e)}))}const t=this.messageListeners.slice();for(let r=0;r<t.length;r++)t[r](e);if("response"===e.type){const t=e;assert&&assert(t.request,"response should indicate the original request");for(let e=0;e<this.responseListeners.length;e++){const r=this.responseListeners[e];if(t.request&&t.request.messageID&&r.message.messageID===t.request.messageID){if(t.apiRequestError){t.returnValues=[],t.errors=[];for(let e=0;e<r.message.commands.length;e++)t.returnValues.push(null),t.errors.push(t.apiRequestError)}assert&&assert(Array.isArray(t.returnValues),"returnValues");const n=Ke(t.errors),o=t.returnValues.concat(n);if(r.callback){const e=r.callback.apply(null,o);e&&e.catch&&e.catch(e=>{console.error("An error occurred in processing PhetioClient message callback:",e)})}this.responseListeners.splice(e,1);break}}}}invoke(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:(e,t)=>{};assert&&assert(Array.isArray(r),"args should be an array"),assert&&assert("function"==typeof n,"callback should be a function"),this.invokeSequence([{phetioID:e,method:t,args:r}],n)}invokeAsync(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];var n=this;return be((function*(){return new Promise((o,u)=>n.invoke(e,t,r,(e,t)=>{t?u(t):o(e)}))}))()}invokeSequence(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:_.noop;if(assert&&assert(Array.isArray(e),"array expected for the sequence"),assert)for(let o=0;o<e.length;o++)Je(e[o]);if(0===e.length)return void setTimeout(t,0);const r=e.map((e,t)=>(assert&&e.args&&assert(Array.isArray(e.args),"args should be an array"),this.itemToCommand(e.phetioID,e.method,e.args||[],t))),n={messageID:this.messageID,phetioProtocol:"1.0.0",clientID:this.id,commands:r};this.responseListeners.push(new Ye(n,t)),this.frame.contentWindow.postMessage(n,"*"),this.messageID++}invokeSequenceAsync(e){return new Promise((t,r)=>{this.invokeSequence(e,(function(){for(var n=arguments.length,o=new Array(n),u=0;u<n;u++)o[u]=arguments[u];const a=He(e.length,o),i=a[0],s=a[1];s.find(e=>!!e)?r(new AggregateError(s,"Error(s) in invokeSequenceAsync")):t(i)}))})}setValues(e,t){this.invokeSequence(Object.keys(e).map(t=>({phetioID:t,method:"setValue",args:[e[t]]})),t)}itemToCommand(e,t,r,n){let o={phetioID:e,method:t,args:r.map((e,t)=>{if("function"==typeof e){const t=e;if(!this.functionToHandleMap.has(t)){const e="functionHandle@id="+this.functionHandleID++;this.handleToFunctionMap.set(e,t),this.functionToHandleMap.set(t,e)}return this.functionToHandleMap.get(t)}return e})};if(this.migrationEngine){o=this.migrationEngine.migrate(o).command}return o}dispose(){this.disposeClient()}addMessageListener(e){this.messageListeners.push(e)}removeMessageListener(e){const t=this.messageListeners.indexOf(e);-1!==t&&this.messageListeners.splice(t,1),-1!==this.nonPhetioMessageListeners.indexOf(e)&&this.nonPhetioMessageListeners.splice(t,1)}addSimulationInitializedListener(e){assert&&assert(!this.simStarted,"This event has already fired, instead use PhetioClient.prototype.simStarted.");const t=r=>{r.type&&"simInitialized"===r.type&&(this.removeMessageListener(t),e())};return this.addMessageListener(t),t}addSimInitializedListener(t){return!e.IS_BUILT&&y("addSimInitializedListener is deprecated, use addSimulationInitializedListener instead.",!0),this.addSimulationInitializedListener(t)}addPhetioInitializedListener(e){assert&&assert(!this.phetioStarted,"This event has already fired, instead use PhetioClient.prototype.phetioStarted.");const t=r=>{if("phetioCommandProcessorInitialized"===r.type){const n=r;assert&&assert(n.phetioEngineElements,"phetioCommandProcessorInitialized must receive phetioEngineElements"),this.removeMessageListener(t),e(n.phetioEngineElements)}};return this.addMessageListener(t),t}addErrorListener(e){const t=t=>{if(t&&t.type)if("error"===t.type){const r=Qe(t);assert&&assert(r,"should not be null"),e(r)}else if("response"===t.type){const r=t;if(r.apiRequestError){const t=Qe(r.apiRequestError);assert&&assert(t,"should not be null"),e(t)}else{const r=t;assert&&assert("response"===t.type),assert&&assert(r.errors.length>0,"errors should have items in the list, even if just `null`"),assert&&assert(r.errors.length>0,"errors should have items in the list, even if just `null`");const n=Ke(r.errors);for(let t=0;t<n.length;t++){const r=n[t];r&&e(r)}}}};return this.addMessageListener(t),this.nonPhetioMessageListeners.push(t),t}setTargetAPIVersion(t){var r=this;return be((function*(){t.startsWith("{")&&(t=(yield e.getSimVersion()).toString()),r.targetAPIVersion=t,r.migrationEngine=yield e.createMigrationEngine(t)}))()}setDebugModeEnabled(e){this.debugModeEnabled=e}getDebugModeEnabled(){return this.debugModeEnabled}launchSimulation(t){var r=this;return be((function*(){const n={passThroughQueryParameters:["locale"],onEvent:null,onSimInitialized:Oe,onPhetioInitialized:Oe,onError:Oe,displaySim:!0,simStartedMetadata:{},queryString:"",targetAPIVersion:"2.0.0-rc.3",forwardZoomKeyboardEventsToSim:!1};assert&&t&&Object.keys(t).forEach(e=>{assert&&assert(n.hasOwnProperty(e),"unrecognized launchSimulation option: "+e)});const o=F()(n,t);if(o.forwardZoomKeyboardEventsToSim&&window.phetio.keyboardEventForwarding.addPanZoomListener(r.frame),r.initializeKeyboardLocaleSwitcher(),o.displaySim){const e=o.onSimInitialized;o.onSimInitialized=be((function*(){e(),yield r.invokeAsync("phetioEngine","displaySimulation")}))}yield r.setTargetAPIVersion(o.targetAPIVersion);const u=e.processQueryString(o.passThroughQueryParameters,window.location.search,o.queryString,r.debugModeEnabled),a=O.appendQueryString(e.getSimulationURL(r.debugModeEnabled),u);assert&&assert(o.simStartedMetadata&&"object"==typeof o.simStartedMetadata,"unknown type for simStartedMetadata");const i=_.assignIn({queryString:o.queryString,wrapperURL:window.location.href,iframeSRC:a},o.simStartedMetadata);return r.addSimulationInitializedListener(o.onSimInitialized),o.onError!==Oe&&r.addErrorListener(o.onError),r.addPhetioInitializedListener(be((function*(e){o.onPhetioInitialized(e);const t=be((function*(){yield r.invokeAsync("phetioEngine","setSimulationStartedMetadata",[i]),yield r.invokeAsync("phetioEngine","launchSimulation",[])}));if(o.onEvent){const e=e=>{if(null===e)return void(r.debugModeEnabled&&assert&&assert(!1,"Error parsing or receiving rootEvent"));const t=r=>{o.onEvent(r,e),r.children&&r.children.forEach(t)};t(e)};yield r.invokeAsync("phetioEngine","addEventListener",[e])}yield t()}))),r.frame.title||(r.frame.title=Pe?"‪Molecule Polarity‬":Ie),r.frame.src=a,r}))()}launchSim(t){var r=this;return be((function*(){return!e.IS_BUILT&&y("launchSim is deprecated, use launchSimulation instead.",!0),r.launchSimulation(t)}))()}initializeKeyboardLocaleSwitcher(){if(Te.keyboardLocaleSwitcher){const e=e=>{if(e instanceof KeyboardEvent&&this.frame&&this.frame.contentWindow&&document.activeElement!==this.frame){!e.ctrlKey||e.shiftKey||e.metaKey||e.altKey||"KeyU"!==e.code&&"KeyI"!==e.code||e.preventDefault();const t=new this.frame.contentWindow.KeyboardEvent(e.type,e);this.frame.contentDocument.body.dispatchEvent(t)}};window.addEventListener("keydown",e),window.addEventListener("keyup",e)}}static createMigrationEngine(t){return be((function*(){assert&&assert(!t.startsWith("{"),"real versions required, no unbuilt template variables please ");const r=(yield e.getSimVersion()).toString();return de.create(t,r,e.SIMULATION_NAME)}))()}static getStateFromStandardPhetioWrapper(e){const t=_e.getConfigFromStandardPhetioWrapper(e);return _e.getStateFromConfig(t)}static getStateFromConfig(e){return _e.getStateFromConfig(e)}static getConfigFromStandardPhetioWrapper(e){return _e.getConfigFromStandardPhetioWrapper(e)}getStandardPhetioWrapper(){var e=this;return be((function*(){return e.standardPhetioWrapper.getStandardPhetioWrapper(Ne)}))()}loadStandardPhetioWrapperFromHTML(e,t){var r=this;return be((function*(){const n=F()({alertOnVersionUpgrade:!1},t);return r.standardPhetioWrapper.loadStandardPhetioWrapperFromHTML(e,n)}))()}static createFromStandardWrapper(t,r,n){return be((function*(){return!e.IS_BUILT&&y("createFromStandardWrapper is deprecated, use createFromStandardPhetioWrapper instead.",!0),e.createFromStandardPhetioWrapper(t,r,n)}))()}static createFromStandardPhetioWrapper(t,r,n){return be((function*(){return n=n||{},assert&&assert(!n.hasOwnProperty("displaySim"),"displaySim should not specified here, as it is called by the function implementation."),assert&&assert(!n.hasOwnProperty("onSimInitialized"),"onSimInitialized should not be provided, instead customize after the PhetioClient is created."),new Promise((o,u)=>{const a=new e(t),i=function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return v(e,...r)}({displaySim:!1,onSimInitialized:be((function*(){yield a.loadStandardPhetioWrapperFromHTML(r),yield a.invokeAsync("phetioEngine","displaySimulation"),o(a)}))},n);a.launchSimulation(i).catch(e=>u(e))})}))()}setStateFromConfig(e){var t=this;return be((function*(){return t.standardPhetioWrapper.setStateFromConfig(e)}))()}static padWithQuestionMark(e){return e.startsWith("?")||0===e.length?e:"?"+e}static processQueryString(t,r,n,o){let u="";if(t)if(!0===t)u=O.removeKeyValuePair(r,"postMessageOnError"),o&&(u=O.removeKeyValuePair(u,"ea"));else{const e=t.filter(e=>O.containsKeyForString(e,r)).map(e=>O.getSingleQueryParameterString(e,r));u=e.join("&")}return u=e.padWithQuestionMark(u),O.getQueryParametersFromString(e.padWithQuestionMark(n)).forEach(e=>{const t=e.split("=")[0];O.containsKeyForString(t,u)?assert&&Te.phetioWrapperDebug&&assert(e===O.getSingleQueryParameterString(t,u),"Query parameter values must match, key= "+t+", queryParameter="+e):u=O.appendQueryString(u,e)}),u}static getSimulationURL(e){let t=null;if(Pe)t=Ne+(e?xe:Le);else{t=`${Me()}${Ie}/${Ie}_en.html?brand=phet-io`,t=O.appendQueryString(t,e?"ea":"")}return O.appendQueryString(t,"postMessageOnError")}static getSimURL(t){return!e.IS_BUILT&&y("getSimURL is deprecated, use getSimulationURL instead.",!0),e.getSimulationURL(t)}static getPhetioOverridesFile(t,r){if(e.IS_BUILT)t(null);else{const n=`${(r=r||{pathToRoot:"../../"}).pathToRoot}${e.SIMULATION_NAME}/js/${e.SIMULATION_NAME}-phet-io-overrides.js`,o=e=>JSON.parse(e.slice(e.indexOf("{"),e.lastIndexOf("}")+1));window.phetio.readFile(n,e=>t(o(e)))}}static getAPIFile(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e.SIMULATION_VERSION_STRING,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return be((function*(){r=r||{pathToRoot:"../"};const n=e.SIMULATION_NAME+"-phet-io-api.json";let o="";if(e.IS_BUILT&&t===e.SIMULATION_VERSION_STRING)o=`${Ne}/${n}`;else if(e.IS_BUILT||t!==(yield e.getSimVersion()).toString())o=t.includes("-rc.")||t.includes("-dev.")?`https://phet-dev.colorado.edu/html/${e.SIMULATION_NAME}/${t}/phet-io/${n}`:`https://phet-io.colorado.edu/sims/${e.SIMULATION_NAME}/${t}/${n}`;else{var u;const t=(null==(u=r.pathToRoot)?void 0:u.endsWith("/"))?"":"/";o=`${r.pathToRoot}${t}phet-io-sim-specific/repos/${e.SIMULATION_NAME}/${n}`}let a=yield fetch(o,{});return 200!==a.status&&(a=yield q.getResourceWithCredentials(o),null===a)?null:JSON.parse(yield a.text())}))()}static replaceStaticClient(t){return be((function*(){return new Promise((r,n)=>{const o=document.createElement("script");Pe||o.setAttribute("type","module"),o.onload=be((function*(){document.body.removeChild(o),r(phetio.PhetioClient)})),o.onerror=n;let u=e.getConfigFromStandardPhetioWrapper(t).phetioLibURL;assert&&assert(u,"phetioLibURL should not be null"),Pe||(u=u.replace("chipper/dist/","/chipper/dist/")),o.src=u,document.body.appendChild(o)})}))()}static launchTestClient(e){return be((function*(){return new Promise((t,r)=>{const n=new phetio.PhetioClient(ze());n.setDebugModeEnabled(!0);const o=()=>{document.body.removeChild(n.frame),n.dispose()},u=()=>{o(),t()};n.launchSimulation({passThroughQueryParameters:!0,onSimInitialized:be((function*(){e(n,u).catch(e=>{o(),r(e)})}))})})}))()}static getBasePhetioTypeName(e){return e.split("(")[0].split("<")[0]}static getSimVersion(){return be((function*(){return Ve&&(yield Ve),assert&&!Pe&&assert(null!==je,"resolved promise filled in the SimVersion"),e.SIM_VERSION}))()}static get SIM_VERSION(){if(!Pe&&null===je)throw new Error("race condition loading local package.json for version, please investigate!");return Pe?d.parse("2.0.0-rc.3"):je}constructor(t){var r=this;if(this.messageID=1,this.responseListeners=[],this.messageListeners=[],this.nonPhetioMessageListeners=[],this.handleToFunctionMap=new Map,this.functionHandleID=0,this.functionToHandleMap=new Map,this.isSettingState=!1,this.simStarted=!1,this.phetioStarted=!1,this.targetAPIVersion="2.0.0-rc.3",this.migrationEngine=null,this.debugModeEnabled=Te.phetioDebug,assert&&assert(t,"iframe needed to launch sim into"),t.src="",this.id=Date.now(),Ue.includes(t))throw new Error("There should only be one instance of PhetioClient for each frame");Ue.push(t),this.frame=t,this.standardPhetioWrapper=new _e(this,e);const n=be((function*(e){if(e.source===t.contentWindow){const t="string"==typeof e.data?function(e){try{const t=JSON.parse(e);if(t&&"object"==typeof t)return t}catch(t){}return null}(e.data):e.data;if(null===t)return;if(t.hasOwnProperty("phetioProtocol")&&t.hasOwnProperty("messages"))if("1.0.0"===t.phetioProtocol)for(let e=0;e<t.messages.length;e++){const n=t.messages[e];("response"===n.type||"callback"===n.type)&&n.request&&n.request.clientID!==r.id?console.log("ignoring message intended for another PhetioClient, my id=",r.id," message was intended for "+n.request.clientID):r.dispatch(n)}else console.log("protocol mismatch, expected ","1.0.0","received",t.phetioProtocol);else for(let e=0;e<r.nonPhetioMessageListeners.length;e++)r.nonPhetioMessageListeners[e](t)}}));window.addEventListener("message",n,!1);const o=()=>{this.frame&&this.frame.contentWindow&&this.invoke("phetioEngine","triggerEvent",[{phetioID:"phetioClient",componentType:window.phetio.WrapperTypes.WClient,name:"beforeunload"}])};window.addEventListener("beforeunload",o);const u=()=>{this.frame&&this.frame.contentWindow&&this.invoke("phetioEngine","triggerEvent",[{phetioID:"phetioClient",componentType:window.phetio.WrapperTypes.WClient,name:"unload"}])};window.addEventListener("unload",u),this.addPhetioInitializedListener(()=>{this.phetioStarted=!0}),this.addSimulationInitializedListener(()=>{this.simStarted=!0}),e.wireUpContinuousTesting(this),this.disposeClient=()=>{window.removeEventListener("message",n,!1),window.removeEventListener("beforeunload",o),window.removeEventListener("unload",u);const e=Ue.indexOf(this.frame);e>=0&&Ue.splice(e,1)}}};We.IS_BUILT=Pe,We.SIMULATION_NAME=Ie,We.VERSION="1.0.0",We.SIMULATION_DISPLAY_NAME="‪Molecule Polarity‬",We.SIMULATION_VERSION_STRING="2.0.0-rc.3",We.SIMULATION_VERSION="2.0.0-rc.3",We.SIMULATION_VERSION_MAJOR_MINOR_STRING=Be,We.VERSION_MAJOR_MINOR=We.SIMULATION_VERSION_MAJOR_MINOR_STRING,We.SimVersion=d,We.PHET_IO_LIB_ABSOLUTE_PATH=Re,We.CAMEL_CASE_SIMULATION_NAME=_.camelCase(Ie),We.queryParameters=Te,We.phetioCompareAPIs=h,We.PhetioIDUtils=V;const Ge=(()=>{if(We.IS_BUILT)return document.currentScript&&document.currentScript.getAttribute("data-phet-io-client-name")||"PhetioClient";{let e=O.getForString("phetioClientName",{type:"string",defaultValue:null},"?"+"file:///data/share/phet/build-server/release-branches/molecule-polarity-2.0/chipper/dist/js/common/js/PhetioClient.js".split("?")[1]);return e||(e=O.get("phetioClientName",{type:"string",defaultValue:null})),e||"PhetioClient"}})();if("PhetioClient"===Ge)window.phetio.Client=We,window.phetio.PhetioClient=We;else{if(void 0!==window.phetio[Ge])throw new Error("PhetioClient name provided is already defined on phetio namespace: "+Ge);window.phetio[Ge]=We}let qe=1;const ze=()=>{const e=document.createElement("iframe");return document.body.appendChild(e),e.setAttribute("id","sim"+qe++),e.setAttribute("width","1024"),e.setAttribute("height","668"),e.setAttribute("class","fullscreen"),e.setAttribute("allowfullscreen",""),e};let Ye=class{constructor(e,t){this.message=e,this.callback=t}};function Qe(e){if(e){assert&&assert(e.hasOwnProperty("message")&&e.hasOwnProperty("stack"),"Error objects passed over the frame must have a message and a stack");const t=new Error;return t.message=e.message,t.stack=e.stack,t}return null}function Ke(e){const t=[];for(let r=0;r<e.length;r++)t.push(Qe(e[r]));return t}function Je(e){assert&&assert("string"==typeof e.phetioID,"unexpected value for phetioID"),assert&&assert("string"==typeof e.method,"unexpected value for method name"),assert&&assert(!e.args||Array.isArray(e.args),"optional args should be an array if provided")}const Xe=We;window.phetio=window.phetio||{},window.phetio.keyboardEventForwarding={addListener(e,t){const r=r=>{if(document.activeElement!==e)try{const n=new e.contentWindow.KeyboardEvent(r.type,r);e.contentDocument.dispatchEvent(n),t&&t(r)}catch(n){}};return window.addEventListener("keydown",r),window.addEventListener("keyup",r),r},removeListener(e){window.removeEventListener("keydown",e),window.removeEventListener("keyup",e)},addPanZoomListener(e){return this.addListener(e,e=>{(e.metaKey||e.ctrlKey)&&["=","+","-","0"].includes(e.key)&&e.preventDefault()})}};window.phetio.keyboardEventForwarding;window.phetio=window.phetio||{},window.phetio.readFile=(e,t,r)=>{r=r||{authenticate:null};const n=new XMLHttpRequest;if(n.open("GET",e),r.authenticate){const e=`${r.authenticate.username}:${r.authenticate.password}`;n.setRequestHeader("Authorization","Basic "+btoa(e))}n.send(null),n.addEventListener("error",e=>{t(null,e)}),n.onreadystatechange=()=>{4===n.readyState&&200===n.status&&t(n.responseText,null)}};window.phetio.readFile;window.phetio=window.phetio||{},window.phetio.saveFile=(e,t)=>{const r=document.createElement("a");if(window.navigator.msSaveOrOpenBlob)window.navigator.msSaveOrOpenBlob(e,t);else{const n=URL.createObjectURL(e);r.href=n,r.download=t,document.body.appendChild(r),r.click(),setTimeout(()=>{document.body.removeChild(r),window.URL.revokeObjectURL(n)},0)}};window.phetio.saveFile;window.phetio=window.phetio||{},window.phetio.WrapperTypes={WButton:{typeName:"WButton",events:["pressed"]},WTextArea:{typeName:"WTextArea",events:["changed"]},WRadioButton:{typeName:"WRadioButton",events:["fired"]},WHTMLReport:{typeName:"WHTMLReport",events:["generated"]},WClient:{typeName:"WClient",events:["beforeunload","unload","tested"]},WCheckbox:{typeName:"WCheckbox",events:["changed"]}};window.phetio.WrapperTypes,window.phetio})()})()}();