From 2a906bd48969ca373d8421949b7b10b1f1ccb43a Mon Sep 17 00:00:00 2001 From: Roman Yurchak Date: Thu, 22 Apr 2021 21:58:20 +0200 Subject: [PATCH] MAINT hide jsdoc_dump.json from grep results [skip ci] (#1531) --- docs/sphinx_pyodide/tests/jsdoc_dump.json | 1 - docs/sphinx_pyodide/tests/jsdoc_dump.json.gz | Bin 0 -> 9709 bytes docs/sphinx_pyodide/tests/test_directives.py | 4 +++- 3 files changed, 3 insertions(+), 2 deletions(-) delete mode 100644 docs/sphinx_pyodide/tests/jsdoc_dump.json create mode 100644 docs/sphinx_pyodide/tests/jsdoc_dump.json.gz diff --git a/docs/sphinx_pyodide/tests/jsdoc_dump.json b/docs/sphinx_pyodide/tests/jsdoc_dump.json deleted file mode 100644 index 8bf07734c..000000000 --- a/docs/sphinx_pyodide/tests/jsdoc_dump.json +++ /dev/null @@ -1 +0,0 @@ -[{"comment": "/**\n * A promise that resolves to ``undefined`` when Pyodide is finished loading.\n *\n * @type Promise\n */", "meta": {"range": [165, 26495], "filename": "pyodide.js", "lineno": 10, "columnno": 0, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000003", "name": "globalThis.languagePluginLoader", "type": "CallExpression", "value": "", "paramnames": []}}, "description": "A promise that resolves to ``undefined`` when Pyodide is finished loading.", "type": {"names": ["Promise"]}, "name": "languagePluginLoader", "longname": "globalThis.languagePluginLoader", "kind": "member", "memberof": "globalThis", "scope": "static"}, {"comment": "", "meta": {"range": [220, 231], "filename": "pyodide.js", "lineno": 11, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000011", "name": "Module", "type": "ObjectExpression", "value": "{}"}}, "undocumented": true, "name": "Module", "longname": "~Module", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [413, 473], "filename": "pyodide.js", "lineno": 15, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000015", "name": "baseURL", "type": "LogicalExpression", "value": ""}}, "undocumented": true, "name": "baseURL", "longname": "~baseURL", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [477, 536], "filename": "pyodide.js", "lineno": 16, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000023", "name": "baseURL", "type": "BinaryExpression", "funcscope": "", "value": "", "paramnames": []}}, "undocumented": true, "name": "baseURL", "longname": "~baseURL", "kind": "member", "memberof": "", "scope": "inner"}, {"comment": "", "meta": {"range": [631, 666], "filename": "pyodide.js", "lineno": 20, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000038", "name": "DEFAULT_CHANNEL", "type": "Literal", "value": "default channel"}}, "undocumented": true, "name": "DEFAULT_CHANNEL", "longname": "~DEFAULT_CHANNEL", "kind": "constant", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [725, 811], "filename": "pyodide.js", "lineno": 23, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000042", "name": "package_uri_regexp", "type": "NewExpression", "value": ""}}, "undocumented": true, "name": "package_uri_regexp", "longname": "~package_uri_regexp", "kind": "constant", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [820, 1094], "filename": "pyodide.js", "lineno": 26, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000049", "name": "_uri_to_package_name", "type": "ArrowFunctionExpression"}, "vars": {"match": "~_uri_to_package_name~match"}}, "undocumented": true, "name": "_uri_to_package_name", "longname": "~_uri_to_package_name", "kind": "function", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [920, 964], "filename": "pyodide.js", "lineno": 28, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000062", "name": "match", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "match", "longname": "~_uri_to_package_name~match", "kind": "member", "memberof": "~_uri_to_package_name", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [1103, 1113], "filename": "pyodide.js", "lineno": 36, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000077", "name": "loadScript"}}, "undocumented": true, "name": "loadScript", "longname": "~loadScript", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [1153, 1394], "filename": "pyodide.js", "lineno": 38, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000085", "name": "loadScript", "type": "ArrowFunctionExpression", "funcscope": "", "paramnames": ["url"]}, "vars": {"": null}}, "undocumented": true, "name": "loadScript", "longname": "~loadScript", "kind": "function", "memberof": "", "scope": "inner"}, {"comment": "", "meta": {"range": [1215, 1261], "filename": "pyodide.js", "lineno": 39, "columnno": 12, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000096", "name": "script", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "script", "longname": "~script", "kind": "constant", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [1269, 1285], "filename": "pyodide.js", "lineno": 40, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000106", "name": "script.src", "type": "Identifier", "funcscope": "", "value": "url", "paramnames": []}}, "undocumented": true, "name": "src", "longname": "~script.src", "kind": "member", "memberof": "~script", "scope": "static"}, {"comment": "", "meta": {"range": [1293, 1312], "filename": "pyodide.js", "lineno": 41, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000112", "name": "script.onload", "type": "Identifier", "funcscope": "", "value": "res", "paramnames": []}}, "undocumented": true, "name": "onload", "longname": "~script.onload", "kind": "member", "memberof": "~script", "scope": "static"}, {"comment": "", "meta": {"range": [1320, 1340], "filename": "pyodide.js", "lineno": 42, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000118", "name": "script.onerror", "type": "Identifier", "funcscope": "", "value": "rej", "paramnames": []}}, "undocumented": true, "name": "onerror", "longname": "~script.onerror", "kind": "member", "memberof": "~script", "scope": "static"}, {"comment": "", "meta": {"range": [1448, 1553], "filename": "pyodide.js", "lineno": 46, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000139", "name": "loadScript", "type": "ArrowFunctionExpression", "funcscope": "", "paramnames": ["url"]}}, "undocumented": true, "name": "loadScript", "longname": "~loadScript", "kind": "function", "memberof": "", "scope": "inner"}, {"comment": "", "meta": {"range": [1633, 3256], "filename": "pyodide.js", "lineno": 53, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000155", "name": "recursiveDependencies", "type": "FunctionDeclaration", "paramnames": ["names", "_messageCallback", "errorCallback", "sharedLibsOnly"]}, "vars": {"packages": "~recursiveDependencies~packages", "loadedPackages": "~recursiveDependencies~loadedPackages", "sharedLibraries": "~recursiveDependencies~sharedLibraries", "toLoad": "~recursiveDependencies~toLoad", "addPackage": "~recursiveDependencies~addPackage", "": null, "name": "~recursiveDependencies~name", "pkgname": "~recursiveDependencies~pkgname", "onlySharedLibs": "~recursiveDependencies~onlySharedLibs", "c": "~recursiveDependencies~c"}}, "undocumented": true, "name": "recursiveDependencies", "longname": "~recursiveDependencies", "kind": "function", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [1765, 1818], "filename": "pyodide.js", "lineno": 55, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000163", "name": "packages", "type": "MemberExpression", "value": "self.pyodide._module.packages.dependencies"}}, "undocumented": true, "name": "packages", "longname": "~recursiveDependencies~packages", "kind": "constant", "memberof": "~recursiveDependencies", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [1830, 1874], "filename": "pyodide.js", "lineno": 56, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000175", "name": "loadedPackages", "type": "MemberExpression", "value": "self.pyodide.loadedPackages"}}, "undocumented": true, "name": "loadedPackages", "longname": "~recursiveDependencies~loadedPackages", "kind": "constant", "memberof": "~recursiveDependencies", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [1886, 1948], "filename": "pyodide.js", "lineno": 57, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000183", "name": "sharedLibraries", "type": "MemberExpression", "value": "self.pyodide._module.packages.shared_library"}}, "undocumented": true, "name": "sharedLibraries", "longname": "~recursiveDependencies~sharedLibraries", "kind": "constant", "memberof": "~recursiveDependencies", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [1960, 1978], "filename": "pyodide.js", "lineno": 58, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000195", "name": "toLoad", "type": "NewExpression", "value": ""}}, "undocumented": true, "name": "toLoad", "longname": "~recursiveDependencies~toLoad", "kind": "constant", "memberof": "~recursiveDependencies", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [1991, 2486], "filename": "pyodide.js", "lineno": 60, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000200", "name": "addPackage", "type": "ArrowFunctionExpression"}, "vars": {"dep": "~recursiveDependencies~addPackage~dep"}}, "undocumented": true, "name": "addPackage", "longname": "~recursiveDependencies~addPackage", "kind": "function", "memberof": "~recursiveDependencies", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [2424, 2427], "filename": "pyodide.js", "lineno": 71, "columnno": 15, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000230", "name": "dep"}}, "undocumented": true, "name": "dep", "longname": "~recursiveDependencies~addPackage~dep", "kind": "member", "memberof": "~recursiveDependencies~addPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [2501, 2505], "filename": "pyodide.js", "lineno": 75, "columnno": 13, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000242", "name": "name"}}, "undocumented": true, "name": "name", "longname": "~recursiveDependencies~name", "kind": "member", "memberof": "~recursiveDependencies", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [2530, 2566], "filename": "pyodide.js", "lineno": 76, "columnno": 12, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000247", "name": "pkgname", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "pkgname", "longname": "~recursiveDependencies~pkgname", "kind": "constant", "memberof": "~recursiveDependencies", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [3030, 3056], "filename": "pyodide.js", "lineno": 91, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000316", "name": "onlySharedLibs", "type": "NewExpression", "funcscope": "~recursiveDependencies", "value": "", "paramnames": []}}, "undocumented": true, "name": "onlySharedLibs", "longname": "~recursiveDependencies~onlySharedLibs", "kind": "member", "memberof": "~recursiveDependencies", "scope": "inner"}, {"comment": "", "meta": {"range": [3073, 3074], "filename": "pyodide.js", "lineno": 92, "columnno": 15, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000322", "name": "c"}}, "undocumented": true, "name": "c", "longname": "~recursiveDependencies~c", "kind": "member", "memberof": "~recursiveDependencies", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [3260, 8257], "filename": "pyodide.js", "lineno": 102, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000352", "name": "_loadPackage", "type": "FunctionDeclaration", "paramnames": ["names", "messageCallback", "errorCallback"]}, "vars": {"toLoad": "~_loadPackage~toLoad", "Module.locateFile": "~Module.locateFile", "": null, "windowErrorHandler": "~_loadPackage~windowErrorHandler", "windowErrorPromise": "~_loadPackage~windowErrorPromise", "scriptPromises": "~_loadPackage~scriptPromises", "undefined": null, "loaded": "~_loadPackage~loaded", "scriptSrc": "~_loadPackage~scriptSrc", "waitRunDependency": "~_loadPackage~waitRunDependency", "successPromise": "~_loadPackage~successPromise", "packageList": "~_loadPackage~packageList", "self.pyodide.loadedPackages[undefined]": "self.pyodide.loadedPackages[undefined]", "resolveMsg": "~_loadPackage~resolveMsg", "package_names": "~_loadPackage~package_names"}}, "undocumented": true, "name": "_loadPackage", "longname": "~_loadPackage", "kind": "function", "memberof": "", "scope": "inner", "params": [], "async": true}, {"comment": "", "meta": {"range": [3380, 3449], "filename": "pyodide.js", "lineno": 104, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000359", "name": "toLoad", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "toLoad", "longname": "~_loadPackage~toLoad", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [3562, 3916], "filename": "pyodide.js", "lineno": 108, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000367", "name": "Module.locateFile", "type": "ArrowFunctionExpression", "paramnames": ["path"]}, "vars": {"pkg": "~Module.locateFile~pkg", "package_uri": "~Module.locateFile~package_uri"}}, "undocumented": true, "name": "locateFile", "longname": "~Module.locateFile", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [3653, 3686], "filename": "pyodide.js", "lineno": 110, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000375", "name": "pkg", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "pkg", "longname": "~Module.locateFile~pkg", "kind": "member", "memberof": "~Module.locateFile", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [3729, 3758], "filename": "pyodide.js", "lineno": 112, "columnno": 12, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000391", "name": "package_uri", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "package_uri", "longname": "~Module.locateFile~package_uri", "kind": "member", "memberof": "~Module.locateFile", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [4557, 4575], "filename": "pyodide.js", "lineno": 134, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000447", "name": "windowErrorHandler"}}, "undocumented": true, "name": "windowErrorHandler", "longname": "~_loadPackage~windowErrorHandler", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [4585, 4603], "filename": "pyodide.js", "lineno": 135, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000450", "name": "windowErrorPromise"}}, "undocumented": true, "name": "windowErrorPromise", "longname": "~_loadPackage~windowErrorPromise", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [4636, 5053], "filename": "pyodide.js", "lineno": 137, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000458", "name": "windowErrorPromise", "type": "NewExpression", "funcscope": "~_loadPackage", "value": "", "paramnames": []}}, "undocumented": true, "name": "windowErrorPromise", "longname": "~_loadPackage~windowErrorPromise", "kind": "member", "memberof": "~_loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [4694, 4983], "filename": "pyodide.js", "lineno": 138, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000467", "name": "windowErrorHandler", "type": "ArrowFunctionExpression", "funcscope": "", "paramnames": ["e"]}}, "undocumented": true, "name": "windowErrorHandler", "longname": "~windowErrorHandler", "kind": "function", "memberof": "", "scope": "inner"}, {"comment": "", "meta": {"range": [5128, 5170], "filename": "pyodide.js", "lineno": 148, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000495", "name": "windowErrorPromise", "type": "NewExpression", "funcscope": "~_loadPackage", "value": "", "paramnames": []}}, "undocumented": true, "name": "windowErrorPromise", "longname": "~_loadPackage~windowErrorPromise", "kind": "member", "memberof": "~_loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [5335, 5354], "filename": "pyodide.js", "lineno": 153, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000502", "name": "scriptPromises", "type": "ArrayExpression", "value": "[]"}}, "undocumented": true, "name": "scriptPromises", "longname": "~_loadPackage~scriptPromises", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [5404, 5445], "filename": "pyodide.js", "lineno": 156, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000512", "name": "loaded", "type": "MemberExpression", "value": "self.pyodide.loadedPackages[undefined]"}}, "undocumented": true, "name": "loaded", "longname": "~_loadPackage~loaded", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [6038, 6103], "filename": "pyodide.js", "lineno": 170, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000559", "name": "scriptSrc", "type": "ConditionalExpression", "value": ""}}, "undocumented": true, "name": "scriptSrc", "longname": "~_loadPackage~scriptSrc", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [6611, 7106], "filename": "pyodide.js", "lineno": 182, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000607", "name": "waitRunDependency", "type": "FunctionDeclaration", "paramnames": []}, "vars": {"promise": "~_loadPackage~waitRunDependency~promise", "": null}}, "undocumented": true, "name": "waitRunDependency", "longname": "~_loadPackage~waitRunDependency", "kind": "function", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [6654, 6805], "filename": "pyodide.js", "lineno": 183, "columnno": 12, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000611", "name": "promise", "type": "NewExpression", "value": ""}}, "undocumented": true, "name": "promise", "longname": "~_loadPackage~waitRunDependency~promise", "kind": "constant", "memberof": "~_loadPackage~waitRunDependency", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [6691, 6795], "filename": "pyodide.js", "lineno": 184, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000619", "name": "Module.monitorRunDependencies", "type": "ArrowFunctionExpression", "paramnames": ["n"]}}, "undocumented": true, "name": "monitorRunDependencies", "longname": "~Module.monitorRunDependencies", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [7308, 7376], "filename": "pyodide.js", "lineno": 201, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000649", "name": "successPromise", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "successPromise", "longname": "~_loadPackage~successPromise", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [7632, 7648], "filename": "pyodide.js", "lineno": 211, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000688", "name": "packageList", "type": "ArrayExpression", "value": "[]"}}, "undocumented": true, "name": "packageList", "longname": "~_loadPackage~packageList", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [7693, 7731], "filename": "pyodide.js", "lineno": 213, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000698", "name": "self.pyodide.loadedPackages[undefined]", "type": "Identifier", "value": "uri", "paramnames": []}}, "undocumented": true, "name": "loadedPackages[undefined]", "longname": "self.pyodide.loadedPackages[undefined]", "kind": "member", "memberof": "self.pyodide", "scope": "static"}, {"comment": "", "meta": {"range": [7777, 7787], "filename": "pyodide.js", "lineno": 217, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000714", "name": "resolveMsg"}}, "undocumented": true, "name": "resolveMsg", "longname": "~_loadPackage~resolveMsg", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [7833, 7871], "filename": "pyodide.js", "lineno": 219, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000724", "name": "package_names", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "package_names", "longname": "~_loadPackage~package_names", "kind": "member", "memberof": "~_loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [7879, 7915], "filename": "pyodide.js", "lineno": 220, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000732", "name": "resolveMsg", "type": "TemplateLiteral", "funcscope": "~_loadPackage", "value": "", "paramnames": []}}, "undocumented": true, "name": "resolveMsg", "longname": "~_loadPackage~resolveMsg", "kind": "member", "memberof": "~_loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [7936, 7969], "filename": "pyodide.js", "lineno": 222, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000740", "name": "resolveMsg", "type": "Literal", "funcscope": "~_loadPackage", "value": "No packages loaded", "paramnames": []}}, "undocumented": true, "name": "resolveMsg", "longname": "~_loadPackage~resolveMsg", "kind": "member", "memberof": "~_loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [8367, 8403], "filename": "pyodide.js", "lineno": 237, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000762", "name": "loadPackageChain", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "loadPackageChain", "longname": "~loadPackageChain", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "/**\n *\n * The list of packages that Pyodide has loaded.\n * Use ``Object.keys(pyodide.loadedPackages)`` to get the list of names of\n * loaded packages, and ``pyodide.loadedPackages[package_name]`` to access\n * install location for a particular ``package_name``.\n *\n * @type {object}\n */", "meta": {"range": [8712, 8738], "filename": "pyodide.js", "lineno": 248, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000769", "name": "Module.loadedPackages", "type": "ObjectExpression", "funcscope": "", "value": "{}", "paramnames": []}}, "description": "The list of packages that Pyodide has loaded.\nUse ``Object.keys(pyodide.loadedPackages)`` to get the list of names of\nloaded packages, and ``pyodide.loadedPackages[package_name]`` to access\ninstall location for a particular ``package_name``.", "type": {"names": ["object"]}, "name": "loadedPackages", "longname": "~Module.loadedPackages", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "/**\n * Load a package or a list of packages over the network.\n * This makes the files for the package available in the virtual filesystem.\n * The package needs to be imported from Python before it can be used.\n * @param {String | Array} names package name, or URL. Can be either a single\n * element, or an array\n * @param {function} messageCallback A callback, called with progress messages\n * (optional)\n * @param {function} errorCallback A callback, called with error/warning\n * messages (optional)\n * @returns {Promise} Resolves to ``undefined`` when loading is complete\n */", "meta": {"range": [9345, 11911], "filename": "pyodide.js", "lineno": 262, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000775", "name": "Module.loadPackage", "type": "FunctionExpression", "funcscope": "", "paramnames": ["names", "messageCallback", "errorCallback"]}, "vars": {"names": "~Module.loadPackage~names", "sharedLibraryNames": "~Module.loadPackage~sharedLibraryNames", "sharedLibraryPackagesToLoad": "~Module.loadPackage~sharedLibraryPackagesToLoad", "oldPlugin": "~Module.loadPackage~oldPlugin", "p": "~Module.loadPackage~p", "dynamicLoadHandler": "~Module.loadPackage~dynamicLoadHandler", "": null, "loadPluginOverride": "~Module.loadPackage~loadPluginOverride", "promise": "~Module.loadPackage~promise", "loadPackageChain": "~Module.loadPackage~loadPackageChain"}}, "description": "Load a package or a list of packages over the network.\nThis makes the files for the package available in the virtual filesystem.\nThe package needs to be imported from Python before it can be used.", "params": [{"type": {"names": ["String", "Array"]}, "description": "package name, or URL. Can be either a single\nelement, or an array", "name": "names"}, {"type": {"names": ["function"]}, "description": "A callback, called with progress messages\n(optional)", "name": "messageCallback"}, {"type": {"names": ["function"]}, "description": "A callback, called with error/warning\nmessages (optional)", "name": "errorCallback"}], "returns": [{"type": {"names": ["Promise"]}, "description": "Resolves to ``undefined`` when loading is complete"}], "name": "loadPackage", "longname": "~Module.loadPackage", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [9467, 9484], "filename": "pyodide.js", "lineno": 265, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000793", "name": "names", "type": "ArrayExpression", "funcscope": "~Module.loadPackage", "value": "[\"names\"]", "paramnames": []}}, "undocumented": true, "name": "names", "longname": "~Module.loadPackage~names", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [9617, 9640], "filename": "pyodide.js", "lineno": 269, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000798", "name": "sharedLibraryNames", "type": "ArrayExpression", "funcscope": "~Module.loadPackage", "value": "[]", "paramnames": []}}, "undocumented": true, "name": "sharedLibraryNames", "longname": "~Module.loadPackage~sharedLibraryNames", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [9658, 9764], "filename": "pyodide.js", "lineno": 271, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000804", "name": "sharedLibraryPackagesToLoad", "type": "CallExpression", "funcscope": "~Module.loadPackage", "value": "", "paramnames": []}}, "undocumented": true, "name": "sharedLibraryPackagesToLoad", "longname": "~Module.loadPackage~sharedLibraryPackagesToLoad", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [10448, 10457], "filename": "pyodide.js", "lineno": 287, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000826", "name": "oldPlugin"}}, "undocumented": true, "name": "oldPlugin", "longname": "~Module.loadPackage~oldPlugin", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [10472, 10473], "filename": "pyodide.js", "lineno": 288, "columnno": 13, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000830", "name": "p"}}, "undocumented": true, "name": "p", "longname": "~Module.loadPackage~p", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [10569, 10605], "filename": "pyodide.js", "lineno": 290, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000848", "name": "oldPlugin", "type": "MemberExpression", "funcscope": "~Module.loadPackage", "value": "Module.preloadPlugins[undefined]", "paramnames": []}}, "undocumented": true, "name": "oldPlugin", "longname": "~Module.loadPackage~oldPlugin", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [10644, 11154], "filename": "pyodide.js", "lineno": 294, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000857", "name": "dynamicLoadHandler", "type": "ObjectExpression", "value": "{\"get\":\"\"}"}}, "undocumented": true, "name": "dynamicLoadHandler", "longname": "~Module.loadPackage~dynamicLoadHandler", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [10673, 11148], "filename": "pyodide.js", "lineno": 295, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000860", "name": "get", "type": "FunctionExpression"}, "vars": {"": null}}, "undocumented": true, "name": "get", "longname": "~Module.loadPackage~dynamicLoadHandler.get", "kind": "function", "memberof": "~Module.loadPackage~dynamicLoadHandler", "scope": "static"}, {"comment": "", "meta": {"range": [10832, 11072], "filename": "pyodide.js", "lineno": 299, "columnno": 12, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000885", "name": "this[\"asyncWasmLoadPromise\"]", "type": "CallExpression", "value": "", "paramnames": []}}, "undocumented": true, "name": "\"asyncWasmLoadPromise\"", "longname": "~Module.loadPackage~dynamicLoadHandler.get#\"asyncWasmLoadPromise\"", "kind": "member", "memberof": "~Module.loadPackage~dynamicLoadHandler.get", "scope": "instance"}, {"comment": "", "meta": {"range": [11021, 11034], "filename": "pyodide.js", "lineno": 302, "columnno": 45, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000904", "name": "global", "type": "Literal", "value": true}}, "undocumented": true, "name": "global", "longname": "global", "kind": "member", "scope": "global"}, {"comment": "", "meta": {"range": [11036, 11051], "filename": "pyodide.js", "lineno": 302, "columnno": 60, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000906", "name": "nodelete", "type": "Literal", "value": true}}, "undocumented": true, "name": "nodelete", "longname": "nodelete", "kind": "member", "scope": "global"}, {"comment": "", "meta": {"range": [11164, 11225], "filename": "pyodide.js", "lineno": 310, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000914", "name": "loadPluginOverride", "type": "NewExpression", "value": ""}}, "undocumented": true, "name": "loadPluginOverride", "longname": "~Module.loadPackage~loadPluginOverride", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [11325, 11496], "filename": "pyodide.js", "lineno": 314, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000929", "name": "promise", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "promise", "longname": "~Module.loadPackage~promise", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [11502, 11573], "filename": "pyodide.js", "lineno": 317, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000950", "name": "loadPackageChain", "type": "CallExpression", "funcscope": "~Module.loadPackage", "value": "", "paramnames": []}}, "undocumented": true, "name": "loadPackageChain", "longname": "~Module.loadPackage~loadPackageChain", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [11652, 11810], "filename": "pyodide.js", "lineno": 321, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000975", "name": "promise", "type": "CallExpression", "funcscope": "~Module.loadPackage", "value": "", "paramnames": []}}, "undocumented": true, "name": "promise", "longname": "~Module.loadPackage~promise", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [11816, 11887], "filename": "pyodide.js", "lineno": 324, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100000996", "name": "loadPackageChain", "type": "CallExpression", "funcscope": "~Module.loadPackage", "value": "", "paramnames": []}}, "undocumented": true, "name": "loadPackageChain", "longname": "~Module.loadPackage~loadPackageChain", "kind": "member", "memberof": "~Module.loadPackage", "scope": "inner"}, {"comment": "", "meta": {"range": [12010, 12765], "filename": "pyodide.js", "lineno": 330, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001012", "name": "fixRecursionLimit", "type": "FunctionDeclaration", "paramnames": ["pyodide"]}, "vars": {"depth": "~fixRecursionLimit~depth", "recurse": "~fixRecursionLimit~recurse", "recursionLimit": "~fixRecursionLimit~recursionLimit"}}, "undocumented": true, "name": "fixRecursionLimit", "longname": "~fixRecursionLimit", "kind": "function", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [12419, 12428], "filename": "pyodide.js", "lineno": 337, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001017", "name": "depth", "type": "Literal", "value": 0}}, "undocumented": true, "name": "depth", "longname": "~fixRecursionLimit~depth", "kind": "member", "memberof": "~fixRecursionLimit", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [12434, 12495], "filename": "pyodide.js", "lineno": 338, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001020", "name": "recurse", "type": "FunctionDeclaration", "paramnames": []}, "vars": {"depth": "~fixRecursionLimit~recurse~depth"}}, "undocumented": true, "name": "recurse", "longname": "~fixRecursionLimit~recurse", "kind": "function", "memberof": "~fixRecursionLimit", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [12461, 12471], "filename": "pyodide.js", "lineno": 339, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001024", "name": "depth", "type": "Literal", "funcscope": "~fixRecursionLimit~recurse", "value": 1, "paramnames": []}}, "undocumented": true, "name": "depth", "longname": "~fixRecursionLimit~recurse~depth", "kind": "member", "memberof": "~fixRecursionLimit~recurse", "scope": "inner"}, {"comment": "", "meta": {"range": [12566, 12593], "filename": "pyodide.js", "lineno": 348, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001038", "name": "recursionLimit", "type": "BinaryExpression", "value": ""}}, "undocumented": true, "name": "recursionLimit", "longname": "~fixRecursionLimit~recursionLimit", "kind": "member", "memberof": "~fixRecursionLimit", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [12634, 12655], "filename": "pyodide.js", "lineno": 350, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001049", "name": "recursionLimit", "type": "Literal", "funcscope": "~fixRecursionLimit", "value": 1000, "paramnames": []}}, "undocumented": true, "name": "recursionLimit", "longname": "~fixRecursionLimit~recursionLimit", "kind": "member", "memberof": "~fixRecursionLimit", "scope": "inner"}, {"comment": "", "meta": {"range": [12899, 13167], "filename": "pyodide.js", "lineno": 359, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001063", "name": "PUBLIC_API", "type": "ArrayExpression", "value": "[\"globals\",\"loadPackage\",\"loadPackagesFromImports\",\"loadedPackages\",\"pyimport\",\"runPython\",\"runPythonAsync\",\"version\",\"registerJsModule\",\"unregisterJsModule\",\"setInterruptBuffer\",\"pyodide_py\"]"}}, "undocumented": true, "name": "PUBLIC_API", "longname": "~PUBLIC_API", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [13193, 13417], "filename": "pyodide.js", "lineno": 375, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001078", "name": "makePublicAPI", "type": "FunctionDeclaration", "paramnames": ["module", "public_api"]}, "vars": {"namespace": "~makePublicAPI~namespace", "module.public_api": "module.public_api", "name": "~makePublicAPI~name", "namespace[undefined]": "~makePublicAPI~namespace.undefined]"}}, "undocumented": true, "name": "makePublicAPI", "longname": "~makePublicAPI", "kind": "function", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [13246, 13276], "filename": "pyodide.js", "lineno": 376, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001084", "name": "namespace", "type": "ObjectExpression", "value": "{\"_module\":\"\"}"}}, "undocumented": true, "name": "namespace", "longname": "~makePublicAPI~namespace", "kind": "member", "memberof": "~makePublicAPI", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [13259, 13275], "filename": "pyodide.js", "lineno": 376, "columnno": 21, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001087", "name": "_module", "type": "Identifier", "value": "module"}}, "undocumented": true, "name": "_module", "longname": "~makePublicAPI~namespace._module", "kind": "member", "memberof": "~makePublicAPI~namespace", "scope": "static"}, {"comment": "", "meta": {"range": [13282, 13311], "filename": "pyodide.js", "lineno": 377, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001090", "name": "module.public_api", "type": "Identifier", "value": "namespace", "paramnames": []}}, "undocumented": true, "name": "public_api", "longname": "module.public_api", "kind": "member", "memberof": "module", "scope": "static"}, {"comment": "", "meta": {"range": [13326, 13330], "filename": "pyodide.js", "lineno": 378, "columnno": 13, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001097", "name": "name"}}, "undocumented": true, "name": "name", "longname": "~makePublicAPI~name", "kind": "member", "memberof": "~makePublicAPI", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [13354, 13384], "filename": "pyodide.js", "lineno": 379, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001102", "name": "namespace[undefined]", "type": "MemberExpression", "funcscope": "~makePublicAPI", "value": "module[undefined]", "paramnames": []}}, "undocumented": true, "name": "undefined]", "longname": "~makePublicAPI~namespace.undefined]", "kind": "member", "memberof": "~makePublicAPI~namespace", "scope": "static"}, {"comment": "", "meta": {"range": [13505, 13525], "filename": "pyodide.js", "lineno": 386, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001112", "name": "self.Module", "type": "Identifier", "value": "Module", "paramnames": []}}, "undocumented": true, "name": "Module", "longname": "self.Module", "kind": "member", "memberof": "self", "scope": "static"}, {"comment": "", "meta": {"range": [13530, 13559], "filename": "pyodide.js", "lineno": 388, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001118", "name": "Module.noImageDecoding", "type": "Literal", "funcscope": "", "value": true, "paramnames": []}}, "undocumented": true, "name": "noImageDecoding", "longname": "~Module.noImageDecoding", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [13563, 13592], "filename": "pyodide.js", "lineno": 389, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001124", "name": "Module.noAudioDecoding", "type": "Literal", "funcscope": "", "value": true, "paramnames": []}}, "undocumented": true, "name": "noAudioDecoding", "longname": "~Module.noAudioDecoding", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [13596, 13631], "filename": "pyodide.js", "lineno": 390, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001130", "name": "Module.noWasmDecoding", "type": "Literal", "funcscope": "", "value": false, "paramnames": []}}, "undocumented": true, "name": "noWasmDecoding", "longname": "~Module.noWasmDecoding", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [13684, 13709], "filename": "pyodide.js", "lineno": 392, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001136", "name": "Module.preloadedWasm", "type": "ObjectExpression", "funcscope": "", "value": "{}", "paramnames": []}}, "undocumented": true, "name": "preloadedWasm", "longname": "~Module.preloadedWasm", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [13718, 13746], "filename": "pyodide.js", "lineno": 394, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001142", "name": "fatal_error_occurred", "type": "Literal", "value": false}}, "undocumented": true, "name": "fatal_error_occurred", "longname": "~fatal_error_occurred", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [13754, 13891], "filename": "pyodide.js", "lineno": 395, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001146", "name": "fatal_error_msg", "type": "BinaryExpression", "value": ""}}, "undocumented": true, "name": "fatal_error_msg", "longname": "~fatal_error_msg", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [13895, 14734], "filename": "pyodide.js", "lineno": 398, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001152", "name": "Module.fatal_error", "type": "FunctionExpression", "funcscope": "", "paramnames": ["e"]}, "vars": {"fatal_error_occurred": "~Module.fatal_error~fatal_error_occurred", "undefined": null, "Module.public_api[undefined]": "~Module.public_api[undefined]", "": null}}, "undocumented": true, "name": "fatal_error", "longname": "~Module.fatal_error", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [14040, 14067], "filename": "pyodide.js", "lineno": 403, "columnno": 4, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001170", "name": "fatal_error_occurred", "type": "Literal", "funcscope": "~Module.fatal_error", "value": true, "paramnames": []}}, "undocumented": true, "name": "fatal_error_occurred", "longname": "~Module.fatal_error~fatal_error_occurred", "kind": "member", "memberof": "~Module.fatal_error", "scope": "inner"}, {"comment": "", "meta": {"range": [14606, 14675], "filename": "pyodide.js", "lineno": 419, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001230", "name": "Module.public_api[undefined]", "type": "FunctionExpression", "funcscope": "", "paramnames": []}}, "undocumented": true, "name": "public_api[undefined]", "longname": "~Module.public_api[undefined]", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "/**\n * An alias to the Python pyodide package.\n *\n * @type {PyProxy}\n */", "meta": {"range": [14822, 14844], "filename": "pyodide.js", "lineno": 432, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001246", "name": "Module.pyodide_py", "type": "ObjectExpression", "funcscope": "", "value": "{}", "paramnames": []}}, "description": "An alias to the Python pyodide package.", "type": {"names": ["PyProxy"]}, "name": "pyodide_py", "longname": "~Module.pyodide_py", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "/**\n *\n * An alias to the global Python namespace.\n *\n * An object whose attributes are members of the Python global namespace. This\n * is an alternative to :meth:`pyimport`. For example, to access the ``foo``\n * Python object from Javascript use\n * ``pyodide.globals.get(\"foo\")``\n *\n * @type {PyProxy}\n */", "meta": {"range": [15207, 15226], "filename": "pyodide.js", "lineno": 445, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001252", "name": "Module.globals", "type": "ObjectExpression", "funcscope": "", "value": "{}", "paramnames": []}}, "description": "An alias to the global Python namespace.\n\nAn object whose attributes are members of the Python global namespace. This\nis an alternative to :meth:`pyimport`. For example, to access the ``foo``\nPython object from Javascript use\n``pyodide.globals.get(\"foo\")``", "type": {"names": ["PyProxy"]}, "name": "globals", "longname": "~Module.globals", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "/**\n *\n * The pyodide version.\n *\n * It can be either the exact release version (e.g. ``0.1.0``), or\n * the latest release version followed by the number of commits since, and\n * the git hash of the current commit (e.g. ``0.1.0-1-bd84646``).\n *\n * @type {string}\n */", "meta": {"range": [15547, 15566], "filename": "pyodide.js", "lineno": 457, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001258", "name": "Module.version", "type": "Literal", "funcscope": "", "value": "", "paramnames": []}}, "description": "The pyodide version.\n\nIt can be either the exact release version (e.g. ``0.1.0``), or\nthe latest release version followed by the number of commits since, and\nthe git hash of the current commit (e.g. ``0.1.0-1-bd84646``).", "type": {"names": ["string"]}, "name": "version", "longname": "~Module.version", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "/**\n * Run Python code in the simplest way possible. The primary purpose of this\n * method is for bootstrapping. It is also useful for debugging: If the Python\n * interpreter is initialized successfully then it should be possible to use\n * this method to run Python code even if everything else in the Pyodide\n * `core` module fails.\n *\n * The differences are:\n * 1. `runPythonSimple` doesn't return anything (and so won't leak\n * PyProxies)\n * 2. `runPythonSimple` doesn't require access to any state on the\n * `pyodide_js` module.\n * 3. `runPython` uses `pyodide.eval_code`, whereas `runPythonSimple` uses\n * `PyRun_String` which is the C API for `eval` / `exec`.\n * 4. `runPythonSimple` runs with `globals` a separate dict which is called\n * `init_dict` (keeps global state private)\n * 5. `runPythonSimple` doesn't dedent the argument\n *\n * When `core` initialization is completed, the globals for `runPythonSimple`\n * is made available as `Module.init_dict`.\n *\n * @private\n */", "meta": {"range": [16668, 16888], "filename": "pyodide.js", "lineno": 482, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001264", "name": "Module.runPythonSimple", "type": "FunctionExpression", "funcscope": "", "paramnames": ["code"]}, "vars": {"code_c_string": "~Module.runPythonSimple~code_c_string"}}, "description": "Run Python code in the simplest way possible. The primary purpose of this\nmethod is for bootstrapping. It is also useful for debugging: If the Python\ninterpreter is initialized successfully then it should be possible to use\nthis method to run Python code even if everything else in the Pyodide\n`core` module fails.\n\nThe differences are:\n 1. `runPythonSimple` doesn't return anything (and so won't leak\n PyProxies)\n 2. `runPythonSimple` doesn't require access to any state on the\n `pyodide_js` module.\n 3. `runPython` uses `pyodide.eval_code`, whereas `runPythonSimple` uses\n `PyRun_String` which is the C API for `eval` / `exec`.\n 4. `runPythonSimple` runs with `globals` a separate dict which is called\n `init_dict` (keeps global state private)\n 5. `runPythonSimple` doesn't dedent the argument\n\nWhen `core` initialization is completed, the globals for `runPythonSimple`\nis made available as `Module.init_dict`.", "access": "private", "name": "runPythonSimple", "longname": "~Module.runPythonSimple", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [16718, 16762], "filename": "pyodide.js", "lineno": 483, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001272", "name": "code_c_string", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "code_c_string", "longname": "~Module.runPythonSimple~code_c_string", "kind": "member", "memberof": "~Module.runPythonSimple", "scope": "inner", "params": []}, {"comment": "/**\n * Runs a string of Python code from Javascript.\n *\n * The last part of the string may be an expression, in which case, its value\n * is returned.\n *\n * @param {string} code Python code to evaluate\n * @returns The result of the python code converted to Javascript\n */", "meta": {"range": [17182, 17302], "filename": "pyodide.js", "lineno": 500, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001295", "name": "Module.runPython", "type": "FunctionExpression", "funcscope": "", "paramnames": ["code", "globals"]}}, "description": "Runs a string of Python code from Javascript.\n\nThe last part of the string may be an expression, in which case, its value\nis returned.", "params": [{"type": {"names": ["string"]}, "description": "Python code to evaluate", "name": "code"}], "returns": [{"description": "The result of the python code converted to Javascript"}], "name": "runPython", "longname": "~Module.runPython", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "/**\n * Inspect a Python code chunk and use :js:func:`pyodide.loadPackage` to load any known \n * packages that the code chunk imports. Uses \n * :func:`pyodide_py.find_imports ` to inspect the code.\n * \n * For example, given the following code as input\n * \n * .. code-block:: python\n * \n * import numpy as np\n * x = np.array([1, 2, 3])\n * \n * :js:func:`loadPackagesFromImports` will call ``pyodide.loadPackage(['numpy'])``.\n * See also :js:func:`runPythonAsync`.\n *\n * @param {*} code \n * @param {*} messageCallback \n * @param {*} errorCallback \n */", "meta": {"range": [17944, 18511], "filename": "pyodide.js", "lineno": 524, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001317", "name": "Module.loadPackagesFromImports", "type": "FunctionExpression", "funcscope": "", "paramnames": ["code", "messageCallback", "errorCallback"]}, "vars": {"imports": "~Module.loadPackagesFromImports~imports", "packageNames": "~Module.loadPackagesFromImports~packageNames", "packages": "~Module.loadPackagesFromImports~packages", "name": "~Module.loadPackagesFromImports~name"}}, "description": "Inspect a Python code chunk and use :js:func:`pyodide.loadPackage` to load any known \npackages that the code chunk imports. Uses \n:func:`pyodide_py.find_imports ` to inspect the code.\n\nFor example, given the following code as input\n\n.. code-block:: python\n\n import numpy as np\n x = np.array([1, 2, 3])\n\n:js:func:`loadPackagesFromImports` will call ``pyodide.loadPackage(['numpy'])``.\nSee also :js:func:`runPythonAsync`.", "params": [{"type": {"names": ["*"]}, "name": "code"}, {"type": {"names": ["*"]}, "name": "messageCallback"}, {"type": {"names": ["*"]}, "name": "errorCallback"}], "name": "loadPackagesFromImports", "longname": "~Module.loadPackagesFromImports", "async": true, "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [18041, 18094], "filename": "pyodide.js", "lineno": 525, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001327", "name": "imports", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "imports", "longname": "~Module.loadPackagesFromImports~imports", "kind": "member", "memberof": "~Module.loadPackagesFromImports", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [18156, 18214], "filename": "pyodide.js", "lineno": 529, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001348", "name": "packageNames", "type": "MemberExpression", "value": "Module.packages.import_name_to_package_name"}}, "undocumented": true, "name": "packageNames", "longname": "~Module.loadPackagesFromImports~packageNames", "kind": "member", "memberof": "~Module.loadPackagesFromImports", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [18224, 18244], "filename": "pyodide.js", "lineno": 530, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001356", "name": "packages", "type": "NewExpression", "value": ""}}, "undocumented": true, "name": "packages", "longname": "~Module.loadPackagesFromImports~packages", "kind": "member", "memberof": "~Module.loadPackagesFromImports", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [18259, 18263], "filename": "pyodide.js", "lineno": 531, "columnno": 13, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001362", "name": "name"}}, "undocumented": true, "name": "name", "longname": "~Module.loadPackagesFromImports~name", "kind": "member", "memberof": "~Module.loadPackagesFromImports", "scope": "inner", "params": []}, {"comment": "/**\n * Access a Python object in the global namespace from Javascript.\n * @param {string} name Python variable name\n * @returns If the Python object is an immutable type (string, number,\n * boolean), it is converted to Javascript and returned. For other types, a\n * ``PyProxy`` object is returned.\n */", "meta": {"range": [18854, 18904], "filename": "pyodide.js", "lineno": 551, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001401", "name": "Module.pyimport", "type": "ArrowFunctionExpression", "funcscope": "", "paramnames": ["name"]}}, "description": "Access a Python object in the global namespace from Javascript.", "params": [{"type": {"names": ["string"]}, "description": "Python variable name", "name": "name"}], "returns": [{"description": "If the Python object is an immutable type (string, number,\nboolean), it is converted to Javascript and returned. For other types, a\n``PyProxy`` object is returned."}], "name": "pyimport", "longname": "~Module.pyimport", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "/**\n * Runs Python code, possibly asynchronously loading any known packages that\n * the code imports. For example, given the following code\n *\n * .. code-block:: python\n *\n * import numpy as np\n * x = np.array([1, 2, 3])\n *\n * pyodide will first call ``pyodide.loadPackage(['numpy'])``, and then run\n * the code, returning the result. Since package fetching must happen\n * asynchronously, this function returns a `Promise` which resolves to the\n * output. For example:\n *\n * .. code-block:: javascript\n *\n * pyodide.runPythonAsync(code, messageCallback)\n * .then((output) => handleOutput(output))\n *\n * @param {string} code Python code to evaluate\n * @param {Function} messageCallback A callback, called with progress\n * messages. (optional)\n * @param {Function} errorCallback A callback, called with error/warning\n * messages. (optional)\n */", "meta": {"range": [19821, 20176], "filename": "pyodide.js", "lineno": 578, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001415", "name": "Module.runPythonAsync", "type": "FunctionExpression", "funcscope": "", "paramnames": ["code", "messageCallback", "errorCallback"]}, "vars": {"coroutine": "~Module.runPythonAsync~coroutine", "result": "~Module.runPythonAsync~result"}}, "description": "Runs Python code, possibly asynchronously loading any known packages that\nthe code imports. For example, given the following code\n\n.. code-block:: python\n\n import numpy as np\n x = np.array([1, 2, 3])\n\npyodide will first call ``pyodide.loadPackage(['numpy'])``, and then run\nthe code, returning the result. Since package fetching must happen\nasynchronously, this function returns a `Promise` which resolves to the\noutput. For example:\n\n.. code-block:: javascript\n\n pyodide.runPythonAsync(code, messageCallback)\n .then((output) => handleOutput(output))", "params": [{"type": {"names": ["string"]}, "description": "Python code to evaluate", "name": "code"}, {"type": {"names": ["function"]}, "description": "A callback, called with progress\nmessages. (optional)", "name": "messageCallback"}, {"type": {"names": ["function"]}, "description": "A callback, called with error/warning\nmessages. (optional)", "name": "errorCallback"}], "name": "runPythonAsync", "longname": "~Module.runPythonAsync", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [19988, 20055], "filename": "pyodide.js", "lineno": 580, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001434", "name": "coroutine", "type": "CallExpression", "value": ""}}, "undocumented": true, "name": "coroutine", "longname": "~Module.runPythonAsync~coroutine", "kind": "member", "memberof": "~Module.runPythonAsync", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [20077, 20101], "filename": "pyodide.js", "lineno": 582, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001449", "name": "result", "type": "AwaitExpression", "value": ""}}, "undocumented": true, "name": "result", "longname": "~Module.runPythonAsync~result", "kind": "member", "memberof": "~Module.runPythonAsync", "scope": "inner", "params": []}, {"comment": "/**\n * Registers the Js object ``module`` as a Js module with ``name``.\n * This module can then be imported from Python using the standard Python\n * import system. If another module by the same name has already been\n * imported, this won't have much effect unless you also delete the imported\n * module from\n * ``sys.modules``. This calls the ``pyodide_py`` api\n * :func:`pyodide.register_js_module`.\n *\n * @param {string} name Name of js module to add\n * @param {object} module Javascript object backing the module\n */", "meta": {"range": [20747, 20859], "filename": "pyodide.js", "lineno": 602, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001462", "name": "Module.registerJsModule", "type": "FunctionExpression", "funcscope": "", "paramnames": ["name", "module"]}}, "description": "Registers the Js object ``module`` as a Js module with ``name``.\nThis module can then be imported from Python using the standard Python\nimport system. If another module by the same name has already been\nimported, this won't have much effect unless you also delete the imported\nmodule from\n``sys.modules``. This calls the ``pyodide_py`` api\n:func:`pyodide.register_js_module`.", "params": [{"type": {"names": ["string"]}, "description": "Name of js module to add", "name": "name"}, {"type": {"names": ["object"]}, "description": "Javascript object backing the module", "name": "module"}], "name": "registerJsModule", "longname": "~Module.registerJsModule", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "/**\n * Unregisters a Js module with given name that has been previously registered\n * with :js:func:`pyodide.registerJsModule` or :func:`pyodide.register_js_module`. If\n * a Js module with that name does not already exist, will throw an error.\n * Note that if the module has already been imported, this won't have much\n * effect unless you also delete the imported module from ``sys.modules``.\n * This calls the\n * ``pyodide_py`` api :func:`pyodide.unregister_js_module`.\n *\n * @param {string} name Name of js module to remove\n */", "meta": {"range": [21417, 21517], "filename": "pyodide.js", "lineno": 617, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001480", "name": "Module.unregisterJsModule", "type": "FunctionExpression", "funcscope": "", "paramnames": ["name"]}}, "description": "Unregisters a Js module with given name that has been previously registered\nwith :js:func:`pyodide.registerJsModule` or :func:`pyodide.register_js_module`. If\na Js module with that name does not already exist, will throw an error.\nNote that if the module has already been imported, this won't have much\neffect unless you also delete the imported module from ``sys.modules``.\nThis calls the\n``pyodide_py`` api :func:`pyodide.unregister_js_module`.", "params": [{"type": {"names": ["string"]}, "description": "Name of js module to remove", "name": "name"}], "name": "unregisterJsModule", "longname": "~Module.unregisterJsModule", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [21543, 24666], "filename": "pyodide.js", "lineno": 622, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001496", "name": "Module.function_supports_kwargs", "type": "FunctionExpression", "funcscope": "", "paramnames": ["funcstr"]}, "vars": {"idx": "~Module.function_supports_kwargs~idx", "START_ARG": "~Module.function_supports_kwargs~START_ARG", "ARG": "~Module.function_supports_kwargs~ARG", "QUOTE": "~Module.function_supports_kwargs~QUOTE", "QUOTE_ESCAPE": "~Module.function_supports_kwargs~QUOTE_ESCAPE", "paren_depth": "~Module.function_supports_kwargs~paren_depth", "arg_start": "~Module.function_supports_kwargs~arg_start", "arg_is_obj_dest": "~Module.function_supports_kwargs~arg_is_obj_dest", "quote_start": "~Module.function_supports_kwargs~quote_start", "state": "~Module.function_supports_kwargs~state", "i": "~Module.function_supports_kwargs~i", "x": "~Module.function_supports_kwargs~x"}}, "undocumented": true, "name": "function_supports_kwargs", "longname": "~Module.function_supports_kwargs", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [21718, 21748], "filename": "pyodide.js", "lineno": 625, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001504", "name": "idx", "type": "BinaryExpression", "value": ""}}, "undocumented": true, "name": "idx", "longname": "~Module.function_supports_kwargs~idx", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22624, 22637], "filename": "pyodide.js", "lineno": 640, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001514", "name": "START_ARG", "type": "Literal", "value": 1}}, "undocumented": true, "name": "START_ARG", "longname": "~Module.function_supports_kwargs~START_ARG", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22647, 22654], "filename": "pyodide.js", "lineno": 641, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001518", "name": "ARG", "type": "Literal", "value": 2}}, "undocumented": true, "name": "ARG", "longname": "~Module.function_supports_kwargs~ARG", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22664, 22673], "filename": "pyodide.js", "lineno": 642, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001522", "name": "QUOTE", "type": "Literal", "value": 3}}, "undocumented": true, "name": "QUOTE", "longname": "~Module.function_supports_kwargs~QUOTE", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22683, 22699], "filename": "pyodide.js", "lineno": 643, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001526", "name": "QUOTE_ESCAPE", "type": "Literal", "value": 4}}, "undocumented": true, "name": "QUOTE_ESCAPE", "longname": "~Module.function_supports_kwargs~QUOTE_ESCAPE", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22709, 22724], "filename": "pyodide.js", "lineno": 644, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001530", "name": "paren_depth", "type": "Literal", "value": 0}}, "undocumented": true, "name": "paren_depth", "longname": "~Module.function_supports_kwargs~paren_depth", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22734, 22747], "filename": "pyodide.js", "lineno": 645, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001534", "name": "arg_start", "type": "Literal", "value": 0}}, "undocumented": true, "name": "arg_start", "longname": "~Module.function_supports_kwargs~arg_start", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22757, 22780], "filename": "pyodide.js", "lineno": 646, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001538", "name": "arg_is_obj_dest", "type": "Literal", "value": false}}, "undocumented": true, "name": "arg_is_obj_dest", "longname": "~Module.function_supports_kwargs~arg_is_obj_dest", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22790, 22813], "filename": "pyodide.js", "lineno": 647, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001542", "name": "quote_start", "type": "Identifier", "value": "undefined"}}, "undocumented": true, "name": "quote_start", "longname": "~Module.function_supports_kwargs~quote_start", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22823, 22840], "filename": "pyodide.js", "lineno": 648, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001546", "name": "state", "type": "Identifier", "value": "START_ARG"}}, "undocumented": true, "name": "state", "longname": "~Module.function_supports_kwargs~state", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [22875, 22882], "filename": "pyodide.js", "lineno": 650, "columnno": 9, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001550", "name": "i", "type": "Identifier", "funcscope": "~Module.function_supports_kwargs", "value": "idx", "paramnames": []}}, "undocumented": true, "name": "i", "longname": "~Module.function_supports_kwargs~i", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [22921, 22935], "filename": "pyodide.js", "lineno": 651, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001562", "name": "x", "type": "MemberExpression", "value": "funcstr[undefined]"}}, "undocumented": true, "name": "x", "longname": "~Module.function_supports_kwargs~x", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [23066, 23077], "filename": "pyodide.js", "lineno": 656, "columnno": 12, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001577", "name": "state", "type": "Identifier", "funcscope": "~Module.function_supports_kwargs", "value": "ARG", "paramnames": []}}, "undocumented": true, "name": "state", "longname": "~Module.function_supports_kwargs~state", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [23134, 23154], "filename": "pyodide.js", "lineno": 659, "columnno": 12, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001584", "name": "state", "type": "Identifier", "funcscope": "~Module.function_supports_kwargs", "value": "QUOTE_ESCAPE", "paramnames": []}}, "undocumented": true, "name": "state", "longname": "~Module.function_supports_kwargs~state", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [23279, 23292], "filename": "pyodide.js", "lineno": 666, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001596", "name": "state", "type": "Identifier", "funcscope": "~Module.function_supports_kwargs", "value": "QUOTE", "paramnames": []}}, "undocumented": true, "name": "state", "longname": "~Module.function_supports_kwargs~state", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [23824, 23841], "filename": "pyodide.js", "lineno": 681, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001640", "name": "state", "type": "Identifier", "funcscope": "~Module.function_supports_kwargs", "value": "START_ARG", "paramnames": []}}, "undocumented": true, "name": "state", "longname": "~Module.function_supports_kwargs~state", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [24029, 24040], "filename": "pyodide.js", "lineno": 688, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001650", "name": "state", "type": "Identifier", "funcscope": "~Module.function_supports_kwargs", "value": "ARG", "paramnames": []}}, "undocumented": true, "name": "state", "longname": "~Module.function_supports_kwargs~state", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [24050, 24077], "filename": "pyodide.js", "lineno": 689, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001654", "name": "arg_is_obj_dest", "type": "BinaryExpression", "funcscope": "~Module.function_supports_kwargs", "value": "", "paramnames": []}}, "undocumented": true, "name": "arg_is_obj_dest", "longname": "~Module.function_supports_kwargs~arg_is_obj_dest", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [24375, 24388], "filename": "pyodide.js", "lineno": 700, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001688", "name": "state", "type": "Identifier", "funcscope": "~Module.function_supports_kwargs", "value": "QUOTE", "paramnames": []}}, "undocumented": true, "name": "state", "longname": "~Module.function_supports_kwargs~state", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [24400, 24415], "filename": "pyodide.js", "lineno": 701, "columnno": 10, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001692", "name": "quote_start", "type": "Identifier", "funcscope": "~Module.function_supports_kwargs", "value": "x", "paramnames": []}}, "undocumented": true, "name": "quote_start", "longname": "~Module.function_supports_kwargs~quote_start", "kind": "member", "memberof": "~Module.function_supports_kwargs", "scope": "inner"}, {"comment": "", "meta": {"range": [24671, 24715], "filename": "pyodide.js", "lineno": 711, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001701", "name": "Module.locateFile", "type": "ArrowFunctionExpression", "funcscope": "", "paramnames": ["path"]}}, "undocumented": true, "name": "locateFile", "longname": "~Module.locateFile", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [24724, 24775], "filename": "pyodide.js", "lineno": 713, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001711", "name": "moduleLoaded", "type": "NewExpression", "value": ""}}, "undocumented": true, "name": "moduleLoaded", "longname": "~moduleLoaded", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [24756, 24774], "filename": "pyodide.js", "lineno": 713, "columnno": 38, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001717", "name": "Module.postRun", "type": "Identifier", "funcscope": "", "value": "r", "paramnames": []}}, "undocumented": true, "name": "postRun", "longname": ".postRun", "kind": "member", "memberof": "", "scope": "static"}, {"comment": "", "meta": {"range": [24786, 24824], "filename": "pyodide.js", "lineno": 715, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001723", "name": "scriptSrc", "type": "TemplateLiteral", "value": ""}}, "undocumented": true, "name": "scriptSrc", "longname": "~scriptSrc", "kind": "constant", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [25075, 25111], "filename": "pyodide.js", "lineno": 722, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001735", "name": "self.pyodide", "type": "AwaitExpression", "value": "", "paramnames": []}}, "undocumented": true, "name": "pyodide", "longname": "self.pyodide", "kind": "member", "memberof": "self", "scope": "static"}, {"comment": "", "meta": {"range": [25752, 25814], "filename": "pyodide.js", "lineno": 746, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001754", "name": "Module.saveState", "type": "ArrowFunctionExpression", "funcscope": "", "paramnames": []}}, "undocumented": true, "name": "saveState", "longname": "~Module.saveState", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [25818, 25902], "filename": "pyodide.js", "lineno": 747, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001768", "name": "Module.restoreState", "type": "ArrowFunctionExpression", "funcscope": "", "paramnames": ["state"]}}, "undocumented": true, "name": "restoreState", "longname": "~Module.restoreState", "kind": "function", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [26107, 26160], "filename": "pyodide.js", "lineno": 755, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001794", "name": "Module.globals", "type": "CallExpression", "funcscope": "", "value": "", "paramnames": []}}, "undocumented": true, "name": "globals", "longname": "~Module.globals", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [26191, 26240], "filename": "pyodide.js", "lineno": 758, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001811", "name": "response", "type": "AwaitExpression", "value": ""}}, "undocumented": true, "name": "response", "longname": "~response", "kind": "member", "memberof": "", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [26244, 26283], "filename": "pyodide.js", "lineno": 759, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001821", "name": "Module.packages", "type": "AwaitExpression", "funcscope": "", "value": "", "paramnames": []}}, "undocumented": true, "name": "packages", "longname": "~Module.packages", "kind": "member", "memberof": "~Module", "scope": "static"}, {"comment": "", "meta": {"range": [26323, 26377], "filename": "pyodide.js", "lineno": 762, "columnno": 2, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001837", "name": "self.pyodide", "type": "CallExpression", "value": "", "paramnames": []}}, "undocumented": true, "name": "pyodide", "longname": "self.pyodide", "kind": "member", "memberof": "self", "scope": "static"}, {"comment": "", "meta": {"range": [0, 49], "filename": "webworker.js", "lineno": 1, "columnno": 0, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001872", "name": "self.languagePluginUrl", "type": "Literal", "value": "{{ PYODIDE_BASE_URL }}", "paramnames": []}}, "undocumented": true, "name": "languagePluginUrl", "longname": "self.languagePluginUrl", "kind": "member", "memberof": "self", "scope": "static"}, {"comment": "", "meta": {"range": [81, 694], "filename": "webworker.js", "lineno": 4, "columnno": 0, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001882", "name": "onmessage", "type": "FunctionExpression", "paramnames": ["e"]}, "vars": {"data": "onmessage~data", "key": "onmessage~key", "self[undefined]": null}}, "undocumented": true, "name": "onmessage", "longname": "onmessage", "kind": "function", "scope": "global"}, {"comment": "", "meta": {"range": [151, 164], "filename": "webworker.js", "lineno": 6, "columnno": 8, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001891", "name": "data", "type": "MemberExpression", "value": "e.data"}}, "undocumented": true, "name": "data", "longname": "onmessage~data", "kind": "constant", "memberof": "onmessage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [177, 180], "filename": "webworker.js", "lineno": 7, "columnno": 11, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001898", "name": "key"}}, "undocumented": true, "name": "key", "longname": "onmessage~key", "kind": "member", "memberof": "onmessage", "scope": "inner", "params": []}, {"comment": "", "meta": {"range": [375, 396], "filename": "webworker.js", "lineno": 11, "columnno": 6, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001912", "name": "self[undefined]", "type": "MemberExpression", "value": "data[undefined]", "paramnames": []}}, "undocumented": true, "name": "self[undefined]", "longname": "self[undefined]", "kind": "member", "scope": "global"}, {"comment": "", "meta": {"range": [448, 504], "filename": "webworker.js", "lineno": 17, "columnno": 9, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001927", "name": "results", "type": "AwaitExpression", "value": ""}}, "undocumented": true, "name": "results", "longname": "results", "kind": "member", "scope": "global"}, {"comment": "", "meta": {"range": [591, 608], "filename": "webworker.js", "lineno": 20, "columnno": 22, "path": "/home/hood/pyodide/src", "code": {"id": "astnode100001945", "name": "error", "type": "MemberExpression", "value": "e.message"}}, "undocumented": true, "name": "error", "longname": "error", "kind": "member", "scope": "global"}, {"kind": "package", "longname": "package:undefined", "files": ["/home/hood/pyodide/src/pyodide.js", "/home/hood/pyodide/src/webworker.js"]}] diff --git a/docs/sphinx_pyodide/tests/jsdoc_dump.json.gz b/docs/sphinx_pyodide/tests/jsdoc_dump.json.gz new file mode 100644 index 0000000000000000000000000000000000000000..2d8a55e3c3e116df257cdb5a8e09212bb298ada9 GIT binary patch literal 9709 zcmVBGJk`F@o@?7Y+r&kr?XJU}mPbXFe2NNfmubu8K3zwb zaT=|cOYP=5O0`$F**acFT3l%4d0bpaYc0vbb(~(!fgC0I@4MS=q`fN1!jo^$X4=^% z+J&UyFK2m}UPa`u-wfB8X{Kuj&U^CvWt>E5xPf2Jwq-N(4+YdrNDtDCJU4XmZIvba zO-jGR*KN4Frtfo|Z6fktw*I!N{cVx2&S-^oL>rFRP%tcZDS2Y(Y^zmjL`s95Fkb_eB2F?A!)^y|x6)96`+z}fq+%q#Z2SCXYyBZlE)oYK+UM4OB9 zN%>cH$rFHIid9yQS+NUu@#>6phhs%KcbF!D*R%{QZx}ppxYK#VFj(IBIa}|Oh-HCa zFFr)8T@Mp{`Fch{CqQPaJ-liJP3-c0Bqhp@|6js1OK&&XzWD21TVi;~nL6B<$7xy? zrW{#uBMJc9ux6U=Sy%uZ^#C|502g5qy?gzVMc`$26|chHd58djA=-xkQ{?0jc-~BN zEEfxb%R^vJhrqNBK=56hhWRazz~w$&HE%DB%0VglSn$Fj&3hviClRJd+3}-@vXTrllMq+hh^ihO3WcL0#&SIR>t;6tBFX&1}Nm z>RKFf8RfgOBm&;Pe)R#|SH6b$vU-L4hd2O;0~d|3&m(Lo(DYqy7M5d<)aMb!FfaXOc)H9(gQ&7rB1EU8HNL6Y@vmn zB}@f-`WX98&ln>_+yU*5SLn|6c~b5^8>vYCOZQ1~&uAVe*pLXCu+uS27pqZNfgsEj zsO5pnLRfU*n<&kSgX3Ow#{6{p0vY=N5b&{fBU{kAr^_irmjE!YD%K#pSd-U?FXQqx zQJW%|Fh}i+s-}nGsym2ZZCaR*GvXL#K*gP5VxdxQ#xV?20#%lRb||2VT#(HQJfqWseNbG7d9;2RUlhNl$*rI(R$H7xL`&M! zyQcK4L_J!+8dYDY!*(tY^B7A;tONs?!MO>pdR3Ox3fFaKa5b6oq;{oeGx#2+P;Vu- zAElF|XV|O4GrFqXzG(o(RTt_2%i=1oFnVk+PxlFe-U_ETnHU}%j~c$=V5c}K|mMu@yXL3n( zkx;U?C<{ZkALCG$5O_4O2QJL)z(d2X-rQ{j+{|v(3N;5!ExmE5we=nkSb;IqOxwpQ z;;yb7EK}E6uy{>w)S(kuQpakGcTfibIp3>su=90C=u-Czy=j{^KyP|T=sm$WMO|Jd zLT_=f?TXm=J*R7s~>B}|(;0c5t9iq19|iX%4>ZN@kC9RDE`yMrDeePI;+(t&xNWUFu&{X_;$ ztk*3tW9^qW1pDmfN9fMq!gQSw@P-LeX+!ln(vv zo0W!(K{{2Drtvp<$2=-&_f5%1H(|Vcy-%B&a6A0Yozl?iezhXJff+NQ=&Z5Vy^M?9 zU`@8%Y|xzaTQiF9&xQ?8Y{?ltsfEiGKNnYnJzIDokh!04vVArz*1|*<6vR*>9MddRUZ}>7cL4oI@&YMu!M8a z>1Haz8V6vR9b>8zM{A;m>ha=^MLHmI&JKJ$(!TNu=pK@bI3;w1Gh&2tMI0wLuggEb=?q8IA)>FVeb_k7lH#!S`l zwnzK??LGch3riaXRkzxMuBMI+78S>~(Yoh7IF32|rHa-}In`l|wcDY6$Iwu=#UB(x zqM(wA;~IE9)l!Gjz1qw z)2(W*&TBL>L;a|OAHkM}IS>)syxX>`)*1Rvr?l(1^-@-Ij0x>tc*7y!x<1-l#qfpY zQ-S5i<)ajB5$e%6qs>^wW{6Y9_)Q=Vr&K@)9ucmG4?*TDH{`emCx|PX)h0{hU6!*i z9d{HWqyare?N9n!JYcEouXsuuw`ak5hG%*BSUiSuDET-d-6K&|_p>{Mam#9_+JmmG zo@){L=ecP2cvB4WrT{UYvkM7F(dzad0$~(fLY)W33NCVc9y%VMX$WiGbfbV9@VA1| zr~mTX!px=n__+Q5V52O=_^u9v%+i@4DLn`)=XpNXkI6JV)$`6XY!*w#@d9a@_W}c}Bbs8A zzv-gSv&^39!eI3_+H8|>7cqhUPGt#wJTnrBX#hu3Uf^Qgm`qc7kPFY&4`VtB%U?3B zzM`kKrmz3|==zpR7A)UJ+t*C>2acZGv5;1;_5F1irwV1PjPy{T3$g6|g+MD~jB8r; zzxMVz(h{Q0YT0GWm^Aox9o_mmtT}aF)p=J$+HzTjTAqK5Zi^>!J?iOl36Zm}q8*{w zHbeQG{83RW>okqev@l&0@;#~4$U&RZ)w;-TDhQxn+(NDLMIm&RrBu~8v< zzI^SIQ$h&!kqo7bmz1&55gf#fFdOW>WFjHfJNjmQFP39{tuVWiMl5LHI7?rbHmK2e z@8FqzigJoW8trbf{NuclCUK!{!jBa4NP{_1(D8$BHOcT(7$@OH5|PPDfA|#VyM36H z#czvUw3#!~sjikr(V9l$zaSMi+bk!NSG&x!4PmU^HNoj3A}x{McG@b0Z`!_SW!Aq_ z*44he+2wJ1rTvda?FU~g25Q(&Usbf~wj{0O(Qcooh4!VgPkq&152r+^(jP!d1j1e0B-%xTGBmJkh^S%&_+Zek z@(Vm3?*+?Dyn$;xM|-9md&5V1<)PcxyM{g+j^XwfWNk?$kyI^<-b$|=9il1JCd9L3 zU8b@?kZQ}qz#=NpOV#UJGAQv18tl2RB&jK>G-EG8(XzBJzY=Mf$Lk>p&YpG)m1bJs zai8pUSo5-=HzHeStH>7cV;2C0vR{GN=hfgZvgNs43ZNie3(Dyx492*HLAEBalBH~$ zuDz1}G$%5$j*M6_S~1SHElL}uy%3fa$%?{ug_m+)LGV`#O)pkl-W;J*6?pip3}XD7 z=`-Bd?Oy!5%3Hs|>{vcfzy;lI9?K40N)N&phF(Sz)@^j41JhT2K#{~Ld z755QnaP<_A{jjC97YWa#NT9Q@nZ6iHZhAx{pN~<6icmEepQ>-`^eBehp~(ew7wy$& z2FjCq`L-`-{@JjH^|4~G`k9bw_l%-v!V&Ry9^o{^a)E2xG!+i|YJ?dmcMS9$&hJ-l zBfur2JU_dNcIRi$&d<)zP>Ct!jg0_NPT*0@aMvr-9O3=W0_9s9-{oW~LFa(ok2BAm zp*^lE!jpiTS475dKM@>pWU>RYD8b5T=pHt+h#9EQ!{hU*ly=u~K{k>!s>(mYVgs*Q zr$IjBJkgHG9z2Y5U#m*M|JNbvQ>OF)voSLrT*X%rmNN|9G$?0S=oDLGm@a#IbhLoq z*pvy8Sq_k7%~2c#Lxst|f4!AXXEIOtSY;z+vFJ=Fp})e`(b&1y=< zlBLFuCi`67cp5HMDohirT3TWlmg!1Gz&l>b&j{399g))>A&uk&9)k{HSSCG6v;*vI z1ItjZ9|k7pk0H7GGu3(hHeViH<}4GAr=F2zE_P^ zpr8}s4KDJ7GGdJB?;c@y4GKH@=A0$w-kxl@C9vDr8QHtQ4-R!bkBy_2`6FgF&rH*1 zIQt?;F7J*DdY$P6=;Pf_~n-FGive7|`9 z>IDn)VEl&j%8Xl_pUuwMeUkXS_=#+KUr@K;wrqP{hCbTfmVU$ZOTJG_zhVB{b2v+( zk3K~dhw|s>DlP~&{=F!7OZ4GBl|C+_-3!82dA{H7zT013MtRjZ9k#{x7LJ<`OvsN` z9|Q8G?(e!_51UyAgq|=g+d#9Km=;XIhR@?x1aLinwZBN>mB4AZ&EBSQ&fQWXi*Osu zZeVP~RR;~O>ASWV3|{5N(b9Y-d&s=UFyXo+Z9vGqf#}kFTr9uNnD+5wr{DwZ4lSaL z0#lmka6^`uEKPx$;&Zwv#|v1$kSdq!7~c@C9TZ4Bo8lL%4$^9%bAl2&w1y%=XBrBy z<97CoRwNvVR#O$kB$;VxjznqBR6PWL_Qh9m+ zGj1%7Fwt{uu~i|^2bP0(A@RkvYdR2x^nYAI_4D#oANi&TeeY4&16wxML>k*%w% zrX#EzEJoF+A8`k++l2#1jFKAn5pkjyO_%O0odD}ZYWab3Go|K@G&@~5 zh-Rn8Nzn|bUgDx-R9fQA4FzcOcV(J^0oPdtU|xnvaV(l*7Y>3cRyZY=u1_@{Pe;pH zF~zY8EL{nf)g_r|4a0M2r#&&;(IL+rp(h6r?UX+ypq}AVKy9?WM7&U=K!vq=uZ?gQ zCJP!MV3Dm>`#k4!SV#`n>HNcZJoJ$6wek0qKfSTlE4LbcfES{wFUJs^+&-K(e0apk z=Wi0)7>qU};~FZ1$A{52Y!83AAyBV>@;S&W>B0;Ti;$A!S~JElE}bfJfyWf>onex^ z+&_y(l>yWDVAKw2O^~gl&;4v&2nIggDrb0lpNu#l%MbZo z3PU?tj~=@gj9}i;9+<+r9e3_)yE-V^wu?5P+v+1&8>Up#?wyFLb`UGdElCu1Z_ zePcP-e#&w!`W!+KuUQ+imA0~6US`>HS<$Q7ta?eK#r-|}6qaB^fViq$8y~jvH-W3J zPtMN>t@E>|HMwJEmt*Q4nO%-)VmDW|t=vPxlxl_5t3K@1>Swg`R4IQcWGw_&9b%|4 zqJzQdfZSk8oidfF4x`#Bk6eQwP4 zGBGb5|XI7UC!cS^u&<{*%rsVxb{C>SpYat3uR7YklVi1O8WN*S- zZJUvG;Ub|@m0+32n=mI&_xTnCG##*JF$dY2tzk`v=&u)9wj%=(ZntDC<{%nCA}2)# z0`qd8&_e6zVt;i-3Ov(Zuu{DV>QC5`tWD&9s2!*AE+(tVe-m`8{Aq+xLUB$Z5NvUs z?UOa|Ro!n8>Fu(=qoHccZjv8zVF02}K;{xYbMhF1hek=!3``ZrzE&YtSspF5@=#p6 z3}YhmJJNC;gF|RU_>C@M&#IruKZCGT3MQ?;l%2@UL7(;;4AqJ~xLO_~$+*OKQE^Wzd!e978~*Z_71MFK&wuMg7L}wt&U9 zw1nXPzig^2g_BwPgBa%if+mD9X6C%WCCZLJ;2wB-swYqMAq5QW@r!?-VfL0*WoQCm*9| zTh!V|IdWurd?KF=2+j})>j;kJ=_`f#72Uyd4D=7+>Wa-8)-O{NFfnb{Ge)l}r(UPY zR@>f$Yc?1&fKiE^_T7Xz?Js!&!d71IhOv?Adwm&;{raj7^~A&DhIScUu@61^&=?lgg` zRMw6av*RV~d8$&dVr41_j}mPv6U$d%rIkcX9Z(b{HBNf=;FjmeuIFN1c5E@}_H@5{ z)8kAXyd<3s#e5ibHrb&&4x779{n5t-610y?00w%00duj;h(p!|R?G_4jjl?Ykm09E zk?QSIMQ1}+AR^Yuwk~Rhc?QzCoaL(!oMmA9MaR9>NJ>6<1kGRuD)gK}fVOI;`FhP6wO0XX#j0cXZ|cOlBZUSJUu? zdc|he+M=Y}`;m-PuEDDKhh-g}^`(g<*gd)M8a-?!iWN!13W>R6G~@9(DL6E-GUgP= zQZLeC3)at&19^45Pe0O(YebjOo_#2uLHp0R>}%DXOqy#gp*d!Vs`D|;Zc?qH&8Lf_ zCYY9ZX{jydkbSVIYw*o1wzu<3^8SmetoE0>eRz6)UO)dU?L%C>N!?DpYpgyvgYZ=h zS|?3wL(NLSsI+e(=(^kej;}kP(_jC5kz}in&z@EA^JU1tvO8dz+TH@Cbld*+S^GEg zeNI!zJo(L-f!wg(Kjmq(1Ko2amMCy>l2E-$$c0xGe)8L&X!C!1|Fp@3sJ)4zQuS}? z^A}}1TfO`O)1|P*hk@yaQ(|$r7nwXV ze^|x*Jwl|X<9BiU0@d{VB}8Qsrv&X2p;zJ2>KhI? zlli8BhcHkMA)jwUTtSBJG1M-oANFyrvri+c)VfqwIE~QaiYP_IYa$|qJvs<+NXFhc+*Phl%O%qt!S>g; z@AG|n5ylU6v|w@so}Rw%vvotV@2fq@So!pvXni+I(nZV7ZWDP+iLs31zV1{%WGS1% zp9)#?09W!FI}7zef8Ms}eH-Se5tiA$&gzp@*sYQ6z;&LbggE(HC&X>Hs@z7E@s}%) znCp!yYD38xhKB553d~@&*|72~qnpXgI4^eCEhTmSD$k_JK2mt`S;YYGX1m6sJJ;TT z+gOvH`ZC(B=!x)VUx54Ab{o}%_+g)wUPm?jS}meOZCT~+sZU#TCZBQZfs^fbWSh>R z@N96fKL}?U?V#4f!tb4*lrJr8aTzC;>fap3>&cU{KToxP`zv{CNE7rceNaDtDzy-f zImW4~)B?0?L_CxdyKzS=lTpu^Y}CDN@McJ4y6XeY^etzB4>7Au-9X1HbHt!M3YIft z@GyyT#$&KvuCknP78!^hQOo!Et}RYiAegzhidEU(V=grk_Gsa%+(@TRc&d<_%0#AI zT6RZ|6_RwQ#>>WWV(~;rls$IIM){BtKP*pWGLCH^Ai#jQfI-;=-lZ6vsi<);l#`%%-V|h^_SpY7y&_(g0UfqcRqkHd4c<+mPWrQS}>o8vnmmSJA zytpMD+swg)Lk56uSgRJQ3oQj0fv6?u8v2;zQMd-znTRJ;`Y)3Hm9DDS;irhKxn#|Z zE-&F#_h|xFgxhRi9<7y07HJDLfm*|@TxrR>G}au_%X#^{Aj44(1PJZ==3IN62}8M! zrG6XpI-vIALs3OJ?eQ?+3}9eD2M3!E&Dewg?0PNKDIxt@mtiae71*#q)R0t>cZc+L zQ}=8-uYGjDIakcVsX%XcWmh}J$mB{j_u9l$MJtuNf=!-Ks^*f4X{2xlag*nmd4rfT z({#(e>D0CA^=Ne^)Kc1*NyjOYRX}ALS*QL&i#4gay{1Pw!H?vF}zBbi^ zf|V(cHrb~GON(Jco>S9s(0LVHF)^xwrNx&;ap|VLP`|iHmlUNF>OSU@vT3Aj1}U37 z;=DO_%G|@sR8A-PkyHId&a(#=4SA(gZurUkw=E(DY!@9gz%|utn1L)bPyPOjV!x%P z%f-i=Fuzjk;Yy3{a?ycx{kaFSzE0gi6++_8+vl&}E}p;skFoXJiiFA$^{bly`R>=Z zKaQ*s6pQdA1;2o%h+*d+D?lD=KlZAW9*j zTpUGpXt>_&INiFThM<5))ScM_fbitvJd{}6$)>dx6b_@zRcj+C|?ZC$9kOS!1So9cjlR#wX zJU%QvJpe2{6E8DuMx#;O_1l>%5#G{dKl`X*I_d>cPqef6kvYEWa@Ie=%okwf6w5Iq*jhQK4l z5K?}V4<8#V$905Ve=r?Ghf{wB62l%$K`}5~4fd4jrw(kM2Ly7HEOw96UT5hp(S68=ht_u;L0K}UpFcSs zcZdIg_*F7}D`U?1>HGT-<5>6&y4|r1ysgg>bIB-x-?vW%Z>$>X&oZ)=$j<+)>Q`b0)BL2<>7*emOJ~DBp>> z&dGV;5A;j)VM|6n@S32Qjavo!9m{8r*-Ul-uY?p*&d!94CMiO zJZXTQBwLYb^Ha>bt*Z&qL;H&Xp6|rL=vHjullt1(9@YG951mccGXyV$=^4ifYp^($ zp5HICaLs2Co)!g8q}qpxSnkwW#t9Z+VgpF9Mwt#I)^t_OlLkHBX2tIHo(nvW6Sf>& zd3R=^68pA|_khRt?>OAX&K{pa<)i&Rh`dy-G<&ASDMj=?#haXqVW9v%SC+w)AhXNzdqS|t00%Aj#rF*F@W5Jx8#`PFKr)UM(lcY{_DdU&e6L zsiD~i1Y73h$~Zy5ra<^ur!!AHA)P*ld{Y{TRuU*%g2z41q7i|$rv%WRGLJ0kUFKS7 ztG4GVR|$QKcW>xX35P;z{a!UfeWux+>kT*2#Z8ufjB;`81q0D^bD__t3Z!qIkiP8+ zE51thS8@6-Pgo3O`=c*kv{(Q2>klt}_;K;w^EW>(-o1XQef@eIB+|w^;7Ci|Crogd z>vpqv^a5oo2g>Jw%IcVZEH-j2PtfGV+`Q|MzH3YIjy{3$jBfcK;K8gMN!Bs!nU?O8 z1c5ErX%hN2}2;t{0T*pZi8$9csZpwvzAOxnK?!_JO>72^Q zk%v^=BZ63VbXMlEs^N5C59jKg1M}YDG{pq6({<0l=FE{a{?G^+T~BnxxHhEOQEeU~ v$Fwe1Z5Kpx)#GRFMVe}8%f(+lMBnn7eor9|l=olX|I7aZyYVvbu|WX