"use strict";(self.webpackChunkjupytutor=self.webpackChunkjupytutor||[]).push([[129,510],{5510(t,e,s){s.r(e),s.d(e,{create:()=>b,createStore:()=>c,useStore:()=>o});const n=t=>{let e;const s=new Set,n=(t,n)=>{const c="function"==typeof t?t(e):t;if(!Object.is(c,e)){const t=e;e=(null!=n?n:"object"!=typeof c||null===c)?c:Object.assign({},e,c),s.forEach(s=>s(e,t))}},c=()=>e,u={setState:n,getState:c,getInitialState:()=>a,subscribe:t=>(s.add(t),()=>s.delete(t))},a=e=t(n,c,u);return u},c=t=>t?n(t):n;var u=s(3345),a=s.n(u);const r=t=>t;function o(t,e=r){const s=a().useSyncExternalStore(t.subscribe,a().useCallback(()=>e(t.getState()),[t,e]),a().useCallback(()=>e(t.getInitialState()),[t,e]));return a().useDebugValue(s),s}const l=t=>{const e=c(t),s=t=>o(e,t);return Object.assign(s,e),s},b=t=>t?l(t):l}}]);