{
  "schemaVersion": 1,
  "engine": "python",
  "engineVersion": "CPython 3.14.2 re",
  "runtime": "Pyodide 314.0.3",
  "status": "production-runtime",
  "bridge": {
    "abiVersion": 1,
    "sourceFile": {
      "path": "engines/python/bridge.py",
      "sha256": "666d774ebaa00febde056528b6bc8bf63dc0f75620f084f02a83bd66c96e7144",
      "bytes": 8857
    },
    "userValuesAreFunctionArguments": true,
    "regexModule": "re",
    "supportModules": {
      "serialization": "json",
      "replacementOutputEncoding": "canonical RFC 4648 base64",
      "runtimeIdentity": "sys"
    },
    "maximumPatternUtf16": 65536,
    "maximumSubjectBytes": 16777216,
    "maximumReplacementUtf16": 65536,
    "maximumOutputBytes": 67108864,
    "maximumMatches": 10000,
    "maximumCaptureRows": 100000,
    "maximumCaptureGroups": 1000,
    "maximumNativeExpansionCodePoints": 16777216
  },
  "source": {
    "manifest": {
      "path": "SOURCE-MANIFEST.json",
      "sha256": "03e992cbb199cf4727a48fe4d8b464dc214923233237d481905cc1425449ff12",
      "bytes": 29458
    },
    "pyodide": {
      "repository": "https://github.com/pyodide/pyodide.git",
      "tag": "314.0.3",
      "commitSha1": "ac57031be7564f864d061cb37c5c152e59f83ad4",
      "license": "MPL-2.0",
      "npmPackage": "pyodide@314.0.3",
      "npmResolved": "https://registry.npmjs.org/pyodide/-/pyodide-314.0.3.tgz",
      "npmIntegrity": "sha512-sK40My6m8tmBUYtYH9au9rXUeh9x0wfahtHdOlGmJxZDsKBGKtP6KznyFB2+u/klbQTdDionR0uaVd176zVQzQ=="
    },
    "cpython": {
      "repository": "https://github.com/python/cpython.git",
      "tag": "v3.14.2",
      "tagObjectSha1": "a1d0069daf8e85b25a0c3f96abc43182be6d429e",
      "commitSha1": "df793163d5821791d4e7caf88885a2c11a107986",
      "license": "Python-2.0"
    }
  },
  "toolchain": {
    "abiVersion": "2026_0",
    "architecture": "wasm32",
    "emscriptenVersion": "5.0.3",
    "lockPythonVersion": "3.14.0",
    "executablePythonVersion": "3.14.2",
    "threads": false
  },
  "packaging": {
    "loaderTransformation": "Removed only the upstream sourceMappingURL trailer; executable JavaScript is unchanged.",
    "upstreamLoaderSha256": "5cfc46f5dcbaf2a16f26e2363f441873eb424762609cc03db00d6a2ace4d00e5",
    "packedLoaderSha256": "640ac750bf7cf42ee58b524faa09f803732d2237753cd630d6878edda8a107bf",
    "externalPackagesIncluded": false,
    "legalClosure": "SOURCE-MANIFEST.json inventories every loader and native base-runtime component, exact preferred-form input and patch, plus independently anchored legal text.",
    "lockPythonVersionNote": "The upstream lock's 3.14.0 field identifies its CPython 3.14 ABI baseline; the executable runtime self-identifies as 3.14.2."
  },
  "files": [
    {
      "path": "LICENSE.bzip2.txt",
      "sha256": "4919cfb14a73cd64fcef67b107613970cf1659a09aa675dba31314f373bc7204",
      "bytes": 1901
    },
    {
      "path": "LICENSE.cpython.txt",
      "sha256": "b0e25a78cffb43f4d92de8b61ccfa1f1f98ecbc22330b54b5251e7b6ba010231",
      "bytes": 13804
    },
    {
      "path": "LICENSE.emscripten-mini-lz4.txt",
      "sha256": "d27097e98c94f60e7f96e31e90296f32789738c1f8f271df785fe1dda9d52baa",
      "bytes": 1214
    },
    {
      "path": "LICENSE.emscripten.txt",
      "sha256": "620a78084fc7ca97c0b5dea9abf891f3ffcadfdbf305276f099c9c4e12fc1d86",
      "bytes": 5093
    },
    {
      "path": "LICENSE.expat.txt",
      "sha256": "122f2c27000472a201d337b9b31f7eb2b52d091b02857061a8880371612d9534",
      "bytes": 1144
    },
    {
      "path": "LICENSE.hacl-mit.txt",
      "sha256": "998ce04fb8ad9dedb0bc1b44938f8c3dcf1089780fa105ce1c8c30fb5554d78c",
      "bytes": 1207
    },
    {
      "path": "LICENSE.hiwire.txt",
      "sha256": "1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5",
      "bytes": 16725
    },
    {
      "path": "LICENSE.libffi.txt",
      "sha256": "2c9c2acb9743e6b007b91350475308aee44691d96aa20eacef8e199988c8c388",
      "bytes": 1132
    },
    {
      "path": "LICENSE.libmpdec.txt",
      "sha256": "b07528d8b1dbf1e2d2741052996f0876e23342ce2d30d0effa39c5457716c25a",
      "bytes": 1359
    },
    {
      "path": "LICENSE.llvm-compiler-rt.txt",
      "sha256": "1a8f1058753f1ba890de984e48f0242a3a5c29a6a8f2ed9fd813f36985387e8d",
      "bytes": 16708
    },
    {
      "path": "LICENSE.llvm-libcxx.txt",
      "sha256": "539dd7aed86e8a4f12cbdd0e6c50c189c7d74847e4fecc64ce2c6ee3a01da38b",
      "bytes": 16703
    },
    {
      "path": "LICENSE.llvm-libcxxabi.txt",
      "sha256": "e2b35be49f7284a45b7baca8fc7b3ab7440e7902392b2528a457816b5bb2a15c",
      "bytes": 16706
    },
    {
      "path": "LICENSE.llvm-libunwind.txt",
      "sha256": "b5efebcaca80879234098e52d1725e6d9eb8fb96a19fce625d39184b705f7b6d",
      "bytes": 16706
    },
    {
      "path": "LICENSE.pyodide-stacktrace-vendors.txt",
      "sha256": "899da9d991cb211a3642b84e82a9ae0b4b4e44546fd207e34d7d4ec2eb40f420",
      "bytes": 1080
    },
    {
      "path": "LICENSE.pyodide.txt",
      "sha256": "1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5",
      "bytes": 16725
    },
    {
      "path": "LICENSE.sqlite.txt",
      "sha256": "9c6479123f32a1ed50d9a0af203dfe8972e65035b0cdeef436b5f8d0924517fe",
      "bytes": 263
    },
    {
      "path": "LICENSE.xz.txt",
      "sha256": "c4f8e14fafe458d84808a4cd8b69f94673ebe2bf8fc992291629a69ac12218f8",
      "bytes": 2774
    },
    {
      "path": "LICENSE.zlib.txt",
      "sha256": "845efc77857d485d91fb3e0b884aaa929368c717ae8186b66fe1ed2495753243",
      "bytes": 1002
    },
    {
      "path": "LICENSE.zstd.txt",
      "sha256": "7055266497633c9025b777c78eb7235af13922117480ed5c674677adc381c9d8",
      "bytes": 1549
    },
    {
      "path": "NOTICE.cpython-bundled.rst",
      "sha256": "c695d550b135e53e38807e76496d1db17d22c40e461d1f3f354c86188d3305dd",
      "bytes": 57595
    },
    {
      "path": "NOTICE.emscripten-dlmalloc.txt",
      "sha256": "3a146a183961471088fac25b17b1e5e0b4b400439ae3abcf2fcd5a9b2a2f582c",
      "bytes": 451
    },
    {
      "path": "NOTICE.emscripten-musl.txt",
      "sha256": "f9bc4423732350eb0b3f7ed7e91d530298476f8fec0c6c427a1c04ade22655af",
      "bytes": 6204
    },
    {
      "path": "SOURCE-MANIFEST.json",
      "sha256": "03e992cbb199cf4727a48fe4d8b464dc214923233237d481905cc1425449ff12",
      "bytes": 29458
    },
    {
      "path": "pyodide-lock.json",
      "sha256": "c963d22858f6bcb8f41586a2142f03905ab370c88ea22a86a2736e95fac2a8f3",
      "bytes": 113804
    },
    {
      "path": "pyodide.asm.mjs",
      "sha256": "1a9775427ef6e8abaa7db88ece0515422d1886915ae5c9093776410c865dfd8d",
      "bytes": 1249447
    },
    {
      "path": "pyodide.asm.wasm",
      "sha256": "e7f8fac36f8bf11085309cbc5c829b3ec3057c18bf1d73b05a6741612d63cdbf",
      "bytes": 9596462
    },
    {
      "path": "pyodide.mjs",
      "sha256": "640ac750bf7cf42ee58b524faa09f803732d2237753cd630d6878edda8a107bf",
      "bytes": 17843
    },
    {
      "path": "python_stdlib.zip",
      "sha256": "444c770dfd75a32097fc0a7d5c1413fd3140601f49c3a1f2e9af0376fcd124b4",
      "bytes": 2545106
    }
  ]
}
