1(()=>{var __webpack_modules__={668:(e,t,r)=>{var n,o;self,e.exports=(n=r(184),o=r(555),(()=>{"use strict";var e={272:e=>{e.exports=o},746:e=>{e.exports=n}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var i={};return(()=>{r.r(i),r.d(i,{InterruptError:()=>o,NoChannelError:()=>a,SyncClient:()=>s,syncExpose:()=>l});var e=r(746),t=r(272),n=function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{l(n.next(e))}catch(e){i(e)}}function s(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((n=n.apply(e,t||[])).next())}))};class o extends Error{constructor(){super(...arguments),this.type="InterruptError"}}class a extends Error{constructor(){super(...arguments),this.type="NoChannelError"}}class s{constructor(e,t){this.workerCreator=e,this.channel=t,this.state="idle",this._messageIdBase="",this._messageIdSeq=0,this._start()}interrupt(){return n(this,void 0,void 0,(function*(){"idle"!==this.state&&("awaitingMessage"!==this.state&&"sleeping"!==this.state?this.interrupter?yield this.interrupter():(this.terminate(),this._start()):yield this._writeMessage({interrupted:!0}))}))}call(r){for(var o=arguments.length,i=new Array(o>1?o-1:0),a=1;a<o;a++)i[a-1]=arguments[a];return n(this,void 0,void 0,(function*(){if("idle"!==this.state)throw new Error(`State is ${this.state}, not idle`);let n=!0;this.state="running",this._messageIdBase=(0,e.uuidv4)(),this._messageIdSeq=0;const o=e=>{var t;n&&"init"!==e&&("reading"===e?(this.state="awaitingMessage",this._messageIdSeq++,null===(t=this._awaitingMessageResolve)||void 0===t||t.call(this)):"sleeping"===e?(this.state="sleeping",this._messageIdSeq++):"slept"===e&&(this.state="running"))};this._interruptPromise=new Promise(((e,t)=>this._interruptRejector=t));try{return yield Promise.race([r(this.channel,t.proxy(o),this._messageIdBase,...i),this._interruptPromise])}finally{n=!1,this._reset()}}))}writeMessage(e){return n(this,void 0,void 0,(function*(){if("idle"===this.state||!this._messageIdBase)throw new Error("No active call to send a message to.");if("awaitingMessage"!==this.state){if(this._awaitingMessageResolve)throw new Error("Not waiting for message, and another write is already queued.");yield new Promise((e=>{this._awaitingMessageResolve=e})),delete this._awaitingMessageResolve}yield this._writeMessage({message:e})}))}terminate(){var e;null===(e=this._interruptRejector)||void 0===e||e.call(this,new o("Worker terminated")),this.workerProxy[t.releaseProxy](),this.worker.terminate(),delete this.workerProxy,delete this.worker}_writeMessage(t){return n(this,void 0,void 0,(function*(){this.state="running";const r=c(this._messageIdBase,this._messageIdSeq);yield(0,e.writeMessage)(this.channel,t,r)}))}_start(){this._reset(),this.worker=this.workerCreator(),this.workerProxy=t.wrap(this.worker)}_reset(){this.state="idle",delete this._interruptPromise,delete this._interruptRejector,delete this._awaitingMessageResolve,delete this._messageIdBase}}function l(t){return function(r,i,s){for(var l=arguments.length,u=new Array(l>3?l-3:0),d=3;d<l;d++)u[d-3]=arguments[d];return n(this,void 0,void 0,(function*(){yield i("init");let n=0;function l(t,l){if(!r)throw new a;i(t);const u=c(s,++n),d=(0,e.readMessage)(r,u,l);if(d){const{message:e,interrupted:t}=d;if(t)throw new o;return e}"sleeping"===t&&i("slept")}return t({channel:r,readMessage:()=>l("reading"),syncSleep(e){e>0&&l("sleeping",{timeout:e})}},...u)}))}}function c(e,t){return`${e}-${t}`}})(),i})())},575:(e,t,r)=>{var n;self,n=(e,t,r)=>(()=>{var n={237:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});
vendor: 4,924 bytes, line 1
1const n='import importlib\nimport sys\nfrom typing import Callable, Literal, Union, TypedDict\n\ntry:\n from pyodide.code import find_imports # noqa\nexcept ImportError:\n from pyodide import find_imports # noqa\n\nimport pyodide_js # noqa\n\nsys.setrecursionlimit(400)\n\n\nclass InstallEntry(TypedDict):\n module: str\n package: str\n\n\ndef find_imports_to_install(imports: list[str]) -> list[InstallEntry]:\n """\n Given a list of module names being imported, return a list of dicts\n representing the packages that need to be installed to import those modules.\n The returned list will only contain modules that aren\'t already installed.\n Each returned dict has the following keys:\n - module: the name of the module being imported\n - package: the name of the package that needs to be installed\n """\n try:\n to_package_name = pyodide_js._module._import_name_to_package_name.to_py()\n except AttributeError:\n to_package_name = pyodide_js._api._import_name_to_package_name.to_py()\n\n to_install: list[InstallEntry] = []\n for module in imports:\n try:\n importlib.import_module(module)\n except ModuleNotFoundError:\n to_install.append(\n dict(\n module=module,\n package=to_package_name.get(module, module),\n )\n )\n return to_install\n\n\nasync def install_imports(\n source_code_or_imports: Union[str, list[str]],\n message_callback: Callable[\n [\n Literal[\n "loading_all",\n "loaded_all",\n "loading_one",\n "loaded_one",\n "loading_micropip",\n "loaded_micropip",\n ],\n Union[InstallEntry, list[InstallEntry]],\n ],\n None,\n ] = lambda event_type, data: None,\n):\n """\n Accepts a string of Python source code or a list of module names being imported.\n Installs any packages that need to be installed to import those modules,\n using micropip, which may also be installed if needed.\n If the package is not specially built for Pyodide, it must be available on PyPI\n as a pure Python wheel file.\n If the `message_callback` argument is provided, it will be called with an\n event type and data about the packages being installed.\n The event types start with `loading_` before installation, and `loaded_` after.\n The data is either a single dict representing the package being installed,\n or a list of all the packages being installed.\n The events are:\n - loading/loaded_all, with a list of all the packages being installed.\n - loading/loaded_one, with a dict for a single package.\n - loading/loaded_micropip, with a dict for the special micropip package.\n """\n if isinstance(source_code_or_imports, str):\n try:\n imports: list[str] = find_imports(source_code_or_imports)\n except SyntaxError:\n return\n else:\n imports: list[str] = source_code_or_imports\n\n to_install = find_imports_to_install(imports)\n if to_install:\n message_callback("loading_all", to_install)\n try:\n import micropip # noqa\n except ModuleNotFoundError:\n micropip_entry = dict(module="micropip", package="micropip")\n message_callback("loading_micropip", micropip_entry)\n await pyodide_js.loadPackage("micropip")\n import micropip # noqa\n\n message_callback("loaded_micropip", micropip_entry)\n\n for entry in to_install:\n message_callback("loading_one", entry)\n await micropip.install(entry["package"])\n message_callback("loaded_one", entry)\n message_callback("loaded_all", to_install)\n'},353:(e,t,r)=>{e.exports=r(846)},846:(e,t,r)=>{var n=r(960);t.operation=function(e){var r=t.timeouts(e);return new n(r,{forever:e&&(e.forever||e.retries===1/0),unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})},t.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],o=0;o<t.retries;o++)n.push(this.createTimeout(o,t));return e&&e.forever&&!n.length&&n.push(this.createTimeout(o,t)),n.sort((function(e,t){return e-t})),n},t.createTimeout=function(e,t){var r=t.randomize?Math.random()+1:1,n=Math.round(r*Math.max(t.minTimeout,1)*Math.pow(t.factor,e));return Math.min(n,t.maxTimeout)},t.wrap=function(e,r,n){if(r instanceof Array&&(n=r,r=null),!n)for(var o in n=[],e)"function"==typeof e[o]&&n.push(o);for(var i=0;i<n.length;i++){var a=n[i],s=e[a];e[a]=function(n){var o=t.operation(r),i=Array.prototype.slice.call(arguments,1
1),a=i.pop();i.push((function(e){o.retry(e)||(e&&(arguments[0]=o.mainError()),a.apply(this,arguments))})),o.attempt((function(){n.apply(e,i)}))}.bind(e,s),e[a].options=r}}},960:e=>{function t(e,t){"boolean"==typeof t&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._timer=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}e.exports=t,t.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts.slice(0)},t.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timer&&clearTimeout(this._timer),this._timeouts=[],this._cachedTimeouts=null},t.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=(new Date).getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.push(e),this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(void 0===r){if(!this._cachedTimeouts)return!1;this._errors.splice(0,this._errors.length-1),r=this._cachedTimeouts.slice(-1)}var n=this;return this._timer=setTimeout((function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout((function(){n._operationTimeoutCb(n._attempts)}),n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)}),r),this._options.unref&&this._timer.unref(),!0},t.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout((function(){r._operationTimeoutCb()}),r._operationTimeout)),this._operationStart=(new Date).getTime(),this._fn(this._attempts)},t.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)},t.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)},t.prototype.start=t.prototype.try,t.prototype.errors=function(){return this._errors},t.prototype.attempts=function(){return this._attempts},t.prototype.mainError=function(){if(0===this._errors.length)return null;for(var e={},t=null,r=0,n=0;n<this._errors.length;n++){var o=this._errors[n],i=o.message,a=(e[i]||0)+1;e[i]=a,a>=r&&(t=o,r=a)}return t}},272:e=>{"use strict";e.exports=t},422:t=>{"use strict";t.exports=e},28:e=>{"use strict";e.exports=r}},o={};function i(e){var t=o[e];if(void 0!==t)return t.exports;var r=o[e]={exports:{}};return n[e](r,r.exports,i),r.exports}i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return(()=>{"use strict";i.r(a),i.d(a,{PyodideClient:()=>v,PyodideFatalErrorReloader:()=>w,defaultPyodideLoader:()=>p,initPyodide:()=>h,loadPyodideAndPackage:()=>f,makeRunnerCallback:()=>g,pyodideExpose:()=>_,versionInfo:()=>m});var e=i(353);const t=new Set(["Failed to fetch","NetworkError when attempting to fetch resource.","The Internet connection appears to be offline.","Network request failed"]);class r extends Error{constructor(e){super(),e instanceof Error?(this.originalError=e,({message:e}=e)):(this.originalError=new Error(e),this.originalError.stack=this.stack),this.name="AbortError",this.message=e}}const n=e=>void 0===globalThis.DOMException?new Error(e):new DOMException(e);async function o(o,i){return new Promise(((a,s)=>{i={onFailedAttempt(){},retries:10,...i};const l=e.operation(i);l.attempt((async e=>{try{a(await o(e))}catch(o){if(!(o instanceof Error))return void s(new TypeError(`Non-error was thrown: "${o}". You should only throw errors.`));if(o instanceof r)l.stop(),s(o.originalError);else if(o instanceof TypeError&&(n=o.message,!t.has(n)))l.stop(),s(o);else{((e,t,r)=>{const n=r.retries-(t-1);e.attemptNumber=t,e.retriesLeft=n})(o,e,i);try{await i.onFailedAttempt(o)}catch(e){return void s(e)}l.retry(o)||s(l.mainError())}}var n})),i.signal&&!i.signal.aborted&&i.signal.addEventListener("abort",(()=>{l.stop();const e=void 0===i.signal.reason?n("The operation was aborted."):i.signal.reason;s(e instanceof Error?e:n(e))}),{once:!0})}))}var s=i(422),l=i(272),c=i(28),u=function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{l(n.next(e))}catch(e){i(e)}}function s(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((n=n.apply(e,t||[])).next())}))};const d=i(237).Z;function p(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:c.version;return u(this,void 0,void 0,(function*(){const t=`https://cdn.jsdelivr.net/pyodide/v${e}/full/`,r=yield(0,c.loadPyodide)({indexURL:t});if(r.version!==e)throw new Error(`loadPyodide loaded version ${r.version} instead of ${e}`);return r}))}function m(e){return e.split(".").map(Number)}function f(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p;return u(this,void 0,void 0,(function*(){let r,n,{format:i,extractDir:a,url:s}=e;a=a||"/tmp/",[r,n]=yield Promise.all([o((()=>t()),{retries:3}),o((()=>function(e){return u(this,void 0,void 0,(function*(){if(y.has(e))return console.log("Loaded package from cache"),y.get(e);console.log("Fetching package from "+e.slice(0,100)+"...");const t=yield fetch(e);if(!t.ok)throw new Error(`Request for package failed with status ${t.status}: ${t.statusText}`);const r=yield t.arrayBuffer();return console.log("Fetched package"),y.set(e,r),r}))}(s)),{retries:3})]);
1const l=m(r.version);return r.unpackArchive(n,i,0===l[0]&&l[1]<=19?a:{extractDir:a}),r.pyimport("sys").path.append(a),h(r),r}))}function h(e){e.registerComlink(l);const t=e.pyimport("sys"),r=e.pyimport("pathlib"),n="/tmp/pyodide_worker_runner/";t.path.append(n),r.Path(n).mkdir(),r.Path(n+"pyodide_worker_runner.py").write_text(d),e.pyimport("pyodide_worker_runner")}const y=new Map;function g(e,t){return function(r,n){return n.toJs&&(n=n.toJs({dict_converter:Object.fromEntries})),"input"===r?(t.input&&t.input(n.prompt),e.readMessage()+"\n"):"sleep"!==r?"output"===r?t.output(n.parts):t.other(r,n):void e.syncSleep(1e3*n.seconds)}}function _(e){return(0,s.syncExpose)((function(t,r){for(var n=arguments.length,o=new Array(n>2?n-2:0),i=2;i<n;i++)o[i-2]=arguments[i];return u(this,void 0,void 0,(function*(){return e(Object.assign(Object.assign({},t),{interruptBuffer:r}),...o)}))}))}class v extends s.SyncClient{call(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];const o=Object.create(null,{call:{get:()=>super.call}});return u(this,void 0,void 0,(function*(){let t=null;return"undefined"!=typeof SharedArrayBuffer&&(t=new Int32Array(new SharedArrayBuffer(1*Int32Array.BYTES_PER_ELEMENT)),this.interrupter=()=>{t[0]=2}),o.call.call(this,e,t,...r)}))}}class w{constructor(e){this.loader=e,this.pyodidePromise=e()}withPyodide(e){return u(this,void 0,void 0,(function*(){const t=yield this.pyodidePromise;try{return yield e(t)}catch(e){throw e.pyodide_fatal_error&&(this.pyodidePromise=this.loader()),e}}
1))}}})(),a})(),e.exports=n(r(668),r(555),r(606))},606:module=>{module.exports=eval('"use strict";var loadPyodide=(()=>{var ne=Object.create;var O=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var oe=Object.getOwnPropertyNames;var ie=Object.getPrototypeOf,ae=Object.prototype.hasOwnProperty;var c=(e,t)=>O(e,"name",{value:t,configurable:!0}),p=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,o)=>(typeof require<"u"?require:t)[o]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw new Error(\'Dynamic require of "\'+e+\'" is not supported\')});var se=(e,t)=>{for(var o in t)O(e,o,{get:t[o],enumerable:!0})},$=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of oe(t))!ae.call(e,a)&&a!==o&&O(e,a,{get:()=>t[a],enumerable:!(r=re(t,a))||r.enumerable});return e};var b=(e,t,o)=>(o=e!=null?ne(ie(e)):{},$(t||!e||!e.__esModule?O(o,"default",{value:e,enumerable:!0}):o,e)),ce=e=>$(O({},"__esModule",{value:!0}),e);var Oe={};se(Oe,{loadPyodide:()=>B,version:()=>k});function le(e){return!isNaN(parseFloat(e))&&isFinite(e)}c(le,"_isNumber");function w(e){return e.charAt(0).toUpperCase()+e.substring(1)}c(w,"_capitalize");function L(e){return function(){return this[e]}}c(L,"_getter");var _=["isConstructor","isEval","isNative","isToplevel"],F=["columnNumber","lineNumber"],R=["fileName","functionName","source"],de=["args"],ue=["evalOrigin"],x=_.concat(F,R,de,ue);function g(e){if(e)for(var t=0;t<x.length;t++)e[x[t]]!==void 0&&this["set"+w(x[t])](e[x[t]])}c(g,"StackFrame");g.prototype={getArgs:function(){return this.args},setArgs:function(e){if(Object.prototype.toString.call(e)!=="[object Array]")throw new TypeError("Args must be an Array");this.args=e},getEvalOrigin:function(){return this.evalOrigin},setEvalOrigin:function(e){if(e instanceof g)this.evalOrigin=e;else if(e instanceof Object)this.evalOrigin=new g(e);else throw new TypeError("Eval Origin must be an Object or StackFrame")},toString:function(){var e=this.getFileName()||"",t=this.getLineNumber()||"",o=this.getColumnNumber()||"",r=this.getFunctionName()||"";return this.getIsEval()?e?"[eval] ("+e+":"+t+":"+o+")":"[eval]:"+t+":"+o:r?r+" ("+e+":"+t+":"+o+")":e+":"+t+":"+o}};g.fromString=c(function(t){var o=t.indexOf("("),r=t.lastIndexOf(")"),a=t.substring(0,o),n=t.substring(o+1,r).split(","),i=t.substring(r+1);if(i.indexOf("@")===0)var s=/@(.+?)(?::(\\d+))?(?::(\\d+))?$/.exec(i,""),l=s[1],d=s[2],u=s[3];return new g({functionName:a,args:n||void 0,fileName:l,lineNumber:d||void 0,columnNumber:u||void 0})},"StackFrame$$fromString");for(h=0;h<_.length;h++)g.prototype["get"+w(_[h])]=L(_[h]),g.prototype["set"+w(_[h])]=function(e){return function(t){this[e]=!!t}}(_[h]);var h;for(E=0;E<F.length;E++)g.prototype["get"+w(F[E])]=L(F[E]),g.prototype["set"+w(F[E])]=function(e){return function(t){if(!le(t))throw new TypeError(e+" must be a Number");this[e]=Number(t)}}(F[E]);var E;for(S=0;S<R.length;S++)g.prototype["get"+w(R[S])]=L(R[S]),g.prototype["set"+w(R[S])]=function(e){return function(t){this[e]=String(t)}}(R[S]);var S,A=g;function fe(){var e=/^\\s*at .*(\\S+:\\d+|\\(native\\))/m,t=/^(eval@)?(\\[native code])?$/;return{parse:c(function(r){if(r.stack&&r.stack.match(e))return this.parseV8OrIE(r);if(r.stack)return this.parseFFOrSafari(r);throw new Error("Cannot parse given Error object")},"ErrorStackParser$$parse"),extractLocation:c(function(r){if(r.indexOf(":")===-1)return[r];var a=/(.+?)(?::(\\d+))?(?::(\\d+))?$/,n=a.exec(r.replace(/[()]/g,""));return[n[1],n[2]||void 0,n[3]||void 0]},"ErrorStackParser$$extractLocation"),parseV8OrIE:c(function(r){var a=r.stack.split(`\n`).filter(function(n){return!!n.match(e)},this);return a.map(function(n){n.indexOf("(eval ")>-1&&(n=n.replace(/eval code/g,"eval").replace(/(\\(eval at [^()]*)|(,.*$)/g,""));var i=n.replace(/^\\s+/,"").replace(/\\(eval code/g,"(").replace(/^.*?\\s+/,""),s=i.match(/ (\\(.+\\)$)/);i=s?i.replace(s[0],""):i;var l=this.extractLocation(s?s[1]:i),d=s&&i||void 0,u=["eval","<anonymous>"].indexOf(l[0])>-1?void 0:l[0];return new A({functionName:d,fileName:u,lineNumber:l[1],columnNumber:l[2],source:n})},this)},"ErrorStackParser$$parseV8OrIE"),parseFFOrSafari:c(function(r){var a=r.stack.split(`\n`).filter(function(n){return!n.match(t)},this);return a.map(function(n){if(n.indexOf(" > eval")>-1&&(n=n.replace(/ line (\\d+)(?: > eval line \\d+)* > eval:\\d+:\\d+/g,":$1")),n.indexOf("@")===-1&&n.indexOf(":")===-1)return new A({functionName:n});var i=/((.*".+"[^@]*)?[^@]*)(?:@)/,s=n.match(i),l=s&&s[1]?s[1]:void 0,d=this.extractLocation(n.replace(i,""));return new A({functionName:l,fileName:d[0],lineNumber:d[1],columnNumber:d[2],source:n})},this)},"ErrorStackParser$$parseFFOrSafari")}}c(fe,"ErrorStackParser");var me=new fe;var j=me;var y=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string"&&!process.browser,T=y&&typeof module<"u"&&typeof module.exports<"u"&&typeof p<"u"&&typeof __dirname<"u",H=y&&!T,Le=typeof globalThis.Bu
vendor: 5,237 bytes, line 1
1n<"u",pe=typeof Deno<"u",V=!y&&!pe,z=V&&typeof window=="object"&&typeof document=="object"&&typeof document.createElement=="function"&&typeof sessionStorage=="object"&&typeof importScripts!="function",q=V&&typeof importScripts=="function"&&typeof self=="object",Te=typeof navigator=="object"&&typeof navigator.userAgent=="string"&&navigator.userAgent.indexOf("Chrome")==-1&&navigator.userAgent.indexOf("Safari")>-1;var K,U,Y,J,C;async function M(){if(!y||(K=(await import(/* webpackIgnore */"node:url")).default,J=await import(/* webpackIgnore */"node:fs"),C=await import(/* webpackIgnore */"node:fs/promises"),Y=(await import(/* webpackIgnore */"node:vm")).default,U=await import(/* webpackIgnore */"node:path"),W=U.sep,typeof p<"u"))return;let e=J,t=await import(/* webpackIgnore */"node:crypto"),o=await import(/* webpackIgnore */"ws"),r=await import(/* webpackIgnore */"node:child_process"),a={fs:e,crypto:t,ws:o,child_process:r};({});}c(M,"initNodeModules");function ge(e,t){return U.resolve(t||".",e)}c(ge,"node_resolvePath");function ye(e,t){return t===void 0&&(t=location),new URL(e,t).toString()}c(ye,"browser_resolvePath");var D;y?D=ge:D=ye;var W;y||(W="/");function be(e,t){return e.startsWith("file://")&&(e=e.slice(7)),e.includes("://")?{response:fetch(e)}:{binary:C.readFile(e).then(o=>new Uint8Array(o.buffer,o.byteOffset,o.byteLength))}}c(be,"node_getBinaryResponse");function ve(e,t){let o=new URL(e,location);return{response:fetch(o,t?{integrity:t}:{})}}c(ve,"browser_getBinaryResponse");var P;y?P=be:P=ve;async function G(e,t){let{response:o,binary:r}=P(e,t);if(r)return r;let a=await o;if(!a.ok)throw new Error(`Failed to load \'${e}\': request failed.`);return new Uint8Array(await a.arrayBuffer())}c(G,"loadBinaryFile");var I;if(z)I=c(async e=>await import(/* webpackIgnore */e),"loadScript");else if(q)I=c(async e=>{try{globalThis.importScripts(e)}catch(t){if(t instanceof TypeError)await import(/* webpackIgnore */e);else throw t}},"loadScript");else if(y)I=he;else throw new Error("Cannot determine runtime environment");async function he(e){e.startsWith("file://")&&(e=e.slice(7)),e.includes("://")?Y.runInThisContext(await(await fetch(e)).text()):await import(/* webpackIgnore */K.pathToFileURL(e).href)}c(he,"nodeLoadScript");async function X(e){if(y){await M();let t=await C.readFile(e,{encoding:"utf8"});return JSON.parse(t)}else return await(await fetch(e)).json()}c(X,"loadLockFile");async function Q(){if(T)return __dirname;let e;try{throw new Error}catch(r){e=r}let t=j.parse(e)[0].fileName;if(y&&!t.startsWith("file://")&&(t=`file://${t}`),H){let r=await import(/* webpackIgnore */"node:path");return(await import(/* webpackIgnore */"node:url")).fileURLToPath(r.dirname(t))}let o=t.lastIndexOf(W);if(o===-1)throw new Error("Could not extract indexURL path from pyodide module location");return t.slice(0,o)}c(Q,"calculateDirname");function Z(e){let t=e.FS,o=e.FS.filesystems.MEMFS,r=e.PATH,a={DIR_MODE:16895,FILE_MODE:33279,mount:function(n){if(!n.opts.fileSystemHandle)throw new Error("opts.fileSystemHandle is required");return o.mount.apply(null,arguments)},syncfs:async(n,i,s)=>{try{let l=a.getLocalSet(n),d=await a.getRemoteSet(n),u=i?d:l,m=i?l:d;await a.reconcile(n,u,m),s(null)}catch(l){s(l)}},getLocalSet:n=>{let i=Object.create(null);function s(u){return u!=="."&&u!==".."}c(s,"isRealDir");function l(u){return m=>r.join2(u,m)}c(l,"toAbsolute");let d=t.readdir(n.mountpoint).filter(s).map(l(n.mountpoint));for(;d.length;){let u=d.pop(),m=t.stat(u);t.isDir(m.mode)&&d.push.apply(d,t.readdir(u).filter(s).map(l(u))),i[u]={timestamp:m.mtime,mode:m.mode}}return{type:"local",entries:i}},getRemoteSet:async n=>{let i=Object.create(null),s=await Ee(n.opts.fileSystemHandle);for(let[l,d]of s)l!=="."&&(i[r.join2(n.mountpoint,l)]={timestamp:d.kind==="file"?(await d.getFile()).lastModifiedDate:new Date,mode:d.kind==="file"?a.FILE_MODE:a.DIR_MODE});return{type:"remote",entries:i,handles:s}},loadLocalEntry:n=>{let s=t.lookupPath(n).node,l=t.stat(n);if(t.isDir(l.mode))return{timestamp:l.mtime,mode:l.mode};if(t.isFile(l.mode))return s.contents=o.getFileDataAsTypedArray(s),{timestamp:l.mtime,mode:l.mode,contents:s.contents};throw new Error("node type not supported")},storeLocalEntry:(n,i)=>{if(t.isDir(i.mode))t.mkdirTree(n,i.mode);else if(t.isFile(i.mode))t.writeFile(n,i.contents,{canOwn:!0});else throw new Error("node type not supported");t.chmod(n,i.mode),t.utime(n,i.timestamp,i.timestamp)},removeLocalEntry:n=>{var i=t.stat(n);t.isDir(i.mode)?t.rmdir(n):t.isFile(i.mode)&&t.unlink(n)},loadRemoteEntry:async n=>{if(n.kind==="file"){let i=await n.getFile();return{contents:new Uint8Array(await i.arrayBuffer()),mode:a.FILE_MODE,timestamp:i.lastModifiedDate}}else{if(n.kind==="directory")return{mode:a.DIR_MODE,timestamp:new Date};throw new Error("unknown kind: "+n.kind)}},storeRemoteEntry:async(n,i,s)=>{let l=n.get(r.dirname(i)),d=t.isFile(s.mode)?await l.getFileHandle(r.basename(i),{create:!0}):await l.getDirectoryHandle(r.basename(i),{create:!0});if(d.kind==="file"){let u=await d.createWritable();await u.write(s.contents),await u.close()}n.set(i,d)},removeRemoteEntry:async(n,i)=>{await n.get(r.dirname(i)).removeEntry(r.basename(i)),n.delete(i)},reconcile:async(n,i,s)=>{let l=0,d=[];
1Object.keys(i.entries).forEach(function(f){let v=i.entries[f],N=s.entries[f];(!N||t.isFile(v.mode)&&v.timestamp.getTime()>N.timestamp.getTime())&&(d.push(f),l++)}),d.sort();let u=[];if(Object.keys(s.entries).forEach(function(f){i.entries[f]||(u.push(f),l++)}),u.sort().reverse(),!l)return;let m=i.type==="remote"?i.handles:s.handles;for(let f of d){let v=r.normalize(f.replace(n.mountpoint,"/")).substring(1);if(s.type==="local"){let N=m.get(v),te=await a.loadRemoteEntry(N);a.storeLocalEntry(f,te)}else{let N=a.loadLocalEntry(f);await a.storeRemoteEntry(m,v,N)}}for(let f of u)if(s.type==="local")a.removeLocalEntry(f);else{let v=r.normalize(f.replace(n.mountpoint,"/")).substring(1);await a.removeRemoteEntry(m,v)}}};e.FS.filesystems.NATIVEFS_ASYNC=a}c(Z,"initializeNativeFS");var Ee=c(async e=>{let t=[];async function o(a){for await(let n of a.values())t.push(n),n.kind==="directory"&&await o(n)}c(o,"collect"),await o(e);let r=new Map;r.set(".",e);for(let a of t){let n=(await e.resolve(a)).join("/");r.set(n,a)}return r},"getFsHandles");function ee(e){let t={noImageDecoding:!0,noAudioDecoding:!0,noWasmDecoding:!1,preRun:Fe(e),quit(o,r){throw t.exited={status:o,toThrow:r},r},print:e.stdout,printErr:e.stderr,arguments:e.args,API:{config:e},locateFile:o=>e.indexURL+o,instantiateWasm:Re(e.indexURL)};return t}c(ee,"createSettings");function Se(e){return function(t){let o="/";try{t.FS.mkdirTree(e)}catch(r){console.error(`Error occurred while making a home directory \'${e}\':`),console.error(r),console.error(`Using \'${o}\' for a home directory instead`),e=o}t.FS.chdir(e)}}c(Se,"createHomeDirectory");function we(e){return function(t){Object.assign(t.ENV,e)}}c(we,"setEnvironment");function Ne(e){return t=>{for(let o of e)t.FS.mkdirTree(o),t.FS.mount(t.FS.filesystems.NODEFS,{root:o},o)}}c(Ne,"mountLocalDirectories");function _e(e){let t=G(e);return o=>{let r=o._py_version_major(),a=o._py_version_minor();o.FS.mkdirTree("/lib"),o.FS.mkdirTree(`/lib/python${r}.${a}/site-packages`),o.addRunDependency("install-stdlib"),t.then(n=>{o.FS.writeFile(`/lib/python${r}${a}.zip`,n)}).catch(n=>{console.error("Error occurred while installing the standard library:"),console.error(n)}).finally(()=>{o.removeRunDependency("install-stdlib")})}}c(_e,"installStdlib");function Fe(e){let t;return e.stdLibURL!=null?t=e.stdLibURL:t=e.indexURL+"python_stdlib.zip",[_e(t),Se(e.env.HOME),we(e.env),Ne(e._node_mounts),Z]}c(Fe,"getFileSystemInitializationFuncs");function Re(e){let{binary:t,response:o}=P(e+"pyodide.asm.wasm");return function(r,a){return async function(){try{let n;o?n=await WebAssembly.instantiateStreaming(o,r):n=await WebAssembly.instantiate(await t,r);let{instance:i,module:s}=n;typeof WasmOffsetConverter<"u"&&(wasmOffsetConverter=new WasmOffsetConverter(wasmBinary,s)),a(i,s)}catch(n){console.warn("wasm instantiation failed!"),console.warn(n)}}(),{}}}c(Re,"getInstantiateWasmFunc");var k="0.26.2";async function B(e={}){var u,m;await M();let t=e.indexURL||await Q();t=D(t),t.endsWith("/")||(t+="/"),e.indexURL=t;let o={fullStdLib:!1,jsglobals:globalThis,stdin:globalThis.prompt?globalThis.prompt:void 0,lockFileURL:t+"pyodide-lock.json",args:[],_node_mounts:[],env:{},packageCacheDir:t,packages:[],enableRunUntilComplete:!1,checkAPIVersion:!0},r=Object.assign(o,e);(u=r.env).HOME??(u.HOME="/home/pyodide"),(m=r.env).PYTHONINSPECT??(m.PYTHONINSPECT="1");let a=ee(r),n=a.API;if(n.lockFilePromise=X(r.lockFileURL),typeof _createPyodideModule!="function"){let f=`${r.indexURL}pyodide.asm.js`;await I(f)}let i;if(e._loadSnapshot){let f=await e._loadSnapshot;ArrayBuffer.isView(f)?i=f:i=new Uint8Array(f),a.noInitialRun=!0,a.INITIAL_MEMORY=i.length}let s=await _createPyodideModule(a);if(a.exited)throw a.exited.toThrow;if(e.pyproxyToStringRepr&&n.setPyProxyToStringMethod(!0),n.version!==k&&r.checkAPIVersion)throw new Error(`Pyodide version does not match: \'${k}\' <==> \'${n.version}\'. If you updated the Pyodide version, make sure you also updated the \'indexURL\' parameter passed to loadPyodide.`);s.locateFile=f=>{throw new Error("Didn\'t expect to load any more file_packager files!")};let l;i&&(l=n.restoreSnapshot(i));let d=n.finalizeBootstrap(l);return n.sys.path.insert(0,n.config.env.HOME),d.version.includes("dev")||n.setCdnUrl(`https://cdn.jsdelivr.net/pyodide/v${d.version}/full/`),n._pyodide.set_excepthook(),await n.packageIndexReady,n.initializeStreams(r.
1stdin,r.stdout,r.stderr),d}c(B,"loadPyodide");({});return ce(Oe);})();\ntry{Object.assign(exports,loadPyodide)}catch(_){}\n({});\nmodule.exports = {loadPyodide: loadPyodide.loadPyodide, version: loadPyodide.version};\n//# sourceMappingURL=pyodide.js.map\n')},184:e=>{self,e.exports=(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{isServiceWorkerRequest:()=>i,serviceWorkerFetchListener:()=>a,asyncSleep:()=>s,ServiceWorkerError:()=>l,writeMessageAtomics:()=>c,writeMessageServiceWorker:()=>u,writeMessage:()=>d,makeChannel:()=>p,makeAtomicsChannel:()=>m,makeServiceWorkerChannel:()=>f,readMessage:()=>y,syncSleep:()=>g,uuidv4:()=>_});var r=function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{l(n.next(e))}catch(e){i(e)}}function s(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((n=n.apply(e,t||[])).next())}))};const n="__SyncMessageServiceWorkerInput__",o="__sync-message-v2__";function i(e){return"string"!=typeof e&&(e=e.request.url),e.includes(n)}function a(){const e={},t={};return n=>{const{url:a}=n.request;return!!i(a)&&(n.respondWith(function(){return r(this,void 0,void 0,(function*(){function r(e){const t={message:e,version:o};return new Response(JSON.stringify(t),{status:200})}if(a.endsWith("/read")){const{messageId:o,timeout:i}=yield n.request.json(),a=e[o];return a?(delete e[o],r(a)):yield new Promise((e=>{t[o]=e,setTimeout((function(){delete t[o],e(new Response("",{status:408}))}),i)}))}if(a.endsWith("/write")){const{message:o,messageId:i}=yield n.request.json(),a=t[i];return a?(a(r(o)),delete t[i]):e[i]=o,r({early:!a})}if(a.endsWith("/version"))return new Response(o,{status:200})}))}()),!0)}}function s(e){return new Promise((t=>setTimeout(t,e)))}class l extends Error{constructor(e,t){super(`Received status ${t} from ${e}. Ensure the service worker is registered and active.`),this.url=e,this.status=t,this.type="ServiceWorkerError",Object.setPrototypeOf(this,l.prototype)}}function c(e,t){const r=(new TextEncoder).encode(JSON.stringify(t)),{data:n,meta:o}=e;if(r.length>n.length)throw new Error("Message is too big, increase bufferSize when making channel.");n.set(r,0),Atomics.store(o,0,r.length),Atomics.store(o,1,1),Atomics.notify(o,1)}function u(e,t,n){return r(this,void 0,void 0,(function*(){yield navigator.serviceWorker.ready;const r=e.baseUrl+"/write",i=Date.now();for(;;){const a={message:t,messageId:n},c=yield fetch(r,{method:"POST",body:JSON.stringify(a)});if(200===c.status&&(yield c.json()).version===o)return;if(!(Date.now()-i<e.timeout))throw new l(r,c.status);yield s(100)}}))}function d(e,t,n){return r(this,void 0,void 0,(function*(){"atomics"===e.type?c(e,t):yield u(e,t,n)}))}function p(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return"undefined"!=typeof SharedArrayBuffer?m(e.atomics):"serviceWorker"in navigator?f(e.serviceWorker):null}function m(){let{bufferSize:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{type:"atomics",data:new Uint8Array(new SharedArrayBuffer(e||131072)),meta:new Int32Array(new SharedArrayBuffer(2*Int32Array.BYTES_PER_ELEMENT))}}function f(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{type:"serviceWorker",baseUrl:(e.scope||"/")+n,timeout:e.timeout||5e3}}function h(e,t){return e>0?+e:t}function y(e,t){let{checkInterrupt:r,checkTimeout:n,timeout:i}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=performance.now();n=h(n,r?100:5e3);const s=h(i,Number.POSITIVE_INFINITY);let c;if("atomics"===e.type){const{data:t,meta:r}=e;c=()=>{if("timed-out"===Atomics.wait(r,1,0,n))return null;{const e=Atomics.exchange(r,0,0),n=t.slice(0,e);Atomics.store(r,1,0);const o=(new TextDecoder).decode(n);return JSON.parse(o)}}}else c=()=>{const r=new XMLHttpRequest,i=e.baseUrl+"/read";r.open("POST",i,!1);const s={messageId:t,timeout:n};r.send(JSON.stringify(s));const{status:c}=r;if(408===c)return null;if(200===c){const e=JSON.parse(r.responseText);return e.version!==o?null:e.message}if(performance.now()-a<e.timeout)return null;throw new l(i,c)};for(;;){const e=s-(performance.now()-a);if(e<=0)return null;n=Math.min(n,e);const t=c();if(null!==t)return t;if(null==r?void 0:r())return null}}function g(e,t){if(e=h(e,0))if("undefined"!=typeof SharedArrayBuffer){const t=new Int32Array(new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT));t[0]=0,Atomics.wait(t,0,0,e)}else y(t,`sleep ${e} ${_()}`,{timeout:e})}let _;return _="randomUUID"in crypto?function(){return crypto.randomUUID()}:function(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(e=>{const t=Number(e);return(t^crypto.getRandomValues(new Uint8Array(1))[0]&15>>t/4).toString(16)}))},t})()},555:(e,t,r)=>{"use strict";r.r(t),r.d(t,{createEndpoint:()=>
1o,expose:()=>c,proxy:()=>g,proxyMarker:()=>n,releaseProxy:()=>i,transfer:()=>y,transferHandlers:()=>l,windowEndpoint:()=>_,wrap:()=>d});const n=Symbol("Comlink.proxy"),o=Symbol("Comlink.endpoint"),i=Symbol("Comlink.releaseProxy"),a=Symbol("Comlink.thrown"),s=e=>"object"===typeof e&&null!==e||"function"===typeof e,l=new Map([["proxy",{canHandle:e=>s(e)&&e[n],serialize(e){const{port1:t,port2:r}=new MessageChannel;return c(e,t),[r,[r]]},deserialize:e=>(e.start(),d(e))}],["throw",{canHandle:e=>s(e)&&a in e,serialize(e){let t,{value:r}=e;return t=r instanceof Error?{isError:!0,value:{message:r.message,name:r.name,stack:r.stack}}:{isError:!1,value:r},[t,[]]},deserialize(e){if(e.isError)throw Object.assign(new Error(e.value.message),e.value);throw e.value}}]]);function c(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:self;t.addEventListener("message",(function r(n){if(!n||!n.data)return;const{id:o,type:i,path:s}=Object.assign({path:[]},n.data),l=(n.data.argumentList||[]).map(w);let d;try{const t=s.slice(0,-1).reduce(((e,t)=>e[t]),e),r=s.reduce(((e,t)=>e[t]),e);switch(i){case"GET":d=r;break;case"SET":t[s.slice(-1)[0]]=w(n.data.value),d=!0;break;case"APPLY":d=r.apply(t,l);break;case"CONSTRUCT":d=g(new r(...l));break;case"ENDPOINT":{const{port1:t,port2:r}=new MessageChannel;c(e,r),d=y(t,[t])}break;case"RELEASE":d=void 0;break;default:return}}catch(p){d={value:p,[a]:0}}Promise.resolve(d).catch((e=>({value:e,[a]:0}))).then((e=>{const[n,a]=v(e);t.postMessage(Object.assign(Object.assign({},n),{id:o}),a),"RELEASE"===i&&(t.removeEventListener("message",r),u(t))}))})),t.start&&t.start()}function u(e){(function(e){return"MessagePort"===e.constructor.name})(e)&&e.close()}function d(e,t){return m(e,[],t)}function p(e){if(e)throw new Error("Proxy has been released and is not useable")}function m(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},n=!1;const a=new Proxy(r,{get(r,o){if(p(n),o===i)return()=>b(e,{type:"RELEASE",path:t.map((e=>e.toString()))}).then((()=>{u(e),n=!0}));if("then"===o){if(0===t.length)return{then:()=>a};const r=b(e,{type:"GET",path:t.map((e=>e.toString()))}).then(w);return r.then.bind(r)}return m(e,[...t,o])},set(r,o,i){p(n);const[a,s]=v(i);return b(e,{type:"SET",path:[...t,o].map((e=>e.toString())),value:a},s).then(w)},apply(r,i,a){p(n);const s=t[t.length-1];if(s===o)return b(e,{type:"ENDPOINT"}).then(w);if("bind"===s)return m(e,t.slice(0,-1));const[l,c]=f(a);return b(e,{type:"APPLY",path:t.map((e=>e.toString())),argumentList:l},c).then(w)},construct(r,o){p(n);const[i,a]=f(o);return b(e,{type:"CONSTRUCT",path:t.map((e=>e.toString())),argumentList:i},a).then(w)}});return a}function f(e){const t=e.map(v);return[t.map((e=>e[0])),(r=t.map((e=>e[1])),Array.prototype.concat.apply([],r))];var r}const h=new WeakMap;function y(e,t){return h.set(e,t),e}function g(e){return Object.assign(e,{[n]:!0})}function _(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:self,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"*";return{postMessage:(t,n)=>e.postMessage(t,r,n),addEventListener:t.addEventListener.bind(t),removeEventListener:t.removeEventListener.bind(t)}}function v(e){for(const[t,r]of l)if(r.canHandle(e)){const[n,o]=r.serialize(e);return[{type:"HANDLER",name:t,value:n},o]}return[{type:"RAW",value:e},h.get(e)||[]]}function w(e){switch(e.type){case"HANDLER":return l.get(e.name).deserialize(e.value);case"RAW":return e.value}}function b(e,t,r){return new Promise((n=>{const o=new Array(4).fill(0).map((()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16))).join("-");e.addEventListener("message",(function t(r){r.data&&r.data.id&&r.data.id===o&&(e.removeEventListener("message",t),n(r.data))})),e.start&&e.start(),e.postMessage(Object.assign({id:o},t),r)}))}}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](r,r.exports,__webpack_require__),r.exports}__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}
1),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.p="/course/";var __webpack_exports__={};(()=>{"use strict";var e=__webpack_require__(555),t=__webpack_require__.p+"static/media/python_core.tar.65a59334243ccdddd25a.load_by_url",r=__webpack_require__(575);const n=new r.PyodideFatalErrorReloader((async()=>{const e=await(0,r.loadPyodideAndPackage)({url:t,format:"tar"});return e.pyimport("core.init_pyodide").init("en"),e}));let o=1;const i=(0,r.pyodideExpose)((async function(e,t,i,a){let s;const l=(0,r.makeRunnerCallback)(e,{input:()=>a(),output:e=>{s=i(e)}});return await n.withPyodide((async e=>{const r=e.pyimport("pyodide_worker_runner");try{await r.install_imports(t.input)}catch(a){console.error(a)}const n=e.pyimport("core.checker");n.default_runner.set_filename(`/my_program_${o++}.py`);const i=n.check_entry(t,l);return await s,i.toJs({dict_converter:Object.fromEntries})}))}));e.expose({runCode:i})})()})(); 2//# sourceMappingURL=Worker.2ae4d325.worker.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.