board-game-engine-react 0.0.13 → 0.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import e,{useEffect as t,useContext as n,createContext as r,useReducer as s,useState as o}from"react";function a(e,t){return t.forEach(function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach(function(n){if("default"!==n&&!(n in e)){var r=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,r.get?r:{enumerable:!0,get:function(){return t[n]}})}})}),Object.freeze(e)}function i(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function c(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function u(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?l(Object(n),!0).forEach(function(t){c(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function p(e,t){if(null==e)return{};var n,r,s=function(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(-1!==t.indexOf(r))continue;n[r]=e[r]}return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}var d={exports:{}};const f=["redact"],h=["credentials"],v=["credentials"],y=["deltalog"],g=["fn","arg"],m=["transients"],b=["playerID"],x=["master"],_=["socket","socketOpts","server"],w=["state"];var P;var O,k=P?d.exports:(P=1,O=()=>(()=>{var e={4039(e,t,n){Object.defineProperty(t,"__esModule",{value:!0});var r=n(9014);n(5878),n(1946),n(9001);const s={STRIP_SECRETS:e=>{let{G:t,playerID:n}=e;const r=u({},t);return void 0!==r.secret&&delete r.secret,r.players&&(r.players=n?{[n]:r.players[n]}:{}),r}};t.ActivePlayers=r.ActivePlayers,Object.defineProperty(t,"GameMethod",{enumerable:!0,get:function(){return r.GameMethod}}),t.INVALID_MOVE=r.INVALID_MOVE,t.Stage=r.Stage,t.TurnOrder=r.TurnOrder,t.PlayerView=s},1946(e,t){class n{constructor(e){const t=function(){let e=4022871197;const t=function(t){const n=t.toString();for(let t=0;t<n.length;t++){e+=n.charCodeAt(t);let r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=4294967296*r}return 2.3283064365386963e-10*(e>>>0)};return t}();this.c=1,this.s0=t(" "),this.s1=t(" "),this.s2=t(" "),this.s0-=t(e),this.s0<0&&(this.s0+=1),this.s1-=t(e),this.s1<0&&(this.s1+=1),this.s2-=t(e),this.s2<0&&(this.s2+=1)}next(){const e=2091639*this.s0+2.3283064365386963e-10*this.c;return this.s0=this.s1,this.s1=this.s2,this.s2=e-(this.c=Math.trunc(e))}}function r(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function s(e,t){const s=new n(e),o=s.next.bind(s);return t&&r(t,s),o.state=()=>r(s,{}),o}class o{constructor(e){this.state=e||{seed:"0"},this.used=!1}static seed(){return Date.now().toString(36).slice(-10)}isUsed(){return this.used}getState(){return this.state}_random(){this.used=!0;const e=this.state,t=s(e.prngstate?"":e.seed,e.prngstate),n=t();return this.state=u(u({},e),{},{prngstate:t.state()}),n}api(){const e=this._random.bind(this),t={D4:4,D6:6,D8:8,D10:10,D12:12,D20:20},n={};for(const r in t){const s=t[r];n[r]=t=>void 0===t?Math.floor(e()*s)+1:Array.from({length:t}).map(()=>Math.floor(e()*s)+1)}return u(u({},n),{},{Die:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,n=arguments.length>1?arguments[1]:void 0;return void 0===n?Math.floor(e()*t)+1:Array.from({length:n}).map(()=>Math.floor(e()*t)+1)},Number:()=>e(),Shuffle:t=>{const n=[...t];let r=t.length,s=0;const o=Array.from({length:r});for(;r;){const t=Math.trunc(r*e());o[s++]=n[t],n[t]=n[--r]}return o},_private:this})}}const a={name:"random",noClient:e=>{let{api:t}=e;return t._private.isUsed()},flush:e=>{let{api:t}=e;return t._private.getState()},api:e=>{let{data:t}=e;return new o(t).api()},setup:e=>{let{game:t}=e,{seed:n}=t;return void 0===n&&(n=o.seed()),{seed:n}},playerView:()=>{}};t.RandomPlugin=a,t.alea=s},9014(e,t,n){var r=n(5878),s=n(1946);function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}n(9001);var a=o(r);const i="MAKE_MOVE",c="GAME_EVENT",l="REDO",p="RESET",d="SYNC",f="UNDO",h="UPDATE",v="PATCH",y="PLUGIN",g="STRIP_TRANSIENTS",m=(e,t,n,r)=>({type:i,payload:{type:e,args:t,playerID:n,credentials:r}}),b=(e,t,n,r)=>({type:c,payload:{type:e,args:t,playerID:n,credentials:r}}),x=(e,t,n,r)=>({type:c,payload:{type:e,args:t,playerID:n,credentials:r},automatic:!0}),_=e=>({type:d,state:e.state,log:e.log,initialState:e.initialState,clientOnly:!0}),w=(e,t,n,r)=>({type:v,prevStateID:e,stateID:t,patch:n,deltalog:r,clientOnly:!0}),P=(e,t)=>({type:h,state:e,deltalog:t,clientOnly:!0}),O=e=>({type:p,state:e,clientOnly:!0}),k=(e,t)=>({type:f,payload:{type:null,args:null,playerID:e,credentials:t}}),E=(e,t)=>({type:l,payload:{type:null,args:null,playerID:e,credentials:t}}),M=()=>({type:g});var $=Object.freeze({__proto__:null,makeMove:m,gameEvent:b,automaticGameEvent:x,sync:_,patch:w,update:P,reset:O,undo:k,redo:E,plugin:(e,t,n,r)=>({type:y,payload:{type:e,args:t,playerID:n,credentials:r}}),stripTransients:M});const A="INVALID_MOVE",j={name:"plugin-immer",fnWrap:e=>function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];let o=!1;const i=a.default(t.G,n=>{const s=e(u(u({},t),{},{G:n}),...r);if(s!==A)return s;o=!0});return o?A:i}};var S,I;t.GameMethod=void 0,(S=t.GameMethod||(t.GameMethod={})).MOVE="MOVE",S.GAME_ON_END="GAME_ON_END",S.PHASE_ON_BEGIN="PHASE_ON_BEGIN",S.PHASE_ON_END="PHASE_ON_END",S.TURN_ON_BEGIN="TURN_ON_BEGIN",S.TURN_ON_MOVE="TURN_ON_MOVE",S.TURN_ON_END="TURN_ON_END",function(e){e.CalledOutsideHook="Events must be called from moves or the `onBegin`, `onEnd`, and `onMove` hooks.\nThis error probably means you called an event from other game code, like an `endIf` trigger or one of the `turn.order` methods.",e.EndTurnInOnEnd="`endTurn` is disallowed in `onEnd` hooks — the turn is already ending.",e.MaxTurnEndings="Maximum number of turn endings exceeded for this update.\nThis likely means game code is triggering an infinite loop.",e.PhaseEventInOnEnd="`setPhase` & `endPhase` are disallowed in a phase’s `onEnd` hook — the phase is already ending.\nIf you’re trying to dynamically choose the next phase when a phase ends, use the phase’s `next` trigger.",e.StageEventInOnEnd="`setStage`, `endStage` & `setActivePlayers` are disallowed in `onEnd` hooks.",e.StageEventInPhaseBegin="`setStage`, `endStage` & `setActivePlayers` are disallowed in a phase’s `onBegin` hook.\nUse `setActivePlayers` in a `turn.onBegin` hook or declare stages with `turn.activePlayers` instead.",e.StageEventInTurnBegin="`setStage` & `endStage` are disallowed in `turn.onBegin`.\nUse `setActivePlayers` or declare stages with `turn.activePlayers` instead."}(I||(I={}));class C{constructor(e,t,n){this.flow=e,this.playerID=n,this.dispatch=[],this.initialTurn=t.turn,this.updateTurnContext(t,void 0),this.maxEndedTurnsPerAction=100*t.numPlayers}api(){var e=this;const t={_private:this};for(const n of this.flow.eventNames)t[n]=function(){for(var t=arguments.length,r=new Array(t),s=0;s<t;s++)r[s]=arguments[s];e.dispatch.push({type:n,args:r,phase:e.currentPhase,turn:e.currentTurn,calledFrom:e.currentMethod,error:new Error("Events Plugin Error")})};return t}isUsed(){return this.dispatch.length>0}updateTurnContext(e,t){this.currentPhase=e.phase,this.currentTurn=e.turn,this.currentMethod=t}unsetCurrentMethod(){this.currentMethod=void 0}update(e){const n=e,r=(e,t)=>{let{stack:r}=e;return u(u({},n),{},{plugins:u(u({},n.plugins),{},{events:u(u({},n.plugins.events),{},{data:{error:t+"\n"+r}})})})};e:for(let n=0;n<this.dispatch.length;n++){const s=this.dispatch[n],o=s.turn!==e.ctx.turn;if(this.currentTurn-this.initialTurn>=this.maxEndedTurnsPerAction)return r(s.error,I.MaxTurnEndings);if(void 0===s.calledFrom)return r(s.error,I.CalledOutsideHook);if(e.ctx.gameover)break e;switch(s.type){case"endStage":case"setStage":case"setActivePlayers":switch(s.calledFrom){case t.GameMethod.TURN_ON_END:case t.GameMethod.PHASE_ON_END:return r(s.error,I.StageEventInOnEnd);case t.GameMethod.PHASE_ON_BEGIN:return r(s.error,I.StageEventInPhaseBegin);case t.GameMethod.TURN_ON_BEGIN:if("setActivePlayers"===s.type)break;return r(s.error,I.StageEventInTurnBegin)}if(o)continue e;break;case"endTurn":if(s.calledFrom===t.GameMethod.TURN_ON_END||s.calledFrom===t.GameMethod.PHASE_ON_END)return r(s.error,I.EndTurnInOnEnd);if(o)continue e;break;case"endPhase":case"setPhase":if(s.calledFrom===t.GameMethod.PHASE_ON_END)return r(s.error,I.PhaseEventInOnEnd);if(s.phase!==e.ctx.phase)continue e}const a=x(s.type,s.args,this.playerID);e=this.flow.processEvent(e,a)}return e}}const T={name:"events",noClient:e=>{let{api:t}=e;return t._private.isUsed()},isInvalid:e=>{let{data:t}=e;return t.error||!1},fnWrap:(e,t)=>function(n){const r=n.events;r&&r._private.updateTurnContext(n.ctx,t);for(var s=arguments.length,o=new Array(s>1?s-1:0),a=1;a<s;a++)o[a-1]=arguments[a];const i=e(n,...o);return r&&r._private.unsetCurrentMethod(),i},dangerouslyFlushRawState:e=>{let{state:t,api:n}=e;return n._private.update(t)},api:e=>{let{game:t,ctx:n,playerID:r}=e;return new C(t.flow,n,r).api()}},N={name:"plugin-serializable",fnWrap:e=>function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];return e(t,...r)}};function D(e){!function(){console.error(...arguments)}("ERROR:",e)}const R=[j,s.RandomPlugin,{name:"log",flush:()=>({}),api:e=>{let{data:t}=e;return{setMetadata:e=>{t.metadata=e}}},setup:()=>({})},N],B=[...R,T],G=e=>{let{plugins:t}=e;return Object.entries(t||{}).reduce((e,t)=>{let[n,{api:r}]=t;return e[n]=r,e},{})};function F(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e.moveLimit&&(t&&(e.minMoves=e.moveLimit),e.maxMoves=e.moveLimit,delete e.moveLimit)}function L(e,t){let n={},r=[],s=null,o={},a={};if(Array.isArray(t)){const e={};t.forEach(t=>e[t]=q.NULL),n=e}else{if(F(t),t.next&&(s=t.next),t.revert&&(r=[...e._prevActivePlayers,{activePlayers:e.activePlayers,_activePlayersMinMoves:e._activePlayersMinMoves,_activePlayersMaxMoves:e._activePlayersMaxMoves,_activePlayersNumMoves:e._activePlayersNumMoves}]),void 0!==t.currentPlayer&&U(n,o,a,e.currentPlayer,t.currentPlayer),void 0!==t.others)for(let r=0;r<e.playOrder.length;r++){const s=e.playOrder[r];s!==e.currentPlayer&&U(n,o,a,s,t.others)}if(void 0!==t.all)for(let r=0;r<e.playOrder.length;r++)U(n,o,a,e.playOrder[r],t.all);if(t.value)for(const e in t.value)U(n,o,a,e,t.value[e]);if(t.minMoves)for(const e in n)void 0===o[e]&&(o[e]=t.minMoves);if(t.maxMoves)for(const e in n)void 0===a[e]&&(a[e]=t.maxMoves)}0===Object.keys(n).length&&(n=null),0===Object.keys(o).length&&(o=null),0===Object.keys(a).length&&(a=null);const i={};for(const e in n)i[e]=0;return u(u({},e),{},{activePlayers:n,_activePlayersMinMoves:o,_activePlayersMaxMoves:a,_activePlayersNumMoves:i,_prevActivePlayers:r,_nextActivePlayers:s})}function U(e,t,n,r,s){"object"==typeof s&&s!==q.NULL||(s={stage:s}),void 0!==s.stage&&(F(s),e[r]=s.stage,s.minMoves&&(t[r]=s.minMoves),s.maxMoves&&(n[r]=s.maxMoves))}function z(e,t){return e[t]+""}const q={NULL:null},V={ALL:{all:q.NULL},ALL_ONCE:{all:q.NULL,minMoves:1,maxMoves:1},OTHERS:{others:q.NULL},OTHERS_ONCE:{others:q.NULL,minMoves:1,maxMoves:1}};t.ActionCreators=$,t.ActivePlayers=V,t.Enhance=(e,t)=>([...B,...t.game.plugins].filter(e=>void 0!==e.api).forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}},o=n.api({G:e.G,ctx:e.ctx,data:s.data,game:t.game,playerID:t.playerID});e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[r]:u(u({},s),{},{api:o})})})}),e),t.FlushAndValidate=(e,t)=>{const n=((e,t)=>([...R,...t.game.plugins,T].reverse().forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}};if(n.flush){const r=n.flush({G:e.G,ctx:e.ctx,game:t.game,api:s.api,data:s.data});e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[n.name]:{data:r}})})}else if(n.dangerouslyFlushRawState){const o=(e=n.dangerouslyFlushRawState({state:e,game:t.game,api:s.api,data:s.data})).plugins[r].data;e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[n.name]:{data:o}})})}}),e))(e,t),r=((e,t)=>{const n=[...B,...t.game.plugins].filter(e=>void 0!==e.isInvalid).map(n=>{const{name:r}=n,s=e.plugins[r],o=n.isInvalid({G:e.G,ctx:e.ctx,game:t.game,data:s&&s.data});return!!o&&{plugin:r,message:o}}).find(e=>e);return n||!1})(n,t);if(!r)return[n];const{plugin:s,message:o}=r;return D(`${s} plugin declared action invalid:\n${o}`),[e,r]},t.FnWrap=(e,t,n)=>[...R,...n,T].filter(e=>void 0!==e.fnWrap).reduce((e,n)=>{let{fnWrap:r}=n;return r(e,t)},e),t.GAME_EVENT=c,t.GetAPIs=G,t.INVALID_MOVE=A,t.InitTurnOrderState=function(e,t){let{G:n,ctx:r}=e;const{numPlayers:s}=r,o=u(u({},G(e)),{},{G:n,ctx:r}),a=t.order;let i=[...Array.from({length:s})].map((e,t)=>t+"");void 0!==a.playOrder&&(i=a.playOrder(o));const c=a.first(o),l=typeof c;"number"!==l&&D(`invalid value returned by turn.order.first — expected number got ${l} “${c}”.`);const p=z(i,c);return r=u(u({},r),{},{currentPlayer:p,playOrderPos:c,playOrder:i}),r=L(r,t.activePlayers||{}),r},t.MAKE_MOVE=i,t.NoClient=(e,t)=>[...B,...t.game.plugins].filter(e=>void 0!==e.noClient).map(n=>{const r=n.name,s=e.plugins[r];return!!s&&n.noClient({G:e.G,ctx:e.ctx,game:t.game,api:s.api,data:s.data})}).includes(!0),t.PATCH=v,t.PLUGIN=y,t.PlayerView=(e,t)=>{let{G:n,ctx:r,plugins:s={}}=e,{game:o,playerID:a}=t;return[...B,...o.plugins].forEach(e=>{let{name:t,playerView:i}=e;if(!i)return;const{data:c}=s[t]||{data:{}},l=i({G:n,ctx:r,game:o,data:c,playerID:a});s=u(u({},s),{},{[t]:{data:l}})}),s},t.ProcessAction=(e,t,n)=>(n.game.plugins.filter(e=>void 0!==e.action).filter(e=>e.name===t.payload.type).forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}},o=n.action(s.data,t.payload);e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[r]:u(u({},s),{},{data:o})})})}),e),t.REDO=l,t.RESET=p,t.STRIP_TRANSIENTS=g,t.SYNC=d,t.SetActivePlayers=L,t.Setup=(e,t)=>([...B,...t.game.plugins].filter(e=>void 0!==e.setup).forEach(n=>{const r=n.name,s=n.setup({G:e.G,ctx:e.ctx,game:t.game});e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[r]:{data:s}})})}),e),t.Stage=q,t.TurnOrder={DEFAULT:{first:e=>{let{ctx:t}=e;return 0===t.turn?t.playOrderPos:(t.playOrderPos+1)%t.playOrder.length},next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},RESET:{first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},CONTINUE:{first:e=>{let{ctx:t}=e;return t.playOrderPos},next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},ONCE:{first:()=>0,next:e=>{let{ctx:t}=e;if(t.playOrderPos<t.playOrder.length-1)return t.playOrderPos+1}},CUSTOM:e=>({playOrder:()=>e,first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}}),CUSTOM_FROM:e=>({playOrder:t=>{let{G:n}=t;return n[e]},first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}})},t.UNDO=f,t.UPDATE=h,t.UpdateActivePlayersOnceEmpty=function(e){let{activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o,_nextActivePlayers:a}=e;if(t&&0===Object.keys(t).length)if(a)e=L(e,a),({activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o}=e);else if(o.length>0){const e=o.length-1;({activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s}=o[e]),o=o.slice(0,e)}else t=null,n=null,r=null;return u(u({},e),{},{activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o})},t.UpdateTurnOrderState=function(e,t,n,r){const s=n.order;let{G:o,ctx:a}=e,i=a.playOrderPos,c=!1;if(r&&!0!==r)"object"!=typeof r&&D(`invalid argument to endTurn: ${r}`),Object.keys(r).forEach(e=>{switch(e){case"remove":t=z(a.playOrder,i);break;case"next":i=a.playOrder.indexOf(r.next),t=r.next;break;default:D(`invalid argument to endTurn: ${e}`)}});else{const n=u(u({},G(e)),{},{G:o,ctx:a}),r=s.next(n),l=typeof r;void 0!==r&&"number"!==l&&D(`invalid value returned by turn.order.next — expected number or undefined got ${l} “${r}”.`),void 0===r?c=!0:(i=r,t=z(a.playOrder,i))}return a=u(u({},a),{},{playOrderPos:i,currentPlayer:t}),{endPhase:c,ctx:a}},t.error=D,t.gameEvent=b,t.info=function(e){},t.makeMove=m,t.patch=w,t.redo=E,t.reset=O,t.stripTransients=M,t.supportDeprecatedMoveLimit=F,t.sync=_,t.undo=k,t.update=P},4826(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.D=void 0,t._=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Kn(e,t)},t.a=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var n,r=Jn(e);if(t){var s=Jn(this).constructor;n=Reflect.construct(r,arguments,s)}else n=r.apply(this,arguments);return function(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,n)}},t.b=function(e,t,n){return t&&Wn(e.prototype,t),n&&Wn(e,n),e},t.c=Hn,t.d=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},t.e=function(e,t){if(null==e)return{};var n,r,s=function(e,t){if(null==e)return{};var n,r,s={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(s[n]=e[n]);return s}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s},t.f=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Vn(Object(n),!0).forEach(function(t){Hn(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Vn(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e};var r=n(9896),s=n(7035),o=n(2591),a=n(3637);function i(){}const c=e=>e;function l(e,t){for(const n in t)e[n]=t[n];return e}function p(e){return e()}function d(){return Object.create(null)}function f(e){e.forEach(p)}function h(e){return"function"==typeof e}function v(e,t){return e!=e?t==t:e!==t||e&&"object"==typeof e||"function"==typeof e}function y(e){if(null==e)return i;for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const s=e.subscribe(...n);return s.unsubscribe?()=>s.unsubscribe():s}function g(e,t,n){e.$$.on_destroy.push(y(t,n))}function m(e,t,n,r){return e[1]&&r?l(n.ctx.slice(),e[1](r(t))):n.ctx}function b(e){const t={};for(const n in e)"$"!==n[0]&&(t[n]=e[n]);return t}function x(e){return null==e?"":e}const _="undefined"!=typeof window;let w=_?()=>window.performance.now():()=>Date.now(),P=_?e=>requestAnimationFrame(e):i;const O=new Set;function k(e){O.forEach(t=>{t.c(e)||(O.delete(t),t.f())}),0!==O.size&&P(k)}function E(e){let t;return 0===O.size&&P(k),{promise:new Promise(n=>{O.add(t={c:e,f:n})}),abort(){O.delete(t)}}}function M(e,t){e.appendChild(t)}function $(e,t,n){const r=A(e);if(!r.getElementById(t)){const e=N("style");e.id=t,e.textContent=n,S(r,e)}}function A(e){if(!e)return document;const t=e.getRootNode?e.getRootNode():e.ownerDocument;return t&&t.host?t:e.ownerDocument}function j(e){const t=N("style");return S(A(e),t),t.sheet}function S(e,t){M(e.head||e,t)}function I(e,t,n){e.insertBefore(t,n||null)}function C(e){e.parentNode.removeChild(e)}function T(e,t){for(let n=0;n<e.length;n+=1)e[n]&&e[n].d(t)}function N(e){return document.createElement(e)}function D(e){return document.createElementNS("http://www.w3.org/2000/svg",e)}function R(e){return document.createTextNode(e)}function B(){return R(" ")}function G(){return R("")}function F(e,t,n,r){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)}function L(e,t,n){null==n?e.removeAttribute(t):e.getAttribute(t)!==n&&e.setAttribute(t,n)}function U(e,t){t=""+t,e.wholeText!==t&&(e.data=t)}function z(e,t){e.value=null==t?"":t}function q(e,t){for(let n=0;n<e.options.length;n+=1){const r=e.options[n];if(r.__value===t)return void(r.selected=!0)}e.selectedIndex=-1}function V(e){const t=e.querySelector(":checked")||e.options[0];return t&&t.__value}function W(e,t,n){e.classList[n?"add":"remove"](t)}function H(e,t){let{bubbles:n=!1,cancelable:r=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const s=document.createEvent("CustomEvent");return s.initCustomEvent(e,n,r,t),s}const J=new Map;let K,Y=0;function X(e,t,n,r,s,o,a){let i=arguments.length>7&&void 0!==arguments[7]?arguments[7]:0;const c=16.666/r;let l="{\n";for(let e=0;e<=1;e+=c){const r=t+(n-t)*o(e);l+=100*e+`%{${a(r,1-r)}}\n`}const u=l+`100% {${a(n,1-n)}}\n}`,p=`__svelte_${function(e){let t=5381,n=e.length;for(;n--;)t=(t<<5)-t^e.charCodeAt(n);return t>>>0}(u)}_${i}`,d=A(e),{stylesheet:f,rules:h}=J.get(d)||function(e,t){const n={stylesheet:j(t),rules:{}};return J.set(e,n),n}(d,e);h[p]||(h[p]=!0,f.insertRule(`@keyframes ${p} ${u}`,f.cssRules.length));const v=e.style.animation||"";return e.style.animation=`${v?`${v}, `:""}${p} ${r}ms linear ${s}ms 1 both`,Y+=1,p}function Q(e,t){const n=(e.style.animation||"").split(", "),r=n.filter(t?e=>e.indexOf(t)<0:e=>-1===e.indexOf("__svelte")),s=n.length-r.length;s&&(e.style.animation=r.join(", "),Y-=s,Y||P(()=>{Y||(J.forEach(e=>{const{stylesheet:t}=e;let n=t.cssRules.length;for(;n--;)t.deleteRule(n);e.rules={}}),J.clear())}))}function Z(e){K=e}function ee(){if(!K)throw new Error("Function called outside component initialization");return K}function te(e){ee().$$.on_destroy.push(e)}function ne(){const e=ee();return function(t,n){let{cancelable:r=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const s=e.$$.callbacks[t];if(s){const o=H(t,n,{cancelable:r});return s.slice().forEach(t=>{t.call(e,o)}),!o.defaultPrevented}return!0}}function re(e,t){return ee().$$.context.set(e,t),t}function se(e){return ee().$$.context.get(e)}function oe(e,t){const n=e.$$.callbacks[t.type];n&&n.slice().forEach(e=>e.call(this,t))}const ae=[],ie=[],ce=[],le=[],ue=Promise.resolve();let pe=!1;function de(e){ce.push(e)}const fe=new Set;let he,ve=0;function ye(){const e=K;do{for(;ve<ae.length;){const e=ae[ve];ve++,Z(e),ge(e.$$)}for(Z(null),ae.length=0,ve=0;ie.length;)ie.pop()();for(let e=0;e<ce.length;e+=1){const t=ce[e];fe.has(t)||(fe.add(t),t())}ce.length=0}while(ae.length);for(;le.length;)le.pop()();pe=!1,fe.clear(),Z(e)}function ge(e){if(null!==e.fragment){e.update(),f(e.before_update);const t=e.dirty;e.dirty=[-1],e.fragment&&e.fragment.p(e.ctx,t),e.after_update.forEach(de)}}function me(){return he||(he=Promise.resolve(),he.then(()=>{he=null})),he}function be(e,t,n){e.dispatchEvent(H(`${t?"intro":"outro"}${n}`))}const xe=new Set;let _e;function we(){_e={r:0,c:[],p:_e}}function Pe(){_e.r||f(_e.c),_e=_e.p}function Oe(e,t){e&&e.i&&(xe.delete(e),e.i(t))}function ke(e,t,n,r){if(e&&e.o){if(xe.has(e))return;xe.add(e),_e.c.push(()=>{xe.delete(e),r&&(n&&e.d(1),r())}),e.o(t)}else r&&r()}const Ee={duration:0};function Me(e,t,n){let r,s,o=t(e,n),a=!1,l=0;function u(){r&&Q(e,r)}function p(){const{delay:t=0,duration:n=300,easing:p=c,tick:d=i,css:f}=o||Ee;f&&(r=X(e,0,1,n,t,p,f,l++)),d(0,1);const h=w()+t,v=h+n;s&&s.abort(),a=!0,de(()=>be(e,!0,"start")),s=E(t=>{if(a){if(t>=v)return d(1,0),be(e,!0,"end"),u(),a=!1;if(t>=h){const e=p((t-h)/n);d(e,1-e)}}return a})}let d=!1;return{start(){d||(d=!0,Q(e),h(o)?(o=o(),me().then(p)):p())},invalidate(){d=!1},end(){a&&(u(),a=!1)}}}function $e(e,t,n){let r,s=t(e,n),o=!0;const a=_e;function l(){const{delay:t=0,duration:n=300,easing:l=c,tick:u=i,css:p}=s||Ee;p&&(r=X(e,1,0,n,t,l,p));const d=w()+t,h=d+n;de(()=>be(e,!1,"start")),E(t=>{if(o){if(t>=h)return u(0,1),be(e,!1,"end"),--a.r||f(a.c),!1;if(t>=d){const e=l((t-d)/n);u(1-e,e)}}return o})}return a.r+=1,h(s)?me().then(()=>{s=s(),l()}):l(),{end(t){t&&s.tick&&s.tick(1,0),o&&(r&&Q(e,r),o=!1)}}}function Ae(e,t,n,r){let s=t(e,n),o=r?0:1,a=null,l=null,u=null;function p(){u&&Q(e,u)}function d(e,t){const n=e.b-o;return t*=Math.abs(n),{a:o,b:e.b,d:n,duration:t,start:e.start,end:e.start+t,group:e.group}}function v(t){const{delay:n=0,duration:r=300,easing:h=c,tick:v=i,css:y}=s||Ee,g={start:w()+n,b:t};t||(g.group=_e,_e.r+=1),a||l?l=g:(y&&(p(),u=X(e,o,t,r,n,h,y)),t&&v(0,1),a=d(g,r),de(()=>be(e,t,"start")),E(t=>{if(l&&t>l.start&&(a=d(l,r),l=null,be(e,a.b,"start"),y&&(p(),u=X(e,o,a.b,a.duration,0,h,s.css))),a)if(t>=a.end)v(o=a.b,1-o),be(e,a.b,"end"),l||(a.b?p():--a.group.r||f(a.group.c)),a=null;else if(t>=a.start){const e=t-a.start;o=a.a+a.d*h(e/a.duration),v(o,1-o)}return!(!a&&!l)}))}return{run(e){h(s)?me().then(()=>{s=s(),v(e)}):v(e)},end(){p(),a=l=null}}}function je(e,t){const n={},r={},s={$$scope:1};let o=e.length;for(;o--;){const a=e[o],i=t[o];if(i){for(const e in a)e in i||(r[e]=1);for(const e in i)s[e]||(n[e]=i[e],s[e]=1);e[o]=i}else for(const e in a)s[e]=1}for(const e in r)e in n||(n[e]=void 0);return n}function Se(e){return"object"==typeof e&&null!==e?e:{}}function Ie(e){e&&e.c()}function Ce(e,t,n,r){const{fragment:s,on_mount:o,on_destroy:a,after_update:i}=e.$$;s&&s.m(t,n),r||de(()=>{const t=o.map(p).filter(h);a?a.push(...t):f(t),e.$$.on_mount=[]}),i.forEach(de)}function Te(e,t){const n=e.$$;null!==n.fragment&&(f(n.on_destroy),n.fragment&&n.fragment.d(t),n.on_destroy=n.fragment=null,n.ctx=[])}function Ne(e,t){-1===e.$$.dirty[0]&&(ae.push(e),pe||(pe=!0,ue.then(ye)),e.$$.dirty.fill(0)),e.$$.dirty[t/31|0]|=1<<t%31}function De(e,t,n,r,s,o,a){let c=arguments.length>7&&void 0!==arguments[7]?arguments[7]:[-1];const l=K;Z(e);const u=e.$$={fragment:null,ctx:null,props:o,update:i,not_equal:s,bound:d(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(t.context||(l?l.$$.context:[])),callbacks:d(),dirty:c,skip_bound:!1,root:t.target||l.$$.root};a&&a(u.root);let p=!1;if(u.ctx=n?n(e,t.props||{},function(t,n){const r=!(arguments.length<=2)&&arguments.length-2?arguments.length<=2?void 0:arguments[2]:n;return u.ctx&&s(u.ctx[t],u.ctx[t]=r)&&(!u.skip_bound&&u.bound[t]&&u.bound[t](r),p&&Ne(e,t)),n}):[],u.update(),p=!0,f(u.before_update),u.fragment=!!r&&r(u.ctx),t.target){if(t.hydrate){const e=function(e){return Array.from(e.childNodes)}(t.target);u.fragment&&u.fragment.l(e),e.forEach(C)}else u.fragment&&u.fragment.c();t.intro&&Oe(e.$$.fragment),Ce(e,t.target,t.anchor,t.customElement),ye()}Z(l)}class Re{$destroy(){Te(this,1),this.$destroy=i}$on(e,t){const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const e=n.indexOf(t);-1!==e&&n.splice(e,1)}}$set(e){var t;this.$$set&&(t=e,0!==Object.keys(t).length)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const Be=[];function Ge(e){let t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i;const r=new Set;function s(n){if(v(e,n)&&(e=n,t)){const t=!Be.length;for(const t of r)t[1](),Be.push(t,e);if(t){for(let e=0;e<Be.length;e+=2)Be[e][0](Be[e+1]);Be.length=0}}}return{set:s,update:function(t){s(t(e))},subscribe:function(o){const a=[o,arguments.length>1&&void 0!==arguments[1]?arguments[1]:i];return r.add(a),1===r.size&&(t=n(s)||i),o(e),()=>{r.delete(a),0===r.size&&(t(),t=null)}}}}function Fe(e){const t=e-1;return t*t*t+1}
|
|
1
|
+
import e,{useEffect as t,useContext as n,createContext as r,useReducer as s,useState as o}from"react";function a(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function c(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach(function(t){a(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function l(e,t){if(null==e)return{};var n,r,s=function(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(-1!==t.indexOf(r))continue;n[r]=e[r]}return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}var u={exports:{}};const p=["redact"],d=["credentials"],f=["credentials"],h=["deltalog"],v=["fn","arg"],y=["transients"],g=["playerID"],m=["master"],b=["socket","socketOpts","server"],x=["state"];var _;var w,P=_?u.exports:(_=1,w=()=>(()=>{var e={4039(e,t,n){Object.defineProperty(t,"__esModule",{value:!0});var r=n(9014);n(5878),n(1946),n(9001);const s={STRIP_SECRETS:e=>{let{G:t,playerID:n}=e;const r=c({},t);return void 0!==r.secret&&delete r.secret,r.players&&(r.players=n?{[n]:r.players[n]}:{}),r}};t.ActivePlayers=r.ActivePlayers,Object.defineProperty(t,"GameMethod",{enumerable:!0,get:function(){return r.GameMethod}}),t.INVALID_MOVE=r.INVALID_MOVE,t.Stage=r.Stage,t.TurnOrder=r.TurnOrder,t.PlayerView=s},1946(e,t){class n{constructor(e){const t=function(){let e=4022871197;const t=function(t){const n=t.toString();for(let t=0;t<n.length;t++){e+=n.charCodeAt(t);let r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=4294967296*r}return 2.3283064365386963e-10*(e>>>0)};return t}();this.c=1,this.s0=t(" "),this.s1=t(" "),this.s2=t(" "),this.s0-=t(e),this.s0<0&&(this.s0+=1),this.s1-=t(e),this.s1<0&&(this.s1+=1),this.s2-=t(e),this.s2<0&&(this.s2+=1)}next(){const e=2091639*this.s0+2.3283064365386963e-10*this.c;return this.s0=this.s1,this.s1=this.s2,this.s2=e-(this.c=Math.trunc(e))}}function r(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function s(e,t){const s=new n(e),o=s.next.bind(s);return t&&r(t,s),o.state=()=>r(s,{}),o}class o{constructor(e){this.state=e||{seed:"0"},this.used=!1}static seed(){return Date.now().toString(36).slice(-10)}isUsed(){return this.used}getState(){return this.state}_random(){this.used=!0;const e=this.state,t=s(e.prngstate?"":e.seed,e.prngstate),n=t();return this.state=c(c({},e),{},{prngstate:t.state()}),n}api(){const e=this._random.bind(this),t={D4:4,D6:6,D8:8,D10:10,D12:12,D20:20},n={};for(const r in t){const s=t[r];n[r]=t=>void 0===t?Math.floor(e()*s)+1:Array.from({length:t}).map(()=>Math.floor(e()*s)+1)}return c(c({},n),{},{Die:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,n=arguments.length>1?arguments[1]:void 0;return void 0===n?Math.floor(e()*t)+1:Array.from({length:n}).map(()=>Math.floor(e()*t)+1)},Number:()=>e(),Shuffle:t=>{const n=[...t];let r=t.length,s=0;const o=Array.from({length:r});for(;r;){const t=Math.trunc(r*e());o[s++]=n[t],n[t]=n[--r]}return o},_private:this})}}const a={name:"random",noClient:e=>{let{api:t}=e;return t._private.isUsed()},flush:e=>{let{api:t}=e;return t._private.getState()},api:e=>{let{data:t}=e;return new o(t).api()},setup:e=>{let{game:t}=e,{seed:n}=t;return void 0===n&&(n=o.seed()),{seed:n}},playerView:()=>{}};t.RandomPlugin=a,t.alea=s},9014(e,t,n){var r=n(5878),s=n(1946);function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}n(9001);var a=o(r);const i="MAKE_MOVE",l="GAME_EVENT",u="REDO",p="RESET",d="SYNC",f="UNDO",h="UPDATE",v="PATCH",y="PLUGIN",g="STRIP_TRANSIENTS",m=(e,t,n,r)=>({type:i,payload:{type:e,args:t,playerID:n,credentials:r}}),b=(e,t,n,r)=>({type:l,payload:{type:e,args:t,playerID:n,credentials:r}}),x=(e,t,n,r)=>({type:l,payload:{type:e,args:t,playerID:n,credentials:r},automatic:!0}),_=e=>({type:d,state:e.state,log:e.log,initialState:e.initialState,clientOnly:!0}),w=(e,t,n,r)=>({type:v,prevStateID:e,stateID:t,patch:n,deltalog:r,clientOnly:!0}),P=(e,t)=>({type:h,state:e,deltalog:t,clientOnly:!0}),O=e=>({type:p,state:e,clientOnly:!0}),k=(e,t)=>({type:f,payload:{type:null,args:null,playerID:e,credentials:t}}),E=(e,t)=>({type:u,payload:{type:null,args:null,playerID:e,credentials:t}}),M=()=>({type:g});var $=Object.freeze({__proto__:null,makeMove:m,gameEvent:b,automaticGameEvent:x,sync:_,patch:w,update:P,reset:O,undo:k,redo:E,plugin:(e,t,n,r)=>({type:y,payload:{type:e,args:t,playerID:n,credentials:r}}),stripTransients:M});const A="INVALID_MOVE",j={name:"plugin-immer",fnWrap:e=>function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];let o=!1;const i=a.default(t.G,n=>{const s=e(c(c({},t),{},{G:n}),...r);if(s!==A)return s;o=!0});return o?A:i}};var S,I;t.GameMethod=void 0,(S=t.GameMethod||(t.GameMethod={})).MOVE="MOVE",S.GAME_ON_END="GAME_ON_END",S.PHASE_ON_BEGIN="PHASE_ON_BEGIN",S.PHASE_ON_END="PHASE_ON_END",S.TURN_ON_BEGIN="TURN_ON_BEGIN",S.TURN_ON_MOVE="TURN_ON_MOVE",S.TURN_ON_END="TURN_ON_END",function(e){e.CalledOutsideHook="Events must be called from moves or the `onBegin`, `onEnd`, and `onMove` hooks.\nThis error probably means you called an event from other game code, like an `endIf` trigger or one of the `turn.order` methods.",e.EndTurnInOnEnd="`endTurn` is disallowed in `onEnd` hooks — the turn is already ending.",e.MaxTurnEndings="Maximum number of turn endings exceeded for this update.\nThis likely means game code is triggering an infinite loop.",e.PhaseEventInOnEnd="`setPhase` & `endPhase` are disallowed in a phase’s `onEnd` hook — the phase is already ending.\nIf you’re trying to dynamically choose the next phase when a phase ends, use the phase’s `next` trigger.",e.StageEventInOnEnd="`setStage`, `endStage` & `setActivePlayers` are disallowed in `onEnd` hooks.",e.StageEventInPhaseBegin="`setStage`, `endStage` & `setActivePlayers` are disallowed in a phase’s `onBegin` hook.\nUse `setActivePlayers` in a `turn.onBegin` hook or declare stages with `turn.activePlayers` instead.",e.StageEventInTurnBegin="`setStage` & `endStage` are disallowed in `turn.onBegin`.\nUse `setActivePlayers` or declare stages with `turn.activePlayers` instead."}(I||(I={}));class C{constructor(e,t,n){this.flow=e,this.playerID=n,this.dispatch=[],this.initialTurn=t.turn,this.updateTurnContext(t,void 0),this.maxEndedTurnsPerAction=100*t.numPlayers}api(){var e=this;const t={_private:this};for(const n of this.flow.eventNames)t[n]=function(){for(var t=arguments.length,r=new Array(t),s=0;s<t;s++)r[s]=arguments[s];e.dispatch.push({type:n,args:r,phase:e.currentPhase,turn:e.currentTurn,calledFrom:e.currentMethod,error:new Error("Events Plugin Error")})};return t}isUsed(){return this.dispatch.length>0}updateTurnContext(e,t){this.currentPhase=e.phase,this.currentTurn=e.turn,this.currentMethod=t}unsetCurrentMethod(){this.currentMethod=void 0}update(e){const n=e,r=(e,t)=>{let{stack:r}=e;return c(c({},n),{},{plugins:c(c({},n.plugins),{},{events:c(c({},n.plugins.events),{},{data:{error:t+"\n"+r}})})})};e:for(let n=0;n<this.dispatch.length;n++){const s=this.dispatch[n],o=s.turn!==e.ctx.turn;if(this.currentTurn-this.initialTurn>=this.maxEndedTurnsPerAction)return r(s.error,I.MaxTurnEndings);if(void 0===s.calledFrom)return r(s.error,I.CalledOutsideHook);if(e.ctx.gameover)break e;switch(s.type){case"endStage":case"setStage":case"setActivePlayers":switch(s.calledFrom){case t.GameMethod.TURN_ON_END:case t.GameMethod.PHASE_ON_END:return r(s.error,I.StageEventInOnEnd);case t.GameMethod.PHASE_ON_BEGIN:return r(s.error,I.StageEventInPhaseBegin);case t.GameMethod.TURN_ON_BEGIN:if("setActivePlayers"===s.type)break;return r(s.error,I.StageEventInTurnBegin)}if(o)continue e;break;case"endTurn":if(s.calledFrom===t.GameMethod.TURN_ON_END||s.calledFrom===t.GameMethod.PHASE_ON_END)return r(s.error,I.EndTurnInOnEnd);if(o)continue e;break;case"endPhase":case"setPhase":if(s.calledFrom===t.GameMethod.PHASE_ON_END)return r(s.error,I.PhaseEventInOnEnd);if(s.phase!==e.ctx.phase)continue e}const a=x(s.type,s.args,this.playerID);e=this.flow.processEvent(e,a)}return e}}const T={name:"events",noClient:e=>{let{api:t}=e;return t._private.isUsed()},isInvalid:e=>{let{data:t}=e;return t.error||!1},fnWrap:(e,t)=>function(n){const r=n.events;r&&r._private.updateTurnContext(n.ctx,t);for(var s=arguments.length,o=new Array(s>1?s-1:0),a=1;a<s;a++)o[a-1]=arguments[a];const i=e(n,...o);return r&&r._private.unsetCurrentMethod(),i},dangerouslyFlushRawState:e=>{let{state:t,api:n}=e;return n._private.update(t)},api:e=>{let{game:t,ctx:n,playerID:r}=e;return new C(t.flow,n,r).api()}},N={name:"plugin-serializable",fnWrap:e=>function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];return e(t,...r)}};function D(e){!function(){console.error(...arguments)}("ERROR:",e)}const R=[j,s.RandomPlugin,{name:"log",flush:()=>({}),api:e=>{let{data:t}=e;return{setMetadata:e=>{t.metadata=e}}},setup:()=>({})},N],B=[...R,T],G=e=>{let{plugins:t}=e;return Object.entries(t||{}).reduce((e,t)=>{let[n,{api:r}]=t;return e[n]=r,e},{})};function F(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e.moveLimit&&(t&&(e.minMoves=e.moveLimit),e.maxMoves=e.moveLimit,delete e.moveLimit)}function L(e,t){let n={},r=[],s=null,o={},a={};if(Array.isArray(t)){const e={};t.forEach(t=>e[t]=q.NULL),n=e}else{if(F(t),t.next&&(s=t.next),t.revert&&(r=[...e._prevActivePlayers,{activePlayers:e.activePlayers,_activePlayersMinMoves:e._activePlayersMinMoves,_activePlayersMaxMoves:e._activePlayersMaxMoves,_activePlayersNumMoves:e._activePlayersNumMoves}]),void 0!==t.currentPlayer&&U(n,o,a,e.currentPlayer,t.currentPlayer),void 0!==t.others)for(let r=0;r<e.playOrder.length;r++){const s=e.playOrder[r];s!==e.currentPlayer&&U(n,o,a,s,t.others)}if(void 0!==t.all)for(let r=0;r<e.playOrder.length;r++)U(n,o,a,e.playOrder[r],t.all);if(t.value)for(const e in t.value)U(n,o,a,e,t.value[e]);if(t.minMoves)for(const e in n)void 0===o[e]&&(o[e]=t.minMoves);if(t.maxMoves)for(const e in n)void 0===a[e]&&(a[e]=t.maxMoves)}0===Object.keys(n).length&&(n=null),0===Object.keys(o).length&&(o=null),0===Object.keys(a).length&&(a=null);const i={};for(const e in n)i[e]=0;return c(c({},e),{},{activePlayers:n,_activePlayersMinMoves:o,_activePlayersMaxMoves:a,_activePlayersNumMoves:i,_prevActivePlayers:r,_nextActivePlayers:s})}function U(e,t,n,r,s){"object"==typeof s&&s!==q.NULL||(s={stage:s}),void 0!==s.stage&&(F(s),e[r]=s.stage,s.minMoves&&(t[r]=s.minMoves),s.maxMoves&&(n[r]=s.maxMoves))}function z(e,t){return e[t]+""}const q={NULL:null},V={ALL:{all:q.NULL},ALL_ONCE:{all:q.NULL,minMoves:1,maxMoves:1},OTHERS:{others:q.NULL},OTHERS_ONCE:{others:q.NULL,minMoves:1,maxMoves:1}};t.ActionCreators=$,t.ActivePlayers=V,t.Enhance=(e,t)=>([...B,...t.game.plugins].filter(e=>void 0!==e.api).forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}},o=n.api({G:e.G,ctx:e.ctx,data:s.data,game:t.game,playerID:t.playerID});e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[r]:c(c({},s),{},{api:o})})})}),e),t.FlushAndValidate=(e,t)=>{const n=((e,t)=>([...R,...t.game.plugins,T].reverse().forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}};if(n.flush){const r=n.flush({G:e.G,ctx:e.ctx,game:t.game,api:s.api,data:s.data});e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[n.name]:{data:r}})})}else if(n.dangerouslyFlushRawState){const o=(e=n.dangerouslyFlushRawState({state:e,game:t.game,api:s.api,data:s.data})).plugins[r].data;e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[n.name]:{data:o}})})}}),e))(e,t),r=((e,t)=>{const n=[...B,...t.game.plugins].filter(e=>void 0!==e.isInvalid).map(n=>{const{name:r}=n,s=e.plugins[r],o=n.isInvalid({G:e.G,ctx:e.ctx,game:t.game,data:s&&s.data});return!!o&&{plugin:r,message:o}}).find(e=>e);return n||!1})(n,t);if(!r)return[n];const{plugin:s,message:o}=r;return D(`${s} plugin declared action invalid:\n${o}`),[e,r]},t.FnWrap=(e,t,n)=>[...R,...n,T].filter(e=>void 0!==e.fnWrap).reduce((e,n)=>{let{fnWrap:r}=n;return r(e,t)},e),t.GAME_EVENT=l,t.GetAPIs=G,t.INVALID_MOVE=A,t.InitTurnOrderState=function(e,t){let{G:n,ctx:r}=e;const{numPlayers:s}=r,o=c(c({},G(e)),{},{G:n,ctx:r}),a=t.order;let i=[...Array.from({length:s})].map((e,t)=>t+"");void 0!==a.playOrder&&(i=a.playOrder(o));const l=a.first(o),u=typeof l;"number"!==u&&D(`invalid value returned by turn.order.first — expected number got ${u} “${l}”.`);const p=z(i,l);return r=c(c({},r),{},{currentPlayer:p,playOrderPos:l,playOrder:i}),r=L(r,t.activePlayers||{}),r},t.MAKE_MOVE=i,t.NoClient=(e,t)=>[...B,...t.game.plugins].filter(e=>void 0!==e.noClient).map(n=>{const r=n.name,s=e.plugins[r];return!!s&&n.noClient({G:e.G,ctx:e.ctx,game:t.game,api:s.api,data:s.data})}).includes(!0),t.PATCH=v,t.PLUGIN=y,t.PlayerView=(e,t)=>{let{G:n,ctx:r,plugins:s={}}=e,{game:o,playerID:a}=t;return[...B,...o.plugins].forEach(e=>{let{name:t,playerView:i}=e;if(!i)return;const{data:l}=s[t]||{data:{}},u=i({G:n,ctx:r,game:o,data:l,playerID:a});s=c(c({},s),{},{[t]:{data:u}})}),s},t.ProcessAction=(e,t,n)=>(n.game.plugins.filter(e=>void 0!==e.action).filter(e=>e.name===t.payload.type).forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}},o=n.action(s.data,t.payload);e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[r]:c(c({},s),{},{data:o})})})}),e),t.REDO=u,t.RESET=p,t.STRIP_TRANSIENTS=g,t.SYNC=d,t.SetActivePlayers=L,t.Setup=(e,t)=>([...B,...t.game.plugins].filter(e=>void 0!==e.setup).forEach(n=>{const r=n.name,s=n.setup({G:e.G,ctx:e.ctx,game:t.game});e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[r]:{data:s}})})}),e),t.Stage=q,t.TurnOrder={DEFAULT:{first:e=>{let{ctx:t}=e;return 0===t.turn?t.playOrderPos:(t.playOrderPos+1)%t.playOrder.length},next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},RESET:{first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},CONTINUE:{first:e=>{let{ctx:t}=e;return t.playOrderPos},next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},ONCE:{first:()=>0,next:e=>{let{ctx:t}=e;if(t.playOrderPos<t.playOrder.length-1)return t.playOrderPos+1}},CUSTOM:e=>({playOrder:()=>e,first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}}),CUSTOM_FROM:e=>({playOrder:t=>{let{G:n}=t;return n[e]},first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}})},t.UNDO=f,t.UPDATE=h,t.UpdateActivePlayersOnceEmpty=function(e){let{activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o,_nextActivePlayers:a}=e;if(t&&0===Object.keys(t).length)if(a)e=L(e,a),({activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o}=e);else if(o.length>0){const e=o.length-1;({activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s}=o[e]),o=o.slice(0,e)}else t=null,n=null,r=null;return c(c({},e),{},{activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o})},t.UpdateTurnOrderState=function(e,t,n,r){const s=n.order;let{G:o,ctx:a}=e,i=a.playOrderPos,l=!1;if(r&&!0!==r)"object"!=typeof r&&D(`invalid argument to endTurn: ${r}`),Object.keys(r).forEach(e=>{switch(e){case"remove":t=z(a.playOrder,i);break;case"next":i=a.playOrder.indexOf(r.next),t=r.next;break;default:D(`invalid argument to endTurn: ${e}`)}});else{const n=c(c({},G(e)),{},{G:o,ctx:a}),r=s.next(n),u=typeof r;void 0!==r&&"number"!==u&&D(`invalid value returned by turn.order.next — expected number or undefined got ${u} “${r}”.`),void 0===r?l=!0:(i=r,t=z(a.playOrder,i))}return a=c(c({},a),{},{playOrderPos:i,currentPlayer:t}),{endPhase:l,ctx:a}},t.error=D,t.gameEvent=b,t.info=function(e){},t.makeMove=m,t.patch=w,t.redo=E,t.reset=O,t.stripTransients=M,t.supportDeprecatedMoveLimit=F,t.sync=_,t.undo=k,t.update=P},4826(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.D=void 0,t._=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Kn(e,t)},t.a=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var n,r=Jn(e);if(t){var s=Jn(this).constructor;n=Reflect.construct(r,arguments,s)}else n=r.apply(this,arguments);return function(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,n)}},t.b=function(e,t,n){return t&&Wn(e.prototype,t),n&&Wn(e,n),e},t.c=Hn,t.d=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},t.e=function(e,t){if(null==e)return{};var n,r,s=function(e,t){if(null==e)return{};var n,r,s={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(s[n]=e[n]);return s}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s},t.f=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Vn(Object(n),!0).forEach(function(t){Hn(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Vn(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e};var r=n(9896),s=n(7035),o=n(2591),a=n(3637);function i(){}const l=e=>e;function u(e,t){for(const n in t)e[n]=t[n];return e}function p(e){return e()}function d(){return Object.create(null)}function f(e){e.forEach(p)}function h(e){return"function"==typeof e}function v(e,t){return e!=e?t==t:e!==t||e&&"object"==typeof e||"function"==typeof e}function y(e){if(null==e)return i;for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const s=e.subscribe(...n);return s.unsubscribe?()=>s.unsubscribe():s}function g(e,t,n){e.$$.on_destroy.push(y(t,n))}function m(e,t,n,r){return e[1]&&r?u(n.ctx.slice(),e[1](r(t))):n.ctx}function b(e){const t={};for(const n in e)"$"!==n[0]&&(t[n]=e[n]);return t}function x(e){return null==e?"":e}const _="undefined"!=typeof window;let w=_?()=>window.performance.now():()=>Date.now(),P=_?e=>requestAnimationFrame(e):i;const O=new Set;function k(e){O.forEach(t=>{t.c(e)||(O.delete(t),t.f())}),0!==O.size&&P(k)}function E(e){let t;return 0===O.size&&P(k),{promise:new Promise(n=>{O.add(t={c:e,f:n})}),abort(){O.delete(t)}}}function M(e,t){e.appendChild(t)}function $(e,t,n){const r=A(e);if(!r.getElementById(t)){const e=N("style");e.id=t,e.textContent=n,S(r,e)}}function A(e){if(!e)return document;const t=e.getRootNode?e.getRootNode():e.ownerDocument;return t&&t.host?t:e.ownerDocument}function j(e){const t=N("style");return S(A(e),t),t.sheet}function S(e,t){M(e.head||e,t)}function I(e,t,n){e.insertBefore(t,n||null)}function C(e){e.parentNode.removeChild(e)}function T(e,t){for(let n=0;n<e.length;n+=1)e[n]&&e[n].d(t)}function N(e){return document.createElement(e)}function D(e){return document.createElementNS("http://www.w3.org/2000/svg",e)}function R(e){return document.createTextNode(e)}function B(){return R(" ")}function G(){return R("")}function F(e,t,n,r){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)}function L(e,t,n){null==n?e.removeAttribute(t):e.getAttribute(t)!==n&&e.setAttribute(t,n)}function U(e,t){t=""+t,e.wholeText!==t&&(e.data=t)}function z(e,t){e.value=null==t?"":t}function q(e,t){for(let n=0;n<e.options.length;n+=1){const r=e.options[n];if(r.__value===t)return void(r.selected=!0)}e.selectedIndex=-1}function V(e){const t=e.querySelector(":checked")||e.options[0];return t&&t.__value}function W(e,t,n){e.classList[n?"add":"remove"](t)}function H(e,t){let{bubbles:n=!1,cancelable:r=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const s=document.createEvent("CustomEvent");return s.initCustomEvent(e,n,r,t),s}const J=new Map;let K,Y=0;function X(e,t,n,r,s,o,a){let i=arguments.length>7&&void 0!==arguments[7]?arguments[7]:0;const c=16.666/r;let l="{\n";for(let e=0;e<=1;e+=c){const r=t+(n-t)*o(e);l+=100*e+`%{${a(r,1-r)}}\n`}const u=l+`100% {${a(n,1-n)}}\n}`,p=`__svelte_${function(e){let t=5381,n=e.length;for(;n--;)t=(t<<5)-t^e.charCodeAt(n);return t>>>0}(u)}_${i}`,d=A(e),{stylesheet:f,rules:h}=J.get(d)||function(e,t){const n={stylesheet:j(t),rules:{}};return J.set(e,n),n}(d,e);h[p]||(h[p]=!0,f.insertRule(`@keyframes ${p} ${u}`,f.cssRules.length));const v=e.style.animation||"";return e.style.animation=`${v?`${v}, `:""}${p} ${r}ms linear ${s}ms 1 both`,Y+=1,p}function Q(e,t){const n=(e.style.animation||"").split(", "),r=n.filter(t?e=>e.indexOf(t)<0:e=>-1===e.indexOf("__svelte")),s=n.length-r.length;s&&(e.style.animation=r.join(", "),Y-=s,Y||P(()=>{Y||(J.forEach(e=>{const{stylesheet:t}=e;let n=t.cssRules.length;for(;n--;)t.deleteRule(n);e.rules={}}),J.clear())}))}function Z(e){K=e}function ee(){if(!K)throw new Error("Function called outside component initialization");return K}function te(e){ee().$$.on_destroy.push(e)}function ne(){const e=ee();return function(t,n){let{cancelable:r=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const s=e.$$.callbacks[t];if(s){const o=H(t,n,{cancelable:r});return s.slice().forEach(t=>{t.call(e,o)}),!o.defaultPrevented}return!0}}function re(e,t){return ee().$$.context.set(e,t),t}function se(e){return ee().$$.context.get(e)}function oe(e,t){const n=e.$$.callbacks[t.type];n&&n.slice().forEach(e=>e.call(this,t))}const ae=[],ie=[],ce=[],le=[],ue=Promise.resolve();let pe=!1;function de(e){ce.push(e)}const fe=new Set;let he,ve=0;function ye(){const e=K;do{for(;ve<ae.length;){const e=ae[ve];ve++,Z(e),ge(e.$$)}for(Z(null),ae.length=0,ve=0;ie.length;)ie.pop()();for(let e=0;e<ce.length;e+=1){const t=ce[e];fe.has(t)||(fe.add(t),t())}ce.length=0}while(ae.length);for(;le.length;)le.pop()();pe=!1,fe.clear(),Z(e)}function ge(e){if(null!==e.fragment){e.update(),f(e.before_update);const t=e.dirty;e.dirty=[-1],e.fragment&&e.fragment.p(e.ctx,t),e.after_update.forEach(de)}}function me(){return he||(he=Promise.resolve(),he.then(()=>{he=null})),he}function be(e,t,n){e.dispatchEvent(H(`${t?"intro":"outro"}${n}`))}const xe=new Set;let _e;function we(){_e={r:0,c:[],p:_e}}function Pe(){_e.r||f(_e.c),_e=_e.p}function Oe(e,t){e&&e.i&&(xe.delete(e),e.i(t))}function ke(e,t,n,r){if(e&&e.o){if(xe.has(e))return;xe.add(e),_e.c.push(()=>{xe.delete(e),r&&(n&&e.d(1),r())}),e.o(t)}else r&&r()}const Ee={duration:0};function Me(e,t,n){let r,s,o=t(e,n),a=!1,c=0;function u(){r&&Q(e,r)}function p(){const{delay:t=0,duration:n=300,easing:p=l,tick:d=i,css:f}=o||Ee;f&&(r=X(e,0,1,n,t,p,f,c++)),d(0,1);const h=w()+t,v=h+n;s&&s.abort(),a=!0,de(()=>be(e,!0,"start")),s=E(t=>{if(a){if(t>=v)return d(1,0),be(e,!0,"end"),u(),a=!1;if(t>=h){const e=p((t-h)/n);d(e,1-e)}}return a})}let d=!1;return{start(){d||(d=!0,Q(e),h(o)?(o=o(),me().then(p)):p())},invalidate(){d=!1},end(){a&&(u(),a=!1)}}}function $e(e,t,n){let r,s=t(e,n),o=!0;const a=_e;function c(){const{delay:t=0,duration:n=300,easing:c=l,tick:u=i,css:p}=s||Ee;p&&(r=X(e,1,0,n,t,c,p));const d=w()+t,h=d+n;de(()=>be(e,!1,"start")),E(t=>{if(o){if(t>=h)return u(0,1),be(e,!1,"end"),--a.r||f(a.c),!1;if(t>=d){const e=c((t-d)/n);u(1-e,e)}}return o})}return a.r+=1,h(s)?me().then(()=>{s=s(),c()}):c(),{end(t){t&&s.tick&&s.tick(1,0),o&&(r&&Q(e,r),o=!1)}}}function Ae(e,t,n,r){let s=t(e,n),o=r?0:1,a=null,c=null,u=null;function p(){u&&Q(e,u)}function d(e,t){const n=e.b-o;return t*=Math.abs(n),{a:o,b:e.b,d:n,duration:t,start:e.start,end:e.start+t,group:e.group}}function v(t){const{delay:n=0,duration:r=300,easing:h=l,tick:v=i,css:y}=s||Ee,g={start:w()+n,b:t};t||(g.group=_e,_e.r+=1),a||c?c=g:(y&&(p(),u=X(e,o,t,r,n,h,y)),t&&v(0,1),a=d(g,r),de(()=>be(e,t,"start")),E(t=>{if(c&&t>c.start&&(a=d(c,r),c=null,be(e,a.b,"start"),y&&(p(),u=X(e,o,a.b,a.duration,0,h,s.css))),a)if(t>=a.end)v(o=a.b,1-o),be(e,a.b,"end"),c||(a.b?p():--a.group.r||f(a.group.c)),a=null;else if(t>=a.start){const e=t-a.start;o=a.a+a.d*h(e/a.duration),v(o,1-o)}return!(!a&&!c)}))}return{run(e){h(s)?me().then(()=>{s=s(),v(e)}):v(e)},end(){p(),a=c=null}}}function je(e,t){const n={},r={},s={$$scope:1};let o=e.length;for(;o--;){const a=e[o],i=t[o];if(i){for(const e in a)e in i||(r[e]=1);for(const e in i)s[e]||(n[e]=i[e],s[e]=1);e[o]=i}else for(const e in a)s[e]=1}for(const e in r)e in n||(n[e]=void 0);return n}function Se(e){return"object"==typeof e&&null!==e?e:{}}function Ie(e){e&&e.c()}function Ce(e,t,n,r){const{fragment:s,on_mount:o,on_destroy:a,after_update:i}=e.$$;s&&s.m(t,n),r||de(()=>{const t=o.map(p).filter(h);a?a.push(...t):f(t),e.$$.on_mount=[]}),i.forEach(de)}function Te(e,t){const n=e.$$;null!==n.fragment&&(f(n.on_destroy),n.fragment&&n.fragment.d(t),n.on_destroy=n.fragment=null,n.ctx=[])}function Ne(e,t){-1===e.$$.dirty[0]&&(ae.push(e),pe||(pe=!0,ue.then(ye)),e.$$.dirty.fill(0)),e.$$.dirty[t/31|0]|=1<<t%31}function De(e,t,n,r,s,o,a){let c=arguments.length>7&&void 0!==arguments[7]?arguments[7]:[-1];const l=K;Z(e);const u=e.$$={fragment:null,ctx:null,props:o,update:i,not_equal:s,bound:d(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(t.context||(l?l.$$.context:[])),callbacks:d(),dirty:c,skip_bound:!1,root:t.target||l.$$.root};a&&a(u.root);let p=!1;if(u.ctx=n?n(e,t.props||{},function(t,n){const r=!(arguments.length<=2)&&arguments.length-2?arguments.length<=2?void 0:arguments[2]:n;return u.ctx&&s(u.ctx[t],u.ctx[t]=r)&&(!u.skip_bound&&u.bound[t]&&u.bound[t](r),p&&Ne(e,t)),n}):[],u.update(),p=!0,f(u.before_update),u.fragment=!!r&&r(u.ctx),t.target){if(t.hydrate){const e=function(e){return Array.from(e.childNodes)}(t.target);u.fragment&&u.fragment.l(e),e.forEach(C)}else u.fragment&&u.fragment.c();t.intro&&Oe(e.$$.fragment),Ce(e,t.target,t.anchor,t.customElement),ye()}Z(l)}class Re{$destroy(){Te(this,1),this.$destroy=i}$on(e,t){const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const e=n.indexOf(t);-1!==e&&n.splice(e,1)}}$set(e){var t;this.$$set&&(t=e,0!==Object.keys(t).length)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const Be=[];function Ge(e){let t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i;const r=new Set;function s(n){if(v(e,n)&&(e=n,t)){const t=!Be.length;for(const t of r)t[1](),Be.push(t,e);if(t){for(let e=0;e<Be.length;e+=2)Be[e][0](Be[e+1]);Be.length=0}}}return{set:s,update:function(t){s(t(e))},subscribe:function(o){const a=[o,arguments.length>1&&void 0!==arguments[1]?arguments[1]:i];return r.add(a),1===r.size&&(t=n(s)||i),o(e),()=>{r.delete(a),0===r.size&&(t(),t=null)}}}}function Fe(e){const t=e-1;return t*t*t+1}
|
|
2
2
|
/*! *****************************************************************************
|
|
3
3
|
Copyright (c) Microsoft Corporation.
|
|
4
4
|
|
|
@@ -12,4 +12,4 @@ import e,{useEffect as t,useContext as n,createContext as r,useReducer as s,useS
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */function Le(e){let{delay:t=0,duration:n=400,easing:r=Fe,x:s=0,y:o=0,opacity:a=0}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=getComputedStyle(e),c=+i.opacity,l="none"===i.transform?"":i.transform,u=c*(1-a);return{delay:t,duration:n,easing:r,css:(e,t)=>`\n\t\t\ttransform: ${l} translate(${(1-e)*s}px, ${(1-e)*o}px);\n\t\t\topacity: ${c-u*t}`}}function Ue(e){var{fallback:t}=e,n=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var s=0;for(r=Object.getOwnPropertySymbols(e);s<r.length;s++)t.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(e,r[s])&&(n[r[s]]=e[r[s]])}return n}(e,["fallback"]);const r=new Map,s=new Map;function o(e,r,s){return(o,a)=>(e.set(a.key,{rect:o.getBoundingClientRect()}),()=>{if(r.has(a.key)){const{rect:e}=r.get(a.key);return r.delete(a.key),function(e,t,r){const{delay:s=0,duration:o=e=>30*Math.sqrt(e),easing:a=Fe}=l(l({},n),r),i=t.getBoundingClientRect(),c=e.left-i.left,u=e.top-i.top,p=e.width/i.width,d=e.height/i.height,f=Math.sqrt(c*c+u*u),v=getComputedStyle(t),y="none"===v.transform?"":v.transform,g=+v.opacity;return{delay:s,duration:h(o)?o(f):o,easing:a,css:(e,t)=>`\n\t\t\t\topacity: ${e*g};\n\t\t\t\ttransform-origin: top left;\n\t\t\t\ttransform: ${y} translate(${t*c}px,${t*u}px) scale(${e+(1-e)*p}, ${e+(1-e)*d});\n\t\t\t`}}(e,o,a)}return e.delete(a.key),t&&t(o,a,s)})}return[o(s,r,!1),o(r,s,!0)]}function ze(e){$(e,"svelte-c8tyih","svg.svelte-c8tyih{stroke:currentColor;fill:currentColor;stroke-width:0;width:100%;height:auto;max-height:100%}")}function qe(e){let t,n;return{c(){t=D("title"),n=R(e[0])},m(e,r){I(e,t,r),M(t,n)},p(e,t){1&t&&U(n,e[0])},d(e){e&&C(t)}}}function Ve(e){let t,n,r,s=e[0]&&qe(e);const o=e[3].default,a=function(e,t,n,r){if(e){const s=m(e,t,n,r);return e[0](s)}}(o,e,e[2],null);return{c(){t=D("svg"),s&&s.c(),n=G(),a&&a.c(),L(t,"xmlns","http://www.w3.org/2000/svg"),L(t,"viewBox",e[1]),L(t,"class","svelte-c8tyih")},m(e,o){I(e,t,o),s&&s.m(t,null),M(t,n),a&&a.m(t,null),r=!0},p(e,i){let[c]=i;e[0]?s?s.p(e,c):(s=qe(e),s.c(),s.m(t,n)):s&&(s.d(1),s=null),a&&a.p&&(!r||4&c)&&function(e,t,n,r,s,o){if(s){const a=m(t,n,r,o);e.p(a,s)}}(a,o,e,e[2],r?function(e,t,n,r){if(e[2]&&r){const s=e[2](r(n));if(void 0===t.dirty)return s;if("object"==typeof s){const e=[],n=Math.max(t.dirty.length,s.length);for(let r=0;r<n;r+=1)e[r]=t.dirty[r]|s[r];return e}return t.dirty|s}return t.dirty}(o,e[2],c,null):function(e){if(e.ctx.length>32){const t=[],n=e.ctx.length/32;for(let e=0;e<n;e++)t[e]=-1;return t}return-1}(e[2]),null),(!r||2&c)&&L(t,"viewBox",e[1])},i(e){r||(Oe(a,e),r=!0)},o(e){ke(a,e),r=!1},d(e){e&&C(t),s&&s.d(),a&&a.d(e)}}}function We(e,t,n){let{$$slots:r={},$$scope:s}=t,{title:o=null}=t,{viewBox:a}=t;return e.$$set=e=>{"title"in e&&n(0,o=e.title),"viewBox"in e&&n(1,a=e.viewBox),"$$scope"in e&&n(2,s=e.$$scope)},[o,a,s,r]}class He extends Re{constructor(e){super(),De(this,e,We,Ve,v,{title:0,viewBox:1},ze)}}function Je(e){let t;return{c(){t=D("path"),L(t,"d","M285.476 272.971L91.132 467.314c-9.373 9.373-24.569 9.373-33.941 0l-22.667-22.667c-9.357-9.357-9.375-24.522-.04-33.901L188.505 256 34.484 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L285.475 239.03c9.373 9.372 9.373 24.568.001 33.941z")},m(e,n){I(e,t,n)},p:i,d(e){e&&C(t)}}}function Ke(e){let t,n;const r=[{viewBox:"0 0 320 512"},e[0]];let s={$$slots:{default:[Je]},$$scope:{ctx:e}};for(let e=0;e<r.length;e+=1)s=l(s,r[e]);return t=new He({props:s}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[s]=n;const o=1&s?je(r,[r[0],Se(e[0])]):{};2&s&&(o.$$scope={dirty:s,ctx:e}),t.$set(o)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Ye(e,t,n){return e.$$set=e=>{n(0,t=l(l({},t),b(e)))},[t=b(t)]}class Xe extends Re{constructor(e){super(),De(this,e,Ye,Ke,v,{})}}function Qe(e){$(e,"svelte-1xg9v5h",".menu.svelte-1xg9v5h{display:flex;margin-top:43px;flex-direction:row-reverse;border:1px solid #ccc;border-radius:5px 5px 0 0;height:25px;line-height:25px;margin-right:-500px;transform-origin:bottom right;transform:rotate(-90deg) translate(0, -500px)}.menu-item.svelte-1xg9v5h{line-height:25px;cursor:pointer;border:0;background:#fefefe;color:#555;padding-left:15px;padding-right:15px;text-align:center}.menu-item.svelte-1xg9v5h:first-child{border-radius:0 5px 0 0}.menu-item.svelte-1xg9v5h:last-child{border-radius:5px 0 0 0}.menu-item.active.svelte-1xg9v5h{cursor:default;font-weight:bold;background:#ddd;color:#555}.menu-item.svelte-1xg9v5h:hover,.menu-item.svelte-1xg9v5h:focus{background:#eee;color:#555}")}function Ze(e,t,n){const r=e.slice();return r[4]=t[n][0],r[5]=t[n][1].label,r}function et(e){let t,n,r,s,o,a=e[5]+"";function i(){return e[3](e[4])}return{c(){t=N("button"),n=R(a),r=B(),L(t,"class","menu-item svelte-1xg9v5h"),W(t,"active",e[0]==e[4])},m(e,a){I(e,t,a),M(t,n),M(t,r),s||(o=F(t,"click",i),s=!0)},p(r,s){e=r,2&s&&a!==(a=e[5]+"")&&U(n,a),3&s&&W(t,"active",e[0]==e[4])},d(e){e&&C(t),s=!1,o()}}}function tt(e){let t,n=Object.entries(e[1]),r=[];for(let t=0;t<n.length;t+=1)r[t]=et(Ze(e,n,t));return{c(){t=N("nav");for(let e=0;e<r.length;e+=1)r[e].c();L(t,"class","menu svelte-1xg9v5h")},m(e,n){I(e,t,n);for(let e=0;e<r.length;e+=1)r[e].m(t,null)},p(e,s){let[o]=s;if(7&o){let s;for(n=Object.entries(e[1]),s=0;s<n.length;s+=1){const a=Ze(e,n,s);r[s]?r[s].p(a,o):(r[s]=et(a),r[s].c(),r[s].m(t,null))}for(;s<r.length;s+=1)r[s].d(1);r.length=n.length}},i:i,o:i,d(e){e&&C(t),T(r,e)}}}function nt(e,t,n){let{pane:r}=t,{panes:s}=t;const o=ne();return e.$$set=e=>{"pane"in e&&n(0,r=e.pane),"panes"in e&&n(1,s=e.panes)},[r,s,o,e=>o("change",e)]}class rt extends Re{constructor(e){super(),De(this,e,nt,tt,v,{pane:0,panes:1},Qe)}}var st={};function ot(e){$(e,"svelte-1vyml86",".container.svelte-1vyml86{display:inline-block;cursor:pointer;transform:translate(calc(0px - var(--li-identation)), -50%);position:absolute;top:50%;padding-right:100%}.arrow.svelte-1vyml86{transform-origin:25% 50%;position:relative;line-height:1.1em;font-size:0.75em;margin-left:0;transition:150ms;color:var(--arrow-sign);user-select:none;font-family:'Courier New', Courier, monospace}.expanded.svelte-1vyml86{transform:rotateZ(90deg) translateX(-3px)}")}function at(e){let t,n,r,s;return{c(){t=N("div"),n=N("div"),n.textContent="▶",L(n,"class","arrow svelte-1vyml86"),W(n,"expanded",e[0]),L(t,"class","container svelte-1vyml86")},m(o,a){I(o,t,a),M(t,n),r||(s=F(t,"click",e[1]),r=!0)},p(e,t){let[r]=t;1&r&&W(n,"expanded",e[0])},i:i,o:i,d(e){e&&C(t),r=!1,s()}}}function it(e,t,n){let{expanded:r}=t;return e.$$set=e=>{"expanded"in e&&n(0,r=e.expanded)},[r,function(t){oe.call(this,e,t)}]}class ct extends Re{constructor(e){super(),De(this,e,it,at,v,{expanded:0},ot)}}function lt(e){$(e,"svelte-1vlbacg","label.svelte-1vlbacg{display:inline-block;color:var(--label-color);padding:0}.spaced.svelte-1vlbacg{padding-right:var(--li-colon-space)}")}function ut(e){let t,n,r,s,o,a;return{c(){t=N("label"),n=N("span"),r=R(e[0]),s=R(e[2]),L(t,"class","svelte-1vlbacg"),W(t,"spaced",e[1])},m(i,c){I(i,t,c),M(t,n),M(n,r),M(n,s),o||(a=F(t,"click",e[5]),o=!0)},p(e,n){1&n&&U(r,e[0]),4&n&&U(s,e[2]),2&n&&W(t,"spaced",e[1])},d(e){e&&C(t),o=!1,a()}}}function pt(e){let t,n=e[3]&&e[0]&&ut(e);return{c(){n&&n.c(),t=G()},m(e,r){n&&n.m(e,r),I(e,t,r)},p(e,r){let[s]=r;e[3]&&e[0]?n?n.p(e,s):(n=ut(e),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null)},i:i,o:i,d(e){n&&n.d(e),e&&C(t)}}}function dt(e,t,n){let r,{key:s,isParentExpanded:o,isParentArray:a=!1,colon:i=":"}=t;return e.$$set=e=>{"key"in e&&n(0,s=e.key),"isParentExpanded"in e&&n(1,o=e.isParentExpanded),"isParentArray"in e&&n(4,a=e.isParentArray),"colon"in e&&n(2,i=e.colon)},e.$$.update=()=>{19&e.$$.dirty&&n(3,r=o||!a||s!=+s)},[s,o,i,r,a,function(t){oe.call(this,e,t)}]}class ft extends Re{constructor(e){super(),De(this,e,dt,pt,v,{key:0,isParentExpanded:1,isParentArray:4,colon:2},lt)}}function ht(e){$(e,"svelte-rwxv37","label.svelte-rwxv37{display:inline-block}.indent.svelte-rwxv37{padding-left:var(--li-identation)}.collapse.svelte-rwxv37{--li-display:inline;display:inline;font-style:italic}.comma.svelte-rwxv37{margin-left:-0.5em;margin-right:0.5em}label.svelte-rwxv37{position:relative}")}function vt(e,t,n){const r=e.slice();return r[12]=t[n],r[20]=n,r}function yt(e){let t,n;return t=new ct({props:{expanded:e[0]}}),t.$on("click",e[15]),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};1&n&&(r.expanded=e[0]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function gt(e){let t;return{c(){t=N("span"),t.textContent="…"},m(e,n){I(e,t,n)},p:i,i:i,o:i,d(e){e&&C(t)}}}function mt(e){let t,n,r,s,o,a=e[13],i=[];for(let t=0;t<a.length;t+=1)i[t]=xt(vt(e,a,t));const c=e=>ke(i[e],1,1,()=>{i[e]=null});let l=e[13].length<e[7].length&&_t();return{c(){t=N("ul");for(let e=0;e<i.length;e+=1)i[e].c();n=B(),l&&l.c(),L(t,"class","svelte-rwxv37"),W(t,"collapse",!e[0])},m(a,c){I(a,t,c);for(let e=0;e<i.length;e+=1)i[e].m(t,null);M(t,n),l&&l.m(t,null),r=!0,s||(o=F(t,"click",e[16]),s=!0)},p(e,r){if(10129&r){let s;for(a=e[13],s=0;s<a.length;s+=1){const o=vt(e,a,s);i[s]?(i[s].p(o,r),Oe(i[s],1)):(i[s]=xt(o),i[s].c(),Oe(i[s],1),i[s].m(t,n))}for(we(),s=a.length;s<i.length;s+=1)c(s);Pe()}e[13].length<e[7].length?l||(l=_t(),l.c(),l.m(t,null)):l&&(l.d(1),l=null),1&r&&W(t,"collapse",!e[0])},i(e){if(!r){for(let e=0;e<a.length;e+=1)Oe(i[e]);r=!0}},o(e){i=i.filter(Boolean);for(let e=0;e<i.length;e+=1)ke(i[e]);r=!1},d(e){e&&C(t),T(i,e),l&&l.d(),s=!1,o()}}}function bt(e){let t;return{c(){t=N("span"),t.textContent=",",L(t,"class","comma svelte-rwxv37")},m(e,n){I(e,t,n)},d(e){e&&C(t)}}}function xt(e){let t,n,r,s;t=new an({props:{key:e[8](e[12]),isParentExpanded:e[0],isParentArray:e[4],value:e[0]?e[9](e[12]):e[10](e[12])}});let o=!e[0]&&e[20]<e[7].length-1&&bt();return{c(){Ie(t.$$.fragment),n=B(),o&&o.c(),r=G()},m(e,a){Ce(t,e,a),I(e,n,a),o&&o.m(e,a),I(e,r,a),s=!0},p(e,n){const s={};8448&n&&(s.key=e[8](e[12])),1&n&&(s.isParentExpanded=e[0]),16&n&&(s.isParentArray=e[4]),9729&n&&(s.value=e[0]?e[9](e[12]):e[10](e[12])),t.$set(s),!e[0]&&e[20]<e[7].length-1?o||(o=bt(),o.c(),o.m(r.parentNode,r)):o&&(o.d(1),o=null)},i(e){s||(Oe(t.$$.fragment,e),s=!0)},o(e){ke(t.$$.fragment,e),s=!1},d(e){Te(t,e),e&&C(n),o&&o.d(e),e&&C(r)}}}function _t(e){let t;return{c(){t=N("span"),t.textContent="…"},m(e,n){I(e,t,n)},d(e){e&&C(t)}}}function wt(e){let t,n,r,s,o,a,i,c,l,u,p,d,f,h,v,y,g,m,b=e[11]&&e[2]&&yt(e);s=new ft({props:{key:e[12],colon:e[14].colon,isParentExpanded:e[2],isParentArray:e[3]}}),s.$on("click",e[15]);const x=[mt,gt],_=[];function w(e,t){return e[2]?0:1}return p=w(e),d=_[p]=x[p](e),{c(){t=N("li"),n=N("label"),b&&b.c(),r=B(),Ie(s.$$.fragment),o=B(),a=N("span"),i=N("span"),c=R(e[1]),l=R(e[5]),u=B(),d.c(),f=B(),h=N("span"),v=R(e[6]),L(n,"class","svelte-rwxv37"),L(t,"class","svelte-rwxv37"),W(t,"indent",e[2])},m(d,x){I(d,t,x),M(t,n),b&&b.m(n,null),M(n,r),Ce(s,n,null),M(n,o),M(n,a),M(a,i),M(i,c),M(a,l),M(t,u),_[p].m(t,null),M(t,f),M(t,h),M(h,v),y=!0,g||(m=F(a,"click",e[15]),g=!0)},p(e,o){let[a]=o;e[11]&&e[2]?b?(b.p(e,a),2052&a&&Oe(b,1)):(b=yt(e),b.c(),Oe(b,1),b.m(n,r)):b&&(we(),ke(b,1,1,()=>{b=null}),Pe());const i={};4096&a&&(i.key=e[12]),4&a&&(i.isParentExpanded=e[2]),8&a&&(i.isParentArray=e[3]),s.$set(i),(!y||2&a)&&U(c,e[1]),(!y||32&a)&&U(l,e[5]);let u=p;p=w(e),p===u?_[p].p(e,a):(we(),ke(_[u],1,1,()=>{_[u]=null}),Pe(),d=_[p],d?d.p(e,a):(d=_[p]=x[p](e),d.c()),Oe(d,1),d.m(t,f)),(!y||64&a)&&U(v,e[6]),4&a&&W(t,"indent",e[2])},i(e){y||(Oe(b),Oe(s.$$.fragment,e),Oe(d),y=!0)},o(e){ke(b),ke(s.$$.fragment,e),ke(d),y=!1},d(e){e&&C(t),b&&b.d(),Te(s),_[p].d(),g=!1,m()}}}function Pt(e,t,n){let r,{key:s,keys:o,colon:a=":",label:i="",isParentExpanded:c,isParentArray:l,isArray:p=!1,bracketOpen:d,bracketClose:f}=t,{previewKeys:h=o}=t,{getKey:v=e=>e}=t,{getValue:y=e=>e}=t,{getPreviewValue:g=y}=t,{expanded:m=!1,expandable:b=!0}=t;const x=se(st);return re(st,u(u({},x),{},{colon:a})),e.$$set=e=>{"key"in e&&n(12,s=e.key),"keys"in e&&n(17,o=e.keys),"colon"in e&&n(18,a=e.colon),"label"in e&&n(1,i=e.label),"isParentExpanded"in e&&n(2,c=e.isParentExpanded),"isParentArray"in e&&n(3,l=e.isParentArray),"isArray"in e&&n(4,p=e.isArray),"bracketOpen"in e&&n(5,d=e.bracketOpen),"bracketClose"in e&&n(6,f=e.bracketClose),"previewKeys"in e&&n(7,h=e.previewKeys),"getKey"in e&&n(8,v=e.getKey),"getValue"in e&&n(9,y=e.getValue),"getPreviewValue"in e&&n(10,g=e.getPreviewValue),"expanded"in e&&n(0,m=e.expanded),"expandable"in e&&n(11,b=e.expandable)},e.$$.update=()=>{4&e.$$.dirty&&(c||n(0,m=!1)),131201&e.$$.dirty&&n(13,r=m?o:h.slice(0,5))},[m,i,c,l,p,d,f,h,v,y,g,b,s,r,x,function(){n(0,m=!m)},function(){n(0,m=!0)},o,a]}class Ot extends Re{constructor(e){super(),De(this,e,Pt,wt,v,{key:12,keys:17,colon:18,label:1,isParentExpanded:2,isParentArray:3,isArray:4,bracketOpen:5,bracketClose:6,previewKeys:7,getKey:8,getValue:9,getPreviewValue:10,expanded:0,expandable:11},ht)}}function kt(e){let t,n;return t=new Ot({props:{key:e[0],expanded:e[4],isParentExpanded:e[1],isParentArray:e[2],keys:e[5],previewKeys:e[5],getValue:e[6],label:e[3]+" ",bracketOpen:"{",bracketClose:"}"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};1&r&&(s.key=e[0]),16&r&&(s.expanded=e[4]),2&r&&(s.isParentExpanded=e[1]),4&r&&(s.isParentArray=e[2]),32&r&&(s.keys=e[5]),32&r&&(s.previewKeys=e[5]),8&r&&(s.label=e[3]+" "),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Et(e,t,n){let r,{key:s,value:o,isParentExpanded:a,isParentArray:i,nodeType:c}=t,{expanded:l=!0}=t;return e.$$set=e=>{"key"in e&&n(0,s=e.key),"value"in e&&n(7,o=e.value),"isParentExpanded"in e&&n(1,a=e.isParentExpanded),"isParentArray"in e&&n(2,i=e.isParentArray),"nodeType"in e&&n(3,c=e.nodeType),"expanded"in e&&n(4,l=e.expanded)},e.$$.update=()=>{128&e.$$.dirty&&n(5,r=Object.getOwnPropertyNames(o))},[s,a,i,c,l,r,function(e){return o[e]},o]}class Mt extends Re{constructor(e){super(),De(this,e,Et,kt,v,{key:0,value:7,isParentExpanded:1,isParentArray:2,nodeType:3,expanded:4})}}function $t(e){let t,n;return t=new Ot({props:{key:e[0],expanded:e[4],isParentExpanded:e[2],isParentArray:e[3],isArray:!0,keys:e[5],previewKeys:e[6],getValue:e[7],label:"Array("+e[1].length+")",bracketOpen:"[",bracketClose:"]"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};1&r&&(s.key=e[0]),16&r&&(s.expanded=e[4]),4&r&&(s.isParentExpanded=e[2]),8&r&&(s.isParentArray=e[3]),32&r&&(s.keys=e[5]),64&r&&(s.previewKeys=e[6]),2&r&&(s.label="Array("+e[1].length+")"),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function At(e,t,n){let r,s,{key:o,value:a,isParentExpanded:i,isParentArray:c}=t,{expanded:l=JSON.stringify(a).length<1024}=t;const u=new Set(["length"]);return e.$$set=e=>{"key"in e&&n(0,o=e.key),"value"in e&&n(1,a=e.value),"isParentExpanded"in e&&n(2,i=e.isParentExpanded),"isParentArray"in e&&n(3,c=e.isParentArray),"expanded"in e&&n(4,l=e.expanded)},e.$$.update=()=>{2&e.$$.dirty&&n(5,r=Object.getOwnPropertyNames(a)),32&e.$$.dirty&&n(6,s=r.filter(e=>!u.has(e)))},[o,a,i,c,l,r,s,function(e){return a[e]}]}class jt extends Re{constructor(e){super(),De(this,e,At,$t,v,{key:0,value:1,isParentExpanded:2,isParentArray:3,expanded:4})}}function St(e){let t,n;return t=new Ot({props:{key:e[0],isParentExpanded:e[1],isParentArray:e[2],keys:e[4],getKey:It,getValue:Ct,isArray:!0,label:e[3]+"("+e[4].length+")",bracketOpen:"{",bracketClose:"}"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};1&r&&(s.key=e[0]),2&r&&(s.isParentExpanded=e[1]),4&r&&(s.isParentArray=e[2]),16&r&&(s.keys=e[4]),24&r&&(s.label=e[3]+"("+e[4].length+")"),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function It(e){return String(e[0])}function Ct(e){return e[1]}function Tt(e,t,n){let{key:r,value:s,isParentExpanded:o,isParentArray:a,nodeType:i}=t,c=[];return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(5,s=e.value),"isParentExpanded"in e&&n(1,o=e.isParentExpanded),"isParentArray"in e&&n(2,a=e.isParentArray),"nodeType"in e&&n(3,i=e.nodeType)},e.$$.update=()=>{if(32&e.$$.dirty){let e=[],t=0;for(const n of s)e.push([t++,n]);n(4,c=e)}},[r,o,a,i,c,s]}class Nt extends Re{constructor(e){super(),De(this,e,Tt,St,v,{key:0,value:5,isParentExpanded:1,isParentArray:2,nodeType:3})}}class Dt{constructor(e,t){this.key=e,this.value=t}}function Rt(e){let t,n;return t=new Ot({props:{key:e[0],isParentExpanded:e[1],isParentArray:e[2],keys:e[4],getKey:Bt,getValue:Gt,label:e[3]+"("+e[4].length+")",colon:"",bracketOpen:"{",bracketClose:"}"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};1&r&&(s.key=e[0]),2&r&&(s.isParentExpanded=e[1]),4&r&&(s.isParentArray=e[2]),16&r&&(s.keys=e[4]),24&r&&(s.label=e[3]+"("+e[4].length+")"),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Bt(e){return e[0]}function Gt(e){return e[1]}function Ft(e,t,n){let{key:r,value:s,isParentExpanded:o,isParentArray:a,nodeType:i}=t,c=[];return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(5,s=e.value),"isParentExpanded"in e&&n(1,o=e.isParentExpanded),"isParentArray"in e&&n(2,a=e.isParentArray),"nodeType"in e&&n(3,i=e.nodeType)},e.$$.update=()=>{if(32&e.$$.dirty){let e=[],t=0;for(const n of s)e.push([t++,new Dt(n[0],n[1])]);n(4,c=e)}},[r,o,a,i,c,s]}class Lt extends Re{constructor(e){super(),De(this,e,Ft,Rt,v,{key:0,value:5,isParentExpanded:1,isParentArray:2,nodeType:3})}}function Ut(e){let t,n;return t=new Ot({props:{expanded:e[4],isParentExpanded:e[2],isParentArray:e[3],key:e[2]?String(e[0]):e[1].key,keys:e[5],getValue:e[6],label:e[2]?"Entry ":"=> ",bracketOpen:"{",bracketClose:"}"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};16&r&&(s.expanded=e[4]),4&r&&(s.isParentExpanded=e[2]),8&r&&(s.isParentArray=e[3]),7&r&&(s.key=e[2]?String(e[0]):e[1].key),4&r&&(s.label=e[2]?"Entry ":"=> "),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function zt(e,t,n){let{key:r,value:s,isParentExpanded:o,isParentArray:a}=t,{expanded:i=!1}=t;return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(1,s=e.value),"isParentExpanded"in e&&n(2,o=e.isParentExpanded),"isParentArray"in e&&n(3,a=e.isParentArray),"expanded"in e&&n(4,i=e.expanded)},[r,s,o,a,i,["key","value"],function(e){return s[e]}]}class qt extends Re{constructor(e){super(),De(this,e,zt,Ut,v,{key:0,value:1,isParentExpanded:2,isParentArray:3,expanded:4})}}function Vt(e){$(e,"svelte-3bjyvl","li.svelte-3bjyvl{user-select:text;word-wrap:break-word;word-break:break-all}.indent.svelte-3bjyvl{padding-left:var(--li-identation)}.String.svelte-3bjyvl{color:var(--string-color)}.Date.svelte-3bjyvl{color:var(--date-color)}.Number.svelte-3bjyvl{color:var(--number-color)}.Boolean.svelte-3bjyvl{color:var(--boolean-color)}.Null.svelte-3bjyvl{color:var(--null-color)}.Undefined.svelte-3bjyvl{color:var(--undefined-color)}.Function.svelte-3bjyvl{color:var(--function-color);font-style:italic}.Symbol.svelte-3bjyvl{color:var(--symbol-color)}")}function Wt(e){let t,n,r,s,o,a,i,c=(e[2]?e[2](e[1]):e[1])+"";return n=new ft({props:{key:e[0],colon:e[6],isParentExpanded:e[3],isParentArray:e[4]}}),{c(){t=N("li"),Ie(n.$$.fragment),r=B(),s=N("span"),o=R(c),L(s,"class",a=x(e[5])+" svelte-3bjyvl"),L(t,"class","svelte-3bjyvl"),W(t,"indent",e[3])},m(e,a){I(e,t,a),Ce(n,t,null),M(t,r),M(t,s),M(s,o),i=!0},p(e,r){let[l]=r;const u={};1&l&&(u.key=e[0]),8&l&&(u.isParentExpanded=e[3]),16&l&&(u.isParentArray=e[4]),n.$set(u),(!i||6&l)&&c!==(c=(e[2]?e[2](e[1]):e[1])+"")&&U(o,c),(!i||32&l&&a!==(a=x(e[5])+" svelte-3bjyvl"))&&L(s,"class",a),8&l&&W(t,"indent",e[3])},i(e){i||(Oe(n.$$.fragment,e),i=!0)},o(e){ke(n.$$.fragment,e),i=!1},d(e){e&&C(t),Te(n)}}}function Ht(e,t,n){let{key:r,value:s,valueGetter:o=null,isParentExpanded:a,isParentArray:i,nodeType:c}=t;const{colon:l}=se(st);return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(1,s=e.value),"valueGetter"in e&&n(2,o=e.valueGetter),"isParentExpanded"in e&&n(3,a=e.isParentExpanded),"isParentArray"in e&&n(4,i=e.isParentArray),"nodeType"in e&&n(5,c=e.nodeType)},[r,s,o,a,i,c,l]}class Jt extends Re{constructor(e){super(),De(this,e,Ht,Wt,v,{key:0,value:1,valueGetter:2,isParentExpanded:3,isParentArray:4,nodeType:5},Vt)}}function Kt(e){$(e,"svelte-1ca3gb2","li.svelte-1ca3gb2{user-select:text;word-wrap:break-word;word-break:break-all}.indent.svelte-1ca3gb2{padding-left:var(--li-identation)}.collapse.svelte-1ca3gb2{--li-display:inline;display:inline;font-style:italic}")}function Yt(e,t,n){const r=e.slice();return r[8]=t[n],r[10]=n,r}function Xt(e){let t,n;return t=new ct({props:{expanded:e[0]}}),t.$on("click",e[7]),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};1&n&&(r.expanded=e[0]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Qt(e){let t,n,r=e[0]&&Zt(e);return{c(){t=N("ul"),r&&r.c(),L(t,"class","svelte-1ca3gb2"),W(t,"collapse",!e[0])},m(e,s){I(e,t,s),r&&r.m(t,null),n=!0},p(e,n){e[0]?r?(r.p(e,n),1&n&&Oe(r,1)):(r=Zt(e),r.c(),Oe(r,1),r.m(t,null)):r&&(we(),ke(r,1,1,()=>{r=null}),Pe()),1&n&&W(t,"collapse",!e[0])},i(e){n||(Oe(r),n=!0)},o(e){ke(r),n=!1},d(e){e&&C(t),r&&r.d()}}}function Zt(e){let t,n,r,s,o,a,i;t=new an({props:{key:"message",value:e[2].message}}),s=new ft({props:{key:"stack",colon:":",isParentExpanded:e[3]}});let c=e[5],l=[];for(let t=0;t<c.length;t+=1)l[t]=en(Yt(e,c,t));return{c(){Ie(t.$$.fragment),n=B(),r=N("li"),Ie(s.$$.fragment),o=B(),a=N("span");for(let e=0;e<l.length;e+=1)l[e].c();L(r,"class","svelte-1ca3gb2")},m(e,c){Ce(t,e,c),I(e,n,c),I(e,r,c),Ce(s,r,null),M(r,o),M(r,a);for(let e=0;e<l.length;e+=1)l[e].m(a,null);i=!0},p(e,n){const r={};4&n&&(r.value=e[2].message),t.$set(r);const o={};if(8&n&&(o.isParentExpanded=e[3]),s.$set(o),32&n){let t;for(c=e[5],t=0;t<c.length;t+=1){const r=Yt(e,c,t);l[t]?l[t].p(r,n):(l[t]=en(r),l[t].c(),l[t].m(a,null))}for(;t<l.length;t+=1)l[t].d(1);l.length=c.length}},i(e){i||(Oe(t.$$.fragment,e),Oe(s.$$.fragment,e),i=!0)},o(e){ke(t.$$.fragment,e),ke(s.$$.fragment,e),i=!1},d(e){Te(t,e),e&&C(n),e&&C(r),Te(s),T(l,e)}}}function en(e){let t,n,r,s=e[8]+"";return{c(){t=N("span"),n=R(s),r=N("br"),L(t,"class","svelte-1ca3gb2"),W(t,"indent",e[10]>0)},m(e,s){I(e,t,s),M(t,n),I(e,r,s)},p(e,t){32&t&&s!==(s=e[8]+"")&&U(n,s)},d(e){e&&C(t),e&&C(r)}}}function tn(e){let t,n,r,s,o,a,i,c,l,u,p,d=(e[0]?"":e[2].message)+"",f=e[3]&&Xt(e);r=new ft({props:{key:e[1],colon:e[6].colon,isParentExpanded:e[3],isParentArray:e[4]}});let h=e[3]&&Qt(e);return{c(){t=N("li"),f&&f.c(),n=B(),Ie(r.$$.fragment),s=B(),o=N("span"),a=R("Error: "),i=R(d),c=B(),h&&h.c(),L(t,"class","svelte-1ca3gb2"),W(t,"indent",e[3])},m(d,v){I(d,t,v),f&&f.m(t,null),M(t,n),Ce(r,t,null),M(t,s),M(t,o),M(o,a),M(o,i),M(t,c),h&&h.m(t,null),l=!0,u||(p=F(o,"click",e[7]),u=!0)},p(e,s){let[o]=s;e[3]?f?(f.p(e,o),8&o&&Oe(f,1)):(f=Xt(e),f.c(),Oe(f,1),f.m(t,n)):f&&(we(),ke(f,1,1,()=>{f=null}),Pe());const a={};2&o&&(a.key=e[1]),8&o&&(a.isParentExpanded=e[3]),16&o&&(a.isParentArray=e[4]),r.$set(a),(!l||5&o)&&d!==(d=(e[0]?"":e[2].message)+"")&&U(i,d),e[3]?h?(h.p(e,o),8&o&&Oe(h,1)):(h=Qt(e),h.c(),Oe(h,1),h.m(t,null)):h&&(we(),ke(h,1,1,()=>{h=null}),Pe()),8&o&&W(t,"indent",e[3])},i(e){l||(Oe(f),Oe(r.$$.fragment,e),Oe(h),l=!0)},o(e){ke(f),ke(r.$$.fragment,e),ke(h),l=!1},d(e){e&&C(t),f&&f.d(),Te(r),h&&h.d(),u=!1,p()}}}function nn(e,t,n){let r,{key:s,value:o,isParentExpanded:a,isParentArray:i}=t,{expanded:c=!1}=t;const l=se(st);return re(st,u(u({},l),{},{colon:":"})),e.$$set=e=>{"key"in e&&n(1,s=e.key),"value"in e&&n(2,o=e.value),"isParentExpanded"in e&&n(3,a=e.isParentExpanded),"isParentArray"in e&&n(4,i=e.isParentArray),"expanded"in e&&n(0,c=e.expanded)},e.$$.update=()=>{4&e.$$.dirty&&n(5,r=o.stack.split("\n")),8&e.$$.dirty&&(a||n(0,c=!1))},[c,s,o,a,i,r,l,function(){n(0,c=!c)}]}class rn extends Re{constructor(e){super(),De(this,e,nn,tn,v,{key:1,value:2,isParentExpanded:3,isParentArray:4,expanded:0},Kt)}}function sn(e){let t,n,r;var s=e[6];function o(e){return{props:{key:e[0],value:e[1],isParentExpanded:e[2],isParentArray:e[3],nodeType:e[4],valueGetter:e[5]}}}return s&&(t=new s(o(e))),{c(){t&&Ie(t.$$.fragment),n=G()},m(e,s){t&&Ce(t,e,s),I(e,n,s),r=!0},p(e,r){let[a]=r;const i={};if(1&a&&(i.key=e[0]),2&a&&(i.value=e[1]),4&a&&(i.isParentExpanded=e[2]),8&a&&(i.isParentArray=e[3]),16&a&&(i.nodeType=e[4]),32&a&&(i.valueGetter=e[5]),s!==(s=e[6])){if(t){we();const e=t;ke(e.$$.fragment,1,0,()=>{Te(e,1)}),Pe()}s?(t=new s(o(e)),Ie(t.$$.fragment),Oe(t.$$.fragment,1),Ce(t,n.parentNode,n)):t=null}else s&&t.$set(i)},i(e){r||(t&&Oe(t.$$.fragment,e),r=!0)},o(e){t&&ke(t.$$.fragment,e),r=!1},d(e){e&&C(n),t&&Te(t,e)}}}function on(e,t,n){let r,s,o,{key:a,value:i,isParentExpanded:c,isParentArray:l}=t;return e.$$set=e=>{"key"in e&&n(0,a=e.key),"value"in e&&n(1,i=e.value),"isParentExpanded"in e&&n(2,c=e.isParentExpanded),"isParentArray"in e&&n(3,l=e.isParentArray)},e.$$.update=()=>{2&e.$$.dirty&&n(4,r=function(e){const t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t?"function"==typeof e[Symbol.iterator]?"Iterable":e.constructor.name:t}(i)),16&e.$$.dirty&&n(6,s=function(e){switch(e){case"Object":return Mt;case"Error":return rn;case"Array":return jt;case"Iterable":case"Map":case"Set":return"function"==typeof i.set?Lt:Nt;case"MapEntry":return qt;default:return Jt}}(r)),16&e.$$.dirty&&n(5,o=function(e){switch(e){case"Object":case"Error":case"Array":case"Iterable":case"Map":case"Set":case"MapEntry":case"Number":return;case"String":return e=>`"${e}"`;case"Boolean":return e=>e?"true":"false";case"Date":return e=>e.toISOString();case"Null":return()=>"null";case"Undefined":return()=>"undefined";case"Function":case"Symbol":return e=>e.toString();default:return()=>`<${e}>`}}(r))},[a,i,c,l,r,o,s]}class an extends Re{constructor(e){super(),De(this,e,on,sn,v,{key:0,value:1,isParentExpanded:2,isParentArray:3})}}function cn(e){$(e,"svelte-773n60","ul.svelte-773n60{--string-color:var(--json-tree-string-color, #cb3f41);--symbol-color:var(--json-tree-symbol-color, #cb3f41);--boolean-color:var(--json-tree-boolean-color, #112aa7);--function-color:var(--json-tree-function-color, #112aa7);--number-color:var(--json-tree-number-color, #3029cf);--label-color:var(--json-tree-label-color, #871d8f);--arrow-color:var(--json-tree-arrow-color, #727272);--null-color:var(--json-tree-null-color, #8d8d8d);--undefined-color:var(--json-tree-undefined-color, #8d8d8d);--date-color:var(--json-tree-date-color, #8d8d8d);--li-identation:var(--json-tree-li-indentation, 1em);--li-line-height:var(--json-tree-li-line-height, 1.3);--li-colon-space:0.3em;font-size:var(--json-tree-font-size, 12px);font-family:var(--json-tree-font-family, 'Courier New', Courier, monospace)}ul.svelte-773n60 li{line-height:var(--li-line-height);display:var(--li-display, list-item);list-style:none}ul.svelte-773n60,ul.svelte-773n60 ul{padding:0;margin:0}")}function ln(e){let t,n,r;return n=new an({props:{key:e[0],value:e[1],isParentExpanded:!0,isParentArray:!1}}),{c(){t=N("ul"),Ie(n.$$.fragment),L(t,"class","svelte-773n60")},m(e,s){I(e,t,s),Ce(n,t,null),r=!0},p(e,t){let[r]=t;const s={};1&r&&(s.key=e[0]),2&r&&(s.value=e[1]),n.$set(s)},i(e){r||(Oe(n.$$.fragment,e),r=!0)},o(e){ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),Te(n)}}}function un(e,t,n){re(st,{});let{key:r="",value:s}=t;return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(1,s=e.value)},[r,s]}class pn extends Re{constructor(e){super(),De(this,e,un,ln,v,{key:0,value:1},cn)}}function dn(e){$(e,"svelte-jvfq3i",".svelte-jvfq3i{box-sizing:border-box}section.switcher.svelte-jvfq3i{position:sticky;bottom:0;transform:translateY(20px);margin:40px -20px 0;border-top:1px solid #999;padding:20px;background:#fff}label.svelte-jvfq3i{display:flex;align-items:baseline;gap:5px;font-weight:bold}select.svelte-jvfq3i{min-width:140px}")}function fn(e,t,n){const r=e.slice();return r[7]=t[n],r[9]=n,r}function hn(e){let t,n,r,s,o,a,i=e[1],c=[];for(let t=0;t<i.length;t+=1)c[t]=vn(fn(e,i,t));return{c(){t=N("section"),n=N("label"),r=R("Client\n \n "),s=N("select");for(let e=0;e<c.length;e+=1)c[e].c();L(s,"id",gn),L(s,"class","svelte-jvfq3i"),void 0===e[2]&&de(()=>e[6].call(s)),L(n,"class","svelte-jvfq3i"),L(t,"class","switcher svelte-jvfq3i")},m(i,l){I(i,t,l),M(t,n),M(n,r),M(n,s);for(let e=0;e<c.length;e+=1)c[e].m(s,null);q(s,e[2]),o||(a=[F(s,"change",e[3]),F(s,"change",e[6])],o=!0)},p(e,t){if(2&t){let n;for(i=e[1],n=0;n<i.length;n+=1){const r=fn(e,i,n);c[n]?c[n].p(r,t):(c[n]=vn(r),c[n].c(),c[n].m(s,null))}for(;n<c.length;n+=1)c[n].d(1);c.length=i.length}4&t&&q(s,e[2])},d(e){e&&C(t),T(c,e),o=!1,f(a)}}}function vn(e){let t,n,r,s,o,a,i,c,l,u=JSON.stringify(e[7].playerID)+"",p=JSON.stringify(e[7].matchID)+"",d=e[7].game.name+"";return{c(){t=N("option"),n=R(e[9]),r=R(" —\n playerID: "),s=R(u),o=R(",\n matchID: "),a=R(p),i=R("\n ("),c=R(d),l=R(")\n "),t.__value=e[9],t.value=t.__value,L(t,"class","svelte-jvfq3i")},m(e,u){I(e,t,u),M(t,n),M(t,r),M(t,s),M(t,o),M(t,a),M(t,i),M(t,c),M(t,l)},p(e,t){2&t&&u!==(u=JSON.stringify(e[7].playerID)+"")&&U(s,u),2&t&&p!==(p=JSON.stringify(e[7].matchID)+"")&&U(a,p),2&t&&d!==(d=e[7].game.name+"")&&U(c,d)},d(e){e&&C(t)}}}function yn(e){let t,n=e[1].length>1&&hn(e);return{c(){n&&n.c(),t=G()},m(e,r){n&&n.m(e,r),I(e,t,r)},p(e,r){let[s]=r;e[1].length>1?n?n.p(e,s):(n=hn(e),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null)},i:i,o:i,d(e){n&&n.d(e),e&&C(t)}}}const gn="bgio-debug-select-client";function mn(e,t,n){let r,s,o,a,c=i,l=()=>(c(),c=y(u,e=>n(5,a=e)),u);e.$$.on_destroy.push(()=>c());let{clientManager:u}=t;return l(),e.$$set=e=>{"clientManager"in e&&l(n(0,u=e.clientManager))},e.$$.update=()=>{32&e.$$.dirty&&n(4,({client:r,debuggableClients:s}=a),r,(n(1,s),n(5,a))),18&e.$$.dirty&&n(2,o=s.indexOf(r))},[u,s,o,e=>{const t=s[e.target.value];u.switchToClient(t);const n=document.getElementById(gn);n&&n.focus()},r,a,function(){o=V(this),n(2,o),n(1,s),n(4,r),n(5,a)}]}class bn extends Re{constructor(e){super(),De(this,e,mn,yn,v,{clientManager:0},dn)}}function xn(e){$(e,"svelte-1vfj1mn",".key.svelte-1vfj1mn.svelte-1vfj1mn{display:flex;flex-direction:row;align-items:center}button.svelte-1vfj1mn.svelte-1vfj1mn{cursor:pointer;min-width:10px;padding-left:5px;padding-right:5px;height:20px;line-height:20px;text-align:center;border:1px solid #ccc;box-shadow:1px 1px 1px #888;background:#eee;color:#444}button.svelte-1vfj1mn.svelte-1vfj1mn:hover{background:#ddd}.key.active.svelte-1vfj1mn button.svelte-1vfj1mn{background:#ddd;border:1px solid #999;box-shadow:none}label.svelte-1vfj1mn.svelte-1vfj1mn{margin-left:10px}")}function _n(e){let t,n,r,s,o,a=`(shortcut: ${e[0]})`;return{c(){t=N("label"),n=R(e[1]),r=B(),s=N("span"),o=R(a),L(s,"class","screen-reader-only"),L(t,"for",e[5]),L(t,"class","svelte-1vfj1mn")},m(e,a){I(e,t,a),M(t,n),M(t,r),M(t,s),M(s,o)},p(e,t){2&t&&U(n,e[1]),1&t&&a!==(a=`(shortcut: ${e[0]})`)&&U(o,a)},d(e){e&&C(t)}}}function wn(e){let t,n,r,s,o,a,c=e[1]&&_n(e);return{c(){t=N("div"),n=N("button"),r=R(e[0]),s=B(),c&&c.c(),L(n,"id",e[5]),n.disabled=e[2],L(n,"class","svelte-1vfj1mn"),L(t,"class","key svelte-1vfj1mn"),W(t,"active",e[3])},m(i,l){I(i,t,l),M(t,n),M(n,r),M(t,s),c&&c.m(t,null),o||(a=[F(window,"keydown",e[7]),F(n,"click",e[6])],o=!0)},p(e,s){let[o]=s;1&o&&U(r,e[0]),4&o&&(n.disabled=e[2]),e[1]?c?c.p(e,o):(c=_n(e),c.c(),c.m(t,null)):c&&(c.d(1),c=null),8&o&&W(t,"active",e[3])},i:i,o:i,d(e){e&&C(t),c&&c.d(),o=!1,f(a)}}}function Pn(e,t,n){let r,{value:s}=t,{onPress:o=null}=t,{label:a=null}=t,{disable:i=!1}=t;const{disableHotkeys:c}=se("hotkeys");g(e,c,e=>n(9,r=e));let l=!1,u=`key-${s}`;function p(){n(3,l=!1)}function d(){n(3,l=!0),setTimeout(p,200),o&&setTimeout(o,1)}return e.$$set=e=>{"value"in e&&n(0,s=e.value),"onPress"in e&&n(8,o=e.onPress),"label"in e&&n(1,a=e.label),"disable"in e&&n(2,i=e.disable)},[s,a,i,l,c,u,d,function(e){r||i||e.ctrlKey||e.metaKey||e.key!=s||(e.preventDefault(),d())},o]}class On extends Re{constructor(e){super(),De(this,e,Pn,wn,v,{value:0,onPress:8,label:1,disable:2},xn)}}function kn(e){$(e,"svelte-1mppqmp",".move.svelte-1mppqmp{display:flex;flex-direction:row;cursor:pointer;margin-left:10px;color:#666}.move.svelte-1mppqmp:hover{color:#333}.move.active.svelte-1mppqmp{color:#111;font-weight:bold}.arg-field.svelte-1mppqmp{outline:none;font-family:monospace}")}function En(e){let t,n,r,s,o,a,c,l,u,p,d;return{c(){t=N("div"),n=N("span"),r=R(e[2]),s=B(),o=N("span"),o.textContent="(",a=B(),c=N("span"),l=B(),u=N("span"),u.textContent=")",L(c,"class","arg-field svelte-1mppqmp"),L(c,"contenteditable",""),L(t,"class","move svelte-1mppqmp"),W(t,"active",e[3])},m(i,f){var v;I(i,t,f),M(t,n),M(n,r),M(t,s),M(t,o),M(t,a),M(t,c),e[6](c),M(t,l),M(t,u),p||(d=[F(c,"focus",function(){h(e[0])&&e[0].apply(this,arguments)}),F(c,"blur",function(){h(e[1])&&e[1].apply(this,arguments)}),F(c,"keypress",(v=Mn,function(e){return e.stopPropagation(),v.call(this,e)})),F(c,"keydown",e[5]),F(t,"click",function(){h(e[0])&&e[0].apply(this,arguments)})],p=!0)},p(n,s){let[o]=s;e=n,4&o&&U(r,e[2]),8&o&&W(t,"active",e[3])},i:i,o:i,d(n){n&&C(t),e[6](null),p=!1,f(d)}}}const Mn=()=>{};function $n(e,t,n){let r,{Activate:s}=t,{Deactivate:o}=t,{name:a}=t,{active:i}=t;const c=ne();var l;return l=()=>{i?r.focus():r.blur()},ee().$$.after_update.push(l),e.$$set=e=>{"Activate"in e&&n(0,s=e.Activate),"Deactivate"in e&&n(1,o=e.Deactivate),"name"in e&&n(2,a=e.name),"active"in e&&n(3,i=e.active)},[s,o,a,i,r,function(e){"Enter"==e.key&&(e.preventDefault(),function(){try{const e=r.innerText;let t=new Function(`return [${e}]`)();c("submit",t)}catch(e){c("error",e)}n(4,r.innerText="",r)}()),"Escape"==e.key&&(e.preventDefault(),o())},function(e){ie[e?"unshift":"push"](()=>{r=e,n(4,r)})}]}class An extends Re{constructor(e){super(),De(this,e,$n,En,v,{Activate:0,Deactivate:1,name:2,active:3},kn)}}function jn(e){$(e,"svelte-smqssc",".move-error.svelte-smqssc{color:#a00;font-weight:bold}.wrapper.svelte-smqssc{display:flex;flex-direction:row;align-items:center}")}function Sn(e){let t,n;return{c(){t=N("span"),n=R(e[2]),L(t,"class","move-error svelte-smqssc")},m(e,r){I(e,t,r),M(t,n)},p(e,t){4&t&&U(n,e[2])},d(e){e&&C(t)}}}function In(e){let t,n,r,s,o,a,i;r=new On({props:{value:e[0],onPress:e[4]}}),o=new An({props:{Activate:e[4],Deactivate:e[5],name:e[1],active:e[3]}}),o.$on("submit",e[6]),o.$on("error",e[7]);let c=e[2]&&Sn(e);return{c(){t=N("div"),n=N("div"),Ie(r.$$.fragment),s=B(),Ie(o.$$.fragment),a=B(),c&&c.c(),L(n,"class","wrapper svelte-smqssc")},m(e,l){I(e,t,l),M(t,n),Ce(r,n,null),M(n,s),Ce(o,n,null),M(t,a),c&&c.m(t,null),i=!0},p(e,n){let[s]=n;const a={};1&s&&(a.value=e[0]),r.$set(a);const i={};2&s&&(i.name=e[1]),8&s&&(i.active=e[3]),o.$set(i),e[2]?c?c.p(e,s):(c=Sn(e),c.c(),c.m(t,null)):c&&(c.d(1),c=null)},i(e){i||(Oe(r.$$.fragment,e),Oe(o.$$.fragment,e),i=!0)},o(e){ke(r.$$.fragment,e),ke(o.$$.fragment,e),i=!1},d(e){e&&C(t),Te(r),Te(o),c&&c.d()}}}function Cn(e,t,n){let{shortcut:s}=t,{name:o}=t,{fn:a}=t;const{disableHotkeys:i}=se("hotkeys");let c="",l=!1;function u(){i.set(!1),n(2,c=""),n(3,l=!1)}return e.$$set=e=>{"shortcut"in e&&n(0,s=e.shortcut),"name"in e&&n(1,o=e.name),"fn"in e&&n(8,a=e.fn)},[s,o,c,l,function(){i.set(!0),n(3,l=!0)},u,function(e){n(2,c=""),u(),a.apply(this,e.detail)},function(e){n(2,c=e.detail),(0,r.g)(e.detail)},a]}class Tn extends Re{constructor(e){super(),De(this,e,Cn,In,v,{shortcut:0,name:1,fn:8},jn)}}function Nn(e){$(e,"svelte-9hauj9","ul.svelte-9hauj9{padding-left:0}li.svelte-9hauj9{list-style:none;margin:0;margin-bottom:5px}")}function Dn(e){let t,n,r,s,o,a,i,c,l,u,p,d,f;return r=new On({props:{value:"1",onPress:e[0].reset,label:"reset"}}),a=new On({props:{value:"2",onPress:e[2],label:"save"}}),l=new On({props:{value:"3",onPress:e[3],label:"restore"}}),d=new On({props:{value:".",onPress:e[1],label:"hide"}}),{c(){t=N("ul"),n=N("li"),Ie(r.$$.fragment),s=B(),o=N("li"),Ie(a.$$.fragment),i=B(),c=N("li"),Ie(l.$$.fragment),u=B(),p=N("li"),Ie(d.$$.fragment),L(n,"class","svelte-9hauj9"),L(o,"class","svelte-9hauj9"),L(c,"class","svelte-9hauj9"),L(p,"class","svelte-9hauj9"),L(t,"id","debug-controls"),L(t,"class","controls svelte-9hauj9")},m(e,h){I(e,t,h),M(t,n),Ce(r,n,null),M(t,s),M(t,o),Ce(a,o,null),M(t,i),M(t,c),Ce(l,c,null),M(t,u),M(t,p),Ce(d,p,null),f=!0},p(e,t){let[n]=t;const s={};1&n&&(s.onPress=e[0].reset),r.$set(s);const o={};2&n&&(o.onPress=e[1]),d.$set(o)},i(e){f||(Oe(r.$$.fragment,e),Oe(a.$$.fragment,e),Oe(l.$$.fragment,e),Oe(d.$$.fragment,e),f=!0)},o(e){ke(r.$$.fragment,e),ke(a.$$.fragment,e),ke(l.$$.fragment,e),ke(d.$$.fragment,e),f=!1},d(e){e&&C(t),Te(r),Te(a),Te(l),Te(d)}}}function Rn(e,t,n){let{client:o}=t,{ToggleVisibility:a}=t;return e.$$set=e=>{"client"in e&&n(0,o=e.client),"ToggleVisibility"in e&&n(1,a=e.ToggleVisibility)},[o,a,function(){const e=o.getState(),t=(0,s.stringify)(u(u({},e),{},{_undo:[],_redo:[],deltalog:[]}));window.localStorage.setItem("gamestate",t),window.localStorage.setItem("initialState",(0,s.stringify)(o.initialState))},function(){const e=window.localStorage.getItem("gamestate"),t=window.localStorage.getItem("initialState");if(null!==e&&null!==t){const n=(0,s.parse)(e),a=(0,s.parse)(t);o.store.dispatch((0,r.s)({state:n,initialState:a}))}}]}class Bn extends Re{constructor(e){super(),De(this,e,Rn,Dn,v,{client:0,ToggleVisibility:1},Nn)}}function Gn(e){$(e,"svelte-19aan9p",".player-box.svelte-19aan9p{display:flex;flex-direction:row}.player.svelte-19aan9p{cursor:pointer;text-align:center;width:30px;height:30px;line-height:30px;background:#eee;border:3px solid #fefefe;box-sizing:content-box;padding:0}.player.current.svelte-19aan9p{background:#555;color:#eee;font-weight:bold}.player.active.svelte-19aan9p{border:3px solid #ff7f50}")}function Fn(e,t,n){const r=e.slice();return r[7]=t[n],r}function Ln(e){let t,n,r,s,o,a,i=e[7]+"";function c(){return e[5](e[7])}return{c(){t=N("button"),n=R(i),r=B(),L(t,"class","player svelte-19aan9p"),L(t,"aria-label",s=e[4](e[7])),W(t,"current",e[7]==e[0].currentPlayer),W(t,"active",e[7]==e[1])},m(e,s){I(e,t,s),M(t,n),M(t,r),o||(a=F(t,"click",c),o=!0)},p(r,o){e=r,4&o&&i!==(i=e[7]+"")&&U(n,i),4&o&&s!==(s=e[4](e[7]))&&L(t,"aria-label",s),5&o&&W(t,"current",e[7]==e[0].currentPlayer),6&o&&W(t,"active",e[7]==e[1])},d(e){e&&C(t),o=!1,a()}}}function Un(e){let t,n=e[2],r=[];for(let t=0;t<n.length;t+=1)r[t]=Ln(Fn(e,n,t));return{c(){t=N("div");for(let e=0;e<r.length;e+=1)r[e].c();L(t,"class","player-box svelte-19aan9p")},m(e,n){I(e,t,n);for(let e=0;e<r.length;e+=1)r[e].m(t,null)},p(e,s){let[o]=s;if(31&o){let s;for(n=e[2],s=0;s<n.length;s+=1){const a=Fn(e,n,s);r[s]?r[s].p(a,o):(r[s]=Ln(a),r[s].c(),r[s].m(t,null))}for(;s<r.length;s+=1)r[s].d(1);r.length=n.length}},i:i,o:i,d(e){e&&C(t),T(r,e)}}}function zn(e,t,n){let{ctx:r}=t,{playerID:s}=t;const o=ne();function a(e){o("change",e==s?{playerID:null}:{playerID:e})}let i;return e.$$set=e=>{"ctx"in e&&n(0,r=e.ctx),"playerID"in e&&n(1,s=e.playerID)},e.$$.update=()=>{1&e.$$.dirty&&n(2,i=r?[...Array(r.numPlayers).keys()].map(e=>e.toString()):[])},[r,s,i,a,function(e){const t=[];e==r.currentPlayer&&t.push("current"),e==s&&t.push("active");let n=`Player ${e}`;return t.length&&(n+=` (${t.join(", ")})`),n},e=>a(e)]}class qn extends Re{constructor(e){super(),De(this,e,zn,Un,v,{ctx:0,playerID:1},Gn)}}function Vn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Wn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Hn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Jn(e){return Jn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Jn(e)}function Kn(e,t){return Kn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Kn(e,t)}function Yn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Xn(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Yn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Yn(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){i=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw o}}}}function Qn(e){$(e,"svelte-146sq5f",".tree.svelte-146sq5f{--json-tree-font-family:monospace;--json-tree-font-size:14px;--json-tree-null-color:#757575}.label.svelte-146sq5f{margin-bottom:0;text-transform:none}h3.svelte-146sq5f{text-transform:uppercase}ul.svelte-146sq5f{padding-left:0}li.svelte-146sq5f{list-style:none;margin:0;margin-bottom:5px}")}function Zn(e,t,n){const r=e.slice();return r[11]=t[n][0],r[12]=t[n][1],r}function er(e){let t,n,r,s;return n=new Tn({props:{shortcut:e[8][e[11]],fn:e[12],name:e[11]}}),{c(){t=N("li"),Ie(n.$$.fragment),r=B(),L(t,"class","svelte-146sq5f")},m(e,o){I(e,t,o),Ce(n,t,null),M(t,r),s=!0},p(e,t){const r={};16&t&&(r.shortcut=e[8][e[11]]),16&t&&(r.fn=e[12]),16&t&&(r.name=e[11]),n.$set(r)},i(e){s||(Oe(n.$$.fragment,e),s=!0)},o(e){ke(n.$$.fragment,e),s=!1},d(e){e&&C(t),Te(n)}}}function tr(e){let t,n,r;return n=new Tn({props:{name:"endStage",shortcut:7,fn:e[5].endStage}}),{c(){t=N("li"),Ie(n.$$.fragment),L(t,"class","svelte-146sq5f")},m(e,s){I(e,t,s),Ce(n,t,null),r=!0},p(e,t){const r={};32&t&&(r.fn=e[5].endStage),n.$set(r)},i(e){r||(Oe(n.$$.fragment,e),r=!0)},o(e){ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),Te(n)}}}function nr(e){let t,n,r;return n=new Tn({props:{name:"endTurn",shortcut:8,fn:e[5].endTurn}}),{c(){t=N("li"),Ie(n.$$.fragment),L(t,"class","svelte-146sq5f")},m(e,s){I(e,t,s),Ce(n,t,null),r=!0},p(e,t){const r={};32&t&&(r.fn=e[5].endTurn),n.$set(r)},i(e){r||(Oe(n.$$.fragment,e),r=!0)},o(e){ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),Te(n)}}}function rr(e){let t,n,r;return n=new Tn({props:{name:"endPhase",shortcut:9,fn:e[5].endPhase}}),{c(){t=N("li"),Ie(n.$$.fragment),L(t,"class","svelte-146sq5f")},m(e,s){I(e,t,s),Ce(n,t,null),r=!0},p(e,t){const r={};32&t&&(r.fn=e[5].endPhase),n.$set(r)},i(e){r||(Oe(n.$$.fragment,e),r=!0)},o(e){ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),Te(n)}}}function sr(e){let t,n,r,s,o,a,i,c,l,u,p,d,f,h,v,y,g,m,b,x,_,w,P,O,k,E,$,A,j,S,D,R,G,F;s=new Bn({props:{client:e[0],ToggleVisibility:e[2]}}),l=new qn({props:{ctx:e[6],playerID:e[3]}}),l.$on("change",e[9]);let U=Object.entries(e[4]),z=[];for(let t=0;t<U.length;t+=1)z[t]=er(Zn(e,U,t));const q=e=>ke(z[e],1,1,()=>{z[e]=null});let V=e[6].activePlayers&&e[5].endStage&&tr(e),W=e[5].endTurn&&nr(e),H=e[6].phase&&e[5].endPhase&&rr(e);return E=new pn({props:{value:e[7]}}),D=new pn({props:{value:or(e[6])}}),G=new bn({props:{clientManager:e[1]}}),{c(){t=N("section"),n=N("h3"),n.textContent="Controls",r=B(),Ie(s.$$.fragment),o=B(),a=N("section"),i=N("h3"),i.textContent="Players",c=B(),Ie(l.$$.fragment),u=B(),p=N("section"),d=N("h3"),d.textContent="Moves",f=B(),h=N("ul");for(let e=0;e<z.length;e+=1)z[e].c();v=B(),y=N("section"),g=N("h3"),g.textContent="Events",m=B(),b=N("ul"),V&&V.c(),x=B(),W&&W.c(),_=B(),H&&H.c(),w=B(),P=N("section"),O=N("h3"),O.textContent="G",k=B(),Ie(E.$$.fragment),$=B(),A=N("section"),j=N("h3"),j.textContent="ctx",S=B(),Ie(D.$$.fragment),R=B(),Ie(G.$$.fragment),L(n,"class","svelte-146sq5f"),L(i,"class","svelte-146sq5f"),L(d,"class","svelte-146sq5f"),L(h,"class","svelte-146sq5f"),L(g,"class","svelte-146sq5f"),L(b,"class","svelte-146sq5f"),L(O,"class","label svelte-146sq5f"),L(P,"class","tree svelte-146sq5f"),L(j,"class","label svelte-146sq5f"),L(A,"class","tree svelte-146sq5f")},m(e,C){I(e,t,C),M(t,n),M(t,r),Ce(s,t,null),I(e,o,C),I(e,a,C),M(a,i),M(a,c),Ce(l,a,null),I(e,u,C),I(e,p,C),M(p,d),M(p,f),M(p,h);for(let e=0;e<z.length;e+=1)z[e].m(h,null);I(e,v,C),I(e,y,C),M(y,g),M(y,m),M(y,b),V&&V.m(b,null),M(b,x),W&&W.m(b,null),M(b,_),H&&H.m(b,null),I(e,w,C),I(e,P,C),M(P,O),M(P,k),Ce(E,P,null),I(e,$,C),I(e,A,C),M(A,j),M(A,S),Ce(D,A,null),I(e,R,C),Ce(G,e,C),F=!0},p(e,t){let[n]=t;const r={};1&n&&(r.client=e[0]),4&n&&(r.ToggleVisibility=e[2]),s.$set(r);const o={};if(64&n&&(o.ctx=e[6]),8&n&&(o.playerID=e[3]),l.$set(o),272&n){let t;for(U=Object.entries(e[4]),t=0;t<U.length;t+=1){const r=Zn(e,U,t);z[t]?(z[t].p(r,n),Oe(z[t],1)):(z[t]=er(r),z[t].c(),Oe(z[t],1),z[t].m(h,null))}for(we(),t=U.length;t<z.length;t+=1)q(t);Pe()}e[6].activePlayers&&e[5].endStage?V?(V.p(e,n),96&n&&Oe(V,1)):(V=tr(e),V.c(),Oe(V,1),V.m(b,x)):V&&(we(),ke(V,1,1,()=>{V=null}),Pe()),e[5].endTurn?W?(W.p(e,n),32&n&&Oe(W,1)):(W=nr(e),W.c(),Oe(W,1),W.m(b,_)):W&&(we(),ke(W,1,1,()=>{W=null}),Pe()),e[6].phase&&e[5].endPhase?H?(H.p(e,n),96&n&&Oe(H,1)):(H=rr(e),H.c(),Oe(H,1),H.m(b,null)):H&&(we(),ke(H,1,1,()=>{H=null}),Pe());const a={};128&n&&(a.value=e[7]),E.$set(a);const i={};64&n&&(i.value=or(e[6])),D.$set(i);const c={};2&n&&(c.clientManager=e[1]),G.$set(c)},i(e){if(!F){Oe(s.$$.fragment,e),Oe(l.$$.fragment,e);for(let e=0;e<U.length;e+=1)Oe(z[e]);Oe(V),Oe(W),Oe(H),Oe(E.$$.fragment,e),Oe(D.$$.fragment,e),Oe(G.$$.fragment,e),F=!0}},o(e){ke(s.$$.fragment,e),ke(l.$$.fragment,e),z=z.filter(Boolean);for(let e=0;e<z.length;e+=1)ke(z[e]);ke(V),ke(W),ke(H),ke(E.$$.fragment,e),ke(D.$$.fragment,e),ke(G.$$.fragment,e),F=!1},d(e){e&&C(t),Te(s),e&&C(o),e&&C(a),Te(l),e&&C(u),e&&C(p),T(z,e),e&&C(v),e&&C(y),V&&V.d(),W&&W.d(),H&&H.d(),e&&C(w),e&&C(P),Te(E),e&&C($),e&&C(A),Te(D),e&&C(R),Te(G,e)}}}function or(e){let t={};for(const n in e)n.startsWith("_")||(t[n]=e[n]);return t}function ar(e,t,n){let{client:r}=t,{clientManager:s}=t,{ToggleVisibility:o}=t;const a=function(e,t){var n,r={},s={},o=Xn(t);try{for(o.s();!(n=o.n()).done;)s[n.value]=!0}catch(e){o.e(e)}finally{o.f()}var a=s,i=!0;for(var c in e){var l=c[0];if(a[l]){i=!1;break}a[l]=!0,r[c]=l}if(i)return r;a=s;var u=97;for(var p in r={},e){for(var d=String.fromCharCode(u);a[d];)u++,d=String.fromCharCode(u);a[d]=!0,r[p]=d}return r}(r.moves,"mlia");let{playerID:i,moves:c,events:l}=r,u={},p={};return te(r.subscribe(e=>{e&&n(7,({G:p,ctx:u}=e),p,n(6,u)),n(3,({playerID:i,moves:c,events:l}=r),i,n(4,c),n(5,l))})),e.$$set=e=>{"client"in e&&n(0,r=e.client),"clientManager"in e&&n(1,s=e.clientManager),"ToggleVisibility"in e&&n(2,o=e.ToggleVisibility)},[r,s,o,i,c,l,u,p,a,e=>s.switchPlayerID(e.detail.playerID)]}class ir extends Re{constructor(e){super(),De(this,e,ar,sr,v,{client:0,clientManager:1,ToggleVisibility:2},Qn)}}function cr(e){$(e,"svelte-13qih23",".item.svelte-13qih23.svelte-13qih23{padding:10px}.item.svelte-13qih23.svelte-13qih23:not(:first-child){border-top:1px dashed #aaa}.item.svelte-13qih23 div.svelte-13qih23{float:right;text-align:right}")}function lr(e){let t,n,r,s,o,a,c=JSON.stringify(e[1])+"";return{c(){t=N("div"),n=N("strong"),r=R(e[0]),s=B(),o=N("div"),a=R(c),L(o,"class","svelte-13qih23"),L(t,"class","item svelte-13qih23")},m(e,i){I(e,t,i),M(t,n),M(n,r),M(t,s),M(t,o),M(o,a)},p(e,t){let[n]=t;1&n&&U(r,e[0]),2&n&&c!==(c=JSON.stringify(e[1])+"")&&U(a,c)},i:i,o:i,d(e){e&&C(t)}}}function ur(e,t,n){let{name:r}=t,{value:s}=t;return e.$$set=e=>{"name"in e&&n(0,r=e.name),"value"in e&&n(1,s=e.value)},[r,s]}class pr extends Re{constructor(e){super(),De(this,e,ur,lr,v,{name:0,value:1},cr)}}function dr(e){$(e,"svelte-1yzq5o8",".gameinfo.svelte-1yzq5o8{padding:10px}")}function fr(e){let t,n;return t=new pr({props:{name:"isConnected",value:e[1].isConnected}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};2&n&&(r.value=e[1].isConnected),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function hr(e){let t,n,r,s,o,a,i,c;n=new pr({props:{name:"matchID",value:e[0].matchID}}),s=new pr({props:{name:"playerID",value:e[0].playerID}}),a=new pr({props:{name:"isActive",value:e[1].isActive}});let l=e[0].multiplayer&&fr(e);return{c(){t=N("section"),Ie(n.$$.fragment),r=B(),Ie(s.$$.fragment),o=B(),Ie(a.$$.fragment),i=B(),l&&l.c(),L(t,"class","gameinfo svelte-1yzq5o8")},m(e,u){I(e,t,u),Ce(n,t,null),M(t,r),Ce(s,t,null),M(t,o),Ce(a,t,null),M(t,i),l&&l.m(t,null),c=!0},p(e,r){let[o]=r;const i={};1&o&&(i.value=e[0].matchID),n.$set(i);const c={};1&o&&(c.value=e[0].playerID),s.$set(c);const u={};2&o&&(u.value=e[1].isActive),a.$set(u),e[0].multiplayer?l?(l.p(e,o),1&o&&Oe(l,1)):(l=fr(e),l.c(),Oe(l,1),l.m(t,null)):l&&(we(),ke(l,1,1,()=>{l=null}),Pe())},i(e){c||(Oe(n.$$.fragment,e),Oe(s.$$.fragment,e),Oe(a.$$.fragment,e),Oe(l),c=!0)},o(e){ke(n.$$.fragment,e),ke(s.$$.fragment,e),ke(a.$$.fragment,e),ke(l),c=!1},d(e){e&&C(t),Te(n),Te(s),Te(a),l&&l.d()}}}function vr(e,t,n){let r,s=i,o=()=>(s(),s=y(a,e=>n(1,r=e)),a);e.$$.on_destroy.push(()=>s());let{client:a}=t;o();let{clientManager:c}=t,{ToggleVisibility:l}=t;return e.$$set=e=>{"client"in e&&o(n(0,a=e.client)),"clientManager"in e&&n(2,c=e.clientManager),"ToggleVisibility"in e&&n(3,l=e.ToggleVisibility)},[a,r,c,l]}class yr extends Re{constructor(e){super(),De(this,e,vr,hr,v,{client:0,clientManager:2,ToggleVisibility:3},dr)}}function gr(e){$(e,"svelte-6eza86",".turn-marker.svelte-6eza86{display:flex;justify-content:center;align-items:center;grid-column:1;background:#555;color:#eee;text-align:center;font-weight:bold;border:1px solid #888}")}function mr(e){let t,n;return{c(){t=N("div"),n=R(e[0]),L(t,"class","turn-marker svelte-6eza86"),L(t,"style",e[1])},m(e,r){I(e,t,r),M(t,n)},p(e,t){let[r]=t;1&r&&U(n,e[0])},i:i,o:i,d(e){e&&C(t)}}}function br(e,t,n){let{turn:r}=t,{numEvents:s}=t;const o=`grid-row: span ${s}`;return e.$$set=e=>{"turn"in e&&n(0,r=e.turn),"numEvents"in e&&n(2,s=e.numEvents)},[r,o,s]}class xr extends Re{constructor(e){super(),De(this,e,br,mr,v,{turn:0,numEvents:2},gr)}}function _r(e){$(e,"svelte-1t4xap",".phase-marker.svelte-1t4xap{grid-column:3;background:#555;border:1px solid #888;color:#eee;text-align:center;font-weight:bold;padding-top:10px;padding-bottom:10px;text-orientation:sideways;writing-mode:vertical-rl;line-height:30px;width:100%}")}function wr(e){let t,n,r=(e[0]||"")+"";return{c(){t=N("div"),n=R(r),L(t,"class","phase-marker svelte-1t4xap"),L(t,"style",e[1])},m(e,r){I(e,t,r),M(t,n)},p(e,t){let[s]=t;1&s&&r!==(r=(e[0]||"")+"")&&U(n,r)},i:i,o:i,d(e){e&&C(t)}}}function Pr(e,t,n){let{phase:r}=t,{numEvents:s}=t;const o=`grid-row: span ${s}`;return e.$$set=e=>{"phase"in e&&n(0,r=e.phase),"numEvents"in e&&n(2,s=e.numEvents)},[r,o,s]}class Or extends Re{constructor(e){super(),De(this,e,Pr,wr,v,{phase:0,numEvents:2},_r)}}function kr(e){let t;return{c(){t=N("div"),t.textContent=`${e[0]}`},m(e,n){I(e,t,n)},p:i,i:i,o:i,d(e){e&&C(t)}}}function Er(e,t,n){let{metadata:r}=t;const s=void 0!==r?JSON.stringify(r,null,4):"";return e.$$set=e=>{"metadata"in e&&n(1,r=e.metadata)},[s,r]}class Mr extends Re{constructor(e){super(),De(this,e,Er,kr,v,{metadata:1})}}function $r(e){$(e,"svelte-vajd9z",".log-event.svelte-vajd9z{grid-column:2;cursor:pointer;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:#fff;border:1px dotted #ccc;border-left:5px solid #ccc;padding:5px;text-align:center;color:#666;font-size:14px;min-height:25px;line-height:25px}.log-event.svelte-vajd9z:hover,.log-event.svelte-vajd9z:focus{border-style:solid;background:#eee}.log-event.pinned.svelte-vajd9z{border-style:solid;background:#eee;opacity:1}.args.svelte-vajd9z{text-align:left;white-space:pre-wrap}.player0.svelte-vajd9z{border-left-color:#ff851b}.player1.svelte-vajd9z{border-left-color:#7fdbff}.player2.svelte-vajd9z{border-left-color:#0074d9}.player3.svelte-vajd9z{border-left-color:#39cccc}.player4.svelte-vajd9z{border-left-color:#3d9970}.player5.svelte-vajd9z{border-left-color:#2ecc40}.player6.svelte-vajd9z{border-left-color:#01ff70}.player7.svelte-vajd9z{border-left-color:#ffdc00}.player8.svelte-vajd9z{border-left-color:#001f3f}.player9.svelte-vajd9z{border-left-color:#ff4136}.player10.svelte-vajd9z{border-left-color:#85144b}.player11.svelte-vajd9z{border-left-color:#f012be}.player12.svelte-vajd9z{border-left-color:#b10dc9}.player13.svelte-vajd9z{border-left-color:#111111}.player14.svelte-vajd9z{border-left-color:#aaaaaa}.player15.svelte-vajd9z{border-left-color:#dddddd}")}function Ar(e){let t,n;return t=new Mr({props:{metadata:e[2]}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};4&n&&(r.metadata=e[2]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function jr(e){let t,n,r;var s=e[3];function o(e){return{props:{metadata:e[2]}}}return s&&(t=new s(o(e))),{c(){t&&Ie(t.$$.fragment),n=G()},m(e,s){t&&Ce(t,e,s),I(e,n,s),r=!0},p(e,r){const a={};if(4&r&&(a.metadata=e[2]),s!==(s=e[3])){if(t){we();const e=t;ke(e.$$.fragment,1,0,()=>{Te(e,1)}),Pe()}s?(t=new s(o(e)),Ie(t.$$.fragment),Oe(t.$$.fragment,1),Ce(t,n.parentNode,n)):t=null}else s&&t.$set(a)},i(e){r||(t&&Oe(t.$$.fragment,e),r=!0)},o(e){t&&ke(t.$$.fragment,e),r=!1},d(e){e&&C(n),t&&Te(t,e)}}}function Sr(e){let t,n,r,s,o,a,i,c,l,u,p,d;const h=[jr,Ar],v=[];function y(e,t){return e[3]?0:1}return c=y(e),l=v[c]=h[c](e),{c(){t=N("button"),n=N("div"),r=R(e[4]),s=R("("),o=R(e[6]),a=R(")"),i=B(),l.c(),L(n,"class","args svelte-vajd9z"),L(t,"class","log-event player"+e[7]+" svelte-vajd9z"),W(t,"pinned",e[1])},m(l,f){I(l,t,f),M(t,n),M(n,r),M(n,s),M(n,o),M(n,a),M(t,i),v[c].m(t,null),u=!0,p||(d=[F(t,"click",e[9]),F(t,"mouseenter",e[10]),F(t,"focus",e[11]),F(t,"mouseleave",e[12]),F(t,"blur",e[13])],p=!0)},p(e,n){let[s]=n;(!u||16&s)&&U(r,e[4]);let o=c;c=y(e),c===o?v[c].p(e,s):(we(),ke(v[o],1,1,()=>{v[o]=null}),Pe(),l=v[c],l?l.p(e,s):(l=v[c]=h[c](e),l.c()),Oe(l,1),l.m(t,null)),2&s&&W(t,"pinned",e[1])},i(e){u||(Oe(l),u=!0)},o(e){ke(l),u=!1},d(e){e&&C(t),v[c].d(),p=!1,f(d)}}}function Ir(e,t,n){let{logIndex:r}=t,{action:s}=t,{pinned:o}=t,{metadata:a}=t,{metadataComponent:i}=t;const c=ne(),l=s.payload.args,u=Array.isArray(l)?l.map(e=>JSON.stringify(e,null,2)).join(","):JSON.stringify(l,null,2)||"",p=s.payload.playerID;let d;switch(s.type){case"UNDO":d="undo";break;case"REDO":d="redo";default:d=s.payload.type}return e.$$set=e=>{"logIndex"in e&&n(0,r=e.logIndex),"action"in e&&n(8,s=e.action),"pinned"in e&&n(1,o=e.pinned),"metadata"in e&&n(2,a=e.metadata),"metadataComponent"in e&&n(3,i=e.metadataComponent)},[r,o,a,i,d,c,u,p,s,()=>c("click",{logIndex:r}),()=>c("mouseenter",{logIndex:r}),()=>c("mouseenter",{logIndex:r}),()=>c("mouseleave"),()=>c("mouseleave")]}class Cr extends Re{constructor(e){super(),De(this,e,Ir,Sr,v,{logIndex:0,action:8,pinned:1,metadata:2,metadataComponent:3},$r)}}function Tr(e){let t;return{c(){t=D("path"),L(t,"d","M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zM212 140v116h-70.9c-10.7 0-16.1 13-8.5 20.5l114.9 114.3c4.7 4.7 12.2 4.7 16.9 0l114.9-114.3c7.6-7.6 2.2-20.5-8.5-20.5H300V140c0-6.6-5.4-12-12-12h-64c-6.6 0-12 5.4-12 12z")},m(e,n){I(e,t,n)},p:i,d(e){e&&C(t)}}}function Nr(e){let t,n;const r=[{viewBox:"0 0 512 512"},e[0]];let s={$$slots:{default:[Tr]},$$scope:{ctx:e}};for(let e=0;e<r.length;e+=1)s=l(s,r[e]);return t=new He({props:s}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[s]=n;const o=1&s?je(r,[r[0],Se(e[0])]):{};2&s&&(o.$$scope={dirty:s,ctx:e}),t.$set(o)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Dr(e,t,n){return e.$$set=e=>{n(0,t=l(l({},t),b(e)))},[t=b(t)]}class Rr extends Re{constructor(e){super(),De(this,e,Dr,Nr,v,{})}}function Br(e){$(e,"svelte-1a7time","div.svelte-1a7time{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:500px}")}function Gr(e){let t,n;return{c(){t=N("div"),n=R(e[0]),L(t,"alt",e[0]),L(t,"class","svelte-1a7time")},m(e,r){I(e,t,r),M(t,n)},p(e,r){let[s]=r;1&s&&U(n,e[0]),1&s&&L(t,"alt",e[0])},i:i,o:i,d(e){e&&C(t)}}}function Fr(e,t,n){let r,{action:s}=t;return e.$$set=e=>{"action"in e&&n(1,s=e.action)},e.$$.update=()=>{if(2&e.$$.dirty){const{type:e,args:t}=s.payload,o=(t||[]).join(",");n(0,r=`${e}(${o})`)}},[r,s]}class Lr extends Re{constructor(e){super(),De(this,e,Fr,Gr,v,{action:1},Br)}}function Ur(e){$(e,"svelte-ztcwsu","table.svelte-ztcwsu.svelte-ztcwsu{font-size:12px;border-collapse:collapse;border:1px solid #ddd;padding:0}tr.svelte-ztcwsu.svelte-ztcwsu{cursor:pointer}tr.svelte-ztcwsu:hover td.svelte-ztcwsu{background:#eee}tr.selected.svelte-ztcwsu td.svelte-ztcwsu{background:#eee}td.svelte-ztcwsu.svelte-ztcwsu{padding:10px;height:10px;line-height:10px;font-size:12px;border:none}th.svelte-ztcwsu.svelte-ztcwsu{background:#888;color:#fff;padding:10px;text-align:center}")}function zr(e,t,n){const r=e.slice();return r[10]=t[n],r[12]=n,r}function qr(e){let t,n,r,s,o,a,i,c,l,u,p,d,h,v=e[10].value+"",y=e[10].visits+"";function g(){return e[6](e[10],e[12])}function m(){return e[7](e[12])}function b(){return e[8](e[10],e[12])}return l=new Lr({props:{action:e[10].parentAction}}),{c(){t=N("tr"),n=N("td"),r=R(v),s=B(),o=N("td"),a=R(y),i=B(),c=N("td"),Ie(l.$$.fragment),u=B(),L(n,"class","svelte-ztcwsu"),L(o,"class","svelte-ztcwsu"),L(c,"class","svelte-ztcwsu"),L(t,"class","svelte-ztcwsu"),W(t,"clickable",e[1].length>0),W(t,"selected",e[12]===e[0])},m(e,f){I(e,t,f),M(t,n),M(n,r),M(t,s),M(t,o),M(o,a),M(t,i),M(t,c),Ce(l,c,null),M(t,u),p=!0,d||(h=[F(t,"click",g),F(t,"mouseout",m),F(t,"mouseover",b)],d=!0)},p(n,s){e=n,(!p||2&s)&&v!==(v=e[10].value+"")&&U(r,v),(!p||2&s)&&y!==(y=e[10].visits+"")&&U(a,y);const o={};2&s&&(o.action=e[10].parentAction),l.$set(o),2&s&&W(t,"clickable",e[1].length>0),1&s&&W(t,"selected",e[12]===e[0])},i(e){p||(Oe(l.$$.fragment,e),p=!0)},o(e){ke(l.$$.fragment,e),p=!1},d(e){e&&C(t),Te(l),d=!1,f(h)}}}function Vr(e){let t,n,r,s,o,a=e[1],i=[];for(let t=0;t<a.length;t+=1)i[t]=qr(zr(e,a,t));const c=e=>ke(i[e],1,1,()=>{i[e]=null});return{c(){t=N("table"),n=N("thead"),n.innerHTML='<th class="svelte-ztcwsu">Value</th> \n <th class="svelte-ztcwsu">Visits</th> \n <th class="svelte-ztcwsu">Action</th>',r=B(),s=N("tbody");for(let e=0;e<i.length;e+=1)i[e].c();L(t,"class","svelte-ztcwsu")},m(e,a){I(e,t,a),M(t,n),M(t,r),M(t,s);for(let e=0;e<i.length;e+=1)i[e].m(s,null);o=!0},p(e,t){let[n]=t;if(15&n){let t;for(a=e[1],t=0;t<a.length;t+=1){const r=zr(e,a,t);i[t]?(i[t].p(r,n),Oe(i[t],1)):(i[t]=qr(r),i[t].c(),Oe(i[t],1),i[t].m(s,null))}for(we(),t=a.length;t<i.length;t+=1)c(t);Pe()}},i(e){if(!o){for(let e=0;e<a.length;e+=1)Oe(i[e]);o=!0}},o(e){i=i.filter(Boolean);for(let e=0;e<i.length;e+=1)ke(i[e]);o=!1},d(e){e&&C(t),T(i,e)}}}function Wr(e,t,n){let{root:r}=t,{selectedIndex:s=null}=t;const o=ne();let a=[],i=[];function c(e,t){o("select",{node:e,selectedIndex:t})}function l(e,t){null===s&&o("preview",{node:e})}return e.$$set=e=>{"root"in e&&n(4,r=e.root),"selectedIndex"in e&&n(0,s=e.selectedIndex)},e.$$.update=()=>{if(48&e.$$.dirty){let e=r;for(n(5,a=[]);e.parent;){const t=e.parent,{type:n,args:r}=e.parentAction.payload,s=`${n}(${(r||[]).join(",")})`;a.push({parent:t,arrowText:s}),e=t}a.reverse(),n(1,i=[...r.children].sort((e,t)=>e.visits<t.visits?1:-1).slice(0,50))}},[s,i,c,l,r,a,(e,t)=>c(e,t),e=>l(null),(e,t)=>l(e)]}class Hr extends Re{constructor(e){super(),De(this,e,Wr,Vr,v,{root:4,selectedIndex:0},Ur)}}function Jr(e){$(e,"svelte-1f0amz4",".visualizer.svelte-1f0amz4{display:flex;flex-direction:column;align-items:center;padding:50px}.preview.svelte-1f0amz4{opacity:0.5}.icon.svelte-1f0amz4{color:#777;width:32px;height:32px;margin-bottom:20px}")}function Kr(e,t,n){const r=e.slice();return r[9]=t[n].node,r[10]=t[n].selectedIndex,r[12]=n,r}function Yr(e){let t,n;return t=new Hr({props:{root:e[9],selectedIndex:e[10]}}),t.$on("select",function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return e[7](e[12],...n)}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(n,r){e=n;const s={};1&r&&(s.root=e[9]),1&r&&(s.selectedIndex=e[10]),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Xr(e){let t,n;return t=new Hr({props:{root:e[9]}}),t.$on("select",function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return e[5](e[12],...n)}),t.$on("preview",function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return e[6](e[12],...n)}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(n,r){e=n;const s={};1&r&&(s.root=e[9]),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Qr(e){let t,n,r,s,o,a=0!==e[12]&&function(){let e,t,n;return t=new Rr({}),{c(){e=N("div"),Ie(t.$$.fragment),L(e,"class","icon svelte-1f0amz4")},m(r,s){I(r,e,s),Ce(t,e,null),n=!0},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(n){n&&C(e),Te(t)}}}();const i=[Xr,Yr],c=[];function l(e,t){return e[12]===e[0].length-1?0:1}return r=l(e),s=c[r]=i[r](e),{c(){a&&a.c(),t=B(),n=N("section"),s.c()},m(e,s){a&&a.m(e,s),I(e,t,s),I(e,n,s),c[r].m(n,null),o=!0},p(e,t){let o=r;r=l(e),r===o?c[r].p(e,t):(we(),ke(c[o],1,1,()=>{c[o]=null}),Pe(),s=c[r],s?s.p(e,t):(s=c[r]=i[r](e),s.c()),Oe(s,1),s.m(n,null))},i(e){o||(Oe(a),Oe(s),o=!0)},o(e){ke(a),ke(s),o=!1},d(e){a&&a.d(e),e&&C(t),e&&C(n),c[r].d()}}}function Zr(e){let t,n,r,s,o,a;return n=new Rr({}),o=new Hr({props:{root:e[1]}}),{c(){t=N("div"),Ie(n.$$.fragment),r=B(),s=N("section"),Ie(o.$$.fragment),L(t,"class","icon svelte-1f0amz4"),L(s,"class","preview svelte-1f0amz4")},m(e,i){I(e,t,i),Ce(n,t,null),I(e,r,i),I(e,s,i),Ce(o,s,null),a=!0},p(e,t){const n={};2&t&&(n.root=e[1]),o.$set(n)},i(e){a||(Oe(n.$$.fragment,e),Oe(o.$$.fragment,e),a=!0)},o(e){ke(n.$$.fragment,e),ke(o.$$.fragment,e),a=!1},d(e){e&&C(t),Te(n),e&&C(r),e&&C(s),Te(o)}}}function es(e){let t,n,r,s=e[0],o=[];for(let t=0;t<s.length;t+=1)o[t]=Qr(Kr(e,s,t));const a=e=>ke(o[e],1,1,()=>{o[e]=null});let i=e[1]&&Zr(e);return{c(){t=N("div");for(let e=0;e<o.length;e+=1)o[e].c();n=B(),i&&i.c(),L(t,"class","visualizer svelte-1f0amz4")},m(e,s){I(e,t,s);for(let e=0;e<o.length;e+=1)o[e].m(t,null);M(t,n),i&&i.m(t,null),r=!0},p(e,r){let[c]=r;if(13&c){let r;for(s=e[0],r=0;r<s.length;r+=1){const a=Kr(e,s,r);o[r]?(o[r].p(a,c),Oe(o[r],1)):(o[r]=Qr(a),o[r].c(),Oe(o[r],1),o[r].m(t,n))}for(we(),r=s.length;r<o.length;r+=1)a(r);Pe()}e[1]?i?(i.p(e,c),2&c&&Oe(i,1)):(i=Zr(e),i.c(),Oe(i,1),i.m(t,null)):i&&(we(),ke(i,1,1,()=>{i=null}),Pe())},i(e){if(!r){for(let e=0;e<s.length;e+=1)Oe(o[e]);Oe(i),r=!0}},o(e){o=o.filter(Boolean);for(let e=0;e<o.length;e+=1)ke(o[e]);ke(i),r=!1},d(e){e&&C(t),T(o,e),i&&i.d()}}}function ts(e,t,n){let{metadata:r}=t,s=[],o=null;function a(e,t){let{node:r,selectedIndex:a}=e;n(1,o=null),n(0,s[t].selectedIndex=a,s),n(0,s=[...s.slice(0,t+1),{node:r}])}function i(e,t){let{node:r}=e;n(1,o=r)}return e.$$set=e=>{"metadata"in e&&n(4,r=e.metadata)},e.$$.update=()=>{16&e.$$.dirty&&n(0,s=[{node:r}])},[s,o,a,i,r,(e,t)=>a(t.detail,e),(e,t)=>i(t.detail),(e,t)=>a(t.detail,e)]}class ns extends Re{constructor(e){super(),De(this,e,ts,es,v,{metadata:4},Jr)}}function rs(e){$(e,"svelte-1pq5e4b",".gamelog.svelte-1pq5e4b{display:grid;grid-template-columns:30px 1fr 30px;grid-auto-rows:auto;grid-auto-flow:column}")}function ss(e,t,n){const r=e.slice();return r[16]=t[n].phase,r[18]=n,r}function os(e,t,n){const r=e.slice();return r[19]=t[n].action,r[20]=t[n].metadata,r[18]=n,r}function as(e,t,n){const r=e.slice();return r[22]=t[n].turn,r[18]=n,r}function is(e){let t,n;return t=new xr({props:{turn:e[22],numEvents:e[3][e[18]]}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};2&n&&(r.turn=e[22]),8&n&&(r.numEvents=e[3][e[18]]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function cs(e){let t,n,r=e[18]in e[3]&&is(e);return{c(){r&&r.c(),t=G()},m(e,s){r&&r.m(e,s),I(e,t,s),n=!0},p(e,n){e[18]in e[3]?r?(r.p(e,n),8&n&&Oe(r,1)):(r=is(e),r.c(),Oe(r,1),r.m(t.parentNode,t)):r&&(we(),ke(r,1,1,()=>{r=null}),Pe())},i(e){n||(Oe(r),n=!0)},o(e){ke(r),n=!1},d(e){r&&r.d(e),e&&C(t)}}}function ls(e){let t,n;return t=new Cr({props:{pinned:e[18]===e[2],logIndex:e[18],action:e[19],metadata:e[20]}}),t.$on("click",e[5]),t.$on("mouseenter",e[6]),t.$on("mouseleave",e[7]),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};4&n&&(r.pinned=e[18]===e[2]),2&n&&(r.action=e[19]),2&n&&(r.metadata=e[20]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function us(e){let t,n;return t=new Or({props:{phase:e[16],numEvents:e[4][e[18]]}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};2&n&&(r.phase=e[16]),16&n&&(r.numEvents=e[4][e[18]]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function ps(e){let t,n,r=e[18]in e[4]&&us(e);return{c(){r&&r.c(),t=G()},m(e,s){r&&r.m(e,s),I(e,t,s),n=!0},p(e,n){e[18]in e[4]?r?(r.p(e,n),16&n&&Oe(r,1)):(r=us(e),r.c(),Oe(r,1),r.m(t.parentNode,t)):r&&(we(),ke(r,1,1,()=>{r=null}),Pe())},i(e){n||(Oe(r),n=!0)},o(e){ke(r),n=!1},d(e){r&&r.d(e),e&&C(t)}}}function ds(e){let t,n,r,s,o,a,i=e[1],c=[];for(let t=0;t<i.length;t+=1)c[t]=cs(as(e,i,t));const l=e=>ke(c[e],1,1,()=>{c[e]=null});let u=e[1],p=[];for(let t=0;t<u.length;t+=1)p[t]=ls(os(e,u,t));const d=e=>ke(p[e],1,1,()=>{p[e]=null});let f=e[1],h=[];for(let t=0;t<f.length;t+=1)h[t]=ps(ss(e,f,t));const v=e=>ke(h[e],1,1,()=>{h[e]=null});return{c(){t=N("div");for(let e=0;e<c.length;e+=1)c[e].c();n=B();for(let e=0;e<p.length;e+=1)p[e].c();r=B();for(let e=0;e<h.length;e+=1)h[e].c();L(t,"class","gamelog svelte-1pq5e4b"),W(t,"pinned",e[2])},m(i,l){I(i,t,l);for(let e=0;e<c.length;e+=1)c[e].m(t,null);M(t,n);for(let e=0;e<p.length;e+=1)p[e].m(t,null);M(t,r);for(let e=0;e<h.length;e+=1)h[e].m(t,null);s=!0,o||(a=F(window,"keydown",e[8]),o=!0)},p(e,s){let[o]=s;if(10&o){let r;for(i=e[1],r=0;r<i.length;r+=1){const s=as(e,i,r);c[r]?(c[r].p(s,o),Oe(c[r],1)):(c[r]=cs(s),c[r].c(),Oe(c[r],1),c[r].m(t,n))}for(we(),r=i.length;r<c.length;r+=1)l(r);Pe()}if(230&o){let n;for(u=e[1],n=0;n<u.length;n+=1){const s=os(e,u,n);p[n]?(p[n].p(s,o),Oe(p[n],1)):(p[n]=ls(s),p[n].c(),Oe(p[n],1),p[n].m(t,r))}for(we(),n=u.length;n<p.length;n+=1)d(n);Pe()}if(18&o){let n;for(f=e[1],n=0;n<f.length;n+=1){const r=ss(e,f,n);h[n]?(h[n].p(r,o),Oe(h[n],1)):(h[n]=ps(r),h[n].c(),Oe(h[n],1),h[n].m(t,null))}for(we(),n=f.length;n<h.length;n+=1)v(n);Pe()}4&o&&W(t,"pinned",e[2])},i(e){if(!s){for(let e=0;e<i.length;e+=1)Oe(c[e]);for(let e=0;e<u.length;e+=1)Oe(p[e]);for(let e=0;e<f.length;e+=1)Oe(h[e]);s=!0}},o(e){c=c.filter(Boolean);for(let e=0;e<c.length;e+=1)ke(c[e]);p=p.filter(Boolean);for(let e=0;e<p.length;e+=1)ke(p[e]);h=h.filter(Boolean);for(let e=0;e<h.length;e+=1)ke(h[e]);s=!1},d(e){e&&C(t),T(c,e),T(p,e),T(h,e),o=!1,a()}}}function fs(e,t,n){let r,s=i,a=()=>(s(),s=y(c,e=>n(10,r=e)),c);e.$$.on_destroy.push(()=>s());let{client:c}=t;a();const{secondaryPane:l}=se("secondaryPane"),u=(0,o.C)({game:c.game}),p=c.getInitialState();let d,{log:f}=r,h=null;function v(e){let t=p;for(let n=0;n<f.length;n++){const{action:r,automatic:s}=f[n];if(!s){if(t=u(t,r),0==e)break;e--}}return{G:t.G,ctx:t.ctx,plugins:t.plugins}}function g(){n(2,h=null),c.overrideGameState(null),l.set(null)}te(g);let m={},b={};return e.$$set=e=>{"client"in e&&a(n(0,c=e.client))},e.$$.update=()=>{if(1538&e.$$.dirty){n(9,f=r.log),n(1,d=f.filter(e=>!e.automatic));let e=0,t=0;n(3,m={}),n(4,b={});for(let r=0;r<d.length;r++){const{action:s,payload:o,turn:a,phase:i}=d[r];t++,e++,r!=d.length-1&&d[r+1].turn==a||(n(3,m[r]=t,m),t=0),r!=d.length-1&&d[r+1].phase==i||(n(4,b[r]=e,b),e=0)}}},[c,d,h,m,b,function(e){const{logIndex:t}=e.detail,r=v(t),s=f.filter(e=>!e.automatic);if(c.overrideGameState(r),h==t)n(2,h=null),l.set(null);else{n(2,h=t);const{metadata:e}=s[t].action.payload;e&&l.set({component:ns,metadata:e})}},function(e){const{logIndex:t}=e.detail;if(null===h){const e=v(t);c.overrideGameState(e)}},function(){null===h&&c.overrideGameState(null)},function(e){27==e.keyCode&&g()},f,r]}class hs extends Re{constructor(e){super(),De(this,e,fs,ds,v,{client:0},rs)}}function vs(e){$(e,"svelte-1fu900w","label.svelte-1fu900w{color:#666}.option.svelte-1fu900w{margin-bottom:20px}.value.svelte-1fu900w{font-weight:bold;color:#000}input[type='checkbox'].svelte-1fu900w{vertical-align:middle}")}function ys(e,t,n){const r=e.slice();return r[6]=t[n][0],r[7]=t[n][1],r[8]=t,r[9]=n,r}function gs(e){let t,n,r,s;function o(){e[5].call(t,e[6])}return{c(){t=N("input"),L(t,"id",n=e[3](e[6])),L(t,"type","checkbox"),L(t,"class","svelte-1fu900w")},m(n,a){I(n,t,a),t.checked=e[1][e[6]],r||(s=[F(t,"change",o),F(t,"change",e[2])],r=!0)},p(r,s){e=r,1&s&&n!==(n=e[3](e[6]))&&L(t,"id",n),3&s&&(t.checked=e[1][e[6]])},d(e){e&&C(t),r=!1,f(s)}}}function ms(e){let t,n,r,s,o,a,i,c,l,u=e[1][e[6]]+"";function p(){e[4].call(s,e[6])}return{c(){t=N("span"),n=R(u),r=B(),s=N("input"),L(t,"class","value svelte-1fu900w"),L(s,"id",o=e[3](e[6])),L(s,"type","range"),L(s,"min",a=e[7].range.min),L(s,"max",i=e[7].range.max)},m(o,a){I(o,t,a),M(t,n),I(o,r,a),I(o,s,a),z(s,e[1][e[6]]),c||(l=[F(s,"change",p),F(s,"input",p),F(s,"change",e[2])],c=!0)},p(t,r){e=t,3&r&&u!==(u=e[1][e[6]]+"")&&U(n,u),1&r&&o!==(o=e[3](e[6]))&&L(s,"id",o),1&r&&a!==(a=e[7].range.min)&&L(s,"min",a),1&r&&i!==(i=e[7].range.max)&&L(s,"max",i),3&r&&z(s,e[1][e[6]])},d(e){e&&C(t),e&&C(r),e&&C(s),c=!1,f(l)}}}function bs(e){let t,n,r,s,o,a,i=e[6]+"";function c(e,t){return e[7].range?ms:"boolean"==typeof e[7].value?gs:void 0}let l=c(e),u=l&&l(e);return{c(){t=N("div"),n=N("label"),r=R(i),o=B(),u&&u.c(),a=B(),L(n,"for",s=e[3](e[6])),L(n,"class","svelte-1fu900w"),L(t,"class","option svelte-1fu900w")},m(e,s){I(e,t,s),M(t,n),M(n,r),M(t,o),u&&u.m(t,null),M(t,a)},p(e,o){1&o&&i!==(i=e[6]+"")&&U(r,i),1&o&&s!==(s=e[3](e[6]))&&L(n,"for",s),l===(l=c(e))&&u?u.p(e,o):(u&&u.d(1),u=l&&l(e),u&&(u.c(),u.m(t,a)))},d(e){e&&C(t),u&&u.d()}}}function xs(e){let t,n=Object.entries(e[0].opts()),r=[];for(let t=0;t<n.length;t+=1)r[t]=bs(ys(e,n,t));return{c(){for(let e=0;e<r.length;e+=1)r[e].c();t=G()},m(e,n){for(let t=0;t<r.length;t+=1)r[t].m(e,n);I(e,t,n)},p(e,s){let[o]=s;if(15&o){let s;for(n=Object.entries(e[0].opts()),s=0;s<n.length;s+=1){const a=ys(e,n,s);r[s]?r[s].p(a,o):(r[s]=bs(a),r[s].c(),r[s].m(t.parentNode,t))}for(;s<r.length;s+=1)r[s].d(1);r.length=n.length}},i:i,o:i,d(e){T(r,e),e&&C(t)}}}function _s(e,t,n){let{bot:r}=t,s={};for(let[e,t]of Object.entries(r.opts()))s[e]=t.value;return e.$$set=e=>{"bot"in e&&n(0,r=e.bot)},[r,s,function(){for(let[e,t]of Object.entries(s))r.setOpt(e,t)},e=>"ai-option-"+e,function(e){var t;s[e]=""===(t=this.value)?null:+t,n(1,s)},function(e){s[e]=this.checked,n(1,s)}]}class ws extends Re{constructor(e){super(),De(this,e,_s,xs,v,{bot:0},vs)}}function Ps(e){$(e,"svelte-fn09gm","ul.svelte-fn09gm{padding-left:0}li.svelte-fn09gm{list-style:none;margin:0;margin-bottom:5px}h3.svelte-fn09gm{text-transform:uppercase}label.svelte-fn09gm{color:#666}input[type='checkbox'].svelte-fn09gm{vertical-align:middle}")}function Os(e,t,n){const r=e.slice();return r[7]=t[n],r}function ks(e){let t,n,r;return{c(){t=N("p"),t.textContent="No bots available.",n=B(),r=N("p"),r.innerHTML='Follow the instructions\n <a href="https://boardgame.io/documentation/#/tutorial?id=bots" target="_blank">here</a>\n to set up bots.'},m(e,s){I(e,t,s),I(e,n,s),I(e,r,s)},p:i,i:i,o:i,d(e){e&&C(t),e&&C(n),e&&C(r)}}}function Es(e){let t;return{c(){t=N("p"),t.textContent="The bot debugger is only available in singleplayer mode."},m(e,n){I(e,t,n)},p:i,i:i,o:i,d(e){e&&C(t)}}}function Ms(e){let t,n,r,s,o,a,i,c,l,u,p,d,h,v,y,g,m,b,x,_,w,P,O,k=Object.keys(e[7].opts()).length;a=new On({props:{value:"1",onPress:e[13],label:"reset"}}),l=new On({props:{value:"2",onPress:e[11],label:"play"}}),d=new On({props:{value:"3",onPress:e[12],label:"simulate"}});let E=Object.keys(e[8]),$=[];for(let t=0;t<E.length;t+=1)$[t]=$s(Os(e,E,t));let A=k&&As(e),j=(e[5]||e[3])&&js(e);return{c(){t=N("section"),n=N("h3"),n.textContent="Controls",r=B(),s=N("ul"),o=N("li"),Ie(a.$$.fragment),i=B(),c=N("li"),Ie(l.$$.fragment),u=B(),p=N("li"),Ie(d.$$.fragment),h=B(),v=N("section"),y=N("h3"),y.textContent="Bot",g=B(),m=N("select");for(let e=0;e<$.length;e+=1)$[e].c();b=B(),A&&A.c(),x=B(),j&&j.c(),_=G(),L(n,"class","svelte-fn09gm"),L(o,"class","svelte-fn09gm"),L(c,"class","svelte-fn09gm"),L(p,"class","svelte-fn09gm"),L(s,"class","svelte-fn09gm"),L(y,"class","svelte-fn09gm"),void 0===e[4]&&de(()=>e[17].call(m))},m(f,k){I(f,t,k),M(t,n),M(t,r),M(t,s),M(s,o),Ce(a,o,null),M(s,i),M(s,c),Ce(l,c,null),M(s,u),M(s,p),Ce(d,p,null),I(f,h,k),I(f,v,k),M(v,y),M(v,g),M(v,m);for(let e=0;e<$.length;e+=1)$[e].m(m,null);q(m,e[4]),I(f,b,k),A&&A.m(f,k),I(f,x,k),j&&j.m(f,k),I(f,_,k),w=!0,P||(O=[F(m,"change",e[17]),F(m,"change",e[10])],P=!0)},p(e,t){if(256&t){let n;for(E=Object.keys(e[8]),n=0;n<E.length;n+=1){const r=Os(e,E,n);$[n]?$[n].p(r,t):($[n]=$s(r),$[n].c(),$[n].m(m,null))}for(;n<$.length;n+=1)$[n].d(1);$.length=E.length}272&t&&q(m,e[4]),128&t&&(k=Object.keys(e[7].opts()).length),k?A?(A.p(e,t),128&t&&Oe(A,1)):(A=As(e),A.c(),Oe(A,1),A.m(x.parentNode,x)):A&&(we(),ke(A,1,1,()=>{A=null}),Pe()),e[5]||e[3]?j?j.p(e,t):(j=js(e),j.c(),j.m(_.parentNode,_)):j&&(j.d(1),j=null)},i(e){w||(Oe(a.$$.fragment,e),Oe(l.$$.fragment,e),Oe(d.$$.fragment,e),Oe(A),w=!0)},o(e){ke(a.$$.fragment,e),ke(l.$$.fragment,e),ke(d.$$.fragment,e),ke(A),w=!1},d(e){e&&C(t),Te(a),Te(l),Te(d),e&&C(h),e&&C(v),T($,e),e&&C(b),A&&A.d(e),e&&C(x),j&&j.d(e),e&&C(_),P=!1,f(O)}}}function $s(e){let t,n,r=e[7]+"";return{c(){t=N("option"),n=R(r),t.__value=e[7],t.value=t.__value},m(e,r){I(e,t,r),M(t,n)},p:i,d(e){e&&C(t)}}}function As(e){let t,n,r,s,o,a,i,c,l,u,p;return c=new ws({props:{bot:e[7]}}),{c(){t=N("section"),n=N("h3"),n.textContent="Options",r=B(),s=N("label"),s.textContent="debug",o=B(),a=N("input"),i=B(),Ie(c.$$.fragment),L(n,"class","svelte-fn09gm"),L(s,"for","ai-option-debug"),L(s,"class","svelte-fn09gm"),L(a,"id","ai-option-debug"),L(a,"type","checkbox"),L(a,"class","svelte-fn09gm")},m(d,f){I(d,t,f),M(t,n),M(t,r),M(t,s),M(t,o),M(t,a),a.checked=e[1],M(t,i),Ce(c,t,null),l=!0,u||(p=[F(a,"change",e[18]),F(a,"change",e[9])],u=!0)},p(e,t){2&t&&(a.checked=e[1]);const n={};128&t&&(n.bot=e[7]),c.$set(n)},i(e){l||(Oe(c.$$.fragment,e),l=!0)},o(e){ke(c.$$.fragment,e),l=!1},d(e){e&&C(t),Te(c),u=!1,f(p)}}}function js(e){let t,n,r,s,o=e[2]&&e[2]<1&&Ss(e),a=e[5]&&Is(e);return{c(){t=N("section"),n=N("h3"),n.textContent="Result",r=B(),o&&o.c(),s=B(),a&&a.c(),L(n,"class","svelte-fn09gm")},m(e,i){I(e,t,i),M(t,n),M(t,r),o&&o.m(t,null),M(t,s),a&&a.m(t,null)},p(e,n){e[2]&&e[2]<1?o?o.p(e,n):(o=Ss(e),o.c(),o.m(t,s)):o&&(o.d(1),o=null),e[5]?a?a.p(e,n):(a=Is(e),a.c(),a.m(t,null)):a&&(a.d(1),a=null)},d(e){e&&C(t),o&&o.d(),a&&a.d()}}}function Ss(e){let t;return{c(){t=N("progress"),t.value=e[2]},m(e,n){I(e,t,n)},p(e,n){4&n&&(t.value=e[2])},d(e){e&&C(t)}}}function Is(e){let t,n,r,s,o,a,i,c,l=JSON.stringify(e[6])+"";return{c(){t=N("ul"),n=N("li"),r=R("Action: "),s=R(e[5]),o=B(),a=N("li"),i=R("Args: "),c=R(l),L(n,"class","svelte-fn09gm"),L(a,"class","svelte-fn09gm"),L(t,"class","svelte-fn09gm")},m(e,l){I(e,t,l),M(t,n),M(n,r),M(n,s),M(t,o),M(t,a),M(a,i),M(a,c)},p(e,t){32&t&&U(s,e[5]),64&t&&l!==(l=JSON.stringify(e[6])+"")&&U(c,l)},d(e){e&&C(t)}}}function Cs(e){let t,n,r,s,o,a;const i=[Ms,Es,ks],c=[];function l(e,t){return e[0].game.ai&&!e[0].multiplayer?0:e[0].multiplayer?1:2}return n=l(e),r=c[n]=i[n](e),{c(){t=N("section"),r.c()},m(r,i){I(r,t,i),c[n].m(t,null),s=!0,o||(a=F(window,"keydown",e[14]),o=!0)},p(e,s){let[o]=s,a=n;n=l(e),n===a?c[n].p(e,o):(we(),ke(c[a],1,1,()=>{c[a]=null}),Pe(),r=c[n],r?r.p(e,o):(r=c[n]=i[n](e),r.c()),Oe(r,1),r.m(t,null))},i(e){s||(Oe(r),s=!0)},o(e){ke(r),s=!1},d(e){e&&C(t),c[n].d(),o=!1,a()}}}function Ts(e,t,n){let{client:r}=t,{clientManager:s}=t,{ToggleVisibility:o}=t;const{secondaryPane:i}=se("secondaryPane"),c={MCTS:a.M,Random:a.R};let l=!1,u=null,p=0,d=null;const f=e=>{let{iterationCounter:t,numIterations:r,metadata:s}=e;n(3,p=t),n(2,u=t/r),d=s,l&&d&&i.set({component:ns,metadata:d})};let h,v,y,g;function m(){r.overrideGameState(null),i.set(null),n(1,l=!1)}return r.game.ai&&(h=new a.M({game:r.game,enumerate:r.game.ai.enumerate,iterationCallback:f}),h.setOpt("async",!0)),te(m),e.$$set=e=>{"client"in e&&n(0,r=e.client),"clientManager"in e&&n(15,s=e.clientManager),"ToggleVisibility"in e&&n(16,o=e.ToggleVisibility)},[r,l,u,p,v,y,g,h,c,function(){l&&d?i.set({component:ns,metadata:d}):i.set(null)},function(){n(7,h=new(0,c[v])({game:r.game,enumerate:r.game.ai.enumerate,iterationCallback:f})),h.setOpt("async",!0),n(5,y=null),d=null,i.set(null),n(3,p=0)},async function(){n(5,y=null),d=null,n(3,p=0);const e=await(0,a.S)(r,h);e&&(n(5,y=e.payload.type),n(6,g=e.payload.args))},function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e4,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return n(5,y=null),d=null,n(3,p=0),(async()=>{for(let n=0;n<e&&await(0,a.S)(r,h);n++)await new Promise(e=>setTimeout(e,t))})()},function(){r.reset(),n(5,y=null),d=null,n(3,p=0),m()},function(e){27==e.keyCode&&m()},s,o,function(){v=V(this),n(4,v),n(8,c)},function(){l=this.checked,n(1,l)}]}class Ns extends Re{constructor(e){super(),De(this,e,Ts,Cs,v,{client:0,clientManager:15,ToggleVisibility:16},Ps)}}function Ds(e){$(e,"svelte-8ymctk",".debug-panel.svelte-8ymctk.svelte-8ymctk{position:fixed;color:#555;font-family:monospace;right:0;top:0;height:100%;font-size:14px;opacity:0.9;z-index:99999}.panel.svelte-8ymctk.svelte-8ymctk{display:flex;position:relative;flex-direction:row;height:100%}.visibility-toggle.svelte-8ymctk.svelte-8ymctk{position:absolute;box-sizing:border-box;top:7px;border:1px solid #ccc;border-radius:5px;width:48px;height:48px;padding:8px;background:white;color:#555;box-shadow:0 0 5px rgba(0, 0, 0, 0.2)}.visibility-toggle.svelte-8ymctk.svelte-8ymctk:hover,.visibility-toggle.svelte-8ymctk.svelte-8ymctk:focus{background:#eee}.opener.svelte-8ymctk.svelte-8ymctk{right:10px}.closer.svelte-8ymctk.svelte-8ymctk{left:-326px}@keyframes svelte-8ymctk-rotateFromZero{from{transform:rotateZ(0deg)}to{transform:rotateZ(180deg)}}.icon.svelte-8ymctk.svelte-8ymctk{display:flex;height:100%;animation:svelte-8ymctk-rotateFromZero 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s 1\n normal forwards}.closer.svelte-8ymctk .icon.svelte-8ymctk{animation-direction:reverse}.pane.svelte-8ymctk.svelte-8ymctk{flex-grow:2;overflow-x:hidden;overflow-y:scroll;background:#fefefe;padding:20px;border-left:1px solid #ccc;box-shadow:-1px 0 5px rgba(0, 0, 0, 0.2);box-sizing:border-box;width:280px}.secondary-pane.svelte-8ymctk.svelte-8ymctk{background:#fefefe;overflow-y:scroll}.debug-panel.svelte-8ymctk button,.debug-panel.svelte-8ymctk select{cursor:pointer;font-size:14px;font-family:monospace}.debug-panel.svelte-8ymctk select{background:#eee;border:1px solid #bbb;color:#555;padding:3px;border-radius:3px}.debug-panel.svelte-8ymctk section{margin-bottom:20px}.debug-panel.svelte-8ymctk .screen-reader-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}")}function Rs(e){let t,n,r,s,o,a,c,l,p,d=e[10]&&function(e){let t,n,r,s,o,a,c,l;return r=new Xe({}),{c(){t=N("button"),n=N("span"),Ie(r.$$.fragment),L(n,"class","icon svelte-8ymctk"),L(n,"aria-hidden","true"),L(t,"class","visibility-toggle closer svelte-8ymctk"),L(t,"title","Hide Debug Panel")},m(s,o){I(s,t,o),M(t,n),Ce(r,n,null),a=!0,c||(l=F(t,"click",e[9]),c=!0)},p:i,i(n){a||(Oe(r.$$.fragment,n),de(()=>{o&&o.end(1),s=Me(t,e[14],{key:"toggle"}),s.start()}),a=!0)},o(n){ke(r.$$.fragment,n),s&&s.invalidate(),o=$e(t,e[13],{key:"toggle"}),a=!1},d(e){e&&C(t),Te(r),e&&o&&o.end(),c=!1,l()}}}(e);r=new rt({props:{panes:e[6],pane:e[2]}}),r.$on("change",e[8]);var f=e[6][e[2]].component;function h(e){return{props:{client:e[4],clientManager:e[0],ToggleVisibility:e[9]}}}f&&(a=new f(h(e)));let v=e[5]&&Gs(e);return{c(){t=N("div"),d&&d.c(),n=B(),Ie(r.$$.fragment),s=B(),o=N("div"),a&&Ie(a.$$.fragment),c=B(),v&&v.c(),L(o,"class","pane svelte-8ymctk"),L(o,"role","region"),L(o,"aria-label",e[2]),L(o,"tabindex","-1"),L(t,"class","panel svelte-8ymctk")},m(i,l){I(i,t,l),d&&d.m(t,null),M(t,n),Ce(r,t,null),M(t,s),M(t,o),a&&Ce(a,o,null),e[16](o),M(t,c),v&&v.m(t,null),p=!0},p(n,s){(e=n)[10]&&d.p(e,s);const i={};4&s&&(i.pane=e[2]),r.$set(i);const c={};if(16&s&&(c.client=e[4]),1&s&&(c.clientManager=e[0]),f!==(f=e[6][e[2]].component)){if(a){we();const e=a;ke(e.$$.fragment,1,0,()=>{Te(e,1)}),Pe()}f?(a=new f(h(e)),Ie(a.$$.fragment),Oe(a.$$.fragment,1),Ce(a,o,null)):a=null}else f&&a.$set(c);(!p||4&s)&&L(o,"aria-label",e[2]),e[5]?v?(v.p(e,s),32&s&&Oe(v,1)):(v=Gs(e),v.c(),Oe(v,1),v.m(t,null)):v&&(we(),ke(v,1,1,()=>{v=null}),Pe())},i(n){p||(Oe(d),Oe(r.$$.fragment,n),a&&Oe(a.$$.fragment,n),Oe(v),de(()=>{l||(l=Ae(t,Le,u({x:400},e[12]),!0)),l.run(1)}),p=!0)},o(n){ke(d),ke(r.$$.fragment,n),a&&ke(a.$$.fragment,n),ke(v),l||(l=Ae(t,Le,u({x:400},e[12]),!1)),l.run(0),p=!1},d(n){n&&C(t),d&&d.d(),Te(r),a&&Te(a),e[16](null),v&&v.d(),n&&l&&l.end()}}}function Bs(e){let t,n,r=e[10]&&function(e){let t,n,r,s,o,a,c,l;return r=new Xe({}),{c(){t=N("button"),n=N("span"),Ie(r.$$.fragment),L(n,"class","icon svelte-8ymctk"),L(n,"aria-hidden","true"),L(t,"class","visibility-toggle opener svelte-8ymctk"),L(t,"title","Show Debug Panel")},m(s,o){I(s,t,o),M(t,n),Ce(r,n,null),a=!0,c||(l=F(t,"click",e[9]),c=!0)},p:i,i(n){a||(Oe(r.$$.fragment,n),de(()=>{o&&o.end(1),s=Me(t,e[14],{key:"toggle"}),s.start()}),a=!0)},o(n){ke(r.$$.fragment,n),s&&s.invalidate(),o=$e(t,e[13],{key:"toggle"}),a=!1},d(e){e&&C(t),Te(r),e&&o&&o.end(),c=!1,l()}}}(e);return{c(){r&&r.c(),t=G()},m(e,s){r&&r.m(e,s),I(e,t,s),n=!0},p(e,t){e[10]&&r.p(e,t)},i(e){n||(Oe(r),n=!0)},o(e){ke(r),n=!1},d(e){r&&r.d(e),e&&C(t)}}}function Gs(e){let t,n,r;var s=e[5].component;function o(e){return{props:{metadata:e[5].metadata}}}return s&&(n=new s(o(e))),{c(){t=N("div"),n&&Ie(n.$$.fragment),L(t,"class","secondary-pane svelte-8ymctk")},m(e,s){I(e,t,s),n&&Ce(n,t,null),r=!0},p(e,r){const a={};if(32&r&&(a.metadata=e[5].metadata),s!==(s=e[5].component)){if(n){we();const e=n;ke(e.$$.fragment,1,0,()=>{Te(e,1)}),Pe()}s?(n=new s(o(e)),Ie(n.$$.fragment),Oe(n.$$.fragment,1),Ce(n,t,null)):n=null}else s&&n.$set(a)},i(e){r||(n&&Oe(n.$$.fragment,e),r=!0)},o(e){n&&ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),n&&Te(n)}}}function Fs(e){let t,n,r,s,o,a;const i=[Bs,Rs],c=[];function l(e,t){return e[3]?1:0}return n=l(e),r=c[n]=i[n](e),{c(){t=N("section"),r.c(),L(t,"aria-label","boardgame.io Debug Panel"),L(t,"class","debug-panel svelte-8ymctk")},m(r,i){I(r,t,i),c[n].m(t,null),s=!0,o||(a=F(window,"keypress",e[11]),o=!0)},p(e,s){let[o]=s,a=n;n=l(e),n===a?c[n].p(e,o):(we(),ke(c[a],1,1,()=>{c[a]=null}),Pe(),r=c[n],r?r.p(e,o):(r=c[n]=i[n](e),r.c()),Oe(r,1),r.m(t,null))},i(e){s||(Oe(r),s=!0)},o(e){ke(r),s=!1},d(e){e&&C(t),c[n].d(),o=!1,a()}}}function Ls(e,t,n){let r,s,o,a=i,c=()=>(a(),a=y(l,e=>n(15,s=e)),l);e.$$.on_destroy.push(()=>a());let{clientManager:l}=t;c();const u={main:{label:"Main",shortcut:"m",component:ir},log:{label:"Log",shortcut:"l",component:hs},info:{label:"Info",shortcut:"i",component:yr},ai:{label:"AI",shortcut:"a",component:Ns}},p=Ge(!1),d=Ge(null);let f;g(e,d,e=>n(5,o=e)),re("hotkeys",{disableHotkeys:p}),re("secondaryPane",{secondaryPane:d});let h="main";function v(){n(3,b=!b)}const m=s.client.debugOpt;let b=!m||!m.collapseOnLoad;const x=!m||!m.hideToggleButton,_={duration:150,easing:Fe},[w,P]=Ue(_);return e.$$set=e=>{"clientManager"in e&&c(n(0,l=e.clientManager))},e.$$.update=()=>{32768&e.$$.dirty&&n(4,r=s.client)},[l,f,h,b,r,o,u,d,function(e){n(2,h=e.detail),f.focus()},v,x,function(e){"."!=e.key?b&&Object.entries(u).forEach(t=>{let[r,{shortcut:s}]=t;e.key==s&&n(2,h=r)}):v()},_,w,P,s,function(e){ie[e?"unshift":"push"](()=>{f=e,n(1,f)})}]}t.D=class extends Re{constructor(e){super(),De(this,e,Ls,Fs,v,{clientManager:0},Ds)}}},3637(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.R=t.M=t.B=void 0,t.S=async function(e,t){const n=e.store.getState();let r=n.ctx.currentPlayer;n.ctx.activePlayers&&(r=Object.keys(n.ctx.activePlayers)[0]);const{action:s,metadata:o}=await t.play(n,r);if(s){const t=u(u({},s),{},{payload:u(u({},s.payload),{},{metadata:o})});return e.store.dispatch(t),t}},t.a=async function(e){let{game:t,bots:n,state:s,depth:o}=e;void 0===o&&(o=1e4);const i=(0,r.C)({game:t});let c=null,l=0;for(;void 0===s.ctx.gameover&&l<o;){let e=s.ctx.currentPlayer;s.ctx.activePlayers&&(e=Object.keys(s.ctx.activePlayers)[0]);const t=n instanceof a?n:n[e],r=await t.play(s,e);if(!r.action)break;c=r.metadata,s=i(s,r.action),l++}return{state:s,metadata:c}},n(2791);var r=n(2591),s=n(9896),o=n(9458);class a{constructor(e){let{enumerate:t,seed:n}=e;this.enumerateFn=t,this.seed=n,this.iterationCounter=0,this._opts={}}addOpt(e){let{key:t,range:n,initial:r}=e;this._opts[t]={range:n,value:r}}getOpt(e){return this._opts[e].value}setOpt(e,t){e in this._opts&&(this._opts[e].value=t)}opts(){return this._opts}enumerate(e,t,n){return this.enumerateFn(e,t,n).map(e=>"payload"in e?e:"move"in e?(0,s.B)(e.move,e.args,n):"event"in e?(0,s.q)(e.event,e.args,n):void 0)}random(e){let t;if(void 0!==this.seed){const e=this.prngstate?"":this.seed,n=(0,o.a)(e,this.prngstate);t=n(),this.prngstate=n.state()}else t=Math.random();return e?Array.isArray(e)?e[Math.floor(t*e.length)]:Math.floor(t*e):t}}t.B=a,t.M=class extends a{constructor(e){let{enumerate:t,seed:n,objectives:s,game:o,iterations:a,playoutDepth:i,iterationCallback:c}=e;super({enumerate:t,seed:n}),void 0===s&&(s=()=>({})),this.objectives=s,this.iterationCallback=c||(()=>{}),this.reducer=(0,r.C)({game:o}),this.iterations=a,this.playoutDepth=i,this.addOpt({key:"async",initial:!1}),this.addOpt({key:"iterations",initial:"number"==typeof a?a:1e3,range:{min:1,max:2e3}}),this.addOpt({key:"playoutDepth",initial:"number"==typeof i?i:50,range:{min:1,max:100}})}createNode(e){let{state:t,parentAction:n,parent:r,playerID:s}=e;const{G:o,ctx:a}=t;let i=[],c=[];if(void 0!==s)i=this.enumerate(o,a,s),c=this.objectives(o,a,s);else if(a.activePlayers)for(const e in a.activePlayers)i.push(...this.enumerate(o,a,e)),c.push(this.objectives(o,a,e));else i=this.enumerate(o,a,a.currentPlayer),c=this.objectives(o,a,a.currentPlayer);return{state:t,parent:r,parentAction:n,actions:i,objectives:c,children:[],visits:0,value:0}}select(e){if(e.actions.length>0)return e;if(0===e.children.length)return e;let t=null,n=0;for(const r of e.children){const s=r.visits+Number.EPSILON,o=r.value/s+Math.sqrt(2*Math.log(e.visits)/s);(null==t||o>n)&&(n=o,t=r)}return this.select(t)}expand(e){const t=e.actions;if(0===t.length||void 0!==e.state.ctx.gameover)return e;const n=this.random(t.length),r=t[n];e.actions.splice(n,1);const s=this.reducer(e.state,r),o=this.createNode({state:s,parentAction:r,parent:e});return e.children.push(o),o}playout(e){let{state:t}=e,n=this.getOpt("playoutDepth");"function"==typeof this.playoutDepth&&(n=this.playoutDepth(t.G,t.ctx));for(let e=0;e<n&&void 0===t.ctx.gameover;e++){const{G:e,ctx:n}=t;let r=n.currentPlayer;n.activePlayers&&(r=Object.keys(n.activePlayers)[0]);const s=this.enumerate(e,n,r),o=this.objectives(e,n,r),a=Object.keys(o).reduce((t,r)=>{const s=o[r];return s.checker(e,n)?t+s.weight:t},0);if(a>0)return{score:a};if(!s||0===s.length)return;const i=this.random(s.length);t=this.reducer(t,s[i])}return t.ctx.gameover}backpropagate(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.visits++,void 0!==t.score&&(e.value+=t.score),!0===t.draw&&(e.value+=.5),e.parentAction&&t.winner===e.parentAction.payload.playerID&&e.value++,e.parent&&this.backpropagate(e.parent,t)}play(e,t){const n=this.createNode({state:e,playerID:t});let r=this.getOpt("iterations");"function"==typeof this.iterations&&(r=this.iterations(e.G,e.ctx));const s=()=>{let e=null;for(const t of n.children)(null==e||t.visits>e.visits)&&(e=t);return{action:e&&e.parentAction,metadata:n}};return new Promise(e=>{const t=()=>{for(let e=0;e<25&&this.iterationCounter<r;e++){const e=this.select(n),t=this.expand(e),r=this.playout(t);this.backpropagate(t,r),this.iterationCounter++}this.iterationCallback({iterationCounter:this.iterationCounter,numIterations:r,metadata:n})};if(this.iterationCounter=0,this.getOpt("async")){const n=()=>{this.iterationCounter<r?(t(),setImmediate(n)):e(s())};n()}else{for(;this.iterationCounter<r;)t();e(s())}})}},t.R=class extends a{play(e,t){let{G:n,ctx:r}=e;const s=this.enumerate(n,r,t);return Promise.resolve({action:this.random(s)})}}},9949(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.C=function(e){return new m(e)};var r=n(5042);n(4826);var s=n(2960),o=n(9896),a=n(2591),i=n(8630),c=n(7857);class l extends c.T{connect(){}disconnect(){}sendAction(){}sendChatMessage(){}requestSync(){}updateCredentials(){}updateMatchID(){}updatePlayerID(){}}const p=e=>new l(e),d=new class{constructor(){this.debugPanel=null,this.currentClient=null,this.clients=new Map,this.subscribers=new Map}register(e){this.clients.set(e,e),this.mountDebug(e),this.notifySubscribers()}unregister(e){if(this.clients.delete(e),this.currentClient===e){this.unmountDebug();for(const[e]of this.clients){if(this.debugPanel)break;this.mountDebug(e)}}this.notifySubscribers()}subscribe(e){const t=Symbol();return this.subscribers.set(t,e),e(this.getState()),()=>{this.subscribers.delete(t)}}switchPlayerID(e){if(this.currentClient.multiplayer)for(const[t]of this.clients)if(t.playerID===e&&!1!==t.debugOpt&&t.multiplayer===this.currentClient.multiplayer)return void this.switchToClient(t);this.currentClient.updatePlayerID(e),this.notifySubscribers()}switchToClient(e){e!==this.currentClient&&(this.unmountDebug(),this.mountDebug(e),this.notifySubscribers())}notifySubscribers(){const e=this.getState();this.subscribers.forEach(t=>{t(e)})}getState(){return{client:this.currentClient,debuggableClients:this.getDebuggableClients()}}getDebuggableClients(){return[...this.clients.values()].filter(e=>!1!==e.debugOpt)}mountDebug(e){if(!1===e.debugOpt||null!==this.debugPanel||"undefined"==typeof document)return;let t,n=document.body;e.debugOpt&&!0!==e.debugOpt&&(t=e.debugOpt.impl||t,n=e.debugOpt.target||n),t&&(this.currentClient=e,this.debugPanel=new t({target:n,props:{clientManager:this}}))}unmountDebug(){this.debugPanel.$destroy(),this.debugPanel=null,this.currentClient=null}};function f(e,t,n){return n||null!=e||(e=t.getState().ctx.currentPlayer),e}function h(e,t,n,r,s,a){const i={};for(const c of t)i[c]=function(){for(var t=arguments.length,i=new Array(t),l=0;l<t;l++)i[l]=arguments[l];const u=o.A[e](c,i,f(r,n,a),s);n.dispatch(u)};return i}const v=h.bind(null,"makeMove"),y=h.bind(null,"gameEvent"),g=h.bind(null,"plugin");class m{constructor(e){let{game:t,debug:n,numPlayers:c,multiplayer:l,matchID:u,playerID:h,credentials:v,enhancer:y}=e;this.game=(0,a.P)(t),this.playerID=h,this.matchID=u||"default",this.credentials=v,this.multiplayer=l,this.debugOpt=n,this.manager=d,this.gameStateOverride=null,this.subscribers={},this._running=!1,this.reducer=(0,a.C)({game:this.game,isClient:void 0!==l}),this.initialState=null,l||(this.initialState=(0,i.I)({game:this.game,numPlayers:c})),this.reset=()=>{this.store.dispatch((0,o.r)(this.initialState))},this.undo=()=>{const e=(0,o.u)(f(this.playerID,this.store,this.multiplayer),this.credentials);this.store.dispatch(e)},this.redo=()=>{const e=(0,o.a)(f(this.playerID,this.store,this.multiplayer),this.credentials);this.store.dispatch(e)},this.log=[];const g=(0,s.applyMiddleware)(a.T,()=>e=>t=>{const n=e(t);return this.notifySubscribers(),n},e=>t=>n=>{const r=e.getState(),s=t(n);return"clientOnly"in n||n.type===o.e||this.transport.sendAction(r,n),s},e=>t=>n=>{const r=t(n),s=e.getState();switch(n.type){case o.M:case o.G:case o.d:case o.c:{const e=s.deltalog;this.log=[...this.log,...e];break}case o.R:this.log=[];break;case o.b:case o.U:{let e=-1;this.log.length>0&&(e=this.log[this.log.length-1]._stateID);let t=n.deltalog||[];t=t.filter(t=>t._stateID>e),this.log=[...this.log,...t];break}case o.S:this.initialState=n.initialState,this.log=n.log||[]}return r});y=void 0!==y?(0,s.compose)(g,y):g,this.store=(0,s.createStore)(this.reducer,this.initialState,y),l||(l=p),this.transport=l({transportDataCallback:e=>this.receiveTransportData(e),gameKey:t,game:this.game,matchID:u,playerID:h,credentials:v,gameName:this.game.name,numPlayers:c}),this.createDispatchers(),this.chatMessages=[],this.sendChatMessage=e=>{this.transport.sendChatMessage(this.matchID,{id:(0,r.nanoid)(7),sender:this.playerID,payload:e})}}receiveMatchData(e){this.matchData=e,this.notifySubscribers()}receiveChatMessage(e){this.chatMessages=[...this.chatMessages,e],this.notifySubscribers()}receiveTransportData(e){const[t]=e.args;if(t===this.matchID)switch(e.type){case"sync":{const[,t]=e.args,n=(0,o.s)(t);this.receiveMatchData(t.filteredMetadata),this.store.dispatch(n);break}case"update":{const[,t,n]=e.args,r=this.store.getState();if(t._stateID>=r._stateID){const e=(0,o.f)(t,n);this.store.dispatch(e)}break}case"patch":{const[,t,n,r,s]=e.args,a=this.store.getState()._stateID;if(t!==a)break;const i=(0,o.p)(t,n,r,s);this.store.dispatch(i),this.store.getState()._stateID===a&&this.transport.requestSync();break}case"matchData":{const[,t]=e.args;this.receiveMatchData(t);break}case"chat":{const[,t]=e.args;this.receiveChatMessage(t);break}}}notifySubscribers(){Object.values(this.subscribers).forEach(e=>e(this.getState()))}overrideGameState(e){this.gameStateOverride=e,this.notifySubscribers()}start(){this.transport.connect(),this._running=!0,this.manager.register(this)}stop(){this.transport.disconnect(),this._running=!1,this.manager.unregister(this)}subscribe(e){const t=Object.keys(this.subscribers).length;return this.subscribers[t]=e,this.transport.subscribeToConnectionStatus(()=>this.notifySubscribers()),!this._running&&this.multiplayer||e(this.getState()),()=>{delete this.subscribers[t]}}getInitialState(){return this.initialState}getState(){let e=this.store.getState();if(null!==this.gameStateOverride&&(e=this.gameStateOverride),null===e)return e;let t=!0;const n=this.game.flow.isPlayerActive(e.G,e.ctx,this.playerID);return this.multiplayer&&!n&&(t=!1),this.multiplayer||null===this.playerID||void 0===this.playerID||n||(t=!1),void 0!==e.ctx.gameover&&(t=!1),this.multiplayer||(e=u(u({},e),{},{G:this.game.playerView({G:e.G,ctx:e.ctx,playerID:this.playerID}),plugins:(0,o.P)(e,this)})),u(u({},e),{},{log:this.log,isActive:t,isConnected:this.transport.isConnected})}createDispatchers(){this.moves=v(this.game.moveNames,this.store,this.playerID,this.credentials,this.multiplayer),this.events=y(this.game.flow.enabledEventNames,this.store,this.playerID,this.credentials,this.multiplayer),this.plugins=g(this.game.pluginNames,this.store,this.playerID,this.credentials,this.multiplayer)}updatePlayerID(e){this.playerID=e,this.createDispatchers(),this.transport.updatePlayerID(e),this.notifySubscribers()}updateMatchID(e){this.matchID=e,this.createDispatchers(),this.transport.updateMatchID(e),this.notifySubscribers()}updateCredentials(e){this.credentials=e,this.createDispatchers(),this.transport.updateCredentials(e),this.notifySubscribers()}}},6192(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.a=t.L=void 0;const n=(e,t)=>{if(!e||"string"!=typeof e)throw new Error(`Expected ${t} string, got "${e}".`)},r=e=>n(e,"game name"),s=e=>n(e,"match ID"),o=(e,t)=>{if(!e)throw new Error(`Expected body, got “${e}”.`);for(const n in t){const r=t[n],s=Array.isArray(r)?r:[r],o=e[n];if(!s.includes(typeof o)){const e=s.join("|");throw new TypeError(`Expected body.${n} to be of type ${e}, got “${o}”.`)}}};class a extends Error{constructor(e,t){super(e),this.details=t}}t.a=a,t.L=class{constructor(){let{server:e=""}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.server=e.replace(/\/$/,"")}async request(e,t){const n=await fetch(this.server+e,t);if(!n.ok){let e;try{e=await n.clone().json()}catch{try{e=await n.text()}catch(t){e=t.message}}throw new a(`HTTP status ${n.status}`,e)}return n.json()}async post(e,t){let n={method:"post",body:JSON.stringify(t.body),headers:{"Content-Type":"application/json"}};return t.init&&(n=u(u(u({},n),t.init),{},{headers:u(u({},n.headers),t.init.headers)})),this.request(e,n)}async listGames(e){return this.request("/games",e)}async listMatches(e,t,n){r(e);let s="";if(t){const e=[],{isGameover:n,updatedBefore:r,updatedAfter:o}=t;void 0!==n&&e.push(`isGameover=${n}`),r&&e.push(`updatedBefore=${r}`),o&&e.push(`updatedAfter=${o}`),e.length>0&&(s="?"+e.join("&"))}return this.request(`/games/${e}${s}`,n)}async getMatch(e,t,n){return r(e),s(t),this.request(`/games/${e}/${t}`,n)}async createMatch(e,t,n){return r(e),o(t,{numPlayers:"number"}),this.post(`/games/${e}/create`,{body:t,init:n})}async joinMatch(e,t,n,a){return r(e),s(t),o(n,{playerID:["string","undefined"],playerName:"string"}),this.post(`/games/${e}/${t}/join`,{body:n,init:a})}async leaveMatch(e,t,n,a){r(e),s(t),o(n,{playerID:"string",credentials:"string"}),await this.post(`/games/${e}/${t}/leave`,{body:n,init:a})}async updatePlayer(e,t,n,a){r(e),s(t),o(n,{playerID:"string",credentials:"string"}),await this.post(`/games/${e}/${t}/update`,{body:n,init:a})}async playAgain(e,t,n,a){return r(e),s(t),o(n,{playerID:"string",credentials:"string"}),this.post(`/games/${e}/${t}/playAgain`,{body:n,init:a})}}},4688(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return r.C}}),Object.defineProperty(t,"LobbyClient",{enumerable:!0,get:function(){return s.L}}),Object.defineProperty(t,"LobbyClientError",{enumerable:!0,get:function(){return s.a}});var r=n(9949),s=n(6192);n(5042),n(4826),n(9896),n(5878),n(9458),n(9001),n(7035),n(2591),n(1337),n(3637),n(2791),n(2960),n(8630),n(7857)},504(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Debug",{enumerable:!0,get:function(){return r.D}});var r=n(4826);n(9896),n(5878),n(9458),n(9001),n(7035),n(2591),n(1337),n(3637),n(2791)},9710(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.g=void 0;var r=n(9896),s=n(1337);const o=(e,t,n)=>u(u({},n),{},{G:e.playerView({G:n.G,ctx:n.ctx,playerID:t}),plugins:(0,r.P)(n,{playerID:t,game:e}),deltalog:void 0,_undo:[],_redo:[]});function a(e,t){return void 0===e?e:e.map(e=>{if(null!==t&&+t===+e.action.payload.playerID)return e;if(!0!==e.redact)return e;const n=u(u({},e.action.payload),{},{args:null});return p(u(u({},e),{},{action:u(u({},e.action),{},{payload:n})}),f)})}t.g=e=>(t,n)=>{switch(n.type){case"patch":{const[r,i,c,l]=n.args,u=a(l.deltalog,t),p=o(e,t,l),d=l._stateID,f=o(e,t,c);return{type:"patch",args:[r,i,d,(0,s.createPatch)(f,p),u]}}case"update":{const[r,s]=n.args,i=a(s.deltalog,t);return{type:"update",args:[r,o(e,t,s),i]}}case"sync":{const[r,s]=n.args,i=o(e,t,s.state),c=a(s.log,t);return{type:"sync",args:[r,u(u({},s),{},{state:i,log:c})]}}default:return n}}},8630(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.I=function(e){let{game:t,numPlayers:n,setupData:o}=e;t=(0,r.P)(t),n||(n=2);let a={G:{},ctx:t.flow.ctx(n),plugins:{}};a=(0,s.z)(a,{game:t}),a=(0,s.E)(a,{game:t,playerID:void 0});const i=(0,s.j)(a);a.G=t.setup(u(u({},i),{},{ctx:a.ctx}),o);let c=u(u({},a),{},{_undo:[],_redo:[],_stateID:0});return c=t.flow.init(c),[c]=(0,s.x)(c,{game:t}),t.disableUndo||(c._undo=[{G:c.G,ctx:c.ctx,plugins:c.plugins}]),c};var r=n(2591),s=n(9896)},2073(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.M=void 0;var r=n(2591),s=n(9896),o=n(2960),a=n(568);const i=e=>Object.values(e.players).map(e=>p(e,h));t.M=class{constructor(e,t,n,s){this.game=(0,r.P)(e),this.storageAPI=t,this.transportAPI=n,this.subscribeCallback=()=>{},this.auth=s}subscribe(e){this.subscribeCallback=e}async onUpdate(e,t,n,i){if(!e||!e.payload)return{error:"missing action or action payload"};let c;if((0,a.i)(this.storageAPI)?({metadata:c}=this.storageAPI.fetch(n,{metadata:!0})):({metadata:c}=await this.storageAPI.fetch(n,{metadata:!0})),this.auth&&!await this.auth.authenticateCredentials({playerID:i,credentials:e.payload.credentials,metadata:c}))return{error:"unauthorized action"};const l=(e=>{const t=p(e.payload,v);return u(u({},e),{},{payload:t})})(e),d=n;let f;if((0,a.i)(this.storageAPI)?({state:f}=this.storageAPI.fetch(d,{state:!0})):({state:f}=await this.storageAPI.fetch(d,{state:!0})),void 0===f)return(0,s.g)(`game not found, matchID=[${d}]`),{error:"game not found"};if(void 0!==f.ctx.gameover)return void(0,s.g)(`game over - matchID=[${d}] - playerID=[${i}] - action[${l.payload.type}]`);const h=(0,r.C)({game:this.game}),g=(0,o.applyMiddleware)(r.T),m=(0,o.createStore)(h,f,g);if(l.type==s.d||l.type==s.c){const e=null!==f.ctx.activePlayers,t=f.ctx.currentPlayer===i;if(!e&&!t||e&&(void 0===f.ctx.activePlayers[i]||Object.keys(f.ctx.activePlayers).length>1))return void(0,s.g)(`playerID=[${i}] cannot undo / redo right now`)}if(!this.game.flow.isPlayerActive(f.G,f.ctx,i))return void(0,s.g)(`player not active - playerID=[${i}] - action[${l.payload.type}]`);const b=l.type==s.M?this.game.flow.getMove(f.ctx,l.payload.type,i):null;if(l.type==s.M&&!b)return void(0,s.g)(`move not processed - canPlayerMakeMove=false - playerID=[${i}] - action[${l.payload.type}]`);if(f._stateID!==t&&!(b&&(0,r.I)(b)&&b.ignoreStaleStateID))return void(0,s.g)(`invalid stateID, was=[${t}], expected=[${f._stateID}] - playerID=[${i}] - action[${l.payload.type}]`);const x=m.getState();m.dispatch(l),f=m.getState(),this.subscribeCallback({state:f,action:l,matchID:n}),this.game.deltaState?this.transportAPI.sendAll({type:"patch",args:[n,t,x,f]}):this.transportAPI.sendAll({type:"update",args:[n,f]});const{deltalog:_}=f,w=p(f,y);let P;if(!c||void 0!==c.gameover&&null!==c.gameover||(P=u(u({},c),{},{updatedAt:Date.now()}),void 0!==f.ctx.gameover&&(P.gameover=f.ctx.gameover)),(0,a.i)(this.storageAPI))this.storageAPI.setState(d,w,_),P&&this.storageAPI.setMetadata(d,P);else{const e=[this.storageAPI.setState(d,w,_)];P&&e.push(this.storageAPI.setMetadata(d,P)),await Promise.all(e)}}async onSync(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:2;const s=e,o={state:!0,metadata:!0,log:!0,initialState:!0},c=(0,a.i)(this.storageAPI)?this.storageAPI.fetch(s,o):await this.storageAPI.fetch(s,o);let{state:l,initialState:u,log:p,metadata:d}=c;if(this.auth&&null!=t&&!await this.auth.authenticateCredentials({playerID:t,credentials:n,metadata:d}))return{error:"unauthorized"};if(void 0===l){const t=(0,a.c)({game:this.game,unlisted:!0,numPlayers:r,setupData:void 0});if("setupDataError"in t)return{error:"game requires setupData"};u=l=t.initialState,d=t.metadata,this.subscribeCallback({state:l,matchID:e}),(0,a.i)(this.storageAPI)?this.storageAPI.createMatch(s,{initialState:u,metadata:d}):await this.storageAPI.createMatch(s,{initialState:u,metadata:d})}const f={state:l,log:p,filteredMetadata:d?i(d):void 0,initialState:u};this.transportAPI.send({playerID:t,type:"sync",args:[e,f]})}async onConnectionChange(e,t,n,r){const o=e;if(null==t)return;let c;if((0,a.i)(this.storageAPI)?({metadata:c}=this.storageAPI.fetch(o,{metadata:!0})):({metadata:c}=await this.storageAPI.fetch(o,{metadata:!0})),void 0===c)return(0,s.g)(`metadata not found for matchID=[${o}]`),{error:"metadata not found"};if(void 0===c.players[t])return(0,s.g)(`Player not in the match, matchID=[${o}] playerID=[${t}]`),{error:"player not in the match"};if(this.auth&&!await this.auth.authenticateCredentials({playerID:t,credentials:n,metadata:c}))return{error:"unauthorized"};c.players[t].isConnected=r;const l=i(c);this.transportAPI.sendAll({type:"matchData",args:[e,l]}),(0,a.i)(this.storageAPI)?this.storageAPI.setMetadata(o,c):await this.storageAPI.setMetadata(o,c)}async onChatMessage(e,t,n){const r=e;if(this.auth){const{metadata:e}=await this.storageAPI.fetch(r,{metadata:!0});if(!t||"string"!=typeof t.sender)return{error:"unauthorized"};if(!await this.auth.authenticateCredentials({playerID:t.sender,credentials:n,metadata:e}))return{error:"unauthorized"}}this.transportAPI.sendAll({type:"chat",args:[e,t]})}}},9843(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Local",{enumerable:!0,get:function(){return r.L}}),Object.defineProperty(t,"SocketIO",{enumerable:!0,get:function(){return r.S}});var r=n(5194);n(568),n(8630),n(2591),n(9896),n(5878),n(9458),n(9001),n(1337),n(2073),n(2960),n(7857),n(9710),n(8007)},9458(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.R=void 0,t.a=s;class n{constructor(e){const t=function(){let e=4022871197;const t=function(t){const n=t.toString();for(let t=0;t<n.length;t++){e+=n.charCodeAt(t);let r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=4294967296*r}return 2.3283064365386963e-10*(e>>>0)};return t}();this.c=1,this.s0=t(" "),this.s1=t(" "),this.s2=t(" "),this.s0-=t(e),this.s0<0&&(this.s0+=1),this.s1-=t(e),this.s1<0&&(this.s1+=1),this.s2-=t(e),this.s2<0&&(this.s2+=1)}next(){const e=2091639*this.s0+2.3283064365386963e-10*this.c;return this.s0=this.s1,this.s1=this.s2,this.s2=e-(this.c=Math.trunc(e))}}function r(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function s(e,t){const s=new n(e),o=s.next.bind(s);return t&&r(t,s),o.state=()=>r(s,{}),o}class o{constructor(e){this.state=e||{seed:"0"},this.used=!1}static seed(){return Date.now().toString(36).slice(-10)}isUsed(){return this.used}getState(){return this.state}_random(){this.used=!0;const e=this.state,t=s(e.prngstate?"":e.seed,e.prngstate),n=t();return this.state=u(u({},e),{},{prngstate:t.state()}),n}api(){const e=this._random.bind(this),t={D4:4,D6:6,D8:8,D10:10,D12:12,D20:20},n={};for(const r in t){const s=t[r];n[r]=t=>void 0===t?Math.floor(e()*s)+1:Array.from({length:t}).map(()=>Math.floor(e()*s)+1)}return u(u({},n),{},{Die:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,n=arguments.length>1?arguments[1]:void 0;return void 0===n?Math.floor(e()*t)+1:Array.from({length:n}).map(()=>Math.floor(e()*t)+1)},Number:()=>e(),Shuffle:t=>{const n=[...t];let r=t.length,s=0;const o=Array.from({length:r});for(;r;){const t=Math.trunc(r*e());o[s++]=n[t],n[t]=n[--r]}return o},_private:this})}}t.R={name:"random",noClient:e=>{let{api:t}=e;return t._private.isUsed()},flush:e=>{let{api:t}=e;return t._private.getState()},api:e=>{let{data:t}=e;return new o(t).api()},setup:e=>{let{game:t}=e,{seed:n}=t;return void 0===n&&(n=o.seed()),{seed:n}},playerView:()=>{}}},2591(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.C=function(e){let{game:t,isClient:n}=e;return t=i(t),function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=arguments.length>1?arguments[1]:void 0,[c]=v(e);switch(i.type){case o.e:return c;case o.G:{if(c=u(u({},c),{},{deltalog:[]}),n)return c;if(void 0!==c.ctx.gameover)return(0,o.g)("cannot call event after game end"),y(c,s.GameOver);if(l(i)&&!t.flow.isPlayerActive(c.G,c.ctx,i.payload.playerID))return(0,o.g)(`disallowed event: ${i.payload.type}`),y(c,s.InactivePlayer);c=(0,o.E)(c,{game:t,isClient:!1,playerID:i.payload.playerID});let e,r=t.flow.processEvent(c,i);return[r,e]=h(r,c,{game:t,isClient:!1}),e||(r=d(r,{game:t,action:i}),u(u({},r),{},{_stateID:c._stateID+1}))}case o.M:{const e=c=u(u({},c),{},{deltalog:[]}),r=t.flow.getMove(c.ctx,i.payload.type,i.payload.playerID||c.ctx.currentPlayer);if(null===r)return(0,o.g)(`disallowed move: ${i.payload.type}`),y(c,s.UnavailableMove);if(n&&!1===r.client)return c;if(void 0!==c.ctx.gameover)return(0,o.g)("cannot make move after game end"),y(c,s.GameOver);if(l(i)&&!t.flow.isPlayerActive(c.G,c.ctx,i.payload.playerID))return(0,o.g)(`disallowed move: ${i.payload.type}`),y(c,s.InactivePlayer);c=(0,o.E)(c,{game:t,isClient:n,playerID:i.payload.playerID});const a=t.processMove(c,i.payload);if(a===o.w)return(0,o.g)(`invalid move: ${i.payload.type} args: ${i.payload.args}`),y(c,s.InvalidMove);const p=u(u({},c),{},{G:a});if(n&&(0,o.N)(p,{game:t}))return c;if(c=p,n){let n;return[c,n]=h(c,e,{game:t,isClient:!0}),n||u(u({},c),{},{_stateID:c._stateID+1})}let v;return c=f(c,i,r),c=t.flow.processMove(c,i.payload),[c,v]=h(c,e,{game:t}),v||(c=d(c,{game:t,action:i}),u(u({},c),{},{_stateID:c._stateID+1}))}case o.R:case o.U:case o.S:return i.state;case o.d:{if(c=u(u({},c),{},{deltalog:[]}),t.disableUndo)return(0,o.g)("Undo is not enabled"),y(c,s.ActionDisabled);const{G:e,ctx:n,_undo:r,_redo:a,_stateID:p}=c;if(r.length<2)return(0,o.g)("No moves to undo"),y(c,s.ActionInvalid);const d=r[r.length-1],h=r[r.length-2];return l(i)&&i.payload.playerID!==d.playerID?((0,o.g)("Cannot undo other players' moves"),y(c,s.ActionInvalid)):d.moveType&&!((e,t,n)=>{function r(e){return void 0!==e.undoable}function s(e){return e instanceof Function}return!r(n)||(s(n.undoable)?n.undoable({G:e,ctx:t}):n.undoable)})(e,n,t.flow.getMove(h.ctx,d.moveType,d.playerID))?((0,o.g)("Move cannot be undone"),y(c,s.ActionInvalid)):(c=f(c,i),u(u({},c),{},{G:h.G,ctx:h.ctx,plugins:h.plugins,_stateID:p+1,_undo:r.slice(0,-1),_redo:[d,...a]}))}case o.c:{if(c=u(u({},c),{},{deltalog:[]}),t.disableUndo)return(0,o.g)("Redo is not enabled"),y(c,s.ActionDisabled);const{_undo:e,_redo:n,_stateID:r}=c;if(0===n.length)return(0,o.g)("No moves to redo"),y(c,s.ActionInvalid);const a=n[0];return l(i)&&i.payload.playerID!==a.playerID?((0,o.g)("Cannot redo other players' moves"),y(c,s.ActionInvalid)):(c=f(c,i),u(u({},c),{},{G:a.G,ctx:a.ctx,plugins:a.plugins,_stateID:r+1,_undo:[...e,a],_redo:n.slice(1)}))}case o.t:return(0,o.v)(c,i,{game:t});case o.b:{const e=c,t=JSON.parse(JSON.stringify(e)),n=(0,a.applyPatch)(t,i.patch);return n.some(e=>null!==e)?((0,o.g)(`Patch ${JSON.stringify(i.patch)} apply failed`),y(e,r.PatchFailed,n)):t}default:return c}}},t.I=c,t.P=i,t.T=void 0;var r,s,o=n(9896),a=n(1337);function i(e){if(function(e){return void 0!==e.processMove}(e))return e;if(void 0===e.name&&(e.name="default"),void 0===e.deltaState&&(e.deltaState=!1),void 0===e.disableUndo&&(e.disableUndo=!1),void 0===e.setup&&(e.setup=()=>({})),void 0===e.moves&&(e.moves={}),void 0===e.playerView&&(e.playerView=e=>{let{G:t}=e;return t}),void 0===e.plugins&&(e.plugins=[]),e.plugins.forEach(e=>{if(void 0===e.name)throw new Error("Plugin missing name attribute");if(e.name.includes(" "))throw new Error(e.name+": Plugin name must not include spaces")}),e.name.includes(" "))throw new Error(e.name+": Game name must not include spaces");const t=function(e){let{moves:t,phases:n,endIf:r,onEnd:s,turn:a,events:i,plugins:c}=e;void 0===t&&(t={}),void 0===i&&(i={}),void 0===c&&(c=[]),void 0===n&&(n={}),r||(r=()=>{}),s||(s=e=>{let{G:t}=e;return t}),a||(a={});const l=u({},n);""in l&&(0,o.g)("cannot specify phase with empty name"),l[""]={};const d={},f=new Set;let h=null;Object.keys(t).forEach(e=>f.add(e));const v=(e,t)=>{const n=(0,o.F)(e,t,c);return e=>{const t=(0,o.j)(e);return n(u(u({},t),{},{G:e.G,ctx:e.ctx,playerID:e.playerID}))}},y=e=>t=>{const n=(0,o.j)(t);return e(u(u({},n),{},{G:t.G,ctx:t.ctx}))},m={onEnd:v(s,o.h.GAME_ON_END),endIf:y(r)};for(const e in l){const t=l[e];if(!0===t.start&&(h=e),void 0!==t.moves)for(const n of Object.keys(t.moves))d[e+"."+n]=t.moves[n],f.add(n);void 0===t.endIf&&(t.endIf=()=>{}),void 0===t.onBegin&&(t.onBegin=e=>{let{G:t}=e;return t}),void 0===t.onEnd&&(t.onEnd=e=>{let{G:t}=e;return t}),void 0===t.turn&&(t.turn=a),void 0===t.turn.order&&(t.turn.order=o.T.DEFAULT),void 0===t.turn.onBegin&&(t.turn.onBegin=e=>{let{G:t}=e;return t}),void 0===t.turn.onEnd&&(t.turn.onEnd=e=>{let{G:t}=e;return t}),void 0===t.turn.endIf&&(t.turn.endIf=()=>!1),void 0===t.turn.onMove&&(t.turn.onMove=e=>{let{G:t}=e;return t}),void 0===t.turn.stages&&(t.turn.stages={}),(0,o.i)(t.turn,!0);for(const n in t.turn.stages){const r=t.turn.stages[n].moves||{};for(const t of Object.keys(r))d[e+"."+n+"."+t]=r[t],f.add(t)}if(t.wrapped={onBegin:v(t.onBegin,o.h.PHASE_ON_BEGIN),onEnd:v(t.onEnd,o.h.PHASE_ON_END),endIf:y(t.endIf)},t.turn.wrapped={onMove:v(t.turn.onMove,o.h.TURN_ON_MOVE),onBegin:v(t.turn.onBegin,o.h.TURN_ON_BEGIN),onEnd:v(t.turn.onEnd,o.h.TURN_ON_END),endIf:y(t.turn.endIf)},"function"!=typeof t.next){const{next:e}=t;t.next=()=>e||null}t.wrapped.next=y(t.next)}function b(e){return e.phase?l[e.phase]:l[""]}function x(e){return e}function _(e,t){const n=new Set,r=new Set;for(let s=0;s<t.length;s++){const o=t[s],{fn:a,arg:i}=o,c=p(o,g);if(a===C){r.clear();const t=e.ctx.phase;if(n.has(t)){const t=u(u({},e.ctx),{},{phase:null});return u(u({},e),{},{ctx:t})}n.add(t)}const l=[];if(e=a(e,u(u({},c),{},{arg:i,next:l})),a===I)break;const d=A(e);if(d){t.push({fn:I,arg:d,turn:e.ctx.turn,phase:e.ctx.phase,automatic:!0});continue}const f=j(e);if(f)t.push({fn:C,arg:f,turn:e.ctx.turn,phase:e.ctx.phase,automatic:!0});else{if([x,M,$].includes(a)){const n=S(e);if(n){t.push({fn:T,arg:n,turn:e.ctx.turn,phase:e.ctx.phase,automatic:!0});continue}}t.push(...l)}}return e}function w(e,t){let{next:n}=t;return n.push({fn:P}),e}function P(e,t){let{next:n}=t,{G:r,ctx:s}=e;return r=b(s).wrapped.onBegin(e),n.push({fn:O}),u(u({},e),{},{G:r,ctx:s})}function O(e,t){let{currentPlayer:n}=t,{ctx:r}=e;const s=b(r);n?(r=u(u({},r),{},{currentPlayer:n}),s.turn.activePlayers&&(r=(0,o.l)(r,s.turn.activePlayers))):r=(0,o.I)(e,s.turn);const a=r.turn+1;r=u(u({},r),{},{turn:a,numMoves:0,_prevActivePlayers:[]});const i=s.turn.wrapped.onBegin(u(u({},e),{},{ctx:r}));return u(u({},e),{},{G:i,ctx:r,_undo:[],_redo:[]})}function k(e,t){let{arg:n,next:r,phase:s}=t;const a=b({phase:s});let{ctx:i}=e;if(n&&n.next){if(!(n.next in l))return(0,o.g)("invalid phase: "+n.next),e;i=u(u({},i),{},{phase:n.next})}else i=u(u({},i),{},{phase:a.wrapped.next(e)||null});return e=u(u({},e),{},{ctx:i}),r.push({fn:P}),e}function E(e,t){let{arg:n,currentPlayer:r,next:s}=t,{G:a,ctx:i}=e;const c=b(i),{endPhase:l,ctx:p}=(0,o.n)(e,r,c.turn,n);return i=p,e=u(u({},e),{},{G:a,ctx:i}),l?s.push({fn:C,turn:i.turn,phase:i.phase}):s.push({fn:O,currentPlayer:i.currentPlayer}),e}function M(e,t){let{arg:n,playerID:r}=t;if("string"!=typeof n&&n!==o.k.NULL||(n={stage:n}),"object"!=typeof n)return e;(0,o.i)(n);let{ctx:s}=e,{activePlayers:a,_activePlayersMinMoves:i,_activePlayersMaxMoves:c,_activePlayersNumMoves:l}=s;return void 0!==n.stage&&(null===a&&(a={}),a[r]=n.stage,l[r]=0,n.minMoves&&(null===i&&(i={}),i[r]=n.minMoves),n.maxMoves&&(null===c&&(c={}),c[r]=n.maxMoves)),s=u(u({},s),{},{activePlayers:a,_activePlayersMinMoves:i,_activePlayersMaxMoves:c,_activePlayersNumMoves:l}),u(u({},e),{},{ctx:s})}function $(e,t){let{arg:n}=t;return u(u({},e),{},{ctx:(0,o.l)(e.ctx,n)})}function A(e){return m.endIf(e)}function j(e){return b(e.ctx).wrapped.endIf(e)}function S(e){const t=b(e.ctx),n=e.ctx.numMoves||0;return!!(t.turn.maxMoves&&n>=t.turn.maxMoves)||t.turn.wrapped.endIf(e)}function I(e,t){let{arg:n,phase:r}=t;void 0===n&&(n=!0),e=u(u({},e=C(e,{phase:r})),{},{ctx:u(u({},e.ctx),{},{gameover:n})});const s=m.onEnd(e);return u(u({},e),{},{G:s})}function C(e,t){let{arg:n,next:r,turn:s,automatic:a}=t;e=T(e,{turn:s,force:!0,automatic:!0});const{phase:i,turn:c}=e.ctx;if(r&&r.push({fn:k,arg:n,phase:i}),null===i)return e;const l=b(e.ctx).wrapped.onEnd(e),p=u(u({},e.ctx),{},{phase:null}),d=(0,o.q)("endPhase",n),{_stateID:f}=e,h={action:d,_stateID:f,turn:c,phase:i};a&&(h.automatic=!0);const v=[...e.deltalog||[],h];return u(u({},e),{},{G:l,ctx:p,deltalog:v})}function T(e,t){let{arg:n,next:r,turn:s,force:a,automatic:i,playerID:c}=t;if(s!==e.ctx.turn)return e;const{currentPlayer:l,numMoves:p,phase:d,turn:f}=e.ctx,h=b(e.ctx),v=p||0;if(!a&&h.turn.minMoves&&v<h.turn.minMoves)return(0,o.m)(`cannot end turn before making ${h.turn.minMoves} moves`),e;const y=h.turn.wrapped.onEnd(e);r&&r.push({fn:E,arg:n,currentPlayer:l});let g=u(u({},e.ctx),{},{activePlayers:null});if(n&&n.remove){c=c||l;const t=g.playOrder.filter(e=>e!=c),n=g.playOrderPos>t.length-1?0:g.playOrderPos;if(g=u(u({},g),{},{playOrder:t,playOrderPos:n}),0===t.length)return r.push({fn:C,turn:f,phase:d}),e}const m=(0,o.q)("endTurn",n),{_stateID:x}=e,_={action:m,_stateID:x,turn:f,phase:d};i&&(_.automatic=!0);const w=[...e.deltalog||[],_];return u(u({},e),{},{G:y,ctx:g,deltalog:w,_undo:[],_redo:[]})}function N(e,t){let{arg:n,next:r,automatic:s,playerID:a}=t;a=a||e.ctx.currentPlayer;let{ctx:i,_stateID:c}=e,{activePlayers:l,_activePlayersNumMoves:p,_activePlayersMinMoves:d,_activePlayersMaxMoves:f,phase:h,turn:v}=i;const y=null!==l&&a in l,g=b(i);if(!n&&y){const e=g.turn.stages[l[a]];e&&e.next&&(n=e.next)}if(r&&r.push({fn:M,arg:n,playerID:a}),!y)return e;const m=p[a]||0;if(d&&d[a]&&m<d[a])return(0,o.m)(`cannot end stage before making ${d[a]} moves`),e;l=u({},l),delete l[a],d&&(d=u({},d),delete d[a]),f&&(f=u({},f),delete f[a]),i=(0,o.o)(u(u({},i),{},{activePlayers:l,_activePlayersMinMoves:d,_activePlayersMaxMoves:f}));const x={action:(0,o.q)("endStage",n),_stateID:c,turn:v,phase:h};s&&(x.automatic=!0);const _=[...e.deltalog||[],x];return u(u({},e),{},{ctx:i,deltalog:_})}function D(e,n,r){const s=b(e),a=s.turn.stages,{activePlayers:i}=e;if(i&&void 0!==i[r]&&i[r]!==o.k.NULL&&void 0!==a[i[r]]&&void 0!==a[i[r]].moves){const e=a[i[r]].moves;if(n in e)return e[n]}else if(s.moves){if(n in s.moves)return s.moves[n]}else if(n in t)return t[n];return null}const R={endStage:function(e,t){return _(e,[{fn:N,playerID:t}])},setStage:function(e,t,n){return _(e,[{fn:N,arg:n,playerID:t}])},endTurn:function(e,t,n){return _(e,[{fn:T,turn:e.ctx.turn,phase:e.ctx.phase,arg:n}])},pass:function(e,t,n){return _(e,[{fn:T,turn:e.ctx.turn,phase:e.ctx.phase,force:!0,arg:n}])},endPhase:function(e){return _(e,[{fn:C,phase:e.ctx.phase,turn:e.ctx.turn}])},setPhase:function(e,t,n){return _(e,[{fn:C,phase:e.ctx.phase,turn:e.ctx.turn,arg:{next:n}}])},endGame:function(e,t,n){return _(e,[{fn:I,turn:e.ctx.turn,phase:e.ctx.phase,arg:n}])},setActivePlayers:function(e,t,n){return _(e,[{fn:$,arg:n}])}},B=[];return!1!==i.endTurn&&B.push("endTurn"),!1!==i.pass&&B.push("pass"),!1!==i.endPhase&&B.push("endPhase"),!1!==i.setPhase&&B.push("setPhase"),!1!==i.endGame&&B.push("endGame"),!1!==i.setActivePlayers&&B.push("setActivePlayers"),!1!==i.endStage&&B.push("endStage"),!1!==i.setStage&&B.push("setStage"),{ctx:e=>({numPlayers:e,turn:0,currentPlayer:"0",playOrder:[...Array.from({length:e})].map((e,t)=>t+""),playOrderPos:0,phase:h,activePlayers:null}),init:e=>_(e,[{fn:w}]),isPlayerActive:function(e,t,n){return t.activePlayers?n in t.activePlayers:t.currentPlayer===n},eventHandlers:R,eventNames:Object.keys(R),enabledEventNames:B,moveMap:d,moveNames:[...f.values()],processMove:function(e,t){const{playerID:n,type:r}=t,{currentPlayer:s,activePlayers:o,_activePlayersMaxMoves:a}=e.ctx,i=D(e.ctx,r,n),c=!i||"function"==typeof i||!0!==i.noLimit;let{numMoves:l,_activePlayersNumMoves:p}=e.ctx;c&&(n===s&&l++,o&&p[n]++),e=u(u({},e),{},{ctx:u(u({},e.ctx),{},{numMoves:l,_activePlayersNumMoves:p})}),a&&p[n]>=a[n]&&(e=N(e,{playerID:n,automatic:!0}));const d=b(e.ctx).turn.wrapped.onMove(u(u({},e),{},{playerID:n}));return _(e=u(u({},e),{},{G:d}),[{fn:x}])},processEvent:function(e,t){const{type:n,playerID:r,args:s}=t.payload;return"function"!=typeof R[n]?e:R[n](e,r,...Array.isArray(s)?s:[s])},getMove:D}}(e);return u(u({},e),{},{flow:t,moveNames:t.moveNames,pluginNames:e.plugins.map(e=>e.name),processMove:(n,r)=>{let s=t.getMove(n.ctx,r.type,r.playerID);if(c(s)&&(s=s.move),s instanceof Function){const t=(0,o.F)(s,o.h.MOVE,e.plugins);let a=[];return void 0!==r.args&&(a=Array.isArray(r.args)?r.args:[r.args]),t(u(u({},(0,o.j)(n)),{},{G:n.G,ctx:n.ctx,playerID:r.playerID}),...a)}return(0,o.g)(`invalid move object: ${r.type}`),n.G}})}function c(e){return e instanceof Object&&void 0!==e.move}!function(e){e.UnauthorizedAction="update/unauthorized_action",e.MatchNotFound="update/match_not_found",e.PatchFailed="update/patch_failed"}(r||(r={})),function(e){e.StaleStateId="action/stale_state_id",e.UnavailableMove="action/unavailable_move",e.InvalidMove="action/invalid_move",e.InactivePlayer="action/inactive_player",e.GameOver="action/gameover",e.ActionDisabled="action/action_disabled",e.ActionInvalid="action/action_invalid",e.PluginActionInvalid="action/plugin_invalid"}(s||(s={}));const l=e=>null!==e.payload.playerID&&void 0!==e.payload.playerID;function d(e,t){if(t.game.disableUndo)return e;const n={G:e.G,ctx:e.ctx,plugins:e.plugins,playerID:t.action.payload.playerID||e.ctx.currentPlayer};return"MAKE_MOVE"===t.action.type&&(n.moveType=t.action.payload.type),u(u({},e),{},{_undo:[...e._undo,n],_redo:[]})}function f(e,t,n){const r={action:t,_stateID:e._stateID,turn:e.ctx.turn,phase:e.ctx.phase},s=e.plugins.log.data.metadata;return void 0!==s&&(r.metadata=s),"object"==typeof n&&!0===n.redact?r.redact=!0:"object"==typeof n&&n.redact instanceof Function&&(r.redact=n.redact({G:e.G,ctx:e.ctx})),u(u({},e),{},{deltalog:[r]})}function h(e,t,n){const[r,a]=(0,o.x)(e,n);return a?[r,y(t,s.PluginActionInvalid,a)]:[r]}function v(e){if(!e)return[null,void 0];const{transients:t}=e;return[p(e,m),t]}function y(e,t,n){const r={type:t,payload:n};return u(u({},e),{},{transients:{error:r}})}t.T=e=>t=>n=>{const r=t(n);if(n.type===o.e)return r;{const[,t]=v(e.getState());return void 0!==t?(e.dispatch((0,o.y)()),u(u({},r),{},{transients:t})):r}}},5194(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.L=function(){let{bots:e,persist:t,storageKey:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return r=>{const{gameKey:s,game:o}=r;let a;const i=v.get(s);return i&&i.bots===e&&i.storageKey===n&&i.persist===t&&(a=i.master),a||(a=new f({game:o,bots:e,persist:t,storageKey:n}),v.set(s,{master:a,bots:e,persist:t,storageKey:n})),new h(u({master:a},r))}},t.S=function(){let{server:e,socketOpts:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return n=>new g(u({server:e,socketOpts:t},n))};var r=n(568),s=n(2073),o=n(7857),a=n(9710),i=function(e,t){if("function"==typeof WeakMap)var n=new WeakMap,r=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var s,o,a={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return a;if(s=t?r:n){if(s.has(e))return s.get(e);s.set(e,a)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((o=(s=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(o.get||o.set)?s(a,t,o):a[t]=e[t]);return a}(e,t)}(n(8007));class c extends r.S{constructor(){super(),this.state=new Map,this.initial=new Map,this.metadata=new Map,this.log=new Map}createMatch(e,t){this.initial.set(e,t.initialState),this.setState(e,t.initialState),this.setMetadata(e,t.metadata)}setMetadata(e,t){this.metadata.set(e,t)}setState(e,t,n){if(n&&n.length>0){const t=this.log.get(e)||[];this.log.set(e,[...t,...n])}this.state.set(e,t)}fetch(e,t){const n={};return t.state&&(n.state=this.state.get(e)),t.metadata&&(n.metadata=this.metadata.get(e)),t.log&&(n.log=this.log.get(e)||[]),t.initialState&&(n.initialState=this.initial.get(e)),n}wipe(e){this.state.delete(e),this.metadata.delete(e)}listMatches(e){return[...this.metadata.entries()].filter(t=>{let[,n]=t;if(!e)return!0;if(void 0!==e.gameName&&n.gameName!==e.gameName)return!1;if(void 0!==e.where){if(void 0!==e.where.isGameover&&void 0!==n.gameover!==e.where.isGameover)return!1;if(void 0!==e.where.updatedBefore&&n.updatedAt>=e.where.updatedBefore)return!1;if(void 0!==e.where.updatedAfter&&n.updatedAt<=e.where.updatedAfter)return!1}return!0}).map(e=>{let[t]=e;return t})}}class l extends Map{constructor(e){super(),this.key=e,(JSON.parse(localStorage.getItem(this.key))||[]).forEach(e=>this.set(...e))}sync(){const e=[...this.entries()];localStorage.setItem(this.key,JSON.stringify(e))}set(e,t){return super.set(e,t),this.sync(),this}delete(e){const t=super.delete(e);return this.sync(),t}}class d extends c{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"bgio";super();const t=t=>new l(`${e}_${t}`);this.state=t("state"),this.initial=t("initial"),this.metadata=t("metadata"),this.log=t("log")}}class f extends s.M{constructor(e){let{game:t,bots:n,storageKey:r,persist:s}=e;const o={},i={};if(t&&t.ai&&n)for(const e in n){const r=n[e];i[e]=new r({game:t,enumerate:t.ai.enumerate,seed:t.seed})}const l=e=>{let{playerID:t}=e,n=p(e,b);const r=o[t];void 0!==r&&r(f(t,n))},f=(0,a.g)(t),h={send:l,sendAll:e=>{for(const t in o)l(u({playerID:t},e))}};super(t,s?new d(r):new c,h),this.connect=(e,t)=>{o[e]=t},this.subscribe(e=>{let{state:t,matchID:r}=e;if(!n)return;const s=function(e,t){if(void 0!==e.ctx.gameover)return null;if(e.ctx.activePlayers){for(const n of Object.keys(t))if(n in e.ctx.activePlayers)return n}else if(e.ctx.currentPlayer in t)return e.ctx.currentPlayer;return null}(t,i);null!==s&&setTimeout(async()=>{const e=await i[s].play(t,s);await this.onUpdate(e.action,t._stateID,r,e.action.payload.playerID)},100)})}}class h extends o.T{constructor(e){let{master:t}=e;super(p(e,x)),this.master=t}sendChatMessage(e,t){const n=[e,t,this.credentials];this.master.onChatMessage(...n)}sendAction(e,t){this.master.onUpdate(t,e._stateID,this.matchID,this.playerID)}requestSync(){this.master.onSync(this.matchID,this.playerID,this.credentials,this.numPlayers)}connect(){this.setConnectionStatus(!0),this.master.connect(this.playerID,e=>this.notifyClient(e)),this.requestSync()}disconnect(){this.setConnectionStatus(!1)}updateMatchID(e){this.matchID=e,this.connect()}updatePlayerID(e){this.playerID=e,this.connect()}updateCredentials(e){this.credentials=e,this.connect()}}const v=new Map,y=i.default;class g extends o.T{constructor(e){let{socket:t,socketOpts:n,server:r}=e;super(p(e,_)),this.server=r,this.socket=t,this.socketOpts=n}sendAction(e,t){const n=[t,e._stateID,this.matchID,this.playerID];this.socket.emit("update",...n)}sendChatMessage(e,t){const n=[e,t,this.credentials];this.socket.emit("chat",...n)}connect(){if(!this.socket)if(this.server){let e=this.server;-1==e.search(/^https?:\/\//)&&(e="http://"+this.server),"/"!=e.slice(-1)&&(e+="/"),this.socket=y(e+this.gameName,this.socketOpts)}else this.socket=y("/"+this.gameName,this.socketOpts);this.socket.on("patch",(e,t,n,r,s)=>{this.notifyClient({type:"patch",args:[e,t,n,r,s]})}),this.socket.on("update",(e,t,n)=>{this.notifyClient({type:"update",args:[e,t,n]})}),this.socket.on("sync",(e,t)=>{this.notifyClient({type:"sync",args:[e,t]})}),this.socket.on("matchData",(e,t)=>{this.notifyClient({type:"matchData",args:[e,t]})}),this.socket.on("chat",(e,t)=>{this.notifyClient({type:"chat",args:[e,t]})}),this.socket.on("connect",()=>{this.requestSync(),this.setConnectionStatus(!0)}),this.socket.on("disconnect",()=>{this.setConnectionStatus(!1)})}disconnect(){this.socket.close(),this.socket=null,this.setConnectionStatus(!1)}requestSync(){if(this.socket){const e=[this.matchID,this.playerID,this.credentials,this.numPlayers];this.socket.emit("sync",...e)}}updateMatchID(e){this.matchID=e,this.requestSync()}updatePlayerID(e){this.playerID=e,this.requestSync()}updateCredentials(e){this.credentials=e,this.requestSync()}}},7857(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.T=void 0,t.T=class{constructor(e){let{transportDataCallback:t,gameName:n,playerID:r,matchID:s,credentials:o,numPlayers:a}=e;this.connectionStatusCallback=()=>{},this.isConnected=!1,this.transportDataCallback=t,this.gameName=n||"default",this.playerID=r||null,this.matchID=s||"default",this.credentials=o,this.numPlayers=a||2}subscribeToConnectionStatus(e){this.connectionStatusCallback=e}setConnectionStatus(e){this.isConnected=e,this.connectionStatusCallback()}notifyClient(e){this.transportDataCallback(e)}}},9896(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.G=t.F=t.E=t.C=t.B=t.A=void 0,t.I=function(e,t){let{G:n,ctx:r}=e;const{numPlayers:s}=r,o=u(u({},R(e)),{},{G:n,ctx:r}),a=t.order;let i=[...Array.from({length:s})].map((e,t)=>t+"");void 0!==a.playOrder&&(i=a.playOrder(o));const c=a.first(o),l=typeof c;"number"!==l&&T(`invalid value returned by turn.order.first — expected number got ${l} “${c}”.`);const p=L(i,c);return r=u(u({},r),{},{currentPlayer:p,playOrderPos:c,playOrder:i}),r=G(r,t.activePlayers||{}),r},t.f=t.e=t.d=t.c=t.b=t.a=t.U=t.T=t.S=t.R=t.P=t.N=t.M=void 0,t.g=T,t.h=void 0,t.i=B,t.k=t.j=void 0,t.l=G,t.m=function(e){},t.n=function(e,t,n,r){const s=n.order;let{G:o,ctx:a}=e,i=a.playOrderPos,c=!1;if(r&&!0!==r)"object"!=typeof r&&T(`invalid argument to endTurn: ${r}`),Object.keys(r).forEach(e=>{switch(e){case"remove":t=L(a.playOrder,i);break;case"next":i=a.playOrder.indexOf(r.next),t=r.next;break;default:T(`invalid argument to endTurn: ${e}`)}});else{const n=u(u({},R(e)),{},{G:o,ctx:a}),r=s.next(n),l=typeof r;void 0!==r&&"number"!==l&&T(`invalid value returned by turn.order.next — expected number or undefined got ${l} “${r}”.`),void 0===r?c=!0:(i=r,t=L(a.playOrder,i))}return a=u(u({},a),{},{playOrderPos:i,currentPlayer:t}),{endPhase:c,ctx:a}},t.o=function(e){let{activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o,_nextActivePlayers:a}=e;if(t&&0===Object.keys(t).length)if(a)e=G(e,a),({activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o}=e);else if(o.length>0){const e=o.length-1;({activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s}=o[e]),o=o.slice(0,e)}else t=null,n=null,r=null;return u(u({},e),{},{activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o})},t.z=t.y=t.x=t.w=t.v=t.u=t.t=t.s=t.r=t.q=t.p=void 0;var r=o(n(5878)),s=n(9458);function o(e){return e&&e.__esModule?e:{default:e}}o(n(9001));const a=t.M="MAKE_MOVE",i=t.G="GAME_EVENT",c=t.c="REDO",l=t.R="RESET",p=t.S="SYNC",d=t.d="UNDO",f=t.U="UPDATE",h=t.b="PATCH",v=t.t="PLUGIN",y=t.e="STRIP_TRANSIENTS",g=(e,t,n,r)=>({type:a,payload:{type:e,args:t,playerID:n,credentials:r}});t.B=g;const m=(e,t,n,r)=>({type:i,payload:{type:e,args:t,playerID:n,credentials:r}});t.q=m;const b=(e,t,n,r)=>({type:i,payload:{type:e,args:t,playerID:n,credentials:r},automatic:!0}),x=e=>({type:p,state:e.state,log:e.log,initialState:e.initialState,clientOnly:!0});t.s=x;const _=(e,t,n,r)=>({type:h,prevStateID:e,stateID:t,patch:n,deltalog:r,clientOnly:!0});t.p=_;const w=(e,t)=>({type:f,state:e,deltalog:t,clientOnly:!0});t.f=w;const P=e=>({type:l,state:e,clientOnly:!0});t.r=P;const O=(e,t)=>({type:d,payload:{type:null,args:null,playerID:e,credentials:t}});t.u=O;const k=(e,t)=>({type:c,payload:{type:null,args:null,playerID:e,credentials:t}});t.a=k;const E=()=>({type:y});t.y=E,t.A=Object.freeze({__proto__:null,makeMove:g,gameEvent:m,automaticGameEvent:b,sync:x,patch:_,update:w,reset:P,undo:O,redo:k,plugin:(e,t,n,r)=>({type:v,payload:{type:e,args:t,playerID:n,credentials:r}}),stripTransients:E});const M=t.w="INVALID_MOVE",$={name:"plugin-immer",fnWrap:e=>function(t){for(var n=arguments.length,s=new Array(n>1?n-1:0),o=1;o<n;o++)s[o-1]=arguments[o];let a=!1;const i=(0,r.default)(t.G,n=>{const r=e(u(u({},t),{},{G:n}),...s);if(r!==M)return r;a=!0});return a?M:i}};var A,j;!function(e){e.MOVE="MOVE",e.GAME_ON_END="GAME_ON_END",e.PHASE_ON_BEGIN="PHASE_ON_BEGIN",e.PHASE_ON_END="PHASE_ON_END",e.TURN_ON_BEGIN="TURN_ON_BEGIN",e.TURN_ON_MOVE="TURN_ON_MOVE",e.TURN_ON_END="TURN_ON_END"}(A||(t.h=A={})),function(e){e.CalledOutsideHook="Events must be called from moves or the `onBegin`, `onEnd`, and `onMove` hooks.\nThis error probably means you called an event from other game code, like an `endIf` trigger or one of the `turn.order` methods.",e.EndTurnInOnEnd="`endTurn` is disallowed in `onEnd` hooks — the turn is already ending.",e.MaxTurnEndings="Maximum number of turn endings exceeded for this update.\nThis likely means game code is triggering an infinite loop.",e.PhaseEventInOnEnd="`setPhase` & `endPhase` are disallowed in a phase’s `onEnd` hook — the phase is already ending.\nIf you’re trying to dynamically choose the next phase when a phase ends, use the phase’s `next` trigger.",e.StageEventInOnEnd="`setStage`, `endStage` & `setActivePlayers` are disallowed in `onEnd` hooks.",e.StageEventInPhaseBegin="`setStage`, `endStage` & `setActivePlayers` are disallowed in a phase’s `onBegin` hook.\nUse `setActivePlayers` in a `turn.onBegin` hook or declare stages with `turn.activePlayers` instead.",e.StageEventInTurnBegin="`setStage` & `endStage` are disallowed in `turn.onBegin`.\nUse `setActivePlayers` or declare stages with `turn.activePlayers` instead."}(j||(j={}));class S{constructor(e,t,n){this.flow=e,this.playerID=n,this.dispatch=[],this.initialTurn=t.turn,this.updateTurnContext(t,void 0),this.maxEndedTurnsPerAction=100*t.numPlayers}api(){var e=this;const t={_private:this};for(const n of this.flow.eventNames)t[n]=function(){for(var t=arguments.length,r=new Array(t),s=0;s<t;s++)r[s]=arguments[s];e.dispatch.push({type:n,args:r,phase:e.currentPhase,turn:e.currentTurn,calledFrom:e.currentMethod,error:new Error("Events Plugin Error")})};return t}isUsed(){return this.dispatch.length>0}updateTurnContext(e,t){this.currentPhase=e.phase,this.currentTurn=e.turn,this.currentMethod=t}unsetCurrentMethod(){this.currentMethod=void 0}update(e){const t=e,n=(e,n)=>{let{stack:r}=e;return u(u({},t),{},{plugins:u(u({},t.plugins),{},{events:u(u({},t.plugins.events),{},{data:{error:n+"\n"+r}})})})};e:for(let t=0;t<this.dispatch.length;t++){const r=this.dispatch[t],s=r.turn!==e.ctx.turn;if(this.currentTurn-this.initialTurn>=this.maxEndedTurnsPerAction)return n(r.error,j.MaxTurnEndings);if(void 0===r.calledFrom)return n(r.error,j.CalledOutsideHook);if(e.ctx.gameover)break e;switch(r.type){case"endStage":case"setStage":case"setActivePlayers":switch(r.calledFrom){case A.TURN_ON_END:case A.PHASE_ON_END:return n(r.error,j.StageEventInOnEnd);case A.PHASE_ON_BEGIN:return n(r.error,j.StageEventInPhaseBegin);case A.TURN_ON_BEGIN:if("setActivePlayers"===r.type)break;return n(r.error,j.StageEventInTurnBegin)}if(s)continue e;break;case"endTurn":if(r.calledFrom===A.TURN_ON_END||r.calledFrom===A.PHASE_ON_END)return n(r.error,j.EndTurnInOnEnd);if(s)continue e;break;case"endPhase":case"setPhase":if(r.calledFrom===A.PHASE_ON_END)return n(r.error,j.PhaseEventInOnEnd);if(r.phase!==e.ctx.phase)continue e}const o=b(r.type,r.args,this.playerID);e=this.flow.processEvent(e,o)}return e}}const I={name:"events",noClient:e=>{let{api:t}=e;return t._private.isUsed()},isInvalid:e=>{let{data:t}=e;return t.error||!1},fnWrap:(e,t)=>function(n){const r=n.events;r&&r._private.updateTurnContext(n.ctx,t);for(var s=arguments.length,o=new Array(s>1?s-1:0),a=1;a<s;a++)o[a-1]=arguments[a];const i=e(n,...o);return r&&r._private.unsetCurrentMethod(),i},dangerouslyFlushRawState:e=>{let{state:t,api:n}=e;return n._private.update(t)},api:e=>{let{game:t,ctx:n,playerID:r}=e;return new S(t.flow,n,r).api()}},C={name:"plugin-serializable",fnWrap:e=>function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];return e(t,...r)}};function T(e){!function(){console.error(...arguments)}("ERROR:",e)}const N=[$,s.R,{name:"log",flush:()=>({}),api:e=>{let{data:t}=e;return{setMetadata:e=>{t.metadata=e}}},setup:()=>({})},C],D=[...N,I];t.v=(e,t,n)=>(n.game.plugins.filter(e=>void 0!==e.action).filter(e=>e.name===t.payload.type).forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}},o=n.action(s.data,t.payload);e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[r]:u(u({},s),{},{data:o})})})}),e);const R=e=>{let{plugins:t}=e;return Object.entries(t||{}).reduce((e,t)=>{let[n,{api:r}]=t;return e[n]=r,e},{})};function B(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e.moveLimit&&(t&&(e.minMoves=e.moveLimit),e.maxMoves=e.moveLimit,delete e.moveLimit)}function G(e,t){let n={},r=[],s=null,o={},a={};if(Array.isArray(t)){const e={};t.forEach(t=>e[t]=U.NULL),n=e}else{if(B(t),t.next&&(s=t.next),t.revert&&(r=[...e._prevActivePlayers,{activePlayers:e.activePlayers,_activePlayersMinMoves:e._activePlayersMinMoves,_activePlayersMaxMoves:e._activePlayersMaxMoves,_activePlayersNumMoves:e._activePlayersNumMoves}]),void 0!==t.currentPlayer&&F(n,o,a,e.currentPlayer,t.currentPlayer),void 0!==t.others)for(let r=0;r<e.playOrder.length;r++){const s=e.playOrder[r];s!==e.currentPlayer&&F(n,o,a,s,t.others)}if(void 0!==t.all)for(let r=0;r<e.playOrder.length;r++)F(n,o,a,e.playOrder[r],t.all);if(t.value)for(const e in t.value)F(n,o,a,e,t.value[e]);if(t.minMoves)for(const e in n)void 0===o[e]&&(o[e]=t.minMoves);if(t.maxMoves)for(const e in n)void 0===a[e]&&(a[e]=t.maxMoves)}0===Object.keys(n).length&&(n=null),0===Object.keys(o).length&&(o=null),0===Object.keys(a).length&&(a=null);const i={};for(const e in n)i[e]=0;return u(u({},e),{},{activePlayers:n,_activePlayersMinMoves:o,_activePlayersMaxMoves:a,_activePlayersNumMoves:i,_prevActivePlayers:r,_nextActivePlayers:s})}function F(e,t,n,r,s){"object"==typeof s&&s!==U.NULL||(s={stage:s}),void 0!==s.stage&&(B(s),e[r]=s.stage,s.minMoves&&(t[r]=s.minMoves),s.maxMoves&&(n[r]=s.maxMoves))}function L(e,t){return e[t]+""}t.j=R,t.F=(e,t,n)=>[...N,...n,I].filter(e=>void 0!==e.fnWrap).reduce((e,n)=>{let{fnWrap:r}=n;return r(e,t)},e),t.z=(e,t)=>([...D,...t.game.plugins].filter(e=>void 0!==e.setup).forEach(n=>{const r=n.name,s=n.setup({G:e.G,ctx:e.ctx,game:t.game});e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[r]:{data:s}})})}),e),t.E=(e,t)=>([...D,...t.game.plugins].filter(e=>void 0!==e.api).forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}},o=n.api({G:e.G,ctx:e.ctx,data:s.data,game:t.game,playerID:t.playerID});e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[r]:u(u({},s),{},{api:o})})})}),e),t.N=(e,t)=>[...D,...t.game.plugins].filter(e=>void 0!==e.noClient).map(n=>{const r=n.name,s=e.plugins[r];return!!s&&n.noClient({G:e.G,ctx:e.ctx,game:t.game,api:s.api,data:s.data})}).includes(!0),t.x=(e,t)=>{const n=((e,t)=>([...N,...t.game.plugins,I].reverse().forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}};if(n.flush){const r=n.flush({G:e.G,ctx:e.ctx,game:t.game,api:s.api,data:s.data});e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[n.name]:{data:r}})})}else if(n.dangerouslyFlushRawState){const o=(e=n.dangerouslyFlushRawState({state:e,game:t.game,api:s.api,data:s.data})).plugins[r].data;e=u(u({},e),{},{plugins:u(u({},e.plugins),{},{[n.name]:{data:o}})})}}),e))(e,t),r=((e,t)=>{const n=[...D,...t.game.plugins].filter(e=>void 0!==e.isInvalid).map(n=>{const{name:r}=n,s=e.plugins[r],o=n.isInvalid({G:e.G,ctx:e.ctx,game:t.game,data:s&&s.data});return!!o&&{plugin:r,message:o}}).find(e=>e);return n||!1})(n,t);if(!r)return[n];const{plugin:s,message:o}=r;return T(`${s} plugin declared action invalid:\n${o}`),[e,r]},t.P=(e,t)=>{let{G:n,ctx:r,plugins:s={}}=e,{game:o,playerID:a}=t;return[...D,...o.plugins].forEach(e=>{let{name:t,playerView:i}=e;if(!i)return;const{data:c}=s[t]||{data:{}},l=i({G:n,ctx:r,game:o,data:c,playerID:a});s=u(u({},s),{},{[t]:{data:l}})}),s},t.T={DEFAULT:{first:e=>{let{ctx:t}=e;return 0===t.turn?t.playOrderPos:(t.playOrderPos+1)%t.playOrder.length},next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},RESET:{first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},CONTINUE:{first:e=>{let{ctx:t}=e;return t.playOrderPos},next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},ONCE:{first:()=>0,next:e=>{let{ctx:t}=e;if(t.playOrderPos<t.playOrder.length-1)return t.playOrderPos+1}},CUSTOM:e=>({playOrder:()=>e,first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}}),CUSTOM_FROM:e=>({playOrder:t=>{let{G:n}=t;return n[e]},first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}})};const U=t.k={NULL:null};t.C={ALL:{all:U.NULL},ALL_ONCE:{all:U.NULL,minMoves:1,maxMoves:1},OTHERS:{others:U.NULL},OTHERS_ONCE:{others:U.NULL,minMoves:1,maxMoves:1}}},568(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.c=t.S=t.A=void 0,t.i=function(e){return e.type()===r.SYNC};var r,s=n(8630);!function(e){e[e.SYNC=0]="SYNC",e[e.ASYNC=1]="ASYNC"}(r||(r={})),t.A=class{type(){return r.ASYNC}async createMatch(e,t){if(this.createGame)return console.warn("The database connector does not implement a createMatch method.","\nUsing the deprecated createGame method instead."),this.createGame(e,t);console.error("The database connector does not implement a createMatch method.")}async listMatches(e){if(this.listGames)return console.warn("The database connector does not implement a listMatches method.","\nUsing the deprecated listGames method instead."),this.listGames(e);console.error("The database connector does not implement a listMatches method.")}},t.S=class{type(){return r.SYNC}connect(){}createMatch(e,t){if(this.createGame)return console.warn("The database connector does not implement a createMatch method.","\nUsing the deprecated createGame method instead."),this.createGame(e,t);console.error("The database connector does not implement a createMatch method.")}listMatches(e){if(this.listGames)return console.warn("The database connector does not implement a listMatches method.","\nUsing the deprecated listGames method instead."),this.listGames(e);console.error("The database connector does not implement a listMatches method.")}},t.c=e=>{let{game:t,numPlayers:n,setupData:r,unlisted:o}=e;n&&"number"==typeof n||(n=2);const a=t.validateSetupData&&t.validateSetupData(r,n);if(void 0!==a)return{setupDataError:a};const i=(e=>{let{game:t,unlisted:n,setupData:r,numPlayers:s}=e;const o={gameName:t.name,unlisted:!!n,players:{},createdAt:Date.now(),updatedAt:Date.now()};void 0!==r&&(o.setupData=r);for(let e=0;e<s;e++)o.players[e]={id:e};return o})({game:t,numPlayers:n,setupData:r,unlisted:o});return{metadata:i,initialState:(0,s.I)({game:t,numPlayers:n,setupData:r})}}},4245(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.Client=void 0;var r=n(4688),s=n(504),o=n(9843),a=n(7627),i=g(n(4913)),c=n(3883),l=g(n(3276)),p=g(n(4171)),d=g(n(7208)),f=g(n(7611)),h=g(n(380)),v=g(n(2146)),y=g(n(9965));function g(e){return e&&e.__esModule?e:{default:e}}t.Client=class{constructor(e){this.options=e,this.game=e.boardgameIOGame||(0,i.default)(JSON.parse(e.gameRules),e.gameName),e.boardgameIOGame||(this.moveBuilder={targets:[],stepIndex:0,eliminatedMoves:[]},this.optimisticWinner=null)}connect(){const{server:e,numPlayers:t,debug:n={collapseOnLoad:!0,impl:s.Debug},gameId:a,boardgamePlayerID:i,clientToken:c,singlePlayer:l=!c}=this.options;try{const s=l?{game:this.game,numPlayers:t,debug:n}:{game:this.game,multiplayer:(0,o.SocketIO)({server:e,socketOpts:{transports:["websocket","polling"]}}),matchID:a,playerID:i,credentials:c,debug:n};return this.client=(0,r.Client)(s),this.client.subscribe(()=>this.update()),this.client.start(),this}catch(e){console.error("Failed to join game:",e)}}update(){this.options.onClientUpdate?.()}getState(){const e=this.client?.getState();if(!e)return{};if(this.options.boardgameIOGame)return{state:e,gameover:e?.ctx?.gameover,moves:this.client.moves};const t=u(u({},e),{},{G:(0,a.deserialize)(JSON.stringify(e.G),c.registry),originalG:e.G}),n=t?.ctx?.gameover,r=n?[]:Object.entries((0,p.default)(t,this.client)).reduce((e,t)=>{let[n,r]=t;const s=e=>{this.client.moves[n]((0,h.default)(e))};return s.moveInstance=r.moveInstance,u(u({},e),{},{[n]:s})},{}),s=function(e,t,n){const{eliminatedMoves:r,stepIndex:s}=n,o={},a=new Set;return Object.entries(t).filter(e=>{let[t]=e;return!r.includes(t)}).forEach(t=>{let[r,i]=t;const c=(0,d.default)(e,u(u({},i.moveInstance.rule),{},{moveName:r})),l={moveInstance:i.moveInstance,moveArguments:c.arguments},p=n.targets.map(t=>t.abstract?t:e.G.bank.locate(t.entityId)),h=(0,y.default)(e,c,p,l);l.moveArguments=u(u({},l.moveArguments),h.arguments);const g=(0,f.default)(e,c,{},l).conditionsAreMet,m=(0,v.default)(e,c),b=new Set(g&&m?.[s]?.getClickable(l)||[]);o[r]={clickableForMove:b},b.forEach(e=>a.add(e))}),{possibleMoveMeta:o,allClickable:a}}(t,r,this.moveBuilder);return{state:t,gameover:n,moves:r,allClickable:s.allClickable,possibleMoveMeta:s.possibleMoveMeta}}doStep(e){if(this.options.boardgameIOGame)return;const{state:t,moves:n,possibleMoveMeta:r}=this.getState(),s=e.abstract?e:t.G.bank.locate(e.entityId),o=Object.entries(r).filter(e=>{let[t,n]=e;return!function(e,t){return t.abstract?[...e].some(e=>e.abstract&&e.value===t.value):e.has(t)}(n.clickableForMove,s)}).map(e=>{let[t]=e;return t}).concat(this.moveBuilder.eliminatedMoves);if(o.length===Object.keys(n).length)return void console.error("invalid move with target:",s?.rule);const i=Object.entries(r).filter(e=>{let[t]=e;return!o.includes(t)});if(function(e,t,n,r){return 1===n.length&&(0,v.default)(e,t[n[0][0]].moveInstance.rule).length===r+1}(t,n,i,this.moveBuilder.stepIndex)){const[e]=i[0],r=n[e],o=(0,y.default)(t,r.moveInstance.rule,[...this.moveBuilder.targets,s],{moveInstance:r.moveInstance});this.optimisticWinner=function(e,t,n,r){const s=(0,l.default)(e,(0,h.default)(r),{moveInstance:n});return t.endIf?.(u(u({},e),{},{G:JSON.parse((0,a.serialize)(s))}))}(t,this.game,r.moveInstance,o),r(o),this.moveBuilder={targets:[],stepIndex:0,eliminatedMoves:[]}}else this.moveBuilder={eliminatedMoves:o,stepIndex:this.moveBuilder.stepIndex+1,targets:[...this.moveBuilder.targets,s]};this.update()}reset(){this.options.boardgameIOGame||(this.moveBuilder={targets:[],stepIndex:0,eliminatedMoves:[]},this.optimisticWinner=null,this.update())}undoStep(){this.options.boardgameIOGame||(this.moveBuilder.targets.length&&(this.moveBuilder={targets:this.moveBuilder.targets.slice(0,-1),stepIndex:Math.max(0,this.moveBuilder.stepIndex-1),eliminatedMoves:[]}),this.update())}}},784(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(7208))&&r.__esModule?r:{default:r};t.default=class{constructor(e,t){this.bank=t,this.rule=e,this.pool=[],this.remaining=+e.count||1}getOne(e,t,n){return this.getMultiple(e,1,t,n)[0]}getMultiple(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1/0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;const o=[];if(this.remaining===1/0&&t===1/0)throw new Error(`Cannot get infinite pieces from slot with infinite remaining: ${this.rule.name}`);if(t!==1/0&&t>this.remaining)throw new Error(`Requested ${t} pieces but only ${this.remaining} available in slot: ${this.rule.name}`);const a=t===1/0?this.remaining:t;this.remaining!==1/0&&(this.remaining-=a);const i=Math.min(a,this.pool.length);o.push(...this.pool.splice(0,i));const c=a-i;if(c>0&&o.push(...Array.from(new Array(c)).map(()=>this.bank.createEntity(this.rule))),n.state){const t=(0,s.default)(e,n.state,r);o.forEach(e=>{e.state=u(u({},e.state),t)})}return o}returnToBank(e){e.rule.state?e.state=e.rule.state:delete e.state,void 0!==this.remaining&&(this.remaining+=1),this.pool.push(e)}},e.exports=t.default},6103(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=c(n(7309)),s=c(n(7612)),o=c(n(7611)),a=n(3883),i=c(n(784));function c(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){this.currentEntityId=0,this.tracker={},this.slots=e.map(e=>new i.default(e,this))}createEntity(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;const n=new a.registry[e.type||"Entity"](u({bank:this,fromBank:!0},t),e,this.currentEntityId++);return this.track(n),n}track(e){this.tracker[e.entityId]=e}locate(e){return this.tracker[e]}findAll(e,t,n){if(!t.conditions)throw new Error(`Cannot find entity with no conditions. Rule: ${JSON.stringify(t)}`);return(0,s.default)(Object.values(this.tracker),r=>(0,o.default)(e,t,{target:r},n).conditionsAreMet)}findOne(e,t,n){return this.findAll(e,t,n)[0]}find(e,t,n){return t.matchMultiple?this.findAll(e,t,n):this.findOne(e,t,n)}findParent(e){return(0,r.default)(this.tracker,t=>t.entities?.includes(e)||t.spaces?.includes(e))}getOne(e,t,n){const r=this.getSlot(e,t,n);return r||console.error(`No matching slot for ${JSON.stringify(t)}`),r.getOne(e,{state:t.state},n)}getMultiple(e,t,n,r){const s=this.getSlots(e,t,r);return s.length||console.error(`No matching slots for ${JSON.stringify(t)}`),s.reduce((r,s)=>[...r,...s.getMultiple(e,n,{state:t.state})],[])}getSlot(e,t,n){return this.slots.find(r=>(0,o.default)(e,t,{target:r},n).conditionsAreMet)}getSlots(e,t,n){return this.slots.filter(r=>(0,o.default)(e,t,{target:r},n).conditionsAreMet)}returnToBank(e,t){this.findParent(t).remove(t),this.getSlot(e,t.rule).returnToBank(t),delete this.tracker[t.entityId]}},e.exports=t.default},2606(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(1325))&&r.__esModule?r:{default:r};class o extends s.default{}t.default=o,e.exports=t.default},2130(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"Is"===e.conditionType?new r.default(e):"Not"===e.conditionType?new s.default(e):"Or"===e.conditionType?new o.default(e):"Some"===e.conditionType?new a.default(e):"Contains"===e.conditionType?new c.default(e):"ContainsSame"===e.conditionType?new l.default(e):"Every"===e.conditionType?new i.default(e):"InLine"===e.conditionType?new u.default(e):"HasLine"===e.conditionType?new p.default(e):"IsFull"===e.conditionType?new d.default(e):"Would"===e.conditionType?new f.default(e):"NoPossibleMoves"===e.conditionType?new h.default(e):"Evaluate"===e.conditionType?new v.default(e):"Position"===e.conditionType?new y.default(e):void 0};var r=g(n(7350)),s=g(n(8801)),o=g(n(9299)),a=g(n(218)),i=g(n(5163)),c=g(n(7823)),l=g(n(3546)),u=g(n(4372)),p=g(n(1839)),d=g(n(7278)),f=g(n(441)),h=g(n(2726)),v=g(n(8401)),y=g(n(6017));function g(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default},4881(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(7208))&&r.__esModule?r:{default:r};t.default=class{constructor(e){this.rule=e}check(e,t,n){const r=u({},t),o=u({},n);r.target&&(o.originalTarget=r.target);const a=(0,s.default)(e,this.rule,o);return void 0!==a.target&&(r.target=a.target),void 0===this.rule.target||r.target?this.checkCondition(e,a,r,o):{conditionIsMet:!1}}isMet(){return this.check(...arguments).conditionIsMet}},e.exports=t.default},7823(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,o(n(1505));var r=o(n(4881)),s=o(n(7611));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){const{target:o}=n;if(o){const n=o.entities??o.spaces,a=n?.filter(n=>(0,s.default)(e,t,{target:n},r).conditionsAreMet)??[];return{matches:a,conditionIsMet:!!a.length}}return{matches:[],conditionIsMet:!1}}}t.default=a,e.exports=t.default},3546(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4383)),s=a(n(2130)),o=a(n(4881));function a(e){return e&&e.__esModule?e:{default:e}}class i extends o.default{checkCondition(e,t,n){let{targets:o}=n;if(1===o.length&&o[0].entities?.length)return{conditionIsMet:!0};const[a,...i]=o;return{conditionIsMet:a.entities.some(n=>{const o=(0,s.default)({conditionType:"Contains",conditions:[{conditionType:"Is",matcher:(0,r.default)(n.rule,t.properties)}]});return i.every(t=>o.isMet(e,{target:t}))})}}}t.default=i,e.exports=t.default},8401(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,o(n(1505));var r=o(n(4881)),s=o(n(8123));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){const o=u({},r);n?.target&&(o.target=n.target);const a=(0,s.default)(e,t,o);return{result:a,conditionIsMet:!!a}}}t.default=a,e.exports=t.default},5163(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(7611));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){let{target:o}=n;const a=o.map(n=>{const o=u(u({},r),{},{loopTarget:n});return(0,s.default)(e,t,void 0,o)});return{conditionIsMet:a.every(e=>e.conditionsAreMet),results:a}}}t.default=a,e.exports=t.default},1839(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(1138));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){const{matches:o}=(0,s.default)(e,n.target,t.sequence,r);return{matches:o,conditionIsMet:!!o.length}}}t.default=a,e.exports=t.default},4372(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(1138));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){const{G:o}=e,{target:a}=n,i=o.bank.findParent(n.target),{matches:c}=(0,s.default)(e,i,t.sequence,r),l=c.filter(e=>e.some(e=>e===a));return{matches:l,conditionIsMet:!!l.length}}}t.default=a,e.exports=t.default},7350(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(6413));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){let{target:o}=n;return this.rule.entity&&o!==t.entity?{target:o,conditionIsMet:!1}:{target:o,conditionIsMet:(0,s.default)(e,t.matcher,o,r)}}}t.default=a,e.exports=t.default},7278(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(4881))&&r.__esModule?r:{default:r};class o extends s.default{checkCondition(e,t,n,r){return{conditionIsMet:n.target.spaces.every(e=>e.entities.length)}}}t.default=o,e.exports=t.default},2726(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4881)),s=a(n(3538)),o=a(n(4171));function a(e){return e&&e.__esModule?e:{default:e}}class i extends r.default{checkCondition(e,t,n,r){return{conditionIsMet:!(0,s.default)(e,(0,o.default)(e,r))}}}t.default=i,e.exports=t.default},8801(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(7611));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){return{conditionIsMet:!(0,s.default)(e,t,n,r).conditionsAreMet}}}t.default=a,e.exports=t.default},9299(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(2742));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){return{conditionIsMet:!!(0,s.default)(e,t,n,r)}}}t.default=a,e.exports=t.default},6017(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(4881))&&r.__esModule?r:{default:r};class o extends s.default{checkCondition(e,t,n){let{target:r}=n;const s=e.G.bank.findParent(r);let o;return"First"===t.position&&(o=0===s.entities.indexOf(r)),{conditionIsMet:o}}}t.default=o,e.exports=t.default},218(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(7611));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){let{target:o}=n;const a=o.find(n=>{const o=u(u({},r),{},{loopTarget:n});return(0,s.default)(e,t,void 0,o).conditionsAreMet});return{conditionIsMet:!!a,result:a}}}t.default=a,e.exports=t.default},441(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4881)),s=a(n(7611)),o=a(n(3276));function a(e){return e&&e.__esModule?e:{default:e}}const i={PlaceNew:["destination"],RemoveEntity:["entity"],MoveEntity:["entity","destination"],TakeFrom:["source","destination"],SetState:["entity","state"]};class c extends r.default{checkCondition(e,t,n,r){let{target:a,targets:c=[a]}=n;const p={arguments:c.reduce((e,t,n)=>u(u({},e),{},{[i[r.moveInstance.rule.type][n]]:t}),{})},d=(0,o.default)(e,p,r);let f={};a?f={target:d.bank.locate(a.entityId)}:c&&(f={targets:c.map(e=>d.bank.locate(e.entityId))});const h=(0,s.default)(u(u({},e),{},{G:d}),t,f,r),v=h.conditionsAreMet;return{results:v?l(h.results,t=>e.G.bank.locate(t)):h.results,conditionIsMet:v}}}function l(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new WeakSet;if("object"!=typeof e||null===e)return e;if(n.has(e))return e;if(n.add(e),void 0!==e.entityId)return t(e.entityId);if(Array.isArray(e))return e.map(e=>l(e,t,n));{const r={};for(const s in e)e.hasOwnProperty(s)&&(r[s]=l(e[s],t,n));return r}}t.default=c,e.exports=t.default},4511(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=class{constructor(e,t,n){if(!e?.fromBank)throw new Error(`Do not create entities directly. Go through the Bank. rule: ${JSON.stringify(t)}`);this.rule=t,this.entityId=n,this.state={},this.rule.stateGroups&&Object.entries(this.rule.stateGroups).forEach(t=>{let[n,r]=t;const s=e?.initialStateGroups?.[n]??Object.keys(r)[0];Object.assign(this.state,r[s])}),this.rule.state&&Object.assign(this.state,this.rule.state)}get attributes(){return u(u(u({},this.rule),this),this.state)}},e.exports=t.default},6677(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,s.default)(e,d);return t.sharedBoard||(t.sharedBoard=t.entities),t.turn||(t.turn={minMoves:1,maxMoves:1}),function(e){e.entities=[...a,...e.entities||[]]}(t),i(t,t.entities),t.phases&&Object.entries(t.phases).forEach(e=>{i(e,t.entities)}),e.numPlayers&&(e.minPlayers=e.maxPlayers=e.numPlayers),t},o(n(8055));var r=o(n(7309)),s=o(n(6730));function o(e){return e&&e.__esModule?e:{default:e}}const a=[{type:"Space",count:"Infinity"},{type:"Board",name:"sharedBoard"},{name:"playerMarker",perPlayer:!0,count:"Infinity"}];function i(e,t){if(e.sharedBoard){const t=e.sharedBoard.map(e=>({entity:e,destination:{name:"sharedBoard"}}));e.initialPlacements||(e.initialPlacements=[]),e.initialPlacements.unshift(...t)}if(e.personalBoard){t.push({type:"Board",name:"personalBoard",perPlayer:!0});const n=e.personalBoard.map(e=>({entity:e,destination:{name:"personalBoard"}}));e.initialPlacements||(e.initialPlacements=[]),e.initialPlacements.unshift(...n)}if(e.initialPlacements){const n=e.initialPlacements.map(e=>{const n=e.entity,{state:s}=n,o=p(n,w),a=(0,r.default)(t,o);return"personalBoard"===e.destination.name?{type:"ForEach",arguments:{targets:{type:"ctxPath",path:["playOrder"]}},move:{type:"PlaceNew",entity:{state:s,conditions:[{conditionType:"Is",matcher:u(u({},o),a.perPlayer?{player:{type:"contextPath",path:["loopTarget"]}}:{})}]},arguments:{destination:{conditions:[{conditionType:"Is",matcher:u(u({},e.destination),{},{player:{type:"contextPath",path:["loopTarget"]}})}]}}}}:{type:"PlaceNew",entity:{state:s,conditions:[{conditionType:"Is",matcher:o}]},arguments:{destination:{conditions:[{conditionType:"Is",matcher:e.destination}]}}}});e.initialMoves||(e.initialMoves=[]),e.initialMoves.unshift(...n),delete e.initialPlacements}}const c=[["thatMatches","conditions"],["entityType","type"],["moveType","type"],["endConditions","endIf"]],l=[["isCurrentPlayer",{conditionType:"Is",matcher:{player:{type:"ctxPath",path:["currentPlayer"]}}}],["isEmpty",{conditionType:"Not",conditions:[{conditionType:"Contains"}]}],["ownerOfFirstResultEntity",{type:"contextPath",path:["results",0,"matches",0,0,"entities",0,"attributes","player"]}]],d=[{test:e=>e&&"object"==typeof e,replace:e=>(c.forEach(t=>{let[n,r]=t;e.hasOwnProperty(n)&&(e[r]=e[n],delete e[n])}),e)},{test:e=>"string"==typeof e,replace:e=>{for(let t=0,n=l.length;t<n;t++)if(e===l[t][0])return l[t][1];return e}},{test:e=>e?.conditions,replace:e=>(Array.isArray(e.conditions)||(e.conditions=[e.conditions]),e)},{test:e=>e?.conditions,replace:e=>{for(let t=0,n=e.conditions.length;t<n;t++)e.conditions[t].conditionType||(e.conditions[t]={conditionType:"Is",matcher:e.conditions[t]});return e}},{test:e=>"string"==typeof e?.target,replace:e=>u(u({},e),{},{target:{conditions:[{conditionType:"Is",matcher:{name:e.target}}]}})}];e.exports=t.default},4913(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n={name:t},c=(0,a.default)(e);return n.setup=e=>{const{ctx:t}=e,a={_meta:{passedPlayers:[],previousPayloads:{}}},i=function(e,t){return e.reduce((e,n)=>{const r=u({},n);if(r.perPlayer&&(delete r.perPlayer,r.variants?r.variants=new Array(t.numPlayers).fill().reduce((e,t,n)=>[...e,...r.variants.map(e=>u(u({},e),{},{player:`${n}`}))],[]):r.variants=new Array(t.numPlayers).fill().map((e,t)=>({player:`${t}`}))),r.variants){const t=r.variants;return delete r.variants,[...e,...t.map(e=>u(u({},r),e))]}return[...e,r]},[])}(c.entities,t);return a.bank=new o.default(i),a.sharedBoard=a.bank.getOne(e,{conditions:[{conditionType:"Is",matcher:{name:"sharedBoard"}}]}),c.personalBoard&&(a.personalBoards=e.ctx.playOrder.map(t=>a.bank.getOne(e,{conditions:[{conditionType:"Is",matcher:{name:"personalBoard",player:t}}]}))),c.initialMoves?.forEach(t=>{(0,s.default)(t,n).moveInstance.doMove(u(u({},e),{},{G:a}))}),JSON.parse((0,r.serialize)(a))},c.moves&&(n.moves=h(c.moves,n)),c.turn&&(n.turn=d(c.turn,n)),c.phases&&(n.phases=Object.entries(c.phases).reduce((e,t)=>{let[r,s]=t;return u(u({},e),{},{[r]:f(s,n)})},{})),c.endIf&&(n.endIf=e=>{const t=(0,l.default)(e);return(0,i.default)(t,c.endIf)}),e.DEBUG_DISABLE_SECRET_STATE||(n.playerView=e=>{const{G:t,playerID:n}=(0,l.default)(e);return Object.values(t.bank.tracker).forEach(e=>{"All"!==e.rule.contentsHiddenFrom&&("Others"!==e.rule.contentsHiddenFrom||n===e.rule.player&&null!=n)||(e.spaces&&(e.spaces=e.rule.hideLength?[]:e.spaces.map(()=>t.bank.createEntity())),e.entities&&(e.entities=e.rule.hideLength?[]:e.entities.map(()=>t.bank.createEntity())))}),JSON.parse((0,r.serialize)(t))}),n};var r=n(7627),s=p(n(510)),o=p(n(6103)),a=p(n(6677)),i=p(n(236)),c=p(n(2796)),l=p(n(3358));function p(e){return e&&e.__esModule?e:{default:e}}function d(e,t){const n=u({},e);return n.onBegin=n=>{const s=(0,l.default)(n),o=e.stages?.[s.ctx.activePlayers?.[s.ctx.currentPlayer]];return s.G._meta.passedPlayers=s.G._meta.passedPlayers.filter(e=>e!==s.ctx.currentPlayer),(0,c.default)(s,e.initialMoves,{game:t}),(0,c.default)(s,o?.initialMoves,{game:t}),JSON.parse((0,r.serialize)(s.G))},e.stages&&Object.entries(e.stages).forEach(e=>{let[r,s]=e;s.moves&&(n.stages[r].moves=h(s.moves,t))}),"RotateFirst"===e.order?.playOrder&&(e.order.first=()=>0,e.order.next=e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.numPlayers},n.order.playOrder=e=>{let{ctx:t,G:n}=e;return n._meta.isAfterFirstPhase?[...t.playOrder.slice(1),t.playOrder[0]]:t.playOrder}),n}function f(e,t){const n=u({},e);return e.turn&&(n.turn=d(e.turn,t)),e.moves&&(n.moves=h(e.moves,t)),n.onBegin=n=>{const s=(0,l.default)(n);return(0,c.default)(s,e.initialMoves,{game:t}),s.G._meta.currentPhaseHasBeenSetUp=!0,s.G._meta.nextPhase=e.next,JSON.parse((0,r.serialize)(s.G))},e.endIf&&(n.endIf=t=>{const n=(0,l.default)(t);if(n.G._meta.currentPhaseHasBeenSetUp){const t=(0,i.default)(n,e.endIf);if(t)return t}}),n.onEnd=e=>{let{G:t}=e;t._meta.currentPhaseHasBeenSetUp=!1,t._meta.isAfterFirstPhase=!0},n}function h(e,t){return Object.entries(e).reduce((e,n)=>{let[r,o]=n;return u(u({},e),{},{[r]:(0,s.default)(u(u({},o),{},{name:r}),t)})},{})}e.exports=t.default},8243(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e){e.events.endTurn()}}t.default=o,e.exports=t.default},3459(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r},o=n(510);class a extends s.default{do(e,t,n,r){let{arguments:{targets:s}}=n;s.forEach(n=>{const s=u(u({},r),{},{loopTarget:n});(0,o.getMoveInstance)(t.move).doMove(e,void 0,s)})}}t.default=a,e.exports=t.default},5885(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{entity:r,destination:s}}=n;Array.isArray(r)?r.forEach(n=>{e.G.bank.findParent(n)?.remove(n),s.placeEntity(n,t.position)}):(e.G.bank.findParent(r)?.remove(r),s.placeEntity(r,t.position))}}t.default=o,e.exports=t.default},510(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=x(e),i=function(i,c){const l=(0,a.default)(i),{G:p}=l,d=function(e,t){if(e){const n=(0,r.deserialize)(JSON.stringify(e),o.registry);return n.arguments=Object.entries(n.arguments).reduce((e,n)=>{let[r,s]=n;return u(u({},e),{},{[r]:"number"==typeof s?t.bank.locate(s):s})},{}),n}return e}(c,p),f={moveInstance:n,game:t},h=n.doMove(l,d,f);if(f.moveConditionResults=[h],h!==s.INVALID_MOVE&&e.then)for(let t of e.then){const e=x(t).doMove(l,{},u({},f));f.moveConditionResults.push(e)}return JSON.parse((0,r.serialize)(p))};return i.moveInstance=n,i},t.getMoveInstance=x;var r=n(7627),s=n(4039),o=n(3883),a=b(n(3358)),i=b(n(5885)),c=b(n(2414)),l=b(n(6642)),p=b(n(4888)),d=b(n(9421)),f=b(n(2790)),h=b(n(8243)),v=b(n(3409)),y=b(n(3459)),g=b(n(5953)),m=b(n(2763));function b(e){return e&&e.__esModule?e:{default:e}}function x(e){switch(e.type){case"MoveEntity":return new i.default(e);case"PlaceNew":return new l.default(e);case"RemoveEntity":return new c.default(e);case"TakeFrom":return new p.default(e);case"SetState":return new d.default(e);case"ForEach":return new y.default(e);case"Pass":return new g.default(e);case"Shuffle":return new m.default(e);case"SetActivePlayers":return new f.default(e);case"EndTurn":return new h.default(e);case"PassTurn":return new v.default(e)}}},6973(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(4039),s=a(n(7611)),o=a(n(7208));function a(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){this.rule=this.transformRule(e)}checkValidity(e,t,n){const r=Object.entries(this.rule.arguments??{});if(!r.every(e=>{let[n]=e;const r=t.arguments[n];return void 0!==r&&(!Array.isArray(r)||r.length)}))return!1;const o={};for(let a=0,i=r.length;a<i;a++){const[i,c]=r[a],l=t.arguments[i],p=Array.isArray(l)?l:[l],d=[];for(let r=0,o=p.length;r<o;r++){const o=p[r],a=(0,s.default)(e,c,{target:o},u(u({},n),{},{moveArguments:t.arguments}));if(d.push(a),!a.conditionsAreMet)break}const f=d.at(-1).conditionsAreMet;if(o[i]={results:d,conditionsAreMet:f},!f)break}const a=(0,s.default)(e,{conditions:this.rule.conditions},void 0,u(u({},n),{},{moveArguments:t.arguments}));return{argumentResults:o,moveResults:a,conditionsAreMet:a.conditionsAreMet&&Object.values(o).every(e=>e.conditionsAreMet)}}isValid(e,t,n){return this.checkValidity(e,t,n).conditionsAreMet}doMove(e,t,n){let{skipCheck:s=!1}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const a=(0,o.default)(e,this.rule,n),i=u(u({},t),{},{arguments:Object.entries(a.arguments??{}).reduce((e,n)=>{let[r,s]=n;return u(u({},e),{},{[r]:t?.arguments?.[r]??s})},{})});let c;return a.name&&(e.G._meta.previousPayloads[a.name]=i),s||(c=this.checkValidity(e,i,n)),s||c.conditionsAreMet?(this.do(e,a,i,n),n&&(n.previousArguments=i.arguments),{conditionResults:c}):r.INVALID_MOVE}transformRule(e){const t=e.arguments;for(let e in t){const n=t[e];n.playerChoice||(n.resolveAsEntity=!0)}return e}},e.exports=t.default},3409(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e){e.G._meta.passedPlayers.length<e.ctx.numPlayers&&(e.G._meta.passedPlayers.push(e.ctx.currentPlayer),e.events.pass())}}t.default=o,e.exports=t.default},5953(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e){e.events.endTurn()}}t.default=o,e.exports=t.default},6642(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n,r){let{arguments:{destination:s}}=n;(t.matchMultiple?e.G.bank.getMultiple(e,u(u({},t.entity),{},{conditions:[...t.entity?.conditions||[],...t.conditions||[]]}),t.count,r):[e.G.bank.getOne(e,u(u({},t.entity),{},{conditions:[...t.entity?.conditions||[],...t.conditions||[]]}),r)]).forEach(e=>{s.placeEntity(e,t.position)})}}t.default=o,e.exports=t.default},2414(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{entity:r}}=n;e.G.bank.returnToBank(e,r)}}t.default=o,e.exports=t.default},2790(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(6973)),s=o(n(2796));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{do(e,t,n,r){e.events.setActivePlayers(t.options);const o=e.ctx.phase,a=t.options.currentPlayer?.stage,i=r.game.phases?.[o]??r.game,c=i?.turn?.stages?.[a];(0,s.default)(e,c?.initialMoves,u(u({},r),{},{stageName:a}))}}t.default=a,e.exports=t.default},9421(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{entity:r,state:s}}=n;r.state=u(u({},r.state),{},{[s.property]:s.value})}}t.default=o,e.exports=t.default},2763(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{target:r}}=n;r.entities=e.random.Shuffle(r.entities)}}t.default=o,e.exports=t.default},4888(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{source:r,destination:s}}=n;s.placeEntity(r.takeOne(t.arguments.source.position))}}t.default=o,e.exports=t.default},7913(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(1013)),s=o(n(9209));function o(e){return e&&e.__esModule?e:{default:e}}class a extends s.default{getSpacesCount(){return this.rule.width*this.rule.height}getRows(){return(0,r.default)(this.spaces,this.rule.width)}getCoordinates(e){const{width:t}=this.rule;return[e%t,Math.floor(e/t)]}getIndex(e){let[t,n]=e;const{width:r}=this.rule;return n*r+t}getSpace(e){return this.spaces[this.getIndex(e)]}getRelativeCoordinates(e,t){let[n,r]=e,[s,o]=t;const a=[n+s,r+o];return this.areCoordinatesValid(a)?a:null}areCoordinatesValid(e){let[t,n]=e;return t>=0&&n>=0&&t<this.rule.width&&n<this.rule.height}}t.default=a,e.exports=t.default},9209(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(4511))&&r.__esModule?r:{default:r};class o extends s.default{constructor(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];super(e,...n),this.spaces=this.makeSpaces(e.bank)}makeSpaces(e){return Array(this.getSpacesCount()).fill().map((t,n)=>e.createEntity({type:"Space",index:n}))}getEmptySpaces(){return this.spaces.filter(e=>e.isEmpty())}getSpace(e){return this.spaces[e]}getEntities(e){return this.getSpace(e).entities}placeEntity(e,t){this.getSpace(e).placeEntity(t)}}t.default=o,e.exports=t.default},1325(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(4511))&&r.__esModule?r:{default:r};class o extends s.default{constructor(){super(...arguments),this.entities=[]}placeEntity(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Last";"Last"===t?this.entities.push(e):"First"===t&&this.entities.unshift(e)}remove(e){this.entities.splice(this.entities.indexOf(e),1)}takeOne(){if("First"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"First"))return this.entities.splice(0,1)[0]}isEmpty(){return 0===this.entities.length}}t.default=o,e.exports=t.default},3883(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.registry=void 0;var r=u(n(2606)),s=u(n(9209)),o=u(n(1325)),a=u(n(7913)),i=u(n(6103)),c=u(n(784)),l=u(n(4511));function u(e){return e&&e.__esModule?e:{default:e}}t.registry={Board:r.default,SpaceGroup:s.default,Space:o.default,Grid:a.default,Bank:i.default,BankSlot:c.default,Entity:l.default}},3538(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return Object.values(t).some(t=>{const{moveInstance:n}=t,r={moveInstance:n},o=(0,s.default)(e,n.rule,r).arguments??{};if(0===Object.keys(o).length)return n.isValid(e,{arguments:{}},r);const a=function(e){const t=Object.keys(e),n={},r={};t.forEach(e=>{n[e]=[],r[e]=0}),t.forEach(s=>{i(e[s]).forEach(e=>{t.includes(e)&&e!==s&&(n[e].push(s),r[s]++)})});const s=t.filter(e=>0===r[e]),o=[];for(;s.length>0;){const e=s.shift();o.push(e),n[e].forEach(e=>{r[e]--,0===r[e]&&s.push(e)})}return o.length===t.length?o:t}(o);return c(e,n,o,a,r)})};var r=a(n(1331)),s=a(n(7208)),o=a(n(4198));function a(e){return e&&e.__esModule?e:{default:e}}function i(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Set;if(!e||"object"!=typeof e)return t;"contextPath"===e.type&&Array.isArray(e.path)&&"moveArguments"===e.path[0]&&e.path[1]&&t.add(e.path[1]);for(const n of Object.values(e))i(n,t);return t}function c(e,t,n,s,a){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,l=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{};if(i===s.length){const n={arguments:l};return t.isValid(e,n,a)}const p=s[i],d=n[p],f=u(u({},a),{},{moveArguments:l}),h=(0,r.default)(d)?(0,o.default)(e,u(u({},d),{},{matchMultiple:!0}),f,p):d,v=Array.isArray(h)?h:void 0!==h?[h]:[];return 0!==v.length&&v.some(r=>c(e,t,n,s,a,i+1,u(u({},l),{},{[p]:r})))}e.exports=t.default},7611(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){const{conditions:o=[]}=t,a=[];let i;for(const t of o){const o=(0,s.default)(t).check(e,n,r);if(!o.conditionIsMet){i=t;break}a.push(o)}return{results:a,failedAt:i,conditionsAreMet:a.length===o.length}};var r,s=(r=n(2130))&&r.__esModule?r:{default:r};e.exports=t.default},9965(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){const o=(0,s.default)(e,t,r).map(e=>e.argName);return{arguments:n.reduce((e,t,n)=>u(u({},e),{},{[o[n]]:t}),{})}};var r,s=(r=n(2146))&&r.__esModule?r:{default:r};e.exports=t.default},3358(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return u(u({},e),{},{G:(0,r.deserialize)(JSON.stringify(e.G),s.registry)})};var r=n(7627),s=n(3883);e.exports=t.default},2796(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0;return t?.length?(t.forEach(t=>{(0,s.default)(t,n.game).moveInstance.doMove(e,void 0,n)}),e.G):e.G};var r,s=(r=n(510))&&r.__esModule?r:{default:r};e.exports=t.default},6413(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,o){return(0,r.default)(function(e,t,n){const r=u({},t);return delete r.state,delete r.stateGroups,(0,s.default)(e,r,n)}(e,t,o))(function(e){return u(u({},e.rule),e.state)}(n))};var r=o(n(1505)),s=o(n(7208));function o(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default},2742(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){let o,{conditions:a=[]}=t;for(const t of a){const a=(0,s.default)(t).check(e,n,r);if(a.conditionIsMet){o=u(u({},a),{},{conditionRule:t});break}}return o};var r,s=(r=n(2130))&&r.__esModule?r:{default:r};e.exports=t.default},4171(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){let{game:n,playerID:r,stageName:s}=t;const o=e.ctx.phase,a=s??e.ctx.activePlayers?.[r??e.ctx.currentPlayer],i=n.phases?.[o]??n;return(i.turn?.stages?.[a]??i).moves??{}},e.exports=t.default},236(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){let o;for(const n of t){const t=(0,r.default)(e,n);if(t.conditionsAreMet){o={scenario:n,conditionResults:t};break}}return o?.scenario?.result?(0,s.default)(e,o.scenario.result,{results:o.conditionResults.results}):o};var r=o(n(7611)),s=o(n(7208));function o(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default},2146(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return n[t.type].filter(e=>t.arguments[e].playerChoice).map(n=>({argName:n,getClickable:"state"===n?()=>t.arguments[n].possibleValues.map(e=>u(u({abstract:!0},t.arguments[n]),{},{value:e})):r=>e.G.bank.findAll(e,t.arguments[n],r)}))};const n={PlaceNew:["destination"],RemoveEntity:["entity"],MoveEntity:["entity","destination"],TakeFrom:["source","destination"],SetState:["entity","state"]};e.exports=t.default},6648(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){let r=t;for(const t of n){if(void 0===r)return r;if(t?.flatten){if(!Array.isArray(r))return;r=r.flat(),t.map&&(r=r.map(n=>e(n,t.map)))}else r=r[t]}return r},e.exports=t.default},1138(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){const s=function(e,t){const n={moveInstance:t.moveInstance?.id,moveArguments:t.moveArguments};return JSON.stringify({pattern:e,context:n})}(n,r);let u=a.get(t);u||(u=new Map,a.set(t,u));const p=function(e){const t=e.entities||[];return t.map(e=>{const t=e.entities||[];return 0===t.length?"empty":t.map(e=>{const t=Object.keys(e).sort(),n={};return t.forEach(t=>{n[t]=e[t]}),JSON.stringify(n)}).sort().join("|")}).join(",")}(t),d=u.get(s);if(d&&d.stateKey===p)return d.result;const f=[],h=n.reduce((e,t)=>e+(t.minCount||t.count||1),0);for(const[s,a]of o){const o=c(t,s,a);for(const[c,u]of o){const o=l(t,c,u,s,a);if(o.length<h)continue;const p=i(e,o,n,h,r);if(f.push(...p),0===p.length||n.length>1){const t=i(e,o,n,h,r,!0);f.push(...t)}}}const v={matches:f,conditionIsMet:!!f.length};return u.set(s,{stateKey:p,result:v}),v},s(n(1505));var r=s(n(7611));function s(e){return e&&e.__esModule?e:{default:e}}const o=[[1,0],[0,1],[1,1],[-1,1]],a=new WeakMap;function i(e,t,n,r,s){let o=arguments.length>5&&void 0!==arguments[5]&&arguments[5];const a=[],i=t.length;let c=0;for(;c<=i-r;){const r=u(e,t,c,n,s,o);r?(a.push(r),c++):c++}return a}function c(e,t,n){const{width:r,height:s}=e.attributes,o=[];if(1===t&&0===n)for(let e=0;e<s;e++)o.push([0,e]);else if(0===t&&1===n)for(let e=0;e<r;e++)o.push([e,0]);else if(1===t&&1===n){for(let e=0;e<r;e++)o.push([e,0]);for(let e=1;e<s;e++)o.push([0,e])}else if(-1===t&&1===n){for(let e=0;e<r;e++)o.push([e,0]);for(let e=1;e<s;e++)o.push([r-1,e])}return o}function l(e,t,n,r,s){const o=[];let[a,i]=[t,n];for(;e.areCoordinatesValid([a,i]);)o.push(e.getSpace([a,i])),a+=r,i+=s;return o}function u(e,t,n,r,s){let o=arguments.length>5&&void 0!==arguments[5]&&arguments[5],a=n;const i=[],c=t.length;for(const n of r){const{count:r,minCount:l,maxCount:u,conditions:d}=n;let f,h;void 0!==r?f=h=r:void 0!==l||void 0!==u?(f=l||0,h=u||1/0):f=h=1;let v=0;const y=[];for(;v<h&&a<c;){const n=o?t[c-1-a]:t[a];if(!p(e,n,d,y,s))break;y.push(n),v++,a++}if(v<f)return null;i.push(...y)}return i.length>0?i:null}function p(e,t,n){let s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=arguments.length>4?arguments[4]:void 0;return!n||0===n.length||(0,r.default)(e,{conditions:n},{target:t,targets:[t,...s]},o).conditionsAreMet}e.exports=t.default},6730(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return JSON.parse(JSON.stringify(e),(e,n)=>{let r=n;for(const e of t)e.test(r)&&(r=e.replace(r));return r})},e.exports=t.default},380(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(e?.arguments){const t=u({},e);return t.arguments=Object.entries(t.arguments).reduce((e,t)=>{let[n,r]=t;return u(u({},e),{},{[n]:r.abstract?r:r.entityId})},{}),JSON.parse((0,r.serialize)(t,{deduplicateInstances:!1}))}return e};var r=n(7627);e.exports=t.default},4198(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){return!o.includes(r)&&(0,s.default)(t)?e.G.bank.find(e,t,n):t};var r,s=(r=n(1331))&&r.__esModule?r:{default:r};const o=["state"];e.exports=t.default},8123(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){const r=(0,o.default)(e,t.arguments,n);return a.evaluate(t.expression,r)};var r,s=n(2016),o=(r=n(7208))&&r.__esModule?r:{default:r};const a=new s.Parser;a.functions.sum=e=>e.reduce((e,t)=>e+t,0),e.exports=t.default},7208(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=p;var r=c(n(1331)),s=c(n(4383)),o=c(n(6648)),a=c(n(8123)),i=c(n(4198));function c(e){return e&&e.__esModule?e:{default:e}}const l=["conditions","move","then","mapping"];function p(e,t,n,c){if(!(0,r.default)(t)&&!Array.isArray(t))return t;let f=Array.isArray(t)?[...t]:u({},t);Object.entries(t).forEach(t=>{let[r,s]=t;l.includes(r)||(f[r]=p(e,s,n,r))});const h=function(e,t,n){if("expression"===t?.type)return(0,a.default)(e,u(u({},t),{},{arguments:p(e,t.arguments,n,"arguments")}),n);if("count"===t?.type)return e.G.bank.findAll(e,t,n).length;if("contextPath"===t?.type)return(0,o.default)(n,t.path);if("ctxPath"===t?.type)return(0,o.default)(e.ctx,t.path);if("gamePath"===t?.type)return(0,o.default)(e.G,t.path);if("RelativePath"===t?.type){const r=p(e,t.target,n,"target");return(0,o.default)(r.attributes,t.path)??null}if("Parent"===t?.type){const r=t.target?p(e,t.target,n,"target"):n.originalTarget;return e.G.bank.findParent(r)??null}if("map"===t?.type)return d(e,t.targets,t.mapping,n).map(e=>e.value);if("mapMax"===t?.type){const r=d(e,t.targets,t.mapping,n);let s;const o=[];for(let e=0,t=r.length;e<t;e++){const{target:t,value:n}=r[e];void 0===s||n>s?(s=n,o.length=0,o.push(t)):n===s&&o.push(t)}return o}if("Pick"===t?.type){const r=p(e,t.target,n,"target");return(0,s.default)(p(e,r.attributes,n,"attributes"),t.properties)}if("Coordinates"===t?.type){const r=t.target?p(e,t.target,n,"target"):n.originalTarget;return e.G.bank.findParent(r).getCoordinates(r.rule.index)}if("relativeCoordinates"===t?.type){const r=t.target?p(e,t.target,n,"target"):n.originalTarget,s=e.G.bank.findParent(r),o=s.getCoordinates(r.rule.index),a=s.getRelativeCoordinates(o,p(e,t.location,n,"location"));return(a&&s.spaces[s.getIndex(a)])??null}return t}(e,f,n);return h?.resolveAsEntity||"target"===c||"targets"===c?(0,i.default)(e,h,n,c):h}function d(e,t,n,r){return t.resolveAsEntity=!0,p(e,t,r)?.map(t=>({target:t,value:p(e,n,u(u({},r),{},{loopTarget:t}))}))??[]}e.exports=t.default},3276(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){const o=(0,r.deserialize)((0,r.serialize)(e.G),s.registry),a=u(u({},e),{},{G:o}),i=u(u({},t),{},{arguments:{}});return Object.entries(t.arguments).forEach(e=>{let[t,n]=e;i.arguments[t]=n.abstract?n:o.bank.locate("number"==typeof n?n:n.entityId)}),n.moveInstance.doMove(a,i,n,{skipCheck:!0}),o};var r=n(7627),s=n(3883);e.exports=t.default},7833(e,t,n){t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,s=0;t[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&(r++,"%c"===e&&(s=r))}),t.splice(s,0,n)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")||t.storage.getItem("DEBUG")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},t.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=n(736)(t);const{formatters:r}=e.exports;r.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},736(e,t,n){e.exports=function(e){function t(e){let n,s,o,a=null;function i(...e){if(!i.enabled)return;const r=i,s=Number(new Date),o=s-(n||s);r.diff=o,r.prev=n,r.curr=s,n=s,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let a=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(n,s)=>{if("%%"===n)return"%";a++;const o=t.formatters[s];if("function"==typeof o){const t=e[a];n=o.call(r,t),e.splice(a,1),a--}return n}),t.formatArgs.call(r,e),(r.log||t.log).apply(r,e)}return i.namespace=e,i.useColors=t.useColors(),i.color=t.selectColor(e),i.extend=r,i.destroy=t.destroy,Object.defineProperty(i,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==a?a:(s!==t.namespaces&&(s=t.namespaces,o=t.enabled(e)),o),set:e=>{a=e}}),"function"==typeof t.init&&t.init(i),i}function r(e,n){const r=t(this.namespace+(void 0===n?":":n)+e);return r.log=this.log,r}function s(e,t){let n=0,r=0,s=-1,o=0;for(;n<e.length;)if(r<t.length&&(t[r]===e[n]||"*"===t[r]))"*"===t[r]?(s=r,o=n,r++):(n++,r++);else{if(-1===s)return!1;r=s+1,o++,n=o}for(;r<t.length&&"*"===t[r];)r++;return r===t.length}return t.debug=t,t.default=t,t.coerce=function(e){return e instanceof Error?e.stack||e.message:e},t.disable=function(){const e=[...t.names,...t.skips.map(e=>"-"+e)].join(",");return t.enable(""),e},t.enable=function(e){t.save(e),t.namespaces=e,t.names=[],t.skips=[];const n=("string"==typeof e?e:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(const e of n)"-"===e[0]?t.skips.push(e.slice(1)):t.names.push(e)},t.enabled=function(e){for(const n of t.skips)if(s(e,n))return!1;for(const n of t.names)if(s(e,n))return!0;return!1},t.humanize=n(6585),t.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach(n=>{t[n]=e[n]}),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let n=0;for(let t=0;t<e.length;t++)n=(n<<5)-n+e.charCodeAt(t),n|=0;return t.colors[Math.abs(n)%t.colors.length]},t.enable(t.load()),t}},6477(e,t){function n(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];throw Error("[Immer] minified error nr: "+e+(n.length?" "+n.map(function(e){return"'"+e+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function r(e){return!!e&&!!e[J]}function s(e){var t;return!!e&&(function(e){if(!e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;var n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return n===Object||"function"==typeof n&&Function.toString.call(n)===Y}(e)||Array.isArray(e)||!!e[H]||!!(null===(t=e.constructor)||void 0===t?void 0:t[H])||p(e)||d(e))}function o(e,t,n){void 0===n&&(n=!1),0===a(e)?(n?Object.keys:X)(e).forEach(function(r){n&&"symbol"==typeof r||t(r,e[r],e)}):e.forEach(function(n,r){return t(r,n,e)})}function a(e){var t=e[J];return t?t.t>3?t.t-4:t.t:Array.isArray(e)?1:p(e)?2:d(e)?3:0}function i(e,t){return 2===a(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function c(e,t){return 2===a(e)?e.get(t):e[t]}function l(e,t,n){var r=a(e);2===r?e.set(t,n):3===r?e.add(n):e[t]=n}function u(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function p(e){return z&&e instanceof Map}function d(e){return q&&e instanceof Set}function f(e){return e.i||e.u}function h(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Q(e);delete t[J];for(var n=X(t),r=0;r<n.length;r++){var s=n[r],o=t[s];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(t[s]={configurable:!0,writable:!0,enumerable:o.enumerable,value:e[s]})}return Object.create(Object.getPrototypeOf(e),t)}function v(e,t){return void 0===t&&(t=!1),g(e)||r(e)||!s(e)||(a(e)>1&&(e.set=e.add=e.clear=e.delete=y),Object.freeze(e),t&&o(e,function(e,t){return v(t,!0)},!0)),e}function y(){n(2)}function g(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function m(e){var t=Z[e];return t||n(18,e),t}function b(e,t){Z[e]||(Z[e]=t)}function x(){return L}function _(e,t){t&&(m("Patches"),e.o=[],e.v=[],e.s=t)}function w(e){P(e),e.p.forEach(k),e.p=null}function P(e){e===L&&(L=e.l)}function O(e){return L={p:[],l:L,h:e,_:!0,m:0}}function k(e){var t=e[J];0===t.t||1===t.t?t.j():t.O=!0}function E(e,t){t.m=t.p.length;var r=t.p[0],o=void 0!==e&&e!==r;return t.h.S||m("ES5").P(t,e,o),o?(r[J].g&&(w(t),n(4)),s(e)&&(e=M(t,e),t.l||A(t,e)),t.o&&m("Patches").M(r[J].u,e,t.o,t.v)):e=M(t,r,[]),w(t),t.o&&t.s(t.o,t.v),e!==W?e:void 0}function M(e,t,n){if(g(t))return t;var r=t[J];if(!r)return o(t,function(s,o){return $(e,r,t,s,o,n)},!0),t;if(r.A!==e)return t;if(!r.g)return A(e,r.u,!0),r.u;if(!r.R){r.R=!0,r.A.m--;var s=4===r.t||5===r.t?r.i=h(r.k):r.i,a=s,i=!1;3===r.t&&(a=new Set(s),s.clear(),i=!0),o(a,function(t,o){return $(e,r,s,t,o,n,i)}),A(e,s,!1),n&&e.o&&m("Patches").F(r,n,e.o,e.v)}return r.i}function $(e,t,n,o,a,c,u){if(r(a)){var p=M(e,a,c&&t&&3!==t.t&&!i(t.N,o)?c.concat(o):void 0);if(l(n,o,p),!r(p))return;e._=!1}else u&&n.add(a);if(s(a)&&!g(a)){if(!e.h.D&&e.m<1)return;M(e,a),t&&t.A.l||A(e,a)}}function A(e,t,n){void 0===n&&(n=!1),!e.l&&e.h.D&&e._&&v(t,n)}function j(e,t){var n=e[J];return(n?f(n):e)[t]}function S(e,t){if(t in e)for(var n=Object.getPrototypeOf(e);n;){var r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function I(e){e.g||(e.g=!0,e.l&&I(e.l))}function C(e){e.i||(e.i=h(e.u))}function T(e,t,n){var r=p(t)?m("MapSet").K(t,n):d(t)?m("MapSet").$(t,n):e.S?function(e,t){var n=Array.isArray(e),r={t:n?1:0,A:t?t.A:x(),g:!1,R:!1,N:{},l:t,u:e,k:null,i:null,j:null,C:!1},s=r,o=ee;n&&(s=[r],o=te);var a=Proxy.revocable(s,o),i=a.revoke,c=a.proxy;return r.k=c,r.j=i,c}(t,n):m("ES5").I(t,n);return(n?n.A:x()).p.push(r),r}function N(e){return r(e)||n(22,e),function e(t){if(!s(t))return t;var n,r=t[J],i=a(t);if(r){if(!r.g&&(r.t<4||!m("ES5").J(r)))return r.u;r.R=!0,n=D(t,i),r.R=!1}else n=D(t,i);return o(n,function(t,s){r&&c(r.u,t)===s||l(n,t,e(s))}),3===i?new Set(n):n}(e)}function D(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return h(e)}function R(){function e(e,t){var n=a[e];return n?n.enumerable=t:a[e]=n={configurable:!0,enumerable:t,get:function(){return ee.get(this[J],e)},set:function(t){ee.set(this[J],e,t)}},n}function t(e){for(var t=e.length-1;t>=0;t--){var r=e[t][J];if(!r.g)switch(r.t){case 5:s(r)&&I(r);break;case 4:n(r)&&I(r)}}}function n(e){for(var t=e.u,n=e.k,r=X(n),s=r.length-1;s>=0;s--){var o=r[s];if(o!==J){var a=t[o];if(void 0===a&&!i(t,o))return!0;var c=n[o],l=c&&c[J];if(l?l.u!==a:!u(c,a))return!0}}var p=!!t[J];return r.length!==X(t).length+(p?0:1)}function s(e){var t=e.k;if(t.length!==e.u.length)return!0;var n=Object.getOwnPropertyDescriptor(t,t.length-1);if(n&&!n.get)return!0;for(var r=0;r<t.length;r++)if(!t.hasOwnProperty(r))return!0;return!1}var a={};b("ES5",{I:function(t,n){var r=Array.isArray(t),s=function(t,n){if(t){for(var r=Array(n.length),s=0;s<n.length;s++)Object.defineProperty(r,""+s,e(s,!0));return r}var o=Q(n);delete o[J];for(var a=X(o),i=0;i<a.length;i++){var c=a[i];o[c]=e(c,t||!!o[c].enumerable)}return Object.create(Object.getPrototypeOf(n),o)}(r,t),o={t:r?5:4,A:n?n.A:x(),g:!1,R:!1,N:{},l:n,u:t,k:s,i:null,O:!1,C:!1};return Object.defineProperty(s,J,{value:o,writable:!0}),s},P:function(e,n,a){a?r(n)&&n[J].A===e&&t(e.p):(e.o&&function e(t){if(t&&"object"==typeof t){var n=t[J];if(n){var r=n.u,a=n.k,c=n.N,l=n.t;if(4===l)o(a,function(t){t!==J&&(void 0!==r[t]||i(r,t)?c[t]||e(a[t]):(c[t]=!0,I(n)))}),o(r,function(e){void 0!==a[e]||i(a,e)||(c[e]=!1,I(n))});else if(5===l){if(s(n)&&(I(n),c.length=!0),a.length<r.length)for(var u=a.length;u<r.length;u++)c[u]=!1;else for(var p=r.length;p<a.length;p++)c[p]=!0;for(var d=Math.min(a.length,r.length),f=0;f<d;f++)a.hasOwnProperty(f)||(c[f]=!0),void 0===c[f]&&e(a[f])}}}}(e.p[0]),t(e.p))},J:function(e){return 4===e.t?n(e):s(e)}})}function B(){function e(t){if(!s(t))return t;if(Array.isArray(t))return t.map(e);if(p(t))return new Map(Array.from(t.entries()).map(function(t){return[t[0],e(t[1])]}));if(d(t))return new Set(Array.from(t).map(e));var n=Object.create(Object.getPrototypeOf(t));for(var r in t)n[r]=e(t[r]);return i(t,H)&&(n[H]=t[H]),n}function t(t){return r(t)?e(t):t}var l="add";b("Patches",{W:function(t,r){return r.forEach(function(r){for(var s=r.path,o=r.op,i=t,u=0;u<s.length-1;u++){var p=a(i),d=s[u];"string"!=typeof d&&"number"!=typeof d&&(d=""+d),0!==p&&1!==p||"__proto__"!==d&&"constructor"!==d||n(24),"function"==typeof i&&"prototype"===d&&n(24),"object"!=typeof(i=c(i,d))&&n(15,s.join("/"))}var f=a(i),h=e(r.value),v=s[s.length-1];switch(o){case"replace":switch(f){case 2:return i.set(v,h);case 3:n(16);default:return i[v]=h}case l:switch(f){case 1:return"-"===v?i.push(h):i.splice(v,0,h);case 2:return i.set(v,h);case 3:return i.add(h);default:return i[v]=h}case"remove":switch(f){case 1:return i.splice(v,1);case 2:return i.delete(v);case 3:return i.delete(r.value);default:return delete i[v]}default:n(17,o)}}),t},F:function(e,n,r,s){switch(e.t){case 0:case 4:case 2:return function(e,n,r,s){var a=e.u,u=e.i;o(e.N,function(e,o){var p=c(a,e),d=c(u,e),f=o?i(a,e)?"replace":l:"remove";if(p!==d||"replace"!==f){var h=n.concat(e);r.push("remove"===f?{op:f,path:h}:{op:f,path:h,value:d}),s.push(f===l?{op:"remove",path:h}:"remove"===f?{op:l,path:h,value:t(p)}:{op:"replace",path:h,value:t(p)})}})}(e,n,r,s);case 5:case 1:return function(e,n,r,s){var o=e.u,a=e.N,i=e.i;if(i.length<o.length){var c=[i,o];o=c[0],i=c[1];var u=[s,r];r=u[0],s=u[1]}for(var p=0;p<o.length;p++)if(a[p]&&i[p]!==o[p]){var d=n.concat([p]);r.push({op:"replace",path:d,value:t(i[p])}),s.push({op:"replace",path:d,value:t(o[p])})}for(var f=o.length;f<i.length;f++){var h=n.concat([f]);r.push({op:l,path:h,value:t(i[f])})}o.length<i.length&&s.push({op:"replace",path:n.concat(["length"]),value:o.length})}(e,n,r,s);case 3:return function(e,t,n,r){var s=e.u,o=e.i,a=0;s.forEach(function(e){if(!o.has(e)){var s=t.concat([a]);n.push({op:"remove",path:s,value:e}),r.unshift({op:l,path:s,value:e})}a++}),a=0,o.forEach(function(e){if(!s.has(e)){var o=t.concat([a]);n.push({op:l,path:o,value:e}),r.unshift({op:"remove",path:o,value:e})}a++})}(e,n,r,s)}},M:function(e,t,n,r){n.push({op:"replace",path:[],value:t===W?void 0:t}),r.push({op:"replace",path:[],value:e})}})}function G(){function e(e,t){function n(){this.constructor=e}i(e,t),e.prototype=(n.prototype=t.prototype,new n)}function t(e){e.i||(e.N=new Map,e.i=new Map(e.u))}function r(e){e.i||(e.i=new Set,e.u.forEach(function(t){if(s(t)){var n=T(e.A.h,t,e);e.p.set(t,n),e.i.add(n)}else e.i.add(t)}))}function a(e){e.O&&n(3,JSON.stringify(f(e)))}var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},c=function(){function n(e,t){return this[J]={t:2,l:t,A:t?t.A:x(),g:!1,R:!1,i:void 0,N:void 0,u:e,k:this,C:!1,O:!1},this}e(n,Map);var r=n.prototype;return Object.defineProperty(r,"size",{get:function(){return f(this[J]).size}}),r.has=function(e){return f(this[J]).has(e)},r.set=function(e,n){var r=this[J];return a(r),f(r).has(e)&&f(r).get(e)===n||(t(r),I(r),r.N.set(e,!0),r.i.set(e,n),r.N.set(e,!0)),this},r.delete=function(e){if(!this.has(e))return!1;var n=this[J];return a(n),t(n),I(n),n.u.has(e)?n.N.set(e,!1):n.N.delete(e),n.i.delete(e),!0},r.clear=function(){var e=this[J];a(e),f(e).size&&(t(e),I(e),e.N=new Map,o(e.u,function(t){e.N.set(t,!1)}),e.i.clear())},r.forEach=function(e,t){var n=this;f(this[J]).forEach(function(r,s){e.call(t,n.get(s),s,n)})},r.get=function(e){var n=this[J];a(n);var r=f(n).get(e);if(n.R||!s(r))return r;if(r!==n.u.get(e))return r;var o=T(n.A.h,r,n);return t(n),n.i.set(e,o),o},r.keys=function(){return f(this[J]).keys()},r.values=function(){var e,t=this,n=this.keys();return(e={})[K]=function(){return t.values()},e.next=function(){var e=n.next();return e.done?e:{done:!1,value:t.get(e.value)}},e},r.entries=function(){var e,t=this,n=this.keys();return(e={})[K]=function(){return t.entries()},e.next=function(){var e=n.next();if(e.done)return e;var r=t.get(e.value);return{done:!1,value:[e.value,r]}},e},r[K]=function(){return this.entries()},n}(),l=function(){function t(e,t){return this[J]={t:3,l:t,A:t?t.A:x(),g:!1,R:!1,i:void 0,u:e,k:this,p:new Map,O:!1,C:!1},this}e(t,Set);var n=t.prototype;return Object.defineProperty(n,"size",{get:function(){return f(this[J]).size}}),n.has=function(e){var t=this[J];return a(t),t.i?!!t.i.has(e)||!(!t.p.has(e)||!t.i.has(t.p.get(e))):t.u.has(e)},n.add=function(e){var t=this[J];return a(t),this.has(e)||(r(t),I(t),t.i.add(e)),this},n.delete=function(e){if(!this.has(e))return!1;var t=this[J];return a(t),r(t),I(t),t.i.delete(e)||!!t.p.has(e)&&t.i.delete(t.p.get(e))},n.clear=function(){var e=this[J];a(e),f(e).size&&(r(e),I(e),e.i.clear())},n.values=function(){var e=this[J];return a(e),r(e),e.i.values()},n.entries=function(){var e=this[J];return a(e),r(e),e.i.entries()},n.keys=function(){return this.values()},n[K]=function(){return this.values()},n.forEach=function(e,t){for(var n=this.values(),r=n.next();!r.done;)e.call(t,r.value,r.value,this),r=n.next()},t}();b("MapSet",{K:function(e,t){return new c(e,t)},$:function(e,t){return new l(e,t)}})}var F;Object.defineProperty(t,"__esModule",{value:!0});var L,U="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),z="undefined"!=typeof Map,q="undefined"!=typeof Set,V="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,W=U?Symbol.for("immer-nothing"):((F={})["immer-nothing"]=!0,F),H=U?Symbol.for("immer-draftable"):"__$immer_draftable",J=U?Symbol.for("immer-state"):"__$immer_state",K="undefined"!=typeof Symbol&&Symbol.iterator||"@@iterator",Y=""+Object.prototype.constructor,X="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,Q=Object.getOwnPropertyDescriptors||function(e){var t={};return X(e).forEach(function(n){t[n]=Object.getOwnPropertyDescriptor(e,n)}),t},Z={},ee={get:function(e,t){if(t===J)return e;var n=f(e);if(!i(n,t))return function(e,t,n){var r,s=S(t,n);return s?"value"in s?s.value:null===(r=s.get)||void 0===r?void 0:r.call(e.k):void 0}(e,n,t);var r=n[t];return e.R||!s(r)?r:r===j(e.u,t)?(C(e),e.i[t]=T(e.A.h,r,e)):r},has:function(e,t){return t in f(e)},ownKeys:function(e){return Reflect.ownKeys(f(e))},set:function(e,t,n){var r=S(f(e),t);if(null==r?void 0:r.set)return r.set.call(e.k,n),!0;if(!e.g){var s=j(f(e),t),o=null==s?void 0:s[J];if(o&&o.u===n)return e.i[t]=n,e.N[t]=!1,!0;if(u(n,s)&&(void 0!==n||i(e.u,t)))return!0;C(e),I(e)}return e.i[t]===n&&(void 0!==n||t in e.i)||Number.isNaN(n)&&Number.isNaN(e.i[t])||(e.i[t]=n,e.N[t]=!0),!0},deleteProperty:function(e,t){return void 0!==j(e.u,t)||t in e.u?(e.N[t]=!1,C(e),I(e)):delete e.N[t],e.i&&delete e.i[t],!0},getOwnPropertyDescriptor:function(e,t){var n=f(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r?{writable:!0,configurable:1!==e.t||"length"!==t,enumerable:r.enumerable,value:n[t]}:r},defineProperty:function(){n(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.u)},setPrototypeOf:function(){n(12)}},te={};o(ee,function(e,t){te[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),te.deleteProperty=function(e,t){return te.set.call(this,e,t,void 0)},te.set=function(e,t,n){return ee.set.call(this,e[0],t,n,e[0])};var ne=function(){function e(e){var t=this;this.S=V,this.D=!0,this.produce=function(e,r,o){if("function"==typeof e&&"function"!=typeof r){var a=r;r=e;var i=t;return function(e){var t=this;void 0===e&&(e=a);for(var n=arguments.length,s=Array(n>1?n-1:0),o=1;o<n;o++)s[o-1]=arguments[o];return i.produce(e,function(e){var n;return(n=r).call.apply(n,[t,e].concat(s))})}}var c;if("function"!=typeof r&&n(6),void 0!==o&&"function"!=typeof o&&n(7),s(e)){var l=O(t),u=T(t,e,void 0),p=!0;try{c=r(u),p=!1}finally{p?w(l):P(l)}return"undefined"!=typeof Promise&&c instanceof Promise?c.then(function(e){return _(l,o),E(e,l)},function(e){throw w(l),e}):(_(l,o),E(c,l))}if(!e||"object"!=typeof e){if(void 0===(c=r(e))&&(c=e),c===W&&(c=void 0),t.D&&v(c,!0),o){var d=[],f=[];m("Patches").M(e,c,d,f),o(d,f)}return c}n(21,e)},this.produceWithPatches=function(e,n){if("function"==typeof e)return function(n){for(var r=arguments.length,s=Array(r>1?r-1:0),o=1;o<r;o++)s[o-1]=arguments[o];return t.produceWithPatches(n,function(t){return e.apply(void 0,[t].concat(s))})};var r,s,o=t.produce(e,n,function(e,t){r=e,s=t});return"undefined"!=typeof Promise&&o instanceof Promise?o.then(function(e){return[e,r,s]}):[o,r,s]},"boolean"==typeof(null==e?void 0:e.useProxies)&&this.setUseProxies(e.useProxies),"boolean"==typeof(null==e?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze)}var t=e.prototype;return t.createDraft=function(e){s(e)||n(8),r(e)&&(e=N(e));var t=O(this),o=T(this,e,void 0);return o[J].C=!0,P(t),o},t.finishDraft=function(e,t){var n=(e&&e[J]).A;return _(n,t),E(void 0,n)},t.setAutoFreeze=function(e){this.D=e},t.setUseProxies=function(e){e&&!V&&n(20),this.S=e},t.applyPatches=function(e,t){var n;for(n=t.length-1;n>=0;n--){var s=t[n];if(0===s.path.length&&"replace"===s.op){e=s.value;break}}n>-1&&(t=t.slice(n+1));var o=m("Patches").W;return r(e)?o(e,t):this.produce(e,function(e){return o(e,t)})},e}(),re=new ne,se=re.produce,oe=re.produceWithPatches.bind(re),ae=re.setAutoFreeze.bind(re),ie=re.setUseProxies.bind(re),ce=re.applyPatches.bind(re),le=re.createDraft.bind(re),ue=re.finishDraft.bind(re);t.Immer=ne,t.applyPatches=ce,t.castDraft=function(e){return e},t.castImmutable=function(e){return e},t.createDraft=le,t.current=N,t.default=se,t.enableAllPlugins=function(){R(),G(),B()},t.enableES5=R,t.enableMapSet=G,t.enablePatches=B,t.finishDraft=ue,t.freeze=v,t.immerable=H,t.isDraft=r,t.isDraftable=s,t.nothing=W,t.original=function(e){return r(e)||n(23,e),e[J].u},t.produce=se,t.produceWithPatches=oe,t.setAutoFreeze=ae,t.setUseProxies=ie},5878(e,t,n){e.exports=n(6477)},9001(e){var t,n,r=Function.prototype,s=Object.prototype,o=r.toString,a=s.hasOwnProperty,i=o.call(Object),c=s.toString,l=(t=Object.getPrototypeOf,n=Object,function(e){return t(n(e))});e.exports=function(e){if(!function(e){return!!e&&"object"==typeof e}(e)||"[object Object]"!=c.call(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e))return!1;var t=l(e);if(null===t)return!0;var n=a.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&o.call(n)==i}},5580(e,t,n){var r=n(6110)(n(9325),"DataView");e.exports=r},1549(e,t,n){var r=n(2032),s=n(3862),o=n(6721),a=n(2749),i=n(5749);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=s,c.prototype.get=o,c.prototype.has=a,c.prototype.set=i,e.exports=c},79(e,t,n){var r=n(3702),s=n(80),o=n(4739),a=n(8655),i=n(1175);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=s,c.prototype.get=o,c.prototype.has=a,c.prototype.set=i,e.exports=c},604(e,t,n){var r=n(6110)(n(9325),"Map");e.exports=r},3661(e,t,n){var r=n(3040),s=n(7670),o=n(289),a=n(4509),i=n(2949);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=s,c.prototype.get=o,c.prototype.has=a,c.prototype.set=i,e.exports=c},2804(e,t,n){var r=n(6110)(n(9325),"Promise");e.exports=r},6545(e,t,n){var r=n(6110)(n(9325),"Set");e.exports=r},8859(e,t,n){var r=n(3661),s=n(1380),o=n(1459);function a(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}a.prototype.add=a.prototype.push=s,a.prototype.has=o,e.exports=a},7217(e,t,n){var r=n(79),s=n(1420),o=n(938),a=n(3605),i=n(9817),c=n(945);function l(e){var t=this.__data__=new r(e);this.size=t.size}l.prototype.clear=s,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=i,l.prototype.set=c,e.exports=l},1873(e,t,n){var r=n(9325).Symbol;e.exports=r},7828(e,t,n){var r=n(9325).Uint8Array;e.exports=r},8303(e,t,n){var r=n(6110)(n(9325),"WeakMap");e.exports=r},1033(e){e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},3729(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}},9770(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,s=0,o=[];++n<r;){var a=e[n];t(a,n,e)&&(o[s++]=a)}return o}},695(e,t,n){var r=n(8096),s=n(2428),o=n(6449),a=n(3656),i=n(361),c=n(7167),l=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=o(e),u=!n&&s(e),p=!n&&!u&&a(e),d=!n&&!u&&!p&&c(e),f=n||u||p||d,h=f?r(e.length,String):[],v=h.length;for(var y in e)!t&&!l.call(e,y)||f&&("length"==y||p&&("offset"==y||"parent"==y)||d&&("buffer"==y||"byteLength"==y||"byteOffset"==y)||i(y,v))||h.push(y);return h}},4932(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,s=Array(r);++n<r;)s[n]=t(e[n],n,e);return s}},4528(e){e.exports=function(e,t){for(var n=-1,r=t.length,s=e.length;++n<r;)e[s+n]=t[n];return e}},4248(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}},6547(e,t,n){var r=n(3360),s=n(5288),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];o.call(e,t)&&s(a,n)&&(void 0!==n||t in e)||r(e,t,n)}},6025(e,t,n){var r=n(5288);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},4733(e,t,n){var r=n(1791),s=n(5950);e.exports=function(e,t){return e&&r(t,s(t),e)}},3838(e,t,n){var r=n(1791),s=n(7241);e.exports=function(e,t){return e&&r(t,s(t),e)}},3360(e,t,n){var r=n(3243);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},9999(e,t,n){var r=n(7217),s=n(3729),o=n(6547),a=n(4733),i=n(3838),c=n(3290),l=n(3007),u=n(2271),p=n(8948),d=n(2),f=n(3349),h=n(5861),v=n(6189),y=n(7199),g=n(5529),m=n(6449),b=n(3656),x=n(7730),_=n(3805),w=n(8440),P=n(5950),O=n(7241),k="[object Arguments]",E="[object Function]",M="[object Object]",$={};$[k]=$["[object Array]"]=$["[object ArrayBuffer]"]=$["[object DataView]"]=$["[object Boolean]"]=$["[object Date]"]=$["[object Float32Array]"]=$["[object Float64Array]"]=$["[object Int8Array]"]=$["[object Int16Array]"]=$["[object Int32Array]"]=$["[object Map]"]=$["[object Number]"]=$[M]=$["[object RegExp]"]=$["[object Set]"]=$["[object String]"]=$["[object Symbol]"]=$["[object Uint8Array]"]=$["[object Uint8ClampedArray]"]=$["[object Uint16Array]"]=$["[object Uint32Array]"]=!0,$["[object Error]"]=$[E]=$["[object WeakMap]"]=!1,e.exports=function e(t,n,A,j,S,I){var C,T=1&n,N=2&n,D=4&n;if(A&&(C=S?A(t,j,S,I):A(t)),void 0!==C)return C;if(!_(t))return t;var R=m(t);if(R){if(C=v(t),!T)return l(t,C)}else{var B=h(t),G=B==E||"[object GeneratorFunction]"==B;if(b(t))return c(t,T);if(B==M||B==k||G&&!S){if(C=N||G?{}:g(t),!T)return N?p(t,i(C,t)):u(t,a(C,t))}else{if(!$[B])return S?t:{};C=y(t,B,T)}}I||(I=new r);var F=I.get(t);if(F)return F;I.set(t,C),w(t)?t.forEach(function(r){C.add(e(r,n,A,r,t,I))}):x(t)&&t.forEach(function(r,s){C.set(s,e(r,n,A,s,t,I))});var L=R?void 0:(D?N?f:d:N?O:P)(t);return s(L||t,function(r,s){L&&(r=t[s=r]),o(C,s,e(r,n,A,s,t,I))}),C}},9344(e,t,n){var r=n(3805),s=Object.create,o=function(){function e(){}return function(t){if(!r(t))return{};if(s)return s(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=o},909(e,t,n){var r=n(641),s=n(8329)(r);e.exports=s},6574(e,t,n){var r=n(909);e.exports=function(e,t){var n=[];return r(e,function(e,r,s){t(e,r,s)&&n.push(e)}),n}},2523(e){e.exports=function(e,t,n,r){for(var s=e.length,o=n+(r?1:-1);r?o--:++o<s;)if(t(e[o],o,e))return o;return-1}},3120(e,t,n){var r=n(4528),s=n(5891);e.exports=function e(t,n,o,a,i){var c=-1,l=t.length;for(o||(o=s),i||(i=[]);++c<l;){var u=t[c];n>0&&o(u)?n>1?e(u,n-1,o,a,i):r(i,u):a||(i[i.length]=u)}return i}},6649(e,t,n){var r=n(3221)();e.exports=r},641(e,t,n){var r=n(6649),s=n(5950);e.exports=function(e,t){return e&&r(e,t,s)}},7422(e,t,n){var r=n(1769),s=n(7797);e.exports=function(e,t){for(var n=0,o=(t=r(t,e)).length;null!=e&&n<o;)e=e[s(t[n++])];return n&&n==o?e:void 0}},2199(e,t,n){var r=n(4528),s=n(6449);e.exports=function(e,t,n){var o=t(e);return s(e)?o:r(o,n(e))}},2552(e,t,n){var r=n(1873),s=n(659),o=n(9350),a=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":a&&a in Object(e)?s(e):o(e)}},8077(e){e.exports=function(e,t){return null!=e&&t in Object(e)}},7534(e,t,n){var r=n(2552),s=n(346);e.exports=function(e){return s(e)&&"[object Arguments]"==r(e)}},270(e,t,n){var r=n(7068),s=n(346);e.exports=function e(t,n,o,a,i){return t===n||(null==t||null==n||!s(t)&&!s(n)?t!=t&&n!=n:r(t,n,o,a,e,i))}},7068(e,t,n){var r=n(7217),s=n(5911),o=n(1986),a=n(689),i=n(5861),c=n(6449),l=n(3656),u=n(7167),p="[object Arguments]",d="[object Array]",f="[object Object]",h=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,v,y,g){var m=c(e),b=c(t),x=m?d:i(e),_=b?d:i(t),w=(x=x==p?f:x)==f,P=(_=_==p?f:_)==f,O=x==_;if(O&&l(e)){if(!l(t))return!1;m=!0,w=!1}if(O&&!w)return g||(g=new r),m||u(e)?s(e,t,n,v,y,g):o(e,t,x,n,v,y,g);if(!(1&n)){var k=w&&h.call(e,"__wrapped__"),E=P&&h.call(t,"__wrapped__");if(k||E){var M=k?e.value():e,$=E?t.value():t;return g||(g=new r),y(M,$,n,v,g)}}return!!O&&(g||(g=new r),a(e,t,n,v,y,g))}},9172(e,t,n){var r=n(5861),s=n(346);e.exports=function(e){return s(e)&&"[object Map]"==r(e)}},1799(e,t,n){var r=n(7217),s=n(270);e.exports=function(e,t,n,o){var a=n.length,i=a,c=!o;if(null==e)return!i;for(e=Object(e);a--;){var l=n[a];if(c&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<i;){var u=(l=n[a])[0],p=e[u],d=l[1];if(c&&l[2]){if(void 0===p&&!(u in e))return!1}else{var f=new r;if(o)var h=o(p,d,u,e,t,f);if(!(void 0===h?s(d,p,3,o,f):h))return!1}}return!0}},5083(e,t,n){var r=n(1882),s=n(7296),o=n(3805),a=n(7473),i=/^\[object .+?Constructor\]$/,c=Function.prototype,l=Object.prototype,u=c.toString,p=l.hasOwnProperty,d=RegExp("^"+u.call(p).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!o(e)||s(e))&&(r(e)?d:i).test(a(e))}},6038(e,t,n){var r=n(5861),s=n(346);e.exports=function(e){return s(e)&&"[object Set]"==r(e)}},4901(e,t,n){var r=n(2552),s=n(294),o=n(346),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,e.exports=function(e){return o(e)&&s(e.length)&&!!a[r(e)]}},5389(e,t,n){var r=n(3663),s=n(7978),o=n(3488),a=n(6449),i=n(583);e.exports=function(e){return"function"==typeof e?e:null==e?o:"object"==typeof e?a(e)?s(e[0],e[1]):r(e):i(e)}},8984(e,t,n){var r=n(5527),s=n(3650),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return s(e);var t=[];for(var n in Object(e))o.call(e,n)&&"constructor"!=n&&t.push(n);return t}},2903(e,t,n){var r=n(3805),s=n(5527),o=n(181),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=s(e),n=[];for(var i in e)("constructor"!=i||!t&&a.call(e,i))&&n.push(i);return n}},3663(e,t,n){var r=n(1799),s=n(776),o=n(7197);e.exports=function(e){var t=s(e);return 1==t.length&&t[0][2]?o(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},7978(e,t,n){var r=n(270),s=n(8156),o=n(631),a=n(8586),i=n(756),c=n(7197),l=n(7797);e.exports=function(e,t){return a(e)&&i(t)?c(l(e),t):function(n){var a=s(n,e);return void 0===a&&a===t?o(n,e):r(t,a,3)}}},6001(e,t,n){var r=n(7420),s=n(631);e.exports=function(e,t){return r(e,t,function(t,n){return s(e,n)})}},7420(e,t,n){var r=n(7422),s=n(3170),o=n(1769);e.exports=function(e,t,n){for(var a=-1,i=t.length,c={};++a<i;){var l=t[a],u=r(e,l);n(u,l)&&s(c,o(l,e),u)}return c}},7237(e){e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},7255(e,t,n){var r=n(7422);e.exports=function(e){return function(t){return r(t,e)}}},3170(e,t,n){var r=n(6547),s=n(1769),o=n(361),a=n(3805),i=n(7797);e.exports=function(e,t,n,c){if(!a(e))return e;for(var l=-1,u=(t=s(t,e)).length,p=u-1,d=e;null!=d&&++l<u;){var f=i(t[l]),h=n;if("__proto__"===f||"constructor"===f||"prototype"===f)return e;if(l!=p){var v=d[f];void 0===(h=c?c(v,f,d):void 0)&&(h=a(v)?v:o(t[l+1])?[]:{})}r(d,f,h),d=d[f]}return e}},9570(e,t,n){var r=n(7334),s=n(3243),o=n(3488),a=s?function(e,t){return s(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:o;e.exports=a},5160(e){e.exports=function(e,t,n){var r=-1,s=e.length;t<0&&(t=-t>s?0:s+t),(n=n>s?s:n)<0&&(n+=s),s=t>n?0:n-t>>>0,t>>>=0;for(var o=Array(s);++r<s;)o[r]=e[r+t];return o}},8096(e){e.exports=function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}},7556(e,t,n){var r=n(1873),s=n(4932),o=n(6449),a=n(4394),i=r?r.prototype:void 0,c=i?i.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(o(t))return s(t,e)+"";if(a(t))return c?c.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n}},4128(e,t,n){var r=n(1800),s=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(s,""):e}},7301(e){e.exports=function(e){return function(t){return e(t)}}},9219(e){e.exports=function(e,t){return e.has(t)}},1769(e,t,n){var r=n(6449),s=n(8586),o=n(1802),a=n(3222);e.exports=function(e,t){return r(e)?e:s(e,t)?[e]:o(a(e))}},9653(e,t,n){var r=n(7828);e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},3290(e,t,n){e=n.nmd(e);var r=n(9325),s=t&&!t.nodeType&&t,o=s&&e&&!e.nodeType&&e,a=o&&o.exports===s?r.Buffer:void 0,i=a?a.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=i?i(n):new e.constructor(n);return e.copy(r),r}},6169(e,t,n){var r=n(9653);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},3201(e){var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},3736(e,t,n){var r=n(1873),s=r?r.prototype:void 0,o=s?s.valueOf:void 0;e.exports=function(e){return o?Object(o.call(e)):{}}},1961(e,t,n){var r=n(9653);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},3007(e){e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}},1791(e,t,n){var r=n(6547),s=n(3360);e.exports=function(e,t,n,o){var a=!n;n||(n={});for(var i=-1,c=t.length;++i<c;){var l=t[i],u=o?o(n[l],e[l],l,n,e):void 0;void 0===u&&(u=e[l]),a?s(n,l,u):r(n,l,u)}return n}},2271(e,t,n){var r=n(1791),s=n(4664);e.exports=function(e,t){return r(e,s(e),t)}},8948(e,t,n){var r=n(1791),s=n(6375);e.exports=function(e,t){return r(e,s(e),t)}},5481(e,t,n){var r=n(9325)["__core-js_shared__"];e.exports=r},8329(e,t,n){var r=n(4894);e.exports=function(e,t){return function(n,s){if(null==n)return n;if(!r(n))return e(n,s);for(var o=n.length,a=t?o:-1,i=Object(n);(t?a--:++a<o)&&!1!==s(i[a],a,i););return n}}},3221(e){e.exports=function(e){return function(t,n,r){for(var s=-1,o=Object(t),a=r(t),i=a.length;i--;){var c=a[e?i:++s];if(!1===n(o[c],c,o))break}return t}}},2006(e,t,n){var r=n(5389),s=n(4894),o=n(5950);e.exports=function(e){return function(t,n,a){var i=Object(t);if(!s(t)){var c=r(n,3);t=o(t),n=function(e){return c(i[e],e,i)}}var l=e(t,n,a);return l>-1?i[c?t[l]:l]:void 0}}},3243(e,t,n){var r=n(6110),s=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=s},5911(e,t,n){var r=n(8859),s=n(4248),o=n(9219);e.exports=function(e,t,n,a,i,c){var l=1&n,u=e.length,p=t.length;if(u!=p&&!(l&&p>u))return!1;var d=c.get(e),f=c.get(t);if(d&&f)return d==t&&f==e;var h=-1,v=!0,y=2&n?new r:void 0;for(c.set(e,t),c.set(t,e);++h<u;){var g=e[h],m=t[h];if(a)var b=l?a(m,g,h,t,e,c):a(g,m,h,e,t,c);if(void 0!==b){if(b)continue;v=!1;break}if(y){if(!s(t,function(e,t){if(!o(y,t)&&(g===e||i(g,e,n,a,c)))return y.push(t)})){v=!1;break}}else if(g!==m&&!i(g,m,n,a,c)){v=!1;break}}return c.delete(e),c.delete(t),v}},1986(e,t,n){var r=n(1873),s=n(7828),o=n(5288),a=n(5911),i=n(317),c=n(4247),l=r?r.prototype:void 0,u=l?l.valueOf:void 0;e.exports=function(e,t,n,r,l,p,d){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!p(new s(e),new s(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return o(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var f=i;case"[object Set]":var h=1&r;if(f||(f=c),e.size!=t.size&&!h)return!1;var v=d.get(e);if(v)return v==t;r|=2,d.set(e,t);var y=a(f(e),f(t),r,l,p,d);return d.delete(e),y;case"[object Symbol]":if(u)return u.call(e)==u.call(t)}return!1}},689(e,t,n){var r=n(2),s=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,o,a,i){var c=1&n,l=r(e),u=l.length;if(u!=r(t).length&&!c)return!1;for(var p=u;p--;){var d=l[p];if(!(c?d in t:s.call(t,d)))return!1}var f=i.get(e),h=i.get(t);if(f&&h)return f==t&&h==e;var v=!0;i.set(e,t),i.set(t,e);for(var y=c;++p<u;){var g=e[d=l[p]],m=t[d];if(o)var b=c?o(m,g,d,t,e,i):o(g,m,d,e,t,i);if(!(void 0===b?g===m||a(g,m,n,o,i):b)){v=!1;break}y||(y="constructor"==d)}if(v&&!y){var x=e.constructor,_=t.constructor;x==_||!("constructor"in e)||!("constructor"in t)||"function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _||(v=!1)}return i.delete(e),i.delete(t),v}},8816(e,t,n){var r=n(5970),s=n(6757),o=n(2865);e.exports=function(e){return o(s(e,void 0,r),e+"")}},4840(e,t,n){var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},2(e,t,n){var r=n(2199),s=n(4664),o=n(5950);e.exports=function(e){return r(e,o,s)}},3349(e,t,n){var r=n(2199),s=n(6375),o=n(7241);e.exports=function(e){return r(e,o,s)}},2651(e,t,n){var r=n(4218);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},776(e,t,n){var r=n(756),s=n(5950);e.exports=function(e){for(var t=s(e),n=t.length;n--;){var o=t[n],a=e[o];t[n]=[o,a,r(a)]}return t}},6110(e,t,n){var r=n(5083),s=n(392);e.exports=function(e,t){var n=s(e,t);return r(n)?n:void 0}},8879(e,t,n){var r=n(4335)(Object.getPrototypeOf,Object);e.exports=r},659(e,t,n){var r=n(1873),s=Object.prototype,o=s.hasOwnProperty,a=s.toString,i=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,i),n=e[i];try{e[i]=void 0;var r=!0}catch(e){}var s=a.call(e);return r&&(t?e[i]=n:delete e[i]),s}},4664(e,t,n){var r=n(9770),s=n(3345),o=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,i=a?function(e){return null==e?[]:(e=Object(e),r(a(e),function(t){return o.call(e,t)}))}:s;e.exports=i},6375(e,t,n){var r=n(4528),s=n(8879),o=n(4664),a=n(3345),i=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,o(e)),e=s(e);return t}:a;e.exports=i},5861(e,t,n){var r=n(5580),s=n(604),o=n(2804),a=n(6545),i=n(8303),c=n(2552),l=n(7473),u="[object Map]",p="[object Promise]",d="[object Set]",f="[object WeakMap]",h="[object DataView]",v=l(r),y=l(s),g=l(o),m=l(a),b=l(i),x=c;(r&&x(new r(new ArrayBuffer(1)))!=h||s&&x(new s)!=u||o&&x(o.resolve())!=p||a&&x(new a)!=d||i&&x(new i)!=f)&&(x=function(e){var t=c(e),n="[object Object]"==t?e.constructor:void 0,r=n?l(n):"";if(r)switch(r){case v:return h;case y:return u;case g:return p;case m:return d;case b:return f}return t}),e.exports=x},392(e){e.exports=function(e,t){return null==e?void 0:e[t]}},9326(e,t,n){var r=n(1769),s=n(2428),o=n(6449),a=n(361),i=n(294),c=n(7797);e.exports=function(e,t,n){for(var l=-1,u=(t=r(t,e)).length,p=!1;++l<u;){var d=c(t[l]);if(!(p=null!=e&&n(e,d)))break;e=e[d]}return p||++l!=u?p:!!(u=null==e?0:e.length)&&i(u)&&a(d,u)&&(o(e)||s(e))}},2032(e,t,n){var r=n(1042);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},3862(e){e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},6721(e,t,n){var r=n(1042),s=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return s.call(t,e)?t[e]:void 0}},2749(e,t,n){var r=n(1042),s=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:s.call(t,e)}},5749(e,t,n){var r=n(1042);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},6189(e){var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},7199(e,t,n){var r=n(9653),s=n(6169),o=n(3201),a=n(3736),i=n(1961);e.exports=function(e,t,n){var c=e.constructor;switch(t){case"[object ArrayBuffer]":return r(e);case"[object Boolean]":case"[object Date]":return new c(+e);case"[object DataView]":return s(e,n);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 i(e,n);case"[object Map]":case"[object Set]":return new c;case"[object Number]":case"[object String]":return new c(e);case"[object RegExp]":return o(e);case"[object Symbol]":return a(e)}}},5529(e,t,n){var r=n(9344),s=n(8879),o=n(5527);e.exports=function(e){return"function"!=typeof e.constructor||o(e)?{}:r(s(e))}},5891(e,t,n){var r=n(1873),s=n(2428),o=n(6449),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return o(e)||s(e)||!!(a&&e&&e[a])}},361(e){var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},6800(e,t,n){var r=n(5288),s=n(4894),o=n(361),a=n(3805);e.exports=function(e,t,n){if(!a(n))return!1;var i=typeof t;return!!("number"==i?s(n)&&o(t,n.length):"string"==i&&t in n)&&r(n[t],e)}},8586(e,t,n){var r=n(6449),s=n(4394),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!s(e))||a.test(e)||!o.test(e)||null!=t&&e in Object(t)}},4218(e){e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},7296(e,t,n){var r,s=n(5481),o=(r=/[^.]+$/.exec(s&&s.keys&&s.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!o&&o in e}},5527(e){var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},756(e,t,n){var r=n(3805);e.exports=function(e){return e==e&&!r(e)}},3702(e){e.exports=function(){this.__data__=[],this.size=0}},80(e,t,n){var r=n(6025),s=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0||(n==t.length-1?t.pop():s.call(t,n,1),--this.size,0))}},4739(e,t,n){var r=n(6025);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},8655(e,t,n){var r=n(6025);e.exports=function(e){return r(this.__data__,e)>-1}},1175(e,t,n){var r=n(6025);e.exports=function(e,t){var n=this.__data__,s=r(n,e);return s<0?(++this.size,n.push([e,t])):n[s][1]=t,this}},3040(e,t,n){var r=n(1549),s=n(79),o=n(604);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(o||s),string:new r}}},7670(e,t,n){var r=n(2651);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},289(e,t,n){var r=n(2651);e.exports=function(e){return r(this,e).get(e)}},4509(e,t,n){var r=n(2651);e.exports=function(e){return r(this,e).has(e)}},2949(e,t,n){var r=n(2651);e.exports=function(e,t){var n=r(this,e),s=n.size;return n.set(e,t),this.size+=n.size==s?0:1,this}},317(e){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}},7197(e){e.exports=function(e,t){return function(n){return null!=n&&n[e]===t&&(void 0!==t||e in Object(n))}}},2224(e,t,n){var r=n(104);e.exports=function(e){var t=r(e,function(e){return 500===n.size&&n.clear(),e}),n=t.cache;return t}},1042(e,t,n){var r=n(6110)(Object,"create");e.exports=r},3650(e,t,n){var r=n(4335)(Object.keys,Object);e.exports=r},181(e){e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},6009(e,t,n){e=n.nmd(e);var r=n(4840),s=t&&!t.nodeType&&t,o=s&&e&&!e.nodeType&&e,a=o&&o.exports===s&&r.process,i=function(){try{var e=o&&o.require&&o.require("util").types;return e||a&&a.binding&&a.binding("util")}catch(e){}}();e.exports=i},9350(e){var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},4335(e){e.exports=function(e,t){return function(n){return e(t(n))}}},6757(e,t,n){var r=n(1033),s=Math.max;e.exports=function(e,t,n){return t=s(void 0===t?e.length-1:t,0),function(){for(var o=arguments,a=-1,i=s(o.length-t,0),c=Array(i);++a<i;)c[a]=o[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=o[a];return l[t]=n(c),r(e,this,l)}}},9325(e,t,n){var r=n(4840),s="object"==typeof self&&self&&self.Object===Object&&self,o=r||s||Function("return this")();e.exports=o},1380(e){e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},1459(e){e.exports=function(e){return this.__data__.has(e)}},4247(e){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}},2865(e,t,n){var r=n(9570),s=n(1811)(r);e.exports=s},1811(e){var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var s=t(),o=16-(s-r);if(r=s,o>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},1420(e,t,n){var r=n(79);e.exports=function(){this.__data__=new r,this.size=0}},938(e){e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},3605(e){e.exports=function(e){return this.__data__.get(e)}},9817(e){e.exports=function(e){return this.__data__.has(e)}},945(e,t,n){var r=n(79),s=n(604),o=n(3661);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!s||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new o(a)}return n.set(e,t),this.size=n.size,this}},1802(e,t,n){var r=n(2224),s=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,o=/\\(\\)?/g,a=r(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(s,function(e,n,r,s){t.push(r?s.replace(o,"$1"):n||e)}),t});e.exports=a},7797(e,t,n){var r=n(4394);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}},7473(e){var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},1800(e){var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},1013(e,t,n){var r=n(5160),s=n(6800),o=n(1489),a=Math.ceil,i=Math.max;e.exports=function(e,t,n){t=(n?s(e,t,n):void 0===t)?1:i(o(t),0);var c=null==e?0:e.length;if(!c||t<1)return[];for(var l=0,u=0,p=Array(a(c/t));l<c;)p[u++]=r(e,l,l+=t);return p}},8055(e,t,n){var r=n(9999);e.exports=function(e){return r(e,5)}},7334(e){e.exports=function(e){return function(){return e}}},5288(e){e.exports=function(e,t){return e===t||e!=e&&t!=t}},7612(e,t,n){var r=n(9770),s=n(6574),o=n(5389),a=n(6449);e.exports=function(e,t){return(a(e)?r:s)(e,o(t,3))}},7309(e,t,n){var r=n(2006)(n(4713));e.exports=r},4713(e,t,n){var r=n(2523),s=n(5389),o=n(1489),a=Math.max;e.exports=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var c=null==n?0:o(n);return c<0&&(c=a(i+c,0)),r(e,s(t,3),c)}},5970(e,t,n){var r=n(3120);e.exports=function(e){return null!=e&&e.length?r(e,1):[]}},8156(e,t,n){var r=n(7422);e.exports=function(e,t,n){var s=null==e?void 0:r(e,t);return void 0===s?n:s}},631(e,t,n){var r=n(8077),s=n(9326);e.exports=function(e,t){return null!=e&&s(e,t,r)}},3488(e){e.exports=function(e){return e}},2428(e,t,n){var r=n(7534),s=n(346),o=Object.prototype,a=o.hasOwnProperty,i=o.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(e){return s(e)&&a.call(e,"callee")&&!i.call(e,"callee")};e.exports=c},6449(e){var t=Array.isArray;e.exports=t},4894(e,t,n){var r=n(1882),s=n(294);e.exports=function(e){return null!=e&&s(e.length)&&!r(e)}},3656(e,t,n){e=n.nmd(e);var r=n(9325),s=n(9935),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,i=a&&a.exports===o?r.Buffer:void 0,c=(i?i.isBuffer:void 0)||s;e.exports=c},1882(e,t,n){var r=n(2552),s=n(3805);e.exports=function(e){if(!s(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},294(e){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},7730(e,t,n){var r=n(9172),s=n(7301),o=n(6009),a=o&&o.isMap,i=a?s(a):r;e.exports=i},3805(e){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},346(e){e.exports=function(e){return null!=e&&"object"==typeof e}},1331(e,t,n){var r=n(2552),s=n(8879),o=n(346),a=Function.prototype,i=Object.prototype,c=a.toString,l=i.hasOwnProperty,u=c.call(Object);e.exports=function(e){if(!o(e)||"[object Object]"!=r(e))return!1;var t=s(e);if(null===t)return!0;var n=l.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&c.call(n)==u}},8440(e,t,n){var r=n(6038),s=n(7301),o=n(6009),a=o&&o.isSet,i=a?s(a):r;e.exports=i},4394(e,t,n){var r=n(2552),s=n(346);e.exports=function(e){return"symbol"==typeof e||s(e)&&"[object Symbol]"==r(e)}},7167(e,t,n){var r=n(4901),s=n(7301),o=n(6009),a=o&&o.isTypedArray,i=a?s(a):r;e.exports=i},5950(e,t,n){var r=n(695),s=n(8984),o=n(4894);e.exports=function(e){return o(e)?r(e):s(e)}},7241(e,t,n){var r=n(695),s=n(2903),o=n(4894);e.exports=function(e){return o(e)?r(e,!0):s(e)}},1505(e,t,n){var r=n(9999),s=n(3663);e.exports=function(e){return s(r(e,1))}},104(e,t,n){var r=n(3661);function s(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,s=t?t.apply(this,r):r[0],o=n.cache;if(o.has(s))return o.get(s);var a=e.apply(this,r);return n.cache=o.set(s,a)||o,a};return n.cache=new(s.Cache||r),n}s.Cache=r,e.exports=s},4383(e,t,n){var r=n(6001),s=n(8816)(function(e,t){return null==e?{}:r(e,t)});e.exports=s},583(e,t,n){var r=n(7237),s=n(7255),o=n(8586),a=n(7797);e.exports=function(e){return o(e)?r(a(e)):s(e)}},3345(e){e.exports=function(){return[]}},9935(e){e.exports=function(){return!1}},7400(e,t,n){var r=n(9374),s=1/0;e.exports=function(e){return e?(e=r(e))===s||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},1489(e,t,n){var r=n(7400);e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},9374(e,t,n){var r=n(4128),s=n(3805),o=n(4394),a=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,c=/^0o[0-7]+$/i,l=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(o(e))return NaN;if(s(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=s(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=i.test(e);return n||c.test(e)?l(e.slice(2),n?2:8):a.test(e)?NaN:+e}},3222(e,t,n){var r=n(7556);e.exports=function(e){return null==e?"":r(e)}},6585(e){var t=1e3,n=60*t,r=60*n,s=24*r,o=7*s,a=365.25*s;function i(e,t,n,r){var s=t>=1.5*n;return Math.round(e/n)+" "+r+(s?"s":"")}e.exports=function(e,c){c=c||{};var l,u,p=typeof e;if("string"===p&&e.length>0)return function(e){if(!((e=String(e)).length>100)){var i=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(i){var c=parseFloat(i[1]);switch((i[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return c*a;case"weeks":case"week":case"w":return c*o;case"days":case"day":case"d":return c*s;case"hours":case"hour":case"hrs":case"hr":case"h":return c*r;case"minutes":case"minute":case"mins":case"min":case"m":return c*n;case"seconds":case"second":case"secs":case"sec":case"s":return c*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return c;default:return}}}}(e);if("number"===p&&isFinite(e))return c.long?(l=e,(u=Math.abs(l))>=s?i(l,u,s,"day"):u>=r?i(l,u,r,"hour"):u>=n?i(l,u,n,"minute"):u>=t?i(l,u,t,"second"):l+" ms"):function(e){var o=Math.abs(e);return o>=s?Math.round(e/s)+"d":o>=r?Math.round(e/r)+"h":o>=n?Math.round(e/n)+"m":o>=t?Math.round(e/t)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},2960(e,t,n){n.r(t),n.d(t,{__DO_NOT_USE__ActionTypes:()=>i,applyMiddleware:()=>h,bindActionCreators:()=>d,combineReducers:()=>u,compose:()=>f,createStore:()=>c,legacy_createStore:()=>l});var r=n(9379);function s(e){return"Minified Redux error #"+e+"; visit https://redux.js.org/Errors?code="+e+" for the full message or use the non-minified dev environment for full errors. "}var o="function"==typeof Symbol&&Symbol.observable||"@@observable",a=function(){return Math.random().toString(36).substring(7).split("").join(".")},i={INIT:"@@redux/INIT"+a(),REPLACE:"@@redux/REPLACE"+a(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+a()}};function c(e,t,n){var r;if("function"==typeof t&&"function"==typeof n||"function"==typeof n&&"function"==typeof arguments[3])throw new Error(s(0));if("function"==typeof t&&void 0===n&&(n=t,t=void 0),void 0!==n){if("function"!=typeof n)throw new Error(s(1));return n(c)(e,t)}if("function"!=typeof e)throw new Error(s(2));var a=e,l=t,u=[],p=u,d=!1;function f(){p===u&&(p=u.slice())}function h(){if(d)throw new Error(s(3));return l}function v(e){if("function"!=typeof e)throw new Error(s(4));if(d)throw new Error(s(5));var t=!0;return f(),p.push(e),function(){if(t){if(d)throw new Error(s(6));t=!1,f();var n=p.indexOf(e);p.splice(n,1),u=null}}}function y(e){if(!function(e){if("object"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}(e))throw new Error(s(7));if(void 0===e.type)throw new Error(s(8));if(d)throw new Error(s(9));try{d=!0,l=a(l,e)}finally{d=!1}for(var t=u=p,n=0;n<t.length;n++)(0,t[n])();return e}return y({type:i.INIT}),(r={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if("function"!=typeof e)throw new Error(s(10));a=e,y({type:i.REPLACE})}})[o]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e||null===e)throw new Error(s(11));function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[o]=function(){return this},e},r}var l=c;function u(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var o=t[r];"function"==typeof e[o]&&(n[o]=e[o])}var a,c=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(void 0===n(void 0,{type:i.INIT}))throw new Error(s(12));if(void 0===n(void 0,{type:i.PROBE_UNKNOWN_ACTION()}))throw new Error(s(13))})}(n)}catch(e){a=e}return function(e,t){if(void 0===e&&(e={}),a)throw a;for(var r=!1,o={},i=0;i<c.length;i++){var l=c[i],u=n[l],p=e[l],d=u(p,t);if(void 0===d)throw t&&t.type,new Error(s(14));o[l]=d,r=r||d!==p}return(r=r||c.length!==Object.keys(e).length)?o:e}}function p(e,t){return function(){return t(e.apply(this,arguments))}}function d(e,t){if("function"==typeof e)return p(e,t);if("object"!=typeof e||null===e)throw new Error(s(16));var n={};for(var r in e){var o=e[r];"function"==typeof o&&(n[r]=p(o,t))}return n}function f(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return 0===t.length?function(e){return e}:1===t.length?t[0]:t.reduce(function(e,t){return function(){return e(t.apply(void 0,arguments))}})}function h(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){return function(){var n=e.apply(void 0,arguments),o=function(){throw new Error(s(15))},a={getState:n.getState,dispatch:function(){return o.apply(void 0,arguments)}},i=t.map(function(e){return e(a)});return o=f.apply(void 0,i)(n.dispatch),(0,r.A)((0,r.A)({},n),{},{dispatch:o})}}}},6178(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.diffAny=t.diffObjects=t.diffArrays=t.intersection=t.subtract=t.isDestructive=void 0;var r=n(2417);function s(e,t){var n={};for(var s in e)r.hasOwnProperty.call(e,s)&&void 0!==e[s]&&(n[s]=1);for(var o in t)r.hasOwnProperty.call(t,o)&&void 0!==t[o]&&delete n[o];return Object.keys(n)}function o(e){for(var t=e.length,n={},s=0;s<t;s++){var o=e[s];for(var a in o)r.hasOwnProperty.call(o,a)&&void 0!==o[a]&&(n[a]=(n[a]||0)+1)}for(var a in n)n[a]<t&&delete n[a];return Object.keys(n)}function a(e,t){return{operations:e.operations.concat(t),cost:e.cost+1}}function i(e,t,n,r){void 0===r&&(r=l);var s={"0,0":{operations:[],cost:0}},o=isNaN(e.length)||e.length<=0?0:e.length,i=isNaN(t.length)||t.length<=0?0:t.length,c=function o(i,c){var l="".concat(i,",").concat(c),u=s[l];if(void 0===u){if(i>0&&c>0&&!r(e[i-1],t[c-1],n.add(String(i-1))).length)u=o(i-1,c-1);else{var p=[];if(i>0){var d=o(i-1,c),f={op:"remove",index:i-1};p.push(a(d,f))}if(c>0){var h=o(i,c-1),v={op:"add",index:i-1,value:t[c-1]};p.push(a(h,v))}if(i>0&&c>0){var y=o(i-1,c-1),g={op:"replace",index:i-1,original:e[i-1],value:t[c-1]};p.push(a(y,g))}u=p.sort(function(e,t){return e.cost-t.cost})[0]}s[l]=u}return u}(o,i).operations;return c.reduce(function(e,t){var s=e[0],a=e[1];if(function(e){return"add"===e.op}(t)){var i=t.index+1+a,c=i<o+a?String(i):"-",l={op:t.op,path:n.add(c).toString(),value:t.value};return[s.concat(l),a+1]}if(function(e){return"remove"===e.op}(t))return l={op:t.op,path:n.add(String(t.index+a)).toString()},[s.concat(l),a-1];var u=n.add(String(t.index+a)),p=r(t.original,t.value,u);return[s.concat.apply(s,p),a]},[[],0])[0]}function c(e,t,n,r){void 0===r&&(r=l);var a=[];return s(e,t).forEach(function(e){a.push({op:"remove",path:n.add(e).toString()})}),s(t,e).forEach(function(e){a.push({op:"add",path:n.add(e).toString(),value:t[e]})}),o([e,t]).forEach(function(s){a.push.apply(a,r(e[s],t[s],n.add(s)))}),a}function l(e,t,n,s){if(void 0===s&&(s=l),e===t)return[];var o=(0,r.objectType)(e),a=(0,r.objectType)(t);return"array"==o&&"array"==a?i(e,t,n,s):"object"==o&&"object"==a?c(e,t,n,s):[{op:"replace",path:n.toString(),value:t}]}t.isDestructive=function(e){var t=e.op;return"remove"===t||"replace"===t||"copy"===t||"move"===t},t.subtract=s,t.intersection=o,t.diffArrays=i,t.diffObjects=c,t.diffAny=l},1337(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.createTests=t.createPatch=t.applyPatch=t.Pointer=void 0;var r=n(9704);Object.defineProperty(t,"Pointer",{enumerable:!0,get:function(){return r.Pointer}});var s=n(7855),o=n(6178);function a(e,t){var n=r.Pointer.fromJSON(t).evaluate(e);if(void 0!==n)return{op:"test",path:t,value:n.value}}t.applyPatch=function(e,t){return t.map(function(t){return(0,s.apply)(e,t)})},t.createPatch=function(e,t,n){var s=new r.Pointer;return(n?function(e){return function t(n,r,s){var a=e(n,r,s);return Array.isArray(a)?a:(0,o.diffAny)(n,r,s,t)}}(n):o.diffAny)(e,t,s)},t.createTests=function(e,t){var n=new Array;return t.filter(o.isDestructive).forEach(function(t){var r=a(e,t.path);if(r&&n.push(r),"from"in t){var s=a(e,t.from);s&&n.push(s)}}),n}},7855(e,t,n){var r,s=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},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 n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0}),t.apply=t.InvalidOperationError=t.test=t.copy=t.move=t.replace=t.remove=t.add=t.TestError=t.MissingError=void 0;var o=n(9704),a=n(2417),i=n(6178),c=function(e){function t(t){var n=e.call(this,"Value required at path: ".concat(t))||this;return n.path=t,n.name="MissingError",n}return s(t,e),t}(Error);t.MissingError=c;var l=function(e){function t(t,n){var r=e.call(this,"Test failed: ".concat(t," != ").concat(n))||this;return r.actual=t,r.expected=n,r.name="TestError",r}return s(t,e),t}(Error);function u(e,t,n){if(Array.isArray(e))if("-"==t)e.push(n);else{var r=parseInt(t,10);e.splice(r,0,n)}else e[t]=n}function p(e,t){if(Array.isArray(e)){var n=parseInt(t,10);e.splice(n,1)}else delete e[t]}function d(e,t){var n=o.Pointer.fromJSON(t.path).evaluate(e);return void 0===n.parent?new c(t.path):(u(n.parent,n.key,(0,a.clone)(t.value)),null)}function f(e,t){var n=o.Pointer.fromJSON(t.path).evaluate(e);return void 0===n.value?new c(t.path):(p(n.parent,n.key),null)}function h(e,t){var n=o.Pointer.fromJSON(t.path).evaluate(e);if(null===n.parent)return new c(t.path);if(Array.isArray(n.parent)){if(parseInt(n.key,10)>=n.parent.length)return new c(t.path)}else if(void 0===n.value)return new c(t.path);return n.parent[n.key]=(0,a.clone)(t.value),null}function v(e,t){var n=o.Pointer.fromJSON(t.from).evaluate(e);if(void 0===n.value)return new c(t.from);var r=o.Pointer.fromJSON(t.path).evaluate(e);return void 0===r.parent?new c(t.path):(p(n.parent,n.key),u(r.parent,r.key,n.value),null)}function y(e,t){var n=o.Pointer.fromJSON(t.from).evaluate(e);if(void 0===n.value)return new c(t.from);var r=o.Pointer.fromJSON(t.path).evaluate(e);return void 0===r.parent?new c(t.path):(u(r.parent,r.key,(0,a.clone)(n.value)),null)}function g(e,t){var n=o.Pointer.fromJSON(t.path).evaluate(e);return(0,i.diffAny)(n.value,t.value,new o.Pointer).length?new l(n.value,t.value):null}t.TestError=l,t.add=d,t.remove=f,t.replace=h,t.move=v,t.copy=y,t.test=g;var m=function(e){function t(t){var n=e.call(this,"Invalid operation: ".concat(t.op))||this;return n.operation=t,n.name="InvalidOperationError",n}return s(t,e),t}(Error);t.InvalidOperationError=m,t.apply=function(e,t){switch(t.op){case"add":return d(e,t);case"remove":return f(e,t);case"replace":return h(e,t);case"move":return v(e,t);case"copy":return y(e,t);case"test":return g(e,t)}return new m(t)}},9704(e,t){function n(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function r(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}Object.defineProperty(t,"__esModule",{value:!0}),t.Pointer=t.escapeToken=t.unescapeToken=void 0,t.unescapeToken=n,t.escapeToken=r;var s=function(){function e(e){void 0===e&&(e=[""]),this.tokens=e}return e.fromJSON=function(t){var r=t.split("/").map(n);if(""!==r[0])throw new Error("Invalid JSON Pointer: ".concat(t));return new e(r)},e.prototype.toString=function(){return this.tokens.map(r).join("/")},e.prototype.evaluate=function(e){for(var t=null,n="",r=e,s=1,o=this.tokens.length;s<o;s++)t=r,"__proto__"!=(n=this.tokens[s])&&"constructor"!=n&&"prototype"!=n&&(r=(t||{})[n]);return{parent:t,key:n,value:r}},e.prototype.get=function(e){return this.evaluate(e).value},e.prototype.set=function(e,t){var n=this.evaluate(e);n.parent&&(n.parent[n.key]=t)},e.prototype.push=function(e){this.tokens.push(e)},e.prototype.add=function(t){return new e(this.tokens.concat(String(t)))},e}();t.Pointer=s},2417(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.clone=t.objectType=t.hasOwnProperty=void 0,t.hasOwnProperty=Object.prototype.hasOwnProperty,t.objectType=function(e){return void 0===e?"undefined":null===e?"null":Array.isArray(e)?"array":typeof e},t.clone=function e(n){if(null==(r=n)||"object"!=typeof r)return n;var r;if(n.constructor==Array){for(var s=n.length,o=new Array(s),a=0;a<s;a++)o[a]=e(n[a]);return o}if(n.constructor==Date)return new Date(+n);var i={};for(var c in n)t.hasOwnProperty.call(n,c)&&(i[c]=e(n[c]));return i}},2791(e,t,n){!function(e){if(!e.setImmediate){var t,n,r,s,o,a=1,i={},c=!1,l=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,"[object process]"==={}.toString.call(e.process)?t=function(e){process.nextTick(function(){d(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(s="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(s)&&d(+t.data.slice(s.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),t=function(t){e.postMessage(s+t,"*")}):e.MessageChannel?((r=new MessageChannel).port1.onmessage=function(e){d(e.data)},t=function(e){r.port2.postMessage(e)}):l&&"onreadystatechange"in l.createElement("script")?(n=l.documentElement,t=function(e){var t=l.createElement("script");t.onreadystatechange=function(){d(e),t.onreadystatechange=null,n.removeChild(t),t=null},n.appendChild(t)}):t=function(e){setTimeout(d,0,e)},u.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var n=new Array(arguments.length-1),r=0;r<n.length;r++)n[r]=arguments[r+1];var s={callback:e,args:n};return i[a]=s,t(a),a++},u.clearImmediate=p}function p(e){delete i[e]}function d(e){if(c)setTimeout(d,0,e);else{var t=i[e];if(t){c=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{p(e),c=!1}}}}}("undefined"==typeof self?void 0===n.g?this:n.g:self)},7627(e,t,n){function r(e,t){const{duplicates:n,circular:r}=o(e),s=[...n],a=new Map(s.map(e=>[e,null])),i=!1!==t?.deduplicateInstances;return JSON.stringify(e,(e,t)=>{if("object"==typeof t&&null!==t&&!Array.isArray(t)){const e=a.get(t),n=r.has(t);if("number"==typeof e&&n)return{_instanceReference:e};if(i&&"number"==typeof e)return{_instanceReference:e};const o=u({},t);if(null===e){const e=s.indexOf(t);a.set(t,e),o._instanceReferenceId=e}else i||"number"!=typeof e||(o._instanceReference=e);return t.constructor&&t.constructor!==Object&&t.constructor!==Array&&(o._constructorName=t.constructor.name),o}if(Number.isNaN(t))return"Wacksonan";if(Object.is(t,-0))return"Wacksonegativezero";switch(t){case 1/0:return"Wacksonfinity";case-1/0:return"Wacksonegativinfinity";case void 0:return"Wacksondefined";default:return t}},t?.space)}function s(e,t){const n=JSON.parse(e,(e,t)=>{switch(t){case"Wacksonfinity":return 1/0;case"Wacksonegativinfinity":return-1/0;case"Wacksondefined":return;case"Wacksonan":return NaN;case"Wacksonegativezero":return-0;default:return t}}),r=new Map;return o(n,e=>{if(null!=e._instanceReferenceId){const t=e._instanceReferenceId;delete e._instanceReferenceId,r.set(t,e)}if(t&&e._constructorName){const n=t[e._constructorName];if(!n)throw new Error(`Constructor ${e._constructorName} is not in registry`);Object.setPrototypeOf(e,n.prototype),delete e._constructorName}}),o(n,(e,t,n)=>{if(null!=e?._instanceReference){const s=r.get(e._instanceReference);if(!s)throw new Error(`Unknown _instanceReference: ${e._instanceReference}`);t[n]=s}}),n}function o(e,t,n=new WeakSet,r=null,s=null,a=new Set,i=new Set,c=new WeakSet){if("object"!=typeof e||null===e)return{duplicates:a,circular:i};if(n.has(e))return a.add(e),void(c.has(e)&&i.add(e));if(n.add(e),c.add(e),t?.(e,r,s),Array.isArray(e))for(let r=0;r<e.length;r++)o(e[r],t,n,e,r,a,i,c);else for(const r of Object.keys(e))o(e[r],t,n,e,r,a,i,c);return c.delete(e),{duplicates:a,circular:i}}n.r(t),n.d(t,{deserialize:()=>s,serialize:()=>r})},4110(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.hasCORS=void 0;let n=!1;try{n="undefined"!=typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(e){}t.hasCORS=n},8661(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.encode=function(e){let t="";for(let n in e)e.hasOwnProperty(n)&&(t.length&&(t+="&"),t+=encodeURIComponent(n)+"="+encodeURIComponent(e[n]));return t},t.decode=function(e){let t={},n=e.split("&");for(let e=0,r=n.length;e<r;e++){let r=n[e].split("=");t[decodeURIComponent(r[0])]=decodeURIComponent(r[1])}return t}},1015(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.parse=function(e){if(e.length>8e3)throw"URI too long";const t=e,s=e.indexOf("["),o=e.indexOf("]");-1!=s&&-1!=o&&(e=e.substring(0,s)+e.substring(s,o).replace(/:/g,";")+e.substring(o,e.length));let a=n.exec(e||""),i={},c=14;for(;c--;)i[r[c]]=a[c]||"";return-1!=s&&-1!=o&&(i.source=t,i.host=i.host.substring(1,i.host.length-1).replace(/;/g,":"),i.authority=i.authority.replace("[","").replace("]","").replace(/;/g,":"),i.ipv6uri=!0),i.pathNames=function(e,t){const n=t.replace(/\/{2,9}/g,"/").split("/");return"/"!=t.slice(0,1)&&0!==t.length||n.splice(0,1),"/"==t.slice(-1)&&n.splice(n.length-1,1),n}(0,i.path),i.queryKey=function(e,t){const n={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(e,t,r){t&&(n[t]=r)}),n}(0,i.query),i};const n=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,r=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"]},4624(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.defaultBinaryType=t.globalThisShim=t.nextTick=void 0,t.createCookieJar=function(){},t.nextTick="function"==typeof Promise&&"function"==typeof Promise.resolve?e=>Promise.resolve().then(e):(e,t)=>t(e,0),t.globalThisShim="undefined"!=typeof self?self:"undefined"!=typeof window?window:Function("return this")(),t.defaultBinaryType="arraybuffer"},4956(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.WebTransport=t.WebSocket=t.NodeWebSocket=t.XHR=t.NodeXHR=t.Fetch=t.nextTick=t.parse=t.installTimerFunctions=t.transports=t.TransportError=t.Transport=t.protocol=t.SocketWithUpgrade=t.SocketWithoutUpgrade=t.Socket=void 0;const r=n(8223);Object.defineProperty(t,"Socket",{enumerable:!0,get:function(){return r.Socket}});var s=n(8223);Object.defineProperty(t,"SocketWithoutUpgrade",{enumerable:!0,get:function(){return s.SocketWithoutUpgrade}}),Object.defineProperty(t,"SocketWithUpgrade",{enumerable:!0,get:function(){return s.SocketWithUpgrade}}),t.protocol=r.Socket.protocol;var o=n(4689);Object.defineProperty(t,"Transport",{enumerable:!0,get:function(){return o.Transport}}),Object.defineProperty(t,"TransportError",{enumerable:!0,get:function(){return o.TransportError}});var a=n(9419);Object.defineProperty(t,"transports",{enumerable:!0,get:function(){return a.transports}});var i=n(5374);Object.defineProperty(t,"installTimerFunctions",{enumerable:!0,get:function(){return i.installTimerFunctions}});var c=n(1015);Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return c.parse}});var l=n(4624);Object.defineProperty(t,"nextTick",{enumerable:!0,get:function(){return l.nextTick}});var u=n(8209);Object.defineProperty(t,"Fetch",{enumerable:!0,get:function(){return u.Fetch}});var p=n(2071);Object.defineProperty(t,"NodeXHR",{enumerable:!0,get:function(){return p.XHR}});var d=n(2071);Object.defineProperty(t,"XHR",{enumerable:!0,get:function(){return d.XHR}});var f=n(8716);Object.defineProperty(t,"NodeWebSocket",{enumerable:!0,get:function(){return f.WS}});var h=n(8716);Object.defineProperty(t,"WebSocket",{enumerable:!0,get:function(){return h.WS}});var v=n(4480);Object.defineProperty(t,"WebTransport",{enumerable:!0,get:function(){return v.WT}})},8223(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Socket=t.SocketWithUpgrade=t.SocketWithoutUpgrade=void 0;const s=n(9419),o=n(5374),a=n(8661),i=n(1015),c=n(4454),l=n(6376),u=n(4624),p=(0,r(n(7833)).default)("engine.io-client:socket"),d="function"==typeof addEventListener&&"function"==typeof removeEventListener,f=[];d&&addEventListener("offline",()=>{p("closing %d connection(s) because the network was lost",f.length),f.forEach(e=>e())},!1);class h extends c.Emitter{constructor(e,t){if(super(),this.binaryType=u.defaultBinaryType,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&"object"==typeof e&&(t=e,e=null),e){const n=(0,i.parse)(e);t.hostname=n.host,t.secure="https"===n.protocol||"wss"===n.protocol,t.port=n.port,n.query&&(t.query=n.query)}else t.host&&(t.hostname=(0,i.parse)(t.host).host);(0,o.installTimerFunctions)(this,t),this.secure=null!=t.secure?t.secure:"undefined"!=typeof location&&"https:"===location.protocol,t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||("undefined"!=typeof location?location.hostname:"localhost"),this.port=t.port||("undefined"!=typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(e=>{const t=e.prototype.name;this.transports.push(t),this._transportsByName[t]=e}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"==typeof this.opts.query&&(this.opts.query=(0,a.decode)(this.opts.query)),d&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(p("adding listener for the 'offline' event"),this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},f.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=(0,u.createCookieJar)()),this._open()}createTransport(e){p('creating transport "%s"',e);const t=Object.assign({},this.opts.query);t.EIO=l.protocol,t.transport=e,this.id&&(t.sid=this.id);const n=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return p("options: %j",n),new this._transportsByName[e](n)}_open(){if(0===this.transports.length)return void this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);const e=this.opts.rememberUpgrade&&h.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket")?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){p("setting transport %s",e.name),this.transport&&(p("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",e=>this._onClose("transport close",e))}onOpen(){p("socket open"),this.readyState="open",h.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush()}_onPacket(e){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(p('socket receive: type "%s", data "%s"',e.type,e.data),this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data)}else p('packet received with socket readyState "%s"',this.readyState)}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),"closed"!==this.readyState&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();p("flushing %d packets in socket",e.length),this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;let e=1;for(let t=0;t<this.writeBuffer.length;t++){const n=this.writeBuffer[t].data;if(n&&(e+=(0,o.byteLength)(n)),t>0&&e>this._maxPayload)return p("only send %d out of %d packets",t,this.writeBuffer.length),this.writeBuffer.slice(0,t);e+=2}return p("payload size is %d (max: %d)",e,this._maxPayload),this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(p("throttled timer detected, scheduling connection close"),this._pingTimeoutTime=0,(0,u.nextTick)(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,n){return this._sendPacket("message",e,t,n),this}send(e,t,n){return this._sendPacket("message",e,t,n),this}_sendPacket(e,t,n,r){if("function"==typeof t&&(r=t,t=void 0),"function"==typeof n&&(r=n,n=null),"closing"===this.readyState||"closed"===this.readyState)return;(n=n||{}).compress=!1!==n.compress;const s={type:e,data:t,options:n};this.emitReserved("packetCreate",s),this.writeBuffer.push(s),r&&this.once("flush",r),this.flush()}close(){const e=()=>{this._onClose("forced close"),p("socket closing - telling transport to close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},n=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?n():e()}):this.upgrading?n():e()),this}_onError(e){if(p("socket error %j",e),h.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&"opening"===this.readyState)return p("trying next transport"),this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState){if(p('socket close with reason: "%s"',e),this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),d&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const e=f.indexOf(this._offlineEventListener);-1!==e&&(p("removing listener for the 'offline' event"),f.splice(e,1))}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}t.SocketWithoutUpgrade=h,h.protocol=l.protocol;class v extends h{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),"open"===this.readyState&&this.opts.upgrade){p("starting upgrade probes");for(let e=0;e<this._upgrades.length;e++)this._probe(this._upgrades[e])}}_probe(e){p('probing transport "%s"',e);let t=this.createTransport(e),n=!1;h.priorWebsocketSuccess=!1;const r=()=>{n||(p('probe transport "%s" opened',e),t.send([{type:"ping",data:"probe"}]),t.once("packet",r=>{if(!n)if("pong"===r.type&&"probe"===r.data){if(p('probe transport "%s" pong',e),this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;h.priorWebsocketSuccess="websocket"===t.name,p('pausing current transport "%s"',this.transport.name),this.transport.pause(()=>{n||"closed"!==this.readyState&&(p("changing transport and sending upgrade packet"),l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{p('probe transport "%s" failed',e);const n=new Error("probe error");n.transport=t.name,this.emitReserved("upgradeError",n)}}))};function s(){n||(n=!0,l(),t.close(),t=null)}const o=n=>{const r=new Error("probe error: "+n);r.transport=t.name,s(),p('probe transport "%s" failed because of error: %s',e,n),this.emitReserved("upgradeError",r)};function a(){o("transport closed")}function i(){o("socket closed")}function c(e){t&&e.name!==t.name&&(p('"%s" works - aborting "%s"',e.name,t.name),s())}const l=()=>{t.removeListener("open",r),t.removeListener("error",o),t.removeListener("close",a),this.off("close",i),this.off("upgrading",c)};t.once("open",r),t.once("error",o),t.once("close",a),this.once("close",i),this.once("upgrading",c),-1!==this._upgrades.indexOf("webtransport")&&"webtransport"!==e?this.setTimeoutFn(()=>{n||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let n=0;n<e.length;n++)~this.transports.indexOf(e[n])&&t.push(e[n]);return t}}t.SocketWithUpgrade=v,t.Socket=class extends v{constructor(e,t={}){const n="object"==typeof e?e:t;(!n.transports||n.transports&&"string"==typeof n.transports[0])&&(n.transports=(n.transports||["polling","websocket","webtransport"]).map(e=>s.transports[e]).filter(e=>!!e)),super(e,n)}}},4689(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Transport=t.TransportError=void 0;const s=n(6376),o=n(4454),a=n(5374),i=n(8661),c=(0,r(n(7833)).default)("engine.io-client:transport");class l extends Error{constructor(e,t,n){super(e),this.description=t,this.context=n,this.type="TransportError"}}t.TransportError=l;class u extends o.Emitter{constructor(e){super(),this.writable=!1,(0,a.installTimerFunctions)(this,e),this.opts=e,this.query=e.query,this.socket=e.socket,this.supportsBinary=!e.forceBase64}onError(e,t,n){return super.emitReserved("error",new l(e,t,n)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this}send(e){"open"===this.readyState?this.write(e):c("transport is not open, discarding packets")}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=(0,s.decodePacket)(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return-1===e.indexOf(":")?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&443!==Number(this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""}_query(e){const t=(0,i.encode)(e);return t.length?"?"+t:""}}t.Transport=u},9419(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.transports=void 0;const r=n(2071),s=n(8716),o=n(4480);t.transports={websocket:s.WS,webtransport:o.WT,polling:r.XHR}},8209(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.Fetch=void 0;const r=n(528);class s extends r.Polling{doPoll(){this._fetch().then(e=>{if(!e.ok)return this.onError("fetch read error",e.status,e);e.text().then(e=>this.onData(e))}).catch(e=>{this.onError("fetch read error",e)})}doWrite(e,t){this._fetch(e).then(e=>{if(!e.ok)return this.onError("fetch write error",e.status,e);t()}).catch(e=>{this.onError("fetch write error",e)})}_fetch(e){var t;const n=void 0!==e,r=new Headers(this.opts.extraHeaders);return n&&r.set("content-type","text/plain;charset=UTF-8"),null===(t=this.socket._cookieJar)||void 0===t||t.appendCookies(r),fetch(this.uri(),{method:n?"POST":"GET",body:n?e:null,headers:r,credentials:this.opts.withCredentials?"include":"omit"}).then(e=>{var t;return null===(t=this.socket._cookieJar)||void 0===t||t.parseCookies(e.headers.getSetCookie()),e})}}t.Fetch=s},2071(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.XHR=t.Request=t.BaseXHR=void 0;const s=n(528),o=n(4454),a=n(5374),i=n(4624),c=n(4110),l=(0,r(n(7833)).default)("engine.io-client:polling");function u(){}class p extends s.Polling{constructor(e){if(super(e),"undefined"!=typeof location){const t="https:"===location.protocol;let n=location.port;n||(n=t?"443":"80"),this.xd="undefined"!=typeof location&&e.hostname!==location.hostname||n!==e.port}}doWrite(e,t){const n=this.request({method:"POST",data:e});n.on("success",t),n.on("error",(e,t)=>{this.onError("xhr post error",e,t)})}doPoll(){l("xhr poll");const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(e,t)=>{this.onError("xhr poll error",e,t)}),this.pollXhr=e}}t.BaseXHR=p;class d extends o.Emitter{constructor(e,t,n){super(),this.createRequest=e,(0,a.installTimerFunctions)(this,n),this._opts=n,this._method=n.method||"GET",this._uri=t,this._data=void 0!==n.data?n.data:null,this._create()}_create(){var e;const t=(0,a.pick)(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const n=this._xhr=this.createRequest(t);try{l("xhr open %s: %s",this._method,this._uri),n.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){n.setDisableHeaderCheck&&n.setDisableHeaderCheck(!0);for(let e in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(e)&&n.setRequestHeader(e,this._opts.extraHeaders[e])}}catch(e){}if("POST"===this._method)try{n.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(e){}try{n.setRequestHeader("Accept","*/*")}catch(e){}null===(e=this._opts.cookieJar)||void 0===e||e.addCookies(n),"withCredentials"in n&&(n.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(n.timeout=this._opts.requestTimeout),n.onreadystatechange=()=>{var e;3===n.readyState&&(null===(e=this._opts.cookieJar)||void 0===e||e.parseCookies(n.getResponseHeader("set-cookie"))),4===n.readyState&&(200===n.status||1223===n.status?this._onLoad():this.setTimeoutFn(()=>{this._onError("number"==typeof n.status?n.status:0)},0))},l("xhr data %s",this._data),n.send(this._data)}catch(e){return void this.setTimeoutFn(()=>{this._onError(e)},0)}"undefined"!=typeof document&&(this._index=d.requestsCount++,d.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(void 0!==this._xhr&&null!==this._xhr){if(this._xhr.onreadystatechange=u,e)try{this._xhr.abort()}catch(e){}"undefined"!=typeof document&&delete d.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;null!==e&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}if(t.Request=d,d.requestsCount=0,d.requests={},"undefined"!=typeof document)if("function"==typeof attachEvent)attachEvent("onunload",f);else if("function"==typeof addEventListener){const e="onpagehide"in i.globalThisShim?"pagehide":"unload";addEventListener(e,f,!1)}function f(){for(let e in d.requests)d.requests.hasOwnProperty(e)&&d.requests[e].abort()}const h=function(){const e=v({xdomain:!1});return e&&null!==e.responseType}();function v(e){const t=e.xdomain;try{if("undefined"!=typeof XMLHttpRequest&&(!t||c.hasCORS))return new XMLHttpRequest}catch(e){}if(!t)try{return new(i.globalThisShim[["Active"].concat("Object").join("X")])("Microsoft.XMLHTTP")}catch(e){}}t.XHR=class extends p{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=h&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new d(v,this.uri(),e)}}},528(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Polling=void 0;const s=n(4689),o=n(5374),a=n(6376),i=(0,r(n(7833)).default)("engine.io-client:polling");class c extends s.Transport{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(e){this.readyState="pausing";const t=()=>{i("paused"),this.readyState="paused",e()};if(this._polling||!this.writable){let e=0;this._polling&&(i("we are currently polling - waiting to pause"),e++,this.once("pollComplete",function(){i("pre-pause polling complete"),--e||t()})),this.writable||(i("we are currently writing - waiting to pause"),e++,this.once("drain",function(){i("pre-pause writing complete"),--e||t()}))}else t()}_poll(){i("polling"),this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){i("polling got data %s",e),(0,a.decodePayload)(e,this.socket.binaryType).forEach(e=>{if("opening"===this.readyState&&"open"===e.type&&this.onOpen(),"close"===e.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(e)}),"closed"!==this.readyState&&(this._polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState?this._poll():i('ignoring poll - transport state "%s"',this.readyState))}doClose(){const e=()=>{i("writing close packet"),this.write([{type:"close"}])};"open"===this.readyState?(i("transport open - closing"),e()):(i("transport not open - deferring close"),this.once("open",e))}write(e){this.writable=!1,(0,a.encodePayload)(e,e=>{this.doWrite(e,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=(0,o.randomString)()),this.supportsBinary||t.sid||(t.b64=1),this.createUri(e,t)}}t.Polling=c},8716(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WS=t.BaseWS=void 0;const s=n(4689),o=n(5374),a=n(6376),i=n(4624),c=(0,r(n(7833)).default)("engine.io-client:websocket"),l="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();class u extends s.Transport{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,n=l?{}:(0,o.pick)(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(n.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,n)}catch(e){return this.emitReserved("error",e)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const n=e[t],r=t===e.length-1;(0,a.encodePacket)(n,this.supportsBinary,e=>{try{this.doWrite(n,e)}catch(e){c("websocket closed before onclose event")}r&&(0,i.nextTick)(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){void 0!==this.ws&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=(0,o.randomString)()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}t.BaseWS=u;const p=i.globalThisShim.WebSocket||i.globalThisShim.MozWebSocket;t.WS=class extends u{createSocket(e,t,n){return l?new p(e,t,n):t?new p(e,t):new p(e)}doWrite(e,t){this.ws.send(t)}}},4480(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WT=void 0;const s=n(4689),o=n(4624),a=n(6376),i=(0,r(n(7833)).default)("engine.io-client:webtransport");class c extends s.Transport{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{i("transport closed gracefully"),this.onClose()}).catch(e=>{i("transport closed due to %s",e),this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=(0,a.createPacketDecoderStream)(Number.MAX_SAFE_INTEGER,this.socket.binaryType),n=e.readable.pipeThrough(t).getReader(),r=(0,a.createPacketEncoderStream)();r.readable.pipeTo(e.writable),this._writer=r.writable.getWriter();const s=()=>{n.read().then(({done:e,value:t})=>{e?i("session is closed"):(i("received chunk: %o",t),this.onPacket(t),s())}).catch(e=>{i("an error occurred while reading: %s",e)})};s();const o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this._writer.write(o).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const n=e[t],r=t===e.length-1;this._writer.write(n).then(()=>{r&&(0,o.nextTick)(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;null===(e=this._transport)||void 0===e||e.close()}}t.WT=c},5374(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.pick=function(e,...t){return t.reduce((t,n)=>(e.hasOwnProperty(n)&&(t[n]=e[n]),t),{})},t.installTimerFunctions=function(e,t){t.useNativeTimers?(e.setTimeoutFn=s.bind(r.globalThisShim),e.clearTimeoutFn=o.bind(r.globalThisShim)):(e.setTimeoutFn=r.globalThisShim.setTimeout.bind(r.globalThisShim),e.clearTimeoutFn=r.globalThisShim.clearTimeout.bind(r.globalThisShim))},t.byteLength=function(e){return"string"==typeof e?function(e){let t=0,n=0;for(let r=0,s=e.length;r<s;r++)t=e.charCodeAt(r),t<128?n+=1:t<2048?n+=2:t<55296||t>=57344?n+=3:(r++,n+=4);return n}(e):Math.ceil(1.33*(e.byteLength||e.size))},t.randomString=function(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)};const r=n(4624),s=r.globalThisShim.setTimeout,o=r.globalThisShim.clearTimeout},2046(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.ERROR_PACKET=t.PACKET_TYPES_REVERSE=t.PACKET_TYPES=void 0;const n=Object.create(null);t.PACKET_TYPES=n,n.open="0",n.close="1",n.ping="2",n.pong="3",n.message="4",n.upgrade="5",n.noop="6";const r=Object.create(null);t.PACKET_TYPES_REVERSE=r,Object.keys(n).forEach(e=>{r[n[e]]=e}),t.ERROR_PACKET={type:"error",data:"parser error"}},2745(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.decode=t.encode=void 0;const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="undefined"==typeof Uint8Array?[]:new Uint8Array(256);for(let e=0;e<64;e++)r[n.charCodeAt(e)]=e;t.encode=e=>{let t,r=new Uint8Array(e),s=r.length,o="";for(t=0;t<s;t+=3)o+=n[r[t]>>2],o+=n[(3&r[t])<<4|r[t+1]>>4],o+=n[(15&r[t+1])<<2|r[t+2]>>6],o+=n[63&r[t+2]];return s%3==2?o=o.substring(0,o.length-1)+"=":s%3==1&&(o=o.substring(0,o.length-2)+"=="),o},t.decode=e=>{let t,n,s,o,a,i=.75*e.length,c=e.length,l=0;"="===e[e.length-1]&&(i--,"="===e[e.length-2]&&i--);const u=new ArrayBuffer(i),p=new Uint8Array(u);for(t=0;t<c;t+=4)n=r[e.charCodeAt(t)],s=r[e.charCodeAt(t+1)],o=r[e.charCodeAt(t+2)],a=r[e.charCodeAt(t+3)],p[l++]=n<<2|s>>4,p[l++]=(15&s)<<4|o>>2,p[l++]=(3&o)<<6|63&a;return u}},2662(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.decodePacket=void 0;const r=n(2046),s=n(2745),o="function"==typeof ArrayBuffer;t.decodePacket=(e,t)=>{if("string"!=typeof e)return{type:"message",data:i(e,t)};const n=e.charAt(0);return"b"===n?{type:"message",data:a(e.substring(1),t)}:r.PACKET_TYPES_REVERSE[n]?e.length>1?{type:r.PACKET_TYPES_REVERSE[n],data:e.substring(1)}:{type:r.PACKET_TYPES_REVERSE[n]}:r.ERROR_PACKET};const a=(e,t)=>{if(o){const n=(0,s.decode)(e);return i(n,t)}return{base64:!0,data:e}},i=(e,t)=>"blob"===t?e instanceof Blob?e:new Blob([e]):e instanceof ArrayBuffer?e:e.buffer},2686(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.encodePacket=void 0,t.encodePacketToBinary=function(e,t){return s&&e.data instanceof Blob?e.data.arrayBuffer().then(l).then(t):o&&(e.data instanceof ArrayBuffer||a(e.data))?t(l(e.data)):void i(e,!1,e=>{u||(u=new TextEncoder),t(u.encode(e))})};const r=n(2046),s="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),o="function"==typeof ArrayBuffer,a=e=>"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,i=({type:e,data:t},n,i)=>s&&t instanceof Blob?n?i(t):c(t,i):o&&(t instanceof ArrayBuffer||a(t))?n?i(t):c(new Blob([t]),i):i(r.PACKET_TYPES[e]+(t||""));t.encodePacket=i;const c=(e,t)=>{const n=new FileReader;return n.onload=function(){const e=n.result.split(",")[1];t("b"+(e||""))},n.readAsDataURL(e)};function l(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let u},6376(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.decodePayload=t.decodePacket=t.encodePayload=t.encodePacket=t.protocol=void 0,t.createPacketEncoderStream=function(){return new TransformStream({transform(e,t){(0,r.encodePacketToBinary)(e,n=>{const r=n.length;let s;if(r<126)s=new Uint8Array(1),new DataView(s.buffer).setUint8(0,r);else if(r<65536){s=new Uint8Array(3);const e=new DataView(s.buffer);e.setUint8(0,126),e.setUint16(1,r)}else{s=new Uint8Array(9);const e=new DataView(s.buffer);e.setUint8(0,127),e.setBigUint64(1,BigInt(r))}e.data&&"string"!=typeof e.data&&(s[0]|=128),t.enqueue(s),t.enqueue(n)})}})},t.createPacketDecoderStream=function(e,t){i||(i=new TextDecoder);const n=[];let r=0,a=-1,u=!1;return new TransformStream({transform(p,d){for(n.push(p);;){if(0===r){if(c(n)<1)break;const e=l(n,1);u=!(128&~e[0]),a=127&e[0],r=a<126?3:126===a?1:2}else if(1===r){if(c(n)<2)break;const e=l(n,2);a=new DataView(e.buffer,e.byteOffset,e.length).getUint16(0),r=3}else if(2===r){if(c(n)<8)break;const e=l(n,8),t=new DataView(e.buffer,e.byteOffset,e.length),s=t.getUint32(0);if(s>Math.pow(2,21)-1){d.enqueue(o.ERROR_PACKET);break}a=s*Math.pow(2,32)+t.getUint32(4),r=3}else{if(c(n)<a)break;const e=l(n,a);d.enqueue((0,s.decodePacket)(u?e:i.decode(e),t)),r=0}if(0===a||a>e){d.enqueue(o.ERROR_PACKET);break}}}})};const r=n(2686);Object.defineProperty(t,"encodePacket",{enumerable:!0,get:function(){return r.encodePacket}});const s=n(2662);Object.defineProperty(t,"decodePacket",{enumerable:!0,get:function(){return s.decodePacket}});const o=n(2046),a=String.fromCharCode(30);let i;function c(e){return e.reduce((e,t)=>e+t.length,0)}function l(e,t){if(e[0].length===t)return e.shift();const n=new Uint8Array(t);let r=0;for(let s=0;s<t;s++)n[s]=e[0][r++],r===e[0].length&&(e.shift(),r=0);return e.length&&r<e[0].length&&(e[0]=e[0].slice(r)),n}t.encodePayload=(e,t)=>{const n=e.length,s=new Array(n);let o=0;e.forEach((e,i)=>{(0,r.encodePacket)(e,!1,e=>{s[i]=e,++o===n&&t(s.join(a))})})},t.decodePayload=(e,t)=>{const n=e.split(a),r=[];for(let e=0;e<n.length;e++){const o=(0,s.decodePacket)(n[e],t);if(r.push(o),"error"===o.type)break}return r},t.protocol=4},7035(e,t){const{parse:n,stringify:r}=JSON,{keys:s}=Object,o=String,a="string",i={},c="object",l=(e,t)=>t,u=e=>e instanceof o?o(e):e,p=(e,t)=>typeof t===a?new o(t):t,d=(e,t,n,r)=>{const a=[];for(let l=s(n),{length:u}=l,p=0;p<u;p++){const s=l[p],u=n[s];if(u instanceof o){const o=e[u];typeof o!==c||t.has(o)?n[s]=r.call(n,s,o):(t.add(o),n[s]=i,a.push({k:s,a:[e,t,o,r]}))}else n[s]!==i&&(n[s]=r.call(n,s,u))}for(let{length:e}=a,t=0;t<e;t++){const{k:e,a:s}=a[t];n[e]=r.call(n,e,d.apply(null,s))}return n},f=(e,t,n)=>{const r=o(t.push(n)-1);return e.set(n,r),r},h=(e,t)=>{const r=n(e,p).map(u),s=r[0],o=t||l,a=typeof s===c&&s?d(r,new Set,s,o):s;return o.call({"":a},"",a)};t.parse=h;const v=(e,t,n)=>{const s=t&&typeof t===c?(e,n)=>""===e||-1<t.indexOf(e)?n:void 0:t||l,o=new Map,i=[],u=[];let p=+f(o,i,s.call({"":e},"",e)),d=!p;for(;p<i.length;)d=!0,u[p]=r(i[p++],h,n);return"["+u.join(",")+"]";function h(e,t){if(d)return d=!d,t;const n=s.call(this,e,t);switch(typeof n){case c:if(null===n)return n;case a:return o.get(n)||f(o,i,n)}return n}};t.stringify=v,t.toJSON=e=>n(v(e)),t.fromJSON=e=>h(r(e))},5042(e){e.exports={nanoid:(e=21)=>{let t="",n=0|e;for(;n--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64*Math.random()|0];return t},customAlphabet:(e,t=21)=>(n=t)=>{let r="",s=0|n;for(;s--;)r+=e[Math.random()*e.length|0];return r}}},7743(e,t){function n(e){e=e||{},this.ms=e.min||100,this.max=e.max||1e4,this.factor=e.factor||2,this.jitter=e.jitter>0&&e.jitter<=1?e.jitter:0,this.attempts=0}Object.defineProperty(t,"__esModule",{value:!0}),t.Backoff=n,n.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),n=Math.floor(t*this.jitter*e);e=1&Math.floor(10*t)?e+n:e-n}return 0|Math.min(e,this.max)},n.prototype.reset=function(){this.attempts=0},n.prototype.setMin=function(e){this.ms=e},n.prototype.setMax=function(e){this.max=e},n.prototype.setJitter=function(e){this.jitter=e}},8007(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WebTransport=t.WebSocket=t.NodeWebSocket=t.XHR=t.NodeXHR=t.Fetch=t.Socket=t.Manager=t.protocol=void 0,t.io=l,t.connect=l,t.default=l;const s=n(6894),o=n(3776);Object.defineProperty(t,"Manager",{enumerable:!0,get:function(){return o.Manager}});const a=n(6214);Object.defineProperty(t,"Socket",{enumerable:!0,get:function(){return a.Socket}});const i=(0,r(n(7833)).default)("socket.io-client"),c={};function l(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};const n=(0,s.url)(e,t.path||"/socket.io"),r=n.source,a=n.id,l=n.path,u=c[a]&&l in c[a].nsps;let p;return t.forceNew||t["force new connection"]||!1===t.multiplex||u?(i("ignoring socket cache for %s",r),p=new o.Manager(r,t)):(c[a]||(i("new io instance for %s",r),c[a]=new o.Manager(r,t)),p=c[a]),n.query&&!t.query&&(t.query=n.queryKey),p.socket(n.path,t)}Object.assign(l,{Manager:o.Manager,Socket:a.Socket,io:l,connect:l});var u=n(4627);Object.defineProperty(t,"protocol",{enumerable:!0,get:function(){return u.protocol}});var p=n(4956);Object.defineProperty(t,"Fetch",{enumerable:!0,get:function(){return p.Fetch}}),Object.defineProperty(t,"NodeXHR",{enumerable:!0,get:function(){return p.NodeXHR}}),Object.defineProperty(t,"XHR",{enumerable:!0,get:function(){return p.XHR}}),Object.defineProperty(t,"NodeWebSocket",{enumerable:!0,get:function(){return p.NodeWebSocket}}),Object.defineProperty(t,"WebSocket",{enumerable:!0,get:function(){return p.WebSocket}}),Object.defineProperty(t,"WebTransport",{enumerable:!0,get:function(){return p.WebTransport}}),e.exports=l},3776(e,t,n){var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var s=Object.getOwnPropertyDescriptor(t,n);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,s)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return s(t,e),t},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Manager=void 0;const i=n(4956),c=n(6214),l=o(n(4627)),u=n(5942),p=n(7743),d=n(4454),f=(0,a(n(7833)).default)("socket.io-client:manager");class h extends d.Emitter{constructor(e,t){var n;super(),this.nsps={},this.subs=[],e&&"object"==typeof e&&(t=e,e=void 0),(t=t||{}).path=t.path||"/socket.io",this.opts=t,(0,i.installTimerFunctions)(this,t),this.reconnection(!1!==t.reconnection),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor(null!==(n=t.randomizationFactor)&&void 0!==n?n:.5),this.backoff=new p.Backoff({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==t.timeout?2e4:t.timeout),this._readyState="closed",this.uri=e;const r=t.parser||l;this.encoder=new r.Encoder,this.decoder=new r.Decoder,this._autoConnect=!1!==t.autoConnect,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return void 0===e?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return void 0===e?this._reconnectionDelay:(this._reconnectionDelay=e,null===(t=this.backoff)||void 0===t||t.setMin(e),this)}randomizationFactor(e){var t;return void 0===e?this._randomizationFactor:(this._randomizationFactor=e,null===(t=this.backoff)||void 0===t||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return void 0===e?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,null===(t=this.backoff)||void 0===t||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(e){if(f("readyState %s",this._readyState),~this._readyState.indexOf("open"))return this;f("opening %s",this.uri),this.engine=new i.Socket(this.uri,this.opts);const t=this.engine,n=this;this._readyState="opening",this.skipReconnect=!1;const r=(0,u.on)(t,"open",function(){n.onopen(),e&&e()}),s=t=>{f("error"),this.cleanup(),this._readyState="closed",this.emitReserved("error",t),e?e(t):this.maybeReconnectOnOpen()},o=(0,u.on)(t,"error",s);if(!1!==this._timeout){const e=this._timeout;f("connect attempt will timeout after %d",e);const n=this.setTimeoutFn(()=>{f("connect attempt timed out after %d",e),r(),s(new Error("timeout")),t.close()},e);this.opts.autoUnref&&n.unref(),this.subs.push(()=>{this.clearTimeoutFn(n)})}return this.subs.push(r),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){f("open"),this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push((0,u.on)(e,"ping",this.onping.bind(this)),(0,u.on)(e,"data",this.ondata.bind(this)),(0,u.on)(e,"error",this.onerror.bind(this)),(0,u.on)(e,"close",this.onclose.bind(this)),(0,u.on)(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(e){this.onclose("parse error",e)}}ondecoded(e){(0,i.nextTick)(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){f("error",e),this.emitReserved("error",e)}socket(e,t){let n=this.nsps[e];return n?this._autoConnect&&!n.active&&n.connect():(n=new c.Socket(this,e,t),this.nsps[e]=n),n}_destroy(e){const t=Object.keys(this.nsps);for(const e of t)if(this.nsps[e].active)return void f("socket %s is still active, skipping close",e);this._close()}_packet(e){f("writing packet %j",e);const t=this.encoder.encode(e);for(let n=0;n<t.length;n++)this.engine.write(t[n],e.options)}cleanup(){f("cleanup"),this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){f("disconnect"),this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var n;f("closed due to %s",e),this.cleanup(),null===(n=this.engine)||void 0===n||n.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)f("reconnect failed"),this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();f("will wait %dms before reconnect attempt",t),this._reconnecting=!0;const n=this.setTimeoutFn(()=>{e.skipReconnect||(f("attempting reconnect"),this.emitReserved("reconnect_attempt",e.backoff.attempts),e.skipReconnect||e.open(t=>{t?(f("reconnect attempt error"),e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",t)):(f("reconnect success"),e.onreconnect())}))},t);this.opts.autoUnref&&n.unref(),this.subs.push(()=>{this.clearTimeoutFn(n)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}t.Manager=h},5942(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.on=function(e,t,n){return e.on(t,n),function(){e.off(t,n)}}},6214(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Socket=void 0;const s=n(4627),o=n(5942),a=n(4454),i=(0,r(n(7833)).default)("socket.io-client:socket"),c=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class l extends a.Emitter{constructor(e,t,n){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=t,n&&n.auth&&(this.auth=n.auth),this._opts=Object.assign({},n),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const e=this.io;this.subs=[(0,o.on)(e,"open",this.onopen.bind(this)),(0,o.on)(e,"packet",this.onpacket.bind(this)),(0,o.on)(e,"error",this.onerror.bind(this)),(0,o.on)(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected||(this.subEvents(),this.io._reconnecting||this.io.open(),"open"===this.io._readyState&&this.onopen()),this}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...t){var n,r,o;if(c.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(t.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(t),this;const a={type:s.PacketType.EVENT,data:t,options:{}};if(a.options.compress=!1!==this.flags.compress,"function"==typeof t[t.length-1]){const e=this.ids++;i("emitting packet with ack id %d",e);const n=t.pop();this._registerAckCallback(e,n),a.id=e}const l=null===(r=null===(n=this.io.engine)||void 0===n?void 0:n.transport)||void 0===r?void 0:r.writable,u=this.connected&&!(null===(o=this.io.engine)||void 0===o?void 0:o._hasPingExpired());return this.flags.volatile&&!l?i("discard packet as the transport is not currently writable"):u?(this.notifyOutgoingListeners(a),this.packet(a)):this.sendBuffer.push(a),this.flags={},this}_registerAckCallback(e,t){var n;const r=null!==(n=this.flags.timeout)&&void 0!==n?n:this._opts.ackTimeout;if(void 0===r)return void(this.acks[e]=t);const s=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let t=0;t<this.sendBuffer.length;t++)this.sendBuffer[t].id===e&&(i("removing packet with ack id %d from the buffer",e),this.sendBuffer.splice(t,1));i("event with ack id %d has timed out after %d ms",e,r),t.call(this,new Error("operation has timed out"))},r),o=(...e)=>{this.io.clearTimeoutFn(s),t.apply(this,e)};o.withError=!0,this.acks[e]=o}emitWithAck(e,...t){return new Promise((n,r)=>{const s=(e,t)=>e?r(e):n(t);s.withError=!0,t.push(s),this.emit(e,...t)})}_addToQueue(e){let t;"function"==typeof e[e.length-1]&&(t=e.pop());const n={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((e,...r)=>n!==this._queue[0]?i("packet [%d] already acknowledged",n.id):(null!==e?n.tryCount>this._opts.retries&&(i("packet [%d] is discarded after %d tries",n.id,n.tryCount),this._queue.shift(),t&&t(e)):(i("packet [%d] was successfully sent",n.id),this._queue.shift(),t&&t(null,...r)),n.pending=!1,this._drainQueue())),this._queue.push(n),this._drainQueue()}_drainQueue(e=!1){if(i("draining queue"),!this.connected||0===this._queue.length)return;const t=this._queue[0];!t.pending||e?(t.pending=!0,t.tryCount++,i("sending packet [%d] (try n°%d)",t.id,t.tryCount),this.flags=t.flags,this.emit.apply(this,t.args)):i("packet [%d] has already been sent and is waiting for an ack",t.id)}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){i("transport is open - connecting"),"function"==typeof this.auth?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:s.PacketType.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){i("close (%s)",e),this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(t=>String(t.id)===e)){const t=this.acks[e];delete this.acks[e],t.withError&&t.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case s.PacketType.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case s.PacketType.EVENT:case s.PacketType.BINARY_EVENT:this.onevent(e);break;case s.PacketType.ACK:case s.PacketType.BINARY_ACK:this.onack(e);break;case s.PacketType.DISCONNECT:this.ondisconnect();break;case s.PacketType.CONNECT_ERROR:this.destroy();const t=new Error(e.data.message);t.data=e.data.data,this.emitReserved("connect_error",t)}}onevent(e){const t=e.data||[];i("emitting event %j",t),null!=e.id&&(i("attaching ack callback to event"),t.push(this.ack(e.id))),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const n of t)n.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&"string"==typeof e[e.length-1]&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let n=!1;return function(...r){n||(n=!0,i("sending ack %j",r),t.packet({type:s.PacketType.ACK,id:e,data:r}))}}onack(e){const t=this.acks[e.id];"function"==typeof t?(delete this.acks[e.id],i("calling ack %s with %j",e.id,e.data),t.withError&&e.data.unshift(null),t.apply(this,e.data)):i("bad ack %s",e.id)}onconnect(e,t){i("socket connected with id %s",e),this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){i("server disconnect (%s)",this.nsp),this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&(i("performing disconnect (%s)",this.nsp),this.packet({type:s.PacketType.DISCONNECT})),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let n=0;n<t.length;n++)if(e===t[n])return t.splice(n,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){const t=this._anyOutgoingListeners;for(let n=0;n<t.length;n++)if(e===t[n])return t.splice(n,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){const t=this._anyOutgoingListeners.slice();for(const n of t)n.apply(this,e.data)}}}t.Socket=l},6894(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.url=function(e,t="",n){let r=e;n=n||"undefined"!=typeof location&&location,null==e&&(e=n.protocol+"//"+n.host),"string"==typeof e&&("/"===e.charAt(0)&&(e="/"===e.charAt(1)?n.protocol+e:n.host+e),/^(https?|wss?):\/\//.test(e)||(o("protocol-less url %s",e),e=void 0!==n?n.protocol+"//"+e:"https://"+e),o("parse %s",e),r=(0,s.parse)(e)),r.port||(/^(http|ws)$/.test(r.protocol)?r.port="80":/^(http|ws)s$/.test(r.protocol)&&(r.port="443")),r.path=r.path||"/";const a=-1!==r.host.indexOf(":")?"["+r.host+"]":r.host;return r.id=r.protocol+"://"+a+":"+r.port+t,r.href=r.protocol+"://"+a+(n&&n.port===r.port?"":":"+r.port),r};const s=n(4956),o=(0,r(n(7833)).default)("socket.io-client:url")},4926(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.deconstructPacket=function(e){const t=[],n=e.data,r=e;return r.data=s(n,t),r.attachments=t.length,{packet:r,buffers:t}},t.reconstructPacket=function(e,t){return e.data=o(e.data,t),delete e.attachments,e};const r=n(9133);function s(e,t){if(!e)return e;if((0,r.isBinary)(e)){const n={_placeholder:!0,num:t.length};return t.push(e),n}if(Array.isArray(e)){const n=new Array(e.length);for(let r=0;r<e.length;r++)n[r]=s(e[r],t);return n}if("object"==typeof e&&!(e instanceof Date)){const n={};for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=s(e[r],t));return n}return e}function o(e,t){if(!e)return e;if(e&&!0===e._placeholder){if("number"==typeof e.num&&e.num>=0&&e.num<t.length)return t[e.num];throw new Error("illegal attachments")}if(Array.isArray(e))for(let n=0;n<e.length;n++)e[n]=o(e[n],t);else if("object"==typeof e)for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(e[n]=o(e[n],t));return e}},4627(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.Decoder=t.Encoder=t.PacketType=t.protocol=void 0,t.isPacketValid=function(e){return"string"==typeof e.nsp&&(void 0===(t=e.id)||p(t))&&function(e,t){switch(e){case c.CONNECT:return void 0===t||d(t);case c.DISCONNECT:return void 0===t;case c.EVENT:return Array.isArray(t)&&("number"==typeof t[0]||"string"==typeof t[0]&&-1===i.indexOf(t[0]));case c.ACK:return Array.isArray(t);case c.CONNECT_ERROR:return"string"==typeof t||d(t);default:return!1}}(e.type,e.data);var t};const r=n(4454),s=n(4926),o=n(9133),a=(0,n(7833).default)("socket.io-parser"),i=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];var c;t.protocol=5,function(e){e[e.CONNECT=0]="CONNECT",e[e.DISCONNECT=1]="DISCONNECT",e[e.EVENT=2]="EVENT",e[e.ACK=3]="ACK",e[e.CONNECT_ERROR=4]="CONNECT_ERROR",e[e.BINARY_EVENT=5]="BINARY_EVENT",e[e.BINARY_ACK=6]="BINARY_ACK"}(c||(t.PacketType=c={})),t.Encoder=class{constructor(e){this.replacer=e}encode(e){return a("encoding packet %j",e),e.type!==c.EVENT&&e.type!==c.ACK||!(0,o.hasBinary)(e)?[this.encodeAsString(e)]:this.encodeAsBinary({type:e.type===c.EVENT?c.BINARY_EVENT:c.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id})}encodeAsString(e){let t=""+e.type;return e.type!==c.BINARY_EVENT&&e.type!==c.BINARY_ACK||(t+=e.attachments+"-"),e.nsp&&"/"!==e.nsp&&(t+=e.nsp+","),null!=e.id&&(t+=e.id),null!=e.data&&(t+=JSON.stringify(e.data,this.replacer)),a("encoded %j as %s",e,t),t}encodeAsBinary(e){const t=(0,s.deconstructPacket)(e),n=this.encodeAsString(t.packet),r=t.buffers;return r.unshift(n),r}};class l extends r.Emitter{constructor(e){super(),this.reviver=e}add(e){let t;if("string"==typeof e){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);const n=t.type===c.BINARY_EVENT;n||t.type===c.BINARY_ACK?(t.type=n?c.EVENT:c.ACK,this.reconstructor=new u(t),0===t.attachments&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else{if(!(0,o.isBinary)(e)&&!e.base64)throw new Error("Unknown type: "+e);if(!this.reconstructor)throw new Error("got binary data when not reconstructing a packet");t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t))}}decodeString(e){let t=0;const n={type:Number(e.charAt(0))};if(void 0===c[n.type])throw new Error("unknown packet type "+n.type);if(n.type===c.BINARY_EVENT||n.type===c.BINARY_ACK){const r=t+1;for(;"-"!==e.charAt(++t)&&t!=e.length;);const s=e.substring(r,t);if(s!=Number(s)||"-"!==e.charAt(t))throw new Error("Illegal attachments");n.attachments=Number(s)}if("/"===e.charAt(t+1)){const r=t+1;for(;++t&&","!==e.charAt(t)&&t!==e.length;);n.nsp=e.substring(r,t)}else n.nsp="/";const r=e.charAt(t+1);if(""!==r&&Number(r)==r){const r=t+1;for(;++t;){const n=e.charAt(t);if(null==n||Number(n)!=n){--t;break}if(t===e.length)break}n.id=Number(e.substring(r,t+1))}if(e.charAt(++t)){const r=this.tryParse(e.substr(t));if(!l.isPayloadValid(n.type,r))throw new Error("invalid payload");n.data=r}return a("decoded %s as %j",e,n),n}tryParse(e){try{return JSON.parse(e,this.reviver)}catch(e){return!1}}static isPayloadValid(e,t){switch(e){case c.CONNECT:return d(t);case c.DISCONNECT:return void 0===t;case c.CONNECT_ERROR:return"string"==typeof t||d(t);case c.EVENT:case c.BINARY_EVENT:return Array.isArray(t)&&("number"==typeof t[0]||"string"==typeof t[0]&&-1===i.indexOf(t[0]));case c.ACK:case c.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}t.Decoder=l;class u{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){const e=(0,s.reconstructPacket)(this.reconPack,this.buffers);return this.finishedReconstruction(),e}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const p=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e};function d(e){return"[object Object]"===Object.prototype.toString.call(e)}},9133(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.isBinary=a,t.hasBinary=function e(t,n){if(!t||"object"!=typeof t)return!1;if(Array.isArray(t)){for(let n=0,r=t.length;n<r;n++)if(e(t[n]))return!0;return!1}if(a(t))return!0;if(t.toJSON&&"function"==typeof t.toJSON&&1===arguments.length)return e(t.toJSON(),!0);for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&e(t[n]))return!0;return!1};const n="function"==typeof ArrayBuffer,r=Object.prototype.toString,s="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===r.call(Blob),o="function"==typeof File||"undefined"!=typeof File&&"[object FileConstructor]"===r.call(File);function a(e){return n&&(e instanceof ArrayBuffer||(e=>"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer)(e))||s&&e instanceof Blob||o&&e instanceof File}},4467(e,t,n){n.d(t,{A:()=>s});var r=n(9922);function s(e,t,n){return(t=(0,r.A)(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},9379(e,t,n){n.d(t,{A:()=>o});var r=n(4467);function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach(function(t){(0,r.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}},2327(e,t,n){n.d(t,{A:()=>s});var r=n(2284);function s(e,t){if("object"!=(0,r.A)(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var s=n.call(e,t||"default");if("object"!=(0,r.A)(s))return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}},9922(e,t,n){n.d(t,{A:()=>o});var r=n(2284),s=n(2327);function o(e){var t=(0,s.A)(e,"string");return"symbol"==(0,r.A)(t)?t:t+""}},2284(e,t,n){function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})},4454(e,t,n){function r(e){if(e)return function(e){for(var t in r.prototype)e[t]=r.prototype[t];return e}(e)}n.r(t),n.d(t,{Emitter:()=>r}),r.prototype.on=r.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},r.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},r.prototype.off=r.prototype.removeListener=r.prototype.removeAllListeners=r.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var s=0;s<r.length;s++)if((n=r[s])===t||n.fn===t){r.splice(s,1);break}return 0===r.length&&delete this._callbacks["$"+e],this},r.prototype.emit=function(e){this._callbacks=this._callbacks||{};for(var t=new Array(arguments.length-1),n=this._callbacks["$"+e],r=1;r<arguments.length;r++)t[r-1]=arguments[r];if(n){r=0;for(var s=(n=n.slice(0)).length;r<s;++r)n[r].apply(this,t)}return this},r.prototype.emitReserved=r.prototype.emit,r.prototype.listeners=function(e){return this._callbacks=this._callbacks||{},this._callbacks["$"+e]||[]},r.prototype.hasListeners=function(e){return!!this.listeners(e).length}},2016(e,t,n){n.r(t),n.d(t,{Expression:()=>j,Parser:()=>Le,default:()=>qe});var r="INUMBER",s="IOP1",o="IOP2",a="IOP3",i="IVAR",c="IVARNAME",l="IFUNCALL",u="IFUNDEF",p="IEXPR",d="IEXPREVAL",f="IMEMBER",h="IENDSTATEMENT",v="IARRAY";function y(e,t){this.type=e,this.value=null!=t?t:0}function g(e){return new y(s,e)}function m(e){return new y(o,e)}function b(e){return new y(a,e)}function x(e,t,n,l,u){for(var d,h,g,m,b=[],_=[],w=0;w<e.length;w++){var P=e[w],O=P.type;if(O===r||O===c)Array.isArray(P.value)?b.push.apply(b,x(P.value.map(function(e){return new y(r,e)}).concat(new y(v,P.value.length)),t,n,l,u)):b.push(P);else if(O===i&&u.hasOwnProperty(P.value))P=new y(r,u[P.value]),b.push(P);else if(O===o&&b.length>1)h=b.pop(),d=b.pop(),m=n[P.value],P=new y(r,m(d.value,h.value)),b.push(P);else if(O===a&&b.length>2)g=b.pop(),h=b.pop(),d=b.pop(),"?"===P.value?b.push(d.value?h.value:g.value):(m=l[P.value],P=new y(r,m(d.value,h.value,g.value)),b.push(P));else if(O===s&&b.length>0)d=b.pop(),m=t[P.value],P=new y(r,m(d.value)),b.push(P);else if(O===p){for(;b.length>0;)_.push(b.shift());_.push(new y(p,x(P.value,t,n,l,u)))}else if(O===f&&b.length>0)d=b.pop(),b.push(new y(r,d.value[P.value]));else{for(;b.length>0;)_.push(b.shift());_.push(P)}}for(;b.length>0;)_.push(b.shift());return _}function _(e,t,n){for(var r=[],c=0;c<e.length;c++){var l=e[c],u=l.type;if(u===i&&l.value===t)for(var d=0;d<n.tokens.length;d++){var f,h=n.tokens[d];f=h.type===s?g(h.value):h.type===o?m(h.value):h.type===a?b(h.value):new y(h.type,h.value),r.push(f)}else u===p?r.push(new y(p,_(l.value,t,n))):r.push(l)}return r}function w(e,t,n){var y,g,m,b,x,_,E=[];if(O(e))return k(e,n);for(var M=e.length,$=0;$<M;$++){var A=e[$],j=A.type;if(j===r||j===c)E.push(A.value);else if(j===o)g=E.pop(),y=E.pop(),"and"===A.value?E.push(!!y&&!!w(g,t,n)):"or"===A.value?E.push(!!y||!!w(g,t,n)):"="===A.value?(b=t.binaryOps[A.value],E.push(b(y,w(g,t,n),n))):(b=t.binaryOps[A.value],E.push(b(k(y,n),k(g,n))));else if(j===a)m=E.pop(),g=E.pop(),y=E.pop(),"?"===A.value?E.push(w(y?g:m,t,n)):(b=t.ternaryOps[A.value],E.push(b(k(y,n),k(g,n),k(m,n))));else if(j===i)if(A.value in t.functions)E.push(t.functions[A.value]);else if(A.value in t.unaryOps&&t.parser.isOperatorEnabled(A.value))E.push(t.unaryOps[A.value]);else{var S=n[A.value];if(void 0===S)throw new Error("undefined variable: "+A.value);E.push(S)}else if(j===s)y=E.pop(),b=t.unaryOps[A.value],E.push(b(k(y,n)));else if(j===l){for(_=A.value,x=[];_-- >0;)x.unshift(k(E.pop(),n));if(!(b=E.pop()).apply||!b.call)throw new Error(b+" is not a function");E.push(b.apply(void 0,x))}else if(j===u)E.push(function(){for(var e=E.pop(),r=[],s=A.value;s-- >0;)r.unshift(E.pop());var o=E.pop(),a=function(){for(var s=Object.assign({},n),o=0,a=r.length;o<a;o++)s[r[o]]=arguments[o];return w(e,t,s)};return Object.defineProperty(a,"name",{value:o,writable:!1}),n[o]=a,a}());else if(j===p)E.push(P(A,t));else if(j===d)E.push(A);else if(j===f)y=E.pop(),E.push(y[A.value]);else if(j===h)E.pop();else{if(j!==v)throw new Error("invalid Expression");for(_=A.value,x=[];_-- >0;)x.unshift(E.pop());E.push(x)}}if(E.length>1)throw new Error("invalid Expression (parity)");return 0===E[0]?0:k(E[0],n)}function P(e,t,n){return O(e)?e:{type:d,value:function(n){return w(e.value,t,n)}}}function O(e){return e&&e.type===d}function k(e,t){return O(e)?e.value(t):e}function E(e,t){for(var n,d,y,g,m,b,x=[],_=0;_<e.length;_++){var w=e[_],P=w.type;if(P===r)"number"==typeof w.value&&w.value<0?x.push("("+w.value+")"):Array.isArray(w.value)?x.push("["+w.value.map(M).join(", ")+"]"):x.push(M(w.value));else if(P===o)d=x.pop(),n=x.pop(),g=w.value,t?"^"===g?x.push("Math.pow("+n+", "+d+")"):"and"===g?x.push("(!!"+n+" && !!"+d+")"):"or"===g?x.push("(!!"+n+" || !!"+d+")"):"||"===g?x.push("(function(a,b){ return Array.isArray(a) && Array.isArray(b) ? a.concat(b) : String(a) + String(b); }(("+n+"),("+d+")))"):"=="===g?x.push("("+n+" === "+d+")"):"!="===g?x.push("("+n+" !== "+d+")"):"["===g?x.push(n+"[("+d+") | 0]"):x.push("("+n+" "+g+" "+d+")"):"["===g?x.push(n+"["+d+"]"):x.push("("+n+" "+g+" "+d+")");else if(P===a){if(y=x.pop(),d=x.pop(),n=x.pop(),"?"!==(g=w.value))throw new Error("invalid Expression");x.push("("+n+" ? "+d+" : "+y+")")}else if(P===i||P===c)x.push(w.value);else if(P===s)n=x.pop(),"-"===(g=w.value)||"+"===g?x.push("("+g+n+")"):t?"not"===g?x.push("(!"+n+")"):"!"===g?x.push("fac("+n+")"):x.push(g+"("+n+")"):"!"===g?x.push("("+n+"!)"):x.push("("+g+" "+n+")");else if(P===l){for(b=w.value,m=[];b-- >0;)m.unshift(x.pop());g=x.pop(),x.push(g+"("+m.join(", ")+")")}else if(P===u){for(d=x.pop(),b=w.value,m=[];b-- >0;)m.unshift(x.pop());n=x.pop(),t?x.push("("+n+" = function("+m.join(", ")+") { return "+d+" })"):x.push("("+n+"("+m.join(", ")+") = "+d+")")}else if(P===f)n=x.pop(),x.push(n+"."+w.value);else if(P===v){for(b=w.value,m=[];b-- >0;)m.unshift(x.pop());x.push("["+m.join(", ")+"]")}else if(P===p)x.push("("+E(w.value,t)+")");else if(P!==h)throw new Error("invalid Expression")}return x.length>1&&(x=t?[x.join(",")]:[x.join(";")]),String(x[0])}function M(e){return"string"==typeof e?JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029"):e}function $(e,t){for(var n=0;n<e.length;n++)if(e[n]===t)return!0;return!1}function A(e,t,n){for(var r=!!(n=n||{}).withMembers,s=null,o=0;o<e.length;o++){var a=e[o];a.type===i||a.type===c?r||$(t,a.value)?null!==s?($(t,s)||t.push(s),s=a.value):s=a.value:t.push(a.value):a.type===f&&r&&null!==s?s+="."+a.value:a.type===p?A(a.value,t,n):null!==s&&($(t,s)||t.push(s),s=null)}null===s||$(t,s)||t.push(s)}function j(e,t){this.tokens=e,this.parser=t,this.unaryOps=t.unaryOps,this.binaryOps=t.binaryOps,this.ternaryOps=t.ternaryOps,this.functions=t.functions}y.prototype.toString=function(){switch(this.type){case r:case s:case o:case a:case i:case c:case h:return this.value;case l:return"CALL "+this.value;case u:return"DEF "+this.value;case v:return"ARRAY "+this.value;case f:return"."+this.value;default:return"Invalid Instruction"}},j.prototype.simplify=function(e){return e=e||{},new j(x(this.tokens,this.unaryOps,this.binaryOps,this.ternaryOps,e),this.parser)},j.prototype.substitute=function(e,t){return t instanceof j||(t=this.parser.parse(String(t))),new j(_(this.tokens,e,t),this.parser)},j.prototype.evaluate=function(e){return e=e||{},w(this.tokens,this,e)},j.prototype.toString=function(){return E(this.tokens,!1)},j.prototype.symbols=function(e){e=e||{};var t=[];return A(this.tokens,t,e),t},j.prototype.variables=function(e){e=e||{};var t=[];A(this.tokens,t,e);var n=this.functions;return t.filter(function(e){return!(e in n)})},j.prototype.toJSFunction=function(e,t){var n=this,r=new Function(e,"with(this.functions) with (this.ternaryOps) with (this.binaryOps) with (this.unaryOps) { return "+E(this.simplify(t).tokens,!0)+"; }");return function(){return r.apply(n,arguments)}};var S="TEOF",I="TOP",C="TNUMBER",T="TSTRING",N="TPAREN",D="TBRACKET",R="TCOMMA",B="TNAME",G="TSEMICOLON";function F(e,t,n){this.type=e,this.value=t,this.index=n}function L(e,t){this.pos=0,this.current=null,this.unaryOps=e.unaryOps,this.binaryOps=e.binaryOps,this.ternaryOps=e.ternaryOps,this.consts=e.consts,this.expression=t,this.savedPosition=0,this.savedCurrent=null,this.options=e.options,this.parser=e}F.prototype.toString=function(){return this.type+": "+this.value},L.prototype.newToken=function(e,t,n){return new F(e,t,null!=n?n:this.pos)},L.prototype.save=function(){this.savedPosition=this.pos,this.savedCurrent=this.current},L.prototype.restore=function(){this.pos=this.savedPosition,this.current=this.savedCurrent},L.prototype.next=function(){return this.pos>=this.expression.length?this.newToken(S,"EOF"):this.isWhitespace()||this.isComment()?this.next():this.isRadixInteger()||this.isNumber()||this.isOperator()||this.isString()||this.isParen()||this.isBracket()||this.isComma()||this.isSemicolon()||this.isNamedOp()||this.isConst()||this.isName()?this.current:void this.parseError('Unknown character "'+this.expression.charAt(this.pos)+'"')},L.prototype.isString=function(){var e=!1,t=this.pos,n=this.expression.charAt(t);if("'"===n||'"'===n)for(var r=this.expression.indexOf(n,t+1);r>=0&&this.pos<this.expression.length;){if(this.pos=r+1,"\\"!==this.expression.charAt(r-1)){var s=this.expression.substring(t+1,r);this.current=this.newToken(T,this.unescape(s),t),e=!0;break}r=this.expression.indexOf(n,r+1)}return e},L.prototype.isParen=function(){var e=this.expression.charAt(this.pos);return("("===e||")"===e)&&(this.current=this.newToken(N,e),this.pos++,!0)},L.prototype.isBracket=function(){var e=this.expression.charAt(this.pos);return!("["!==e&&"]"!==e||!this.isOperatorEnabled("[")||(this.current=this.newToken(D,e),this.pos++,0))},L.prototype.isComma=function(){return","===this.expression.charAt(this.pos)&&(this.current=this.newToken(R,","),this.pos++,!0)},L.prototype.isSemicolon=function(){return";"===this.expression.charAt(this.pos)&&(this.current=this.newToken(G,";"),this.pos++,!0)},L.prototype.isConst=function(){for(var e=this.pos,t=e;t<this.expression.length;t++){var n=this.expression.charAt(t);if(n.toUpperCase()===n.toLowerCase()&&(t===this.pos||"_"!==n&&"."!==n&&(n<"0"||n>"9")))break}if(t>e){var r=this.expression.substring(e,t);if(r in this.consts)return this.current=this.newToken(C,this.consts[r]),this.pos+=r.length,!0}return!1},L.prototype.isNamedOp=function(){for(var e=this.pos,t=e;t<this.expression.length;t++){var n=this.expression.charAt(t);if(n.toUpperCase()===n.toLowerCase()&&(t===this.pos||"_"!==n&&(n<"0"||n>"9")))break}if(t>e){var r=this.expression.substring(e,t);if(this.isOperatorEnabled(r)&&(r in this.binaryOps||r in this.unaryOps||r in this.ternaryOps))return this.current=this.newToken(I,r),this.pos+=r.length,!0}return!1},L.prototype.isName=function(){for(var e=this.pos,t=e,n=!1;t<this.expression.length;t++){var r=this.expression.charAt(t);if(r.toUpperCase()===r.toLowerCase()){if(t===this.pos&&("$"===r||"_"===r)){"_"===r&&(n=!0);continue}if(t===this.pos||!n||"_"!==r&&(r<"0"||r>"9"))break}else n=!0}if(n){var s=this.expression.substring(e,t);return this.current=this.newToken(B,s),this.pos+=s.length,!0}return!1},L.prototype.isWhitespace=function(){for(var e=!1,t=this.expression.charAt(this.pos);!(" "!==t&&"\t"!==t&&"\n"!==t&&"\r"!==t||(e=!0,this.pos++,this.pos>=this.expression.length));)t=this.expression.charAt(this.pos);return e};var U=/^[0-9a-f]{4}$/i;function z(e,t,n){this.parser=e,this.tokens=t,this.current=null,this.nextToken=null,this.next(),this.savedCurrent=null,this.savedNextToken=null,this.allowMemberAccess=!1!==n.allowMemberAccess}L.prototype.unescape=function(e){var t=e.indexOf("\\");if(t<0)return e;for(var n=e.substring(0,t);t>=0;){var r=e.charAt(++t);switch(r){case"'":n+="'";break;case'"':n+='"';break;case"\\":n+="\\";break;case"/":n+="/";break;case"b":n+="\b";break;case"f":n+="\f";break;case"n":n+="\n";break;case"r":n+="\r";break;case"t":n+="\t";break;case"u":var s=e.substring(t+1,t+5);U.test(s)||this.parseError("Illegal escape sequence: \\u"+s),n+=String.fromCharCode(parseInt(s,16)),t+=4;break;default:throw this.parseError('Illegal escape sequence: "\\'+r+'"')}++t;var o=e.indexOf("\\",t);n+=e.substring(t,o<0?e.length:o),t=o}return n},L.prototype.isComment=function(){return"/"===this.expression.charAt(this.pos)&&"*"===this.expression.charAt(this.pos+1)&&(this.pos=this.expression.indexOf("*/",this.pos)+2,1===this.pos&&(this.pos=this.expression.length),!0)},L.prototype.isRadixInteger=function(){var e,t,n=this.pos;if(n>=this.expression.length-2||"0"!==this.expression.charAt(n))return!1;if(++n,"x"===this.expression.charAt(n))e=16,t=/^[0-9a-f]$/i,++n;else{if("b"!==this.expression.charAt(n))return!1;e=2,t=/^[01]$/i,++n}for(var r=!1,s=n;n<this.expression.length;){var o=this.expression.charAt(n);if(!t.test(o))break;n++,r=!0}return r&&(this.current=this.newToken(C,parseInt(this.expression.substring(s,n),e)),this.pos=n),r},L.prototype.isNumber=function(){for(var e,t=!1,n=this.pos,r=n,s=n,o=!1,a=!1;n<this.expression.length&&((e=this.expression.charAt(n))>="0"&&e<="9"||!o&&"."===e);)"."===e?o=!0:a=!0,n++,t=a;if(t&&(s=n),"e"===e||"E"===e){n++;for(var i=!0,c=!1;n<this.expression.length;){if(e=this.expression.charAt(n),!i||"+"!==e&&"-"!==e){if(!(e>="0"&&e<="9"))break;c=!0,i=!1}else i=!1;n++}c||(n=s)}return t?(this.current=this.newToken(C,parseFloat(this.expression.substring(r,n))),this.pos=n):this.pos=s,t},L.prototype.isOperator=function(){var e=this.pos,t=this.expression.charAt(this.pos);if("+"===t||"-"===t||"*"===t||"/"===t||"%"===t||"^"===t||"?"===t||":"===t||"."===t)this.current=this.newToken(I,t);else if("∙"===t||"•"===t)this.current=this.newToken(I,"*");else if(">"===t)"="===this.expression.charAt(this.pos+1)?(this.current=this.newToken(I,">="),this.pos++):this.current=this.newToken(I,">");else if("<"===t)"="===this.expression.charAt(this.pos+1)?(this.current=this.newToken(I,"<="),this.pos++):this.current=this.newToken(I,"<");else if("|"===t){if("|"!==this.expression.charAt(this.pos+1))return!1;this.current=this.newToken(I,"||"),this.pos++}else if("="===t)"="===this.expression.charAt(this.pos+1)?(this.current=this.newToken(I,"=="),this.pos++):this.current=this.newToken(I,t);else{if("!"!==t)return!1;"="===this.expression.charAt(this.pos+1)?(this.current=this.newToken(I,"!="),this.pos++):this.current=this.newToken(I,t)}return this.pos++,!!this.isOperatorEnabled(this.current.value)||(this.pos=e,!1)},L.prototype.isOperatorEnabled=function(e){return this.parser.isOperatorEnabled(e)},L.prototype.getCoordinates=function(){var e,t=0,n=-1;do{t++,e=this.pos-n,n=this.expression.indexOf("\n",n+1)}while(n>=0&&n<this.pos);return{line:t,column:e}},L.prototype.parseError=function(e){var t=this.getCoordinates();throw new Error("parse error ["+t.line+":"+t.column+"]: "+e)},z.prototype.next=function(){return this.current=this.nextToken,this.nextToken=this.tokens.next()},z.prototype.tokenMatches=function(e,t){return void 0===t||(Array.isArray(t)?$(t,e.value):"function"==typeof t?t(e):e.value===t)},z.prototype.save=function(){this.savedCurrent=this.current,this.savedNextToken=this.nextToken,this.tokens.save()},z.prototype.restore=function(){this.tokens.restore(),this.current=this.savedCurrent,this.nextToken=this.savedNextToken},z.prototype.accept=function(e,t){return!(this.nextToken.type!==e||!this.tokenMatches(this.nextToken,t)||(this.next(),0))},z.prototype.expect=function(e,t){if(!this.accept(e,t)){var n=this.tokens.getCoordinates();throw new Error("parse error ["+n.line+":"+n.column+"]: Expected "+(t||e))}},z.prototype.parseAtom=function(e){var t=this.tokens.unaryOps;if(this.accept(B)||this.accept(I,function(e){return e.value in t}))e.push(new y(i,this.current.value));else if(this.accept(C))e.push(new y(r,this.current.value));else if(this.accept(T))e.push(new y(r,this.current.value));else if(this.accept(N,"("))this.parseExpression(e),this.expect(N,")");else{if(!this.accept(D,"["))throw new Error("unexpected "+this.nextToken);if(this.accept(D,"]"))e.push(new y(v,0));else{var n=this.parseArrayList(e);e.push(new y(v,n))}}},z.prototype.parseExpression=function(e){var t=[];this.parseUntilEndStatement(e,t)||(this.parseVariableAssignmentExpression(t),this.parseUntilEndStatement(e,t)||this.pushExpression(e,t))},z.prototype.pushExpression=function(e,t){for(var n=0,r=t.length;n<r;n++)e.push(t[n])},z.prototype.parseUntilEndStatement=function(e,t){return!!this.accept(G)&&(!this.nextToken||this.nextToken.type===S||this.nextToken.type===N&&")"===this.nextToken.value||t.push(new y(h)),this.nextToken.type!==S&&this.parseExpression(t),e.push(new y(p,t)),!0)},z.prototype.parseArrayList=function(e){for(var t=0;!this.accept(D,"]");)for(this.parseExpression(e),++t;this.accept(R);)this.parseExpression(e),++t;return t},z.prototype.parseVariableAssignmentExpression=function(e){for(this.parseConditionalExpression(e);this.accept(I,"=");){var t=e.pop(),n=[],r=e.length-1;if(t.type!==l){if(t.type!==i&&t.type!==f)throw new Error("expected variable for assignment");this.parseVariableAssignmentExpression(n),e.push(new y(c,t.value)),e.push(new y(p,n)),e.push(m("="))}else{if(!this.tokens.isOperatorEnabled("()="))throw new Error("function definition is not permitted");for(var s=0,o=t.value+1;s<o;s++){var a=r-s;e[a].type===i&&(e[a]=new y(c,e[a].value))}this.parseVariableAssignmentExpression(n),e.push(new y(p,n)),e.push(new y(u,t.value))}}},z.prototype.parseConditionalExpression=function(e){for(this.parseOrExpression(e);this.accept(I,"?");){var t=[],n=[];this.parseConditionalExpression(t),this.expect(I,":"),this.parseConditionalExpression(n),e.push(new y(p,t)),e.push(new y(p,n)),e.push(b("?"))}},z.prototype.parseOrExpression=function(e){for(this.parseAndExpression(e);this.accept(I,"or");){var t=[];this.parseAndExpression(t),e.push(new y(p,t)),e.push(m("or"))}},z.prototype.parseAndExpression=function(e){for(this.parseComparison(e);this.accept(I,"and");){var t=[];this.parseComparison(t),e.push(new y(p,t)),e.push(m("and"))}};var q=["==","!=","<","<=",">=",">","in"];z.prototype.parseComparison=function(e){for(this.parseAddSub(e);this.accept(I,q);){var t=this.current;this.parseAddSub(e),e.push(m(t.value))}};var V=["+","-","||"];z.prototype.parseAddSub=function(e){for(this.parseTerm(e);this.accept(I,V);){var t=this.current;this.parseTerm(e),e.push(m(t.value))}};var W=["*","/","%"];function H(e,t){return Number(e)+Number(t)}function J(e,t){return e-t}function K(e,t){return e*t}function Y(e,t){return e/t}function X(e,t){return e%t}function Q(e,t){return Array.isArray(e)&&Array.isArray(t)?e.concat(t):""+e+t}function Z(e,t){return e===t}function ee(e,t){return e!==t}function te(e,t){return e>t}function ne(e,t){return e<t}function re(e,t){return e>=t}function se(e,t){return e<=t}function oe(e,t){return Boolean(e&&t)}function ae(e,t){return Boolean(e||t)}function ie(e,t){return $(t,e)}function ce(e){return(Math.exp(e)-Math.exp(-e))/2}function le(e){return(Math.exp(e)+Math.exp(-e))/2}function ue(e){return e===1/0?1:e===-1/0?-1:(Math.exp(e)-Math.exp(-e))/(Math.exp(e)+Math.exp(-e))}function pe(e){return e===-1/0?e:Math.log(e+Math.sqrt(e*e+1))}function de(e){return Math.log(e+Math.sqrt(e*e-1))}function fe(e){return Math.log((1+e)/(1-e))/2}function he(e){return Math.log(e)*Math.LOG10E}function ve(e){return-e}function ye(e){return!e}function ge(e){return e<0?Math.ceil(e):Math.floor(e)}function me(e){return Math.random()*(e||1)}function be(e){return _e(e+1)}z.prototype.parseTerm=function(e){for(this.parseFactor(e);this.accept(I,W);){var t=this.current;this.parseFactor(e),e.push(m(t.value))}},z.prototype.parseFactor=function(e){var t=this.tokens.unaryOps;if(this.save(),this.accept(I,function(e){return e.value in t})){if("-"!==this.current.value&&"+"!==this.current.value){if(this.nextToken.type===N&&"("===this.nextToken.value)return this.restore(),void this.parseExponential(e);if(this.nextToken.type===G||this.nextToken.type===R||this.nextToken.type===S||this.nextToken.type===N&&")"===this.nextToken.value)return this.restore(),void this.parseAtom(e)}var n=this.current;this.parseFactor(e),e.push(g(n.value))}else this.parseExponential(e)},z.prototype.parseExponential=function(e){for(this.parsePostfixExpression(e);this.accept(I,"^");)this.parseFactor(e),e.push(m("^"))},z.prototype.parsePostfixExpression=function(e){for(this.parseFunctionCall(e);this.accept(I,"!");)e.push(g("!"))},z.prototype.parseFunctionCall=function(e){var t=this.tokens.unaryOps;if(this.accept(I,function(e){return e.value in t})){var n=this.current;this.parseAtom(e),e.push(g(n.value))}else for(this.parseMemberExpression(e);this.accept(N,"(");)if(this.accept(N,")"))e.push(new y(l,0));else{var r=this.parseArgumentList(e);e.push(new y(l,r))}},z.prototype.parseArgumentList=function(e){for(var t=0;!this.accept(N,")");)for(this.parseExpression(e),++t;this.accept(R);)this.parseExpression(e),++t;return t},z.prototype.parseMemberExpression=function(e){for(this.parseAtom(e);this.accept(I,".")||this.accept(D,"[");){var t=this.current;if("."===t.value){if(!this.allowMemberAccess)throw new Error('unexpected ".", member access is not permitted');this.expect(B),e.push(new y(f,this.current.value))}else{if("["!==t.value)throw new Error("unexpected symbol: "+t.value);if(!this.tokens.isOperatorEnabled("["))throw new Error('unexpected "[]", arrays are disabled');this.parseExpression(e),this.expect(D,"]"),e.push(m("["))}}};var xe=[.9999999999999971,57.15623566586292,-59.59796035547549,14.136097974741746,-.4919138160976202,3399464998481189e-20,4652362892704858e-20,-9837447530487956e-20,.0001580887032249125,-.00021026444172410488,.00021743961811521265,-.0001643181065367639,8441822398385275e-20,-26190838401581408e-21,36899182659531625e-22];function _e(e){var t,n;if(function(e){return isFinite(e)&&e===Math.round(e)}(e)){if(e<=0)return isFinite(e)?1/0:NaN;if(e>171)return 1/0;for(var r=e-2,s=e-1;r>1;)s*=r,r--;return 0===s&&(s=1),s}if(e<.5)return Math.PI/(Math.sin(Math.PI*e)*_e(1-e));if(e>=171.35)return 1/0;if(e>85){var o=e*e,a=o*e,i=a*e,c=i*e;return Math.sqrt(2*Math.PI/e)*Math.pow(e/Math.E,e)*(1+1/(12*e)+1/(288*o)-139/(51840*a)-571/(2488320*i)+163879/(209018880*c)+5246819/(75246796800*c*e))}--e,n=xe[0];for(var l=1;l<xe.length;++l)n+=xe[l]/(e+l);return t=e+4.7421875+.5,Math.sqrt(2*Math.PI)*Math.pow(t,e+.5)*Math.exp(-t)*n}function we(e){return Array.isArray(e)?e.length:String(e).length}function Pe(){for(var e=0,t=0,n=0;n<arguments.length;n++){var r,s=Math.abs(arguments[n]);t<s?(e=e*(r=t/s)*r+1,t=s):e+=s>0?(r=s/t)*r:s}return t===1/0?1/0:t*Math.sqrt(e)}function Oe(e,t,n){return e?t:n}function ke(e,t){return void 0===t||0===+t?Math.round(e):(e=+e,t=-+t,isNaN(e)||"number"!=typeof t||t%1!=0?NaN:(e=e.toString().split("e"),+((e=(e=Math.round(+(e[0]+"e"+(e[1]?+e[1]-t:-t)))).toString().split("e"))[0]+"e"+(e[1]?+e[1]+t:t))))}function Ee(e,t,n){return n&&(n[e]=t),t}function Me(e,t){return e[0|t]}function $e(e){return 1===arguments.length&&Array.isArray(e)?Math.max.apply(Math,e):Math.max.apply(Math,arguments)}function Ae(e){return 1===arguments.length&&Array.isArray(e)?Math.min.apply(Math,e):Math.min.apply(Math,arguments)}function je(e,t){if("function"!=typeof e)throw new Error("First argument to map is not a function");if(!Array.isArray(t))throw new Error("Second argument to map is not an array");return t.map(function(t,n){return e(t,n)})}function Se(e,t,n){if("function"!=typeof e)throw new Error("First argument to fold is not a function");if(!Array.isArray(n))throw new Error("Second argument to fold is not an array");return n.reduce(function(t,n,r){return e(t,n,r)},t)}function Ie(e,t){if("function"!=typeof e)throw new Error("First argument to filter is not a function");if(!Array.isArray(t))throw new Error("Second argument to filter is not an array");return t.filter(function(t,n){return e(t,n)})}function Ce(e,t){if(!Array.isArray(t)&&"string"!=typeof t)throw new Error("Second argument to indexOf is not a string or array");return t.indexOf(e)}function Te(e,t){if(!Array.isArray(t))throw new Error("Second argument to join is not an array");return t.join(e)}function Ne(e){return(e>0)-(e<0)||+e}var De=1/3;function Re(e){return e<0?-Math.pow(-e,De):Math.pow(e,De)}function Be(e){return Math.exp(e)-1}function Ge(e){return Math.log(1+e)}function Fe(e){return Math.log(e)/Math.LN2}function Le(e){this.options=e||{},this.unaryOps={sin:Math.sin,cos:Math.cos,tan:Math.tan,asin:Math.asin,acos:Math.acos,atan:Math.atan,sinh:Math.sinh||ce,cosh:Math.cosh||le,tanh:Math.tanh||ue,asinh:Math.asinh||pe,acosh:Math.acosh||de,atanh:Math.atanh||fe,sqrt:Math.sqrt,cbrt:Math.cbrt||Re,log:Math.log,log2:Math.log2||Fe,ln:Math.log,lg:Math.log10||he,log10:Math.log10||he,expm1:Math.expm1||Be,log1p:Math.log1p||Ge,abs:Math.abs,ceil:Math.ceil,floor:Math.floor,round:Math.round,trunc:Math.trunc||ge,"-":ve,"+":Number,exp:Math.exp,not:ye,length:we,"!":be,sign:Math.sign||Ne},this.binaryOps={"+":H,"-":J,"*":K,"/":Y,"%":X,"^":Math.pow,"||":Q,"==":Z,"!=":ee,">":te,"<":ne,">=":re,"<=":se,and:oe,or:ae,in:ie,"=":Ee,"[":Me},this.ternaryOps={"?":Oe},this.functions={random:me,fac:be,min:Ae,max:$e,hypot:Math.hypot||Pe,pyt:Math.hypot||Pe,pow:Math.pow,atan2:Math.atan2,if:Oe,gamma:_e,roundTo:ke,map:je,fold:Se,filter:Ie,indexOf:Ce,join:Te},this.consts={E:Math.E,PI:Math.PI,true:!0,false:!1}}Le.prototype.parse=function(e){var t=[],n=new z(this,new L(this,e),{allowMemberAccess:this.options.allowMemberAccess});return n.parseExpression(t),n.expect(S,"EOF"),new j(t,this)},Le.prototype.evaluate=function(e,t){return this.parse(e).evaluate(t)};var Ue=new Le;Le.parse=function(e){return Ue.parse(e)},Le.evaluate=function(e,t){return Ue.parse(e).evaluate(t)};var ze={"+":"add","-":"subtract","*":"multiply","/":"divide","%":"remainder","^":"power","!":"factorial","<":"comparison",">":"comparison","<=":"comparison",">=":"comparison","==":"comparison","!=":"comparison","||":"concatenate",and:"logical",or:"logical",not:"logical","?":"conditional",":":"conditional","=":"assignment","[":"array","()=":"fndef"};Le.prototype.isOperatorEnabled=function(e){var t=function(e){return ze.hasOwnProperty(e)?ze[e]:e}(e),n=this.options.operators||{};return!(t in n)||!!n[t]};const qe={Parser:Le,Expression:j}}},t={};function n(r){var s=t[r];if(void 0!==s)return s.exports;var o=t[r]={id:r,loaded:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var r={};return(()=>{var e=r;Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Client",{enumerable:!0,get:function(){return s.Client}}),Object.defineProperty(e,"gameFactory",{enumerable:!0,get:function(){return o.default}});var t,s=n(4245),o=(t=n(4913))&&t.__esModule?t:{default:t}})(),r})(),d.exports=O()),E=a({__proto__:null,default:i(k)},[k]);const M=r({clickTarget:()=>{}});function $({gameConnection:n,children:r,isSpectator:s}){return t(()=>{0===n.state._stateID&&n.reset()},[n.state._stateID]),e.createElement(M.Provider,{value:{clickTarget:e=>{s||n.doStep(e)},undoStep:()=>{n.undoStep()},allClickable:n.optimisticWinner||s?new Set:n.allClickable,currentMoveTargets:n.optimisticWinner||s?[]:n.moveBuilder.targets}},r)}const A=()=>n(M);function j({grid:t}){const{width:n,height:r,spaces:s}=t.attributes;return e.createElement("div",{className:"grid",style:{display:"inline-grid",width:"100%",gridTemplateColumns:`repeat(${n}, 1fr)`,gridTemplateRows:`repeat(${r}, 1fr)`}},s.map((t,n)=>e.createElement("div",{key:n,className:"grid__cell"},e.createElement(I,{entity:t}))))}function S({space:t}){const{clickTarget:n,allClickable:r,currentMoveTargets:s}=A(),{entities:o,entityId:a}=t.attributes,i=[...r].map(e=>e.entityId).includes(a),c=s?.map(e=>e.entityId).includes(a);return e.createElement("a",{className:["space",i&&"space--clickable",c&&"space--targeted"].filter(Boolean).join(" "),onClick:()=>n(t),style:{display:"inline-block",flex:"1"}},e.createElement("div",{className:"space__entity-grid",style:{display:"flex",height:"100%",width:"100%",flexWrap:"wrap"}},Array.from({length:o.length},(t,n)=>e.createElement("div",{className:"space__entity-grid__cell",style:{display:"inline-block"},key:n},e.createElement(I,{entity:o[n]}))),!o.length&&t.attributes.name))}function I({entity:t}){const{clickTarget:n,allClickable:r}=A(),s=r.has(t),o=t.attributes;switch(o.type){case"Grid":return e.createElement(j,{grid:t,isClickable:s});case"Space":return e.createElement(S,{space:t,isClickable:s});default:return e.createElement("div",{onClick:e=>{s&&(e.stopPropagation(),n(t))},className:["entity",o.player&&`player-${o.player}`,r.has(t)&&"entity--clickable"].filter(Boolean).join(" ")},t.rule.displayProperties?.map((n,r)=>e.createElement("div",{key:r},n,": ",t.attributes[n]?.toString())))}}function C(){const{clickTarget:t,allClickable:n,undoStep:r,currentMoveTargets:s}=A(),o=[...n].filter(e=>e.abstract);return e.createElement("div",{style:{position:"relative"}},e.createElement("button",{style:{visibility:"hidden"},className:"button button--style-b button--x-small abstract-choices__choice"},"Spacer"),e.createElement("div",{style:{position:"absolute",top:0,width:"100%"}},!!s.length&&e.createElement("button",{className:"button button--style-c button--x-small abstract-choices__choice abstract-choices__choice--undo",onClick:r},"Undo"),o.map((n,r)=>e.createElement("button",{key:r,className:"button button--style-b button--x-small abstract-choices__choice",onClick:()=>t(n)},n.value))))}function T({gameConnection:t}){const n=t.client.matchData,r=t.state.ctx.gameover?.winner,s=t.state.ctx.gameover?.draw;let o="";return s?o="Draw!":n&&r?o=`${n[r].name} Wins!`:r&&(o=`Player ${r} Wins!`),t.state.ctx.gameover&&e.createElement("div",{className:"game-status"},o)}function N({gameConnection:t,loading:n,isSpectator:r}){const s=t?.getState?.().state.G;return s?e.createElement($,{gameConnection:t,isSpectator:r},e.createElement("div",{className:"game"},e.createElement(C,null),e.createElement("div",{className:"shared-board",style:{width:"100%",display:"flex",flexWrap:"wrap",justifyContent:"center",alignItems:"center",gap:"1em"}},s.sharedBoard.entities.map((t,n)=>e.createElement(I,{key:n,entity:t}))),s.personalBoards&&e.createElement("div",{className:"personal-boards"},s.personalBoards.map((t,n)=>e.createElement("div",{key:n,className:"personal-board",style:{width:"100%",display:"grid",gridAutoFlow:"column",gridAutoRows:"1fr",gap:"1em"}},t.entities.map((t,n)=>e.createElement(I,{key:n,entity:t}))))),e.createElement(T,{gameConnection:t}))):n}console.log("BoardGameEngine",E);const D=k.Client,R=({server:e,gameId:n,gameRules:r,gameName:a,boardgameIOGame:i,boardgamePlayerID:c,clientToken:l,numPlayers:u,debug:p,singlePlayer:d=!1,enabled:f=!0})=>{const[h,v]=s(e=>e+1,0),[y,g]=o(null);return t(()=>{if(!((r||i)&&(d||n&&l&&f&&e)))return;const t=new D({server:e,numPlayers:u,onClientUpdate:()=>{v()},debug:p,gameId:n,gameRules:r,boardgameIOGame:i,gameName:a,boardgamePlayerID:c,clientToken:l,singlePlayer:d});return t.connect(),g(t),()=>{y?.client?.stop(),g(null)}},[n,c,l,r,i,f]),y?Object.assign(y,y?.getState?.()):{}},B=k.Client;export{B as Client,N as Game,R as useGameserverConnection};
|
|
15
|
+
***************************************************************************** */function Le(e){let{delay:t=0,duration:n=400,easing:r=Fe,x:s=0,y:o=0,opacity:a=0}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=getComputedStyle(e),c=+i.opacity,l="none"===i.transform?"":i.transform,u=c*(1-a);return{delay:t,duration:n,easing:r,css:(e,t)=>`\n\t\t\ttransform: ${l} translate(${(1-e)*s}px, ${(1-e)*o}px);\n\t\t\topacity: ${c-u*t}`}}function Ue(e){var{fallback:t}=e,n=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var s=0;for(r=Object.getOwnPropertySymbols(e);s<r.length;s++)t.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(e,r[s])&&(n[r[s]]=e[r[s]])}return n}(e,["fallback"]);const r=new Map,s=new Map;function o(e,r,s){return(o,a)=>(e.set(a.key,{rect:o.getBoundingClientRect()}),()=>{if(r.has(a.key)){const{rect:e}=r.get(a.key);return r.delete(a.key),function(e,t,r){const{delay:s=0,duration:o=e=>30*Math.sqrt(e),easing:a=Fe}=u(u({},n),r),i=t.getBoundingClientRect(),c=e.left-i.left,l=e.top-i.top,p=e.width/i.width,d=e.height/i.height,f=Math.sqrt(c*c+l*l),v=getComputedStyle(t),y="none"===v.transform?"":v.transform,g=+v.opacity;return{delay:s,duration:h(o)?o(f):o,easing:a,css:(e,t)=>`\n\t\t\t\topacity: ${e*g};\n\t\t\t\ttransform-origin: top left;\n\t\t\t\ttransform: ${y} translate(${t*c}px,${t*l}px) scale(${e+(1-e)*p}, ${e+(1-e)*d});\n\t\t\t`}}(e,o,a)}return e.delete(a.key),t&&t(o,a,s)})}return[o(s,r,!1),o(r,s,!0)]}function ze(e){$(e,"svelte-c8tyih","svg.svelte-c8tyih{stroke:currentColor;fill:currentColor;stroke-width:0;width:100%;height:auto;max-height:100%}")}function qe(e){let t,n;return{c(){t=D("title"),n=R(e[0])},m(e,r){I(e,t,r),M(t,n)},p(e,t){1&t&&U(n,e[0])},d(e){e&&C(t)}}}function Ve(e){let t,n,r,s=e[0]&&qe(e);const o=e[3].default,a=function(e,t,n,r){if(e){const s=m(e,t,n,r);return e[0](s)}}(o,e,e[2],null);return{c(){t=D("svg"),s&&s.c(),n=G(),a&&a.c(),L(t,"xmlns","http://www.w3.org/2000/svg"),L(t,"viewBox",e[1]),L(t,"class","svelte-c8tyih")},m(e,o){I(e,t,o),s&&s.m(t,null),M(t,n),a&&a.m(t,null),r=!0},p(e,i){let[c]=i;e[0]?s?s.p(e,c):(s=qe(e),s.c(),s.m(t,n)):s&&(s.d(1),s=null),a&&a.p&&(!r||4&c)&&function(e,t,n,r,s,o){if(s){const a=m(t,n,r,o);e.p(a,s)}}(a,o,e,e[2],r?function(e,t,n,r){if(e[2]&&r){const s=e[2](r(n));if(void 0===t.dirty)return s;if("object"==typeof s){const e=[],n=Math.max(t.dirty.length,s.length);for(let r=0;r<n;r+=1)e[r]=t.dirty[r]|s[r];return e}return t.dirty|s}return t.dirty}(o,e[2],c,null):function(e){if(e.ctx.length>32){const t=[],n=e.ctx.length/32;for(let e=0;e<n;e++)t[e]=-1;return t}return-1}(e[2]),null),(!r||2&c)&&L(t,"viewBox",e[1])},i(e){r||(Oe(a,e),r=!0)},o(e){ke(a,e),r=!1},d(e){e&&C(t),s&&s.d(),a&&a.d(e)}}}function We(e,t,n){let{$$slots:r={},$$scope:s}=t,{title:o=null}=t,{viewBox:a}=t;return e.$$set=e=>{"title"in e&&n(0,o=e.title),"viewBox"in e&&n(1,a=e.viewBox),"$$scope"in e&&n(2,s=e.$$scope)},[o,a,s,r]}class He extends Re{constructor(e){super(),De(this,e,We,Ve,v,{title:0,viewBox:1},ze)}}function Je(e){let t;return{c(){t=D("path"),L(t,"d","M285.476 272.971L91.132 467.314c-9.373 9.373-24.569 9.373-33.941 0l-22.667-22.667c-9.357-9.357-9.375-24.522-.04-33.901L188.505 256 34.484 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L285.475 239.03c9.373 9.372 9.373 24.568.001 33.941z")},m(e,n){I(e,t,n)},p:i,d(e){e&&C(t)}}}function Ke(e){let t,n;const r=[{viewBox:"0 0 320 512"},e[0]];let s={$$slots:{default:[Je]},$$scope:{ctx:e}};for(let e=0;e<r.length;e+=1)s=u(s,r[e]);return t=new He({props:s}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[s]=n;const o=1&s?je(r,[r[0],Se(e[0])]):{};2&s&&(o.$$scope={dirty:s,ctx:e}),t.$set(o)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Ye(e,t,n){return e.$$set=e=>{n(0,t=u(u({},t),b(e)))},[t=b(t)]}class Xe extends Re{constructor(e){super(),De(this,e,Ye,Ke,v,{})}}function Qe(e){$(e,"svelte-1xg9v5h",".menu.svelte-1xg9v5h{display:flex;margin-top:43px;flex-direction:row-reverse;border:1px solid #ccc;border-radius:5px 5px 0 0;height:25px;line-height:25px;margin-right:-500px;transform-origin:bottom right;transform:rotate(-90deg) translate(0, -500px)}.menu-item.svelte-1xg9v5h{line-height:25px;cursor:pointer;border:0;background:#fefefe;color:#555;padding-left:15px;padding-right:15px;text-align:center}.menu-item.svelte-1xg9v5h:first-child{border-radius:0 5px 0 0}.menu-item.svelte-1xg9v5h:last-child{border-radius:5px 0 0 0}.menu-item.active.svelte-1xg9v5h{cursor:default;font-weight:bold;background:#ddd;color:#555}.menu-item.svelte-1xg9v5h:hover,.menu-item.svelte-1xg9v5h:focus{background:#eee;color:#555}")}function Ze(e,t,n){const r=e.slice();return r[4]=t[n][0],r[5]=t[n][1].label,r}function et(e){let t,n,r,s,o,a=e[5]+"";function i(){return e[3](e[4])}return{c(){t=N("button"),n=R(a),r=B(),L(t,"class","menu-item svelte-1xg9v5h"),W(t,"active",e[0]==e[4])},m(e,a){I(e,t,a),M(t,n),M(t,r),s||(o=F(t,"click",i),s=!0)},p(r,s){e=r,2&s&&a!==(a=e[5]+"")&&U(n,a),3&s&&W(t,"active",e[0]==e[4])},d(e){e&&C(t),s=!1,o()}}}function tt(e){let t,n=Object.entries(e[1]),r=[];for(let t=0;t<n.length;t+=1)r[t]=et(Ze(e,n,t));return{c(){t=N("nav");for(let e=0;e<r.length;e+=1)r[e].c();L(t,"class","menu svelte-1xg9v5h")},m(e,n){I(e,t,n);for(let e=0;e<r.length;e+=1)r[e].m(t,null)},p(e,s){let[o]=s;if(7&o){let s;for(n=Object.entries(e[1]),s=0;s<n.length;s+=1){const a=Ze(e,n,s);r[s]?r[s].p(a,o):(r[s]=et(a),r[s].c(),r[s].m(t,null))}for(;s<r.length;s+=1)r[s].d(1);r.length=n.length}},i:i,o:i,d(e){e&&C(t),T(r,e)}}}function nt(e,t,n){let{pane:r}=t,{panes:s}=t;const o=ne();return e.$$set=e=>{"pane"in e&&n(0,r=e.pane),"panes"in e&&n(1,s=e.panes)},[r,s,o,e=>o("change",e)]}class rt extends Re{constructor(e){super(),De(this,e,nt,tt,v,{pane:0,panes:1},Qe)}}var st={};function ot(e){$(e,"svelte-1vyml86",".container.svelte-1vyml86{display:inline-block;cursor:pointer;transform:translate(calc(0px - var(--li-identation)), -50%);position:absolute;top:50%;padding-right:100%}.arrow.svelte-1vyml86{transform-origin:25% 50%;position:relative;line-height:1.1em;font-size:0.75em;margin-left:0;transition:150ms;color:var(--arrow-sign);user-select:none;font-family:'Courier New', Courier, monospace}.expanded.svelte-1vyml86{transform:rotateZ(90deg) translateX(-3px)}")}function at(e){let t,n,r,s;return{c(){t=N("div"),n=N("div"),n.textContent="▶",L(n,"class","arrow svelte-1vyml86"),W(n,"expanded",e[0]),L(t,"class","container svelte-1vyml86")},m(o,a){I(o,t,a),M(t,n),r||(s=F(t,"click",e[1]),r=!0)},p(e,t){let[r]=t;1&r&&W(n,"expanded",e[0])},i:i,o:i,d(e){e&&C(t),r=!1,s()}}}function it(e,t,n){let{expanded:r}=t;return e.$$set=e=>{"expanded"in e&&n(0,r=e.expanded)},[r,function(t){oe.call(this,e,t)}]}class ct extends Re{constructor(e){super(),De(this,e,it,at,v,{expanded:0},ot)}}function lt(e){$(e,"svelte-1vlbacg","label.svelte-1vlbacg{display:inline-block;color:var(--label-color);padding:0}.spaced.svelte-1vlbacg{padding-right:var(--li-colon-space)}")}function ut(e){let t,n,r,s,o,a;return{c(){t=N("label"),n=N("span"),r=R(e[0]),s=R(e[2]),L(t,"class","svelte-1vlbacg"),W(t,"spaced",e[1])},m(i,c){I(i,t,c),M(t,n),M(n,r),M(n,s),o||(a=F(t,"click",e[5]),o=!0)},p(e,n){1&n&&U(r,e[0]),4&n&&U(s,e[2]),2&n&&W(t,"spaced",e[1])},d(e){e&&C(t),o=!1,a()}}}function pt(e){let t,n=e[3]&&e[0]&&ut(e);return{c(){n&&n.c(),t=G()},m(e,r){n&&n.m(e,r),I(e,t,r)},p(e,r){let[s]=r;e[3]&&e[0]?n?n.p(e,s):(n=ut(e),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null)},i:i,o:i,d(e){n&&n.d(e),e&&C(t)}}}function dt(e,t,n){let r,{key:s,isParentExpanded:o,isParentArray:a=!1,colon:i=":"}=t;return e.$$set=e=>{"key"in e&&n(0,s=e.key),"isParentExpanded"in e&&n(1,o=e.isParentExpanded),"isParentArray"in e&&n(4,a=e.isParentArray),"colon"in e&&n(2,i=e.colon)},e.$$.update=()=>{19&e.$$.dirty&&n(3,r=o||!a||s!=+s)},[s,o,i,r,a,function(t){oe.call(this,e,t)}]}class ft extends Re{constructor(e){super(),De(this,e,dt,pt,v,{key:0,isParentExpanded:1,isParentArray:4,colon:2},lt)}}function ht(e){$(e,"svelte-rwxv37","label.svelte-rwxv37{display:inline-block}.indent.svelte-rwxv37{padding-left:var(--li-identation)}.collapse.svelte-rwxv37{--li-display:inline;display:inline;font-style:italic}.comma.svelte-rwxv37{margin-left:-0.5em;margin-right:0.5em}label.svelte-rwxv37{position:relative}")}function vt(e,t,n){const r=e.slice();return r[12]=t[n],r[20]=n,r}function yt(e){let t,n;return t=new ct({props:{expanded:e[0]}}),t.$on("click",e[15]),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};1&n&&(r.expanded=e[0]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function gt(e){let t;return{c(){t=N("span"),t.textContent="…"},m(e,n){I(e,t,n)},p:i,i:i,o:i,d(e){e&&C(t)}}}function mt(e){let t,n,r,s,o,a=e[13],i=[];for(let t=0;t<a.length;t+=1)i[t]=xt(vt(e,a,t));const c=e=>ke(i[e],1,1,()=>{i[e]=null});let l=e[13].length<e[7].length&&_t();return{c(){t=N("ul");for(let e=0;e<i.length;e+=1)i[e].c();n=B(),l&&l.c(),L(t,"class","svelte-rwxv37"),W(t,"collapse",!e[0])},m(a,c){I(a,t,c);for(let e=0;e<i.length;e+=1)i[e].m(t,null);M(t,n),l&&l.m(t,null),r=!0,s||(o=F(t,"click",e[16]),s=!0)},p(e,r){if(10129&r){let s;for(a=e[13],s=0;s<a.length;s+=1){const o=vt(e,a,s);i[s]?(i[s].p(o,r),Oe(i[s],1)):(i[s]=xt(o),i[s].c(),Oe(i[s],1),i[s].m(t,n))}for(we(),s=a.length;s<i.length;s+=1)c(s);Pe()}e[13].length<e[7].length?l||(l=_t(),l.c(),l.m(t,null)):l&&(l.d(1),l=null),1&r&&W(t,"collapse",!e[0])},i(e){if(!r){for(let e=0;e<a.length;e+=1)Oe(i[e]);r=!0}},o(e){i=i.filter(Boolean);for(let e=0;e<i.length;e+=1)ke(i[e]);r=!1},d(e){e&&C(t),T(i,e),l&&l.d(),s=!1,o()}}}function bt(e){let t;return{c(){t=N("span"),t.textContent=",",L(t,"class","comma svelte-rwxv37")},m(e,n){I(e,t,n)},d(e){e&&C(t)}}}function xt(e){let t,n,r,s;t=new an({props:{key:e[8](e[12]),isParentExpanded:e[0],isParentArray:e[4],value:e[0]?e[9](e[12]):e[10](e[12])}});let o=!e[0]&&e[20]<e[7].length-1&&bt();return{c(){Ie(t.$$.fragment),n=B(),o&&o.c(),r=G()},m(e,a){Ce(t,e,a),I(e,n,a),o&&o.m(e,a),I(e,r,a),s=!0},p(e,n){const s={};8448&n&&(s.key=e[8](e[12])),1&n&&(s.isParentExpanded=e[0]),16&n&&(s.isParentArray=e[4]),9729&n&&(s.value=e[0]?e[9](e[12]):e[10](e[12])),t.$set(s),!e[0]&&e[20]<e[7].length-1?o||(o=bt(),o.c(),o.m(r.parentNode,r)):o&&(o.d(1),o=null)},i(e){s||(Oe(t.$$.fragment,e),s=!0)},o(e){ke(t.$$.fragment,e),s=!1},d(e){Te(t,e),e&&C(n),o&&o.d(e),e&&C(r)}}}function _t(e){let t;return{c(){t=N("span"),t.textContent="…"},m(e,n){I(e,t,n)},d(e){e&&C(t)}}}function wt(e){let t,n,r,s,o,a,i,c,l,u,p,d,f,h,v,y,g,m,b=e[11]&&e[2]&&yt(e);s=new ft({props:{key:e[12],colon:e[14].colon,isParentExpanded:e[2],isParentArray:e[3]}}),s.$on("click",e[15]);const x=[mt,gt],_=[];function w(e,t){return e[2]?0:1}return p=w(e),d=_[p]=x[p](e),{c(){t=N("li"),n=N("label"),b&&b.c(),r=B(),Ie(s.$$.fragment),o=B(),a=N("span"),i=N("span"),c=R(e[1]),l=R(e[5]),u=B(),d.c(),f=B(),h=N("span"),v=R(e[6]),L(n,"class","svelte-rwxv37"),L(t,"class","svelte-rwxv37"),W(t,"indent",e[2])},m(d,x){I(d,t,x),M(t,n),b&&b.m(n,null),M(n,r),Ce(s,n,null),M(n,o),M(n,a),M(a,i),M(i,c),M(a,l),M(t,u),_[p].m(t,null),M(t,f),M(t,h),M(h,v),y=!0,g||(m=F(a,"click",e[15]),g=!0)},p(e,o){let[a]=o;e[11]&&e[2]?b?(b.p(e,a),2052&a&&Oe(b,1)):(b=yt(e),b.c(),Oe(b,1),b.m(n,r)):b&&(we(),ke(b,1,1,()=>{b=null}),Pe());const i={};4096&a&&(i.key=e[12]),4&a&&(i.isParentExpanded=e[2]),8&a&&(i.isParentArray=e[3]),s.$set(i),(!y||2&a)&&U(c,e[1]),(!y||32&a)&&U(l,e[5]);let u=p;p=w(e),p===u?_[p].p(e,a):(we(),ke(_[u],1,1,()=>{_[u]=null}),Pe(),d=_[p],d?d.p(e,a):(d=_[p]=x[p](e),d.c()),Oe(d,1),d.m(t,f)),(!y||64&a)&&U(v,e[6]),4&a&&W(t,"indent",e[2])},i(e){y||(Oe(b),Oe(s.$$.fragment,e),Oe(d),y=!0)},o(e){ke(b),ke(s.$$.fragment,e),ke(d),y=!1},d(e){e&&C(t),b&&b.d(),Te(s),_[p].d(),g=!1,m()}}}function Pt(e,t,n){let r,{key:s,keys:o,colon:a=":",label:i="",isParentExpanded:l,isParentArray:u,isArray:p=!1,bracketOpen:d,bracketClose:f}=t,{previewKeys:h=o}=t,{getKey:v=e=>e}=t,{getValue:y=e=>e}=t,{getPreviewValue:g=y}=t,{expanded:m=!1,expandable:b=!0}=t;const x=se(st);return re(st,c(c({},x),{},{colon:a})),e.$$set=e=>{"key"in e&&n(12,s=e.key),"keys"in e&&n(17,o=e.keys),"colon"in e&&n(18,a=e.colon),"label"in e&&n(1,i=e.label),"isParentExpanded"in e&&n(2,l=e.isParentExpanded),"isParentArray"in e&&n(3,u=e.isParentArray),"isArray"in e&&n(4,p=e.isArray),"bracketOpen"in e&&n(5,d=e.bracketOpen),"bracketClose"in e&&n(6,f=e.bracketClose),"previewKeys"in e&&n(7,h=e.previewKeys),"getKey"in e&&n(8,v=e.getKey),"getValue"in e&&n(9,y=e.getValue),"getPreviewValue"in e&&n(10,g=e.getPreviewValue),"expanded"in e&&n(0,m=e.expanded),"expandable"in e&&n(11,b=e.expandable)},e.$$.update=()=>{4&e.$$.dirty&&(l||n(0,m=!1)),131201&e.$$.dirty&&n(13,r=m?o:h.slice(0,5))},[m,i,l,u,p,d,f,h,v,y,g,b,s,r,x,function(){n(0,m=!m)},function(){n(0,m=!0)},o,a]}class Ot extends Re{constructor(e){super(),De(this,e,Pt,wt,v,{key:12,keys:17,colon:18,label:1,isParentExpanded:2,isParentArray:3,isArray:4,bracketOpen:5,bracketClose:6,previewKeys:7,getKey:8,getValue:9,getPreviewValue:10,expanded:0,expandable:11},ht)}}function kt(e){let t,n;return t=new Ot({props:{key:e[0],expanded:e[4],isParentExpanded:e[1],isParentArray:e[2],keys:e[5],previewKeys:e[5],getValue:e[6],label:e[3]+" ",bracketOpen:"{",bracketClose:"}"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};1&r&&(s.key=e[0]),16&r&&(s.expanded=e[4]),2&r&&(s.isParentExpanded=e[1]),4&r&&(s.isParentArray=e[2]),32&r&&(s.keys=e[5]),32&r&&(s.previewKeys=e[5]),8&r&&(s.label=e[3]+" "),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Et(e,t,n){let r,{key:s,value:o,isParentExpanded:a,isParentArray:i,nodeType:c}=t,{expanded:l=!0}=t;return e.$$set=e=>{"key"in e&&n(0,s=e.key),"value"in e&&n(7,o=e.value),"isParentExpanded"in e&&n(1,a=e.isParentExpanded),"isParentArray"in e&&n(2,i=e.isParentArray),"nodeType"in e&&n(3,c=e.nodeType),"expanded"in e&&n(4,l=e.expanded)},e.$$.update=()=>{128&e.$$.dirty&&n(5,r=Object.getOwnPropertyNames(o))},[s,a,i,c,l,r,function(e){return o[e]},o]}class Mt extends Re{constructor(e){super(),De(this,e,Et,kt,v,{key:0,value:7,isParentExpanded:1,isParentArray:2,nodeType:3,expanded:4})}}function $t(e){let t,n;return t=new Ot({props:{key:e[0],expanded:e[4],isParentExpanded:e[2],isParentArray:e[3],isArray:!0,keys:e[5],previewKeys:e[6],getValue:e[7],label:"Array("+e[1].length+")",bracketOpen:"[",bracketClose:"]"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};1&r&&(s.key=e[0]),16&r&&(s.expanded=e[4]),4&r&&(s.isParentExpanded=e[2]),8&r&&(s.isParentArray=e[3]),32&r&&(s.keys=e[5]),64&r&&(s.previewKeys=e[6]),2&r&&(s.label="Array("+e[1].length+")"),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function At(e,t,n){let r,s,{key:o,value:a,isParentExpanded:i,isParentArray:c}=t,{expanded:l=JSON.stringify(a).length<1024}=t;const u=new Set(["length"]);return e.$$set=e=>{"key"in e&&n(0,o=e.key),"value"in e&&n(1,a=e.value),"isParentExpanded"in e&&n(2,i=e.isParentExpanded),"isParentArray"in e&&n(3,c=e.isParentArray),"expanded"in e&&n(4,l=e.expanded)},e.$$.update=()=>{2&e.$$.dirty&&n(5,r=Object.getOwnPropertyNames(a)),32&e.$$.dirty&&n(6,s=r.filter(e=>!u.has(e)))},[o,a,i,c,l,r,s,function(e){return a[e]}]}class jt extends Re{constructor(e){super(),De(this,e,At,$t,v,{key:0,value:1,isParentExpanded:2,isParentArray:3,expanded:4})}}function St(e){let t,n;return t=new Ot({props:{key:e[0],isParentExpanded:e[1],isParentArray:e[2],keys:e[4],getKey:It,getValue:Ct,isArray:!0,label:e[3]+"("+e[4].length+")",bracketOpen:"{",bracketClose:"}"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};1&r&&(s.key=e[0]),2&r&&(s.isParentExpanded=e[1]),4&r&&(s.isParentArray=e[2]),16&r&&(s.keys=e[4]),24&r&&(s.label=e[3]+"("+e[4].length+")"),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function It(e){return String(e[0])}function Ct(e){return e[1]}function Tt(e,t,n){let{key:r,value:s,isParentExpanded:o,isParentArray:a,nodeType:i}=t,c=[];return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(5,s=e.value),"isParentExpanded"in e&&n(1,o=e.isParentExpanded),"isParentArray"in e&&n(2,a=e.isParentArray),"nodeType"in e&&n(3,i=e.nodeType)},e.$$.update=()=>{if(32&e.$$.dirty){let e=[],t=0;for(const n of s)e.push([t++,n]);n(4,c=e)}},[r,o,a,i,c,s]}class Nt extends Re{constructor(e){super(),De(this,e,Tt,St,v,{key:0,value:5,isParentExpanded:1,isParentArray:2,nodeType:3})}}class Dt{constructor(e,t){this.key=e,this.value=t}}function Rt(e){let t,n;return t=new Ot({props:{key:e[0],isParentExpanded:e[1],isParentArray:e[2],keys:e[4],getKey:Bt,getValue:Gt,label:e[3]+"("+e[4].length+")",colon:"",bracketOpen:"{",bracketClose:"}"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};1&r&&(s.key=e[0]),2&r&&(s.isParentExpanded=e[1]),4&r&&(s.isParentArray=e[2]),16&r&&(s.keys=e[4]),24&r&&(s.label=e[3]+"("+e[4].length+")"),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Bt(e){return e[0]}function Gt(e){return e[1]}function Ft(e,t,n){let{key:r,value:s,isParentExpanded:o,isParentArray:a,nodeType:i}=t,c=[];return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(5,s=e.value),"isParentExpanded"in e&&n(1,o=e.isParentExpanded),"isParentArray"in e&&n(2,a=e.isParentArray),"nodeType"in e&&n(3,i=e.nodeType)},e.$$.update=()=>{if(32&e.$$.dirty){let e=[],t=0;for(const n of s)e.push([t++,new Dt(n[0],n[1])]);n(4,c=e)}},[r,o,a,i,c,s]}class Lt extends Re{constructor(e){super(),De(this,e,Ft,Rt,v,{key:0,value:5,isParentExpanded:1,isParentArray:2,nodeType:3})}}function Ut(e){let t,n;return t=new Ot({props:{expanded:e[4],isParentExpanded:e[2],isParentArray:e[3],key:e[2]?String(e[0]):e[1].key,keys:e[5],getValue:e[6],label:e[2]?"Entry ":"=> ",bracketOpen:"{",bracketClose:"}"}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[r]=n;const s={};16&r&&(s.expanded=e[4]),4&r&&(s.isParentExpanded=e[2]),8&r&&(s.isParentArray=e[3]),7&r&&(s.key=e[2]?String(e[0]):e[1].key),4&r&&(s.label=e[2]?"Entry ":"=> "),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function zt(e,t,n){let{key:r,value:s,isParentExpanded:o,isParentArray:a}=t,{expanded:i=!1}=t;return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(1,s=e.value),"isParentExpanded"in e&&n(2,o=e.isParentExpanded),"isParentArray"in e&&n(3,a=e.isParentArray),"expanded"in e&&n(4,i=e.expanded)},[r,s,o,a,i,["key","value"],function(e){return s[e]}]}class qt extends Re{constructor(e){super(),De(this,e,zt,Ut,v,{key:0,value:1,isParentExpanded:2,isParentArray:3,expanded:4})}}function Vt(e){$(e,"svelte-3bjyvl","li.svelte-3bjyvl{user-select:text;word-wrap:break-word;word-break:break-all}.indent.svelte-3bjyvl{padding-left:var(--li-identation)}.String.svelte-3bjyvl{color:var(--string-color)}.Date.svelte-3bjyvl{color:var(--date-color)}.Number.svelte-3bjyvl{color:var(--number-color)}.Boolean.svelte-3bjyvl{color:var(--boolean-color)}.Null.svelte-3bjyvl{color:var(--null-color)}.Undefined.svelte-3bjyvl{color:var(--undefined-color)}.Function.svelte-3bjyvl{color:var(--function-color);font-style:italic}.Symbol.svelte-3bjyvl{color:var(--symbol-color)}")}function Wt(e){let t,n,r,s,o,a,i,c=(e[2]?e[2](e[1]):e[1])+"";return n=new ft({props:{key:e[0],colon:e[6],isParentExpanded:e[3],isParentArray:e[4]}}),{c(){t=N("li"),Ie(n.$$.fragment),r=B(),s=N("span"),o=R(c),L(s,"class",a=x(e[5])+" svelte-3bjyvl"),L(t,"class","svelte-3bjyvl"),W(t,"indent",e[3])},m(e,a){I(e,t,a),Ce(n,t,null),M(t,r),M(t,s),M(s,o),i=!0},p(e,r){let[l]=r;const u={};1&l&&(u.key=e[0]),8&l&&(u.isParentExpanded=e[3]),16&l&&(u.isParentArray=e[4]),n.$set(u),(!i||6&l)&&c!==(c=(e[2]?e[2](e[1]):e[1])+"")&&U(o,c),(!i||32&l&&a!==(a=x(e[5])+" svelte-3bjyvl"))&&L(s,"class",a),8&l&&W(t,"indent",e[3])},i(e){i||(Oe(n.$$.fragment,e),i=!0)},o(e){ke(n.$$.fragment,e),i=!1},d(e){e&&C(t),Te(n)}}}function Ht(e,t,n){let{key:r,value:s,valueGetter:o=null,isParentExpanded:a,isParentArray:i,nodeType:c}=t;const{colon:l}=se(st);return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(1,s=e.value),"valueGetter"in e&&n(2,o=e.valueGetter),"isParentExpanded"in e&&n(3,a=e.isParentExpanded),"isParentArray"in e&&n(4,i=e.isParentArray),"nodeType"in e&&n(5,c=e.nodeType)},[r,s,o,a,i,c,l]}class Jt extends Re{constructor(e){super(),De(this,e,Ht,Wt,v,{key:0,value:1,valueGetter:2,isParentExpanded:3,isParentArray:4,nodeType:5},Vt)}}function Kt(e){$(e,"svelte-1ca3gb2","li.svelte-1ca3gb2{user-select:text;word-wrap:break-word;word-break:break-all}.indent.svelte-1ca3gb2{padding-left:var(--li-identation)}.collapse.svelte-1ca3gb2{--li-display:inline;display:inline;font-style:italic}")}function Yt(e,t,n){const r=e.slice();return r[8]=t[n],r[10]=n,r}function Xt(e){let t,n;return t=new ct({props:{expanded:e[0]}}),t.$on("click",e[7]),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};1&n&&(r.expanded=e[0]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Qt(e){let t,n,r=e[0]&&Zt(e);return{c(){t=N("ul"),r&&r.c(),L(t,"class","svelte-1ca3gb2"),W(t,"collapse",!e[0])},m(e,s){I(e,t,s),r&&r.m(t,null),n=!0},p(e,n){e[0]?r?(r.p(e,n),1&n&&Oe(r,1)):(r=Zt(e),r.c(),Oe(r,1),r.m(t,null)):r&&(we(),ke(r,1,1,()=>{r=null}),Pe()),1&n&&W(t,"collapse",!e[0])},i(e){n||(Oe(r),n=!0)},o(e){ke(r),n=!1},d(e){e&&C(t),r&&r.d()}}}function Zt(e){let t,n,r,s,o,a,i;t=new an({props:{key:"message",value:e[2].message}}),s=new ft({props:{key:"stack",colon:":",isParentExpanded:e[3]}});let c=e[5],l=[];for(let t=0;t<c.length;t+=1)l[t]=en(Yt(e,c,t));return{c(){Ie(t.$$.fragment),n=B(),r=N("li"),Ie(s.$$.fragment),o=B(),a=N("span");for(let e=0;e<l.length;e+=1)l[e].c();L(r,"class","svelte-1ca3gb2")},m(e,c){Ce(t,e,c),I(e,n,c),I(e,r,c),Ce(s,r,null),M(r,o),M(r,a);for(let e=0;e<l.length;e+=1)l[e].m(a,null);i=!0},p(e,n){const r={};4&n&&(r.value=e[2].message),t.$set(r);const o={};if(8&n&&(o.isParentExpanded=e[3]),s.$set(o),32&n){let t;for(c=e[5],t=0;t<c.length;t+=1){const r=Yt(e,c,t);l[t]?l[t].p(r,n):(l[t]=en(r),l[t].c(),l[t].m(a,null))}for(;t<l.length;t+=1)l[t].d(1);l.length=c.length}},i(e){i||(Oe(t.$$.fragment,e),Oe(s.$$.fragment,e),i=!0)},o(e){ke(t.$$.fragment,e),ke(s.$$.fragment,e),i=!1},d(e){Te(t,e),e&&C(n),e&&C(r),Te(s),T(l,e)}}}function en(e){let t,n,r,s=e[8]+"";return{c(){t=N("span"),n=R(s),r=N("br"),L(t,"class","svelte-1ca3gb2"),W(t,"indent",e[10]>0)},m(e,s){I(e,t,s),M(t,n),I(e,r,s)},p(e,t){32&t&&s!==(s=e[8]+"")&&U(n,s)},d(e){e&&C(t),e&&C(r)}}}function tn(e){let t,n,r,s,o,a,i,c,l,u,p,d=(e[0]?"":e[2].message)+"",f=e[3]&&Xt(e);r=new ft({props:{key:e[1],colon:e[6].colon,isParentExpanded:e[3],isParentArray:e[4]}});let h=e[3]&&Qt(e);return{c(){t=N("li"),f&&f.c(),n=B(),Ie(r.$$.fragment),s=B(),o=N("span"),a=R("Error: "),i=R(d),c=B(),h&&h.c(),L(t,"class","svelte-1ca3gb2"),W(t,"indent",e[3])},m(d,v){I(d,t,v),f&&f.m(t,null),M(t,n),Ce(r,t,null),M(t,s),M(t,o),M(o,a),M(o,i),M(t,c),h&&h.m(t,null),l=!0,u||(p=F(o,"click",e[7]),u=!0)},p(e,s){let[o]=s;e[3]?f?(f.p(e,o),8&o&&Oe(f,1)):(f=Xt(e),f.c(),Oe(f,1),f.m(t,n)):f&&(we(),ke(f,1,1,()=>{f=null}),Pe());const a={};2&o&&(a.key=e[1]),8&o&&(a.isParentExpanded=e[3]),16&o&&(a.isParentArray=e[4]),r.$set(a),(!l||5&o)&&d!==(d=(e[0]?"":e[2].message)+"")&&U(i,d),e[3]?h?(h.p(e,o),8&o&&Oe(h,1)):(h=Qt(e),h.c(),Oe(h,1),h.m(t,null)):h&&(we(),ke(h,1,1,()=>{h=null}),Pe()),8&o&&W(t,"indent",e[3])},i(e){l||(Oe(f),Oe(r.$$.fragment,e),Oe(h),l=!0)},o(e){ke(f),ke(r.$$.fragment,e),ke(h),l=!1},d(e){e&&C(t),f&&f.d(),Te(r),h&&h.d(),u=!1,p()}}}function nn(e,t,n){let r,{key:s,value:o,isParentExpanded:a,isParentArray:i}=t,{expanded:l=!1}=t;const u=se(st);return re(st,c(c({},u),{},{colon:":"})),e.$$set=e=>{"key"in e&&n(1,s=e.key),"value"in e&&n(2,o=e.value),"isParentExpanded"in e&&n(3,a=e.isParentExpanded),"isParentArray"in e&&n(4,i=e.isParentArray),"expanded"in e&&n(0,l=e.expanded)},e.$$.update=()=>{4&e.$$.dirty&&n(5,r=o.stack.split("\n")),8&e.$$.dirty&&(a||n(0,l=!1))},[l,s,o,a,i,r,u,function(){n(0,l=!l)}]}class rn extends Re{constructor(e){super(),De(this,e,nn,tn,v,{key:1,value:2,isParentExpanded:3,isParentArray:4,expanded:0},Kt)}}function sn(e){let t,n,r;var s=e[6];function o(e){return{props:{key:e[0],value:e[1],isParentExpanded:e[2],isParentArray:e[3],nodeType:e[4],valueGetter:e[5]}}}return s&&(t=new s(o(e))),{c(){t&&Ie(t.$$.fragment),n=G()},m(e,s){t&&Ce(t,e,s),I(e,n,s),r=!0},p(e,r){let[a]=r;const i={};if(1&a&&(i.key=e[0]),2&a&&(i.value=e[1]),4&a&&(i.isParentExpanded=e[2]),8&a&&(i.isParentArray=e[3]),16&a&&(i.nodeType=e[4]),32&a&&(i.valueGetter=e[5]),s!==(s=e[6])){if(t){we();const e=t;ke(e.$$.fragment,1,0,()=>{Te(e,1)}),Pe()}s?(t=new s(o(e)),Ie(t.$$.fragment),Oe(t.$$.fragment,1),Ce(t,n.parentNode,n)):t=null}else s&&t.$set(i)},i(e){r||(t&&Oe(t.$$.fragment,e),r=!0)},o(e){t&&ke(t.$$.fragment,e),r=!1},d(e){e&&C(n),t&&Te(t,e)}}}function on(e,t,n){let r,s,o,{key:a,value:i,isParentExpanded:c,isParentArray:l}=t;return e.$$set=e=>{"key"in e&&n(0,a=e.key),"value"in e&&n(1,i=e.value),"isParentExpanded"in e&&n(2,c=e.isParentExpanded),"isParentArray"in e&&n(3,l=e.isParentArray)},e.$$.update=()=>{2&e.$$.dirty&&n(4,r=function(e){const t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t?"function"==typeof e[Symbol.iterator]?"Iterable":e.constructor.name:t}(i)),16&e.$$.dirty&&n(6,s=function(e){switch(e){case"Object":return Mt;case"Error":return rn;case"Array":return jt;case"Iterable":case"Map":case"Set":return"function"==typeof i.set?Lt:Nt;case"MapEntry":return qt;default:return Jt}}(r)),16&e.$$.dirty&&n(5,o=function(e){switch(e){case"Object":case"Error":case"Array":case"Iterable":case"Map":case"Set":case"MapEntry":case"Number":return;case"String":return e=>`"${e}"`;case"Boolean":return e=>e?"true":"false";case"Date":return e=>e.toISOString();case"Null":return()=>"null";case"Undefined":return()=>"undefined";case"Function":case"Symbol":return e=>e.toString();default:return()=>`<${e}>`}}(r))},[a,i,c,l,r,o,s]}class an extends Re{constructor(e){super(),De(this,e,on,sn,v,{key:0,value:1,isParentExpanded:2,isParentArray:3})}}function cn(e){$(e,"svelte-773n60","ul.svelte-773n60{--string-color:var(--json-tree-string-color, #cb3f41);--symbol-color:var(--json-tree-symbol-color, #cb3f41);--boolean-color:var(--json-tree-boolean-color, #112aa7);--function-color:var(--json-tree-function-color, #112aa7);--number-color:var(--json-tree-number-color, #3029cf);--label-color:var(--json-tree-label-color, #871d8f);--arrow-color:var(--json-tree-arrow-color, #727272);--null-color:var(--json-tree-null-color, #8d8d8d);--undefined-color:var(--json-tree-undefined-color, #8d8d8d);--date-color:var(--json-tree-date-color, #8d8d8d);--li-identation:var(--json-tree-li-indentation, 1em);--li-line-height:var(--json-tree-li-line-height, 1.3);--li-colon-space:0.3em;font-size:var(--json-tree-font-size, 12px);font-family:var(--json-tree-font-family, 'Courier New', Courier, monospace)}ul.svelte-773n60 li{line-height:var(--li-line-height);display:var(--li-display, list-item);list-style:none}ul.svelte-773n60,ul.svelte-773n60 ul{padding:0;margin:0}")}function ln(e){let t,n,r;return n=new an({props:{key:e[0],value:e[1],isParentExpanded:!0,isParentArray:!1}}),{c(){t=N("ul"),Ie(n.$$.fragment),L(t,"class","svelte-773n60")},m(e,s){I(e,t,s),Ce(n,t,null),r=!0},p(e,t){let[r]=t;const s={};1&r&&(s.key=e[0]),2&r&&(s.value=e[1]),n.$set(s)},i(e){r||(Oe(n.$$.fragment,e),r=!0)},o(e){ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),Te(n)}}}function un(e,t,n){re(st,{});let{key:r="",value:s}=t;return e.$$set=e=>{"key"in e&&n(0,r=e.key),"value"in e&&n(1,s=e.value)},[r,s]}class pn extends Re{constructor(e){super(),De(this,e,un,ln,v,{key:0,value:1},cn)}}function dn(e){$(e,"svelte-jvfq3i",".svelte-jvfq3i{box-sizing:border-box}section.switcher.svelte-jvfq3i{position:sticky;bottom:0;transform:translateY(20px);margin:40px -20px 0;border-top:1px solid #999;padding:20px;background:#fff}label.svelte-jvfq3i{display:flex;align-items:baseline;gap:5px;font-weight:bold}select.svelte-jvfq3i{min-width:140px}")}function fn(e,t,n){const r=e.slice();return r[7]=t[n],r[9]=n,r}function hn(e){let t,n,r,s,o,a,i=e[1],c=[];for(let t=0;t<i.length;t+=1)c[t]=vn(fn(e,i,t));return{c(){t=N("section"),n=N("label"),r=R("Client\n \n "),s=N("select");for(let e=0;e<c.length;e+=1)c[e].c();L(s,"id",gn),L(s,"class","svelte-jvfq3i"),void 0===e[2]&&de(()=>e[6].call(s)),L(n,"class","svelte-jvfq3i"),L(t,"class","switcher svelte-jvfq3i")},m(i,l){I(i,t,l),M(t,n),M(n,r),M(n,s);for(let e=0;e<c.length;e+=1)c[e].m(s,null);q(s,e[2]),o||(a=[F(s,"change",e[3]),F(s,"change",e[6])],o=!0)},p(e,t){if(2&t){let n;for(i=e[1],n=0;n<i.length;n+=1){const r=fn(e,i,n);c[n]?c[n].p(r,t):(c[n]=vn(r),c[n].c(),c[n].m(s,null))}for(;n<c.length;n+=1)c[n].d(1);c.length=i.length}4&t&&q(s,e[2])},d(e){e&&C(t),T(c,e),o=!1,f(a)}}}function vn(e){let t,n,r,s,o,a,i,c,l,u=JSON.stringify(e[7].playerID)+"",p=JSON.stringify(e[7].matchID)+"",d=e[7].game.name+"";return{c(){t=N("option"),n=R(e[9]),r=R(" —\n playerID: "),s=R(u),o=R(",\n matchID: "),a=R(p),i=R("\n ("),c=R(d),l=R(")\n "),t.__value=e[9],t.value=t.__value,L(t,"class","svelte-jvfq3i")},m(e,u){I(e,t,u),M(t,n),M(t,r),M(t,s),M(t,o),M(t,a),M(t,i),M(t,c),M(t,l)},p(e,t){2&t&&u!==(u=JSON.stringify(e[7].playerID)+"")&&U(s,u),2&t&&p!==(p=JSON.stringify(e[7].matchID)+"")&&U(a,p),2&t&&d!==(d=e[7].game.name+"")&&U(c,d)},d(e){e&&C(t)}}}function yn(e){let t,n=e[1].length>1&&hn(e);return{c(){n&&n.c(),t=G()},m(e,r){n&&n.m(e,r),I(e,t,r)},p(e,r){let[s]=r;e[1].length>1?n?n.p(e,s):(n=hn(e),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null)},i:i,o:i,d(e){n&&n.d(e),e&&C(t)}}}const gn="bgio-debug-select-client";function mn(e,t,n){let r,s,o,a,c=i,l=()=>(c(),c=y(u,e=>n(5,a=e)),u);e.$$.on_destroy.push(()=>c());let{clientManager:u}=t;return l(),e.$$set=e=>{"clientManager"in e&&l(n(0,u=e.clientManager))},e.$$.update=()=>{32&e.$$.dirty&&n(4,({client:r,debuggableClients:s}=a),r,(n(1,s),n(5,a))),18&e.$$.dirty&&n(2,o=s.indexOf(r))},[u,s,o,e=>{const t=s[e.target.value];u.switchToClient(t);const n=document.getElementById(gn);n&&n.focus()},r,a,function(){o=V(this),n(2,o),n(1,s),n(4,r),n(5,a)}]}class bn extends Re{constructor(e){super(),De(this,e,mn,yn,v,{clientManager:0},dn)}}function xn(e){$(e,"svelte-1vfj1mn",".key.svelte-1vfj1mn.svelte-1vfj1mn{display:flex;flex-direction:row;align-items:center}button.svelte-1vfj1mn.svelte-1vfj1mn{cursor:pointer;min-width:10px;padding-left:5px;padding-right:5px;height:20px;line-height:20px;text-align:center;border:1px solid #ccc;box-shadow:1px 1px 1px #888;background:#eee;color:#444}button.svelte-1vfj1mn.svelte-1vfj1mn:hover{background:#ddd}.key.active.svelte-1vfj1mn button.svelte-1vfj1mn{background:#ddd;border:1px solid #999;box-shadow:none}label.svelte-1vfj1mn.svelte-1vfj1mn{margin-left:10px}")}function _n(e){let t,n,r,s,o,a=`(shortcut: ${e[0]})`;return{c(){t=N("label"),n=R(e[1]),r=B(),s=N("span"),o=R(a),L(s,"class","screen-reader-only"),L(t,"for",e[5]),L(t,"class","svelte-1vfj1mn")},m(e,a){I(e,t,a),M(t,n),M(t,r),M(t,s),M(s,o)},p(e,t){2&t&&U(n,e[1]),1&t&&a!==(a=`(shortcut: ${e[0]})`)&&U(o,a)},d(e){e&&C(t)}}}function wn(e){let t,n,r,s,o,a,c=e[1]&&_n(e);return{c(){t=N("div"),n=N("button"),r=R(e[0]),s=B(),c&&c.c(),L(n,"id",e[5]),n.disabled=e[2],L(n,"class","svelte-1vfj1mn"),L(t,"class","key svelte-1vfj1mn"),W(t,"active",e[3])},m(i,l){I(i,t,l),M(t,n),M(n,r),M(t,s),c&&c.m(t,null),o||(a=[F(window,"keydown",e[7]),F(n,"click",e[6])],o=!0)},p(e,s){let[o]=s;1&o&&U(r,e[0]),4&o&&(n.disabled=e[2]),e[1]?c?c.p(e,o):(c=_n(e),c.c(),c.m(t,null)):c&&(c.d(1),c=null),8&o&&W(t,"active",e[3])},i:i,o:i,d(e){e&&C(t),c&&c.d(),o=!1,f(a)}}}function Pn(e,t,n){let r,{value:s}=t,{onPress:o=null}=t,{label:a=null}=t,{disable:i=!1}=t;const{disableHotkeys:c}=se("hotkeys");g(e,c,e=>n(9,r=e));let l=!1,u=`key-${s}`;function p(){n(3,l=!1)}function d(){n(3,l=!0),setTimeout(p,200),o&&setTimeout(o,1)}return e.$$set=e=>{"value"in e&&n(0,s=e.value),"onPress"in e&&n(8,o=e.onPress),"label"in e&&n(1,a=e.label),"disable"in e&&n(2,i=e.disable)},[s,a,i,l,c,u,d,function(e){r||i||e.ctrlKey||e.metaKey||e.key!=s||(e.preventDefault(),d())},o]}class On extends Re{constructor(e){super(),De(this,e,Pn,wn,v,{value:0,onPress:8,label:1,disable:2},xn)}}function kn(e){$(e,"svelte-1mppqmp",".move.svelte-1mppqmp{display:flex;flex-direction:row;cursor:pointer;margin-left:10px;color:#666}.move.svelte-1mppqmp:hover{color:#333}.move.active.svelte-1mppqmp{color:#111;font-weight:bold}.arg-field.svelte-1mppqmp{outline:none;font-family:monospace}")}function En(e){let t,n,r,s,o,a,c,l,u,p,d;return{c(){t=N("div"),n=N("span"),r=R(e[2]),s=B(),o=N("span"),o.textContent="(",a=B(),c=N("span"),l=B(),u=N("span"),u.textContent=")",L(c,"class","arg-field svelte-1mppqmp"),L(c,"contenteditable",""),L(t,"class","move svelte-1mppqmp"),W(t,"active",e[3])},m(i,f){var v;I(i,t,f),M(t,n),M(n,r),M(t,s),M(t,o),M(t,a),M(t,c),e[6](c),M(t,l),M(t,u),p||(d=[F(c,"focus",function(){h(e[0])&&e[0].apply(this,arguments)}),F(c,"blur",function(){h(e[1])&&e[1].apply(this,arguments)}),F(c,"keypress",(v=Mn,function(e){return e.stopPropagation(),v.call(this,e)})),F(c,"keydown",e[5]),F(t,"click",function(){h(e[0])&&e[0].apply(this,arguments)})],p=!0)},p(n,s){let[o]=s;e=n,4&o&&U(r,e[2]),8&o&&W(t,"active",e[3])},i:i,o:i,d(n){n&&C(t),e[6](null),p=!1,f(d)}}}const Mn=()=>{};function $n(e,t,n){let r,{Activate:s}=t,{Deactivate:o}=t,{name:a}=t,{active:i}=t;const c=ne();var l;return l=()=>{i?r.focus():r.blur()},ee().$$.after_update.push(l),e.$$set=e=>{"Activate"in e&&n(0,s=e.Activate),"Deactivate"in e&&n(1,o=e.Deactivate),"name"in e&&n(2,a=e.name),"active"in e&&n(3,i=e.active)},[s,o,a,i,r,function(e){"Enter"==e.key&&(e.preventDefault(),function(){try{const e=r.innerText;let t=new Function(`return [${e}]`)();c("submit",t)}catch(e){c("error",e)}n(4,r.innerText="",r)}()),"Escape"==e.key&&(e.preventDefault(),o())},function(e){ie[e?"unshift":"push"](()=>{r=e,n(4,r)})}]}class An extends Re{constructor(e){super(),De(this,e,$n,En,v,{Activate:0,Deactivate:1,name:2,active:3},kn)}}function jn(e){$(e,"svelte-smqssc",".move-error.svelte-smqssc{color:#a00;font-weight:bold}.wrapper.svelte-smqssc{display:flex;flex-direction:row;align-items:center}")}function Sn(e){let t,n;return{c(){t=N("span"),n=R(e[2]),L(t,"class","move-error svelte-smqssc")},m(e,r){I(e,t,r),M(t,n)},p(e,t){4&t&&U(n,e[2])},d(e){e&&C(t)}}}function In(e){let t,n,r,s,o,a,i;r=new On({props:{value:e[0],onPress:e[4]}}),o=new An({props:{Activate:e[4],Deactivate:e[5],name:e[1],active:e[3]}}),o.$on("submit",e[6]),o.$on("error",e[7]);let c=e[2]&&Sn(e);return{c(){t=N("div"),n=N("div"),Ie(r.$$.fragment),s=B(),Ie(o.$$.fragment),a=B(),c&&c.c(),L(n,"class","wrapper svelte-smqssc")},m(e,l){I(e,t,l),M(t,n),Ce(r,n,null),M(n,s),Ce(o,n,null),M(t,a),c&&c.m(t,null),i=!0},p(e,n){let[s]=n;const a={};1&s&&(a.value=e[0]),r.$set(a);const i={};2&s&&(i.name=e[1]),8&s&&(i.active=e[3]),o.$set(i),e[2]?c?c.p(e,s):(c=Sn(e),c.c(),c.m(t,null)):c&&(c.d(1),c=null)},i(e){i||(Oe(r.$$.fragment,e),Oe(o.$$.fragment,e),i=!0)},o(e){ke(r.$$.fragment,e),ke(o.$$.fragment,e),i=!1},d(e){e&&C(t),Te(r),Te(o),c&&c.d()}}}function Cn(e,t,n){let{shortcut:s}=t,{name:o}=t,{fn:a}=t;const{disableHotkeys:i}=se("hotkeys");let c="",l=!1;function u(){i.set(!1),n(2,c=""),n(3,l=!1)}return e.$$set=e=>{"shortcut"in e&&n(0,s=e.shortcut),"name"in e&&n(1,o=e.name),"fn"in e&&n(8,a=e.fn)},[s,o,c,l,function(){i.set(!0),n(3,l=!0)},u,function(e){n(2,c=""),u(),a.apply(this,e.detail)},function(e){n(2,c=e.detail),(0,r.g)(e.detail)},a]}class Tn extends Re{constructor(e){super(),De(this,e,Cn,In,v,{shortcut:0,name:1,fn:8},jn)}}function Nn(e){$(e,"svelte-9hauj9","ul.svelte-9hauj9{padding-left:0}li.svelte-9hauj9{list-style:none;margin:0;margin-bottom:5px}")}function Dn(e){let t,n,r,s,o,a,i,c,l,u,p,d,f;return r=new On({props:{value:"1",onPress:e[0].reset,label:"reset"}}),a=new On({props:{value:"2",onPress:e[2],label:"save"}}),l=new On({props:{value:"3",onPress:e[3],label:"restore"}}),d=new On({props:{value:".",onPress:e[1],label:"hide"}}),{c(){t=N("ul"),n=N("li"),Ie(r.$$.fragment),s=B(),o=N("li"),Ie(a.$$.fragment),i=B(),c=N("li"),Ie(l.$$.fragment),u=B(),p=N("li"),Ie(d.$$.fragment),L(n,"class","svelte-9hauj9"),L(o,"class","svelte-9hauj9"),L(c,"class","svelte-9hauj9"),L(p,"class","svelte-9hauj9"),L(t,"id","debug-controls"),L(t,"class","controls svelte-9hauj9")},m(e,h){I(e,t,h),M(t,n),Ce(r,n,null),M(t,s),M(t,o),Ce(a,o,null),M(t,i),M(t,c),Ce(l,c,null),M(t,u),M(t,p),Ce(d,p,null),f=!0},p(e,t){let[n]=t;const s={};1&n&&(s.onPress=e[0].reset),r.$set(s);const o={};2&n&&(o.onPress=e[1]),d.$set(o)},i(e){f||(Oe(r.$$.fragment,e),Oe(a.$$.fragment,e),Oe(l.$$.fragment,e),Oe(d.$$.fragment,e),f=!0)},o(e){ke(r.$$.fragment,e),ke(a.$$.fragment,e),ke(l.$$.fragment,e),ke(d.$$.fragment,e),f=!1},d(e){e&&C(t),Te(r),Te(a),Te(l),Te(d)}}}function Rn(e,t,n){let{client:o}=t,{ToggleVisibility:a}=t;return e.$$set=e=>{"client"in e&&n(0,o=e.client),"ToggleVisibility"in e&&n(1,a=e.ToggleVisibility)},[o,a,function(){const e=o.getState(),t=(0,s.stringify)(c(c({},e),{},{_undo:[],_redo:[],deltalog:[]}));window.localStorage.setItem("gamestate",t),window.localStorage.setItem("initialState",(0,s.stringify)(o.initialState))},function(){const e=window.localStorage.getItem("gamestate"),t=window.localStorage.getItem("initialState");if(null!==e&&null!==t){const n=(0,s.parse)(e),a=(0,s.parse)(t);o.store.dispatch((0,r.s)({state:n,initialState:a}))}}]}class Bn extends Re{constructor(e){super(),De(this,e,Rn,Dn,v,{client:0,ToggleVisibility:1},Nn)}}function Gn(e){$(e,"svelte-19aan9p",".player-box.svelte-19aan9p{display:flex;flex-direction:row}.player.svelte-19aan9p{cursor:pointer;text-align:center;width:30px;height:30px;line-height:30px;background:#eee;border:3px solid #fefefe;box-sizing:content-box;padding:0}.player.current.svelte-19aan9p{background:#555;color:#eee;font-weight:bold}.player.active.svelte-19aan9p{border:3px solid #ff7f50}")}function Fn(e,t,n){const r=e.slice();return r[7]=t[n],r}function Ln(e){let t,n,r,s,o,a,i=e[7]+"";function c(){return e[5](e[7])}return{c(){t=N("button"),n=R(i),r=B(),L(t,"class","player svelte-19aan9p"),L(t,"aria-label",s=e[4](e[7])),W(t,"current",e[7]==e[0].currentPlayer),W(t,"active",e[7]==e[1])},m(e,s){I(e,t,s),M(t,n),M(t,r),o||(a=F(t,"click",c),o=!0)},p(r,o){e=r,4&o&&i!==(i=e[7]+"")&&U(n,i),4&o&&s!==(s=e[4](e[7]))&&L(t,"aria-label",s),5&o&&W(t,"current",e[7]==e[0].currentPlayer),6&o&&W(t,"active",e[7]==e[1])},d(e){e&&C(t),o=!1,a()}}}function Un(e){let t,n=e[2],r=[];for(let t=0;t<n.length;t+=1)r[t]=Ln(Fn(e,n,t));return{c(){t=N("div");for(let e=0;e<r.length;e+=1)r[e].c();L(t,"class","player-box svelte-19aan9p")},m(e,n){I(e,t,n);for(let e=0;e<r.length;e+=1)r[e].m(t,null)},p(e,s){let[o]=s;if(31&o){let s;for(n=e[2],s=0;s<n.length;s+=1){const a=Fn(e,n,s);r[s]?r[s].p(a,o):(r[s]=Ln(a),r[s].c(),r[s].m(t,null))}for(;s<r.length;s+=1)r[s].d(1);r.length=n.length}},i:i,o:i,d(e){e&&C(t),T(r,e)}}}function zn(e,t,n){let{ctx:r}=t,{playerID:s}=t;const o=ne();function a(e){o("change",e==s?{playerID:null}:{playerID:e})}let i;return e.$$set=e=>{"ctx"in e&&n(0,r=e.ctx),"playerID"in e&&n(1,s=e.playerID)},e.$$.update=()=>{1&e.$$.dirty&&n(2,i=r?[...Array(r.numPlayers).keys()].map(e=>e.toString()):[])},[r,s,i,a,function(e){const t=[];e==r.currentPlayer&&t.push("current"),e==s&&t.push("active");let n=`Player ${e}`;return t.length&&(n+=` (${t.join(", ")})`),n},e=>a(e)]}class qn extends Re{constructor(e){super(),De(this,e,zn,Un,v,{ctx:0,playerID:1},Gn)}}function Vn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Wn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Hn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Jn(e){return Jn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Jn(e)}function Kn(e,t){return Kn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Kn(e,t)}function Yn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Xn(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Yn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Yn(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,s=function(){};return{s:s,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){i=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw o}}}}function Qn(e){$(e,"svelte-146sq5f",".tree.svelte-146sq5f{--json-tree-font-family:monospace;--json-tree-font-size:14px;--json-tree-null-color:#757575}.label.svelte-146sq5f{margin-bottom:0;text-transform:none}h3.svelte-146sq5f{text-transform:uppercase}ul.svelte-146sq5f{padding-left:0}li.svelte-146sq5f{list-style:none;margin:0;margin-bottom:5px}")}function Zn(e,t,n){const r=e.slice();return r[11]=t[n][0],r[12]=t[n][1],r}function er(e){let t,n,r,s;return n=new Tn({props:{shortcut:e[8][e[11]],fn:e[12],name:e[11]}}),{c(){t=N("li"),Ie(n.$$.fragment),r=B(),L(t,"class","svelte-146sq5f")},m(e,o){I(e,t,o),Ce(n,t,null),M(t,r),s=!0},p(e,t){const r={};16&t&&(r.shortcut=e[8][e[11]]),16&t&&(r.fn=e[12]),16&t&&(r.name=e[11]),n.$set(r)},i(e){s||(Oe(n.$$.fragment,e),s=!0)},o(e){ke(n.$$.fragment,e),s=!1},d(e){e&&C(t),Te(n)}}}function tr(e){let t,n,r;return n=new Tn({props:{name:"endStage",shortcut:7,fn:e[5].endStage}}),{c(){t=N("li"),Ie(n.$$.fragment),L(t,"class","svelte-146sq5f")},m(e,s){I(e,t,s),Ce(n,t,null),r=!0},p(e,t){const r={};32&t&&(r.fn=e[5].endStage),n.$set(r)},i(e){r||(Oe(n.$$.fragment,e),r=!0)},o(e){ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),Te(n)}}}function nr(e){let t,n,r;return n=new Tn({props:{name:"endTurn",shortcut:8,fn:e[5].endTurn}}),{c(){t=N("li"),Ie(n.$$.fragment),L(t,"class","svelte-146sq5f")},m(e,s){I(e,t,s),Ce(n,t,null),r=!0},p(e,t){const r={};32&t&&(r.fn=e[5].endTurn),n.$set(r)},i(e){r||(Oe(n.$$.fragment,e),r=!0)},o(e){ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),Te(n)}}}function rr(e){let t,n,r;return n=new Tn({props:{name:"endPhase",shortcut:9,fn:e[5].endPhase}}),{c(){t=N("li"),Ie(n.$$.fragment),L(t,"class","svelte-146sq5f")},m(e,s){I(e,t,s),Ce(n,t,null),r=!0},p(e,t){const r={};32&t&&(r.fn=e[5].endPhase),n.$set(r)},i(e){r||(Oe(n.$$.fragment,e),r=!0)},o(e){ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),Te(n)}}}function sr(e){let t,n,r,s,o,a,i,c,l,u,p,d,f,h,v,y,g,m,b,x,_,w,P,O,k,E,$,A,j,S,D,R,G,F;s=new Bn({props:{client:e[0],ToggleVisibility:e[2]}}),l=new qn({props:{ctx:e[6],playerID:e[3]}}),l.$on("change",e[9]);let U=Object.entries(e[4]),z=[];for(let t=0;t<U.length;t+=1)z[t]=er(Zn(e,U,t));const q=e=>ke(z[e],1,1,()=>{z[e]=null});let V=e[6].activePlayers&&e[5].endStage&&tr(e),W=e[5].endTurn&&nr(e),H=e[6].phase&&e[5].endPhase&&rr(e);return E=new pn({props:{value:e[7]}}),D=new pn({props:{value:or(e[6])}}),G=new bn({props:{clientManager:e[1]}}),{c(){t=N("section"),n=N("h3"),n.textContent="Controls",r=B(),Ie(s.$$.fragment),o=B(),a=N("section"),i=N("h3"),i.textContent="Players",c=B(),Ie(l.$$.fragment),u=B(),p=N("section"),d=N("h3"),d.textContent="Moves",f=B(),h=N("ul");for(let e=0;e<z.length;e+=1)z[e].c();v=B(),y=N("section"),g=N("h3"),g.textContent="Events",m=B(),b=N("ul"),V&&V.c(),x=B(),W&&W.c(),_=B(),H&&H.c(),w=B(),P=N("section"),O=N("h3"),O.textContent="G",k=B(),Ie(E.$$.fragment),$=B(),A=N("section"),j=N("h3"),j.textContent="ctx",S=B(),Ie(D.$$.fragment),R=B(),Ie(G.$$.fragment),L(n,"class","svelte-146sq5f"),L(i,"class","svelte-146sq5f"),L(d,"class","svelte-146sq5f"),L(h,"class","svelte-146sq5f"),L(g,"class","svelte-146sq5f"),L(b,"class","svelte-146sq5f"),L(O,"class","label svelte-146sq5f"),L(P,"class","tree svelte-146sq5f"),L(j,"class","label svelte-146sq5f"),L(A,"class","tree svelte-146sq5f")},m(e,C){I(e,t,C),M(t,n),M(t,r),Ce(s,t,null),I(e,o,C),I(e,a,C),M(a,i),M(a,c),Ce(l,a,null),I(e,u,C),I(e,p,C),M(p,d),M(p,f),M(p,h);for(let e=0;e<z.length;e+=1)z[e].m(h,null);I(e,v,C),I(e,y,C),M(y,g),M(y,m),M(y,b),V&&V.m(b,null),M(b,x),W&&W.m(b,null),M(b,_),H&&H.m(b,null),I(e,w,C),I(e,P,C),M(P,O),M(P,k),Ce(E,P,null),I(e,$,C),I(e,A,C),M(A,j),M(A,S),Ce(D,A,null),I(e,R,C),Ce(G,e,C),F=!0},p(e,t){let[n]=t;const r={};1&n&&(r.client=e[0]),4&n&&(r.ToggleVisibility=e[2]),s.$set(r);const o={};if(64&n&&(o.ctx=e[6]),8&n&&(o.playerID=e[3]),l.$set(o),272&n){let t;for(U=Object.entries(e[4]),t=0;t<U.length;t+=1){const r=Zn(e,U,t);z[t]?(z[t].p(r,n),Oe(z[t],1)):(z[t]=er(r),z[t].c(),Oe(z[t],1),z[t].m(h,null))}for(we(),t=U.length;t<z.length;t+=1)q(t);Pe()}e[6].activePlayers&&e[5].endStage?V?(V.p(e,n),96&n&&Oe(V,1)):(V=tr(e),V.c(),Oe(V,1),V.m(b,x)):V&&(we(),ke(V,1,1,()=>{V=null}),Pe()),e[5].endTurn?W?(W.p(e,n),32&n&&Oe(W,1)):(W=nr(e),W.c(),Oe(W,1),W.m(b,_)):W&&(we(),ke(W,1,1,()=>{W=null}),Pe()),e[6].phase&&e[5].endPhase?H?(H.p(e,n),96&n&&Oe(H,1)):(H=rr(e),H.c(),Oe(H,1),H.m(b,null)):H&&(we(),ke(H,1,1,()=>{H=null}),Pe());const a={};128&n&&(a.value=e[7]),E.$set(a);const i={};64&n&&(i.value=or(e[6])),D.$set(i);const c={};2&n&&(c.clientManager=e[1]),G.$set(c)},i(e){if(!F){Oe(s.$$.fragment,e),Oe(l.$$.fragment,e);for(let e=0;e<U.length;e+=1)Oe(z[e]);Oe(V),Oe(W),Oe(H),Oe(E.$$.fragment,e),Oe(D.$$.fragment,e),Oe(G.$$.fragment,e),F=!0}},o(e){ke(s.$$.fragment,e),ke(l.$$.fragment,e),z=z.filter(Boolean);for(let e=0;e<z.length;e+=1)ke(z[e]);ke(V),ke(W),ke(H),ke(E.$$.fragment,e),ke(D.$$.fragment,e),ke(G.$$.fragment,e),F=!1},d(e){e&&C(t),Te(s),e&&C(o),e&&C(a),Te(l),e&&C(u),e&&C(p),T(z,e),e&&C(v),e&&C(y),V&&V.d(),W&&W.d(),H&&H.d(),e&&C(w),e&&C(P),Te(E),e&&C($),e&&C(A),Te(D),e&&C(R),Te(G,e)}}}function or(e){let t={};for(const n in e)n.startsWith("_")||(t[n]=e[n]);return t}function ar(e,t,n){let{client:r}=t,{clientManager:s}=t,{ToggleVisibility:o}=t;const a=function(e,t){var n,r={},s={},o=Xn(t);try{for(o.s();!(n=o.n()).done;)s[n.value]=!0}catch(e){o.e(e)}finally{o.f()}var a=s,i=!0;for(var c in e){var l=c[0];if(a[l]){i=!1;break}a[l]=!0,r[c]=l}if(i)return r;a=s;var u=97;for(var p in r={},e){for(var d=String.fromCharCode(u);a[d];)u++,d=String.fromCharCode(u);a[d]=!0,r[p]=d}return r}(r.moves,"mlia");let{playerID:i,moves:c,events:l}=r,u={},p={};return te(r.subscribe(e=>{e&&n(7,({G:p,ctx:u}=e),p,n(6,u)),n(3,({playerID:i,moves:c,events:l}=r),i,n(4,c),n(5,l))})),e.$$set=e=>{"client"in e&&n(0,r=e.client),"clientManager"in e&&n(1,s=e.clientManager),"ToggleVisibility"in e&&n(2,o=e.ToggleVisibility)},[r,s,o,i,c,l,u,p,a,e=>s.switchPlayerID(e.detail.playerID)]}class ir extends Re{constructor(e){super(),De(this,e,ar,sr,v,{client:0,clientManager:1,ToggleVisibility:2},Qn)}}function cr(e){$(e,"svelte-13qih23",".item.svelte-13qih23.svelte-13qih23{padding:10px}.item.svelte-13qih23.svelte-13qih23:not(:first-child){border-top:1px dashed #aaa}.item.svelte-13qih23 div.svelte-13qih23{float:right;text-align:right}")}function lr(e){let t,n,r,s,o,a,c=JSON.stringify(e[1])+"";return{c(){t=N("div"),n=N("strong"),r=R(e[0]),s=B(),o=N("div"),a=R(c),L(o,"class","svelte-13qih23"),L(t,"class","item svelte-13qih23")},m(e,i){I(e,t,i),M(t,n),M(n,r),M(t,s),M(t,o),M(o,a)},p(e,t){let[n]=t;1&n&&U(r,e[0]),2&n&&c!==(c=JSON.stringify(e[1])+"")&&U(a,c)},i:i,o:i,d(e){e&&C(t)}}}function ur(e,t,n){let{name:r}=t,{value:s}=t;return e.$$set=e=>{"name"in e&&n(0,r=e.name),"value"in e&&n(1,s=e.value)},[r,s]}class pr extends Re{constructor(e){super(),De(this,e,ur,lr,v,{name:0,value:1},cr)}}function dr(e){$(e,"svelte-1yzq5o8",".gameinfo.svelte-1yzq5o8{padding:10px}")}function fr(e){let t,n;return t=new pr({props:{name:"isConnected",value:e[1].isConnected}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};2&n&&(r.value=e[1].isConnected),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function hr(e){let t,n,r,s,o,a,i,c;n=new pr({props:{name:"matchID",value:e[0].matchID}}),s=new pr({props:{name:"playerID",value:e[0].playerID}}),a=new pr({props:{name:"isActive",value:e[1].isActive}});let l=e[0].multiplayer&&fr(e);return{c(){t=N("section"),Ie(n.$$.fragment),r=B(),Ie(s.$$.fragment),o=B(),Ie(a.$$.fragment),i=B(),l&&l.c(),L(t,"class","gameinfo svelte-1yzq5o8")},m(e,u){I(e,t,u),Ce(n,t,null),M(t,r),Ce(s,t,null),M(t,o),Ce(a,t,null),M(t,i),l&&l.m(t,null),c=!0},p(e,r){let[o]=r;const i={};1&o&&(i.value=e[0].matchID),n.$set(i);const c={};1&o&&(c.value=e[0].playerID),s.$set(c);const u={};2&o&&(u.value=e[1].isActive),a.$set(u),e[0].multiplayer?l?(l.p(e,o),1&o&&Oe(l,1)):(l=fr(e),l.c(),Oe(l,1),l.m(t,null)):l&&(we(),ke(l,1,1,()=>{l=null}),Pe())},i(e){c||(Oe(n.$$.fragment,e),Oe(s.$$.fragment,e),Oe(a.$$.fragment,e),Oe(l),c=!0)},o(e){ke(n.$$.fragment,e),ke(s.$$.fragment,e),ke(a.$$.fragment,e),ke(l),c=!1},d(e){e&&C(t),Te(n),Te(s),Te(a),l&&l.d()}}}function vr(e,t,n){let r,s=i,o=()=>(s(),s=y(a,e=>n(1,r=e)),a);e.$$.on_destroy.push(()=>s());let{client:a}=t;o();let{clientManager:c}=t,{ToggleVisibility:l}=t;return e.$$set=e=>{"client"in e&&o(n(0,a=e.client)),"clientManager"in e&&n(2,c=e.clientManager),"ToggleVisibility"in e&&n(3,l=e.ToggleVisibility)},[a,r,c,l]}class yr extends Re{constructor(e){super(),De(this,e,vr,hr,v,{client:0,clientManager:2,ToggleVisibility:3},dr)}}function gr(e){$(e,"svelte-6eza86",".turn-marker.svelte-6eza86{display:flex;justify-content:center;align-items:center;grid-column:1;background:#555;color:#eee;text-align:center;font-weight:bold;border:1px solid #888}")}function mr(e){let t,n;return{c(){t=N("div"),n=R(e[0]),L(t,"class","turn-marker svelte-6eza86"),L(t,"style",e[1])},m(e,r){I(e,t,r),M(t,n)},p(e,t){let[r]=t;1&r&&U(n,e[0])},i:i,o:i,d(e){e&&C(t)}}}function br(e,t,n){let{turn:r}=t,{numEvents:s}=t;const o=`grid-row: span ${s}`;return e.$$set=e=>{"turn"in e&&n(0,r=e.turn),"numEvents"in e&&n(2,s=e.numEvents)},[r,o,s]}class xr extends Re{constructor(e){super(),De(this,e,br,mr,v,{turn:0,numEvents:2},gr)}}function _r(e){$(e,"svelte-1t4xap",".phase-marker.svelte-1t4xap{grid-column:3;background:#555;border:1px solid #888;color:#eee;text-align:center;font-weight:bold;padding-top:10px;padding-bottom:10px;text-orientation:sideways;writing-mode:vertical-rl;line-height:30px;width:100%}")}function wr(e){let t,n,r=(e[0]||"")+"";return{c(){t=N("div"),n=R(r),L(t,"class","phase-marker svelte-1t4xap"),L(t,"style",e[1])},m(e,r){I(e,t,r),M(t,n)},p(e,t){let[s]=t;1&s&&r!==(r=(e[0]||"")+"")&&U(n,r)},i:i,o:i,d(e){e&&C(t)}}}function Pr(e,t,n){let{phase:r}=t,{numEvents:s}=t;const o=`grid-row: span ${s}`;return e.$$set=e=>{"phase"in e&&n(0,r=e.phase),"numEvents"in e&&n(2,s=e.numEvents)},[r,o,s]}class Or extends Re{constructor(e){super(),De(this,e,Pr,wr,v,{phase:0,numEvents:2},_r)}}function kr(e){let t;return{c(){t=N("div"),t.textContent=`${e[0]}`},m(e,n){I(e,t,n)},p:i,i:i,o:i,d(e){e&&C(t)}}}function Er(e,t,n){let{metadata:r}=t;const s=void 0!==r?JSON.stringify(r,null,4):"";return e.$$set=e=>{"metadata"in e&&n(1,r=e.metadata)},[s,r]}class Mr extends Re{constructor(e){super(),De(this,e,Er,kr,v,{metadata:1})}}function $r(e){$(e,"svelte-vajd9z",".log-event.svelte-vajd9z{grid-column:2;cursor:pointer;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:#fff;border:1px dotted #ccc;border-left:5px solid #ccc;padding:5px;text-align:center;color:#666;font-size:14px;min-height:25px;line-height:25px}.log-event.svelte-vajd9z:hover,.log-event.svelte-vajd9z:focus{border-style:solid;background:#eee}.log-event.pinned.svelte-vajd9z{border-style:solid;background:#eee;opacity:1}.args.svelte-vajd9z{text-align:left;white-space:pre-wrap}.player0.svelte-vajd9z{border-left-color:#ff851b}.player1.svelte-vajd9z{border-left-color:#7fdbff}.player2.svelte-vajd9z{border-left-color:#0074d9}.player3.svelte-vajd9z{border-left-color:#39cccc}.player4.svelte-vajd9z{border-left-color:#3d9970}.player5.svelte-vajd9z{border-left-color:#2ecc40}.player6.svelte-vajd9z{border-left-color:#01ff70}.player7.svelte-vajd9z{border-left-color:#ffdc00}.player8.svelte-vajd9z{border-left-color:#001f3f}.player9.svelte-vajd9z{border-left-color:#ff4136}.player10.svelte-vajd9z{border-left-color:#85144b}.player11.svelte-vajd9z{border-left-color:#f012be}.player12.svelte-vajd9z{border-left-color:#b10dc9}.player13.svelte-vajd9z{border-left-color:#111111}.player14.svelte-vajd9z{border-left-color:#aaaaaa}.player15.svelte-vajd9z{border-left-color:#dddddd}")}function Ar(e){let t,n;return t=new Mr({props:{metadata:e[2]}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};4&n&&(r.metadata=e[2]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function jr(e){let t,n,r;var s=e[3];function o(e){return{props:{metadata:e[2]}}}return s&&(t=new s(o(e))),{c(){t&&Ie(t.$$.fragment),n=G()},m(e,s){t&&Ce(t,e,s),I(e,n,s),r=!0},p(e,r){const a={};if(4&r&&(a.metadata=e[2]),s!==(s=e[3])){if(t){we();const e=t;ke(e.$$.fragment,1,0,()=>{Te(e,1)}),Pe()}s?(t=new s(o(e)),Ie(t.$$.fragment),Oe(t.$$.fragment,1),Ce(t,n.parentNode,n)):t=null}else s&&t.$set(a)},i(e){r||(t&&Oe(t.$$.fragment,e),r=!0)},o(e){t&&ke(t.$$.fragment,e),r=!1},d(e){e&&C(n),t&&Te(t,e)}}}function Sr(e){let t,n,r,s,o,a,i,c,l,u,p,d;const h=[jr,Ar],v=[];function y(e,t){return e[3]?0:1}return c=y(e),l=v[c]=h[c](e),{c(){t=N("button"),n=N("div"),r=R(e[4]),s=R("("),o=R(e[6]),a=R(")"),i=B(),l.c(),L(n,"class","args svelte-vajd9z"),L(t,"class","log-event player"+e[7]+" svelte-vajd9z"),W(t,"pinned",e[1])},m(l,f){I(l,t,f),M(t,n),M(n,r),M(n,s),M(n,o),M(n,a),M(t,i),v[c].m(t,null),u=!0,p||(d=[F(t,"click",e[9]),F(t,"mouseenter",e[10]),F(t,"focus",e[11]),F(t,"mouseleave",e[12]),F(t,"blur",e[13])],p=!0)},p(e,n){let[s]=n;(!u||16&s)&&U(r,e[4]);let o=c;c=y(e),c===o?v[c].p(e,s):(we(),ke(v[o],1,1,()=>{v[o]=null}),Pe(),l=v[c],l?l.p(e,s):(l=v[c]=h[c](e),l.c()),Oe(l,1),l.m(t,null)),2&s&&W(t,"pinned",e[1])},i(e){u||(Oe(l),u=!0)},o(e){ke(l),u=!1},d(e){e&&C(t),v[c].d(),p=!1,f(d)}}}function Ir(e,t,n){let{logIndex:r}=t,{action:s}=t,{pinned:o}=t,{metadata:a}=t,{metadataComponent:i}=t;const c=ne(),l=s.payload.args,u=Array.isArray(l)?l.map(e=>JSON.stringify(e,null,2)).join(","):JSON.stringify(l,null,2)||"",p=s.payload.playerID;let d;switch(s.type){case"UNDO":d="undo";break;case"REDO":d="redo";default:d=s.payload.type}return e.$$set=e=>{"logIndex"in e&&n(0,r=e.logIndex),"action"in e&&n(8,s=e.action),"pinned"in e&&n(1,o=e.pinned),"metadata"in e&&n(2,a=e.metadata),"metadataComponent"in e&&n(3,i=e.metadataComponent)},[r,o,a,i,d,c,u,p,s,()=>c("click",{logIndex:r}),()=>c("mouseenter",{logIndex:r}),()=>c("mouseenter",{logIndex:r}),()=>c("mouseleave"),()=>c("mouseleave")]}class Cr extends Re{constructor(e){super(),De(this,e,Ir,Sr,v,{logIndex:0,action:8,pinned:1,metadata:2,metadataComponent:3},$r)}}function Tr(e){let t;return{c(){t=D("path"),L(t,"d","M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zM212 140v116h-70.9c-10.7 0-16.1 13-8.5 20.5l114.9 114.3c4.7 4.7 12.2 4.7 16.9 0l114.9-114.3c7.6-7.6 2.2-20.5-8.5-20.5H300V140c0-6.6-5.4-12-12-12h-64c-6.6 0-12 5.4-12 12z")},m(e,n){I(e,t,n)},p:i,d(e){e&&C(t)}}}function Nr(e){let t,n;const r=[{viewBox:"0 0 512 512"},e[0]];let s={$$slots:{default:[Tr]},$$scope:{ctx:e}};for(let e=0;e<r.length;e+=1)s=u(s,r[e]);return t=new He({props:s}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){let[s]=n;const o=1&s?je(r,[r[0],Se(e[0])]):{};2&s&&(o.$$scope={dirty:s,ctx:e}),t.$set(o)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Dr(e,t,n){return e.$$set=e=>{n(0,t=u(u({},t),b(e)))},[t=b(t)]}class Rr extends Re{constructor(e){super(),De(this,e,Dr,Nr,v,{})}}function Br(e){$(e,"svelte-1a7time","div.svelte-1a7time{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:500px}")}function Gr(e){let t,n;return{c(){t=N("div"),n=R(e[0]),L(t,"alt",e[0]),L(t,"class","svelte-1a7time")},m(e,r){I(e,t,r),M(t,n)},p(e,r){let[s]=r;1&s&&U(n,e[0]),1&s&&L(t,"alt",e[0])},i:i,o:i,d(e){e&&C(t)}}}function Fr(e,t,n){let r,{action:s}=t;return e.$$set=e=>{"action"in e&&n(1,s=e.action)},e.$$.update=()=>{if(2&e.$$.dirty){const{type:e,args:t}=s.payload,o=(t||[]).join(",");n(0,r=`${e}(${o})`)}},[r,s]}class Lr extends Re{constructor(e){super(),De(this,e,Fr,Gr,v,{action:1},Br)}}function Ur(e){$(e,"svelte-ztcwsu","table.svelte-ztcwsu.svelte-ztcwsu{font-size:12px;border-collapse:collapse;border:1px solid #ddd;padding:0}tr.svelte-ztcwsu.svelte-ztcwsu{cursor:pointer}tr.svelte-ztcwsu:hover td.svelte-ztcwsu{background:#eee}tr.selected.svelte-ztcwsu td.svelte-ztcwsu{background:#eee}td.svelte-ztcwsu.svelte-ztcwsu{padding:10px;height:10px;line-height:10px;font-size:12px;border:none}th.svelte-ztcwsu.svelte-ztcwsu{background:#888;color:#fff;padding:10px;text-align:center}")}function zr(e,t,n){const r=e.slice();return r[10]=t[n],r[12]=n,r}function qr(e){let t,n,r,s,o,a,i,c,l,u,p,d,h,v=e[10].value+"",y=e[10].visits+"";function g(){return e[6](e[10],e[12])}function m(){return e[7](e[12])}function b(){return e[8](e[10],e[12])}return l=new Lr({props:{action:e[10].parentAction}}),{c(){t=N("tr"),n=N("td"),r=R(v),s=B(),o=N("td"),a=R(y),i=B(),c=N("td"),Ie(l.$$.fragment),u=B(),L(n,"class","svelte-ztcwsu"),L(o,"class","svelte-ztcwsu"),L(c,"class","svelte-ztcwsu"),L(t,"class","svelte-ztcwsu"),W(t,"clickable",e[1].length>0),W(t,"selected",e[12]===e[0])},m(e,f){I(e,t,f),M(t,n),M(n,r),M(t,s),M(t,o),M(o,a),M(t,i),M(t,c),Ce(l,c,null),M(t,u),p=!0,d||(h=[F(t,"click",g),F(t,"mouseout",m),F(t,"mouseover",b)],d=!0)},p(n,s){e=n,(!p||2&s)&&v!==(v=e[10].value+"")&&U(r,v),(!p||2&s)&&y!==(y=e[10].visits+"")&&U(a,y);const o={};2&s&&(o.action=e[10].parentAction),l.$set(o),2&s&&W(t,"clickable",e[1].length>0),1&s&&W(t,"selected",e[12]===e[0])},i(e){p||(Oe(l.$$.fragment,e),p=!0)},o(e){ke(l.$$.fragment,e),p=!1},d(e){e&&C(t),Te(l),d=!1,f(h)}}}function Vr(e){let t,n,r,s,o,a=e[1],i=[];for(let t=0;t<a.length;t+=1)i[t]=qr(zr(e,a,t));const c=e=>ke(i[e],1,1,()=>{i[e]=null});return{c(){t=N("table"),n=N("thead"),n.innerHTML='<th class="svelte-ztcwsu">Value</th> \n <th class="svelte-ztcwsu">Visits</th> \n <th class="svelte-ztcwsu">Action</th>',r=B(),s=N("tbody");for(let e=0;e<i.length;e+=1)i[e].c();L(t,"class","svelte-ztcwsu")},m(e,a){I(e,t,a),M(t,n),M(t,r),M(t,s);for(let e=0;e<i.length;e+=1)i[e].m(s,null);o=!0},p(e,t){let[n]=t;if(15&n){let t;for(a=e[1],t=0;t<a.length;t+=1){const r=zr(e,a,t);i[t]?(i[t].p(r,n),Oe(i[t],1)):(i[t]=qr(r),i[t].c(),Oe(i[t],1),i[t].m(s,null))}for(we(),t=a.length;t<i.length;t+=1)c(t);Pe()}},i(e){if(!o){for(let e=0;e<a.length;e+=1)Oe(i[e]);o=!0}},o(e){i=i.filter(Boolean);for(let e=0;e<i.length;e+=1)ke(i[e]);o=!1},d(e){e&&C(t),T(i,e)}}}function Wr(e,t,n){let{root:r}=t,{selectedIndex:s=null}=t;const o=ne();let a=[],i=[];function c(e,t){o("select",{node:e,selectedIndex:t})}function l(e,t){null===s&&o("preview",{node:e})}return e.$$set=e=>{"root"in e&&n(4,r=e.root),"selectedIndex"in e&&n(0,s=e.selectedIndex)},e.$$.update=()=>{if(48&e.$$.dirty){let e=r;for(n(5,a=[]);e.parent;){const t=e.parent,{type:n,args:r}=e.parentAction.payload,s=`${n}(${(r||[]).join(",")})`;a.push({parent:t,arrowText:s}),e=t}a.reverse(),n(1,i=[...r.children].sort((e,t)=>e.visits<t.visits?1:-1).slice(0,50))}},[s,i,c,l,r,a,(e,t)=>c(e,t),e=>l(null),(e,t)=>l(e)]}class Hr extends Re{constructor(e){super(),De(this,e,Wr,Vr,v,{root:4,selectedIndex:0},Ur)}}function Jr(e){$(e,"svelte-1f0amz4",".visualizer.svelte-1f0amz4{display:flex;flex-direction:column;align-items:center;padding:50px}.preview.svelte-1f0amz4{opacity:0.5}.icon.svelte-1f0amz4{color:#777;width:32px;height:32px;margin-bottom:20px}")}function Kr(e,t,n){const r=e.slice();return r[9]=t[n].node,r[10]=t[n].selectedIndex,r[12]=n,r}function Yr(e){let t,n;return t=new Hr({props:{root:e[9],selectedIndex:e[10]}}),t.$on("select",function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return e[7](e[12],...n)}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(n,r){e=n;const s={};1&r&&(s.root=e[9]),1&r&&(s.selectedIndex=e[10]),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Xr(e){let t,n;return t=new Hr({props:{root:e[9]}}),t.$on("select",function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return e[5](e[12],...n)}),t.$on("preview",function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return e[6](e[12],...n)}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(n,r){e=n;const s={};1&r&&(s.root=e[9]),t.$set(s)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function Qr(e){let t,n,r,s,o,a=0!==e[12]&&function(){let e,t,n;return t=new Rr({}),{c(){e=N("div"),Ie(t.$$.fragment),L(e,"class","icon svelte-1f0amz4")},m(r,s){I(r,e,s),Ce(t,e,null),n=!0},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(n){n&&C(e),Te(t)}}}();const i=[Xr,Yr],c=[];function l(e,t){return e[12]===e[0].length-1?0:1}return r=l(e),s=c[r]=i[r](e),{c(){a&&a.c(),t=B(),n=N("section"),s.c()},m(e,s){a&&a.m(e,s),I(e,t,s),I(e,n,s),c[r].m(n,null),o=!0},p(e,t){let o=r;r=l(e),r===o?c[r].p(e,t):(we(),ke(c[o],1,1,()=>{c[o]=null}),Pe(),s=c[r],s?s.p(e,t):(s=c[r]=i[r](e),s.c()),Oe(s,1),s.m(n,null))},i(e){o||(Oe(a),Oe(s),o=!0)},o(e){ke(a),ke(s),o=!1},d(e){a&&a.d(e),e&&C(t),e&&C(n),c[r].d()}}}function Zr(e){let t,n,r,s,o,a;return n=new Rr({}),o=new Hr({props:{root:e[1]}}),{c(){t=N("div"),Ie(n.$$.fragment),r=B(),s=N("section"),Ie(o.$$.fragment),L(t,"class","icon svelte-1f0amz4"),L(s,"class","preview svelte-1f0amz4")},m(e,i){I(e,t,i),Ce(n,t,null),I(e,r,i),I(e,s,i),Ce(o,s,null),a=!0},p(e,t){const n={};2&t&&(n.root=e[1]),o.$set(n)},i(e){a||(Oe(n.$$.fragment,e),Oe(o.$$.fragment,e),a=!0)},o(e){ke(n.$$.fragment,e),ke(o.$$.fragment,e),a=!1},d(e){e&&C(t),Te(n),e&&C(r),e&&C(s),Te(o)}}}function es(e){let t,n,r,s=e[0],o=[];for(let t=0;t<s.length;t+=1)o[t]=Qr(Kr(e,s,t));const a=e=>ke(o[e],1,1,()=>{o[e]=null});let i=e[1]&&Zr(e);return{c(){t=N("div");for(let e=0;e<o.length;e+=1)o[e].c();n=B(),i&&i.c(),L(t,"class","visualizer svelte-1f0amz4")},m(e,s){I(e,t,s);for(let e=0;e<o.length;e+=1)o[e].m(t,null);M(t,n),i&&i.m(t,null),r=!0},p(e,r){let[c]=r;if(13&c){let r;for(s=e[0],r=0;r<s.length;r+=1){const a=Kr(e,s,r);o[r]?(o[r].p(a,c),Oe(o[r],1)):(o[r]=Qr(a),o[r].c(),Oe(o[r],1),o[r].m(t,n))}for(we(),r=s.length;r<o.length;r+=1)a(r);Pe()}e[1]?i?(i.p(e,c),2&c&&Oe(i,1)):(i=Zr(e),i.c(),Oe(i,1),i.m(t,null)):i&&(we(),ke(i,1,1,()=>{i=null}),Pe())},i(e){if(!r){for(let e=0;e<s.length;e+=1)Oe(o[e]);Oe(i),r=!0}},o(e){o=o.filter(Boolean);for(let e=0;e<o.length;e+=1)ke(o[e]);ke(i),r=!1},d(e){e&&C(t),T(o,e),i&&i.d()}}}function ts(e,t,n){let{metadata:r}=t,s=[],o=null;function a(e,t){let{node:r,selectedIndex:a}=e;n(1,o=null),n(0,s[t].selectedIndex=a,s),n(0,s=[...s.slice(0,t+1),{node:r}])}function i(e,t){let{node:r}=e;n(1,o=r)}return e.$$set=e=>{"metadata"in e&&n(4,r=e.metadata)},e.$$.update=()=>{16&e.$$.dirty&&n(0,s=[{node:r}])},[s,o,a,i,r,(e,t)=>a(t.detail,e),(e,t)=>i(t.detail),(e,t)=>a(t.detail,e)]}class ns extends Re{constructor(e){super(),De(this,e,ts,es,v,{metadata:4},Jr)}}function rs(e){$(e,"svelte-1pq5e4b",".gamelog.svelte-1pq5e4b{display:grid;grid-template-columns:30px 1fr 30px;grid-auto-rows:auto;grid-auto-flow:column}")}function ss(e,t,n){const r=e.slice();return r[16]=t[n].phase,r[18]=n,r}function os(e,t,n){const r=e.slice();return r[19]=t[n].action,r[20]=t[n].metadata,r[18]=n,r}function as(e,t,n){const r=e.slice();return r[22]=t[n].turn,r[18]=n,r}function is(e){let t,n;return t=new xr({props:{turn:e[22],numEvents:e[3][e[18]]}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};2&n&&(r.turn=e[22]),8&n&&(r.numEvents=e[3][e[18]]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function cs(e){let t,n,r=e[18]in e[3]&&is(e);return{c(){r&&r.c(),t=G()},m(e,s){r&&r.m(e,s),I(e,t,s),n=!0},p(e,n){e[18]in e[3]?r?(r.p(e,n),8&n&&Oe(r,1)):(r=is(e),r.c(),Oe(r,1),r.m(t.parentNode,t)):r&&(we(),ke(r,1,1,()=>{r=null}),Pe())},i(e){n||(Oe(r),n=!0)},o(e){ke(r),n=!1},d(e){r&&r.d(e),e&&C(t)}}}function ls(e){let t,n;return t=new Cr({props:{pinned:e[18]===e[2],logIndex:e[18],action:e[19],metadata:e[20]}}),t.$on("click",e[5]),t.$on("mouseenter",e[6]),t.$on("mouseleave",e[7]),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};4&n&&(r.pinned=e[18]===e[2]),2&n&&(r.action=e[19]),2&n&&(r.metadata=e[20]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function us(e){let t,n;return t=new Or({props:{phase:e[16],numEvents:e[4][e[18]]}}),{c(){Ie(t.$$.fragment)},m(e,r){Ce(t,e,r),n=!0},p(e,n){const r={};2&n&&(r.phase=e[16]),16&n&&(r.numEvents=e[4][e[18]]),t.$set(r)},i(e){n||(Oe(t.$$.fragment,e),n=!0)},o(e){ke(t.$$.fragment,e),n=!1},d(e){Te(t,e)}}}function ps(e){let t,n,r=e[18]in e[4]&&us(e);return{c(){r&&r.c(),t=G()},m(e,s){r&&r.m(e,s),I(e,t,s),n=!0},p(e,n){e[18]in e[4]?r?(r.p(e,n),16&n&&Oe(r,1)):(r=us(e),r.c(),Oe(r,1),r.m(t.parentNode,t)):r&&(we(),ke(r,1,1,()=>{r=null}),Pe())},i(e){n||(Oe(r),n=!0)},o(e){ke(r),n=!1},d(e){r&&r.d(e),e&&C(t)}}}function ds(e){let t,n,r,s,o,a,i=e[1],c=[];for(let t=0;t<i.length;t+=1)c[t]=cs(as(e,i,t));const l=e=>ke(c[e],1,1,()=>{c[e]=null});let u=e[1],p=[];for(let t=0;t<u.length;t+=1)p[t]=ls(os(e,u,t));const d=e=>ke(p[e],1,1,()=>{p[e]=null});let f=e[1],h=[];for(let t=0;t<f.length;t+=1)h[t]=ps(ss(e,f,t));const v=e=>ke(h[e],1,1,()=>{h[e]=null});return{c(){t=N("div");for(let e=0;e<c.length;e+=1)c[e].c();n=B();for(let e=0;e<p.length;e+=1)p[e].c();r=B();for(let e=0;e<h.length;e+=1)h[e].c();L(t,"class","gamelog svelte-1pq5e4b"),W(t,"pinned",e[2])},m(i,l){I(i,t,l);for(let e=0;e<c.length;e+=1)c[e].m(t,null);M(t,n);for(let e=0;e<p.length;e+=1)p[e].m(t,null);M(t,r);for(let e=0;e<h.length;e+=1)h[e].m(t,null);s=!0,o||(a=F(window,"keydown",e[8]),o=!0)},p(e,s){let[o]=s;if(10&o){let r;for(i=e[1],r=0;r<i.length;r+=1){const s=as(e,i,r);c[r]?(c[r].p(s,o),Oe(c[r],1)):(c[r]=cs(s),c[r].c(),Oe(c[r],1),c[r].m(t,n))}for(we(),r=i.length;r<c.length;r+=1)l(r);Pe()}if(230&o){let n;for(u=e[1],n=0;n<u.length;n+=1){const s=os(e,u,n);p[n]?(p[n].p(s,o),Oe(p[n],1)):(p[n]=ls(s),p[n].c(),Oe(p[n],1),p[n].m(t,r))}for(we(),n=u.length;n<p.length;n+=1)d(n);Pe()}if(18&o){let n;for(f=e[1],n=0;n<f.length;n+=1){const r=ss(e,f,n);h[n]?(h[n].p(r,o),Oe(h[n],1)):(h[n]=ps(r),h[n].c(),Oe(h[n],1),h[n].m(t,null))}for(we(),n=f.length;n<h.length;n+=1)v(n);Pe()}4&o&&W(t,"pinned",e[2])},i(e){if(!s){for(let e=0;e<i.length;e+=1)Oe(c[e]);for(let e=0;e<u.length;e+=1)Oe(p[e]);for(let e=0;e<f.length;e+=1)Oe(h[e]);s=!0}},o(e){c=c.filter(Boolean);for(let e=0;e<c.length;e+=1)ke(c[e]);p=p.filter(Boolean);for(let e=0;e<p.length;e+=1)ke(p[e]);h=h.filter(Boolean);for(let e=0;e<h.length;e+=1)ke(h[e]);s=!1},d(e){e&&C(t),T(c,e),T(p,e),T(h,e),o=!1,a()}}}function fs(e,t,n){let r,s=i,a=()=>(s(),s=y(c,e=>n(10,r=e)),c);e.$$.on_destroy.push(()=>s());let{client:c}=t;a();const{secondaryPane:l}=se("secondaryPane"),u=(0,o.C)({game:c.game}),p=c.getInitialState();let d,{log:f}=r,h=null;function v(e){let t=p;for(let n=0;n<f.length;n++){const{action:r,automatic:s}=f[n];if(!s){if(t=u(t,r),0==e)break;e--}}return{G:t.G,ctx:t.ctx,plugins:t.plugins}}function g(){n(2,h=null),c.overrideGameState(null),l.set(null)}te(g);let m={},b={};return e.$$set=e=>{"client"in e&&a(n(0,c=e.client))},e.$$.update=()=>{if(1538&e.$$.dirty){n(9,f=r.log),n(1,d=f.filter(e=>!e.automatic));let e=0,t=0;n(3,m={}),n(4,b={});for(let r=0;r<d.length;r++){const{action:s,payload:o,turn:a,phase:i}=d[r];t++,e++,r!=d.length-1&&d[r+1].turn==a||(n(3,m[r]=t,m),t=0),r!=d.length-1&&d[r+1].phase==i||(n(4,b[r]=e,b),e=0)}}},[c,d,h,m,b,function(e){const{logIndex:t}=e.detail,r=v(t),s=f.filter(e=>!e.automatic);if(c.overrideGameState(r),h==t)n(2,h=null),l.set(null);else{n(2,h=t);const{metadata:e}=s[t].action.payload;e&&l.set({component:ns,metadata:e})}},function(e){const{logIndex:t}=e.detail;if(null===h){const e=v(t);c.overrideGameState(e)}},function(){null===h&&c.overrideGameState(null)},function(e){27==e.keyCode&&g()},f,r]}class hs extends Re{constructor(e){super(),De(this,e,fs,ds,v,{client:0},rs)}}function vs(e){$(e,"svelte-1fu900w","label.svelte-1fu900w{color:#666}.option.svelte-1fu900w{margin-bottom:20px}.value.svelte-1fu900w{font-weight:bold;color:#000}input[type='checkbox'].svelte-1fu900w{vertical-align:middle}")}function ys(e,t,n){const r=e.slice();return r[6]=t[n][0],r[7]=t[n][1],r[8]=t,r[9]=n,r}function gs(e){let t,n,r,s;function o(){e[5].call(t,e[6])}return{c(){t=N("input"),L(t,"id",n=e[3](e[6])),L(t,"type","checkbox"),L(t,"class","svelte-1fu900w")},m(n,a){I(n,t,a),t.checked=e[1][e[6]],r||(s=[F(t,"change",o),F(t,"change",e[2])],r=!0)},p(r,s){e=r,1&s&&n!==(n=e[3](e[6]))&&L(t,"id",n),3&s&&(t.checked=e[1][e[6]])},d(e){e&&C(t),r=!1,f(s)}}}function ms(e){let t,n,r,s,o,a,i,c,l,u=e[1][e[6]]+"";function p(){e[4].call(s,e[6])}return{c(){t=N("span"),n=R(u),r=B(),s=N("input"),L(t,"class","value svelte-1fu900w"),L(s,"id",o=e[3](e[6])),L(s,"type","range"),L(s,"min",a=e[7].range.min),L(s,"max",i=e[7].range.max)},m(o,a){I(o,t,a),M(t,n),I(o,r,a),I(o,s,a),z(s,e[1][e[6]]),c||(l=[F(s,"change",p),F(s,"input",p),F(s,"change",e[2])],c=!0)},p(t,r){e=t,3&r&&u!==(u=e[1][e[6]]+"")&&U(n,u),1&r&&o!==(o=e[3](e[6]))&&L(s,"id",o),1&r&&a!==(a=e[7].range.min)&&L(s,"min",a),1&r&&i!==(i=e[7].range.max)&&L(s,"max",i),3&r&&z(s,e[1][e[6]])},d(e){e&&C(t),e&&C(r),e&&C(s),c=!1,f(l)}}}function bs(e){let t,n,r,s,o,a,i=e[6]+"";function c(e,t){return e[7].range?ms:"boolean"==typeof e[7].value?gs:void 0}let l=c(e),u=l&&l(e);return{c(){t=N("div"),n=N("label"),r=R(i),o=B(),u&&u.c(),a=B(),L(n,"for",s=e[3](e[6])),L(n,"class","svelte-1fu900w"),L(t,"class","option svelte-1fu900w")},m(e,s){I(e,t,s),M(t,n),M(n,r),M(t,o),u&&u.m(t,null),M(t,a)},p(e,o){1&o&&i!==(i=e[6]+"")&&U(r,i),1&o&&s!==(s=e[3](e[6]))&&L(n,"for",s),l===(l=c(e))&&u?u.p(e,o):(u&&u.d(1),u=l&&l(e),u&&(u.c(),u.m(t,a)))},d(e){e&&C(t),u&&u.d()}}}function xs(e){let t,n=Object.entries(e[0].opts()),r=[];for(let t=0;t<n.length;t+=1)r[t]=bs(ys(e,n,t));return{c(){for(let e=0;e<r.length;e+=1)r[e].c();t=G()},m(e,n){for(let t=0;t<r.length;t+=1)r[t].m(e,n);I(e,t,n)},p(e,s){let[o]=s;if(15&o){let s;for(n=Object.entries(e[0].opts()),s=0;s<n.length;s+=1){const a=ys(e,n,s);r[s]?r[s].p(a,o):(r[s]=bs(a),r[s].c(),r[s].m(t.parentNode,t))}for(;s<r.length;s+=1)r[s].d(1);r.length=n.length}},i:i,o:i,d(e){T(r,e),e&&C(t)}}}function _s(e,t,n){let{bot:r}=t,s={};for(let[e,t]of Object.entries(r.opts()))s[e]=t.value;return e.$$set=e=>{"bot"in e&&n(0,r=e.bot)},[r,s,function(){for(let[e,t]of Object.entries(s))r.setOpt(e,t)},e=>"ai-option-"+e,function(e){var t;s[e]=""===(t=this.value)?null:+t,n(1,s)},function(e){s[e]=this.checked,n(1,s)}]}class ws extends Re{constructor(e){super(),De(this,e,_s,xs,v,{bot:0},vs)}}function Ps(e){$(e,"svelte-fn09gm","ul.svelte-fn09gm{padding-left:0}li.svelte-fn09gm{list-style:none;margin:0;margin-bottom:5px}h3.svelte-fn09gm{text-transform:uppercase}label.svelte-fn09gm{color:#666}input[type='checkbox'].svelte-fn09gm{vertical-align:middle}")}function Os(e,t,n){const r=e.slice();return r[7]=t[n],r}function ks(e){let t,n,r;return{c(){t=N("p"),t.textContent="No bots available.",n=B(),r=N("p"),r.innerHTML='Follow the instructions\n <a href="https://boardgame.io/documentation/#/tutorial?id=bots" target="_blank">here</a>\n to set up bots.'},m(e,s){I(e,t,s),I(e,n,s),I(e,r,s)},p:i,i:i,o:i,d(e){e&&C(t),e&&C(n),e&&C(r)}}}function Es(e){let t;return{c(){t=N("p"),t.textContent="The bot debugger is only available in singleplayer mode."},m(e,n){I(e,t,n)},p:i,i:i,o:i,d(e){e&&C(t)}}}function Ms(e){let t,n,r,s,o,a,i,c,l,u,p,d,h,v,y,g,m,b,x,_,w,P,O,k=Object.keys(e[7].opts()).length;a=new On({props:{value:"1",onPress:e[13],label:"reset"}}),l=new On({props:{value:"2",onPress:e[11],label:"play"}}),d=new On({props:{value:"3",onPress:e[12],label:"simulate"}});let E=Object.keys(e[8]),$=[];for(let t=0;t<E.length;t+=1)$[t]=$s(Os(e,E,t));let A=k&&As(e),j=(e[5]||e[3])&&js(e);return{c(){t=N("section"),n=N("h3"),n.textContent="Controls",r=B(),s=N("ul"),o=N("li"),Ie(a.$$.fragment),i=B(),c=N("li"),Ie(l.$$.fragment),u=B(),p=N("li"),Ie(d.$$.fragment),h=B(),v=N("section"),y=N("h3"),y.textContent="Bot",g=B(),m=N("select");for(let e=0;e<$.length;e+=1)$[e].c();b=B(),A&&A.c(),x=B(),j&&j.c(),_=G(),L(n,"class","svelte-fn09gm"),L(o,"class","svelte-fn09gm"),L(c,"class","svelte-fn09gm"),L(p,"class","svelte-fn09gm"),L(s,"class","svelte-fn09gm"),L(y,"class","svelte-fn09gm"),void 0===e[4]&&de(()=>e[17].call(m))},m(f,k){I(f,t,k),M(t,n),M(t,r),M(t,s),M(s,o),Ce(a,o,null),M(s,i),M(s,c),Ce(l,c,null),M(s,u),M(s,p),Ce(d,p,null),I(f,h,k),I(f,v,k),M(v,y),M(v,g),M(v,m);for(let e=0;e<$.length;e+=1)$[e].m(m,null);q(m,e[4]),I(f,b,k),A&&A.m(f,k),I(f,x,k),j&&j.m(f,k),I(f,_,k),w=!0,P||(O=[F(m,"change",e[17]),F(m,"change",e[10])],P=!0)},p(e,t){if(256&t){let n;for(E=Object.keys(e[8]),n=0;n<E.length;n+=1){const r=Os(e,E,n);$[n]?$[n].p(r,t):($[n]=$s(r),$[n].c(),$[n].m(m,null))}for(;n<$.length;n+=1)$[n].d(1);$.length=E.length}272&t&&q(m,e[4]),128&t&&(k=Object.keys(e[7].opts()).length),k?A?(A.p(e,t),128&t&&Oe(A,1)):(A=As(e),A.c(),Oe(A,1),A.m(x.parentNode,x)):A&&(we(),ke(A,1,1,()=>{A=null}),Pe()),e[5]||e[3]?j?j.p(e,t):(j=js(e),j.c(),j.m(_.parentNode,_)):j&&(j.d(1),j=null)},i(e){w||(Oe(a.$$.fragment,e),Oe(l.$$.fragment,e),Oe(d.$$.fragment,e),Oe(A),w=!0)},o(e){ke(a.$$.fragment,e),ke(l.$$.fragment,e),ke(d.$$.fragment,e),ke(A),w=!1},d(e){e&&C(t),Te(a),Te(l),Te(d),e&&C(h),e&&C(v),T($,e),e&&C(b),A&&A.d(e),e&&C(x),j&&j.d(e),e&&C(_),P=!1,f(O)}}}function $s(e){let t,n,r=e[7]+"";return{c(){t=N("option"),n=R(r),t.__value=e[7],t.value=t.__value},m(e,r){I(e,t,r),M(t,n)},p:i,d(e){e&&C(t)}}}function As(e){let t,n,r,s,o,a,i,c,l,u,p;return c=new ws({props:{bot:e[7]}}),{c(){t=N("section"),n=N("h3"),n.textContent="Options",r=B(),s=N("label"),s.textContent="debug",o=B(),a=N("input"),i=B(),Ie(c.$$.fragment),L(n,"class","svelte-fn09gm"),L(s,"for","ai-option-debug"),L(s,"class","svelte-fn09gm"),L(a,"id","ai-option-debug"),L(a,"type","checkbox"),L(a,"class","svelte-fn09gm")},m(d,f){I(d,t,f),M(t,n),M(t,r),M(t,s),M(t,o),M(t,a),a.checked=e[1],M(t,i),Ce(c,t,null),l=!0,u||(p=[F(a,"change",e[18]),F(a,"change",e[9])],u=!0)},p(e,t){2&t&&(a.checked=e[1]);const n={};128&t&&(n.bot=e[7]),c.$set(n)},i(e){l||(Oe(c.$$.fragment,e),l=!0)},o(e){ke(c.$$.fragment,e),l=!1},d(e){e&&C(t),Te(c),u=!1,f(p)}}}function js(e){let t,n,r,s,o=e[2]&&e[2]<1&&Ss(e),a=e[5]&&Is(e);return{c(){t=N("section"),n=N("h3"),n.textContent="Result",r=B(),o&&o.c(),s=B(),a&&a.c(),L(n,"class","svelte-fn09gm")},m(e,i){I(e,t,i),M(t,n),M(t,r),o&&o.m(t,null),M(t,s),a&&a.m(t,null)},p(e,n){e[2]&&e[2]<1?o?o.p(e,n):(o=Ss(e),o.c(),o.m(t,s)):o&&(o.d(1),o=null),e[5]?a?a.p(e,n):(a=Is(e),a.c(),a.m(t,null)):a&&(a.d(1),a=null)},d(e){e&&C(t),o&&o.d(),a&&a.d()}}}function Ss(e){let t;return{c(){t=N("progress"),t.value=e[2]},m(e,n){I(e,t,n)},p(e,n){4&n&&(t.value=e[2])},d(e){e&&C(t)}}}function Is(e){let t,n,r,s,o,a,i,c,l=JSON.stringify(e[6])+"";return{c(){t=N("ul"),n=N("li"),r=R("Action: "),s=R(e[5]),o=B(),a=N("li"),i=R("Args: "),c=R(l),L(n,"class","svelte-fn09gm"),L(a,"class","svelte-fn09gm"),L(t,"class","svelte-fn09gm")},m(e,l){I(e,t,l),M(t,n),M(n,r),M(n,s),M(t,o),M(t,a),M(a,i),M(a,c)},p(e,t){32&t&&U(s,e[5]),64&t&&l!==(l=JSON.stringify(e[6])+"")&&U(c,l)},d(e){e&&C(t)}}}function Cs(e){let t,n,r,s,o,a;const i=[Ms,Es,ks],c=[];function l(e,t){return e[0].game.ai&&!e[0].multiplayer?0:e[0].multiplayer?1:2}return n=l(e),r=c[n]=i[n](e),{c(){t=N("section"),r.c()},m(r,i){I(r,t,i),c[n].m(t,null),s=!0,o||(a=F(window,"keydown",e[14]),o=!0)},p(e,s){let[o]=s,a=n;n=l(e),n===a?c[n].p(e,o):(we(),ke(c[a],1,1,()=>{c[a]=null}),Pe(),r=c[n],r?r.p(e,o):(r=c[n]=i[n](e),r.c()),Oe(r,1),r.m(t,null))},i(e){s||(Oe(r),s=!0)},o(e){ke(r),s=!1},d(e){e&&C(t),c[n].d(),o=!1,a()}}}function Ts(e,t,n){let{client:r}=t,{clientManager:s}=t,{ToggleVisibility:o}=t;const{secondaryPane:i}=se("secondaryPane"),c={MCTS:a.M,Random:a.R};let l=!1,u=null,p=0,d=null;const f=e=>{let{iterationCounter:t,numIterations:r,metadata:s}=e;n(3,p=t),n(2,u=t/r),d=s,l&&d&&i.set({component:ns,metadata:d})};let h,v,y,g;function m(){r.overrideGameState(null),i.set(null),n(1,l=!1)}return r.game.ai&&(h=new a.M({game:r.game,enumerate:r.game.ai.enumerate,iterationCallback:f}),h.setOpt("async",!0)),te(m),e.$$set=e=>{"client"in e&&n(0,r=e.client),"clientManager"in e&&n(15,s=e.clientManager),"ToggleVisibility"in e&&n(16,o=e.ToggleVisibility)},[r,l,u,p,v,y,g,h,c,function(){l&&d?i.set({component:ns,metadata:d}):i.set(null)},function(){n(7,h=new(0,c[v])({game:r.game,enumerate:r.game.ai.enumerate,iterationCallback:f})),h.setOpt("async",!0),n(5,y=null),d=null,i.set(null),n(3,p=0)},async function(){n(5,y=null),d=null,n(3,p=0);const e=await(0,a.S)(r,h);e&&(n(5,y=e.payload.type),n(6,g=e.payload.args))},function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e4,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return n(5,y=null),d=null,n(3,p=0),(async()=>{for(let n=0;n<e&&await(0,a.S)(r,h);n++)await new Promise(e=>setTimeout(e,t))})()},function(){r.reset(),n(5,y=null),d=null,n(3,p=0),m()},function(e){27==e.keyCode&&m()},s,o,function(){v=V(this),n(4,v),n(8,c)},function(){l=this.checked,n(1,l)}]}class Ns extends Re{constructor(e){super(),De(this,e,Ts,Cs,v,{client:0,clientManager:15,ToggleVisibility:16},Ps)}}function Ds(e){$(e,"svelte-8ymctk",".debug-panel.svelte-8ymctk.svelte-8ymctk{position:fixed;color:#555;font-family:monospace;right:0;top:0;height:100%;font-size:14px;opacity:0.9;z-index:99999}.panel.svelte-8ymctk.svelte-8ymctk{display:flex;position:relative;flex-direction:row;height:100%}.visibility-toggle.svelte-8ymctk.svelte-8ymctk{position:absolute;box-sizing:border-box;top:7px;border:1px solid #ccc;border-radius:5px;width:48px;height:48px;padding:8px;background:white;color:#555;box-shadow:0 0 5px rgba(0, 0, 0, 0.2)}.visibility-toggle.svelte-8ymctk.svelte-8ymctk:hover,.visibility-toggle.svelte-8ymctk.svelte-8ymctk:focus{background:#eee}.opener.svelte-8ymctk.svelte-8ymctk{right:10px}.closer.svelte-8ymctk.svelte-8ymctk{left:-326px}@keyframes svelte-8ymctk-rotateFromZero{from{transform:rotateZ(0deg)}to{transform:rotateZ(180deg)}}.icon.svelte-8ymctk.svelte-8ymctk{display:flex;height:100%;animation:svelte-8ymctk-rotateFromZero 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s 1\n normal forwards}.closer.svelte-8ymctk .icon.svelte-8ymctk{animation-direction:reverse}.pane.svelte-8ymctk.svelte-8ymctk{flex-grow:2;overflow-x:hidden;overflow-y:scroll;background:#fefefe;padding:20px;border-left:1px solid #ccc;box-shadow:-1px 0 5px rgba(0, 0, 0, 0.2);box-sizing:border-box;width:280px}.secondary-pane.svelte-8ymctk.svelte-8ymctk{background:#fefefe;overflow-y:scroll}.debug-panel.svelte-8ymctk button,.debug-panel.svelte-8ymctk select{cursor:pointer;font-size:14px;font-family:monospace}.debug-panel.svelte-8ymctk select{background:#eee;border:1px solid #bbb;color:#555;padding:3px;border-radius:3px}.debug-panel.svelte-8ymctk section{margin-bottom:20px}.debug-panel.svelte-8ymctk .screen-reader-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}")}function Rs(e){let t,n,r,s,o,a,l,u,p,d=e[10]&&function(e){let t,n,r,s,o,a,c,l;return r=new Xe({}),{c(){t=N("button"),n=N("span"),Ie(r.$$.fragment),L(n,"class","icon svelte-8ymctk"),L(n,"aria-hidden","true"),L(t,"class","visibility-toggle closer svelte-8ymctk"),L(t,"title","Hide Debug Panel")},m(s,o){I(s,t,o),M(t,n),Ce(r,n,null),a=!0,c||(l=F(t,"click",e[9]),c=!0)},p:i,i(n){a||(Oe(r.$$.fragment,n),de(()=>{o&&o.end(1),s=Me(t,e[14],{key:"toggle"}),s.start()}),a=!0)},o(n){ke(r.$$.fragment,n),s&&s.invalidate(),o=$e(t,e[13],{key:"toggle"}),a=!1},d(e){e&&C(t),Te(r),e&&o&&o.end(),c=!1,l()}}}(e);r=new rt({props:{panes:e[6],pane:e[2]}}),r.$on("change",e[8]);var f=e[6][e[2]].component;function h(e){return{props:{client:e[4],clientManager:e[0],ToggleVisibility:e[9]}}}f&&(a=new f(h(e)));let v=e[5]&&Gs(e);return{c(){t=N("div"),d&&d.c(),n=B(),Ie(r.$$.fragment),s=B(),o=N("div"),a&&Ie(a.$$.fragment),l=B(),v&&v.c(),L(o,"class","pane svelte-8ymctk"),L(o,"role","region"),L(o,"aria-label",e[2]),L(o,"tabindex","-1"),L(t,"class","panel svelte-8ymctk")},m(i,c){I(i,t,c),d&&d.m(t,null),M(t,n),Ce(r,t,null),M(t,s),M(t,o),a&&Ce(a,o,null),e[16](o),M(t,l),v&&v.m(t,null),p=!0},p(n,s){(e=n)[10]&&d.p(e,s);const i={};4&s&&(i.pane=e[2]),r.$set(i);const c={};if(16&s&&(c.client=e[4]),1&s&&(c.clientManager=e[0]),f!==(f=e[6][e[2]].component)){if(a){we();const e=a;ke(e.$$.fragment,1,0,()=>{Te(e,1)}),Pe()}f?(a=new f(h(e)),Ie(a.$$.fragment),Oe(a.$$.fragment,1),Ce(a,o,null)):a=null}else f&&a.$set(c);(!p||4&s)&&L(o,"aria-label",e[2]),e[5]?v?(v.p(e,s),32&s&&Oe(v,1)):(v=Gs(e),v.c(),Oe(v,1),v.m(t,null)):v&&(we(),ke(v,1,1,()=>{v=null}),Pe())},i(n){p||(Oe(d),Oe(r.$$.fragment,n),a&&Oe(a.$$.fragment,n),Oe(v),de(()=>{u||(u=Ae(t,Le,c({x:400},e[12]),!0)),u.run(1)}),p=!0)},o(n){ke(d),ke(r.$$.fragment,n),a&&ke(a.$$.fragment,n),ke(v),u||(u=Ae(t,Le,c({x:400},e[12]),!1)),u.run(0),p=!1},d(n){n&&C(t),d&&d.d(),Te(r),a&&Te(a),e[16](null),v&&v.d(),n&&u&&u.end()}}}function Bs(e){let t,n,r=e[10]&&function(e){let t,n,r,s,o,a,c,l;return r=new Xe({}),{c(){t=N("button"),n=N("span"),Ie(r.$$.fragment),L(n,"class","icon svelte-8ymctk"),L(n,"aria-hidden","true"),L(t,"class","visibility-toggle opener svelte-8ymctk"),L(t,"title","Show Debug Panel")},m(s,o){I(s,t,o),M(t,n),Ce(r,n,null),a=!0,c||(l=F(t,"click",e[9]),c=!0)},p:i,i(n){a||(Oe(r.$$.fragment,n),de(()=>{o&&o.end(1),s=Me(t,e[14],{key:"toggle"}),s.start()}),a=!0)},o(n){ke(r.$$.fragment,n),s&&s.invalidate(),o=$e(t,e[13],{key:"toggle"}),a=!1},d(e){e&&C(t),Te(r),e&&o&&o.end(),c=!1,l()}}}(e);return{c(){r&&r.c(),t=G()},m(e,s){r&&r.m(e,s),I(e,t,s),n=!0},p(e,t){e[10]&&r.p(e,t)},i(e){n||(Oe(r),n=!0)},o(e){ke(r),n=!1},d(e){r&&r.d(e),e&&C(t)}}}function Gs(e){let t,n,r;var s=e[5].component;function o(e){return{props:{metadata:e[5].metadata}}}return s&&(n=new s(o(e))),{c(){t=N("div"),n&&Ie(n.$$.fragment),L(t,"class","secondary-pane svelte-8ymctk")},m(e,s){I(e,t,s),n&&Ce(n,t,null),r=!0},p(e,r){const a={};if(32&r&&(a.metadata=e[5].metadata),s!==(s=e[5].component)){if(n){we();const e=n;ke(e.$$.fragment,1,0,()=>{Te(e,1)}),Pe()}s?(n=new s(o(e)),Ie(n.$$.fragment),Oe(n.$$.fragment,1),Ce(n,t,null)):n=null}else s&&n.$set(a)},i(e){r||(n&&Oe(n.$$.fragment,e),r=!0)},o(e){n&&ke(n.$$.fragment,e),r=!1},d(e){e&&C(t),n&&Te(n)}}}function Fs(e){let t,n,r,s,o,a;const i=[Bs,Rs],c=[];function l(e,t){return e[3]?1:0}return n=l(e),r=c[n]=i[n](e),{c(){t=N("section"),r.c(),L(t,"aria-label","boardgame.io Debug Panel"),L(t,"class","debug-panel svelte-8ymctk")},m(r,i){I(r,t,i),c[n].m(t,null),s=!0,o||(a=F(window,"keypress",e[11]),o=!0)},p(e,s){let[o]=s,a=n;n=l(e),n===a?c[n].p(e,o):(we(),ke(c[a],1,1,()=>{c[a]=null}),Pe(),r=c[n],r?r.p(e,o):(r=c[n]=i[n](e),r.c()),Oe(r,1),r.m(t,null))},i(e){s||(Oe(r),s=!0)},o(e){ke(r),s=!1},d(e){e&&C(t),c[n].d(),o=!1,a()}}}function Ls(e,t,n){let r,s,o,a=i,c=()=>(a(),a=y(l,e=>n(15,s=e)),l);e.$$.on_destroy.push(()=>a());let{clientManager:l}=t;c();const u={main:{label:"Main",shortcut:"m",component:ir},log:{label:"Log",shortcut:"l",component:hs},info:{label:"Info",shortcut:"i",component:yr},ai:{label:"AI",shortcut:"a",component:Ns}},p=Ge(!1),d=Ge(null);let f;g(e,d,e=>n(5,o=e)),re("hotkeys",{disableHotkeys:p}),re("secondaryPane",{secondaryPane:d});let h="main";function v(){n(3,b=!b)}const m=s.client.debugOpt;let b=!m||!m.collapseOnLoad;const x=!m||!m.hideToggleButton,_={duration:150,easing:Fe},[w,P]=Ue(_);return e.$$set=e=>{"clientManager"in e&&c(n(0,l=e.clientManager))},e.$$.update=()=>{32768&e.$$.dirty&&n(4,r=s.client)},[l,f,h,b,r,o,u,d,function(e){n(2,h=e.detail),f.focus()},v,x,function(e){"."!=e.key?b&&Object.entries(u).forEach(t=>{let[r,{shortcut:s}]=t;e.key==s&&n(2,h=r)}):v()},_,w,P,s,function(e){ie[e?"unshift":"push"](()=>{f=e,n(1,f)})}]}t.D=class extends Re{constructor(e){super(),De(this,e,Ls,Fs,v,{clientManager:0},Ds)}}},3637(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.R=t.M=t.B=void 0,t.S=async function(e,t){const n=e.store.getState();let r=n.ctx.currentPlayer;n.ctx.activePlayers&&(r=Object.keys(n.ctx.activePlayers)[0]);const{action:s,metadata:o}=await t.play(n,r);if(s){const t=c(c({},s),{},{payload:c(c({},s.payload),{},{metadata:o})});return e.store.dispatch(t),t}},t.a=async function(e){let{game:t,bots:n,state:s,depth:o}=e;void 0===o&&(o=1e4);const i=(0,r.C)({game:t});let c=null,l=0;for(;void 0===s.ctx.gameover&&l<o;){let e=s.ctx.currentPlayer;s.ctx.activePlayers&&(e=Object.keys(s.ctx.activePlayers)[0]);const t=n instanceof a?n:n[e],r=await t.play(s,e);if(!r.action)break;c=r.metadata,s=i(s,r.action),l++}return{state:s,metadata:c}},n(2791);var r=n(2591),s=n(9896),o=n(9458);class a{constructor(e){let{enumerate:t,seed:n}=e;this.enumerateFn=t,this.seed=n,this.iterationCounter=0,this._opts={}}addOpt(e){let{key:t,range:n,initial:r}=e;this._opts[t]={range:n,value:r}}getOpt(e){return this._opts[e].value}setOpt(e,t){e in this._opts&&(this._opts[e].value=t)}opts(){return this._opts}enumerate(e,t,n){return this.enumerateFn(e,t,n).map(e=>"payload"in e?e:"move"in e?(0,s.B)(e.move,e.args,n):"event"in e?(0,s.q)(e.event,e.args,n):void 0)}random(e){let t;if(void 0!==this.seed){const e=this.prngstate?"":this.seed,n=(0,o.a)(e,this.prngstate);t=n(),this.prngstate=n.state()}else t=Math.random();return e?Array.isArray(e)?e[Math.floor(t*e.length)]:Math.floor(t*e):t}}t.B=a,t.M=class extends a{constructor(e){let{enumerate:t,seed:n,objectives:s,game:o,iterations:a,playoutDepth:i,iterationCallback:c}=e;super({enumerate:t,seed:n}),void 0===s&&(s=()=>({})),this.objectives=s,this.iterationCallback=c||(()=>{}),this.reducer=(0,r.C)({game:o}),this.iterations=a,this.playoutDepth=i,this.addOpt({key:"async",initial:!1}),this.addOpt({key:"iterations",initial:"number"==typeof a?a:1e3,range:{min:1,max:2e3}}),this.addOpt({key:"playoutDepth",initial:"number"==typeof i?i:50,range:{min:1,max:100}})}createNode(e){let{state:t,parentAction:n,parent:r,playerID:s}=e;const{G:o,ctx:a}=t;let i=[],c=[];if(void 0!==s)i=this.enumerate(o,a,s),c=this.objectives(o,a,s);else if(a.activePlayers)for(const e in a.activePlayers)i.push(...this.enumerate(o,a,e)),c.push(this.objectives(o,a,e));else i=this.enumerate(o,a,a.currentPlayer),c=this.objectives(o,a,a.currentPlayer);return{state:t,parent:r,parentAction:n,actions:i,objectives:c,children:[],visits:0,value:0}}select(e){if(e.actions.length>0)return e;if(0===e.children.length)return e;let t=null,n=0;for(const r of e.children){const s=r.visits+Number.EPSILON,o=r.value/s+Math.sqrt(2*Math.log(e.visits)/s);(null==t||o>n)&&(n=o,t=r)}return this.select(t)}expand(e){const t=e.actions;if(0===t.length||void 0!==e.state.ctx.gameover)return e;const n=this.random(t.length),r=t[n];e.actions.splice(n,1);const s=this.reducer(e.state,r),o=this.createNode({state:s,parentAction:r,parent:e});return e.children.push(o),o}playout(e){let{state:t}=e,n=this.getOpt("playoutDepth");"function"==typeof this.playoutDepth&&(n=this.playoutDepth(t.G,t.ctx));for(let e=0;e<n&&void 0===t.ctx.gameover;e++){const{G:e,ctx:n}=t;let r=n.currentPlayer;n.activePlayers&&(r=Object.keys(n.activePlayers)[0]);const s=this.enumerate(e,n,r),o=this.objectives(e,n,r),a=Object.keys(o).reduce((t,r)=>{const s=o[r];return s.checker(e,n)?t+s.weight:t},0);if(a>0)return{score:a};if(!s||0===s.length)return;const i=this.random(s.length);t=this.reducer(t,s[i])}return t.ctx.gameover}backpropagate(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.visits++,void 0!==t.score&&(e.value+=t.score),!0===t.draw&&(e.value+=.5),e.parentAction&&t.winner===e.parentAction.payload.playerID&&e.value++,e.parent&&this.backpropagate(e.parent,t)}play(e,t){const n=this.createNode({state:e,playerID:t});let r=this.getOpt("iterations");"function"==typeof this.iterations&&(r=this.iterations(e.G,e.ctx));const s=()=>{let e=null;for(const t of n.children)(null==e||t.visits>e.visits)&&(e=t);return{action:e&&e.parentAction,metadata:n}};return new Promise(e=>{const t=()=>{for(let e=0;e<25&&this.iterationCounter<r;e++){const e=this.select(n),t=this.expand(e),r=this.playout(t);this.backpropagate(t,r),this.iterationCounter++}this.iterationCallback({iterationCounter:this.iterationCounter,numIterations:r,metadata:n})};if(this.iterationCounter=0,this.getOpt("async")){const n=()=>{this.iterationCounter<r?(t(),setImmediate(n)):e(s())};n()}else{for(;this.iterationCounter<r;)t();e(s())}})}},t.R=class extends a{play(e,t){let{G:n,ctx:r}=e;const s=this.enumerate(n,r,t);return Promise.resolve({action:this.random(s)})}}},9949(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.C=function(e){return new m(e)};var r=n(5042);n(4826);var s=n(2960),o=n(9896),a=n(2591),i=n(8630),l=n(7857);class u extends l.T{connect(){}disconnect(){}sendAction(){}sendChatMessage(){}requestSync(){}updateCredentials(){}updateMatchID(){}updatePlayerID(){}}const p=e=>new u(e),d=new class{constructor(){this.debugPanel=null,this.currentClient=null,this.clients=new Map,this.subscribers=new Map}register(e){this.clients.set(e,e),this.mountDebug(e),this.notifySubscribers()}unregister(e){if(this.clients.delete(e),this.currentClient===e){this.unmountDebug();for(const[e]of this.clients){if(this.debugPanel)break;this.mountDebug(e)}}this.notifySubscribers()}subscribe(e){const t=Symbol();return this.subscribers.set(t,e),e(this.getState()),()=>{this.subscribers.delete(t)}}switchPlayerID(e){if(this.currentClient.multiplayer)for(const[t]of this.clients)if(t.playerID===e&&!1!==t.debugOpt&&t.multiplayer===this.currentClient.multiplayer)return void this.switchToClient(t);this.currentClient.updatePlayerID(e),this.notifySubscribers()}switchToClient(e){e!==this.currentClient&&(this.unmountDebug(),this.mountDebug(e),this.notifySubscribers())}notifySubscribers(){const e=this.getState();this.subscribers.forEach(t=>{t(e)})}getState(){return{client:this.currentClient,debuggableClients:this.getDebuggableClients()}}getDebuggableClients(){return[...this.clients.values()].filter(e=>!1!==e.debugOpt)}mountDebug(e){if(!1===e.debugOpt||null!==this.debugPanel||"undefined"==typeof document)return;let t,n=document.body;e.debugOpt&&!0!==e.debugOpt&&(t=e.debugOpt.impl||t,n=e.debugOpt.target||n),t&&(this.currentClient=e,this.debugPanel=new t({target:n,props:{clientManager:this}}))}unmountDebug(){this.debugPanel.$destroy(),this.debugPanel=null,this.currentClient=null}};function f(e,t,n){return n||null!=e||(e=t.getState().ctx.currentPlayer),e}function h(e,t,n,r,s,a){const i={};for(const c of t)i[c]=function(){for(var t=arguments.length,i=new Array(t),l=0;l<t;l++)i[l]=arguments[l];const u=o.A[e](c,i,f(r,n,a),s);n.dispatch(u)};return i}const v=h.bind(null,"makeMove"),y=h.bind(null,"gameEvent"),g=h.bind(null,"plugin");class m{constructor(e){let{game:t,debug:n,numPlayers:c,multiplayer:l,matchID:u,playerID:h,credentials:v,enhancer:y}=e;this.game=(0,a.P)(t),this.playerID=h,this.matchID=u||"default",this.credentials=v,this.multiplayer=l,this.debugOpt=n,this.manager=d,this.gameStateOverride=null,this.subscribers={},this._running=!1,this.reducer=(0,a.C)({game:this.game,isClient:void 0!==l}),this.initialState=null,l||(this.initialState=(0,i.I)({game:this.game,numPlayers:c})),this.reset=()=>{this.store.dispatch((0,o.r)(this.initialState))},this.undo=()=>{const e=(0,o.u)(f(this.playerID,this.store,this.multiplayer),this.credentials);this.store.dispatch(e)},this.redo=()=>{const e=(0,o.a)(f(this.playerID,this.store,this.multiplayer),this.credentials);this.store.dispatch(e)},this.log=[];const g=(0,s.applyMiddleware)(a.T,()=>e=>t=>{const n=e(t);return this.notifySubscribers(),n},e=>t=>n=>{const r=e.getState(),s=t(n);return"clientOnly"in n||n.type===o.e||this.transport.sendAction(r,n),s},e=>t=>n=>{const r=t(n),s=e.getState();switch(n.type){case o.M:case o.G:case o.d:case o.c:{const e=s.deltalog;this.log=[...this.log,...e];break}case o.R:this.log=[];break;case o.b:case o.U:{let e=-1;this.log.length>0&&(e=this.log[this.log.length-1]._stateID);let t=n.deltalog||[];t=t.filter(t=>t._stateID>e),this.log=[...this.log,...t];break}case o.S:this.initialState=n.initialState,this.log=n.log||[]}return r});y=void 0!==y?(0,s.compose)(g,y):g,this.store=(0,s.createStore)(this.reducer,this.initialState,y),l||(l=p),this.transport=l({transportDataCallback:e=>this.receiveTransportData(e),gameKey:t,game:this.game,matchID:u,playerID:h,credentials:v,gameName:this.game.name,numPlayers:c}),this.createDispatchers(),this.chatMessages=[],this.sendChatMessage=e=>{this.transport.sendChatMessage(this.matchID,{id:(0,r.nanoid)(7),sender:this.playerID,payload:e})}}receiveMatchData(e){this.matchData=e,this.notifySubscribers()}receiveChatMessage(e){this.chatMessages=[...this.chatMessages,e],this.notifySubscribers()}receiveTransportData(e){const[t]=e.args;if(t===this.matchID)switch(e.type){case"sync":{const[,t]=e.args,n=(0,o.s)(t);this.receiveMatchData(t.filteredMetadata),this.store.dispatch(n);break}case"update":{const[,t,n]=e.args,r=this.store.getState();if(t._stateID>=r._stateID){const e=(0,o.f)(t,n);this.store.dispatch(e)}break}case"patch":{const[,t,n,r,s]=e.args,a=this.store.getState()._stateID;if(t!==a)break;const i=(0,o.p)(t,n,r,s);this.store.dispatch(i),this.store.getState()._stateID===a&&this.transport.requestSync();break}case"matchData":{const[,t]=e.args;this.receiveMatchData(t);break}case"chat":{const[,t]=e.args;this.receiveChatMessage(t);break}}}notifySubscribers(){Object.values(this.subscribers).forEach(e=>e(this.getState()))}overrideGameState(e){this.gameStateOverride=e,this.notifySubscribers()}start(){this.transport.connect(),this._running=!0,this.manager.register(this)}stop(){this.transport.disconnect(),this._running=!1,this.manager.unregister(this)}subscribe(e){const t=Object.keys(this.subscribers).length;return this.subscribers[t]=e,this.transport.subscribeToConnectionStatus(()=>this.notifySubscribers()),!this._running&&this.multiplayer||e(this.getState()),()=>{delete this.subscribers[t]}}getInitialState(){return this.initialState}getState(){let e=this.store.getState();if(null!==this.gameStateOverride&&(e=this.gameStateOverride),null===e)return e;let t=!0;const n=this.game.flow.isPlayerActive(e.G,e.ctx,this.playerID);return this.multiplayer&&!n&&(t=!1),this.multiplayer||null===this.playerID||void 0===this.playerID||n||(t=!1),void 0!==e.ctx.gameover&&(t=!1),this.multiplayer||(e=c(c({},e),{},{G:this.game.playerView({G:e.G,ctx:e.ctx,playerID:this.playerID}),plugins:(0,o.P)(e,this)})),c(c({},e),{},{log:this.log,isActive:t,isConnected:this.transport.isConnected})}createDispatchers(){this.moves=v(this.game.moveNames,this.store,this.playerID,this.credentials,this.multiplayer),this.events=y(this.game.flow.enabledEventNames,this.store,this.playerID,this.credentials,this.multiplayer),this.plugins=g(this.game.pluginNames,this.store,this.playerID,this.credentials,this.multiplayer)}updatePlayerID(e){this.playerID=e,this.createDispatchers(),this.transport.updatePlayerID(e),this.notifySubscribers()}updateMatchID(e){this.matchID=e,this.createDispatchers(),this.transport.updateMatchID(e),this.notifySubscribers()}updateCredentials(e){this.credentials=e,this.createDispatchers(),this.transport.updateCredentials(e),this.notifySubscribers()}}},6192(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.a=t.L=void 0;const n=(e,t)=>{if(!e||"string"!=typeof e)throw new Error(`Expected ${t} string, got "${e}".`)},r=e=>n(e,"game name"),s=e=>n(e,"match ID"),o=(e,t)=>{if(!e)throw new Error(`Expected body, got “${e}”.`);for(const n in t){const r=t[n],s=Array.isArray(r)?r:[r],o=e[n];if(!s.includes(typeof o)){const e=s.join("|");throw new TypeError(`Expected body.${n} to be of type ${e}, got “${o}”.`)}}};class a extends Error{constructor(e,t){super(e),this.details=t}}t.a=a,t.L=class{constructor(){let{server:e=""}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.server=e.replace(/\/$/,"")}async request(e,t){const n=await fetch(this.server+e,t);if(!n.ok){let e;try{e=await n.clone().json()}catch{try{e=await n.text()}catch(t){e=t.message}}throw new a(`HTTP status ${n.status}`,e)}return n.json()}async post(e,t){let n={method:"post",body:JSON.stringify(t.body),headers:{"Content-Type":"application/json"}};return t.init&&(n=c(c(c({},n),t.init),{},{headers:c(c({},n.headers),t.init.headers)})),this.request(e,n)}async listGames(e){return this.request("/games",e)}async listMatches(e,t,n){r(e);let s="";if(t){const e=[],{isGameover:n,updatedBefore:r,updatedAfter:o}=t;void 0!==n&&e.push(`isGameover=${n}`),r&&e.push(`updatedBefore=${r}`),o&&e.push(`updatedAfter=${o}`),e.length>0&&(s="?"+e.join("&"))}return this.request(`/games/${e}${s}`,n)}async getMatch(e,t,n){return r(e),s(t),this.request(`/games/${e}/${t}`,n)}async createMatch(e,t,n){return r(e),o(t,{numPlayers:"number"}),this.post(`/games/${e}/create`,{body:t,init:n})}async joinMatch(e,t,n,a){return r(e),s(t),o(n,{playerID:["string","undefined"],playerName:"string"}),this.post(`/games/${e}/${t}/join`,{body:n,init:a})}async leaveMatch(e,t,n,a){r(e),s(t),o(n,{playerID:"string",credentials:"string"}),await this.post(`/games/${e}/${t}/leave`,{body:n,init:a})}async updatePlayer(e,t,n,a){r(e),s(t),o(n,{playerID:"string",credentials:"string"}),await this.post(`/games/${e}/${t}/update`,{body:n,init:a})}async playAgain(e,t,n,a){return r(e),s(t),o(n,{playerID:"string",credentials:"string"}),this.post(`/games/${e}/${t}/playAgain`,{body:n,init:a})}}},4688(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Client",{enumerable:!0,get:function(){return r.C}}),Object.defineProperty(t,"LobbyClient",{enumerable:!0,get:function(){return s.L}}),Object.defineProperty(t,"LobbyClientError",{enumerable:!0,get:function(){return s.a}});var r=n(9949),s=n(6192);n(5042),n(4826),n(9896),n(5878),n(9458),n(9001),n(7035),n(2591),n(1337),n(3637),n(2791),n(2960),n(8630),n(7857)},504(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Debug",{enumerable:!0,get:function(){return r.D}});var r=n(4826);n(9896),n(5878),n(9458),n(9001),n(7035),n(2591),n(1337),n(3637),n(2791)},9710(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.g=void 0;var r=n(9896),s=n(1337);const o=(e,t,n)=>c(c({},n),{},{G:e.playerView({G:n.G,ctx:n.ctx,playerID:t}),plugins:(0,r.P)(n,{playerID:t,game:e}),deltalog:void 0,_undo:[],_redo:[]});function a(e,t){return void 0===e?e:e.map(e=>{if(null!==t&&+t===+e.action.payload.playerID)return e;if(!0!==e.redact)return e;const n=c(c({},e.action.payload),{},{args:null});return l(c(c({},e),{},{action:c(c({},e.action),{},{payload:n})}),p)})}t.g=e=>(t,n)=>{switch(n.type){case"patch":{const[r,i,c,l]=n.args,u=a(l.deltalog,t),p=o(e,t,l),d=l._stateID,f=o(e,t,c);return{type:"patch",args:[r,i,d,(0,s.createPatch)(f,p),u]}}case"update":{const[r,s]=n.args,i=a(s.deltalog,t);return{type:"update",args:[r,o(e,t,s),i]}}case"sync":{const[r,s]=n.args,i=o(e,t,s.state),l=a(s.log,t);return{type:"sync",args:[r,c(c({},s),{},{state:i,log:l})]}}default:return n}}},8630(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.I=function(e){let{game:t,numPlayers:n,setupData:o}=e;t=(0,r.P)(t),n||(n=2);let a={G:{},ctx:t.flow.ctx(n),plugins:{}};a=(0,s.z)(a,{game:t}),a=(0,s.E)(a,{game:t,playerID:void 0});const i=(0,s.j)(a);a.G=t.setup(c(c({},i),{},{ctx:a.ctx}),o);let l=c(c({},a),{},{_undo:[],_redo:[],_stateID:0});return l=t.flow.init(l),[l]=(0,s.x)(l,{game:t}),t.disableUndo||(l._undo=[{G:l.G,ctx:l.ctx,plugins:l.plugins}]),l};var r=n(2591),s=n(9896)},2073(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.M=void 0;var r=n(2591),s=n(9896),o=n(2960),a=n(568);const i=e=>Object.values(e.players).map(e=>l(e,d));t.M=class{constructor(e,t,n,s){this.game=(0,r.P)(e),this.storageAPI=t,this.transportAPI=n,this.subscribeCallback=()=>{},this.auth=s}subscribe(e){this.subscribeCallback=e}async onUpdate(e,t,n,i){if(!e||!e.payload)return{error:"missing action or action payload"};let u;if((0,a.i)(this.storageAPI)?({metadata:u}=this.storageAPI.fetch(n,{metadata:!0})):({metadata:u}=await this.storageAPI.fetch(n,{metadata:!0})),this.auth&&!await this.auth.authenticateCredentials({playerID:i,credentials:e.payload.credentials,metadata:u}))return{error:"unauthorized action"};const p=(e=>{const t=l(e.payload,f);return c(c({},e),{},{payload:t})})(e),d=n;let v;if((0,a.i)(this.storageAPI)?({state:v}=this.storageAPI.fetch(d,{state:!0})):({state:v}=await this.storageAPI.fetch(d,{state:!0})),void 0===v)return(0,s.g)(`game not found, matchID=[${d}]`),{error:"game not found"};if(void 0!==v.ctx.gameover)return void(0,s.g)(`game over - matchID=[${d}] - playerID=[${i}] - action[${p.payload.type}]`);const y=(0,r.C)({game:this.game}),g=(0,o.applyMiddleware)(r.T),m=(0,o.createStore)(y,v,g);if(p.type==s.d||p.type==s.c){const e=null!==v.ctx.activePlayers,t=v.ctx.currentPlayer===i;if(!e&&!t||e&&(void 0===v.ctx.activePlayers[i]||Object.keys(v.ctx.activePlayers).length>1))return void(0,s.g)(`playerID=[${i}] cannot undo / redo right now`)}if(!this.game.flow.isPlayerActive(v.G,v.ctx,i))return void(0,s.g)(`player not active - playerID=[${i}] - action[${p.payload.type}]`);const b=p.type==s.M?this.game.flow.getMove(v.ctx,p.payload.type,i):null;if(p.type==s.M&&!b)return void(0,s.g)(`move not processed - canPlayerMakeMove=false - playerID=[${i}] - action[${p.payload.type}]`);if(v._stateID!==t&&!(b&&(0,r.I)(b)&&b.ignoreStaleStateID))return void(0,s.g)(`invalid stateID, was=[${t}], expected=[${v._stateID}] - playerID=[${i}] - action[${p.payload.type}]`);const x=m.getState();m.dispatch(p),v=m.getState(),this.subscribeCallback({state:v,action:p,matchID:n}),this.game.deltaState?this.transportAPI.sendAll({type:"patch",args:[n,t,x,v]}):this.transportAPI.sendAll({type:"update",args:[n,v]});const{deltalog:_}=v,w=l(v,h);let P;if(!u||void 0!==u.gameover&&null!==u.gameover||(P=c(c({},u),{},{updatedAt:Date.now()}),void 0!==v.ctx.gameover&&(P.gameover=v.ctx.gameover)),(0,a.i)(this.storageAPI))this.storageAPI.setState(d,w,_),P&&this.storageAPI.setMetadata(d,P);else{const e=[this.storageAPI.setState(d,w,_)];P&&e.push(this.storageAPI.setMetadata(d,P)),await Promise.all(e)}}async onSync(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:2;const s=e,o={state:!0,metadata:!0,log:!0,initialState:!0},c=(0,a.i)(this.storageAPI)?this.storageAPI.fetch(s,o):await this.storageAPI.fetch(s,o);let{state:l,initialState:u,log:p,metadata:d}=c;if(this.auth&&null!=t&&!await this.auth.authenticateCredentials({playerID:t,credentials:n,metadata:d}))return{error:"unauthorized"};if(void 0===l){const t=(0,a.c)({game:this.game,unlisted:!0,numPlayers:r,setupData:void 0});if("setupDataError"in t)return{error:"game requires setupData"};u=l=t.initialState,d=t.metadata,this.subscribeCallback({state:l,matchID:e}),(0,a.i)(this.storageAPI)?this.storageAPI.createMatch(s,{initialState:u,metadata:d}):await this.storageAPI.createMatch(s,{initialState:u,metadata:d})}const f={state:l,log:p,filteredMetadata:d?i(d):void 0,initialState:u};this.transportAPI.send({playerID:t,type:"sync",args:[e,f]})}async onConnectionChange(e,t,n,r){const o=e;if(null==t)return;let c;if((0,a.i)(this.storageAPI)?({metadata:c}=this.storageAPI.fetch(o,{metadata:!0})):({metadata:c}=await this.storageAPI.fetch(o,{metadata:!0})),void 0===c)return(0,s.g)(`metadata not found for matchID=[${o}]`),{error:"metadata not found"};if(void 0===c.players[t])return(0,s.g)(`Player not in the match, matchID=[${o}] playerID=[${t}]`),{error:"player not in the match"};if(this.auth&&!await this.auth.authenticateCredentials({playerID:t,credentials:n,metadata:c}))return{error:"unauthorized"};c.players[t].isConnected=r;const l=i(c);this.transportAPI.sendAll({type:"matchData",args:[e,l]}),(0,a.i)(this.storageAPI)?this.storageAPI.setMetadata(o,c):await this.storageAPI.setMetadata(o,c)}async onChatMessage(e,t,n){const r=e;if(this.auth){const{metadata:e}=await this.storageAPI.fetch(r,{metadata:!0});if(!t||"string"!=typeof t.sender)return{error:"unauthorized"};if(!await this.auth.authenticateCredentials({playerID:t.sender,credentials:n,metadata:e}))return{error:"unauthorized"}}this.transportAPI.sendAll({type:"chat",args:[e,t]})}}},9843(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Local",{enumerable:!0,get:function(){return r.L}}),Object.defineProperty(t,"SocketIO",{enumerable:!0,get:function(){return r.S}});var r=n(5194);n(568),n(8630),n(2591),n(9896),n(5878),n(9458),n(9001),n(1337),n(2073),n(2960),n(7857),n(9710),n(8007)},9458(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.R=void 0,t.a=s;class n{constructor(e){const t=function(){let e=4022871197;const t=function(t){const n=t.toString();for(let t=0;t<n.length;t++){e+=n.charCodeAt(t);let r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=4294967296*r}return 2.3283064365386963e-10*(e>>>0)};return t}();this.c=1,this.s0=t(" "),this.s1=t(" "),this.s2=t(" "),this.s0-=t(e),this.s0<0&&(this.s0+=1),this.s1-=t(e),this.s1<0&&(this.s1+=1),this.s2-=t(e),this.s2<0&&(this.s2+=1)}next(){const e=2091639*this.s0+2.3283064365386963e-10*this.c;return this.s0=this.s1,this.s1=this.s2,this.s2=e-(this.c=Math.trunc(e))}}function r(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function s(e,t){const s=new n(e),o=s.next.bind(s);return t&&r(t,s),o.state=()=>r(s,{}),o}class o{constructor(e){this.state=e||{seed:"0"},this.used=!1}static seed(){return Date.now().toString(36).slice(-10)}isUsed(){return this.used}getState(){return this.state}_random(){this.used=!0;const e=this.state,t=s(e.prngstate?"":e.seed,e.prngstate),n=t();return this.state=c(c({},e),{},{prngstate:t.state()}),n}api(){const e=this._random.bind(this),t={D4:4,D6:6,D8:8,D10:10,D12:12,D20:20},n={};for(const r in t){const s=t[r];n[r]=t=>void 0===t?Math.floor(e()*s)+1:Array.from({length:t}).map(()=>Math.floor(e()*s)+1)}return c(c({},n),{},{Die:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,n=arguments.length>1?arguments[1]:void 0;return void 0===n?Math.floor(e()*t)+1:Array.from({length:n}).map(()=>Math.floor(e()*t)+1)},Number:()=>e(),Shuffle:t=>{const n=[...t];let r=t.length,s=0;const o=Array.from({length:r});for(;r;){const t=Math.trunc(r*e());o[s++]=n[t],n[t]=n[--r]}return o},_private:this})}}t.R={name:"random",noClient:e=>{let{api:t}=e;return t._private.isUsed()},flush:e=>{let{api:t}=e;return t._private.getState()},api:e=>{let{data:t}=e;return new o(t).api()},setup:e=>{let{game:t}=e,{seed:n}=t;return void 0===n&&(n=o.seed()),{seed:n}},playerView:()=>{}}},2591(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.C=function(e){let{game:t,isClient:n}=e;return t=i(t),function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=arguments.length>1?arguments[1]:void 0,[l]=g(e);switch(i.type){case o.e:return l;case o.G:{if(l=c(c({},l),{},{deltalog:[]}),n)return l;if(void 0!==l.ctx.gameover)return(0,o.g)("cannot call event after game end"),m(l,s.GameOver);if(p(i)&&!t.flow.isPlayerActive(l.G,l.ctx,i.payload.playerID))return(0,o.g)(`disallowed event: ${i.payload.type}`),m(l,s.InactivePlayer);l=(0,o.E)(l,{game:t,isClient:!1,playerID:i.payload.playerID});let e,r=t.flow.processEvent(l,i);return[r,e]=h(r,l,{game:t,isClient:!1}),e||(r=d(r,{game:t,action:i}),c(c({},r),{},{_stateID:l._stateID+1}))}case o.M:{const e=l=c(c({},l),{},{deltalog:[]}),r=t.flow.getMove(l.ctx,i.payload.type,i.payload.playerID||l.ctx.currentPlayer);if(null===r)return(0,o.g)(`disallowed move: ${i.payload.type}`),m(l,s.UnavailableMove);if(n&&!1===r.client)return l;if(void 0!==l.ctx.gameover)return(0,o.g)("cannot make move after game end"),m(l,s.GameOver);if(p(i)&&!t.flow.isPlayerActive(l.G,l.ctx,i.payload.playerID))return(0,o.g)(`disallowed move: ${i.payload.type}`),m(l,s.InactivePlayer);l=(0,o.E)(l,{game:t,isClient:n,playerID:i.payload.playerID});const a=t.processMove(l,i.payload);if(a===o.w)return(0,o.g)(`invalid move: ${i.payload.type} args: ${i.payload.args}`),m(l,s.InvalidMove);const u=c(c({},l),{},{G:a});if(n&&(0,o.N)(u,{game:t}))return l;if(l=u,n){let n;return[l,n]=h(l,e,{game:t,isClient:!0}),n||c(c({},l),{},{_stateID:l._stateID+1})}let v;return l=f(l,i,r),l=t.flow.processMove(l,i.payload),[l,v]=h(l,e,{game:t}),v||(l=d(l,{game:t,action:i}),c(c({},l),{},{_stateID:l._stateID+1}))}case o.R:case o.U:case o.S:return i.state;case o.d:{if(l=c(c({},l),{},{deltalog:[]}),t.disableUndo)return(0,o.g)("Undo is not enabled"),m(l,s.ActionDisabled);const{G:e,ctx:n,_undo:r,_redo:a,_stateID:u}=l;if(r.length<2)return(0,o.g)("No moves to undo"),m(l,s.ActionInvalid);const d=r[r.length-1],h=r[r.length-2];return p(i)&&i.payload.playerID!==d.playerID?((0,o.g)("Cannot undo other players' moves"),m(l,s.ActionInvalid)):d.moveType&&!((e,t,n)=>{function r(e){return void 0!==e.undoable}function s(e){return e instanceof Function}return!r(n)||(s(n.undoable)?n.undoable({G:e,ctx:t}):n.undoable)})(e,n,t.flow.getMove(h.ctx,d.moveType,d.playerID))?((0,o.g)("Move cannot be undone"),m(l,s.ActionInvalid)):(l=f(l,i),c(c({},l),{},{G:h.G,ctx:h.ctx,plugins:h.plugins,_stateID:u+1,_undo:r.slice(0,-1),_redo:[d,...a]}))}case o.c:{if(l=c(c({},l),{},{deltalog:[]}),t.disableUndo)return(0,o.g)("Redo is not enabled"),m(l,s.ActionDisabled);const{_undo:e,_redo:n,_stateID:r}=l;if(0===n.length)return(0,o.g)("No moves to redo"),m(l,s.ActionInvalid);const a=n[0];return p(i)&&i.payload.playerID!==a.playerID?((0,o.g)("Cannot redo other players' moves"),m(l,s.ActionInvalid)):(l=f(l,i),c(c({},l),{},{G:a.G,ctx:a.ctx,plugins:a.plugins,_stateID:r+1,_undo:[...e,a],_redo:n.slice(1)}))}case o.t:return(0,o.v)(l,i,{game:t});case o.b:{const e=l,t=JSON.parse(JSON.stringify(e)),n=(0,a.applyPatch)(t,i.patch);return n.some(e=>null!==e)?((0,o.g)(`Patch ${JSON.stringify(i.patch)} apply failed`),m(e,r.PatchFailed,n)):t}default:return l}}},t.I=u,t.P=i,t.T=void 0;var r,s,o=n(9896),a=n(1337);function i(e){if(function(e){return void 0!==e.processMove}(e))return e;if(void 0===e.name&&(e.name="default"),void 0===e.deltaState&&(e.deltaState=!1),void 0===e.disableUndo&&(e.disableUndo=!1),void 0===e.setup&&(e.setup=()=>({})),void 0===e.moves&&(e.moves={}),void 0===e.playerView&&(e.playerView=e=>{let{G:t}=e;return t}),void 0===e.plugins&&(e.plugins=[]),e.plugins.forEach(e=>{if(void 0===e.name)throw new Error("Plugin missing name attribute");if(e.name.includes(" "))throw new Error(e.name+": Plugin name must not include spaces")}),e.name.includes(" "))throw new Error(e.name+": Game name must not include spaces");const t=function(e){let{moves:t,phases:n,endIf:r,onEnd:s,turn:a,events:i,plugins:u}=e;void 0===t&&(t={}),void 0===i&&(i={}),void 0===u&&(u=[]),void 0===n&&(n={}),r||(r=()=>{}),s||(s=e=>{let{G:t}=e;return t}),a||(a={});const p=c({},n);""in p&&(0,o.g)("cannot specify phase with empty name"),p[""]={};const d={},f=new Set;let h=null;Object.keys(t).forEach(e=>f.add(e));const y=(e,t)=>{const n=(0,o.F)(e,t,u);return e=>{const t=(0,o.j)(e);return n(c(c({},t),{},{G:e.G,ctx:e.ctx,playerID:e.playerID}))}},g=e=>t=>{const n=(0,o.j)(t);return e(c(c({},n),{},{G:t.G,ctx:t.ctx}))},m={onEnd:y(s,o.h.GAME_ON_END),endIf:g(r)};for(const e in p){const t=p[e];if(!0===t.start&&(h=e),void 0!==t.moves)for(const n of Object.keys(t.moves))d[e+"."+n]=t.moves[n],f.add(n);void 0===t.endIf&&(t.endIf=()=>{}),void 0===t.onBegin&&(t.onBegin=e=>{let{G:t}=e;return t}),void 0===t.onEnd&&(t.onEnd=e=>{let{G:t}=e;return t}),void 0===t.turn&&(t.turn=a),void 0===t.turn.order&&(t.turn.order=o.T.DEFAULT),void 0===t.turn.onBegin&&(t.turn.onBegin=e=>{let{G:t}=e;return t}),void 0===t.turn.onEnd&&(t.turn.onEnd=e=>{let{G:t}=e;return t}),void 0===t.turn.endIf&&(t.turn.endIf=()=>!1),void 0===t.turn.onMove&&(t.turn.onMove=e=>{let{G:t}=e;return t}),void 0===t.turn.stages&&(t.turn.stages={}),(0,o.i)(t.turn,!0);for(const n in t.turn.stages){const r=t.turn.stages[n].moves||{};for(const t of Object.keys(r))d[e+"."+n+"."+t]=r[t],f.add(t)}if(t.wrapped={onBegin:y(t.onBegin,o.h.PHASE_ON_BEGIN),onEnd:y(t.onEnd,o.h.PHASE_ON_END),endIf:g(t.endIf)},t.turn.wrapped={onMove:y(t.turn.onMove,o.h.TURN_ON_MOVE),onBegin:y(t.turn.onBegin,o.h.TURN_ON_BEGIN),onEnd:y(t.turn.onEnd,o.h.TURN_ON_END),endIf:g(t.turn.endIf)},"function"!=typeof t.next){const{next:e}=t;t.next=()=>e||null}t.wrapped.next=g(t.next)}function b(e){return e.phase?p[e.phase]:p[""]}function x(e){return e}function _(e,t){const n=new Set,r=new Set;for(let s=0;s<t.length;s++){const o=t[s],{fn:a,arg:i}=o,u=l(o,v);if(a===C){r.clear();const t=e.ctx.phase;if(n.has(t)){const t=c(c({},e.ctx),{},{phase:null});return c(c({},e),{},{ctx:t})}n.add(t)}const p=[];if(e=a(e,c(c({},u),{},{arg:i,next:p})),a===I)break;const d=A(e);if(d){t.push({fn:I,arg:d,turn:e.ctx.turn,phase:e.ctx.phase,automatic:!0});continue}const f=j(e);if(f)t.push({fn:C,arg:f,turn:e.ctx.turn,phase:e.ctx.phase,automatic:!0});else{if([x,M,$].includes(a)){const n=S(e);if(n){t.push({fn:T,arg:n,turn:e.ctx.turn,phase:e.ctx.phase,automatic:!0});continue}}t.push(...p)}}return e}function w(e,t){let{next:n}=t;return n.push({fn:P}),e}function P(e,t){let{next:n}=t,{G:r,ctx:s}=e;return r=b(s).wrapped.onBegin(e),n.push({fn:O}),c(c({},e),{},{G:r,ctx:s})}function O(e,t){let{currentPlayer:n}=t,{ctx:r}=e;const s=b(r);n?(r=c(c({},r),{},{currentPlayer:n}),s.turn.activePlayers&&(r=(0,o.l)(r,s.turn.activePlayers))):r=(0,o.I)(e,s.turn);const a=r.turn+1;r=c(c({},r),{},{turn:a,numMoves:0,_prevActivePlayers:[]});const i=s.turn.wrapped.onBegin(c(c({},e),{},{ctx:r}));return c(c({},e),{},{G:i,ctx:r,_undo:[],_redo:[]})}function k(e,t){let{arg:n,next:r,phase:s}=t;const a=b({phase:s});let{ctx:i}=e;if(n&&n.next){if(!(n.next in p))return(0,o.g)("invalid phase: "+n.next),e;i=c(c({},i),{},{phase:n.next})}else i=c(c({},i),{},{phase:a.wrapped.next(e)||null});return e=c(c({},e),{},{ctx:i}),r.push({fn:P}),e}function E(e,t){let{arg:n,currentPlayer:r,next:s}=t,{G:a,ctx:i}=e;const l=b(i),{endPhase:u,ctx:p}=(0,o.n)(e,r,l.turn,n);return i=p,e=c(c({},e),{},{G:a,ctx:i}),u?s.push({fn:C,turn:i.turn,phase:i.phase}):s.push({fn:O,currentPlayer:i.currentPlayer}),e}function M(e,t){let{arg:n,playerID:r}=t;if("string"!=typeof n&&n!==o.k.NULL||(n={stage:n}),"object"!=typeof n)return e;(0,o.i)(n);let{ctx:s}=e,{activePlayers:a,_activePlayersMinMoves:i,_activePlayersMaxMoves:l,_activePlayersNumMoves:u}=s;return void 0!==n.stage&&(null===a&&(a={}),a[r]=n.stage,u[r]=0,n.minMoves&&(null===i&&(i={}),i[r]=n.minMoves),n.maxMoves&&(null===l&&(l={}),l[r]=n.maxMoves)),s=c(c({},s),{},{activePlayers:a,_activePlayersMinMoves:i,_activePlayersMaxMoves:l,_activePlayersNumMoves:u}),c(c({},e),{},{ctx:s})}function $(e,t){let{arg:n}=t;return c(c({},e),{},{ctx:(0,o.l)(e.ctx,n)})}function A(e){return m.endIf(e)}function j(e){return b(e.ctx).wrapped.endIf(e)}function S(e){const t=b(e.ctx),n=e.ctx.numMoves||0;return!!(t.turn.maxMoves&&n>=t.turn.maxMoves)||t.turn.wrapped.endIf(e)}function I(e,t){let{arg:n,phase:r}=t;void 0===n&&(n=!0),e=c(c({},e=C(e,{phase:r})),{},{ctx:c(c({},e.ctx),{},{gameover:n})});const s=m.onEnd(e);return c(c({},e),{},{G:s})}function C(e,t){let{arg:n,next:r,turn:s,automatic:a}=t;e=T(e,{turn:s,force:!0,automatic:!0});const{phase:i,turn:l}=e.ctx;if(r&&r.push({fn:k,arg:n,phase:i}),null===i)return e;const u=b(e.ctx).wrapped.onEnd(e),p=c(c({},e.ctx),{},{phase:null}),d=(0,o.q)("endPhase",n),{_stateID:f}=e,h={action:d,_stateID:f,turn:l,phase:i};a&&(h.automatic=!0);const v=[...e.deltalog||[],h];return c(c({},e),{},{G:u,ctx:p,deltalog:v})}function T(e,t){let{arg:n,next:r,turn:s,force:a,automatic:i,playerID:l}=t;if(s!==e.ctx.turn)return e;const{currentPlayer:u,numMoves:p,phase:d,turn:f}=e.ctx,h=b(e.ctx),v=p||0;if(!a&&h.turn.minMoves&&v<h.turn.minMoves)return(0,o.m)(`cannot end turn before making ${h.turn.minMoves} moves`),e;const y=h.turn.wrapped.onEnd(e);r&&r.push({fn:E,arg:n,currentPlayer:u});let g=c(c({},e.ctx),{},{activePlayers:null});if(n&&n.remove){l=l||u;const t=g.playOrder.filter(e=>e!=l),n=g.playOrderPos>t.length-1?0:g.playOrderPos;if(g=c(c({},g),{},{playOrder:t,playOrderPos:n}),0===t.length)return r.push({fn:C,turn:f,phase:d}),e}const m=(0,o.q)("endTurn",n),{_stateID:x}=e,_={action:m,_stateID:x,turn:f,phase:d};i&&(_.automatic=!0);const w=[...e.deltalog||[],_];return c(c({},e),{},{G:y,ctx:g,deltalog:w,_undo:[],_redo:[]})}function N(e,t){let{arg:n,next:r,automatic:s,playerID:a}=t;a=a||e.ctx.currentPlayer;let{ctx:i,_stateID:l}=e,{activePlayers:u,_activePlayersNumMoves:p,_activePlayersMinMoves:d,_activePlayersMaxMoves:f,phase:h,turn:v}=i;const y=null!==u&&a in u,g=b(i);if(!n&&y){const e=g.turn.stages[u[a]];e&&e.next&&(n=e.next)}if(r&&r.push({fn:M,arg:n,playerID:a}),!y)return e;const m=p[a]||0;if(d&&d[a]&&m<d[a])return(0,o.m)(`cannot end stage before making ${d[a]} moves`),e;u=c({},u),delete u[a],d&&(d=c({},d),delete d[a]),f&&(f=c({},f),delete f[a]),i=(0,o.o)(c(c({},i),{},{activePlayers:u,_activePlayersMinMoves:d,_activePlayersMaxMoves:f}));const x={action:(0,o.q)("endStage",n),_stateID:l,turn:v,phase:h};s&&(x.automatic=!0);const _=[...e.deltalog||[],x];return c(c({},e),{},{ctx:i,deltalog:_})}function D(e,n,r){const s=b(e),a=s.turn.stages,{activePlayers:i}=e;if(i&&void 0!==i[r]&&i[r]!==o.k.NULL&&void 0!==a[i[r]]&&void 0!==a[i[r]].moves){const e=a[i[r]].moves;if(n in e)return e[n]}else if(s.moves){if(n in s.moves)return s.moves[n]}else if(n in t)return t[n];return null}const R={endStage:function(e,t){return _(e,[{fn:N,playerID:t}])},setStage:function(e,t,n){return _(e,[{fn:N,arg:n,playerID:t}])},endTurn:function(e,t,n){return _(e,[{fn:T,turn:e.ctx.turn,phase:e.ctx.phase,arg:n}])},pass:function(e,t,n){return _(e,[{fn:T,turn:e.ctx.turn,phase:e.ctx.phase,force:!0,arg:n}])},endPhase:function(e){return _(e,[{fn:C,phase:e.ctx.phase,turn:e.ctx.turn}])},setPhase:function(e,t,n){return _(e,[{fn:C,phase:e.ctx.phase,turn:e.ctx.turn,arg:{next:n}}])},endGame:function(e,t,n){return _(e,[{fn:I,turn:e.ctx.turn,phase:e.ctx.phase,arg:n}])},setActivePlayers:function(e,t,n){return _(e,[{fn:$,arg:n}])}},B=[];return!1!==i.endTurn&&B.push("endTurn"),!1!==i.pass&&B.push("pass"),!1!==i.endPhase&&B.push("endPhase"),!1!==i.setPhase&&B.push("setPhase"),!1!==i.endGame&&B.push("endGame"),!1!==i.setActivePlayers&&B.push("setActivePlayers"),!1!==i.endStage&&B.push("endStage"),!1!==i.setStage&&B.push("setStage"),{ctx:e=>({numPlayers:e,turn:0,currentPlayer:"0",playOrder:[...Array.from({length:e})].map((e,t)=>t+""),playOrderPos:0,phase:h,activePlayers:null}),init:e=>_(e,[{fn:w}]),isPlayerActive:function(e,t,n){return t.activePlayers?n in t.activePlayers:t.currentPlayer===n},eventHandlers:R,eventNames:Object.keys(R),enabledEventNames:B,moveMap:d,moveNames:[...f.values()],processMove:function(e,t){const{playerID:n,type:r}=t,{currentPlayer:s,activePlayers:o,_activePlayersMaxMoves:a}=e.ctx,i=D(e.ctx,r,n),l=!i||"function"==typeof i||!0!==i.noLimit;let{numMoves:u,_activePlayersNumMoves:p}=e.ctx;l&&(n===s&&u++,o&&p[n]++),e=c(c({},e),{},{ctx:c(c({},e.ctx),{},{numMoves:u,_activePlayersNumMoves:p})}),a&&p[n]>=a[n]&&(e=N(e,{playerID:n,automatic:!0}));const d=b(e.ctx).turn.wrapped.onMove(c(c({},e),{},{playerID:n}));return _(e=c(c({},e),{},{G:d}),[{fn:x}])},processEvent:function(e,t){const{type:n,playerID:r,args:s}=t.payload;return"function"!=typeof R[n]?e:R[n](e,r,...Array.isArray(s)?s:[s])},getMove:D}}(e);return c(c({},e),{},{flow:t,moveNames:t.moveNames,pluginNames:e.plugins.map(e=>e.name),processMove:(n,r)=>{let s=t.getMove(n.ctx,r.type,r.playerID);if(u(s)&&(s=s.move),s instanceof Function){const t=(0,o.F)(s,o.h.MOVE,e.plugins);let a=[];return void 0!==r.args&&(a=Array.isArray(r.args)?r.args:[r.args]),t(c(c({},(0,o.j)(n)),{},{G:n.G,ctx:n.ctx,playerID:r.playerID}),...a)}return(0,o.g)(`invalid move object: ${r.type}`),n.G}})}function u(e){return e instanceof Object&&void 0!==e.move}!function(e){e.UnauthorizedAction="update/unauthorized_action",e.MatchNotFound="update/match_not_found",e.PatchFailed="update/patch_failed"}(r||(r={})),function(e){e.StaleStateId="action/stale_state_id",e.UnavailableMove="action/unavailable_move",e.InvalidMove="action/invalid_move",e.InactivePlayer="action/inactive_player",e.GameOver="action/gameover",e.ActionDisabled="action/action_disabled",e.ActionInvalid="action/action_invalid",e.PluginActionInvalid="action/plugin_invalid"}(s||(s={}));const p=e=>null!==e.payload.playerID&&void 0!==e.payload.playerID;function d(e,t){if(t.game.disableUndo)return e;const n={G:e.G,ctx:e.ctx,plugins:e.plugins,playerID:t.action.payload.playerID||e.ctx.currentPlayer};return"MAKE_MOVE"===t.action.type&&(n.moveType=t.action.payload.type),c(c({},e),{},{_undo:[...e._undo,n],_redo:[]})}function f(e,t,n){const r={action:t,_stateID:e._stateID,turn:e.ctx.turn,phase:e.ctx.phase},s=e.plugins.log.data.metadata;return void 0!==s&&(r.metadata=s),"object"==typeof n&&!0===n.redact?r.redact=!0:"object"==typeof n&&n.redact instanceof Function&&(r.redact=n.redact({G:e.G,ctx:e.ctx})),c(c({},e),{},{deltalog:[r]})}function h(e,t,n){const[r,a]=(0,o.x)(e,n);return a?[r,m(t,s.PluginActionInvalid,a)]:[r]}function g(e){if(!e)return[null,void 0];const{transients:t}=e;return[l(e,y),t]}function m(e,t,n){const r={type:t,payload:n};return c(c({},e),{},{transients:{error:r}})}t.T=e=>t=>n=>{const r=t(n);if(n.type===o.e)return r;{const[,t]=g(e.getState());return void 0!==t?(e.dispatch((0,o.y)()),c(c({},r),{},{transients:t})):r}}},5194(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.L=function(){let{bots:e,persist:t,storageKey:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return r=>{const{gameKey:s,game:o}=r;let a;const i=v.get(s);return i&&i.bots===e&&i.storageKey===n&&i.persist===t&&(a=i.master),a||(a=new f({game:o,bots:e,persist:t,storageKey:n}),v.set(s,{master:a,bots:e,persist:t,storageKey:n})),new h(c({master:a},r))}},t.S=function(){let{server:e,socketOpts:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return n=>new x(c({server:e,socketOpts:t},n))};var r=n(568),s=n(2073),o=n(7857),a=n(9710),i=function(e,t){if("function"==typeof WeakMap)var n=new WeakMap,r=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var s,o,a={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return a;if(s=t?r:n){if(s.has(e))return s.get(e);s.set(e,a)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((o=(s=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(o.get||o.set)?s(a,t,o):a[t]=e[t]);return a}(e,t)}(n(8007));class u extends r.S{constructor(){super(),this.state=new Map,this.initial=new Map,this.metadata=new Map,this.log=new Map}createMatch(e,t){this.initial.set(e,t.initialState),this.setState(e,t.initialState),this.setMetadata(e,t.metadata)}setMetadata(e,t){this.metadata.set(e,t)}setState(e,t,n){if(n&&n.length>0){const t=this.log.get(e)||[];this.log.set(e,[...t,...n])}this.state.set(e,t)}fetch(e,t){const n={};return t.state&&(n.state=this.state.get(e)),t.metadata&&(n.metadata=this.metadata.get(e)),t.log&&(n.log=this.log.get(e)||[]),t.initialState&&(n.initialState=this.initial.get(e)),n}wipe(e){this.state.delete(e),this.metadata.delete(e)}listMatches(e){return[...this.metadata.entries()].filter(t=>{let[,n]=t;if(!e)return!0;if(void 0!==e.gameName&&n.gameName!==e.gameName)return!1;if(void 0!==e.where){if(void 0!==e.where.isGameover&&void 0!==n.gameover!==e.where.isGameover)return!1;if(void 0!==e.where.updatedBefore&&n.updatedAt>=e.where.updatedBefore)return!1;if(void 0!==e.where.updatedAfter&&n.updatedAt<=e.where.updatedAfter)return!1}return!0}).map(e=>{let[t]=e;return t})}}class p extends Map{constructor(e){super(),this.key=e,(JSON.parse(localStorage.getItem(this.key))||[]).forEach(e=>this.set(...e))}sync(){const e=[...this.entries()];localStorage.setItem(this.key,JSON.stringify(e))}set(e,t){return super.set(e,t),this.sync(),this}delete(e){const t=super.delete(e);return this.sync(),t}}class d extends u{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"bgio";super();const t=t=>new p(`${e}_${t}`);this.state=t("state"),this.initial=t("initial"),this.metadata=t("metadata"),this.log=t("log")}}class f extends s.M{constructor(e){let{game:t,bots:n,storageKey:r,persist:s}=e;const o={},i={};if(t&&t.ai&&n)for(const e in n){const r=n[e];i[e]=new r({game:t,enumerate:t.ai.enumerate,seed:t.seed})}const p=e=>{let{playerID:t}=e,n=l(e,g);const r=o[t];void 0!==r&&r(f(t,n))},f=(0,a.g)(t),h={send:p,sendAll:e=>{for(const t in o)p(c({playerID:t},e))}};super(t,s?new d(r):new u,h),this.connect=(e,t)=>{o[e]=t},this.subscribe(e=>{let{state:t,matchID:r}=e;if(!n)return;const s=function(e,t){if(void 0!==e.ctx.gameover)return null;if(e.ctx.activePlayers){for(const n of Object.keys(t))if(n in e.ctx.activePlayers)return n}else if(e.ctx.currentPlayer in t)return e.ctx.currentPlayer;return null}(t,i);null!==s&&setTimeout(async()=>{const e=await i[s].play(t,s);await this.onUpdate(e.action,t._stateID,r,e.action.payload.playerID)},100)})}}class h extends o.T{constructor(e){let{master:t}=e;super(l(e,m)),this.master=t}sendChatMessage(e,t){const n=[e,t,this.credentials];this.master.onChatMessage(...n)}sendAction(e,t){this.master.onUpdate(t,e._stateID,this.matchID,this.playerID)}requestSync(){this.master.onSync(this.matchID,this.playerID,this.credentials,this.numPlayers)}connect(){this.setConnectionStatus(!0),this.master.connect(this.playerID,e=>this.notifyClient(e)),this.requestSync()}disconnect(){this.setConnectionStatus(!1)}updateMatchID(e){this.matchID=e,this.connect()}updatePlayerID(e){this.playerID=e,this.connect()}updateCredentials(e){this.credentials=e,this.connect()}}const v=new Map,y=i.default;class x extends o.T{constructor(e){let{socket:t,socketOpts:n,server:r}=e;super(l(e,b)),this.server=r,this.socket=t,this.socketOpts=n}sendAction(e,t){const n=[t,e._stateID,this.matchID,this.playerID];this.socket.emit("update",...n)}sendChatMessage(e,t){const n=[e,t,this.credentials];this.socket.emit("chat",...n)}connect(){if(!this.socket)if(this.server){let e=this.server;-1==e.search(/^https?:\/\//)&&(e="http://"+this.server),"/"!=e.slice(-1)&&(e+="/"),this.socket=y(e+this.gameName,this.socketOpts)}else this.socket=y("/"+this.gameName,this.socketOpts);this.socket.on("patch",(e,t,n,r,s)=>{this.notifyClient({type:"patch",args:[e,t,n,r,s]})}),this.socket.on("update",(e,t,n)=>{this.notifyClient({type:"update",args:[e,t,n]})}),this.socket.on("sync",(e,t)=>{this.notifyClient({type:"sync",args:[e,t]})}),this.socket.on("matchData",(e,t)=>{this.notifyClient({type:"matchData",args:[e,t]})}),this.socket.on("chat",(e,t)=>{this.notifyClient({type:"chat",args:[e,t]})}),this.socket.on("connect",()=>{this.requestSync(),this.setConnectionStatus(!0)}),this.socket.on("disconnect",()=>{this.setConnectionStatus(!1)})}disconnect(){this.socket.close(),this.socket=null,this.setConnectionStatus(!1)}requestSync(){if(this.socket){const e=[this.matchID,this.playerID,this.credentials,this.numPlayers];this.socket.emit("sync",...e)}}updateMatchID(e){this.matchID=e,this.requestSync()}updatePlayerID(e){this.playerID=e,this.requestSync()}updateCredentials(e){this.credentials=e,this.requestSync()}}},7857(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.T=void 0,t.T=class{constructor(e){let{transportDataCallback:t,gameName:n,playerID:r,matchID:s,credentials:o,numPlayers:a}=e;this.connectionStatusCallback=()=>{},this.isConnected=!1,this.transportDataCallback=t,this.gameName=n||"default",this.playerID=r||null,this.matchID=s||"default",this.credentials=o,this.numPlayers=a||2}subscribeToConnectionStatus(e){this.connectionStatusCallback=e}setConnectionStatus(e){this.isConnected=e,this.connectionStatusCallback()}notifyClient(e){this.transportDataCallback(e)}}},9896(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.G=t.F=t.E=t.C=t.B=t.A=void 0,t.I=function(e,t){let{G:n,ctx:r}=e;const{numPlayers:s}=r,o=c(c({},R(e)),{},{G:n,ctx:r}),a=t.order;let i=[...Array.from({length:s})].map((e,t)=>t+"");void 0!==a.playOrder&&(i=a.playOrder(o));const l=a.first(o),u=typeof l;"number"!==u&&T(`invalid value returned by turn.order.first — expected number got ${u} “${l}”.`);const p=L(i,l);return r=c(c({},r),{},{currentPlayer:p,playOrderPos:l,playOrder:i}),r=G(r,t.activePlayers||{}),r},t.f=t.e=t.d=t.c=t.b=t.a=t.U=t.T=t.S=t.R=t.P=t.N=t.M=void 0,t.g=T,t.h=void 0,t.i=B,t.k=t.j=void 0,t.l=G,t.m=function(e){},t.n=function(e,t,n,r){const s=n.order;let{G:o,ctx:a}=e,i=a.playOrderPos,l=!1;if(r&&!0!==r)"object"!=typeof r&&T(`invalid argument to endTurn: ${r}`),Object.keys(r).forEach(e=>{switch(e){case"remove":t=L(a.playOrder,i);break;case"next":i=a.playOrder.indexOf(r.next),t=r.next;break;default:T(`invalid argument to endTurn: ${e}`)}});else{const n=c(c({},R(e)),{},{G:o,ctx:a}),r=s.next(n),u=typeof r;void 0!==r&&"number"!==u&&T(`invalid value returned by turn.order.next — expected number or undefined got ${u} “${r}”.`),void 0===r?l=!0:(i=r,t=L(a.playOrder,i))}return a=c(c({},a),{},{playOrderPos:i,currentPlayer:t}),{endPhase:l,ctx:a}},t.o=function(e){let{activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o,_nextActivePlayers:a}=e;if(t&&0===Object.keys(t).length)if(a)e=G(e,a),({activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o}=e);else if(o.length>0){const e=o.length-1;({activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s}=o[e]),o=o.slice(0,e)}else t=null,n=null,r=null;return c(c({},e),{},{activePlayers:t,_activePlayersMinMoves:n,_activePlayersMaxMoves:r,_activePlayersNumMoves:s,_prevActivePlayers:o})},t.z=t.y=t.x=t.w=t.v=t.u=t.t=t.s=t.r=t.q=t.p=void 0;var r=o(n(5878)),s=n(9458);function o(e){return e&&e.__esModule?e:{default:e}}o(n(9001));const a=t.M="MAKE_MOVE",i=t.G="GAME_EVENT",l=t.c="REDO",u=t.R="RESET",p=t.S="SYNC",d=t.d="UNDO",f=t.U="UPDATE",h=t.b="PATCH",v=t.t="PLUGIN",y=t.e="STRIP_TRANSIENTS",g=(e,t,n,r)=>({type:a,payload:{type:e,args:t,playerID:n,credentials:r}});t.B=g;const m=(e,t,n,r)=>({type:i,payload:{type:e,args:t,playerID:n,credentials:r}});t.q=m;const b=(e,t,n,r)=>({type:i,payload:{type:e,args:t,playerID:n,credentials:r},automatic:!0}),x=e=>({type:p,state:e.state,log:e.log,initialState:e.initialState,clientOnly:!0});t.s=x;const _=(e,t,n,r)=>({type:h,prevStateID:e,stateID:t,patch:n,deltalog:r,clientOnly:!0});t.p=_;const w=(e,t)=>({type:f,state:e,deltalog:t,clientOnly:!0});t.f=w;const P=e=>({type:u,state:e,clientOnly:!0});t.r=P;const O=(e,t)=>({type:d,payload:{type:null,args:null,playerID:e,credentials:t}});t.u=O;const k=(e,t)=>({type:l,payload:{type:null,args:null,playerID:e,credentials:t}});t.a=k;const E=()=>({type:y});t.y=E,t.A=Object.freeze({__proto__:null,makeMove:g,gameEvent:m,automaticGameEvent:b,sync:x,patch:_,update:w,reset:P,undo:O,redo:k,plugin:(e,t,n,r)=>({type:v,payload:{type:e,args:t,playerID:n,credentials:r}}),stripTransients:E});const M=t.w="INVALID_MOVE",$={name:"plugin-immer",fnWrap:e=>function(t){for(var n=arguments.length,s=new Array(n>1?n-1:0),o=1;o<n;o++)s[o-1]=arguments[o];let a=!1;const i=(0,r.default)(t.G,n=>{const r=e(c(c({},t),{},{G:n}),...s);if(r!==M)return r;a=!0});return a?M:i}};var A,j;!function(e){e.MOVE="MOVE",e.GAME_ON_END="GAME_ON_END",e.PHASE_ON_BEGIN="PHASE_ON_BEGIN",e.PHASE_ON_END="PHASE_ON_END",e.TURN_ON_BEGIN="TURN_ON_BEGIN",e.TURN_ON_MOVE="TURN_ON_MOVE",e.TURN_ON_END="TURN_ON_END"}(A||(t.h=A={})),function(e){e.CalledOutsideHook="Events must be called from moves or the `onBegin`, `onEnd`, and `onMove` hooks.\nThis error probably means you called an event from other game code, like an `endIf` trigger or one of the `turn.order` methods.",e.EndTurnInOnEnd="`endTurn` is disallowed in `onEnd` hooks — the turn is already ending.",e.MaxTurnEndings="Maximum number of turn endings exceeded for this update.\nThis likely means game code is triggering an infinite loop.",e.PhaseEventInOnEnd="`setPhase` & `endPhase` are disallowed in a phase’s `onEnd` hook — the phase is already ending.\nIf you’re trying to dynamically choose the next phase when a phase ends, use the phase’s `next` trigger.",e.StageEventInOnEnd="`setStage`, `endStage` & `setActivePlayers` are disallowed in `onEnd` hooks.",e.StageEventInPhaseBegin="`setStage`, `endStage` & `setActivePlayers` are disallowed in a phase’s `onBegin` hook.\nUse `setActivePlayers` in a `turn.onBegin` hook or declare stages with `turn.activePlayers` instead.",e.StageEventInTurnBegin="`setStage` & `endStage` are disallowed in `turn.onBegin`.\nUse `setActivePlayers` or declare stages with `turn.activePlayers` instead."}(j||(j={}));class S{constructor(e,t,n){this.flow=e,this.playerID=n,this.dispatch=[],this.initialTurn=t.turn,this.updateTurnContext(t,void 0),this.maxEndedTurnsPerAction=100*t.numPlayers}api(){var e=this;const t={_private:this};for(const n of this.flow.eventNames)t[n]=function(){for(var t=arguments.length,r=new Array(t),s=0;s<t;s++)r[s]=arguments[s];e.dispatch.push({type:n,args:r,phase:e.currentPhase,turn:e.currentTurn,calledFrom:e.currentMethod,error:new Error("Events Plugin Error")})};return t}isUsed(){return this.dispatch.length>0}updateTurnContext(e,t){this.currentPhase=e.phase,this.currentTurn=e.turn,this.currentMethod=t}unsetCurrentMethod(){this.currentMethod=void 0}update(e){const t=e,n=(e,n)=>{let{stack:r}=e;return c(c({},t),{},{plugins:c(c({},t.plugins),{},{events:c(c({},t.plugins.events),{},{data:{error:n+"\n"+r}})})})};e:for(let t=0;t<this.dispatch.length;t++){const r=this.dispatch[t],s=r.turn!==e.ctx.turn;if(this.currentTurn-this.initialTurn>=this.maxEndedTurnsPerAction)return n(r.error,j.MaxTurnEndings);if(void 0===r.calledFrom)return n(r.error,j.CalledOutsideHook);if(e.ctx.gameover)break e;switch(r.type){case"endStage":case"setStage":case"setActivePlayers":switch(r.calledFrom){case A.TURN_ON_END:case A.PHASE_ON_END:return n(r.error,j.StageEventInOnEnd);case A.PHASE_ON_BEGIN:return n(r.error,j.StageEventInPhaseBegin);case A.TURN_ON_BEGIN:if("setActivePlayers"===r.type)break;return n(r.error,j.StageEventInTurnBegin)}if(s)continue e;break;case"endTurn":if(r.calledFrom===A.TURN_ON_END||r.calledFrom===A.PHASE_ON_END)return n(r.error,j.EndTurnInOnEnd);if(s)continue e;break;case"endPhase":case"setPhase":if(r.calledFrom===A.PHASE_ON_END)return n(r.error,j.PhaseEventInOnEnd);if(r.phase!==e.ctx.phase)continue e}const o=b(r.type,r.args,this.playerID);e=this.flow.processEvent(e,o)}return e}}const I={name:"events",noClient:e=>{let{api:t}=e;return t._private.isUsed()},isInvalid:e=>{let{data:t}=e;return t.error||!1},fnWrap:(e,t)=>function(n){const r=n.events;r&&r._private.updateTurnContext(n.ctx,t);for(var s=arguments.length,o=new Array(s>1?s-1:0),a=1;a<s;a++)o[a-1]=arguments[a];const i=e(n,...o);return r&&r._private.unsetCurrentMethod(),i},dangerouslyFlushRawState:e=>{let{state:t,api:n}=e;return n._private.update(t)},api:e=>{let{game:t,ctx:n,playerID:r}=e;return new S(t.flow,n,r).api()}},C={name:"plugin-serializable",fnWrap:e=>function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];return e(t,...r)}};function T(e){!function(){console.error(...arguments)}("ERROR:",e)}const N=[$,s.R,{name:"log",flush:()=>({}),api:e=>{let{data:t}=e;return{setMetadata:e=>{t.metadata=e}}},setup:()=>({})},C],D=[...N,I];t.v=(e,t,n)=>(n.game.plugins.filter(e=>void 0!==e.action).filter(e=>e.name===t.payload.type).forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}},o=n.action(s.data,t.payload);e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[r]:c(c({},s),{},{data:o})})})}),e);const R=e=>{let{plugins:t}=e;return Object.entries(t||{}).reduce((e,t)=>{let[n,{api:r}]=t;return e[n]=r,e},{})};function B(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e.moveLimit&&(t&&(e.minMoves=e.moveLimit),e.maxMoves=e.moveLimit,delete e.moveLimit)}function G(e,t){let n={},r=[],s=null,o={},a={};if(Array.isArray(t)){const e={};t.forEach(t=>e[t]=U.NULL),n=e}else{if(B(t),t.next&&(s=t.next),t.revert&&(r=[...e._prevActivePlayers,{activePlayers:e.activePlayers,_activePlayersMinMoves:e._activePlayersMinMoves,_activePlayersMaxMoves:e._activePlayersMaxMoves,_activePlayersNumMoves:e._activePlayersNumMoves}]),void 0!==t.currentPlayer&&F(n,o,a,e.currentPlayer,t.currentPlayer),void 0!==t.others)for(let r=0;r<e.playOrder.length;r++){const s=e.playOrder[r];s!==e.currentPlayer&&F(n,o,a,s,t.others)}if(void 0!==t.all)for(let r=0;r<e.playOrder.length;r++)F(n,o,a,e.playOrder[r],t.all);if(t.value)for(const e in t.value)F(n,o,a,e,t.value[e]);if(t.minMoves)for(const e in n)void 0===o[e]&&(o[e]=t.minMoves);if(t.maxMoves)for(const e in n)void 0===a[e]&&(a[e]=t.maxMoves)}0===Object.keys(n).length&&(n=null),0===Object.keys(o).length&&(o=null),0===Object.keys(a).length&&(a=null);const i={};for(const e in n)i[e]=0;return c(c({},e),{},{activePlayers:n,_activePlayersMinMoves:o,_activePlayersMaxMoves:a,_activePlayersNumMoves:i,_prevActivePlayers:r,_nextActivePlayers:s})}function F(e,t,n,r,s){"object"==typeof s&&s!==U.NULL||(s={stage:s}),void 0!==s.stage&&(B(s),e[r]=s.stage,s.minMoves&&(t[r]=s.minMoves),s.maxMoves&&(n[r]=s.maxMoves))}function L(e,t){return e[t]+""}t.j=R,t.F=(e,t,n)=>[...N,...n,I].filter(e=>void 0!==e.fnWrap).reduce((e,n)=>{let{fnWrap:r}=n;return r(e,t)},e),t.z=(e,t)=>([...D,...t.game.plugins].filter(e=>void 0!==e.setup).forEach(n=>{const r=n.name,s=n.setup({G:e.G,ctx:e.ctx,game:t.game});e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[r]:{data:s}})})}),e),t.E=(e,t)=>([...D,...t.game.plugins].filter(e=>void 0!==e.api).forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}},o=n.api({G:e.G,ctx:e.ctx,data:s.data,game:t.game,playerID:t.playerID});e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[r]:c(c({},s),{},{api:o})})})}),e),t.N=(e,t)=>[...D,...t.game.plugins].filter(e=>void 0!==e.noClient).map(n=>{const r=n.name,s=e.plugins[r];return!!s&&n.noClient({G:e.G,ctx:e.ctx,game:t.game,api:s.api,data:s.data})}).includes(!0),t.x=(e,t)=>{const n=((e,t)=>([...N,...t.game.plugins,I].reverse().forEach(n=>{const r=n.name,s=e.plugins[r]||{data:{}};if(n.flush){const r=n.flush({G:e.G,ctx:e.ctx,game:t.game,api:s.api,data:s.data});e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[n.name]:{data:r}})})}else if(n.dangerouslyFlushRawState){const o=(e=n.dangerouslyFlushRawState({state:e,game:t.game,api:s.api,data:s.data})).plugins[r].data;e=c(c({},e),{},{plugins:c(c({},e.plugins),{},{[n.name]:{data:o}})})}}),e))(e,t),r=((e,t)=>{const n=[...D,...t.game.plugins].filter(e=>void 0!==e.isInvalid).map(n=>{const{name:r}=n,s=e.plugins[r],o=n.isInvalid({G:e.G,ctx:e.ctx,game:t.game,data:s&&s.data});return!!o&&{plugin:r,message:o}}).find(e=>e);return n||!1})(n,t);if(!r)return[n];const{plugin:s,message:o}=r;return T(`${s} plugin declared action invalid:\n${o}`),[e,r]},t.P=(e,t)=>{let{G:n,ctx:r,plugins:s={}}=e,{game:o,playerID:a}=t;return[...D,...o.plugins].forEach(e=>{let{name:t,playerView:i}=e;if(!i)return;const{data:l}=s[t]||{data:{}},u=i({G:n,ctx:r,game:o,data:l,playerID:a});s=c(c({},s),{},{[t]:{data:u}})}),s},t.T={DEFAULT:{first:e=>{let{ctx:t}=e;return 0===t.turn?t.playOrderPos:(t.playOrderPos+1)%t.playOrder.length},next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},RESET:{first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},CONTINUE:{first:e=>{let{ctx:t}=e;return t.playOrderPos},next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}},ONCE:{first:()=>0,next:e=>{let{ctx:t}=e;if(t.playOrderPos<t.playOrder.length-1)return t.playOrderPos+1}},CUSTOM:e=>({playOrder:()=>e,first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}}),CUSTOM_FROM:e=>({playOrder:t=>{let{G:n}=t;return n[e]},first:()=>0,next:e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.playOrder.length}})};const U=t.k={NULL:null};t.C={ALL:{all:U.NULL},ALL_ONCE:{all:U.NULL,minMoves:1,maxMoves:1},OTHERS:{others:U.NULL},OTHERS_ONCE:{others:U.NULL,minMoves:1,maxMoves:1}}},568(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.c=t.S=t.A=void 0,t.i=function(e){return e.type()===r.SYNC};var r,s=n(8630);!function(e){e[e.SYNC=0]="SYNC",e[e.ASYNC=1]="ASYNC"}(r||(r={})),t.A=class{type(){return r.ASYNC}async createMatch(e,t){if(this.createGame)return console.warn("The database connector does not implement a createMatch method.","\nUsing the deprecated createGame method instead."),this.createGame(e,t);console.error("The database connector does not implement a createMatch method.")}async listMatches(e){if(this.listGames)return console.warn("The database connector does not implement a listMatches method.","\nUsing the deprecated listGames method instead."),this.listGames(e);console.error("The database connector does not implement a listMatches method.")}},t.S=class{type(){return r.SYNC}connect(){}createMatch(e,t){if(this.createGame)return console.warn("The database connector does not implement a createMatch method.","\nUsing the deprecated createGame method instead."),this.createGame(e,t);console.error("The database connector does not implement a createMatch method.")}listMatches(e){if(this.listGames)return console.warn("The database connector does not implement a listMatches method.","\nUsing the deprecated listGames method instead."),this.listGames(e);console.error("The database connector does not implement a listMatches method.")}},t.c=e=>{let{game:t,numPlayers:n,setupData:r,unlisted:o}=e;n&&"number"==typeof n||(n=2);const a=t.validateSetupData&&t.validateSetupData(r,n);if(void 0!==a)return{setupDataError:a};const i=(e=>{let{game:t,unlisted:n,setupData:r,numPlayers:s}=e;const o={gameName:t.name,unlisted:!!n,players:{},createdAt:Date.now(),updatedAt:Date.now()};void 0!==r&&(o.setupData=r);for(let e=0;e<s;e++)o.players[e]={id:e};return o})({game:t,numPlayers:n,setupData:r,unlisted:o});return{metadata:i,initialState:(0,s.I)({game:t,numPlayers:n,setupData:r})}}},4245(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.Client=void 0;var r=n(4688),s=n(504),o=n(9843),a=n(7627),i=g(n(4913)),l=n(3883),u=g(n(3276)),p=g(n(4171)),d=g(n(7208)),f=g(n(7611)),h=g(n(380)),v=g(n(2146)),y=g(n(9965));function g(e){return e&&e.__esModule?e:{default:e}}t.Client=class{constructor(e){this.options=e,this.game=e.boardgameIOGame||(0,i.default)(JSON.parse(e.gameRules),e.gameName),e.boardgameIOGame||(this.moveBuilder={targets:[],stepIndex:0,eliminatedMoves:[]},this.optimisticWinner=null)}connect(){const{server:e,numPlayers:t,debug:n={collapseOnLoad:!0,impl:s.Debug},gameId:a,boardgamePlayerID:i,clientToken:c,singlePlayer:l=!c}=this.options;try{const s=l?{game:this.game,numPlayers:t,debug:n}:{game:this.game,multiplayer:(0,o.SocketIO)({server:e,socketOpts:{transports:["websocket","polling"]}}),matchID:a,playerID:i,credentials:c,debug:n};return this.client=(0,r.Client)(s),this.client.subscribe(()=>this.update()),this.client.start(),this}catch(e){console.error("Failed to join game:",e)}}update(){this.options.onClientUpdate?.()}getState(){const e=this.client?.getState();if(!e)return{};if(this.options.boardgameIOGame)return{state:e,gameover:e?.ctx?.gameover,moves:this.client.moves};const t=c(c({},e),{},{G:(0,a.deserialize)(JSON.stringify(e.G),l.registry),originalG:e.G}),n=t?.ctx?.gameover,r=n?[]:Object.entries((0,p.default)(t,this.client)).reduce((e,t)=>{let[n,r]=t;const s=e=>{this.client.moves[n]((0,h.default)(e))};return s.moveInstance=r.moveInstance,c(c({},e),{},{[n]:s})},{}),s=function(e,t,n){const{eliminatedMoves:r,stepIndex:s}=n,o={},a=new Set;return Object.entries(t).filter(e=>{let[t]=e;return!r.includes(t)}).forEach(t=>{let[r,i]=t;const l=(0,d.default)(e,c(c({},i.moveInstance.rule),{},{moveName:r})),u={moveInstance:i.moveInstance,moveArguments:l.arguments},p=n.targets.map(t=>t.abstract?t:e.G.bank.locate(t.entityId)),h=(0,y.default)(e,l,p,u);u.moveArguments=c(c({},u.moveArguments),h.arguments);const g=(0,f.default)(e,l,{},u).conditionsAreMet,m=(0,v.default)(e,l),b=new Set(g&&m?.[s]?.getClickable(u)||[]);o[r]={clickableForMove:b},b.forEach(e=>a.add(e))}),{possibleMoveMeta:o,allClickable:a}}(t,r,this.moveBuilder);return{state:t,gameover:n,moves:r,allClickable:s.allClickable,possibleMoveMeta:s.possibleMoveMeta}}doStep(e){if(this.options.boardgameIOGame)return;const{state:t,moves:n,possibleMoveMeta:r}=this.getState(),s=e.abstract?e:t.G.bank.locate(e.entityId),o=Object.entries(r).filter(e=>{let[t,n]=e;return!function(e,t){return t.abstract?[...e].some(e=>e.abstract&&e.value===t.value):e.has(t)}(n.clickableForMove,s)}).map(e=>{let[t]=e;return t}).concat(this.moveBuilder.eliminatedMoves);if(o.length===Object.keys(n).length)return void console.error("invalid move with target:",s?.rule);const i=Object.entries(r).filter(e=>{let[t]=e;return!o.includes(t)});if(function(e,t,n,r){return 1===n.length&&(0,v.default)(e,t[n[0][0]].moveInstance.rule).length===r+1}(t,n,i,this.moveBuilder.stepIndex)){const[e]=i[0],r=n[e],o=(0,y.default)(t,r.moveInstance.rule,[...this.moveBuilder.targets,s],{moveInstance:r.moveInstance});this.optimisticWinner=function(e,t,n,r){const s=(0,u.default)(e,(0,h.default)(r),{moveInstance:n});return t.endIf?.(c(c({},e),{},{G:JSON.parse((0,a.serialize)(s))}))}(t,this.game,r.moveInstance,o),r(o),this.moveBuilder={targets:[],stepIndex:0,eliminatedMoves:[]}}else this.moveBuilder={eliminatedMoves:o,stepIndex:this.moveBuilder.stepIndex+1,targets:[...this.moveBuilder.targets,s]};this.update()}reset(){this.options.boardgameIOGame||(this.moveBuilder={targets:[],stepIndex:0,eliminatedMoves:[]},this.optimisticWinner=null,this.update())}undoStep(){this.options.boardgameIOGame||(this.moveBuilder.targets.length&&(this.moveBuilder={targets:this.moveBuilder.targets.slice(0,-1),stepIndex:Math.max(0,this.moveBuilder.stepIndex-1),eliminatedMoves:[]}),this.update())}}},784(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(7208))&&r.__esModule?r:{default:r};t.default=class{constructor(e,t){this.bank=t,this.rule=e,this.pool=[],this.remaining=+e.count||1}getOne(e,t,n){return this.getMultiple(e,1,t,n)[0]}getMultiple(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1/0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;const o=[];if(this.remaining===1/0&&t===1/0)throw new Error(`Cannot get infinite pieces from slot with infinite remaining: ${this.rule.name}`);if(t!==1/0&&t>this.remaining)throw new Error(`Requested ${t} pieces but only ${this.remaining} available in slot: ${this.rule.name}`);const a=t===1/0?this.remaining:t;this.remaining!==1/0&&(this.remaining-=a);const i=Math.min(a,this.pool.length);o.push(...this.pool.splice(0,i));const l=a-i;if(l>0&&o.push(...Array.from(new Array(l)).map(()=>this.bank.createEntity(this.rule))),n.state){const t=(0,s.default)(e,n.state,r);o.forEach(e=>{e.state=c(c({},e.state),t)})}return o}returnToBank(e){e.rule.state?e.state=e.rule.state:delete e.state,void 0!==this.remaining&&(this.remaining+=1),this.pool.push(e)}},e.exports=t.default},6103(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(7309)),s=l(n(7612)),o=l(n(7611)),a=n(3883),i=l(n(784));function l(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){this.currentEntityId=0,this.tracker={},this.slots=e.map(e=>new i.default(e,this))}createEntity(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;const n=new a.registry[e.type||"Entity"](c({bank:this,fromBank:!0},t),e,this.currentEntityId++);return this.track(n),n}track(e){this.tracker[e.entityId]=e}locate(e){return this.tracker[e]}findAll(e,t,n){if(!t.conditions)throw new Error(`Cannot find entity with no conditions. Rule: ${JSON.stringify(t)}`);return(0,s.default)(Object.values(this.tracker),r=>(0,o.default)(e,t,{target:r},n).conditionsAreMet)}findOne(e,t,n){return this.findAll(e,t,n)[0]}find(e,t,n){return t.matchMultiple?this.findAll(e,t,n):this.findOne(e,t,n)}findParent(e){return(0,r.default)(this.tracker,t=>t.entities?.includes(e)||t.spaces?.includes(e))}getOne(e,t,n){const r=this.getSlot(e,t,n);return r||console.error(`No matching slot for ${JSON.stringify(t)}`),r.getOne(e,{state:t.state},n)}getMultiple(e,t,n,r){const s=this.getSlots(e,t,r);return s.length||console.error(`No matching slots for ${JSON.stringify(t)}`),s.reduce((r,s)=>[...r,...s.getMultiple(e,n,{state:t.state})],[])}getSlot(e,t,n){return this.slots.find(r=>(0,o.default)(e,t,{target:r},n).conditionsAreMet)}getSlots(e,t,n){return this.slots.filter(r=>(0,o.default)(e,t,{target:r},n).conditionsAreMet)}returnToBank(e,t){this.findParent(t).remove(t),this.getSlot(e,t.rule).returnToBank(t),delete this.tracker[t.entityId]}},e.exports=t.default},2606(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(1325))&&r.__esModule?r:{default:r};class o extends s.default{}t.default=o,e.exports=t.default},2130(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"Is"===e.conditionType?new r.default(e):"Not"===e.conditionType?new s.default(e):"Or"===e.conditionType?new o.default(e):"Some"===e.conditionType?new a.default(e):"Contains"===e.conditionType?new c.default(e):"ContainsSame"===e.conditionType?new l.default(e):"Every"===e.conditionType?new i.default(e):"InLine"===e.conditionType?new u.default(e):"HasLine"===e.conditionType?new p.default(e):"IsFull"===e.conditionType?new d.default(e):"Would"===e.conditionType?new f.default(e):"NoPossibleMoves"===e.conditionType?new h.default(e):"Evaluate"===e.conditionType?new v.default(e):"Position"===e.conditionType?new y.default(e):void 0};var r=g(n(7350)),s=g(n(8801)),o=g(n(9299)),a=g(n(218)),i=g(n(5163)),c=g(n(7823)),l=g(n(3546)),u=g(n(4372)),p=g(n(1839)),d=g(n(7278)),f=g(n(441)),h=g(n(2726)),v=g(n(8401)),y=g(n(6017));function g(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default},4881(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(7208))&&r.__esModule?r:{default:r};t.default=class{constructor(e){this.rule=e}check(e,t,n){const r=c({},t),o=c({},n);r.target&&(o.originalTarget=r.target);const a=(0,s.default)(e,this.rule,o);return void 0!==a.target&&(r.target=a.target),void 0===this.rule.target||r.target?this.checkCondition(e,a,r,o):{conditionIsMet:!1}}isMet(){return this.check(...arguments).conditionIsMet}},e.exports=t.default},7823(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,o(n(1505));var r=o(n(4881)),s=o(n(7611));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){const{target:o}=n;if(o){const n=o.entities??o.spaces,a=n?.filter(n=>(0,s.default)(e,t,{target:n},r).conditionsAreMet)??[];return{matches:a,conditionIsMet:!!a.length}}return{matches:[],conditionIsMet:!1}}}t.default=a,e.exports=t.default},3546(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4383)),s=a(n(2130)),o=a(n(4881));function a(e){return e&&e.__esModule?e:{default:e}}class i extends o.default{checkCondition(e,t,n){let{targets:o}=n;if(1===o.length&&o[0].entities?.length)return{conditionIsMet:!0};const[a,...i]=o;return{conditionIsMet:a.entities.some(n=>{const o=(0,s.default)({conditionType:"Contains",conditions:[{conditionType:"Is",matcher:(0,r.default)(n.rule,t.properties)}]});return i.every(t=>o.isMet(e,{target:t}))})}}}t.default=i,e.exports=t.default},8401(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,o(n(1505));var r=o(n(4881)),s=o(n(8123));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){const o=c({},r);n?.target&&(o.target=n.target);const a=(0,s.default)(e,t,o);return{result:a,conditionIsMet:!!a}}}t.default=a,e.exports=t.default},5163(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(7611));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){let{target:o}=n;const a=o.map(n=>{const o=c(c({},r),{},{loopTarget:n});return(0,s.default)(e,t,void 0,o)});return{conditionIsMet:a.every(e=>e.conditionsAreMet),results:a}}}t.default=a,e.exports=t.default},1839(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(1138));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){const{matches:o}=(0,s.default)(e,n.target,t.sequence,r);return{matches:o,conditionIsMet:!!o.length}}}t.default=a,e.exports=t.default},4372(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(1138));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){const{G:o}=e,{target:a}=n,i=o.bank.findParent(n.target),{matches:c}=(0,s.default)(e,i,t.sequence,r),l=c.filter(e=>e.some(e=>e===a));return{matches:l,conditionIsMet:!!l.length}}}t.default=a,e.exports=t.default},7350(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(6413));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){let{target:o}=n;return this.rule.entity&&o!==t.entity?{target:o,conditionIsMet:!1}:{target:o,conditionIsMet:(0,s.default)(e,t.matcher,o,r)}}}t.default=a,e.exports=t.default},7278(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(4881))&&r.__esModule?r:{default:r};class o extends s.default{checkCondition(e,t,n,r){return{conditionIsMet:n.target.spaces.every(e=>e.entities.length)}}}t.default=o,e.exports=t.default},2726(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4881)),s=a(n(3538)),o=a(n(4171));function a(e){return e&&e.__esModule?e:{default:e}}class i extends r.default{checkCondition(e,t,n,r){return{conditionIsMet:!(0,s.default)(e,(0,o.default)(e,r))}}}t.default=i,e.exports=t.default},8801(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(7611));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){return{conditionIsMet:!(0,s.default)(e,t,n,r).conditionsAreMet}}}t.default=a,e.exports=t.default},9299(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(2742));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){return{conditionIsMet:!!(0,s.default)(e,t,n,r)}}}t.default=a,e.exports=t.default},6017(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(4881))&&r.__esModule?r:{default:r};class o extends s.default{checkCondition(e,t,n){let{target:r}=n;const s=e.G.bank.findParent(r);let o;return"First"===t.position&&(o=0===s.entities.indexOf(r)),{conditionIsMet:o}}}t.default=o,e.exports=t.default},218(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(4881)),s=o(n(7611));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{checkCondition(e,t,n,r){let{target:o}=n;const a=o.find(n=>{const o=c(c({},r),{},{loopTarget:n});return(0,s.default)(e,t,void 0,o).conditionsAreMet});return{conditionIsMet:!!a,result:a}}}t.default=a,e.exports=t.default},441(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4881)),s=a(n(7611)),o=a(n(3276));function a(e){return e&&e.__esModule?e:{default:e}}const i={PlaceNew:["destination"],RemoveEntity:["entity"],MoveEntity:["entity","destination"],TakeFrom:["source","destination"],SetState:["entity","state"]};class l extends r.default{checkCondition(e,t,n,r){let{target:a,targets:l=[a]}=n;const p={arguments:l.reduce((e,t,n)=>c(c({},e),{},{[i[r.moveInstance.rule.type][n]]:t}),{})},d=(0,o.default)(e,p,r);let f={};a?f={target:d.bank.locate(a.entityId)}:l&&(f={targets:l.map(e=>d.bank.locate(e.entityId))});const h=(0,s.default)(c(c({},e),{},{G:d}),t,f,r),v=h.conditionsAreMet;return{results:v?u(h.results,t=>e.G.bank.locate(t)):h.results,conditionIsMet:v}}}function u(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new WeakSet;if("object"!=typeof e||null===e)return e;if(n.has(e))return e;if(n.add(e),void 0!==e.entityId)return t(e.entityId);if(Array.isArray(e))return e.map(e=>u(e,t,n));{const r={};for(const s in e)e.hasOwnProperty(s)&&(r[s]=u(e[s],t,n));return r}}t.default=l,e.exports=t.default},4511(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=class{constructor(e,t,n){if(!e?.fromBank)throw new Error(`Do not create entities directly. Go through the Bank. rule: ${JSON.stringify(t)}`);this.rule=t,this.entityId=n,this.state={},this.rule.stateGroups&&Object.entries(this.rule.stateGroups).forEach(t=>{let[n,r]=t;const s=e?.initialStateGroups?.[n]??Object.keys(r)[0];Object.assign(this.state,r[s])}),this.rule.state&&Object.assign(this.state,this.rule.state)}get attributes(){return c(c(c({},this.rule),this),this.state)}},e.exports=t.default},6677(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,s.default)(e,d);return t.sharedBoard||(t.sharedBoard=t.entities),t.turn||(t.turn={minMoves:1,maxMoves:1}),function(e){e.entities=[...a,...e.entities||[]]}(t),i(t,t.entities),t.phases&&Object.entries(t.phases).forEach(e=>{i(e,t.entities)}),e.numPlayers&&(e.minPlayers=e.maxPlayers=e.numPlayers),t},o(n(8055));var r=o(n(7309)),s=o(n(6730));function o(e){return e&&e.__esModule?e:{default:e}}const a=[{type:"Space",count:"Infinity"},{type:"Board",name:"sharedBoard"},{name:"playerMarker",perPlayer:!0,count:"Infinity"}];function i(e,t){if(e.sharedBoard){const t=e.sharedBoard.map(e=>({entity:e,destination:{name:"sharedBoard"}}));e.initialPlacements||(e.initialPlacements=[]),e.initialPlacements.unshift(...t)}if(e.personalBoard){t.push({type:"Board",name:"personalBoard",perPlayer:!0});const n=e.personalBoard.map(e=>({entity:e,destination:{name:"personalBoard"}}));e.initialPlacements||(e.initialPlacements=[]),e.initialPlacements.unshift(...n)}if(e.initialPlacements){const n=e.initialPlacements.map(e=>{const n=e.entity,{state:s}=n,o=l(n,x),a=(0,r.default)(t,o);return"personalBoard"===e.destination.name?{type:"ForEach",arguments:{targets:{type:"ctxPath",path:["playOrder"]}},move:{type:"PlaceNew",entity:{state:s,conditions:[{conditionType:"Is",matcher:c(c({},o),a.perPlayer?{player:{type:"contextPath",path:["loopTarget"]}}:{})}]},arguments:{destination:{conditions:[{conditionType:"Is",matcher:c(c({},e.destination),{},{player:{type:"contextPath",path:["loopTarget"]}})}]}}}}:{type:"PlaceNew",entity:{state:s,conditions:[{conditionType:"Is",matcher:o}]},arguments:{destination:{conditions:[{conditionType:"Is",matcher:e.destination}]}}}});e.initialMoves||(e.initialMoves=[]),e.initialMoves.unshift(...n),delete e.initialPlacements}}const u=[["thatMatches","conditions"],["entityType","type"],["moveType","type"],["endConditions","endIf"]],p=[["isCurrentPlayer",{conditionType:"Is",matcher:{player:{type:"ctxPath",path:["currentPlayer"]}}}],["isEmpty",{conditionType:"Not",conditions:[{conditionType:"Contains"}]}],["ownerOfFirstResultEntity",{type:"contextPath",path:["results",0,"matches",0,0,"entities",0,"attributes","player"]}]],d=[{test:e=>e&&"object"==typeof e,replace:e=>(u.forEach(t=>{let[n,r]=t;e.hasOwnProperty(n)&&(e[r]=e[n],delete e[n])}),e)},{test:e=>"string"==typeof e,replace:e=>{for(let t=0,n=p.length;t<n;t++)if(e===p[t][0])return p[t][1];return e}},{test:e=>e?.conditions,replace:e=>(Array.isArray(e.conditions)||(e.conditions=[e.conditions]),e)},{test:e=>e?.conditions,replace:e=>{for(let t=0,n=e.conditions.length;t<n;t++)e.conditions[t].conditionType||(e.conditions[t]={conditionType:"Is",matcher:e.conditions[t]});return e}},{test:e=>"string"==typeof e?.target,replace:e=>c(c({},e),{},{target:{conditions:[{conditionType:"Is",matcher:{name:e.target}}]}})}];e.exports=t.default},4913(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n={name:t},l=(0,a.default)(e);return n.setup=e=>{const{ctx:t}=e,a={_meta:{passedPlayers:[],previousPayloads:{}}},i=function(e,t){return e.reduce((e,n)=>{const r=c({},n);if(r.perPlayer&&(delete r.perPlayer,r.variants?r.variants=new Array(t.numPlayers).fill().reduce((e,t,n)=>[...e,...r.variants.map(e=>c(c({},e),{},{player:`${n}`}))],[]):r.variants=new Array(t.numPlayers).fill().map((e,t)=>({player:`${t}`}))),r.variants){const t=r.variants;return delete r.variants,[...e,...t.map(e=>c(c({},r),e))]}return[...e,r]},[])}(l.entities,t);return a.bank=new o.default(i),a.sharedBoard=a.bank.getOne(e,{conditions:[{conditionType:"Is",matcher:{name:"sharedBoard"}}]}),l.personalBoard&&(a.personalBoards=e.ctx.playOrder.map(t=>a.bank.getOne(e,{conditions:[{conditionType:"Is",matcher:{name:"personalBoard",player:t}}]}))),l.initialMoves?.forEach(t=>{(0,s.default)(t,n).moveInstance.doMove(c(c({},e),{},{G:a}))}),JSON.parse((0,r.serialize)(a))},l.moves&&(n.moves=h(l.moves,n)),l.turn&&(n.turn=d(l.turn,n)),l.phases&&(n.phases=Object.entries(l.phases).reduce((e,t)=>{let[r,s]=t;return c(c({},e),{},{[r]:f(s,n)})},{})),l.endIf&&(n.endIf=e=>{const t=(0,u.default)(e);return(0,i.default)(t,l.endIf)}),e.DEBUG_DISABLE_SECRET_STATE||(n.playerView=e=>{const{G:t,playerID:n}=(0,u.default)(e);return Object.values(t.bank.tracker).forEach(e=>{"All"!==e.rule.contentsHiddenFrom&&("Others"!==e.rule.contentsHiddenFrom||n===e.rule.player&&null!=n)||(e.spaces&&(e.spaces=e.rule.hideLength?[]:e.spaces.map(()=>t.bank.createEntity())),e.entities&&(e.entities=e.rule.hideLength?[]:e.entities.map(()=>t.bank.createEntity())))}),JSON.parse((0,r.serialize)(t))}),n};var r=n(7627),s=p(n(510)),o=p(n(6103)),a=p(n(6677)),i=p(n(236)),l=p(n(2796)),u=p(n(3358));function p(e){return e&&e.__esModule?e:{default:e}}function d(e,t){const n=c({},e);return n.onBegin=n=>{const s=(0,u.default)(n),o=e.stages?.[s.ctx.activePlayers?.[s.ctx.currentPlayer]];return s.G._meta.passedPlayers=s.G._meta.passedPlayers.filter(e=>e!==s.ctx.currentPlayer),(0,l.default)(s,e.initialMoves,{game:t}),(0,l.default)(s,o?.initialMoves,{game:t}),JSON.parse((0,r.serialize)(s.G))},e.stages&&Object.entries(e.stages).forEach(e=>{let[r,s]=e;s.moves&&(n.stages[r].moves=h(s.moves,t))}),"RotateFirst"===e.order?.playOrder&&(e.order.first=()=>0,e.order.next=e=>{let{ctx:t}=e;return(t.playOrderPos+1)%t.numPlayers},n.order.playOrder=e=>{let{ctx:t,G:n}=e;return n._meta.isAfterFirstPhase?[...t.playOrder.slice(1),t.playOrder[0]]:t.playOrder}),n}function f(e,t){const n=c({},e);return e.turn&&(n.turn=d(e.turn,t)),e.moves&&(n.moves=h(e.moves,t)),n.onBegin=n=>{const s=(0,u.default)(n);return(0,l.default)(s,e.initialMoves,{game:t}),s.G._meta.currentPhaseHasBeenSetUp=!0,s.G._meta.nextPhase=e.next,JSON.parse((0,r.serialize)(s.G))},e.endIf&&(n.endIf=t=>{const n=(0,u.default)(t);if(n.G._meta.currentPhaseHasBeenSetUp){const t=(0,i.default)(n,e.endIf);if(t)return t}}),n.onEnd=e=>{let{G:t}=e;t._meta.currentPhaseHasBeenSetUp=!1,t._meta.isAfterFirstPhase=!0},n}function h(e,t){return Object.entries(e).reduce((e,n)=>{let[r,o]=n;return c(c({},e),{},{[r]:(0,s.default)(c(c({},o),{},{name:r}),t)})},{})}e.exports=t.default},8243(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e){e.events.endTurn()}}t.default=o,e.exports=t.default},3459(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r},o=n(510);class a extends s.default{do(e,t,n,r){let{arguments:{targets:s}}=n;s.forEach(n=>{const s=c(c({},r),{},{loopTarget:n});(0,o.getMoveInstance)(t.move).doMove(e,void 0,s)})}}t.default=a,e.exports=t.default},5885(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{entity:r,destination:s}}=n;Array.isArray(r)?r.forEach(n=>{e.G.bank.findParent(n)?.remove(n),s.placeEntity(n,t.position)}):(e.G.bank.findParent(r)?.remove(r),s.placeEntity(r,t.position))}}t.default=o,e.exports=t.default},510(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=x(e),i=function(i,l){const u=(0,a.default)(i),{G:p}=u,d=function(e,t){if(e){const n=(0,r.deserialize)(JSON.stringify(e),o.registry);return n.arguments=Object.entries(n.arguments).reduce((e,n)=>{let[r,s]=n;return c(c({},e),{},{[r]:"number"==typeof s?t.bank.locate(s):s})},{}),n}return e}(l,p),f={moveInstance:n,game:t},h=n.doMove(u,d,f);if(f.moveConditionResults=[h],h!==s.INVALID_MOVE&&e.then)for(let t of e.then){const e=x(t).doMove(u,{},c({},f));f.moveConditionResults.push(e)}return JSON.parse((0,r.serialize)(p))};return i.moveInstance=n,i},t.getMoveInstance=x;var r=n(7627),s=n(4039),o=n(3883),a=b(n(3358)),i=b(n(5885)),l=b(n(2414)),u=b(n(6642)),p=b(n(4888)),d=b(n(9421)),f=b(n(2790)),h=b(n(8243)),v=b(n(3409)),y=b(n(3459)),g=b(n(5953)),m=b(n(2763));function b(e){return e&&e.__esModule?e:{default:e}}function x(e){switch(e.type){case"MoveEntity":return new i.default(e);case"PlaceNew":return new u.default(e);case"RemoveEntity":return new l.default(e);case"TakeFrom":return new p.default(e);case"SetState":return new d.default(e);case"ForEach":return new y.default(e);case"Pass":return new g.default(e);case"Shuffle":return new m.default(e);case"SetActivePlayers":return new f.default(e);case"EndTurn":return new h.default(e);case"PassTurn":return new v.default(e)}}},6973(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(4039),s=a(n(7611)),o=a(n(7208));function a(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){this.rule=this.transformRule(e)}checkValidity(e,t,n){const r=Object.entries(this.rule.arguments??{});if(!r.every(e=>{let[n]=e;const r=t.arguments[n];return void 0!==r&&(!Array.isArray(r)||r.length)}))return!1;const o={};for(let a=0,i=r.length;a<i;a++){const[i,l]=r[a],u=t.arguments[i],p=Array.isArray(u)?u:[u],d=[];for(let r=0,o=p.length;r<o;r++){const o=p[r],a=(0,s.default)(e,l,{target:o},c(c({},n),{},{moveArguments:t.arguments}));if(d.push(a),!a.conditionsAreMet)break}const f=d.at(-1).conditionsAreMet;if(o[i]={results:d,conditionsAreMet:f},!f)break}const a=(0,s.default)(e,{conditions:this.rule.conditions},void 0,c(c({},n),{},{moveArguments:t.arguments}));return{argumentResults:o,moveResults:a,conditionsAreMet:a.conditionsAreMet&&Object.values(o).every(e=>e.conditionsAreMet)}}isValid(e,t,n){return this.checkValidity(e,t,n).conditionsAreMet}doMove(e,t,n){let{skipCheck:s=!1}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const a=(0,o.default)(e,this.rule,n),i=c(c({},t),{},{arguments:Object.entries(a.arguments??{}).reduce((e,n)=>{let[r,s]=n;return c(c({},e),{},{[r]:t?.arguments?.[r]??s})},{})});let l;return a.name&&(e.G._meta.previousPayloads[a.name]=i),s||(l=this.checkValidity(e,i,n)),s||l.conditionsAreMet?(this.do(e,a,i,n),n&&(n.previousArguments=i.arguments),{conditionResults:l}):r.INVALID_MOVE}transformRule(e){const t=e.arguments;for(let e in t){const n=t[e];n.playerChoice||(n.resolveAsEntity=!0)}return e}},e.exports=t.default},3409(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e){e.G._meta.passedPlayers.length<e.ctx.numPlayers&&(e.G._meta.passedPlayers.push(e.ctx.currentPlayer),e.events.pass())}}t.default=o,e.exports=t.default},5953(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e){e.events.endTurn()}}t.default=o,e.exports=t.default},6642(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n,r){let{arguments:{destination:s}}=n;(t.matchMultiple?e.G.bank.getMultiple(e,c(c({},t.entity),{},{conditions:[...t.entity?.conditions||[],...t.conditions||[]]}),t.count,r):[e.G.bank.getOne(e,c(c({},t.entity),{},{conditions:[...t.entity?.conditions||[],...t.conditions||[]]}),r)]).forEach(e=>{s.placeEntity(e,t.position)})}}t.default=o,e.exports=t.default},2414(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{entity:r}}=n;e.G.bank.returnToBank(e,r)}}t.default=o,e.exports=t.default},2790(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(6973)),s=o(n(2796));function o(e){return e&&e.__esModule?e:{default:e}}class a extends r.default{do(e,t,n,r){e.events.setActivePlayers(t.options);const o=e.ctx.phase,a=t.options.currentPlayer?.stage,i=r.game.phases?.[o]??r.game,l=i?.turn?.stages?.[a];(0,s.default)(e,l?.initialMoves,c(c({},r),{},{stageName:a}))}}t.default=a,e.exports=t.default},9421(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{entity:r,state:s}}=n;r.state=c(c({},r.state),{},{[s.property]:s.value})}}t.default=o,e.exports=t.default},2763(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{target:r}}=n;r.entities=e.random.Shuffle(r.entities)}}t.default=o,e.exports=t.default},4888(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(6973))&&r.__esModule?r:{default:r};class o extends s.default{do(e,t,n){let{arguments:{source:r,destination:s}}=n;s.placeEntity(r.takeOne(t.arguments.source.position))}}t.default=o,e.exports=t.default},7913(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(1013)),s=o(n(9209));function o(e){return e&&e.__esModule?e:{default:e}}class a extends s.default{getSpacesCount(){return this.rule.width*this.rule.height}getRows(){return(0,r.default)(this.spaces,this.rule.width)}getCoordinates(e){const{width:t}=this.rule;return[e%t,Math.floor(e/t)]}getIndex(e){let[t,n]=e;const{width:r}=this.rule;return n*r+t}getSpace(e){return this.spaces[this.getIndex(e)]}getRelativeCoordinates(e,t){let[n,r]=e,[s,o]=t;const a=[n+s,r+o];return this.areCoordinatesValid(a)?a:null}areCoordinatesValid(e){let[t,n]=e;return t>=0&&n>=0&&t<this.rule.width&&n<this.rule.height}}t.default=a,e.exports=t.default},9209(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(4511))&&r.__esModule?r:{default:r};class o extends s.default{constructor(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];super(e,...n),this.spaces=this.makeSpaces(e.bank)}makeSpaces(e){return Array(this.getSpacesCount()).fill().map((t,n)=>e.createEntity({type:"Space",index:n}))}getEmptySpaces(){return this.spaces.filter(e=>e.isEmpty())}getSpace(e){return this.spaces[e]}getEntities(e){return this.getSpace(e).entities}placeEntity(e,t){this.getSpace(e).placeEntity(t)}}t.default=o,e.exports=t.default},1325(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,s=(r=n(4511))&&r.__esModule?r:{default:r};class o extends s.default{constructor(){super(...arguments),this.entities=[]}placeEntity(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Last";"Last"===t?this.entities.push(e):"First"===t&&this.entities.unshift(e)}remove(e){this.entities.splice(this.entities.indexOf(e),1)}takeOne(){if("First"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"First"))return this.entities.splice(0,1)[0]}isEmpty(){return 0===this.entities.length}}t.default=o,e.exports=t.default},3883(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.registry=void 0;var r=u(n(2606)),s=u(n(9209)),o=u(n(1325)),a=u(n(7913)),i=u(n(6103)),c=u(n(784)),l=u(n(4511));function u(e){return e&&e.__esModule?e:{default:e}}t.registry={Board:r.default,SpaceGroup:s.default,Space:o.default,Grid:a.default,Bank:i.default,BankSlot:c.default,Entity:l.default}},3538(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return Object.values(t).some(t=>{const{moveInstance:n}=t,r={moveInstance:n},o=(0,s.default)(e,n.rule,r).arguments??{};if(0===Object.keys(o).length)return n.isValid(e,{arguments:{}},r);const a=function(e){const t=Object.keys(e),n={},r={};t.forEach(e=>{n[e]=[],r[e]=0}),t.forEach(s=>{i(e[s]).forEach(e=>{t.includes(e)&&e!==s&&(n[e].push(s),r[s]++)})});const s=t.filter(e=>0===r[e]),o=[];for(;s.length>0;){const e=s.shift();o.push(e),n[e].forEach(e=>{r[e]--,0===r[e]&&s.push(e)})}return o.length===t.length?o:t}(o);return l(e,n,o,a,r)})};var r=a(n(1331)),s=a(n(7208)),o=a(n(4198));function a(e){return e&&e.__esModule?e:{default:e}}function i(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Set;if(!e||"object"!=typeof e)return t;"contextPath"===e.type&&Array.isArray(e.path)&&"moveArguments"===e.path[0]&&e.path[1]&&t.add(e.path[1]);for(const n of Object.values(e))i(n,t);return t}function l(e,t,n,s,a){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,u=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{};if(i===s.length){const n={arguments:u};return t.isValid(e,n,a)}const p=s[i],d=n[p],f=c(c({},a),{},{moveArguments:u}),h=(0,r.default)(d)?(0,o.default)(e,c(c({},d),{},{matchMultiple:!0}),f,p):d,v=Array.isArray(h)?h:void 0!==h?[h]:[];return 0!==v.length&&v.some(r=>l(e,t,n,s,a,i+1,c(c({},u),{},{[p]:r})))}e.exports=t.default},7611(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){const{conditions:o=[]}=t,a=[];let i;for(const t of o){const o=(0,s.default)(t).check(e,n,r);if(!o.conditionIsMet){i=t;break}a.push(o)}return{results:a,failedAt:i,conditionsAreMet:a.length===o.length}};var r,s=(r=n(2130))&&r.__esModule?r:{default:r};e.exports=t.default},9965(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){const o=(0,s.default)(e,t,r).map(e=>e.argName);return{arguments:n.reduce((e,t,n)=>c(c({},e),{},{[o[n]]:t}),{})}};var r,s=(r=n(2146))&&r.__esModule?r:{default:r};e.exports=t.default},3358(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return c(c({},e),{},{G:(0,r.deserialize)(JSON.stringify(e.G),s.registry)})};var r=n(7627),s=n(3883);e.exports=t.default},2796(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0;return t?.length?(t.forEach(t=>{(0,s.default)(t,n.game).moveInstance.doMove(e,void 0,n)}),e.G):e.G};var r,s=(r=n(510))&&r.__esModule?r:{default:r};e.exports=t.default},6413(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,o){return(0,r.default)(function(e,t,n){const r=c({},t);return delete r.state,delete r.stateGroups,(0,s.default)(e,r,n)}(e,t,o))(function(e){return c(c({},e.rule),e.state)}(n))};var r=o(n(1505)),s=o(n(7208));function o(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default},2742(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){let o,{conditions:a=[]}=t;for(const t of a){const a=(0,s.default)(t).check(e,n,r);if(a.conditionIsMet){o=c(c({},a),{},{conditionRule:t});break}}return o};var r,s=(r=n(2130))&&r.__esModule?r:{default:r};e.exports=t.default},4171(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){let{game:n,playerID:r,stageName:s}=t;const o=e.ctx.phase,a=s??e.ctx.activePlayers?.[r??e.ctx.currentPlayer],i=n.phases?.[o]??n;return(i.turn?.stages?.[a]??i).moves??{}},e.exports=t.default},236(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){let o;for(const n of t){const t=(0,r.default)(e,n);if(t.conditionsAreMet){o={scenario:n,conditionResults:t};break}}return o?.scenario?.result?(0,s.default)(e,o.scenario.result,{results:o.conditionResults.results}):o};var r=o(n(7611)),s=o(n(7208));function o(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default},2146(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return n[t.type].filter(e=>t.arguments[e].playerChoice).map(n=>({argName:n,getClickable:"state"===n?()=>t.arguments[n].possibleValues.map(e=>c(c({abstract:!0},t.arguments[n]),{},{value:e})):r=>e.G.bank.findAll(e,t.arguments[n],r)}))};const n={PlaceNew:["destination"],RemoveEntity:["entity"],MoveEntity:["entity","destination"],TakeFrom:["source","destination"],SetState:["entity","state"]};e.exports=t.default},6648(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){let r=t;for(const t of n){if(void 0===r)return r;if(t?.flatten){if(!Array.isArray(r))return;r=r.flat(),t.map&&(r=r.map(n=>e(n,t.map)))}else r=r[t]}return r},e.exports=t.default},1138(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){const s=function(e,t){const n={moveInstance:t.moveInstance?.id,moveArguments:t.moveArguments};return JSON.stringify({pattern:e,context:n})}(n,r);let u=a.get(t);u||(u=new Map,a.set(t,u));const p=function(e){const t=e.entities||[];return t.map(e=>{const t=e.entities||[];return 0===t.length?"empty":t.map(e=>{const t=Object.keys(e).sort(),n={};return t.forEach(t=>{n[t]=e[t]}),JSON.stringify(n)}).sort().join("|")}).join(",")}(t),d=u.get(s);if(d&&d.stateKey===p)return d.result;const f=[],h=n.reduce((e,t)=>e+(t.minCount||t.count||1),0);for(const[s,a]of o){const o=c(t,s,a);for(const[c,u]of o){const o=l(t,c,u,s,a);if(o.length<h)continue;const p=i(e,o,n,h,r);if(f.push(...p),0===p.length||n.length>1){const t=i(e,o,n,h,r,!0);f.push(...t)}}}const v={matches:f,conditionIsMet:!!f.length};return u.set(s,{stateKey:p,result:v}),v},s(n(1505));var r=s(n(7611));function s(e){return e&&e.__esModule?e:{default:e}}const o=[[1,0],[0,1],[1,1],[-1,1]],a=new WeakMap;function i(e,t,n,r,s){let o=arguments.length>5&&void 0!==arguments[5]&&arguments[5];const a=[],i=t.length;let c=0;for(;c<=i-r;){const r=u(e,t,c,n,s,o);r?(a.push(r),c++):c++}return a}function c(e,t,n){const{width:r,height:s}=e.attributes,o=[];if(1===t&&0===n)for(let e=0;e<s;e++)o.push([0,e]);else if(0===t&&1===n)for(let e=0;e<r;e++)o.push([e,0]);else if(1===t&&1===n){for(let e=0;e<r;e++)o.push([e,0]);for(let e=1;e<s;e++)o.push([0,e])}else if(-1===t&&1===n){for(let e=0;e<r;e++)o.push([e,0]);for(let e=1;e<s;e++)o.push([r-1,e])}return o}function l(e,t,n,r,s){const o=[];let[a,i]=[t,n];for(;e.areCoordinatesValid([a,i]);)o.push(e.getSpace([a,i])),a+=r,i+=s;return o}function u(e,t,n,r,s){let o=arguments.length>5&&void 0!==arguments[5]&&arguments[5],a=n;const i=[],c=t.length;for(const n of r){const{count:r,minCount:l,maxCount:u,conditions:d}=n;let f,h;void 0!==r?f=h=r:void 0!==l||void 0!==u?(f=l||0,h=u||1/0):f=h=1;let v=0;const y=[];for(;v<h&&a<c;){const n=o?t[c-1-a]:t[a];if(!p(e,n,d,y,s))break;y.push(n),v++,a++}if(v<f)return null;i.push(...y)}return i.length>0?i:null}function p(e,t,n){let s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=arguments.length>4?arguments[4]:void 0;return!n||0===n.length||(0,r.default)(e,{conditions:n},{target:t,targets:[t,...s]},o).conditionsAreMet}e.exports=t.default},6730(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return JSON.parse(JSON.stringify(e),(e,n)=>{let r=n;for(const e of t)e.test(r)&&(r=e.replace(r));return r})},e.exports=t.default},380(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(e?.arguments){const t=c({},e);return t.arguments=Object.entries(t.arguments).reduce((e,t)=>{let[n,r]=t;return c(c({},e),{},{[n]:r.abstract?r:r.entityId})},{}),JSON.parse((0,r.serialize)(t,{deduplicateInstances:!1}))}return e};var r=n(7627);e.exports=t.default},4198(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,r){return!o.includes(r)&&(0,s.default)(t)?e.G.bank.find(e,t,n):t};var r,s=(r=n(1331))&&r.__esModule?r:{default:r};const o=["state"];e.exports=t.default},8123(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){const r=(0,o.default)(e,t.arguments,n);return a.evaluate(t.expression,r)};var r,s=n(2016),o=(r=n(7208))&&r.__esModule?r:{default:r};const a=new s.Parser;a.functions.sum=e=>e.reduce((e,t)=>e+t,0),e.exports=t.default},7208(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=p;var r=l(n(1331)),s=l(n(4383)),o=l(n(6648)),a=l(n(8123)),i=l(n(4198));function l(e){return e&&e.__esModule?e:{default:e}}const u=["conditions","move","then","mapping"];function p(e,t,n,l){if(!(0,r.default)(t)&&!Array.isArray(t))return t;let f=Array.isArray(t)?[...t]:c({},t);Object.entries(t).forEach(t=>{let[r,s]=t;u.includes(r)||(f[r]=p(e,s,n,r))});const h=function(e,t,n){if("expression"===t?.type)return(0,a.default)(e,c(c({},t),{},{arguments:p(e,t.arguments,n,"arguments")}),n);if("count"===t?.type)return e.G.bank.findAll(e,t,n).length;if("contextPath"===t?.type)return(0,o.default)(n,t.path);if("ctxPath"===t?.type)return(0,o.default)(e.ctx,t.path);if("gamePath"===t?.type)return(0,o.default)(e.G,t.path);if("RelativePath"===t?.type){const r=p(e,t.target,n,"target");return(0,o.default)(r.attributes,t.path)??null}if("Parent"===t?.type){const r=t.target?p(e,t.target,n,"target"):n.originalTarget;return e.G.bank.findParent(r)??null}if("map"===t?.type)return d(e,t.targets,t.mapping,n).map(e=>e.value);if("mapMax"===t?.type){const r=d(e,t.targets,t.mapping,n);let s;const o=[];for(let e=0,t=r.length;e<t;e++){const{target:t,value:n}=r[e];void 0===s||n>s?(s=n,o.length=0,o.push(t)):n===s&&o.push(t)}return o}if("Pick"===t?.type){const r=p(e,t.target,n,"target");return(0,s.default)(p(e,r.attributes,n,"attributes"),t.properties)}if("Coordinates"===t?.type){const r=t.target?p(e,t.target,n,"target"):n.originalTarget;return e.G.bank.findParent(r).getCoordinates(r.rule.index)}if("relativeCoordinates"===t?.type){const r=t.target?p(e,t.target,n,"target"):n.originalTarget,s=e.G.bank.findParent(r),o=s.getCoordinates(r.rule.index),a=s.getRelativeCoordinates(o,p(e,t.location,n,"location"));return(a&&s.spaces[s.getIndex(a)])??null}return t}(e,f,n);return h?.resolveAsEntity||"target"===l||"targets"===l?(0,i.default)(e,h,n,l):h}function d(e,t,n,r){return t.resolveAsEntity=!0,p(e,t,r)?.map(t=>({target:t,value:p(e,n,c(c({},r),{},{loopTarget:t}))}))??[]}e.exports=t.default},3276(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){const o=(0,r.deserialize)((0,r.serialize)(e.G),s.registry),a=c(c({},e),{},{G:o}),i=c(c({},t),{},{arguments:{}});return Object.entries(t.arguments).forEach(e=>{let[t,n]=e;i.arguments[t]=n.abstract?n:o.bank.locate("number"==typeof n?n:n.entityId)}),n.moveInstance.doMove(a,i,n,{skipCheck:!0}),o};var r=n(7627),s=n(3883);e.exports=t.default},7833(e,t,n){t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,s=0;t[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&(r++,"%c"===e&&(s=r))}),t.splice(s,0,n)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")||t.storage.getItem("DEBUG")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},t.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=n(736)(t);const{formatters:r}=e.exports;r.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},736(e,t,n){e.exports=function(e){function t(e){let n,s,o,a=null;function i(...e){if(!i.enabled)return;const r=i,s=Number(new Date),o=s-(n||s);r.diff=o,r.prev=n,r.curr=s,n=s,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let a=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(n,s)=>{if("%%"===n)return"%";a++;const o=t.formatters[s];if("function"==typeof o){const t=e[a];n=o.call(r,t),e.splice(a,1),a--}return n}),t.formatArgs.call(r,e),(r.log||t.log).apply(r,e)}return i.namespace=e,i.useColors=t.useColors(),i.color=t.selectColor(e),i.extend=r,i.destroy=t.destroy,Object.defineProperty(i,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==a?a:(s!==t.namespaces&&(s=t.namespaces,o=t.enabled(e)),o),set:e=>{a=e}}),"function"==typeof t.init&&t.init(i),i}function r(e,n){const r=t(this.namespace+(void 0===n?":":n)+e);return r.log=this.log,r}function s(e,t){let n=0,r=0,s=-1,o=0;for(;n<e.length;)if(r<t.length&&(t[r]===e[n]||"*"===t[r]))"*"===t[r]?(s=r,o=n,r++):(n++,r++);else{if(-1===s)return!1;r=s+1,o++,n=o}for(;r<t.length&&"*"===t[r];)r++;return r===t.length}return t.debug=t,t.default=t,t.coerce=function(e){return e instanceof Error?e.stack||e.message:e},t.disable=function(){const e=[...t.names,...t.skips.map(e=>"-"+e)].join(",");return t.enable(""),e},t.enable=function(e){t.save(e),t.namespaces=e,t.names=[],t.skips=[];const n=("string"==typeof e?e:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(const e of n)"-"===e[0]?t.skips.push(e.slice(1)):t.names.push(e)},t.enabled=function(e){for(const n of t.skips)if(s(e,n))return!1;for(const n of t.names)if(s(e,n))return!0;return!1},t.humanize=n(6585),t.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach(n=>{t[n]=e[n]}),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let n=0;for(let t=0;t<e.length;t++)n=(n<<5)-n+e.charCodeAt(t),n|=0;return t.colors[Math.abs(n)%t.colors.length]},t.enable(t.load()),t}},6477(e,t){function n(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];throw Error("[Immer] minified error nr: "+e+(n.length?" "+n.map(function(e){return"'"+e+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function r(e){return!!e&&!!e[J]}function s(e){var t;return!!e&&(function(e){if(!e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;var n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return n===Object||"function"==typeof n&&Function.toString.call(n)===Y}(e)||Array.isArray(e)||!!e[H]||!!(null===(t=e.constructor)||void 0===t?void 0:t[H])||p(e)||d(e))}function o(e,t,n){void 0===n&&(n=!1),0===a(e)?(n?Object.keys:X)(e).forEach(function(r){n&&"symbol"==typeof r||t(r,e[r],e)}):e.forEach(function(n,r){return t(r,n,e)})}function a(e){var t=e[J];return t?t.t>3?t.t-4:t.t:Array.isArray(e)?1:p(e)?2:d(e)?3:0}function i(e,t){return 2===a(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function c(e,t){return 2===a(e)?e.get(t):e[t]}function l(e,t,n){var r=a(e);2===r?e.set(t,n):3===r?e.add(n):e[t]=n}function u(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function p(e){return z&&e instanceof Map}function d(e){return q&&e instanceof Set}function f(e){return e.i||e.u}function h(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Q(e);delete t[J];for(var n=X(t),r=0;r<n.length;r++){var s=n[r],o=t[s];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(t[s]={configurable:!0,writable:!0,enumerable:o.enumerable,value:e[s]})}return Object.create(Object.getPrototypeOf(e),t)}function v(e,t){return void 0===t&&(t=!1),g(e)||r(e)||!s(e)||(a(e)>1&&(e.set=e.add=e.clear=e.delete=y),Object.freeze(e),t&&o(e,function(e,t){return v(t,!0)},!0)),e}function y(){n(2)}function g(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function m(e){var t=Z[e];return t||n(18,e),t}function b(e,t){Z[e]||(Z[e]=t)}function x(){return L}function _(e,t){t&&(m("Patches"),e.o=[],e.v=[],e.s=t)}function w(e){P(e),e.p.forEach(k),e.p=null}function P(e){e===L&&(L=e.l)}function O(e){return L={p:[],l:L,h:e,_:!0,m:0}}function k(e){var t=e[J];0===t.t||1===t.t?t.j():t.O=!0}function E(e,t){t.m=t.p.length;var r=t.p[0],o=void 0!==e&&e!==r;return t.h.S||m("ES5").P(t,e,o),o?(r[J].g&&(w(t),n(4)),s(e)&&(e=M(t,e),t.l||A(t,e)),t.o&&m("Patches").M(r[J].u,e,t.o,t.v)):e=M(t,r,[]),w(t),t.o&&t.s(t.o,t.v),e!==W?e:void 0}function M(e,t,n){if(g(t))return t;var r=t[J];if(!r)return o(t,function(s,o){return $(e,r,t,s,o,n)},!0),t;if(r.A!==e)return t;if(!r.g)return A(e,r.u,!0),r.u;if(!r.R){r.R=!0,r.A.m--;var s=4===r.t||5===r.t?r.i=h(r.k):r.i,a=s,i=!1;3===r.t&&(a=new Set(s),s.clear(),i=!0),o(a,function(t,o){return $(e,r,s,t,o,n,i)}),A(e,s,!1),n&&e.o&&m("Patches").F(r,n,e.o,e.v)}return r.i}function $(e,t,n,o,a,c,u){if(r(a)){var p=M(e,a,c&&t&&3!==t.t&&!i(t.N,o)?c.concat(o):void 0);if(l(n,o,p),!r(p))return;e._=!1}else u&&n.add(a);if(s(a)&&!g(a)){if(!e.h.D&&e.m<1)return;M(e,a),t&&t.A.l||A(e,a)}}function A(e,t,n){void 0===n&&(n=!1),!e.l&&e.h.D&&e._&&v(t,n)}function j(e,t){var n=e[J];return(n?f(n):e)[t]}function S(e,t){if(t in e)for(var n=Object.getPrototypeOf(e);n;){var r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function I(e){e.g||(e.g=!0,e.l&&I(e.l))}function C(e){e.i||(e.i=h(e.u))}function T(e,t,n){var r=p(t)?m("MapSet").K(t,n):d(t)?m("MapSet").$(t,n):e.S?function(e,t){var n=Array.isArray(e),r={t:n?1:0,A:t?t.A:x(),g:!1,R:!1,N:{},l:t,u:e,k:null,i:null,j:null,C:!1},s=r,o=ee;n&&(s=[r],o=te);var a=Proxy.revocable(s,o),i=a.revoke,c=a.proxy;return r.k=c,r.j=i,c}(t,n):m("ES5").I(t,n);return(n?n.A:x()).p.push(r),r}function N(e){return r(e)||n(22,e),function e(t){if(!s(t))return t;var n,r=t[J],i=a(t);if(r){if(!r.g&&(r.t<4||!m("ES5").J(r)))return r.u;r.R=!0,n=D(t,i),r.R=!1}else n=D(t,i);return o(n,function(t,s){r&&c(r.u,t)===s||l(n,t,e(s))}),3===i?new Set(n):n}(e)}function D(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return h(e)}function R(){function e(e,t){var n=a[e];return n?n.enumerable=t:a[e]=n={configurable:!0,enumerable:t,get:function(){return ee.get(this[J],e)},set:function(t){ee.set(this[J],e,t)}},n}function t(e){for(var t=e.length-1;t>=0;t--){var r=e[t][J];if(!r.g)switch(r.t){case 5:s(r)&&I(r);break;case 4:n(r)&&I(r)}}}function n(e){for(var t=e.u,n=e.k,r=X(n),s=r.length-1;s>=0;s--){var o=r[s];if(o!==J){var a=t[o];if(void 0===a&&!i(t,o))return!0;var c=n[o],l=c&&c[J];if(l?l.u!==a:!u(c,a))return!0}}var p=!!t[J];return r.length!==X(t).length+(p?0:1)}function s(e){var t=e.k;if(t.length!==e.u.length)return!0;var n=Object.getOwnPropertyDescriptor(t,t.length-1);if(n&&!n.get)return!0;for(var r=0;r<t.length;r++)if(!t.hasOwnProperty(r))return!0;return!1}var a={};b("ES5",{I:function(t,n){var r=Array.isArray(t),s=function(t,n){if(t){for(var r=Array(n.length),s=0;s<n.length;s++)Object.defineProperty(r,""+s,e(s,!0));return r}var o=Q(n);delete o[J];for(var a=X(o),i=0;i<a.length;i++){var c=a[i];o[c]=e(c,t||!!o[c].enumerable)}return Object.create(Object.getPrototypeOf(n),o)}(r,t),o={t:r?5:4,A:n?n.A:x(),g:!1,R:!1,N:{},l:n,u:t,k:s,i:null,O:!1,C:!1};return Object.defineProperty(s,J,{value:o,writable:!0}),s},P:function(e,n,a){a?r(n)&&n[J].A===e&&t(e.p):(e.o&&function e(t){if(t&&"object"==typeof t){var n=t[J];if(n){var r=n.u,a=n.k,c=n.N,l=n.t;if(4===l)o(a,function(t){t!==J&&(void 0!==r[t]||i(r,t)?c[t]||e(a[t]):(c[t]=!0,I(n)))}),o(r,function(e){void 0!==a[e]||i(a,e)||(c[e]=!1,I(n))});else if(5===l){if(s(n)&&(I(n),c.length=!0),a.length<r.length)for(var u=a.length;u<r.length;u++)c[u]=!1;else for(var p=r.length;p<a.length;p++)c[p]=!0;for(var d=Math.min(a.length,r.length),f=0;f<d;f++)a.hasOwnProperty(f)||(c[f]=!0),void 0===c[f]&&e(a[f])}}}}(e.p[0]),t(e.p))},J:function(e){return 4===e.t?n(e):s(e)}})}function B(){function e(t){if(!s(t))return t;if(Array.isArray(t))return t.map(e);if(p(t))return new Map(Array.from(t.entries()).map(function(t){return[t[0],e(t[1])]}));if(d(t))return new Set(Array.from(t).map(e));var n=Object.create(Object.getPrototypeOf(t));for(var r in t)n[r]=e(t[r]);return i(t,H)&&(n[H]=t[H]),n}function t(t){return r(t)?e(t):t}var l="add";b("Patches",{W:function(t,r){return r.forEach(function(r){for(var s=r.path,o=r.op,i=t,u=0;u<s.length-1;u++){var p=a(i),d=s[u];"string"!=typeof d&&"number"!=typeof d&&(d=""+d),0!==p&&1!==p||"__proto__"!==d&&"constructor"!==d||n(24),"function"==typeof i&&"prototype"===d&&n(24),"object"!=typeof(i=c(i,d))&&n(15,s.join("/"))}var f=a(i),h=e(r.value),v=s[s.length-1];switch(o){case"replace":switch(f){case 2:return i.set(v,h);case 3:n(16);default:return i[v]=h}case l:switch(f){case 1:return"-"===v?i.push(h):i.splice(v,0,h);case 2:return i.set(v,h);case 3:return i.add(h);default:return i[v]=h}case"remove":switch(f){case 1:return i.splice(v,1);case 2:return i.delete(v);case 3:return i.delete(r.value);default:return delete i[v]}default:n(17,o)}}),t},F:function(e,n,r,s){switch(e.t){case 0:case 4:case 2:return function(e,n,r,s){var a=e.u,u=e.i;o(e.N,function(e,o){var p=c(a,e),d=c(u,e),f=o?i(a,e)?"replace":l:"remove";if(p!==d||"replace"!==f){var h=n.concat(e);r.push("remove"===f?{op:f,path:h}:{op:f,path:h,value:d}),s.push(f===l?{op:"remove",path:h}:"remove"===f?{op:l,path:h,value:t(p)}:{op:"replace",path:h,value:t(p)})}})}(e,n,r,s);case 5:case 1:return function(e,n,r,s){var o=e.u,a=e.N,i=e.i;if(i.length<o.length){var c=[i,o];o=c[0],i=c[1];var u=[s,r];r=u[0],s=u[1]}for(var p=0;p<o.length;p++)if(a[p]&&i[p]!==o[p]){var d=n.concat([p]);r.push({op:"replace",path:d,value:t(i[p])}),s.push({op:"replace",path:d,value:t(o[p])})}for(var f=o.length;f<i.length;f++){var h=n.concat([f]);r.push({op:l,path:h,value:t(i[f])})}o.length<i.length&&s.push({op:"replace",path:n.concat(["length"]),value:o.length})}(e,n,r,s);case 3:return function(e,t,n,r){var s=e.u,o=e.i,a=0;s.forEach(function(e){if(!o.has(e)){var s=t.concat([a]);n.push({op:"remove",path:s,value:e}),r.unshift({op:l,path:s,value:e})}a++}),a=0,o.forEach(function(e){if(!s.has(e)){var o=t.concat([a]);n.push({op:l,path:o,value:e}),r.unshift({op:"remove",path:o,value:e})}a++})}(e,n,r,s)}},M:function(e,t,n,r){n.push({op:"replace",path:[],value:t===W?void 0:t}),r.push({op:"replace",path:[],value:e})}})}function G(){function e(e,t){function n(){this.constructor=e}i(e,t),e.prototype=(n.prototype=t.prototype,new n)}function t(e){e.i||(e.N=new Map,e.i=new Map(e.u))}function r(e){e.i||(e.i=new Set,e.u.forEach(function(t){if(s(t)){var n=T(e.A.h,t,e);e.p.set(t,n),e.i.add(n)}else e.i.add(t)}))}function a(e){e.O&&n(3,JSON.stringify(f(e)))}var i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},c=function(){function n(e,t){return this[J]={t:2,l:t,A:t?t.A:x(),g:!1,R:!1,i:void 0,N:void 0,u:e,k:this,C:!1,O:!1},this}e(n,Map);var r=n.prototype;return Object.defineProperty(r,"size",{get:function(){return f(this[J]).size}}),r.has=function(e){return f(this[J]).has(e)},r.set=function(e,n){var r=this[J];return a(r),f(r).has(e)&&f(r).get(e)===n||(t(r),I(r),r.N.set(e,!0),r.i.set(e,n),r.N.set(e,!0)),this},r.delete=function(e){if(!this.has(e))return!1;var n=this[J];return a(n),t(n),I(n),n.u.has(e)?n.N.set(e,!1):n.N.delete(e),n.i.delete(e),!0},r.clear=function(){var e=this[J];a(e),f(e).size&&(t(e),I(e),e.N=new Map,o(e.u,function(t){e.N.set(t,!1)}),e.i.clear())},r.forEach=function(e,t){var n=this;f(this[J]).forEach(function(r,s){e.call(t,n.get(s),s,n)})},r.get=function(e){var n=this[J];a(n);var r=f(n).get(e);if(n.R||!s(r))return r;if(r!==n.u.get(e))return r;var o=T(n.A.h,r,n);return t(n),n.i.set(e,o),o},r.keys=function(){return f(this[J]).keys()},r.values=function(){var e,t=this,n=this.keys();return(e={})[K]=function(){return t.values()},e.next=function(){var e=n.next();return e.done?e:{done:!1,value:t.get(e.value)}},e},r.entries=function(){var e,t=this,n=this.keys();return(e={})[K]=function(){return t.entries()},e.next=function(){var e=n.next();if(e.done)return e;var r=t.get(e.value);return{done:!1,value:[e.value,r]}},e},r[K]=function(){return this.entries()},n}(),l=function(){function t(e,t){return this[J]={t:3,l:t,A:t?t.A:x(),g:!1,R:!1,i:void 0,u:e,k:this,p:new Map,O:!1,C:!1},this}e(t,Set);var n=t.prototype;return Object.defineProperty(n,"size",{get:function(){return f(this[J]).size}}),n.has=function(e){var t=this[J];return a(t),t.i?!!t.i.has(e)||!(!t.p.has(e)||!t.i.has(t.p.get(e))):t.u.has(e)},n.add=function(e){var t=this[J];return a(t),this.has(e)||(r(t),I(t),t.i.add(e)),this},n.delete=function(e){if(!this.has(e))return!1;var t=this[J];return a(t),r(t),I(t),t.i.delete(e)||!!t.p.has(e)&&t.i.delete(t.p.get(e))},n.clear=function(){var e=this[J];a(e),f(e).size&&(r(e),I(e),e.i.clear())},n.values=function(){var e=this[J];return a(e),r(e),e.i.values()},n.entries=function(){var e=this[J];return a(e),r(e),e.i.entries()},n.keys=function(){return this.values()},n[K]=function(){return this.values()},n.forEach=function(e,t){for(var n=this.values(),r=n.next();!r.done;)e.call(t,r.value,r.value,this),r=n.next()},t}();b("MapSet",{K:function(e,t){return new c(e,t)},$:function(e,t){return new l(e,t)}})}var F;Object.defineProperty(t,"__esModule",{value:!0});var L,U="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),z="undefined"!=typeof Map,q="undefined"!=typeof Set,V="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,W=U?Symbol.for("immer-nothing"):((F={})["immer-nothing"]=!0,F),H=U?Symbol.for("immer-draftable"):"__$immer_draftable",J=U?Symbol.for("immer-state"):"__$immer_state",K="undefined"!=typeof Symbol&&Symbol.iterator||"@@iterator",Y=""+Object.prototype.constructor,X="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,Q=Object.getOwnPropertyDescriptors||function(e){var t={};return X(e).forEach(function(n){t[n]=Object.getOwnPropertyDescriptor(e,n)}),t},Z={},ee={get:function(e,t){if(t===J)return e;var n=f(e);if(!i(n,t))return function(e,t,n){var r,s=S(t,n);return s?"value"in s?s.value:null===(r=s.get)||void 0===r?void 0:r.call(e.k):void 0}(e,n,t);var r=n[t];return e.R||!s(r)?r:r===j(e.u,t)?(C(e),e.i[t]=T(e.A.h,r,e)):r},has:function(e,t){return t in f(e)},ownKeys:function(e){return Reflect.ownKeys(f(e))},set:function(e,t,n){var r=S(f(e),t);if(null==r?void 0:r.set)return r.set.call(e.k,n),!0;if(!e.g){var s=j(f(e),t),o=null==s?void 0:s[J];if(o&&o.u===n)return e.i[t]=n,e.N[t]=!1,!0;if(u(n,s)&&(void 0!==n||i(e.u,t)))return!0;C(e),I(e)}return e.i[t]===n&&(void 0!==n||t in e.i)||Number.isNaN(n)&&Number.isNaN(e.i[t])||(e.i[t]=n,e.N[t]=!0),!0},deleteProperty:function(e,t){return void 0!==j(e.u,t)||t in e.u?(e.N[t]=!1,C(e),I(e)):delete e.N[t],e.i&&delete e.i[t],!0},getOwnPropertyDescriptor:function(e,t){var n=f(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r?{writable:!0,configurable:1!==e.t||"length"!==t,enumerable:r.enumerable,value:n[t]}:r},defineProperty:function(){n(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.u)},setPrototypeOf:function(){n(12)}},te={};o(ee,function(e,t){te[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),te.deleteProperty=function(e,t){return te.set.call(this,e,t,void 0)},te.set=function(e,t,n){return ee.set.call(this,e[0],t,n,e[0])};var ne=function(){function e(e){var t=this;this.S=V,this.D=!0,this.produce=function(e,r,o){if("function"==typeof e&&"function"!=typeof r){var a=r;r=e;var i=t;return function(e){var t=this;void 0===e&&(e=a);for(var n=arguments.length,s=Array(n>1?n-1:0),o=1;o<n;o++)s[o-1]=arguments[o];return i.produce(e,function(e){var n;return(n=r).call.apply(n,[t,e].concat(s))})}}var c;if("function"!=typeof r&&n(6),void 0!==o&&"function"!=typeof o&&n(7),s(e)){var l=O(t),u=T(t,e,void 0),p=!0;try{c=r(u),p=!1}finally{p?w(l):P(l)}return"undefined"!=typeof Promise&&c instanceof Promise?c.then(function(e){return _(l,o),E(e,l)},function(e){throw w(l),e}):(_(l,o),E(c,l))}if(!e||"object"!=typeof e){if(void 0===(c=r(e))&&(c=e),c===W&&(c=void 0),t.D&&v(c,!0),o){var d=[],f=[];m("Patches").M(e,c,d,f),o(d,f)}return c}n(21,e)},this.produceWithPatches=function(e,n){if("function"==typeof e)return function(n){for(var r=arguments.length,s=Array(r>1?r-1:0),o=1;o<r;o++)s[o-1]=arguments[o];return t.produceWithPatches(n,function(t){return e.apply(void 0,[t].concat(s))})};var r,s,o=t.produce(e,n,function(e,t){r=e,s=t});return"undefined"!=typeof Promise&&o instanceof Promise?o.then(function(e){return[e,r,s]}):[o,r,s]},"boolean"==typeof(null==e?void 0:e.useProxies)&&this.setUseProxies(e.useProxies),"boolean"==typeof(null==e?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze)}var t=e.prototype;return t.createDraft=function(e){s(e)||n(8),r(e)&&(e=N(e));var t=O(this),o=T(this,e,void 0);return o[J].C=!0,P(t),o},t.finishDraft=function(e,t){var n=(e&&e[J]).A;return _(n,t),E(void 0,n)},t.setAutoFreeze=function(e){this.D=e},t.setUseProxies=function(e){e&&!V&&n(20),this.S=e},t.applyPatches=function(e,t){var n;for(n=t.length-1;n>=0;n--){var s=t[n];if(0===s.path.length&&"replace"===s.op){e=s.value;break}}n>-1&&(t=t.slice(n+1));var o=m("Patches").W;return r(e)?o(e,t):this.produce(e,function(e){return o(e,t)})},e}(),re=new ne,se=re.produce,oe=re.produceWithPatches.bind(re),ae=re.setAutoFreeze.bind(re),ie=re.setUseProxies.bind(re),ce=re.applyPatches.bind(re),le=re.createDraft.bind(re),ue=re.finishDraft.bind(re);t.Immer=ne,t.applyPatches=ce,t.castDraft=function(e){return e},t.castImmutable=function(e){return e},t.createDraft=le,t.current=N,t.default=se,t.enableAllPlugins=function(){R(),G(),B()},t.enableES5=R,t.enableMapSet=G,t.enablePatches=B,t.finishDraft=ue,t.freeze=v,t.immerable=H,t.isDraft=r,t.isDraftable=s,t.nothing=W,t.original=function(e){return r(e)||n(23,e),e[J].u},t.produce=se,t.produceWithPatches=oe,t.setAutoFreeze=ae,t.setUseProxies=ie},5878(e,t,n){e.exports=n(6477)},9001(e){var t,n,r=Function.prototype,s=Object.prototype,o=r.toString,a=s.hasOwnProperty,i=o.call(Object),c=s.toString,l=(t=Object.getPrototypeOf,n=Object,function(e){return t(n(e))});e.exports=function(e){if(!function(e){return!!e&&"object"==typeof e}(e)||"[object Object]"!=c.call(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e))return!1;var t=l(e);if(null===t)return!0;var n=a.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&o.call(n)==i}},5580(e,t,n){var r=n(6110)(n(9325),"DataView");e.exports=r},1549(e,t,n){var r=n(2032),s=n(3862),o=n(6721),a=n(2749),i=n(5749);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=s,c.prototype.get=o,c.prototype.has=a,c.prototype.set=i,e.exports=c},79(e,t,n){var r=n(3702),s=n(80),o=n(4739),a=n(8655),i=n(1175);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=s,c.prototype.get=o,c.prototype.has=a,c.prototype.set=i,e.exports=c},604(e,t,n){var r=n(6110)(n(9325),"Map");e.exports=r},3661(e,t,n){var r=n(3040),s=n(7670),o=n(289),a=n(4509),i=n(2949);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=s,c.prototype.get=o,c.prototype.has=a,c.prototype.set=i,e.exports=c},2804(e,t,n){var r=n(6110)(n(9325),"Promise");e.exports=r},6545(e,t,n){var r=n(6110)(n(9325),"Set");e.exports=r},8859(e,t,n){var r=n(3661),s=n(1380),o=n(1459);function a(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}a.prototype.add=a.prototype.push=s,a.prototype.has=o,e.exports=a},7217(e,t,n){var r=n(79),s=n(1420),o=n(938),a=n(3605),i=n(9817),c=n(945);function l(e){var t=this.__data__=new r(e);this.size=t.size}l.prototype.clear=s,l.prototype.delete=o,l.prototype.get=a,l.prototype.has=i,l.prototype.set=c,e.exports=l},1873(e,t,n){var r=n(9325).Symbol;e.exports=r},7828(e,t,n){var r=n(9325).Uint8Array;e.exports=r},8303(e,t,n){var r=n(6110)(n(9325),"WeakMap");e.exports=r},1033(e){e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},3729(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}},9770(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,s=0,o=[];++n<r;){var a=e[n];t(a,n,e)&&(o[s++]=a)}return o}},695(e,t,n){var r=n(8096),s=n(2428),o=n(6449),a=n(3656),i=n(361),c=n(7167),l=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=o(e),u=!n&&s(e),p=!n&&!u&&a(e),d=!n&&!u&&!p&&c(e),f=n||u||p||d,h=f?r(e.length,String):[],v=h.length;for(var y in e)!t&&!l.call(e,y)||f&&("length"==y||p&&("offset"==y||"parent"==y)||d&&("buffer"==y||"byteLength"==y||"byteOffset"==y)||i(y,v))||h.push(y);return h}},4932(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,s=Array(r);++n<r;)s[n]=t(e[n],n,e);return s}},4528(e){e.exports=function(e,t){for(var n=-1,r=t.length,s=e.length;++n<r;)e[s+n]=t[n];return e}},4248(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}},6547(e,t,n){var r=n(3360),s=n(5288),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];o.call(e,t)&&s(a,n)&&(void 0!==n||t in e)||r(e,t,n)}},6025(e,t,n){var r=n(5288);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},4733(e,t,n){var r=n(1791),s=n(5950);e.exports=function(e,t){return e&&r(t,s(t),e)}},3838(e,t,n){var r=n(1791),s=n(7241);e.exports=function(e,t){return e&&r(t,s(t),e)}},3360(e,t,n){var r=n(3243);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},9999(e,t,n){var r=n(7217),s=n(3729),o=n(6547),a=n(4733),i=n(3838),c=n(3290),l=n(3007),u=n(2271),p=n(8948),d=n(2),f=n(3349),h=n(5861),v=n(6189),y=n(7199),g=n(5529),m=n(6449),b=n(3656),x=n(7730),_=n(3805),w=n(8440),P=n(5950),O=n(7241),k="[object Arguments]",E="[object Function]",M="[object Object]",$={};$[k]=$["[object Array]"]=$["[object ArrayBuffer]"]=$["[object DataView]"]=$["[object Boolean]"]=$["[object Date]"]=$["[object Float32Array]"]=$["[object Float64Array]"]=$["[object Int8Array]"]=$["[object Int16Array]"]=$["[object Int32Array]"]=$["[object Map]"]=$["[object Number]"]=$[M]=$["[object RegExp]"]=$["[object Set]"]=$["[object String]"]=$["[object Symbol]"]=$["[object Uint8Array]"]=$["[object Uint8ClampedArray]"]=$["[object Uint16Array]"]=$["[object Uint32Array]"]=!0,$["[object Error]"]=$[E]=$["[object WeakMap]"]=!1,e.exports=function e(t,n,A,j,S,I){var C,T=1&n,N=2&n,D=4&n;if(A&&(C=S?A(t,j,S,I):A(t)),void 0!==C)return C;if(!_(t))return t;var R=m(t);if(R){if(C=v(t),!T)return l(t,C)}else{var B=h(t),G=B==E||"[object GeneratorFunction]"==B;if(b(t))return c(t,T);if(B==M||B==k||G&&!S){if(C=N||G?{}:g(t),!T)return N?p(t,i(C,t)):u(t,a(C,t))}else{if(!$[B])return S?t:{};C=y(t,B,T)}}I||(I=new r);var F=I.get(t);if(F)return F;I.set(t,C),w(t)?t.forEach(function(r){C.add(e(r,n,A,r,t,I))}):x(t)&&t.forEach(function(r,s){C.set(s,e(r,n,A,s,t,I))});var L=R?void 0:(D?N?f:d:N?O:P)(t);return s(L||t,function(r,s){L&&(r=t[s=r]),o(C,s,e(r,n,A,s,t,I))}),C}},9344(e,t,n){var r=n(3805),s=Object.create,o=function(){function e(){}return function(t){if(!r(t))return{};if(s)return s(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=o},909(e,t,n){var r=n(641),s=n(8329)(r);e.exports=s},6574(e,t,n){var r=n(909);e.exports=function(e,t){var n=[];return r(e,function(e,r,s){t(e,r,s)&&n.push(e)}),n}},2523(e){e.exports=function(e,t,n,r){for(var s=e.length,o=n+(r?1:-1);r?o--:++o<s;)if(t(e[o],o,e))return o;return-1}},3120(e,t,n){var r=n(4528),s=n(5891);e.exports=function e(t,n,o,a,i){var c=-1,l=t.length;for(o||(o=s),i||(i=[]);++c<l;){var u=t[c];n>0&&o(u)?n>1?e(u,n-1,o,a,i):r(i,u):a||(i[i.length]=u)}return i}},6649(e,t,n){var r=n(3221)();e.exports=r},641(e,t,n){var r=n(6649),s=n(5950);e.exports=function(e,t){return e&&r(e,t,s)}},7422(e,t,n){var r=n(1769),s=n(7797);e.exports=function(e,t){for(var n=0,o=(t=r(t,e)).length;null!=e&&n<o;)e=e[s(t[n++])];return n&&n==o?e:void 0}},2199(e,t,n){var r=n(4528),s=n(6449);e.exports=function(e,t,n){var o=t(e);return s(e)?o:r(o,n(e))}},2552(e,t,n){var r=n(1873),s=n(659),o=n(9350),a=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":a&&a in Object(e)?s(e):o(e)}},8077(e){e.exports=function(e,t){return null!=e&&t in Object(e)}},7534(e,t,n){var r=n(2552),s=n(346);e.exports=function(e){return s(e)&&"[object Arguments]"==r(e)}},270(e,t,n){var r=n(7068),s=n(346);e.exports=function e(t,n,o,a,i){return t===n||(null==t||null==n||!s(t)&&!s(n)?t!=t&&n!=n:r(t,n,o,a,e,i))}},7068(e,t,n){var r=n(7217),s=n(5911),o=n(1986),a=n(689),i=n(5861),c=n(6449),l=n(3656),u=n(7167),p="[object Arguments]",d="[object Array]",f="[object Object]",h=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,v,y,g){var m=c(e),b=c(t),x=m?d:i(e),_=b?d:i(t),w=(x=x==p?f:x)==f,P=(_=_==p?f:_)==f,O=x==_;if(O&&l(e)){if(!l(t))return!1;m=!0,w=!1}if(O&&!w)return g||(g=new r),m||u(e)?s(e,t,n,v,y,g):o(e,t,x,n,v,y,g);if(!(1&n)){var k=w&&h.call(e,"__wrapped__"),E=P&&h.call(t,"__wrapped__");if(k||E){var M=k?e.value():e,$=E?t.value():t;return g||(g=new r),y(M,$,n,v,g)}}return!!O&&(g||(g=new r),a(e,t,n,v,y,g))}},9172(e,t,n){var r=n(5861),s=n(346);e.exports=function(e){return s(e)&&"[object Map]"==r(e)}},1799(e,t,n){var r=n(7217),s=n(270);e.exports=function(e,t,n,o){var a=n.length,i=a,c=!o;if(null==e)return!i;for(e=Object(e);a--;){var l=n[a];if(c&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<i;){var u=(l=n[a])[0],p=e[u],d=l[1];if(c&&l[2]){if(void 0===p&&!(u in e))return!1}else{var f=new r;if(o)var h=o(p,d,u,e,t,f);if(!(void 0===h?s(d,p,3,o,f):h))return!1}}return!0}},5083(e,t,n){var r=n(1882),s=n(7296),o=n(3805),a=n(7473),i=/^\[object .+?Constructor\]$/,c=Function.prototype,l=Object.prototype,u=c.toString,p=l.hasOwnProperty,d=RegExp("^"+u.call(p).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!o(e)||s(e))&&(r(e)?d:i).test(a(e))}},6038(e,t,n){var r=n(5861),s=n(346);e.exports=function(e){return s(e)&&"[object Set]"==r(e)}},4901(e,t,n){var r=n(2552),s=n(294),o=n(346),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,e.exports=function(e){return o(e)&&s(e.length)&&!!a[r(e)]}},5389(e,t,n){var r=n(3663),s=n(7978),o=n(3488),a=n(6449),i=n(583);e.exports=function(e){return"function"==typeof e?e:null==e?o:"object"==typeof e?a(e)?s(e[0],e[1]):r(e):i(e)}},8984(e,t,n){var r=n(5527),s=n(3650),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return s(e);var t=[];for(var n in Object(e))o.call(e,n)&&"constructor"!=n&&t.push(n);return t}},2903(e,t,n){var r=n(3805),s=n(5527),o=n(181),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=s(e),n=[];for(var i in e)("constructor"!=i||!t&&a.call(e,i))&&n.push(i);return n}},3663(e,t,n){var r=n(1799),s=n(776),o=n(7197);e.exports=function(e){var t=s(e);return 1==t.length&&t[0][2]?o(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},7978(e,t,n){var r=n(270),s=n(8156),o=n(631),a=n(8586),i=n(756),c=n(7197),l=n(7797);e.exports=function(e,t){return a(e)&&i(t)?c(l(e),t):function(n){var a=s(n,e);return void 0===a&&a===t?o(n,e):r(t,a,3)}}},6001(e,t,n){var r=n(7420),s=n(631);e.exports=function(e,t){return r(e,t,function(t,n){return s(e,n)})}},7420(e,t,n){var r=n(7422),s=n(3170),o=n(1769);e.exports=function(e,t,n){for(var a=-1,i=t.length,c={};++a<i;){var l=t[a],u=r(e,l);n(u,l)&&s(c,o(l,e),u)}return c}},7237(e){e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},7255(e,t,n){var r=n(7422);e.exports=function(e){return function(t){return r(t,e)}}},3170(e,t,n){var r=n(6547),s=n(1769),o=n(361),a=n(3805),i=n(7797);e.exports=function(e,t,n,c){if(!a(e))return e;for(var l=-1,u=(t=s(t,e)).length,p=u-1,d=e;null!=d&&++l<u;){var f=i(t[l]),h=n;if("__proto__"===f||"constructor"===f||"prototype"===f)return e;if(l!=p){var v=d[f];void 0===(h=c?c(v,f,d):void 0)&&(h=a(v)?v:o(t[l+1])?[]:{})}r(d,f,h),d=d[f]}return e}},9570(e,t,n){var r=n(7334),s=n(3243),o=n(3488),a=s?function(e,t){return s(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:o;e.exports=a},5160(e){e.exports=function(e,t,n){var r=-1,s=e.length;t<0&&(t=-t>s?0:s+t),(n=n>s?s:n)<0&&(n+=s),s=t>n?0:n-t>>>0,t>>>=0;for(var o=Array(s);++r<s;)o[r]=e[r+t];return o}},8096(e){e.exports=function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}},7556(e,t,n){var r=n(1873),s=n(4932),o=n(6449),a=n(4394),i=r?r.prototype:void 0,c=i?i.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(o(t))return s(t,e)+"";if(a(t))return c?c.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n}},4128(e,t,n){var r=n(1800),s=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(s,""):e}},7301(e){e.exports=function(e){return function(t){return e(t)}}},9219(e){e.exports=function(e,t){return e.has(t)}},1769(e,t,n){var r=n(6449),s=n(8586),o=n(1802),a=n(3222);e.exports=function(e,t){return r(e)?e:s(e,t)?[e]:o(a(e))}},9653(e,t,n){var r=n(7828);e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},3290(e,t,n){e=n.nmd(e);var r=n(9325),s=t&&!t.nodeType&&t,o=s&&e&&!e.nodeType&&e,a=o&&o.exports===s?r.Buffer:void 0,i=a?a.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=i?i(n):new e.constructor(n);return e.copy(r),r}},6169(e,t,n){var r=n(9653);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},3201(e){var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},3736(e,t,n){var r=n(1873),s=r?r.prototype:void 0,o=s?s.valueOf:void 0;e.exports=function(e){return o?Object(o.call(e)):{}}},1961(e,t,n){var r=n(9653);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},3007(e){e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}},1791(e,t,n){var r=n(6547),s=n(3360);e.exports=function(e,t,n,o){var a=!n;n||(n={});for(var i=-1,c=t.length;++i<c;){var l=t[i],u=o?o(n[l],e[l],l,n,e):void 0;void 0===u&&(u=e[l]),a?s(n,l,u):r(n,l,u)}return n}},2271(e,t,n){var r=n(1791),s=n(4664);e.exports=function(e,t){return r(e,s(e),t)}},8948(e,t,n){var r=n(1791),s=n(6375);e.exports=function(e,t){return r(e,s(e),t)}},5481(e,t,n){var r=n(9325)["__core-js_shared__"];e.exports=r},8329(e,t,n){var r=n(4894);e.exports=function(e,t){return function(n,s){if(null==n)return n;if(!r(n))return e(n,s);for(var o=n.length,a=t?o:-1,i=Object(n);(t?a--:++a<o)&&!1!==s(i[a],a,i););return n}}},3221(e){e.exports=function(e){return function(t,n,r){for(var s=-1,o=Object(t),a=r(t),i=a.length;i--;){var c=a[e?i:++s];if(!1===n(o[c],c,o))break}return t}}},2006(e,t,n){var r=n(5389),s=n(4894),o=n(5950);e.exports=function(e){return function(t,n,a){var i=Object(t);if(!s(t)){var c=r(n,3);t=o(t),n=function(e){return c(i[e],e,i)}}var l=e(t,n,a);return l>-1?i[c?t[l]:l]:void 0}}},3243(e,t,n){var r=n(6110),s=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=s},5911(e,t,n){var r=n(8859),s=n(4248),o=n(9219);e.exports=function(e,t,n,a,i,c){var l=1&n,u=e.length,p=t.length;if(u!=p&&!(l&&p>u))return!1;var d=c.get(e),f=c.get(t);if(d&&f)return d==t&&f==e;var h=-1,v=!0,y=2&n?new r:void 0;for(c.set(e,t),c.set(t,e);++h<u;){var g=e[h],m=t[h];if(a)var b=l?a(m,g,h,t,e,c):a(g,m,h,e,t,c);if(void 0!==b){if(b)continue;v=!1;break}if(y){if(!s(t,function(e,t){if(!o(y,t)&&(g===e||i(g,e,n,a,c)))return y.push(t)})){v=!1;break}}else if(g!==m&&!i(g,m,n,a,c)){v=!1;break}}return c.delete(e),c.delete(t),v}},1986(e,t,n){var r=n(1873),s=n(7828),o=n(5288),a=n(5911),i=n(317),c=n(4247),l=r?r.prototype:void 0,u=l?l.valueOf:void 0;e.exports=function(e,t,n,r,l,p,d){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!p(new s(e),new s(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return o(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var f=i;case"[object Set]":var h=1&r;if(f||(f=c),e.size!=t.size&&!h)return!1;var v=d.get(e);if(v)return v==t;r|=2,d.set(e,t);var y=a(f(e),f(t),r,l,p,d);return d.delete(e),y;case"[object Symbol]":if(u)return u.call(e)==u.call(t)}return!1}},689(e,t,n){var r=n(2),s=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,o,a,i){var c=1&n,l=r(e),u=l.length;if(u!=r(t).length&&!c)return!1;for(var p=u;p--;){var d=l[p];if(!(c?d in t:s.call(t,d)))return!1}var f=i.get(e),h=i.get(t);if(f&&h)return f==t&&h==e;var v=!0;i.set(e,t),i.set(t,e);for(var y=c;++p<u;){var g=e[d=l[p]],m=t[d];if(o)var b=c?o(m,g,d,t,e,i):o(g,m,d,e,t,i);if(!(void 0===b?g===m||a(g,m,n,o,i):b)){v=!1;break}y||(y="constructor"==d)}if(v&&!y){var x=e.constructor,_=t.constructor;x==_||!("constructor"in e)||!("constructor"in t)||"function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _||(v=!1)}return i.delete(e),i.delete(t),v}},8816(e,t,n){var r=n(5970),s=n(6757),o=n(2865);e.exports=function(e){return o(s(e,void 0,r),e+"")}},4840(e,t,n){var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},2(e,t,n){var r=n(2199),s=n(4664),o=n(5950);e.exports=function(e){return r(e,o,s)}},3349(e,t,n){var r=n(2199),s=n(6375),o=n(7241);e.exports=function(e){return r(e,o,s)}},2651(e,t,n){var r=n(4218);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},776(e,t,n){var r=n(756),s=n(5950);e.exports=function(e){for(var t=s(e),n=t.length;n--;){var o=t[n],a=e[o];t[n]=[o,a,r(a)]}return t}},6110(e,t,n){var r=n(5083),s=n(392);e.exports=function(e,t){var n=s(e,t);return r(n)?n:void 0}},8879(e,t,n){var r=n(4335)(Object.getPrototypeOf,Object);e.exports=r},659(e,t,n){var r=n(1873),s=Object.prototype,o=s.hasOwnProperty,a=s.toString,i=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,i),n=e[i];try{e[i]=void 0;var r=!0}catch(e){}var s=a.call(e);return r&&(t?e[i]=n:delete e[i]),s}},4664(e,t,n){var r=n(9770),s=n(3345),o=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,i=a?function(e){return null==e?[]:(e=Object(e),r(a(e),function(t){return o.call(e,t)}))}:s;e.exports=i},6375(e,t,n){var r=n(4528),s=n(8879),o=n(4664),a=n(3345),i=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,o(e)),e=s(e);return t}:a;e.exports=i},5861(e,t,n){var r=n(5580),s=n(604),o=n(2804),a=n(6545),i=n(8303),c=n(2552),l=n(7473),u="[object Map]",p="[object Promise]",d="[object Set]",f="[object WeakMap]",h="[object DataView]",v=l(r),y=l(s),g=l(o),m=l(a),b=l(i),x=c;(r&&x(new r(new ArrayBuffer(1)))!=h||s&&x(new s)!=u||o&&x(o.resolve())!=p||a&&x(new a)!=d||i&&x(new i)!=f)&&(x=function(e){var t=c(e),n="[object Object]"==t?e.constructor:void 0,r=n?l(n):"";if(r)switch(r){case v:return h;case y:return u;case g:return p;case m:return d;case b:return f}return t}),e.exports=x},392(e){e.exports=function(e,t){return null==e?void 0:e[t]}},9326(e,t,n){var r=n(1769),s=n(2428),o=n(6449),a=n(361),i=n(294),c=n(7797);e.exports=function(e,t,n){for(var l=-1,u=(t=r(t,e)).length,p=!1;++l<u;){var d=c(t[l]);if(!(p=null!=e&&n(e,d)))break;e=e[d]}return p||++l!=u?p:!!(u=null==e?0:e.length)&&i(u)&&a(d,u)&&(o(e)||s(e))}},2032(e,t,n){var r=n(1042);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},3862(e){e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},6721(e,t,n){var r=n(1042),s=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return s.call(t,e)?t[e]:void 0}},2749(e,t,n){var r=n(1042),s=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:s.call(t,e)}},5749(e,t,n){var r=n(1042);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},6189(e){var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},7199(e,t,n){var r=n(9653),s=n(6169),o=n(3201),a=n(3736),i=n(1961);e.exports=function(e,t,n){var c=e.constructor;switch(t){case"[object ArrayBuffer]":return r(e);case"[object Boolean]":case"[object Date]":return new c(+e);case"[object DataView]":return s(e,n);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 i(e,n);case"[object Map]":case"[object Set]":return new c;case"[object Number]":case"[object String]":return new c(e);case"[object RegExp]":return o(e);case"[object Symbol]":return a(e)}}},5529(e,t,n){var r=n(9344),s=n(8879),o=n(5527);e.exports=function(e){return"function"!=typeof e.constructor||o(e)?{}:r(s(e))}},5891(e,t,n){var r=n(1873),s=n(2428),o=n(6449),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return o(e)||s(e)||!!(a&&e&&e[a])}},361(e){var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},6800(e,t,n){var r=n(5288),s=n(4894),o=n(361),a=n(3805);e.exports=function(e,t,n){if(!a(n))return!1;var i=typeof t;return!!("number"==i?s(n)&&o(t,n.length):"string"==i&&t in n)&&r(n[t],e)}},8586(e,t,n){var r=n(6449),s=n(4394),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!s(e))||a.test(e)||!o.test(e)||null!=t&&e in Object(t)}},4218(e){e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},7296(e,t,n){var r,s=n(5481),o=(r=/[^.]+$/.exec(s&&s.keys&&s.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!o&&o in e}},5527(e){var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},756(e,t,n){var r=n(3805);e.exports=function(e){return e==e&&!r(e)}},3702(e){e.exports=function(){this.__data__=[],this.size=0}},80(e,t,n){var r=n(6025),s=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0||(n==t.length-1?t.pop():s.call(t,n,1),--this.size,0))}},4739(e,t,n){var r=n(6025);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},8655(e,t,n){var r=n(6025);e.exports=function(e){return r(this.__data__,e)>-1}},1175(e,t,n){var r=n(6025);e.exports=function(e,t){var n=this.__data__,s=r(n,e);return s<0?(++this.size,n.push([e,t])):n[s][1]=t,this}},3040(e,t,n){var r=n(1549),s=n(79),o=n(604);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(o||s),string:new r}}},7670(e,t,n){var r=n(2651);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},289(e,t,n){var r=n(2651);e.exports=function(e){return r(this,e).get(e)}},4509(e,t,n){var r=n(2651);e.exports=function(e){return r(this,e).has(e)}},2949(e,t,n){var r=n(2651);e.exports=function(e,t){var n=r(this,e),s=n.size;return n.set(e,t),this.size+=n.size==s?0:1,this}},317(e){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}},7197(e){e.exports=function(e,t){return function(n){return null!=n&&n[e]===t&&(void 0!==t||e in Object(n))}}},2224(e,t,n){var r=n(104);e.exports=function(e){var t=r(e,function(e){return 500===n.size&&n.clear(),e}),n=t.cache;return t}},1042(e,t,n){var r=n(6110)(Object,"create");e.exports=r},3650(e,t,n){var r=n(4335)(Object.keys,Object);e.exports=r},181(e){e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},6009(e,t,n){e=n.nmd(e);var r=n(4840),s=t&&!t.nodeType&&t,o=s&&e&&!e.nodeType&&e,a=o&&o.exports===s&&r.process,i=function(){try{var e=o&&o.require&&o.require("util").types;return e||a&&a.binding&&a.binding("util")}catch(e){}}();e.exports=i},9350(e){var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},4335(e){e.exports=function(e,t){return function(n){return e(t(n))}}},6757(e,t,n){var r=n(1033),s=Math.max;e.exports=function(e,t,n){return t=s(void 0===t?e.length-1:t,0),function(){for(var o=arguments,a=-1,i=s(o.length-t,0),c=Array(i);++a<i;)c[a]=o[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=o[a];return l[t]=n(c),r(e,this,l)}}},9325(e,t,n){var r=n(4840),s="object"==typeof self&&self&&self.Object===Object&&self,o=r||s||Function("return this")();e.exports=o},1380(e){e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},1459(e){e.exports=function(e){return this.__data__.has(e)}},4247(e){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}},2865(e,t,n){var r=n(9570),s=n(1811)(r);e.exports=s},1811(e){var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var s=t(),o=16-(s-r);if(r=s,o>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},1420(e,t,n){var r=n(79);e.exports=function(){this.__data__=new r,this.size=0}},938(e){e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},3605(e){e.exports=function(e){return this.__data__.get(e)}},9817(e){e.exports=function(e){return this.__data__.has(e)}},945(e,t,n){var r=n(79),s=n(604),o=n(3661);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!s||a.length<199)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new o(a)}return n.set(e,t),this.size=n.size,this}},1802(e,t,n){var r=n(2224),s=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,o=/\\(\\)?/g,a=r(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(s,function(e,n,r,s){t.push(r?s.replace(o,"$1"):n||e)}),t});e.exports=a},7797(e,t,n){var r=n(4394);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}},7473(e){var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},1800(e){var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},1013(e,t,n){var r=n(5160),s=n(6800),o=n(1489),a=Math.ceil,i=Math.max;e.exports=function(e,t,n){t=(n?s(e,t,n):void 0===t)?1:i(o(t),0);var c=null==e?0:e.length;if(!c||t<1)return[];for(var l=0,u=0,p=Array(a(c/t));l<c;)p[u++]=r(e,l,l+=t);return p}},8055(e,t,n){var r=n(9999);e.exports=function(e){return r(e,5)}},7334(e){e.exports=function(e){return function(){return e}}},5288(e){e.exports=function(e,t){return e===t||e!=e&&t!=t}},7612(e,t,n){var r=n(9770),s=n(6574),o=n(5389),a=n(6449);e.exports=function(e,t){return(a(e)?r:s)(e,o(t,3))}},7309(e,t,n){var r=n(2006)(n(4713));e.exports=r},4713(e,t,n){var r=n(2523),s=n(5389),o=n(1489),a=Math.max;e.exports=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var c=null==n?0:o(n);return c<0&&(c=a(i+c,0)),r(e,s(t,3),c)}},5970(e,t,n){var r=n(3120);e.exports=function(e){return null!=e&&e.length?r(e,1):[]}},8156(e,t,n){var r=n(7422);e.exports=function(e,t,n){var s=null==e?void 0:r(e,t);return void 0===s?n:s}},631(e,t,n){var r=n(8077),s=n(9326);e.exports=function(e,t){return null!=e&&s(e,t,r)}},3488(e){e.exports=function(e){return e}},2428(e,t,n){var r=n(7534),s=n(346),o=Object.prototype,a=o.hasOwnProperty,i=o.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(e){return s(e)&&a.call(e,"callee")&&!i.call(e,"callee")};e.exports=c},6449(e){var t=Array.isArray;e.exports=t},4894(e,t,n){var r=n(1882),s=n(294);e.exports=function(e){return null!=e&&s(e.length)&&!r(e)}},3656(e,t,n){e=n.nmd(e);var r=n(9325),s=n(9935),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,i=a&&a.exports===o?r.Buffer:void 0,c=(i?i.isBuffer:void 0)||s;e.exports=c},1882(e,t,n){var r=n(2552),s=n(3805);e.exports=function(e){if(!s(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},294(e){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},7730(e,t,n){var r=n(9172),s=n(7301),o=n(6009),a=o&&o.isMap,i=a?s(a):r;e.exports=i},3805(e){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},346(e){e.exports=function(e){return null!=e&&"object"==typeof e}},1331(e,t,n){var r=n(2552),s=n(8879),o=n(346),a=Function.prototype,i=Object.prototype,c=a.toString,l=i.hasOwnProperty,u=c.call(Object);e.exports=function(e){if(!o(e)||"[object Object]"!=r(e))return!1;var t=s(e);if(null===t)return!0;var n=l.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&c.call(n)==u}},8440(e,t,n){var r=n(6038),s=n(7301),o=n(6009),a=o&&o.isSet,i=a?s(a):r;e.exports=i},4394(e,t,n){var r=n(2552),s=n(346);e.exports=function(e){return"symbol"==typeof e||s(e)&&"[object Symbol]"==r(e)}},7167(e,t,n){var r=n(4901),s=n(7301),o=n(6009),a=o&&o.isTypedArray,i=a?s(a):r;e.exports=i},5950(e,t,n){var r=n(695),s=n(8984),o=n(4894);e.exports=function(e){return o(e)?r(e):s(e)}},7241(e,t,n){var r=n(695),s=n(2903),o=n(4894);e.exports=function(e){return o(e)?r(e,!0):s(e)}},1505(e,t,n){var r=n(9999),s=n(3663);e.exports=function(e){return s(r(e,1))}},104(e,t,n){var r=n(3661);function s(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,s=t?t.apply(this,r):r[0],o=n.cache;if(o.has(s))return o.get(s);var a=e.apply(this,r);return n.cache=o.set(s,a)||o,a};return n.cache=new(s.Cache||r),n}s.Cache=r,e.exports=s},4383(e,t,n){var r=n(6001),s=n(8816)(function(e,t){return null==e?{}:r(e,t)});e.exports=s},583(e,t,n){var r=n(7237),s=n(7255),o=n(8586),a=n(7797);e.exports=function(e){return o(e)?r(a(e)):s(e)}},3345(e){e.exports=function(){return[]}},9935(e){e.exports=function(){return!1}},7400(e,t,n){var r=n(9374),s=1/0;e.exports=function(e){return e?(e=r(e))===s||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},1489(e,t,n){var r=n(7400);e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},9374(e,t,n){var r=n(4128),s=n(3805),o=n(4394),a=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,c=/^0o[0-7]+$/i,l=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(o(e))return NaN;if(s(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=s(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=i.test(e);return n||c.test(e)?l(e.slice(2),n?2:8):a.test(e)?NaN:+e}},3222(e,t,n){var r=n(7556);e.exports=function(e){return null==e?"":r(e)}},6585(e){var t=1e3,n=60*t,r=60*n,s=24*r,o=7*s,a=365.25*s;function i(e,t,n,r){var s=t>=1.5*n;return Math.round(e/n)+" "+r+(s?"s":"")}e.exports=function(e,c){c=c||{};var l,u,p=typeof e;if("string"===p&&e.length>0)return function(e){if(!((e=String(e)).length>100)){var i=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(i){var c=parseFloat(i[1]);switch((i[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return c*a;case"weeks":case"week":case"w":return c*o;case"days":case"day":case"d":return c*s;case"hours":case"hour":case"hrs":case"hr":case"h":return c*r;case"minutes":case"minute":case"mins":case"min":case"m":return c*n;case"seconds":case"second":case"secs":case"sec":case"s":return c*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return c;default:return}}}}(e);if("number"===p&&isFinite(e))return c.long?(l=e,(u=Math.abs(l))>=s?i(l,u,s,"day"):u>=r?i(l,u,r,"hour"):u>=n?i(l,u,n,"minute"):u>=t?i(l,u,t,"second"):l+" ms"):function(e){var o=Math.abs(e);return o>=s?Math.round(e/s)+"d":o>=r?Math.round(e/r)+"h":o>=n?Math.round(e/n)+"m":o>=t?Math.round(e/t)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},2960(e,t,n){n.r(t),n.d(t,{__DO_NOT_USE__ActionTypes:()=>i,applyMiddleware:()=>h,bindActionCreators:()=>d,combineReducers:()=>u,compose:()=>f,createStore:()=>c,legacy_createStore:()=>l});var r=n(9379);function s(e){return"Minified Redux error #"+e+"; visit https://redux.js.org/Errors?code="+e+" for the full message or use the non-minified dev environment for full errors. "}var o="function"==typeof Symbol&&Symbol.observable||"@@observable",a=function(){return Math.random().toString(36).substring(7).split("").join(".")},i={INIT:"@@redux/INIT"+a(),REPLACE:"@@redux/REPLACE"+a(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+a()}};function c(e,t,n){var r;if("function"==typeof t&&"function"==typeof n||"function"==typeof n&&"function"==typeof arguments[3])throw new Error(s(0));if("function"==typeof t&&void 0===n&&(n=t,t=void 0),void 0!==n){if("function"!=typeof n)throw new Error(s(1));return n(c)(e,t)}if("function"!=typeof e)throw new Error(s(2));var a=e,l=t,u=[],p=u,d=!1;function f(){p===u&&(p=u.slice())}function h(){if(d)throw new Error(s(3));return l}function v(e){if("function"!=typeof e)throw new Error(s(4));if(d)throw new Error(s(5));var t=!0;return f(),p.push(e),function(){if(t){if(d)throw new Error(s(6));t=!1,f();var n=p.indexOf(e);p.splice(n,1),u=null}}}function y(e){if(!function(e){if("object"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}(e))throw new Error(s(7));if(void 0===e.type)throw new Error(s(8));if(d)throw new Error(s(9));try{d=!0,l=a(l,e)}finally{d=!1}for(var t=u=p,n=0;n<t.length;n++)(0,t[n])();return e}return y({type:i.INIT}),(r={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if("function"!=typeof e)throw new Error(s(10));a=e,y({type:i.REPLACE})}})[o]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e||null===e)throw new Error(s(11));function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[o]=function(){return this},e},r}var l=c;function u(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var o=t[r];"function"==typeof e[o]&&(n[o]=e[o])}var a,c=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(void 0===n(void 0,{type:i.INIT}))throw new Error(s(12));if(void 0===n(void 0,{type:i.PROBE_UNKNOWN_ACTION()}))throw new Error(s(13))})}(n)}catch(e){a=e}return function(e,t){if(void 0===e&&(e={}),a)throw a;for(var r=!1,o={},i=0;i<c.length;i++){var l=c[i],u=n[l],p=e[l],d=u(p,t);if(void 0===d)throw t&&t.type,new Error(s(14));o[l]=d,r=r||d!==p}return(r=r||c.length!==Object.keys(e).length)?o:e}}function p(e,t){return function(){return t(e.apply(this,arguments))}}function d(e,t){if("function"==typeof e)return p(e,t);if("object"!=typeof e||null===e)throw new Error(s(16));var n={};for(var r in e){var o=e[r];"function"==typeof o&&(n[r]=p(o,t))}return n}function f(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return 0===t.length?function(e){return e}:1===t.length?t[0]:t.reduce(function(e,t){return function(){return e(t.apply(void 0,arguments))}})}function h(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){return function(){var n=e.apply(void 0,arguments),o=function(){throw new Error(s(15))},a={getState:n.getState,dispatch:function(){return o.apply(void 0,arguments)}},i=t.map(function(e){return e(a)});return o=f.apply(void 0,i)(n.dispatch),(0,r.A)((0,r.A)({},n),{},{dispatch:o})}}}},6178(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.diffAny=t.diffObjects=t.diffArrays=t.intersection=t.subtract=t.isDestructive=void 0;var r=n(2417);function s(e,t){var n={};for(var s in e)r.hasOwnProperty.call(e,s)&&void 0!==e[s]&&(n[s]=1);for(var o in t)r.hasOwnProperty.call(t,o)&&void 0!==t[o]&&delete n[o];return Object.keys(n)}function o(e){for(var t=e.length,n={},s=0;s<t;s++){var o=e[s];for(var a in o)r.hasOwnProperty.call(o,a)&&void 0!==o[a]&&(n[a]=(n[a]||0)+1)}for(var a in n)n[a]<t&&delete n[a];return Object.keys(n)}function a(e,t){return{operations:e.operations.concat(t),cost:e.cost+1}}function i(e,t,n,r){void 0===r&&(r=l);var s={"0,0":{operations:[],cost:0}},o=isNaN(e.length)||e.length<=0?0:e.length,i=isNaN(t.length)||t.length<=0?0:t.length,c=function o(i,c){var l="".concat(i,",").concat(c),u=s[l];if(void 0===u){if(i>0&&c>0&&!r(e[i-1],t[c-1],n.add(String(i-1))).length)u=o(i-1,c-1);else{var p=[];if(i>0){var d=o(i-1,c),f={op:"remove",index:i-1};p.push(a(d,f))}if(c>0){var h=o(i,c-1),v={op:"add",index:i-1,value:t[c-1]};p.push(a(h,v))}if(i>0&&c>0){var y=o(i-1,c-1),g={op:"replace",index:i-1,original:e[i-1],value:t[c-1]};p.push(a(y,g))}u=p.sort(function(e,t){return e.cost-t.cost})[0]}s[l]=u}return u}(o,i).operations;return c.reduce(function(e,t){var s=e[0],a=e[1];if(function(e){return"add"===e.op}(t)){var i=t.index+1+a,c=i<o+a?String(i):"-",l={op:t.op,path:n.add(c).toString(),value:t.value};return[s.concat(l),a+1]}if(function(e){return"remove"===e.op}(t))return l={op:t.op,path:n.add(String(t.index+a)).toString()},[s.concat(l),a-1];var u=n.add(String(t.index+a)),p=r(t.original,t.value,u);return[s.concat.apply(s,p),a]},[[],0])[0]}function c(e,t,n,r){void 0===r&&(r=l);var a=[];return s(e,t).forEach(function(e){a.push({op:"remove",path:n.add(e).toString()})}),s(t,e).forEach(function(e){a.push({op:"add",path:n.add(e).toString(),value:t[e]})}),o([e,t]).forEach(function(s){a.push.apply(a,r(e[s],t[s],n.add(s)))}),a}function l(e,t,n,s){if(void 0===s&&(s=l),e===t)return[];var o=(0,r.objectType)(e),a=(0,r.objectType)(t);return"array"==o&&"array"==a?i(e,t,n,s):"object"==o&&"object"==a?c(e,t,n,s):[{op:"replace",path:n.toString(),value:t}]}t.isDestructive=function(e){var t=e.op;return"remove"===t||"replace"===t||"copy"===t||"move"===t},t.subtract=s,t.intersection=o,t.diffArrays=i,t.diffObjects=c,t.diffAny=l},1337(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.createTests=t.createPatch=t.applyPatch=t.Pointer=void 0;var r=n(9704);Object.defineProperty(t,"Pointer",{enumerable:!0,get:function(){return r.Pointer}});var s=n(7855),o=n(6178);function a(e,t){var n=r.Pointer.fromJSON(t).evaluate(e);if(void 0!==n)return{op:"test",path:t,value:n.value}}t.applyPatch=function(e,t){return t.map(function(t){return(0,s.apply)(e,t)})},t.createPatch=function(e,t,n){var s=new r.Pointer;return(n?function(e){return function t(n,r,s){var a=e(n,r,s);return Array.isArray(a)?a:(0,o.diffAny)(n,r,s,t)}}(n):o.diffAny)(e,t,s)},t.createTests=function(e,t){var n=new Array;return t.filter(o.isDestructive).forEach(function(t){var r=a(e,t.path);if(r&&n.push(r),"from"in t){var s=a(e,t.from);s&&n.push(s)}}),n}},7855(e,t,n){var r,s=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},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 n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0}),t.apply=t.InvalidOperationError=t.test=t.copy=t.move=t.replace=t.remove=t.add=t.TestError=t.MissingError=void 0;var o=n(9704),a=n(2417),i=n(6178),c=function(e){function t(t){var n=e.call(this,"Value required at path: ".concat(t))||this;return n.path=t,n.name="MissingError",n}return s(t,e),t}(Error);t.MissingError=c;var l=function(e){function t(t,n){var r=e.call(this,"Test failed: ".concat(t," != ").concat(n))||this;return r.actual=t,r.expected=n,r.name="TestError",r}return s(t,e),t}(Error);function u(e,t,n){if(Array.isArray(e))if("-"==t)e.push(n);else{var r=parseInt(t,10);e.splice(r,0,n)}else e[t]=n}function p(e,t){if(Array.isArray(e)){var n=parseInt(t,10);e.splice(n,1)}else delete e[t]}function d(e,t){var n=o.Pointer.fromJSON(t.path).evaluate(e);return void 0===n.parent?new c(t.path):(u(n.parent,n.key,(0,a.clone)(t.value)),null)}function f(e,t){var n=o.Pointer.fromJSON(t.path).evaluate(e);return void 0===n.value?new c(t.path):(p(n.parent,n.key),null)}function h(e,t){var n=o.Pointer.fromJSON(t.path).evaluate(e);if(null===n.parent)return new c(t.path);if(Array.isArray(n.parent)){if(parseInt(n.key,10)>=n.parent.length)return new c(t.path)}else if(void 0===n.value)return new c(t.path);return n.parent[n.key]=(0,a.clone)(t.value),null}function v(e,t){var n=o.Pointer.fromJSON(t.from).evaluate(e);if(void 0===n.value)return new c(t.from);var r=o.Pointer.fromJSON(t.path).evaluate(e);return void 0===r.parent?new c(t.path):(p(n.parent,n.key),u(r.parent,r.key,n.value),null)}function y(e,t){var n=o.Pointer.fromJSON(t.from).evaluate(e);if(void 0===n.value)return new c(t.from);var r=o.Pointer.fromJSON(t.path).evaluate(e);return void 0===r.parent?new c(t.path):(u(r.parent,r.key,(0,a.clone)(n.value)),null)}function g(e,t){var n=o.Pointer.fromJSON(t.path).evaluate(e);return(0,i.diffAny)(n.value,t.value,new o.Pointer).length?new l(n.value,t.value):null}t.TestError=l,t.add=d,t.remove=f,t.replace=h,t.move=v,t.copy=y,t.test=g;var m=function(e){function t(t){var n=e.call(this,"Invalid operation: ".concat(t.op))||this;return n.operation=t,n.name="InvalidOperationError",n}return s(t,e),t}(Error);t.InvalidOperationError=m,t.apply=function(e,t){switch(t.op){case"add":return d(e,t);case"remove":return f(e,t);case"replace":return h(e,t);case"move":return v(e,t);case"copy":return y(e,t);case"test":return g(e,t)}return new m(t)}},9704(e,t){function n(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function r(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}Object.defineProperty(t,"__esModule",{value:!0}),t.Pointer=t.escapeToken=t.unescapeToken=void 0,t.unescapeToken=n,t.escapeToken=r;var s=function(){function e(e){void 0===e&&(e=[""]),this.tokens=e}return e.fromJSON=function(t){var r=t.split("/").map(n);if(""!==r[0])throw new Error("Invalid JSON Pointer: ".concat(t));return new e(r)},e.prototype.toString=function(){return this.tokens.map(r).join("/")},e.prototype.evaluate=function(e){for(var t=null,n="",r=e,s=1,o=this.tokens.length;s<o;s++)t=r,"__proto__"!=(n=this.tokens[s])&&"constructor"!=n&&"prototype"!=n&&(r=(t||{})[n]);return{parent:t,key:n,value:r}},e.prototype.get=function(e){return this.evaluate(e).value},e.prototype.set=function(e,t){var n=this.evaluate(e);n.parent&&(n.parent[n.key]=t)},e.prototype.push=function(e){this.tokens.push(e)},e.prototype.add=function(t){return new e(this.tokens.concat(String(t)))},e}();t.Pointer=s},2417(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.clone=t.objectType=t.hasOwnProperty=void 0,t.hasOwnProperty=Object.prototype.hasOwnProperty,t.objectType=function(e){return void 0===e?"undefined":null===e?"null":Array.isArray(e)?"array":typeof e},t.clone=function e(n){if(null==(r=n)||"object"!=typeof r)return n;var r;if(n.constructor==Array){for(var s=n.length,o=new Array(s),a=0;a<s;a++)o[a]=e(n[a]);return o}if(n.constructor==Date)return new Date(+n);var i={};for(var c in n)t.hasOwnProperty.call(n,c)&&(i[c]=e(n[c]));return i}},2791(e,t,n){!function(e){if(!e.setImmediate){var t,n,r,s,o,a=1,i={},c=!1,l=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,"[object process]"==={}.toString.call(e.process)?t=function(e){process.nextTick(function(){d(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(s="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(s)&&d(+t.data.slice(s.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),t=function(t){e.postMessage(s+t,"*")}):e.MessageChannel?((r=new MessageChannel).port1.onmessage=function(e){d(e.data)},t=function(e){r.port2.postMessage(e)}):l&&"onreadystatechange"in l.createElement("script")?(n=l.documentElement,t=function(e){var t=l.createElement("script");t.onreadystatechange=function(){d(e),t.onreadystatechange=null,n.removeChild(t),t=null},n.appendChild(t)}):t=function(e){setTimeout(d,0,e)},u.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var n=new Array(arguments.length-1),r=0;r<n.length;r++)n[r]=arguments[r+1];var s={callback:e,args:n};return i[a]=s,t(a),a++},u.clearImmediate=p}function p(e){delete i[e]}function d(e){if(c)setTimeout(d,0,e);else{var t=i[e];if(t){c=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{p(e),c=!1}}}}}("undefined"==typeof self?void 0===n.g?this:n.g:self)},7627(e,t,n){function r(e,t){const{duplicates:n,circular:r}=o(e),s=[...n],a=new Map(s.map(e=>[e,null])),i=!1!==t?.deduplicateInstances;return JSON.stringify(e,(e,t)=>{if("object"==typeof t&&null!==t&&!Array.isArray(t)){const e=a.get(t),n=r.has(t);if("number"==typeof e&&n)return{_instanceReference:e};if(i&&"number"==typeof e)return{_instanceReference:e};const o=c({},t);if(null===e){const e=s.indexOf(t);a.set(t,e),o._instanceReferenceId=e}else i||"number"!=typeof e||(o._instanceReference=e);return t.constructor&&t.constructor!==Object&&t.constructor!==Array&&(o._constructorName=t.constructor.name),o}if(Number.isNaN(t))return"Wacksonan";if(Object.is(t,-0))return"Wacksonegativezero";switch(t){case 1/0:return"Wacksonfinity";case-1/0:return"Wacksonegativinfinity";case void 0:return"Wacksondefined";default:return t}},t?.space)}function s(e,t){const n=JSON.parse(e,(e,t)=>{switch(t){case"Wacksonfinity":return 1/0;case"Wacksonegativinfinity":return-1/0;case"Wacksondefined":return;case"Wacksonan":return NaN;case"Wacksonegativezero":return-0;default:return t}}),r=new Map;return o(n,e=>{if(null!=e._instanceReferenceId){const t=e._instanceReferenceId;delete e._instanceReferenceId,r.set(t,e)}if(t&&e._constructorName){const n=t[e._constructorName];if(!n)throw new Error(`Constructor ${e._constructorName} is not in registry`);Object.setPrototypeOf(e,n.prototype),delete e._constructorName}}),o(n,(e,t,n)=>{if(null!=e?._instanceReference){const s=r.get(e._instanceReference);if(!s)throw new Error(`Unknown _instanceReference: ${e._instanceReference}`);t[n]=s}}),n}function o(e,t,n=new WeakSet,r=null,s=null,a=new Set,i=new Set,c=new WeakSet){if("object"!=typeof e||null===e)return{duplicates:a,circular:i};if(n.has(e))return a.add(e),void(c.has(e)&&i.add(e));if(n.add(e),c.add(e),t?.(e,r,s),Array.isArray(e))for(let r=0;r<e.length;r++)o(e[r],t,n,e,r,a,i,c);else for(const r of Object.keys(e))o(e[r],t,n,e,r,a,i,c);return c.delete(e),{duplicates:a,circular:i}}n.r(t),n.d(t,{deserialize:()=>s,serialize:()=>r})},4110(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.hasCORS=void 0;let n=!1;try{n="undefined"!=typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(e){}t.hasCORS=n},8661(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.encode=function(e){let t="";for(let n in e)e.hasOwnProperty(n)&&(t.length&&(t+="&"),t+=encodeURIComponent(n)+"="+encodeURIComponent(e[n]));return t},t.decode=function(e){let t={},n=e.split("&");for(let e=0,r=n.length;e<r;e++){let r=n[e].split("=");t[decodeURIComponent(r[0])]=decodeURIComponent(r[1])}return t}},1015(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.parse=function(e){if(e.length>8e3)throw"URI too long";const t=e,s=e.indexOf("["),o=e.indexOf("]");-1!=s&&-1!=o&&(e=e.substring(0,s)+e.substring(s,o).replace(/:/g,";")+e.substring(o,e.length));let a=n.exec(e||""),i={},c=14;for(;c--;)i[r[c]]=a[c]||"";return-1!=s&&-1!=o&&(i.source=t,i.host=i.host.substring(1,i.host.length-1).replace(/;/g,":"),i.authority=i.authority.replace("[","").replace("]","").replace(/;/g,":"),i.ipv6uri=!0),i.pathNames=function(e,t){const n=t.replace(/\/{2,9}/g,"/").split("/");return"/"!=t.slice(0,1)&&0!==t.length||n.splice(0,1),"/"==t.slice(-1)&&n.splice(n.length-1,1),n}(0,i.path),i.queryKey=function(e,t){const n={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(e,t,r){t&&(n[t]=r)}),n}(0,i.query),i};const n=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,r=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"]},4624(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.defaultBinaryType=t.globalThisShim=t.nextTick=void 0,t.createCookieJar=function(){},t.nextTick="function"==typeof Promise&&"function"==typeof Promise.resolve?e=>Promise.resolve().then(e):(e,t)=>t(e,0),t.globalThisShim="undefined"!=typeof self?self:"undefined"!=typeof window?window:Function("return this")(),t.defaultBinaryType="arraybuffer"},4956(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.WebTransport=t.WebSocket=t.NodeWebSocket=t.XHR=t.NodeXHR=t.Fetch=t.nextTick=t.parse=t.installTimerFunctions=t.transports=t.TransportError=t.Transport=t.protocol=t.SocketWithUpgrade=t.SocketWithoutUpgrade=t.Socket=void 0;const r=n(8223);Object.defineProperty(t,"Socket",{enumerable:!0,get:function(){return r.Socket}});var s=n(8223);Object.defineProperty(t,"SocketWithoutUpgrade",{enumerable:!0,get:function(){return s.SocketWithoutUpgrade}}),Object.defineProperty(t,"SocketWithUpgrade",{enumerable:!0,get:function(){return s.SocketWithUpgrade}}),t.protocol=r.Socket.protocol;var o=n(4689);Object.defineProperty(t,"Transport",{enumerable:!0,get:function(){return o.Transport}}),Object.defineProperty(t,"TransportError",{enumerable:!0,get:function(){return o.TransportError}});var a=n(9419);Object.defineProperty(t,"transports",{enumerable:!0,get:function(){return a.transports}});var i=n(5374);Object.defineProperty(t,"installTimerFunctions",{enumerable:!0,get:function(){return i.installTimerFunctions}});var c=n(1015);Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return c.parse}});var l=n(4624);Object.defineProperty(t,"nextTick",{enumerable:!0,get:function(){return l.nextTick}});var u=n(8209);Object.defineProperty(t,"Fetch",{enumerable:!0,get:function(){return u.Fetch}});var p=n(2071);Object.defineProperty(t,"NodeXHR",{enumerable:!0,get:function(){return p.XHR}});var d=n(2071);Object.defineProperty(t,"XHR",{enumerable:!0,get:function(){return d.XHR}});var f=n(8716);Object.defineProperty(t,"NodeWebSocket",{enumerable:!0,get:function(){return f.WS}});var h=n(8716);Object.defineProperty(t,"WebSocket",{enumerable:!0,get:function(){return h.WS}});var v=n(4480);Object.defineProperty(t,"WebTransport",{enumerable:!0,get:function(){return v.WT}})},8223(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Socket=t.SocketWithUpgrade=t.SocketWithoutUpgrade=void 0;const s=n(9419),o=n(5374),a=n(8661),i=n(1015),c=n(4454),l=n(6376),u=n(4624),p=(0,r(n(7833)).default)("engine.io-client:socket"),d="function"==typeof addEventListener&&"function"==typeof removeEventListener,f=[];d&&addEventListener("offline",()=>{p("closing %d connection(s) because the network was lost",f.length),f.forEach(e=>e())},!1);class h extends c.Emitter{constructor(e,t){if(super(),this.binaryType=u.defaultBinaryType,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&"object"==typeof e&&(t=e,e=null),e){const n=(0,i.parse)(e);t.hostname=n.host,t.secure="https"===n.protocol||"wss"===n.protocol,t.port=n.port,n.query&&(t.query=n.query)}else t.host&&(t.hostname=(0,i.parse)(t.host).host);(0,o.installTimerFunctions)(this,t),this.secure=null!=t.secure?t.secure:"undefined"!=typeof location&&"https:"===location.protocol,t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||("undefined"!=typeof location?location.hostname:"localhost"),this.port=t.port||("undefined"!=typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(e=>{const t=e.prototype.name;this.transports.push(t),this._transportsByName[t]=e}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"==typeof this.opts.query&&(this.opts.query=(0,a.decode)(this.opts.query)),d&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(p("adding listener for the 'offline' event"),this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},f.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=(0,u.createCookieJar)()),this._open()}createTransport(e){p('creating transport "%s"',e);const t=Object.assign({},this.opts.query);t.EIO=l.protocol,t.transport=e,this.id&&(t.sid=this.id);const n=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return p("options: %j",n),new this._transportsByName[e](n)}_open(){if(0===this.transports.length)return void this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);const e=this.opts.rememberUpgrade&&h.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket")?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){p("setting transport %s",e.name),this.transport&&(p("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",e=>this._onClose("transport close",e))}onOpen(){p("socket open"),this.readyState="open",h.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush()}_onPacket(e){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(p('socket receive: type "%s", data "%s"',e.type,e.data),this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data)}else p('packet received with socket readyState "%s"',this.readyState)}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),"closed"!==this.readyState&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();p("flushing %d packets in socket",e.length),this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;let e=1;for(let t=0;t<this.writeBuffer.length;t++){const n=this.writeBuffer[t].data;if(n&&(e+=(0,o.byteLength)(n)),t>0&&e>this._maxPayload)return p("only send %d out of %d packets",t,this.writeBuffer.length),this.writeBuffer.slice(0,t);e+=2}return p("payload size is %d (max: %d)",e,this._maxPayload),this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(p("throttled timer detected, scheduling connection close"),this._pingTimeoutTime=0,(0,u.nextTick)(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,n){return this._sendPacket("message",e,t,n),this}send(e,t,n){return this._sendPacket("message",e,t,n),this}_sendPacket(e,t,n,r){if("function"==typeof t&&(r=t,t=void 0),"function"==typeof n&&(r=n,n=null),"closing"===this.readyState||"closed"===this.readyState)return;(n=n||{}).compress=!1!==n.compress;const s={type:e,data:t,options:n};this.emitReserved("packetCreate",s),this.writeBuffer.push(s),r&&this.once("flush",r),this.flush()}close(){const e=()=>{this._onClose("forced close"),p("socket closing - telling transport to close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},n=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?n():e()}):this.upgrading?n():e()),this}_onError(e){if(p("socket error %j",e),h.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&"opening"===this.readyState)return p("trying next transport"),this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState){if(p('socket close with reason: "%s"',e),this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),d&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const e=f.indexOf(this._offlineEventListener);-1!==e&&(p("removing listener for the 'offline' event"),f.splice(e,1))}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}t.SocketWithoutUpgrade=h,h.protocol=l.protocol;class v extends h{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),"open"===this.readyState&&this.opts.upgrade){p("starting upgrade probes");for(let e=0;e<this._upgrades.length;e++)this._probe(this._upgrades[e])}}_probe(e){p('probing transport "%s"',e);let t=this.createTransport(e),n=!1;h.priorWebsocketSuccess=!1;const r=()=>{n||(p('probe transport "%s" opened',e),t.send([{type:"ping",data:"probe"}]),t.once("packet",r=>{if(!n)if("pong"===r.type&&"probe"===r.data){if(p('probe transport "%s" pong',e),this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;h.priorWebsocketSuccess="websocket"===t.name,p('pausing current transport "%s"',this.transport.name),this.transport.pause(()=>{n||"closed"!==this.readyState&&(p("changing transport and sending upgrade packet"),l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{p('probe transport "%s" failed',e);const n=new Error("probe error");n.transport=t.name,this.emitReserved("upgradeError",n)}}))};function s(){n||(n=!0,l(),t.close(),t=null)}const o=n=>{const r=new Error("probe error: "+n);r.transport=t.name,s(),p('probe transport "%s" failed because of error: %s',e,n),this.emitReserved("upgradeError",r)};function a(){o("transport closed")}function i(){o("socket closed")}function c(e){t&&e.name!==t.name&&(p('"%s" works - aborting "%s"',e.name,t.name),s())}const l=()=>{t.removeListener("open",r),t.removeListener("error",o),t.removeListener("close",a),this.off("close",i),this.off("upgrading",c)};t.once("open",r),t.once("error",o),t.once("close",a),this.once("close",i),this.once("upgrading",c),-1!==this._upgrades.indexOf("webtransport")&&"webtransport"!==e?this.setTimeoutFn(()=>{n||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let n=0;n<e.length;n++)~this.transports.indexOf(e[n])&&t.push(e[n]);return t}}t.SocketWithUpgrade=v,t.Socket=class extends v{constructor(e,t={}){const n="object"==typeof e?e:t;(!n.transports||n.transports&&"string"==typeof n.transports[0])&&(n.transports=(n.transports||["polling","websocket","webtransport"]).map(e=>s.transports[e]).filter(e=>!!e)),super(e,n)}}},4689(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Transport=t.TransportError=void 0;const s=n(6376),o=n(4454),a=n(5374),i=n(8661),c=(0,r(n(7833)).default)("engine.io-client:transport");class l extends Error{constructor(e,t,n){super(e),this.description=t,this.context=n,this.type="TransportError"}}t.TransportError=l;class u extends o.Emitter{constructor(e){super(),this.writable=!1,(0,a.installTimerFunctions)(this,e),this.opts=e,this.query=e.query,this.socket=e.socket,this.supportsBinary=!e.forceBase64}onError(e,t,n){return super.emitReserved("error",new l(e,t,n)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this}send(e){"open"===this.readyState?this.write(e):c("transport is not open, discarding packets")}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=(0,s.decodePacket)(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return-1===e.indexOf(":")?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&443!==Number(this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""}_query(e){const t=(0,i.encode)(e);return t.length?"?"+t:""}}t.Transport=u},9419(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.transports=void 0;const r=n(2071),s=n(8716),o=n(4480);t.transports={websocket:s.WS,webtransport:o.WT,polling:r.XHR}},8209(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.Fetch=void 0;const r=n(528);class s extends r.Polling{doPoll(){this._fetch().then(e=>{if(!e.ok)return this.onError("fetch read error",e.status,e);e.text().then(e=>this.onData(e))}).catch(e=>{this.onError("fetch read error",e)})}doWrite(e,t){this._fetch(e).then(e=>{if(!e.ok)return this.onError("fetch write error",e.status,e);t()}).catch(e=>{this.onError("fetch write error",e)})}_fetch(e){var t;const n=void 0!==e,r=new Headers(this.opts.extraHeaders);return n&&r.set("content-type","text/plain;charset=UTF-8"),null===(t=this.socket._cookieJar)||void 0===t||t.appendCookies(r),fetch(this.uri(),{method:n?"POST":"GET",body:n?e:null,headers:r,credentials:this.opts.withCredentials?"include":"omit"}).then(e=>{var t;return null===(t=this.socket._cookieJar)||void 0===t||t.parseCookies(e.headers.getSetCookie()),e})}}t.Fetch=s},2071(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.XHR=t.Request=t.BaseXHR=void 0;const s=n(528),o=n(4454),a=n(5374),i=n(4624),c=n(4110),l=(0,r(n(7833)).default)("engine.io-client:polling");function u(){}class p extends s.Polling{constructor(e){if(super(e),"undefined"!=typeof location){const t="https:"===location.protocol;let n=location.port;n||(n=t?"443":"80"),this.xd="undefined"!=typeof location&&e.hostname!==location.hostname||n!==e.port}}doWrite(e,t){const n=this.request({method:"POST",data:e});n.on("success",t),n.on("error",(e,t)=>{this.onError("xhr post error",e,t)})}doPoll(){l("xhr poll");const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(e,t)=>{this.onError("xhr poll error",e,t)}),this.pollXhr=e}}t.BaseXHR=p;class d extends o.Emitter{constructor(e,t,n){super(),this.createRequest=e,(0,a.installTimerFunctions)(this,n),this._opts=n,this._method=n.method||"GET",this._uri=t,this._data=void 0!==n.data?n.data:null,this._create()}_create(){var e;const t=(0,a.pick)(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const n=this._xhr=this.createRequest(t);try{l("xhr open %s: %s",this._method,this._uri),n.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){n.setDisableHeaderCheck&&n.setDisableHeaderCheck(!0);for(let e in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(e)&&n.setRequestHeader(e,this._opts.extraHeaders[e])}}catch(e){}if("POST"===this._method)try{n.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(e){}try{n.setRequestHeader("Accept","*/*")}catch(e){}null===(e=this._opts.cookieJar)||void 0===e||e.addCookies(n),"withCredentials"in n&&(n.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(n.timeout=this._opts.requestTimeout),n.onreadystatechange=()=>{var e;3===n.readyState&&(null===(e=this._opts.cookieJar)||void 0===e||e.parseCookies(n.getResponseHeader("set-cookie"))),4===n.readyState&&(200===n.status||1223===n.status?this._onLoad():this.setTimeoutFn(()=>{this._onError("number"==typeof n.status?n.status:0)},0))},l("xhr data %s",this._data),n.send(this._data)}catch(e){return void this.setTimeoutFn(()=>{this._onError(e)},0)}"undefined"!=typeof document&&(this._index=d.requestsCount++,d.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(void 0!==this._xhr&&null!==this._xhr){if(this._xhr.onreadystatechange=u,e)try{this._xhr.abort()}catch(e){}"undefined"!=typeof document&&delete d.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;null!==e&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}if(t.Request=d,d.requestsCount=0,d.requests={},"undefined"!=typeof document)if("function"==typeof attachEvent)attachEvent("onunload",f);else if("function"==typeof addEventListener){const e="onpagehide"in i.globalThisShim?"pagehide":"unload";addEventListener(e,f,!1)}function f(){for(let e in d.requests)d.requests.hasOwnProperty(e)&&d.requests[e].abort()}const h=function(){const e=v({xdomain:!1});return e&&null!==e.responseType}();function v(e){const t=e.xdomain;try{if("undefined"!=typeof XMLHttpRequest&&(!t||c.hasCORS))return new XMLHttpRequest}catch(e){}if(!t)try{return new(i.globalThisShim[["Active"].concat("Object").join("X")])("Microsoft.XMLHTTP")}catch(e){}}t.XHR=class extends p{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=h&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new d(v,this.uri(),e)}}},528(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Polling=void 0;const s=n(4689),o=n(5374),a=n(6376),i=(0,r(n(7833)).default)("engine.io-client:polling");class c extends s.Transport{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(e){this.readyState="pausing";const t=()=>{i("paused"),this.readyState="paused",e()};if(this._polling||!this.writable){let e=0;this._polling&&(i("we are currently polling - waiting to pause"),e++,this.once("pollComplete",function(){i("pre-pause polling complete"),--e||t()})),this.writable||(i("we are currently writing - waiting to pause"),e++,this.once("drain",function(){i("pre-pause writing complete"),--e||t()}))}else t()}_poll(){i("polling"),this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){i("polling got data %s",e),(0,a.decodePayload)(e,this.socket.binaryType).forEach(e=>{if("opening"===this.readyState&&"open"===e.type&&this.onOpen(),"close"===e.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(e)}),"closed"!==this.readyState&&(this._polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState?this._poll():i('ignoring poll - transport state "%s"',this.readyState))}doClose(){const e=()=>{i("writing close packet"),this.write([{type:"close"}])};"open"===this.readyState?(i("transport open - closing"),e()):(i("transport not open - deferring close"),this.once("open",e))}write(e){this.writable=!1,(0,a.encodePayload)(e,e=>{this.doWrite(e,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=(0,o.randomString)()),this.supportsBinary||t.sid||(t.b64=1),this.createUri(e,t)}}t.Polling=c},8716(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WS=t.BaseWS=void 0;const s=n(4689),o=n(5374),a=n(6376),i=n(4624),c=(0,r(n(7833)).default)("engine.io-client:websocket"),l="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();class u extends s.Transport{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,n=l?{}:(0,o.pick)(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(n.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,n)}catch(e){return this.emitReserved("error",e)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const n=e[t],r=t===e.length-1;(0,a.encodePacket)(n,this.supportsBinary,e=>{try{this.doWrite(n,e)}catch(e){c("websocket closed before onclose event")}r&&(0,i.nextTick)(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){void 0!==this.ws&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=(0,o.randomString)()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}t.BaseWS=u;const p=i.globalThisShim.WebSocket||i.globalThisShim.MozWebSocket;t.WS=class extends u{createSocket(e,t,n){return l?new p(e,t,n):t?new p(e,t):new p(e)}doWrite(e,t){this.ws.send(t)}}},4480(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WT=void 0;const s=n(4689),o=n(4624),a=n(6376),i=(0,r(n(7833)).default)("engine.io-client:webtransport");class c extends s.Transport{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{i("transport closed gracefully"),this.onClose()}).catch(e=>{i("transport closed due to %s",e),this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=(0,a.createPacketDecoderStream)(Number.MAX_SAFE_INTEGER,this.socket.binaryType),n=e.readable.pipeThrough(t).getReader(),r=(0,a.createPacketEncoderStream)();r.readable.pipeTo(e.writable),this._writer=r.writable.getWriter();const s=()=>{n.read().then(({done:e,value:t})=>{e?i("session is closed"):(i("received chunk: %o",t),this.onPacket(t),s())}).catch(e=>{i("an error occurred while reading: %s",e)})};s();const o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this._writer.write(o).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const n=e[t],r=t===e.length-1;this._writer.write(n).then(()=>{r&&(0,o.nextTick)(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;null===(e=this._transport)||void 0===e||e.close()}}t.WT=c},5374(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.pick=function(e,...t){return t.reduce((t,n)=>(e.hasOwnProperty(n)&&(t[n]=e[n]),t),{})},t.installTimerFunctions=function(e,t){t.useNativeTimers?(e.setTimeoutFn=s.bind(r.globalThisShim),e.clearTimeoutFn=o.bind(r.globalThisShim)):(e.setTimeoutFn=r.globalThisShim.setTimeout.bind(r.globalThisShim),e.clearTimeoutFn=r.globalThisShim.clearTimeout.bind(r.globalThisShim))},t.byteLength=function(e){return"string"==typeof e?function(e){let t=0,n=0;for(let r=0,s=e.length;r<s;r++)t=e.charCodeAt(r),t<128?n+=1:t<2048?n+=2:t<55296||t>=57344?n+=3:(r++,n+=4);return n}(e):Math.ceil(1.33*(e.byteLength||e.size))},t.randomString=function(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)};const r=n(4624),s=r.globalThisShim.setTimeout,o=r.globalThisShim.clearTimeout},2046(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.ERROR_PACKET=t.PACKET_TYPES_REVERSE=t.PACKET_TYPES=void 0;const n=Object.create(null);t.PACKET_TYPES=n,n.open="0",n.close="1",n.ping="2",n.pong="3",n.message="4",n.upgrade="5",n.noop="6";const r=Object.create(null);t.PACKET_TYPES_REVERSE=r,Object.keys(n).forEach(e=>{r[n[e]]=e}),t.ERROR_PACKET={type:"error",data:"parser error"}},2745(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.decode=t.encode=void 0;const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="undefined"==typeof Uint8Array?[]:new Uint8Array(256);for(let e=0;e<64;e++)r[n.charCodeAt(e)]=e;t.encode=e=>{let t,r=new Uint8Array(e),s=r.length,o="";for(t=0;t<s;t+=3)o+=n[r[t]>>2],o+=n[(3&r[t])<<4|r[t+1]>>4],o+=n[(15&r[t+1])<<2|r[t+2]>>6],o+=n[63&r[t+2]];return s%3==2?o=o.substring(0,o.length-1)+"=":s%3==1&&(o=o.substring(0,o.length-2)+"=="),o},t.decode=e=>{let t,n,s,o,a,i=.75*e.length,c=e.length,l=0;"="===e[e.length-1]&&(i--,"="===e[e.length-2]&&i--);const u=new ArrayBuffer(i),p=new Uint8Array(u);for(t=0;t<c;t+=4)n=r[e.charCodeAt(t)],s=r[e.charCodeAt(t+1)],o=r[e.charCodeAt(t+2)],a=r[e.charCodeAt(t+3)],p[l++]=n<<2|s>>4,p[l++]=(15&s)<<4|o>>2,p[l++]=(3&o)<<6|63&a;return u}},2662(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.decodePacket=void 0;const r=n(2046),s=n(2745),o="function"==typeof ArrayBuffer;t.decodePacket=(e,t)=>{if("string"!=typeof e)return{type:"message",data:i(e,t)};const n=e.charAt(0);return"b"===n?{type:"message",data:a(e.substring(1),t)}:r.PACKET_TYPES_REVERSE[n]?e.length>1?{type:r.PACKET_TYPES_REVERSE[n],data:e.substring(1)}:{type:r.PACKET_TYPES_REVERSE[n]}:r.ERROR_PACKET};const a=(e,t)=>{if(o){const n=(0,s.decode)(e);return i(n,t)}return{base64:!0,data:e}},i=(e,t)=>"blob"===t?e instanceof Blob?e:new Blob([e]):e instanceof ArrayBuffer?e:e.buffer},2686(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.encodePacket=void 0,t.encodePacketToBinary=function(e,t){return s&&e.data instanceof Blob?e.data.arrayBuffer().then(l).then(t):o&&(e.data instanceof ArrayBuffer||a(e.data))?t(l(e.data)):void i(e,!1,e=>{u||(u=new TextEncoder),t(u.encode(e))})};const r=n(2046),s="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),o="function"==typeof ArrayBuffer,a=e=>"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,i=({type:e,data:t},n,i)=>s&&t instanceof Blob?n?i(t):c(t,i):o&&(t instanceof ArrayBuffer||a(t))?n?i(t):c(new Blob([t]),i):i(r.PACKET_TYPES[e]+(t||""));t.encodePacket=i;const c=(e,t)=>{const n=new FileReader;return n.onload=function(){const e=n.result.split(",")[1];t("b"+(e||""))},n.readAsDataURL(e)};function l(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let u},6376(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.decodePayload=t.decodePacket=t.encodePayload=t.encodePacket=t.protocol=void 0,t.createPacketEncoderStream=function(){return new TransformStream({transform(e,t){(0,r.encodePacketToBinary)(e,n=>{const r=n.length;let s;if(r<126)s=new Uint8Array(1),new DataView(s.buffer).setUint8(0,r);else if(r<65536){s=new Uint8Array(3);const e=new DataView(s.buffer);e.setUint8(0,126),e.setUint16(1,r)}else{s=new Uint8Array(9);const e=new DataView(s.buffer);e.setUint8(0,127),e.setBigUint64(1,BigInt(r))}e.data&&"string"!=typeof e.data&&(s[0]|=128),t.enqueue(s),t.enqueue(n)})}})},t.createPacketDecoderStream=function(e,t){i||(i=new TextDecoder);const n=[];let r=0,a=-1,u=!1;return new TransformStream({transform(p,d){for(n.push(p);;){if(0===r){if(c(n)<1)break;const e=l(n,1);u=!(128&~e[0]),a=127&e[0],r=a<126?3:126===a?1:2}else if(1===r){if(c(n)<2)break;const e=l(n,2);a=new DataView(e.buffer,e.byteOffset,e.length).getUint16(0),r=3}else if(2===r){if(c(n)<8)break;const e=l(n,8),t=new DataView(e.buffer,e.byteOffset,e.length),s=t.getUint32(0);if(s>Math.pow(2,21)-1){d.enqueue(o.ERROR_PACKET);break}a=s*Math.pow(2,32)+t.getUint32(4),r=3}else{if(c(n)<a)break;const e=l(n,a);d.enqueue((0,s.decodePacket)(u?e:i.decode(e),t)),r=0}if(0===a||a>e){d.enqueue(o.ERROR_PACKET);break}}}})};const r=n(2686);Object.defineProperty(t,"encodePacket",{enumerable:!0,get:function(){return r.encodePacket}});const s=n(2662);Object.defineProperty(t,"decodePacket",{enumerable:!0,get:function(){return s.decodePacket}});const o=n(2046),a=String.fromCharCode(30);let i;function c(e){return e.reduce((e,t)=>e+t.length,0)}function l(e,t){if(e[0].length===t)return e.shift();const n=new Uint8Array(t);let r=0;for(let s=0;s<t;s++)n[s]=e[0][r++],r===e[0].length&&(e.shift(),r=0);return e.length&&r<e[0].length&&(e[0]=e[0].slice(r)),n}t.encodePayload=(e,t)=>{const n=e.length,s=new Array(n);let o=0;e.forEach((e,i)=>{(0,r.encodePacket)(e,!1,e=>{s[i]=e,++o===n&&t(s.join(a))})})},t.decodePayload=(e,t)=>{const n=e.split(a),r=[];for(let e=0;e<n.length;e++){const o=(0,s.decodePacket)(n[e],t);if(r.push(o),"error"===o.type)break}return r},t.protocol=4},7035(e,t){const{parse:n,stringify:r}=JSON,{keys:s}=Object,o=String,a="string",i={},c="object",l=(e,t)=>t,u=e=>e instanceof o?o(e):e,p=(e,t)=>typeof t===a?new o(t):t,d=(e,t,n,r)=>{const a=[];for(let l=s(n),{length:u}=l,p=0;p<u;p++){const s=l[p],u=n[s];if(u instanceof o){const o=e[u];typeof o!==c||t.has(o)?n[s]=r.call(n,s,o):(t.add(o),n[s]=i,a.push({k:s,a:[e,t,o,r]}))}else n[s]!==i&&(n[s]=r.call(n,s,u))}for(let{length:e}=a,t=0;t<e;t++){const{k:e,a:s}=a[t];n[e]=r.call(n,e,d.apply(null,s))}return n},f=(e,t,n)=>{const r=o(t.push(n)-1);return e.set(n,r),r},h=(e,t)=>{const r=n(e,p).map(u),s=r[0],o=t||l,a=typeof s===c&&s?d(r,new Set,s,o):s;return o.call({"":a},"",a)};t.parse=h;const v=(e,t,n)=>{const s=t&&typeof t===c?(e,n)=>""===e||-1<t.indexOf(e)?n:void 0:t||l,o=new Map,i=[],u=[];let p=+f(o,i,s.call({"":e},"",e)),d=!p;for(;p<i.length;)d=!0,u[p]=r(i[p++],h,n);return"["+u.join(",")+"]";function h(e,t){if(d)return d=!d,t;const n=s.call(this,e,t);switch(typeof n){case c:if(null===n)return n;case a:return o.get(n)||f(o,i,n)}return n}};t.stringify=v,t.toJSON=e=>n(v(e)),t.fromJSON=e=>h(r(e))},5042(e){e.exports={nanoid:(e=21)=>{let t="",n=0|e;for(;n--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64*Math.random()|0];return t},customAlphabet:(e,t=21)=>(n=t)=>{let r="",s=0|n;for(;s--;)r+=e[Math.random()*e.length|0];return r}}},7743(e,t){function n(e){e=e||{},this.ms=e.min||100,this.max=e.max||1e4,this.factor=e.factor||2,this.jitter=e.jitter>0&&e.jitter<=1?e.jitter:0,this.attempts=0}Object.defineProperty(t,"__esModule",{value:!0}),t.Backoff=n,n.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),n=Math.floor(t*this.jitter*e);e=1&Math.floor(10*t)?e+n:e-n}return 0|Math.min(e,this.max)},n.prototype.reset=function(){this.attempts=0},n.prototype.setMin=function(e){this.ms=e},n.prototype.setMax=function(e){this.max=e},n.prototype.setJitter=function(e){this.jitter=e}},8007(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WebTransport=t.WebSocket=t.NodeWebSocket=t.XHR=t.NodeXHR=t.Fetch=t.Socket=t.Manager=t.protocol=void 0,t.io=l,t.connect=l,t.default=l;const s=n(6894),o=n(3776);Object.defineProperty(t,"Manager",{enumerable:!0,get:function(){return o.Manager}});const a=n(6214);Object.defineProperty(t,"Socket",{enumerable:!0,get:function(){return a.Socket}});const i=(0,r(n(7833)).default)("socket.io-client"),c={};function l(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};const n=(0,s.url)(e,t.path||"/socket.io"),r=n.source,a=n.id,l=n.path,u=c[a]&&l in c[a].nsps;let p;return t.forceNew||t["force new connection"]||!1===t.multiplex||u?(i("ignoring socket cache for %s",r),p=new o.Manager(r,t)):(c[a]||(i("new io instance for %s",r),c[a]=new o.Manager(r,t)),p=c[a]),n.query&&!t.query&&(t.query=n.queryKey),p.socket(n.path,t)}Object.assign(l,{Manager:o.Manager,Socket:a.Socket,io:l,connect:l});var u=n(4627);Object.defineProperty(t,"protocol",{enumerable:!0,get:function(){return u.protocol}});var p=n(4956);Object.defineProperty(t,"Fetch",{enumerable:!0,get:function(){return p.Fetch}}),Object.defineProperty(t,"NodeXHR",{enumerable:!0,get:function(){return p.NodeXHR}}),Object.defineProperty(t,"XHR",{enumerable:!0,get:function(){return p.XHR}}),Object.defineProperty(t,"NodeWebSocket",{enumerable:!0,get:function(){return p.NodeWebSocket}}),Object.defineProperty(t,"WebSocket",{enumerable:!0,get:function(){return p.WebSocket}}),Object.defineProperty(t,"WebTransport",{enumerable:!0,get:function(){return p.WebTransport}}),e.exports=l},3776(e,t,n){var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var s=Object.getOwnPropertyDescriptor(t,n);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,s)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return s(t,e),t},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Manager=void 0;const i=n(4956),c=n(6214),l=o(n(4627)),u=n(5942),p=n(7743),d=n(4454),f=(0,a(n(7833)).default)("socket.io-client:manager");class h extends d.Emitter{constructor(e,t){var n;super(),this.nsps={},this.subs=[],e&&"object"==typeof e&&(t=e,e=void 0),(t=t||{}).path=t.path||"/socket.io",this.opts=t,(0,i.installTimerFunctions)(this,t),this.reconnection(!1!==t.reconnection),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor(null!==(n=t.randomizationFactor)&&void 0!==n?n:.5),this.backoff=new p.Backoff({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==t.timeout?2e4:t.timeout),this._readyState="closed",this.uri=e;const r=t.parser||l;this.encoder=new r.Encoder,this.decoder=new r.Decoder,this._autoConnect=!1!==t.autoConnect,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return void 0===e?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return void 0===e?this._reconnectionDelay:(this._reconnectionDelay=e,null===(t=this.backoff)||void 0===t||t.setMin(e),this)}randomizationFactor(e){var t;return void 0===e?this._randomizationFactor:(this._randomizationFactor=e,null===(t=this.backoff)||void 0===t||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return void 0===e?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,null===(t=this.backoff)||void 0===t||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(e){if(f("readyState %s",this._readyState),~this._readyState.indexOf("open"))return this;f("opening %s",this.uri),this.engine=new i.Socket(this.uri,this.opts);const t=this.engine,n=this;this._readyState="opening",this.skipReconnect=!1;const r=(0,u.on)(t,"open",function(){n.onopen(),e&&e()}),s=t=>{f("error"),this.cleanup(),this._readyState="closed",this.emitReserved("error",t),e?e(t):this.maybeReconnectOnOpen()},o=(0,u.on)(t,"error",s);if(!1!==this._timeout){const e=this._timeout;f("connect attempt will timeout after %d",e);const n=this.setTimeoutFn(()=>{f("connect attempt timed out after %d",e),r(),s(new Error("timeout")),t.close()},e);this.opts.autoUnref&&n.unref(),this.subs.push(()=>{this.clearTimeoutFn(n)})}return this.subs.push(r),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){f("open"),this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push((0,u.on)(e,"ping",this.onping.bind(this)),(0,u.on)(e,"data",this.ondata.bind(this)),(0,u.on)(e,"error",this.onerror.bind(this)),(0,u.on)(e,"close",this.onclose.bind(this)),(0,u.on)(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(e){this.onclose("parse error",e)}}ondecoded(e){(0,i.nextTick)(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){f("error",e),this.emitReserved("error",e)}socket(e,t){let n=this.nsps[e];return n?this._autoConnect&&!n.active&&n.connect():(n=new c.Socket(this,e,t),this.nsps[e]=n),n}_destroy(e){const t=Object.keys(this.nsps);for(const e of t)if(this.nsps[e].active)return void f("socket %s is still active, skipping close",e);this._close()}_packet(e){f("writing packet %j",e);const t=this.encoder.encode(e);for(let n=0;n<t.length;n++)this.engine.write(t[n],e.options)}cleanup(){f("cleanup"),this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){f("disconnect"),this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var n;f("closed due to %s",e),this.cleanup(),null===(n=this.engine)||void 0===n||n.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)f("reconnect failed"),this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();f("will wait %dms before reconnect attempt",t),this._reconnecting=!0;const n=this.setTimeoutFn(()=>{e.skipReconnect||(f("attempting reconnect"),this.emitReserved("reconnect_attempt",e.backoff.attempts),e.skipReconnect||e.open(t=>{t?(f("reconnect attempt error"),e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",t)):(f("reconnect success"),e.onreconnect())}))},t);this.opts.autoUnref&&n.unref(),this.subs.push(()=>{this.clearTimeoutFn(n)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}t.Manager=h},5942(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.on=function(e,t,n){return e.on(t,n),function(){e.off(t,n)}}},6214(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Socket=void 0;const s=n(4627),o=n(5942),a=n(4454),i=(0,r(n(7833)).default)("socket.io-client:socket"),c=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class l extends a.Emitter{constructor(e,t,n){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=t,n&&n.auth&&(this.auth=n.auth),this._opts=Object.assign({},n),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const e=this.io;this.subs=[(0,o.on)(e,"open",this.onopen.bind(this)),(0,o.on)(e,"packet",this.onpacket.bind(this)),(0,o.on)(e,"error",this.onerror.bind(this)),(0,o.on)(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected||(this.subEvents(),this.io._reconnecting||this.io.open(),"open"===this.io._readyState&&this.onopen()),this}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...t){var n,r,o;if(c.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(t.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(t),this;const a={type:s.PacketType.EVENT,data:t,options:{}};if(a.options.compress=!1!==this.flags.compress,"function"==typeof t[t.length-1]){const e=this.ids++;i("emitting packet with ack id %d",e);const n=t.pop();this._registerAckCallback(e,n),a.id=e}const l=null===(r=null===(n=this.io.engine)||void 0===n?void 0:n.transport)||void 0===r?void 0:r.writable,u=this.connected&&!(null===(o=this.io.engine)||void 0===o?void 0:o._hasPingExpired());return this.flags.volatile&&!l?i("discard packet as the transport is not currently writable"):u?(this.notifyOutgoingListeners(a),this.packet(a)):this.sendBuffer.push(a),this.flags={},this}_registerAckCallback(e,t){var n;const r=null!==(n=this.flags.timeout)&&void 0!==n?n:this._opts.ackTimeout;if(void 0===r)return void(this.acks[e]=t);const s=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let t=0;t<this.sendBuffer.length;t++)this.sendBuffer[t].id===e&&(i("removing packet with ack id %d from the buffer",e),this.sendBuffer.splice(t,1));i("event with ack id %d has timed out after %d ms",e,r),t.call(this,new Error("operation has timed out"))},r),o=(...e)=>{this.io.clearTimeoutFn(s),t.apply(this,e)};o.withError=!0,this.acks[e]=o}emitWithAck(e,...t){return new Promise((n,r)=>{const s=(e,t)=>e?r(e):n(t);s.withError=!0,t.push(s),this.emit(e,...t)})}_addToQueue(e){let t;"function"==typeof e[e.length-1]&&(t=e.pop());const n={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((e,...r)=>n!==this._queue[0]?i("packet [%d] already acknowledged",n.id):(null!==e?n.tryCount>this._opts.retries&&(i("packet [%d] is discarded after %d tries",n.id,n.tryCount),this._queue.shift(),t&&t(e)):(i("packet [%d] was successfully sent",n.id),this._queue.shift(),t&&t(null,...r)),n.pending=!1,this._drainQueue())),this._queue.push(n),this._drainQueue()}_drainQueue(e=!1){if(i("draining queue"),!this.connected||0===this._queue.length)return;const t=this._queue[0];!t.pending||e?(t.pending=!0,t.tryCount++,i("sending packet [%d] (try n°%d)",t.id,t.tryCount),this.flags=t.flags,this.emit.apply(this,t.args)):i("packet [%d] has already been sent and is waiting for an ack",t.id)}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){i("transport is open - connecting"),"function"==typeof this.auth?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:s.PacketType.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){i("close (%s)",e),this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(t=>String(t.id)===e)){const t=this.acks[e];delete this.acks[e],t.withError&&t.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case s.PacketType.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case s.PacketType.EVENT:case s.PacketType.BINARY_EVENT:this.onevent(e);break;case s.PacketType.ACK:case s.PacketType.BINARY_ACK:this.onack(e);break;case s.PacketType.DISCONNECT:this.ondisconnect();break;case s.PacketType.CONNECT_ERROR:this.destroy();const t=new Error(e.data.message);t.data=e.data.data,this.emitReserved("connect_error",t)}}onevent(e){const t=e.data||[];i("emitting event %j",t),null!=e.id&&(i("attaching ack callback to event"),t.push(this.ack(e.id))),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const n of t)n.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&"string"==typeof e[e.length-1]&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let n=!1;return function(...r){n||(n=!0,i("sending ack %j",r),t.packet({type:s.PacketType.ACK,id:e,data:r}))}}onack(e){const t=this.acks[e.id];"function"==typeof t?(delete this.acks[e.id],i("calling ack %s with %j",e.id,e.data),t.withError&&e.data.unshift(null),t.apply(this,e.data)):i("bad ack %s",e.id)}onconnect(e,t){i("socket connected with id %s",e),this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){i("server disconnect (%s)",this.nsp),this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&(i("performing disconnect (%s)",this.nsp),this.packet({type:s.PacketType.DISCONNECT})),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let n=0;n<t.length;n++)if(e===t[n])return t.splice(n,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){const t=this._anyOutgoingListeners;for(let n=0;n<t.length;n++)if(e===t[n])return t.splice(n,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){const t=this._anyOutgoingListeners.slice();for(const n of t)n.apply(this,e.data)}}}t.Socket=l},6894(e,t,n){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.url=function(e,t="",n){let r=e;n=n||"undefined"!=typeof location&&location,null==e&&(e=n.protocol+"//"+n.host),"string"==typeof e&&("/"===e.charAt(0)&&(e="/"===e.charAt(1)?n.protocol+e:n.host+e),/^(https?|wss?):\/\//.test(e)||(o("protocol-less url %s",e),e=void 0!==n?n.protocol+"//"+e:"https://"+e),o("parse %s",e),r=(0,s.parse)(e)),r.port||(/^(http|ws)$/.test(r.protocol)?r.port="80":/^(http|ws)s$/.test(r.protocol)&&(r.port="443")),r.path=r.path||"/";const a=-1!==r.host.indexOf(":")?"["+r.host+"]":r.host;return r.id=r.protocol+"://"+a+":"+r.port+t,r.href=r.protocol+"://"+a+(n&&n.port===r.port?"":":"+r.port),r};const s=n(4956),o=(0,r(n(7833)).default)("socket.io-client:url")},4926(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.deconstructPacket=function(e){const t=[],n=e.data,r=e;return r.data=s(n,t),r.attachments=t.length,{packet:r,buffers:t}},t.reconstructPacket=function(e,t){return e.data=o(e.data,t),delete e.attachments,e};const r=n(9133);function s(e,t){if(!e)return e;if((0,r.isBinary)(e)){const n={_placeholder:!0,num:t.length};return t.push(e),n}if(Array.isArray(e)){const n=new Array(e.length);for(let r=0;r<e.length;r++)n[r]=s(e[r],t);return n}if("object"==typeof e&&!(e instanceof Date)){const n={};for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=s(e[r],t));return n}return e}function o(e,t){if(!e)return e;if(e&&!0===e._placeholder){if("number"==typeof e.num&&e.num>=0&&e.num<t.length)return t[e.num];throw new Error("illegal attachments")}if(Array.isArray(e))for(let n=0;n<e.length;n++)e[n]=o(e[n],t);else if("object"==typeof e)for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(e[n]=o(e[n],t));return e}},4627(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.Decoder=t.Encoder=t.PacketType=t.protocol=void 0,t.isPacketValid=function(e){return"string"==typeof e.nsp&&(void 0===(t=e.id)||p(t))&&function(e,t){switch(e){case c.CONNECT:return void 0===t||d(t);case c.DISCONNECT:return void 0===t;case c.EVENT:return Array.isArray(t)&&("number"==typeof t[0]||"string"==typeof t[0]&&-1===i.indexOf(t[0]));case c.ACK:return Array.isArray(t);case c.CONNECT_ERROR:return"string"==typeof t||d(t);default:return!1}}(e.type,e.data);var t};const r=n(4454),s=n(4926),o=n(9133),a=(0,n(7833).default)("socket.io-parser"),i=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];var c;t.protocol=5,function(e){e[e.CONNECT=0]="CONNECT",e[e.DISCONNECT=1]="DISCONNECT",e[e.EVENT=2]="EVENT",e[e.ACK=3]="ACK",e[e.CONNECT_ERROR=4]="CONNECT_ERROR",e[e.BINARY_EVENT=5]="BINARY_EVENT",e[e.BINARY_ACK=6]="BINARY_ACK"}(c||(t.PacketType=c={})),t.Encoder=class{constructor(e){this.replacer=e}encode(e){return a("encoding packet %j",e),e.type!==c.EVENT&&e.type!==c.ACK||!(0,o.hasBinary)(e)?[this.encodeAsString(e)]:this.encodeAsBinary({type:e.type===c.EVENT?c.BINARY_EVENT:c.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id})}encodeAsString(e){let t=""+e.type;return e.type!==c.BINARY_EVENT&&e.type!==c.BINARY_ACK||(t+=e.attachments+"-"),e.nsp&&"/"!==e.nsp&&(t+=e.nsp+","),null!=e.id&&(t+=e.id),null!=e.data&&(t+=JSON.stringify(e.data,this.replacer)),a("encoded %j as %s",e,t),t}encodeAsBinary(e){const t=(0,s.deconstructPacket)(e),n=this.encodeAsString(t.packet),r=t.buffers;return r.unshift(n),r}};class l extends r.Emitter{constructor(e){super(),this.reviver=e}add(e){let t;if("string"==typeof e){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);const n=t.type===c.BINARY_EVENT;n||t.type===c.BINARY_ACK?(t.type=n?c.EVENT:c.ACK,this.reconstructor=new u(t),0===t.attachments&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else{if(!(0,o.isBinary)(e)&&!e.base64)throw new Error("Unknown type: "+e);if(!this.reconstructor)throw new Error("got binary data when not reconstructing a packet");t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t))}}decodeString(e){let t=0;const n={type:Number(e.charAt(0))};if(void 0===c[n.type])throw new Error("unknown packet type "+n.type);if(n.type===c.BINARY_EVENT||n.type===c.BINARY_ACK){const r=t+1;for(;"-"!==e.charAt(++t)&&t!=e.length;);const s=e.substring(r,t);if(s!=Number(s)||"-"!==e.charAt(t))throw new Error("Illegal attachments");n.attachments=Number(s)}if("/"===e.charAt(t+1)){const r=t+1;for(;++t&&","!==e.charAt(t)&&t!==e.length;);n.nsp=e.substring(r,t)}else n.nsp="/";const r=e.charAt(t+1);if(""!==r&&Number(r)==r){const r=t+1;for(;++t;){const n=e.charAt(t);if(null==n||Number(n)!=n){--t;break}if(t===e.length)break}n.id=Number(e.substring(r,t+1))}if(e.charAt(++t)){const r=this.tryParse(e.substr(t));if(!l.isPayloadValid(n.type,r))throw new Error("invalid payload");n.data=r}return a("decoded %s as %j",e,n),n}tryParse(e){try{return JSON.parse(e,this.reviver)}catch(e){return!1}}static isPayloadValid(e,t){switch(e){case c.CONNECT:return d(t);case c.DISCONNECT:return void 0===t;case c.CONNECT_ERROR:return"string"==typeof t||d(t);case c.EVENT:case c.BINARY_EVENT:return Array.isArray(t)&&("number"==typeof t[0]||"string"==typeof t[0]&&-1===i.indexOf(t[0]));case c.ACK:case c.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}t.Decoder=l;class u{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){const e=(0,s.reconstructPacket)(this.reconPack,this.buffers);return this.finishedReconstruction(),e}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const p=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e};function d(e){return"[object Object]"===Object.prototype.toString.call(e)}},9133(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.isBinary=a,t.hasBinary=function e(t,n){if(!t||"object"!=typeof t)return!1;if(Array.isArray(t)){for(let n=0,r=t.length;n<r;n++)if(e(t[n]))return!0;return!1}if(a(t))return!0;if(t.toJSON&&"function"==typeof t.toJSON&&1===arguments.length)return e(t.toJSON(),!0);for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&e(t[n]))return!0;return!1};const n="function"==typeof ArrayBuffer,r=Object.prototype.toString,s="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===r.call(Blob),o="function"==typeof File||"undefined"!=typeof File&&"[object FileConstructor]"===r.call(File);function a(e){return n&&(e instanceof ArrayBuffer||(e=>"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer)(e))||s&&e instanceof Blob||o&&e instanceof File}},4467(e,t,n){n.d(t,{A:()=>s});var r=n(9922);function s(e,t,n){return(t=(0,r.A)(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},9379(e,t,n){n.d(t,{A:()=>o});var r=n(4467);function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach(function(t){(0,r.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}},2327(e,t,n){n.d(t,{A:()=>s});var r=n(2284);function s(e,t){if("object"!=(0,r.A)(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var s=n.call(e,t||"default");if("object"!=(0,r.A)(s))return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}},9922(e,t,n){n.d(t,{A:()=>o});var r=n(2284),s=n(2327);function o(e){var t=(0,s.A)(e,"string");return"symbol"==(0,r.A)(t)?t:t+""}},2284(e,t,n){function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}n.d(t,{A:()=>r})},4454(e,t,n){function r(e){if(e)return function(e){for(var t in r.prototype)e[t]=r.prototype[t];return e}(e)}n.r(t),n.d(t,{Emitter:()=>r}),r.prototype.on=r.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},r.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},r.prototype.off=r.prototype.removeListener=r.prototype.removeAllListeners=r.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var s=0;s<r.length;s++)if((n=r[s])===t||n.fn===t){r.splice(s,1);break}return 0===r.length&&delete this._callbacks["$"+e],this},r.prototype.emit=function(e){this._callbacks=this._callbacks||{};for(var t=new Array(arguments.length-1),n=this._callbacks["$"+e],r=1;r<arguments.length;r++)t[r-1]=arguments[r];if(n){r=0;for(var s=(n=n.slice(0)).length;r<s;++r)n[r].apply(this,t)}return this},r.prototype.emitReserved=r.prototype.emit,r.prototype.listeners=function(e){return this._callbacks=this._callbacks||{},this._callbacks["$"+e]||[]},r.prototype.hasListeners=function(e){return!!this.listeners(e).length}},2016(e,t,n){n.r(t),n.d(t,{Expression:()=>j,Parser:()=>Le,default:()=>qe});var r="INUMBER",s="IOP1",o="IOP2",a="IOP3",i="IVAR",c="IVARNAME",l="IFUNCALL",u="IFUNDEF",p="IEXPR",d="IEXPREVAL",f="IMEMBER",h="IENDSTATEMENT",v="IARRAY";function y(e,t){this.type=e,this.value=null!=t?t:0}function g(e){return new y(s,e)}function m(e){return new y(o,e)}function b(e){return new y(a,e)}function x(e,t,n,l,u){for(var d,h,g,m,b=[],_=[],w=0;w<e.length;w++){var P=e[w],O=P.type;if(O===r||O===c)Array.isArray(P.value)?b.push.apply(b,x(P.value.map(function(e){return new y(r,e)}).concat(new y(v,P.value.length)),t,n,l,u)):b.push(P);else if(O===i&&u.hasOwnProperty(P.value))P=new y(r,u[P.value]),b.push(P);else if(O===o&&b.length>1)h=b.pop(),d=b.pop(),m=n[P.value],P=new y(r,m(d.value,h.value)),b.push(P);else if(O===a&&b.length>2)g=b.pop(),h=b.pop(),d=b.pop(),"?"===P.value?b.push(d.value?h.value:g.value):(m=l[P.value],P=new y(r,m(d.value,h.value,g.value)),b.push(P));else if(O===s&&b.length>0)d=b.pop(),m=t[P.value],P=new y(r,m(d.value)),b.push(P);else if(O===p){for(;b.length>0;)_.push(b.shift());_.push(new y(p,x(P.value,t,n,l,u)))}else if(O===f&&b.length>0)d=b.pop(),b.push(new y(r,d.value[P.value]));else{for(;b.length>0;)_.push(b.shift());_.push(P)}}for(;b.length>0;)_.push(b.shift());return _}function _(e,t,n){for(var r=[],c=0;c<e.length;c++){var l=e[c],u=l.type;if(u===i&&l.value===t)for(var d=0;d<n.tokens.length;d++){var f,h=n.tokens[d];f=h.type===s?g(h.value):h.type===o?m(h.value):h.type===a?b(h.value):new y(h.type,h.value),r.push(f)}else u===p?r.push(new y(p,_(l.value,t,n))):r.push(l)}return r}function w(e,t,n){var y,g,m,b,x,_,E=[];if(O(e))return k(e,n);for(var M=e.length,$=0;$<M;$++){var A=e[$],j=A.type;if(j===r||j===c)E.push(A.value);else if(j===o)g=E.pop(),y=E.pop(),"and"===A.value?E.push(!!y&&!!w(g,t,n)):"or"===A.value?E.push(!!y||!!w(g,t,n)):"="===A.value?(b=t.binaryOps[A.value],E.push(b(y,w(g,t,n),n))):(b=t.binaryOps[A.value],E.push(b(k(y,n),k(g,n))));else if(j===a)m=E.pop(),g=E.pop(),y=E.pop(),"?"===A.value?E.push(w(y?g:m,t,n)):(b=t.ternaryOps[A.value],E.push(b(k(y,n),k(g,n),k(m,n))));else if(j===i)if(A.value in t.functions)E.push(t.functions[A.value]);else if(A.value in t.unaryOps&&t.parser.isOperatorEnabled(A.value))E.push(t.unaryOps[A.value]);else{var S=n[A.value];if(void 0===S)throw new Error("undefined variable: "+A.value);E.push(S)}else if(j===s)y=E.pop(),b=t.unaryOps[A.value],E.push(b(k(y,n)));else if(j===l){for(_=A.value,x=[];_-- >0;)x.unshift(k(E.pop(),n));if(!(b=E.pop()).apply||!b.call)throw new Error(b+" is not a function");E.push(b.apply(void 0,x))}else if(j===u)E.push(function(){for(var e=E.pop(),r=[],s=A.value;s-- >0;)r.unshift(E.pop());var o=E.pop(),a=function(){for(var s=Object.assign({},n),o=0,a=r.length;o<a;o++)s[r[o]]=arguments[o];return w(e,t,s)};return Object.defineProperty(a,"name",{value:o,writable:!1}),n[o]=a,a}());else if(j===p)E.push(P(A,t));else if(j===d)E.push(A);else if(j===f)y=E.pop(),E.push(y[A.value]);else if(j===h)E.pop();else{if(j!==v)throw new Error("invalid Expression");for(_=A.value,x=[];_-- >0;)x.unshift(E.pop());E.push(x)}}if(E.length>1)throw new Error("invalid Expression (parity)");return 0===E[0]?0:k(E[0],n)}function P(e,t,n){return O(e)?e:{type:d,value:function(n){return w(e.value,t,n)}}}function O(e){return e&&e.type===d}function k(e,t){return O(e)?e.value(t):e}function E(e,t){for(var n,d,y,g,m,b,x=[],_=0;_<e.length;_++){var w=e[_],P=w.type;if(P===r)"number"==typeof w.value&&w.value<0?x.push("("+w.value+")"):Array.isArray(w.value)?x.push("["+w.value.map(M).join(", ")+"]"):x.push(M(w.value));else if(P===o)d=x.pop(),n=x.pop(),g=w.value,t?"^"===g?x.push("Math.pow("+n+", "+d+")"):"and"===g?x.push("(!!"+n+" && !!"+d+")"):"or"===g?x.push("(!!"+n+" || !!"+d+")"):"||"===g?x.push("(function(a,b){ return Array.isArray(a) && Array.isArray(b) ? a.concat(b) : String(a) + String(b); }(("+n+"),("+d+")))"):"=="===g?x.push("("+n+" === "+d+")"):"!="===g?x.push("("+n+" !== "+d+")"):"["===g?x.push(n+"[("+d+") | 0]"):x.push("("+n+" "+g+" "+d+")"):"["===g?x.push(n+"["+d+"]"):x.push("("+n+" "+g+" "+d+")");else if(P===a){if(y=x.pop(),d=x.pop(),n=x.pop(),"?"!==(g=w.value))throw new Error("invalid Expression");x.push("("+n+" ? "+d+" : "+y+")")}else if(P===i||P===c)x.push(w.value);else if(P===s)n=x.pop(),"-"===(g=w.value)||"+"===g?x.push("("+g+n+")"):t?"not"===g?x.push("(!"+n+")"):"!"===g?x.push("fac("+n+")"):x.push(g+"("+n+")"):"!"===g?x.push("("+n+"!)"):x.push("("+g+" "+n+")");else if(P===l){for(b=w.value,m=[];b-- >0;)m.unshift(x.pop());g=x.pop(),x.push(g+"("+m.join(", ")+")")}else if(P===u){for(d=x.pop(),b=w.value,m=[];b-- >0;)m.unshift(x.pop());n=x.pop(),t?x.push("("+n+" = function("+m.join(", ")+") { return "+d+" })"):x.push("("+n+"("+m.join(", ")+") = "+d+")")}else if(P===f)n=x.pop(),x.push(n+"."+w.value);else if(P===v){for(b=w.value,m=[];b-- >0;)m.unshift(x.pop());x.push("["+m.join(", ")+"]")}else if(P===p)x.push("("+E(w.value,t)+")");else if(P!==h)throw new Error("invalid Expression")}return x.length>1&&(x=t?[x.join(",")]:[x.join(";")]),String(x[0])}function M(e){return"string"==typeof e?JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029"):e}function $(e,t){for(var n=0;n<e.length;n++)if(e[n]===t)return!0;return!1}function A(e,t,n){for(var r=!!(n=n||{}).withMembers,s=null,o=0;o<e.length;o++){var a=e[o];a.type===i||a.type===c?r||$(t,a.value)?null!==s?($(t,s)||t.push(s),s=a.value):s=a.value:t.push(a.value):a.type===f&&r&&null!==s?s+="."+a.value:a.type===p?A(a.value,t,n):null!==s&&($(t,s)||t.push(s),s=null)}null===s||$(t,s)||t.push(s)}function j(e,t){this.tokens=e,this.parser=t,this.unaryOps=t.unaryOps,this.binaryOps=t.binaryOps,this.ternaryOps=t.ternaryOps,this.functions=t.functions}y.prototype.toString=function(){switch(this.type){case r:case s:case o:case a:case i:case c:case h:return this.value;case l:return"CALL "+this.value;case u:return"DEF "+this.value;case v:return"ARRAY "+this.value;case f:return"."+this.value;default:return"Invalid Instruction"}},j.prototype.simplify=function(e){return e=e||{},new j(x(this.tokens,this.unaryOps,this.binaryOps,this.ternaryOps,e),this.parser)},j.prototype.substitute=function(e,t){return t instanceof j||(t=this.parser.parse(String(t))),new j(_(this.tokens,e,t),this.parser)},j.prototype.evaluate=function(e){return e=e||{},w(this.tokens,this,e)},j.prototype.toString=function(){return E(this.tokens,!1)},j.prototype.symbols=function(e){e=e||{};var t=[];return A(this.tokens,t,e),t},j.prototype.variables=function(e){e=e||{};var t=[];A(this.tokens,t,e);var n=this.functions;return t.filter(function(e){return!(e in n)})},j.prototype.toJSFunction=function(e,t){var n=this,r=new Function(e,"with(this.functions) with (this.ternaryOps) with (this.binaryOps) with (this.unaryOps) { return "+E(this.simplify(t).tokens,!0)+"; }");return function(){return r.apply(n,arguments)}};var S="TEOF",I="TOP",C="TNUMBER",T="TSTRING",N="TPAREN",D="TBRACKET",R="TCOMMA",B="TNAME",G="TSEMICOLON";function F(e,t,n){this.type=e,this.value=t,this.index=n}function L(e,t){this.pos=0,this.current=null,this.unaryOps=e.unaryOps,this.binaryOps=e.binaryOps,this.ternaryOps=e.ternaryOps,this.consts=e.consts,this.expression=t,this.savedPosition=0,this.savedCurrent=null,this.options=e.options,this.parser=e}F.prototype.toString=function(){return this.type+": "+this.value},L.prototype.newToken=function(e,t,n){return new F(e,t,null!=n?n:this.pos)},L.prototype.save=function(){this.savedPosition=this.pos,this.savedCurrent=this.current},L.prototype.restore=function(){this.pos=this.savedPosition,this.current=this.savedCurrent},L.prototype.next=function(){return this.pos>=this.expression.length?this.newToken(S,"EOF"):this.isWhitespace()||this.isComment()?this.next():this.isRadixInteger()||this.isNumber()||this.isOperator()||this.isString()||this.isParen()||this.isBracket()||this.isComma()||this.isSemicolon()||this.isNamedOp()||this.isConst()||this.isName()?this.current:void this.parseError('Unknown character "'+this.expression.charAt(this.pos)+'"')},L.prototype.isString=function(){var e=!1,t=this.pos,n=this.expression.charAt(t);if("'"===n||'"'===n)for(var r=this.expression.indexOf(n,t+1);r>=0&&this.pos<this.expression.length;){if(this.pos=r+1,"\\"!==this.expression.charAt(r-1)){var s=this.expression.substring(t+1,r);this.current=this.newToken(T,this.unescape(s),t),e=!0;break}r=this.expression.indexOf(n,r+1)}return e},L.prototype.isParen=function(){var e=this.expression.charAt(this.pos);return("("===e||")"===e)&&(this.current=this.newToken(N,e),this.pos++,!0)},L.prototype.isBracket=function(){var e=this.expression.charAt(this.pos);return!("["!==e&&"]"!==e||!this.isOperatorEnabled("[")||(this.current=this.newToken(D,e),this.pos++,0))},L.prototype.isComma=function(){return","===this.expression.charAt(this.pos)&&(this.current=this.newToken(R,","),this.pos++,!0)},L.prototype.isSemicolon=function(){return";"===this.expression.charAt(this.pos)&&(this.current=this.newToken(G,";"),this.pos++,!0)},L.prototype.isConst=function(){for(var e=this.pos,t=e;t<this.expression.length;t++){var n=this.expression.charAt(t);if(n.toUpperCase()===n.toLowerCase()&&(t===this.pos||"_"!==n&&"."!==n&&(n<"0"||n>"9")))break}if(t>e){var r=this.expression.substring(e,t);if(r in this.consts)return this.current=this.newToken(C,this.consts[r]),this.pos+=r.length,!0}return!1},L.prototype.isNamedOp=function(){for(var e=this.pos,t=e;t<this.expression.length;t++){var n=this.expression.charAt(t);if(n.toUpperCase()===n.toLowerCase()&&(t===this.pos||"_"!==n&&(n<"0"||n>"9")))break}if(t>e){var r=this.expression.substring(e,t);if(this.isOperatorEnabled(r)&&(r in this.binaryOps||r in this.unaryOps||r in this.ternaryOps))return this.current=this.newToken(I,r),this.pos+=r.length,!0}return!1},L.prototype.isName=function(){for(var e=this.pos,t=e,n=!1;t<this.expression.length;t++){var r=this.expression.charAt(t);if(r.toUpperCase()===r.toLowerCase()){if(t===this.pos&&("$"===r||"_"===r)){"_"===r&&(n=!0);continue}if(t===this.pos||!n||"_"!==r&&(r<"0"||r>"9"))break}else n=!0}if(n){var s=this.expression.substring(e,t);return this.current=this.newToken(B,s),this.pos+=s.length,!0}return!1},L.prototype.isWhitespace=function(){for(var e=!1,t=this.expression.charAt(this.pos);!(" "!==t&&"\t"!==t&&"\n"!==t&&"\r"!==t||(e=!0,this.pos++,this.pos>=this.expression.length));)t=this.expression.charAt(this.pos);return e};var U=/^[0-9a-f]{4}$/i;function z(e,t,n){this.parser=e,this.tokens=t,this.current=null,this.nextToken=null,this.next(),this.savedCurrent=null,this.savedNextToken=null,this.allowMemberAccess=!1!==n.allowMemberAccess}L.prototype.unescape=function(e){var t=e.indexOf("\\");if(t<0)return e;for(var n=e.substring(0,t);t>=0;){var r=e.charAt(++t);switch(r){case"'":n+="'";break;case'"':n+='"';break;case"\\":n+="\\";break;case"/":n+="/";break;case"b":n+="\b";break;case"f":n+="\f";break;case"n":n+="\n";break;case"r":n+="\r";break;case"t":n+="\t";break;case"u":var s=e.substring(t+1,t+5);U.test(s)||this.parseError("Illegal escape sequence: \\u"+s),n+=String.fromCharCode(parseInt(s,16)),t+=4;break;default:throw this.parseError('Illegal escape sequence: "\\'+r+'"')}++t;var o=e.indexOf("\\",t);n+=e.substring(t,o<0?e.length:o),t=o}return n},L.prototype.isComment=function(){return"/"===this.expression.charAt(this.pos)&&"*"===this.expression.charAt(this.pos+1)&&(this.pos=this.expression.indexOf("*/",this.pos)+2,1===this.pos&&(this.pos=this.expression.length),!0)},L.prototype.isRadixInteger=function(){var e,t,n=this.pos;if(n>=this.expression.length-2||"0"!==this.expression.charAt(n))return!1;if(++n,"x"===this.expression.charAt(n))e=16,t=/^[0-9a-f]$/i,++n;else{if("b"!==this.expression.charAt(n))return!1;e=2,t=/^[01]$/i,++n}for(var r=!1,s=n;n<this.expression.length;){var o=this.expression.charAt(n);if(!t.test(o))break;n++,r=!0}return r&&(this.current=this.newToken(C,parseInt(this.expression.substring(s,n),e)),this.pos=n),r},L.prototype.isNumber=function(){for(var e,t=!1,n=this.pos,r=n,s=n,o=!1,a=!1;n<this.expression.length&&((e=this.expression.charAt(n))>="0"&&e<="9"||!o&&"."===e);)"."===e?o=!0:a=!0,n++,t=a;if(t&&(s=n),"e"===e||"E"===e){n++;for(var i=!0,c=!1;n<this.expression.length;){if(e=this.expression.charAt(n),!i||"+"!==e&&"-"!==e){if(!(e>="0"&&e<="9"))break;c=!0,i=!1}else i=!1;n++}c||(n=s)}return t?(this.current=this.newToken(C,parseFloat(this.expression.substring(r,n))),this.pos=n):this.pos=s,t},L.prototype.isOperator=function(){var e=this.pos,t=this.expression.charAt(this.pos);if("+"===t||"-"===t||"*"===t||"/"===t||"%"===t||"^"===t||"?"===t||":"===t||"."===t)this.current=this.newToken(I,t);else if("∙"===t||"•"===t)this.current=this.newToken(I,"*");else if(">"===t)"="===this.expression.charAt(this.pos+1)?(this.current=this.newToken(I,">="),this.pos++):this.current=this.newToken(I,">");else if("<"===t)"="===this.expression.charAt(this.pos+1)?(this.current=this.newToken(I,"<="),this.pos++):this.current=this.newToken(I,"<");else if("|"===t){if("|"!==this.expression.charAt(this.pos+1))return!1;this.current=this.newToken(I,"||"),this.pos++}else if("="===t)"="===this.expression.charAt(this.pos+1)?(this.current=this.newToken(I,"=="),this.pos++):this.current=this.newToken(I,t);else{if("!"!==t)return!1;"="===this.expression.charAt(this.pos+1)?(this.current=this.newToken(I,"!="),this.pos++):this.current=this.newToken(I,t)}return this.pos++,!!this.isOperatorEnabled(this.current.value)||(this.pos=e,!1)},L.prototype.isOperatorEnabled=function(e){return this.parser.isOperatorEnabled(e)},L.prototype.getCoordinates=function(){var e,t=0,n=-1;do{t++,e=this.pos-n,n=this.expression.indexOf("\n",n+1)}while(n>=0&&n<this.pos);return{line:t,column:e}},L.prototype.parseError=function(e){var t=this.getCoordinates();throw new Error("parse error ["+t.line+":"+t.column+"]: "+e)},z.prototype.next=function(){return this.current=this.nextToken,this.nextToken=this.tokens.next()},z.prototype.tokenMatches=function(e,t){return void 0===t||(Array.isArray(t)?$(t,e.value):"function"==typeof t?t(e):e.value===t)},z.prototype.save=function(){this.savedCurrent=this.current,this.savedNextToken=this.nextToken,this.tokens.save()},z.prototype.restore=function(){this.tokens.restore(),this.current=this.savedCurrent,this.nextToken=this.savedNextToken},z.prototype.accept=function(e,t){return!(this.nextToken.type!==e||!this.tokenMatches(this.nextToken,t)||(this.next(),0))},z.prototype.expect=function(e,t){if(!this.accept(e,t)){var n=this.tokens.getCoordinates();throw new Error("parse error ["+n.line+":"+n.column+"]: Expected "+(t||e))}},z.prototype.parseAtom=function(e){var t=this.tokens.unaryOps;if(this.accept(B)||this.accept(I,function(e){return e.value in t}))e.push(new y(i,this.current.value));else if(this.accept(C))e.push(new y(r,this.current.value));else if(this.accept(T))e.push(new y(r,this.current.value));else if(this.accept(N,"("))this.parseExpression(e),this.expect(N,")");else{if(!this.accept(D,"["))throw new Error("unexpected "+this.nextToken);if(this.accept(D,"]"))e.push(new y(v,0));else{var n=this.parseArrayList(e);e.push(new y(v,n))}}},z.prototype.parseExpression=function(e){var t=[];this.parseUntilEndStatement(e,t)||(this.parseVariableAssignmentExpression(t),this.parseUntilEndStatement(e,t)||this.pushExpression(e,t))},z.prototype.pushExpression=function(e,t){for(var n=0,r=t.length;n<r;n++)e.push(t[n])},z.prototype.parseUntilEndStatement=function(e,t){return!!this.accept(G)&&(!this.nextToken||this.nextToken.type===S||this.nextToken.type===N&&")"===this.nextToken.value||t.push(new y(h)),this.nextToken.type!==S&&this.parseExpression(t),e.push(new y(p,t)),!0)},z.prototype.parseArrayList=function(e){for(var t=0;!this.accept(D,"]");)for(this.parseExpression(e),++t;this.accept(R);)this.parseExpression(e),++t;return t},z.prototype.parseVariableAssignmentExpression=function(e){for(this.parseConditionalExpression(e);this.accept(I,"=");){var t=e.pop(),n=[],r=e.length-1;if(t.type!==l){if(t.type!==i&&t.type!==f)throw new Error("expected variable for assignment");this.parseVariableAssignmentExpression(n),e.push(new y(c,t.value)),e.push(new y(p,n)),e.push(m("="))}else{if(!this.tokens.isOperatorEnabled("()="))throw new Error("function definition is not permitted");for(var s=0,o=t.value+1;s<o;s++){var a=r-s;e[a].type===i&&(e[a]=new y(c,e[a].value))}this.parseVariableAssignmentExpression(n),e.push(new y(p,n)),e.push(new y(u,t.value))}}},z.prototype.parseConditionalExpression=function(e){for(this.parseOrExpression(e);this.accept(I,"?");){var t=[],n=[];this.parseConditionalExpression(t),this.expect(I,":"),this.parseConditionalExpression(n),e.push(new y(p,t)),e.push(new y(p,n)),e.push(b("?"))}},z.prototype.parseOrExpression=function(e){for(this.parseAndExpression(e);this.accept(I,"or");){var t=[];this.parseAndExpression(t),e.push(new y(p,t)),e.push(m("or"))}},z.prototype.parseAndExpression=function(e){for(this.parseComparison(e);this.accept(I,"and");){var t=[];this.parseComparison(t),e.push(new y(p,t)),e.push(m("and"))}};var q=["==","!=","<","<=",">=",">","in"];z.prototype.parseComparison=function(e){for(this.parseAddSub(e);this.accept(I,q);){var t=this.current;this.parseAddSub(e),e.push(m(t.value))}};var V=["+","-","||"];z.prototype.parseAddSub=function(e){for(this.parseTerm(e);this.accept(I,V);){var t=this.current;this.parseTerm(e),e.push(m(t.value))}};var W=["*","/","%"];function H(e,t){return Number(e)+Number(t)}function J(e,t){return e-t}function K(e,t){return e*t}function Y(e,t){return e/t}function X(e,t){return e%t}function Q(e,t){return Array.isArray(e)&&Array.isArray(t)?e.concat(t):""+e+t}function Z(e,t){return e===t}function ee(e,t){return e!==t}function te(e,t){return e>t}function ne(e,t){return e<t}function re(e,t){return e>=t}function se(e,t){return e<=t}function oe(e,t){return Boolean(e&&t)}function ae(e,t){return Boolean(e||t)}function ie(e,t){return $(t,e)}function ce(e){return(Math.exp(e)-Math.exp(-e))/2}function le(e){return(Math.exp(e)+Math.exp(-e))/2}function ue(e){return e===1/0?1:e===-1/0?-1:(Math.exp(e)-Math.exp(-e))/(Math.exp(e)+Math.exp(-e))}function pe(e){return e===-1/0?e:Math.log(e+Math.sqrt(e*e+1))}function de(e){return Math.log(e+Math.sqrt(e*e-1))}function fe(e){return Math.log((1+e)/(1-e))/2}function he(e){return Math.log(e)*Math.LOG10E}function ve(e){return-e}function ye(e){return!e}function ge(e){return e<0?Math.ceil(e):Math.floor(e)}function me(e){return Math.random()*(e||1)}function be(e){return _e(e+1)}z.prototype.parseTerm=function(e){for(this.parseFactor(e);this.accept(I,W);){var t=this.current;this.parseFactor(e),e.push(m(t.value))}},z.prototype.parseFactor=function(e){var t=this.tokens.unaryOps;if(this.save(),this.accept(I,function(e){return e.value in t})){if("-"!==this.current.value&&"+"!==this.current.value){if(this.nextToken.type===N&&"("===this.nextToken.value)return this.restore(),void this.parseExponential(e);if(this.nextToken.type===G||this.nextToken.type===R||this.nextToken.type===S||this.nextToken.type===N&&")"===this.nextToken.value)return this.restore(),void this.parseAtom(e)}var n=this.current;this.parseFactor(e),e.push(g(n.value))}else this.parseExponential(e)},z.prototype.parseExponential=function(e){for(this.parsePostfixExpression(e);this.accept(I,"^");)this.parseFactor(e),e.push(m("^"))},z.prototype.parsePostfixExpression=function(e){for(this.parseFunctionCall(e);this.accept(I,"!");)e.push(g("!"))},z.prototype.parseFunctionCall=function(e){var t=this.tokens.unaryOps;if(this.accept(I,function(e){return e.value in t})){var n=this.current;this.parseAtom(e),e.push(g(n.value))}else for(this.parseMemberExpression(e);this.accept(N,"(");)if(this.accept(N,")"))e.push(new y(l,0));else{var r=this.parseArgumentList(e);e.push(new y(l,r))}},z.prototype.parseArgumentList=function(e){for(var t=0;!this.accept(N,")");)for(this.parseExpression(e),++t;this.accept(R);)this.parseExpression(e),++t;return t},z.prototype.parseMemberExpression=function(e){for(this.parseAtom(e);this.accept(I,".")||this.accept(D,"[");){var t=this.current;if("."===t.value){if(!this.allowMemberAccess)throw new Error('unexpected ".", member access is not permitted');this.expect(B),e.push(new y(f,this.current.value))}else{if("["!==t.value)throw new Error("unexpected symbol: "+t.value);if(!this.tokens.isOperatorEnabled("["))throw new Error('unexpected "[]", arrays are disabled');this.parseExpression(e),this.expect(D,"]"),e.push(m("["))}}};var xe=[.9999999999999971,57.15623566586292,-59.59796035547549,14.136097974741746,-.4919138160976202,3399464998481189e-20,4652362892704858e-20,-9837447530487956e-20,.0001580887032249125,-.00021026444172410488,.00021743961811521265,-.0001643181065367639,8441822398385275e-20,-26190838401581408e-21,36899182659531625e-22];function _e(e){var t,n;if(function(e){return isFinite(e)&&e===Math.round(e)}(e)){if(e<=0)return isFinite(e)?1/0:NaN;if(e>171)return 1/0;for(var r=e-2,s=e-1;r>1;)s*=r,r--;return 0===s&&(s=1),s}if(e<.5)return Math.PI/(Math.sin(Math.PI*e)*_e(1-e));if(e>=171.35)return 1/0;if(e>85){var o=e*e,a=o*e,i=a*e,c=i*e;return Math.sqrt(2*Math.PI/e)*Math.pow(e/Math.E,e)*(1+1/(12*e)+1/(288*o)-139/(51840*a)-571/(2488320*i)+163879/(209018880*c)+5246819/(75246796800*c*e))}--e,n=xe[0];for(var l=1;l<xe.length;++l)n+=xe[l]/(e+l);return t=e+4.7421875+.5,Math.sqrt(2*Math.PI)*Math.pow(t,e+.5)*Math.exp(-t)*n}function we(e){return Array.isArray(e)?e.length:String(e).length}function Pe(){for(var e=0,t=0,n=0;n<arguments.length;n++){var r,s=Math.abs(arguments[n]);t<s?(e=e*(r=t/s)*r+1,t=s):e+=s>0?(r=s/t)*r:s}return t===1/0?1/0:t*Math.sqrt(e)}function Oe(e,t,n){return e?t:n}function ke(e,t){return void 0===t||0===+t?Math.round(e):(e=+e,t=-+t,isNaN(e)||"number"!=typeof t||t%1!=0?NaN:(e=e.toString().split("e"),+((e=(e=Math.round(+(e[0]+"e"+(e[1]?+e[1]-t:-t)))).toString().split("e"))[0]+"e"+(e[1]?+e[1]+t:t))))}function Ee(e,t,n){return n&&(n[e]=t),t}function Me(e,t){return e[0|t]}function $e(e){return 1===arguments.length&&Array.isArray(e)?Math.max.apply(Math,e):Math.max.apply(Math,arguments)}function Ae(e){return 1===arguments.length&&Array.isArray(e)?Math.min.apply(Math,e):Math.min.apply(Math,arguments)}function je(e,t){if("function"!=typeof e)throw new Error("First argument to map is not a function");if(!Array.isArray(t))throw new Error("Second argument to map is not an array");return t.map(function(t,n){return e(t,n)})}function Se(e,t,n){if("function"!=typeof e)throw new Error("First argument to fold is not a function");if(!Array.isArray(n))throw new Error("Second argument to fold is not an array");return n.reduce(function(t,n,r){return e(t,n,r)},t)}function Ie(e,t){if("function"!=typeof e)throw new Error("First argument to filter is not a function");if(!Array.isArray(t))throw new Error("Second argument to filter is not an array");return t.filter(function(t,n){return e(t,n)})}function Ce(e,t){if(!Array.isArray(t)&&"string"!=typeof t)throw new Error("Second argument to indexOf is not a string or array");return t.indexOf(e)}function Te(e,t){if(!Array.isArray(t))throw new Error("Second argument to join is not an array");return t.join(e)}function Ne(e){return(e>0)-(e<0)||+e}var De=1/3;function Re(e){return e<0?-Math.pow(-e,De):Math.pow(e,De)}function Be(e){return Math.exp(e)-1}function Ge(e){return Math.log(1+e)}function Fe(e){return Math.log(e)/Math.LN2}function Le(e){this.options=e||{},this.unaryOps={sin:Math.sin,cos:Math.cos,tan:Math.tan,asin:Math.asin,acos:Math.acos,atan:Math.atan,sinh:Math.sinh||ce,cosh:Math.cosh||le,tanh:Math.tanh||ue,asinh:Math.asinh||pe,acosh:Math.acosh||de,atanh:Math.atanh||fe,sqrt:Math.sqrt,cbrt:Math.cbrt||Re,log:Math.log,log2:Math.log2||Fe,ln:Math.log,lg:Math.log10||he,log10:Math.log10||he,expm1:Math.expm1||Be,log1p:Math.log1p||Ge,abs:Math.abs,ceil:Math.ceil,floor:Math.floor,round:Math.round,trunc:Math.trunc||ge,"-":ve,"+":Number,exp:Math.exp,not:ye,length:we,"!":be,sign:Math.sign||Ne},this.binaryOps={"+":H,"-":J,"*":K,"/":Y,"%":X,"^":Math.pow,"||":Q,"==":Z,"!=":ee,">":te,"<":ne,">=":re,"<=":se,and:oe,or:ae,in:ie,"=":Ee,"[":Me},this.ternaryOps={"?":Oe},this.functions={random:me,fac:be,min:Ae,max:$e,hypot:Math.hypot||Pe,pyt:Math.hypot||Pe,pow:Math.pow,atan2:Math.atan2,if:Oe,gamma:_e,roundTo:ke,map:je,fold:Se,filter:Ie,indexOf:Ce,join:Te},this.consts={E:Math.E,PI:Math.PI,true:!0,false:!1}}Le.prototype.parse=function(e){var t=[],n=new z(this,new L(this,e),{allowMemberAccess:this.options.allowMemberAccess});return n.parseExpression(t),n.expect(S,"EOF"),new j(t,this)},Le.prototype.evaluate=function(e,t){return this.parse(e).evaluate(t)};var Ue=new Le;Le.parse=function(e){return Ue.parse(e)},Le.evaluate=function(e,t){return Ue.parse(e).evaluate(t)};var ze={"+":"add","-":"subtract","*":"multiply","/":"divide","%":"remainder","^":"power","!":"factorial","<":"comparison",">":"comparison","<=":"comparison",">=":"comparison","==":"comparison","!=":"comparison","||":"concatenate",and:"logical",or:"logical",not:"logical","?":"conditional",":":"conditional","=":"assignment","[":"array","()=":"fndef"};Le.prototype.isOperatorEnabled=function(e){var t=function(e){return ze.hasOwnProperty(e)?ze[e]:e}(e),n=this.options.operators||{};return!(t in n)||!!n[t]};const qe={Parser:Le,Expression:j}}},t={};function n(r){var s=t[r];if(void 0!==s)return s.exports;var o=t[r]={id:r,loaded:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var r={};return(()=>{var e=r;Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Client",{enumerable:!0,get:function(){return s.Client}}),Object.defineProperty(e,"gameFactory",{enumerable:!0,get:function(){return o.default}});var t,s=n(4245),o=(t=n(4913))&&t.__esModule?t:{default:t}})(),r})(),u.exports=w());const O=r({clickTarget:()=>{}});function k({gameConnection:n,children:r,isSpectator:s}){return t(()=>{0===n.state._stateID&&n.reset()},[n.state._stateID]),e.createElement(O.Provider,{value:{clickTarget:e=>{s||n.doStep(e)},undoStep:()=>{n.undoStep()},allClickable:n.optimisticWinner||s?new Set:n.allClickable,currentMoveTargets:n.optimisticWinner||s?[]:n.moveBuilder.targets}},r)}const E=()=>n(O);function M({grid:t}){const{width:n,height:r,spaces:s}=t.attributes;return e.createElement("div",{className:"grid",style:{display:"inline-grid",width:"100%",gridTemplateColumns:`repeat(${n}, 1fr)`,gridTemplateRows:`repeat(${r}, 1fr)`}},s.map((t,n)=>e.createElement("div",{key:n,className:"grid__cell"},e.createElement(A,{entity:t}))))}function $({space:t}){const{clickTarget:n,allClickable:r,currentMoveTargets:s}=E(),{entities:o,entityId:a}=t.attributes,i=[...r].map(e=>e.entityId).includes(a),c=s?.map(e=>e.entityId).includes(a);return e.createElement("a",{className:["space",i&&"space--clickable",c&&"space--targeted"].filter(Boolean).join(" "),onClick:()=>n(t),style:{display:"inline-block",flex:"1"}},e.createElement("div",{className:"space__entity-grid",style:{display:"flex",height:"100%",width:"100%",flexWrap:"wrap"}},Array.from({length:o.length},(t,n)=>e.createElement("div",{className:"space__entity-grid__cell",style:{display:"inline-block"},key:n},e.createElement(A,{entity:o[n]}))),!o.length&&t.attributes.name))}function A({entity:t}){const{clickTarget:n,allClickable:r}=E(),s=r.has(t),o=t.attributes;switch(o.type){case"Grid":return e.createElement(M,{grid:t,isClickable:s});case"Space":return e.createElement($,{space:t,isClickable:s});default:return e.createElement("div",{onClick:e=>{s&&(e.stopPropagation(),n(t))},className:["entity",o.player&&`player-${o.player}`,r.has(t)&&"entity--clickable"].filter(Boolean).join(" ")},t.rule.displayProperties?.map((n,r)=>e.createElement("div",{key:r},n,": ",t.attributes[n]?.toString())))}}function j(){const{clickTarget:t,allClickable:n,undoStep:r,currentMoveTargets:s}=E(),o=[...n].filter(e=>e.abstract);return e.createElement("div",{style:{position:"relative"}},e.createElement("button",{style:{visibility:"hidden"},className:"button button--style-b button--x-small abstract-choices__choice"},"Spacer"),e.createElement("div",{style:{position:"absolute",top:0,width:"100%"}},!!s.length&&e.createElement("button",{className:"button button--style-c button--x-small abstract-choices__choice abstract-choices__choice--undo",onClick:r},"Undo"),o.map((n,r)=>e.createElement("button",{key:r,className:"button button--style-b button--x-small abstract-choices__choice",onClick:()=>t(n)},n.value))))}function S({gameConnection:t}){const n=t.client.matchData,r=t.state.ctx.gameover?.winner,s=t.state.ctx.gameover?.draw;let o="";return s?o="Draw!":n&&r?o=`${n[r].name} Wins!`:r&&(o=`Player ${r} Wins!`),t.state.ctx.gameover&&e.createElement("div",{className:"game-status"},o)}function I({gameConnection:t,loading:n,isSpectator:r}){const s=t?.getState?.().state.G;return s?e.createElement(k,{gameConnection:t,isSpectator:r},e.createElement("div",{className:"game"},e.createElement(j,null),e.createElement("div",{className:"shared-board",style:{width:"100%",display:"flex",flexWrap:"wrap",justifyContent:"center",alignItems:"center",gap:"1em"}},s.sharedBoard.entities.map((t,n)=>e.createElement(A,{key:n,entity:t}))),s.personalBoards&&e.createElement("div",{className:"personal-boards"},s.personalBoards.map((t,n)=>e.createElement("div",{key:n,className:"personal-board",style:{width:"100%",display:"grid",gridAutoFlow:"column",gridAutoRows:"1fr",gap:"1em"}},t.entities.map((t,n)=>e.createElement(A,{key:n,entity:t}))))),e.createElement(S,{gameConnection:t}))):n}const C=P.Client,T=({server:e,gameId:n,gameRules:r,gameName:a,boardgameIOGame:i,boardgamePlayerID:c,clientToken:l,numPlayers:u,debug:p,singlePlayer:d=!1,enabled:f=!0})=>{const[h,v]=s(e=>e+1,0),[y,g]=o(null);return t(()=>{if(!((r||i)&&(d||n&&l&&f&&e)))return;const t=new C({server:e,numPlayers:u,onClientUpdate:()=>{v()},debug:p,gameId:n,gameRules:r,boardgameIOGame:i,gameName:a,boardgamePlayerID:c,clientToken:l,singlePlayer:d});return t.connect(),g(t),()=>{y?.client?.stop(),g(null)}},[n,c,l,r,i,f]),y?Object.assign(y,y?.getState?.()):{}},N=P.Client;export{N as Client,I as Game,T as useGameserverConnection};
|