diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index e12dde69..c5c6b6ee 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -37,13 +37,13 @@ jobs: run: make core - name: Upload core binary to artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: engine path: target/wasm32-wasi/release/javy_core.wasm - name: Upload quickjs_provider to artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: provider path: target/wasm32-wasi/release/javy_quickjs_provider.wasm @@ -54,7 +54,7 @@ jobs: gzip -k -f target/wasm32-wasi/release/javy_quickjs_provider_wizened.wasm && mv target/wasm32-wasi/release/javy_quickjs_provider_wizened.wasm.gz javy-quickjs_provider.wasm.gz - name: Upload archived quickjs_provider to artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: javy-quickjs_provider.wasm.gz path: javy-quickjs_provider.wasm.gz @@ -69,7 +69,7 @@ jobs: run: shasum -a 256 javy-quickjs_provider.wasm.gz | awk '{ print $1 }' > javy-quickjs_provider.wasm.gz.sha256 - name: Upload asset hash to artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: javy-quickjs_provider.wasm.gz.sha256 path: javy-quickjs_provider.wasm.gz.sha256 @@ -130,12 +130,12 @@ jobs: run: sudo apt-get update && sudo apt-get --assume-yes install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu if: matrix.target == 'aarch64-unknown-linux-gnu' - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: engine path: target/wasm32-wasi/release/ - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: provider path: target/wasm32-wasi/release/ @@ -149,7 +149,7 @@ jobs: run: gzip -k -f ${{ matrix.path }} && mv ${{ matrix.path }}.gz ${{ matrix.asset_name }}.gz - name: Upload assets to artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: ${{ matrix.asset_name }}.gz path: ${{ matrix.asset_name }}.gz @@ -164,7 +164,7 @@ jobs: run: ${{ matrix.shasum_cmd }} ${{ matrix.asset_name }}.gz | awk '{ print $1 }' > ${{ matrix.asset_name }}.gz.sha256 - name: Upload asset hash to artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: ${{ matrix.asset_name }}.gz.sha256 path: ${{ matrix.asset_name }}.gz.sha256 diff --git a/.github/workflows/cargo-vet.yml b/.github/workflows/cargo-vet.yml index 17efa375..a94fd9af 100644 --- a/.github/workflows/cargo-vet.yml +++ b/.github/workflows/cargo-vet.yml @@ -10,12 +10,12 @@ jobs: name: cargo_vet runs-on: ubuntu-latest env: - CARGO_VET_VERSION: 0.8.0 + CARGO_VET_VERSION: 0.9.0 steps: - uses: actions/checkout@v4 - name: Install Rust run: rustup update stable && rustup default stable - - uses: actions/cache@v3 + - uses: actions/cache@v4 with: path: ${{ runner.tool_cache }}/cargo-vet key: cargo-vet-bin-${{ env.CARGO_VET_VERSION }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e488e8dc..6b233d4a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,13 +38,13 @@ jobs: run: cargo clippy --workspace --exclude=javy-cli --target=wasm32-wasi --all-targets -- -D warnings - name: Upload core binary to artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: engine path: target/wasm32-wasi/release/javy_core.wasm - name: Upload quickjs_provider to artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: provider path: target/wasm32-wasi/release/javy_quickjs_provider.wasm @@ -60,12 +60,12 @@ jobs: with: os: linux - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: engine path: target/wasm32-wasi/release/ - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: provider path: target/wasm32-wasi/release/ diff --git a/Cargo.lock b/Cargo.lock index 7e2eafb4..d4371a8d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -12,15 +12,6 @@ dependencies = [ "regex", ] -[[package]] -name = "addr2line" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" -dependencies = [ - "gimli 0.27.2", -] - [[package]] name = "addr2line" version = "0.21.0" @@ -73,15 +64,18 @@ dependencies = [ [[package]] name = "ambient-authority" -version = "0.0.1" +version = "0.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec8ad6edb4840b78c5c3d88de606b22252d552b55f3a4699fbb10fc070ec3049" +checksum = "e9d4ee0d472d1cd2e28c97dfa124b3d8d992e10eb0a035f33f5d12e3a177ba3b" [[package]] -name = "ambient-authority" -version = "0.0.2" +name = "android_system_properties" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9d4ee0d472d1cd2e28c97dfa124b3d8d992e10eb0a035f33f5d12e3a177ba3b" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] [[package]] name = "anes" @@ -106,15 +100,15 @@ checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" [[package]] name = "anyhow" -version = "1.0.75" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" +checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" [[package]] name = "arbitrary" -version = "1.3.0" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d098ff73c1ca148721f37baad5ea6a465a13f9573aba8641fbbbae8164a54e" +checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" [[package]] name = "arrayvec" @@ -124,26 +118,25 @@ checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" [[package]] name = "ast_node" -version = "0.9.5" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c09c69dffe06d222d072c878c3afe86eee2179806f20503faec97250268b4c24" +checksum = "c3e3e06ec6ac7d893a0db7127d91063ad7d9da8988f8a1a256f03729e6eec026" dependencies = [ - "pmutil", "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] name = "async-trait" -version = "0.1.52" +version = "0.1.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3" +checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.46", ] [[package]] @@ -169,12 +162,12 @@ version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ - "addr2line 0.21.0", + "addr2line", "cc", "cfg-if", "libc", "miniz_oxide", - "object 0.32.1", + "object", "rustc-demangle", ] @@ -193,25 +186,6 @@ dependencies = [ "scoped-tls", ] -[[package]] -name = "binaryen" -version = "0.12.1" -source = "git+https://github.com/pepyakin/binaryen-rs?rev=00c98174843f957681ba0bc5cdcc9d15f5d0cb23#00c98174843f957681ba0bc5cdcc9d15f5d0cb23" -dependencies = [ - "binaryen-sys", -] - -[[package]] -name = "binaryen-sys" -version = "0.12.1" -source = "git+https://github.com/pepyakin/binaryen-rs?rev=00c98174843f957681ba0bc5cdcc9d15f5d0cb23#00c98174843f957681ba0bc5cdcc9d15f5d0cb23" -dependencies = [ - "cc", - "cmake", - "heck 0.3.3", - "regex", -] - [[package]] name = "bincode" version = "1.3.3" @@ -223,9 +197,9 @@ dependencies = [ [[package]] name = "bindgen" -version = "0.69.1" +version = "0.69.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ffcebc3849946a7170a05992aac39da343a90676ab392c51a4280981d6379c2" +checksum = "a4c69fae65a523209d34240b60abe0c42d33d1045d445c0839d8a4894a736e2d" dependencies = [ "bitflags 2.4.1", "cexpr", @@ -240,7 +214,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.32", + "syn 2.0.46", "which", ] @@ -306,97 +280,79 @@ checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" [[package]] name = "cap-fs-ext" -version = "1.0.10" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b0c86006edbaf13bbe0cdf2d7492cff638cd24cd6b717fa2aadcab09b532353" +checksum = "88e341d15ac1029aadce600be764a1a1edafe40e03cde23285bc1d261b3a4866" dependencies = [ - "cap-primitives 1.0.10", - "cap-std 1.0.10", - "io-lifetimes 1.0.11", - "windows-sys 0.48.0", + "cap-primitives", + "cap-std", + "io-lifetimes 2.0.3", + "windows-sys 0.52.0", ] [[package]] -name = "cap-primitives" -version = "0.24.1" +name = "cap-net-ext" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defd283f080043a702c362203c2646a4e0a2fff99baede1eea1416239f0af220" +checksum = "434168fe6533055f0f4204039abe3ff6d7db338ef46872a5fa39e9d5ad5ab7a9" dependencies = [ - "ambient-authority 0.0.1", - "errno 0.2.8", - "fs-set-times 0.15.0", - "io-extras 0.13.2", - "io-lifetimes 0.5.3", - "ipnet", - "maybe-owned", - "rustix 0.33.7", - "winapi", - "winapi-util", - "winx 0.31.0", + "cap-primitives", + "cap-std", + "rustix 0.38.28", + "smallvec", ] [[package]] name = "cap-primitives" -version = "1.0.10" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f377e5b016d3d2b9d150b8e8f711d88d42046b89294572d504596f19e59ca" +checksum = "fe16767ed8eee6d3f1f00d6a7576b81c226ab917eb54b96e5f77a5216ef67abb" dependencies = [ - "ambient-authority 0.0.1", - "fs-set-times 0.19.1", - "io-extras 0.17.4", - "io-lifetimes 1.0.11", + "ambient-authority", + "fs-set-times", + "io-extras", + "io-lifetimes 2.0.3", "ipnet", "maybe-owned", - "rustix 0.37.26", - "windows-sys 0.48.0", - "winx 0.35.1", + "rustix 0.38.28", + "windows-sys 0.52.0", + "winx", ] [[package]] name = "cap-rand" -version = "1.0.14" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3be2ededc13f42a5921c08e565b854cb5ff9b88753e2c6ec12c58a24e7e8d4e" +checksum = "20e5695565f0cd7106bc3c7170323597540e772bb73e0be2cd2c662a0f8fa4ca" dependencies = [ - "ambient-authority 0.0.2", + "ambient-authority", "rand", ] [[package]] name = "cap-std" -version = "0.24.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2247568946095c7765ad2b441a56caffc08027734c634a6d5edda648f04e32eb" -dependencies = [ - "cap-primitives 0.24.1", - "io-extras 0.13.2", - "io-lifetimes 0.5.3", - "ipnet", - "rustix 0.33.7", -] - -[[package]] -name = "cap-std" -version = "1.0.10" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14bfc13243563bf62ee9a31b6659d2fc2bf20e75f2d3d58d87a0c420778e1399" +checksum = "593db20e4c51f62d3284bae7ee718849c3214f93a3b94ea1899ad85ba119d330" dependencies = [ - "cap-primitives 1.0.10", - "io-extras 0.17.4", - "io-lifetimes 1.0.11", - "rustix 0.37.26", + "cap-primitives", + "io-extras", + "io-lifetimes 2.0.3", + "rustix 0.38.28", ] [[package]] name = "cap-time-ext" -version = "1.0.10" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27254eb495abe5deb117c9de424b2bfb74944e29a28ac224b213b13550c2cc4d" +checksum = "03261630f291f425430a36f38c847828265bc928f517cdd2004c56f4b02f002b" dependencies = [ - "cap-primitives 1.0.10", + "ambient-authority", + "cap-primitives", + "iana-time-zone", "once_cell", - "rustix 0.37.26", - "winx 0.35.1", + "rustix 0.38.28", + "winx", ] [[package]] @@ -509,12 +465,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" [[package]] -name = "cmake" -version = "0.1.48" +name = "codespan-reporting" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8ad8cef104ac57b68b89df3208164d228503abbdce70f6880ffa3d970e7443a" +checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" dependencies = [ - "cc", + "termcolor", + "unicode-width", ] [[package]] @@ -562,18 +519,18 @@ dependencies = [ [[package]] name = "cranelift-bforest" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "182b82f78049f54d3aee5a19870d356ef754226665a695ce2fcdd5d55379718e" +checksum = "7c22542c0b95bd3302f7ed6839869c561f2324bac2fd5e7e99f5cfa65fdc8b92" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-codegen" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c027bf04ecae5b048d3554deb888061bc26f426afff47bf06d6ac933dce0a6" +checksum = "6b3db903ef2e9c8a4de2ea6db5db052c7857282952f9df604aa55d169e6000d8" dependencies = [ "bumpalo", "cranelift-bforest", @@ -582,8 +539,8 @@ dependencies = [ "cranelift-control", "cranelift-entity", "cranelift-isle", - "gimli 0.27.2", - "hashbrown 0.13.2", + "gimli 0.28.0", + "hashbrown 0.14.1", "log", "regalloc2", "smallvec", @@ -592,42 +549,43 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "649f70038235e4c81dba5680d7e5ae83e1081f567232425ab98b55b03afd9904" +checksum = "6590feb5a1d6438f974bf6a5ac4dddf69fca14e1f07f3265d880f69e61a94463" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a1d1c5ee2611c6a0bdc8d42d5d3dc5ce8bf53a8040561e26e88b9b21f966417" +checksum = "7239038c56fafe77fddc8788fc8533dd6c474dc5bdc5637216404f41ba807330" [[package]] name = "cranelift-control" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da66a68b1f48da863d1d53209b8ddb1a6236411d2d72a280ffa8c2f734f7219e" +checksum = "f7dc9c595341404d381d27a3d950160856b35b402275f0c3990cd1ad683c8053" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bd897422dbb66621fa558f4d9209875530c53e3c8f4b13b2849fbb667c431a6" +checksum = "44e3ee532fc4776c69bcedf7e62f9632cbb3f35776fa9a525cdade3195baa3f7" dependencies = [ "serde", + "serde_derive", ] [[package]] name = "cranelift-frontend" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05db883114c98cfcd6959f72278d2fec42e01ea6a6982cfe4f20e88eebe86653" +checksum = "a612c94d09e653662ec37681dc2d6fd2b9856e6df7147be0afc9aabb0abf19df" dependencies = [ "cranelift-codegen", "log", @@ -637,15 +595,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84559de86e2564152c87e299c8b2559f9107e9c6d274b24ebeb04fb0a5f4abf8" +checksum = "85db9830abeb1170b7d29b536ffd55af1d4d26ac8a77570b5d1aca003bf225cc" [[package]] name = "cranelift-native" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f40b57f187f0fe1ffaf281df4adba2b4bc623a0f6651954da9f3c184be72761" +checksum = "301ef0edafeaeda5771a5d2db64ac53e1818ae3111220a185677025fe91db4a1" dependencies = [ "cranelift-codegen", "libc", @@ -654,9 +612,9 @@ dependencies = [ [[package]] name = "cranelift-wasm" -version = "0.96.4" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3eab6084cc789b9dd0b1316241efeb2968199fee709f4bb4fe0fb0923bb468b" +checksum = "380f0abe8264e4570ac615fc31cef32a3b90a77f7eb97b08331f9dd357b1f500" dependencies = [ "cranelift-codegen", "cranelift-entity", @@ -664,7 +622,7 @@ dependencies = [ "itertools", "log", "smallvec", - "wasmparser 0.103.0", + "wasmparser 0.118.1", "wasmtime-types", ] @@ -767,6 +725,50 @@ dependencies = [ "typenum", ] +[[package]] +name = "cxx" +version = "1.0.115" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de00f15a6fa069c99b88c5c78c4541d0e7899a33b86f7480e23df2431fce0bc" +dependencies = [ + "cc", + "cxxbridge-flags", + "cxxbridge-macro", + "link-cplusplus", +] + +[[package]] +name = "cxx-build" +version = "1.0.115" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a71e1e631fa2f2f5f92e8b0d860a00c198c6771623a6cefcc863e3554f0d8d6" +dependencies = [ + "cc", + "codespan-reporting", + "once_cell", + "proc-macro2", + "quote", + "scratch", + "syn 2.0.46", +] + +[[package]] +name = "cxxbridge-flags" +version = "1.0.115" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f3fed61d56ba497c4efef9144dfdbaa25aa58f2f6b3a7cf441d4591c583745c" + +[[package]] +name = "cxxbridge-macro" +version = "1.0.115" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8908e380a8efd42150c017b0cfa31509fc49b6d47f7cb6b33e93ffb8f4e3661e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.46", +] + [[package]] name = "data-encoding" version = "2.4.0" @@ -830,23 +832,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] -name = "enum-iterator" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7add3873b5dd076766ee79c8e406ad1a472c385476b9e38849f8eec24f1be689" -dependencies = [ - "enum-iterator-derive", -] - -[[package]] -name = "enum-iterator-derive" -version = "1.2.1" +name = "encoding_rs" +version = "0.8.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eecf8589574ce9b895052fa12d69af7a233f99e6107f5cb8dd1044f2a17bfdcb" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.32", + "cfg-if", ] [[package]] @@ -859,19 +850,6 @@ dependencies = [ "regex", ] -[[package]] -name = "env_logger" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b2cf0344971ee6c64c31be0d530793fba457d322dfec2810c453d0ef228f9c3" -dependencies = [ - "atty", - "humantime", - "log", - "regex", - "termcolor", -] - [[package]] name = "equivalent" version = "1.0.1" @@ -880,41 +858,25 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" -dependencies = [ - "errno-dragonfly", - "libc", - "winapi", -] - -[[package]] -name = "errno" -version = "0.3.1" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" dependencies = [ - "errno-dragonfly", "libc", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] -name = "errno-dragonfly" -version = "0.1.2" +name = "fallible-iterator" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" -dependencies = [ - "cc", - "libc", -] +checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" [[package]] name = "fallible-iterator" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" +checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" [[package]] name = "fastrand" @@ -924,23 +886,13 @@ checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" [[package]] name = "fd-lock" -version = "3.0.12" +version = "4.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39ae6b3d9530211fb3b12a95374b8b0823be812f53d09e18c5675c0146b09642" +checksum = "7e5768da2206272c81ef0b5e951a41862938a6070da63bcea197899942d3b947" dependencies = [ "cfg-if", - "rustix 0.37.26", - "windows-sys 0.48.0", -] - -[[package]] -name = "file-per-thread-logger" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21e16290574b39ee41c71aeb90ae960c504ebaf1e2a1c87bd52aa56ed6e1a02f" -dependencies = [ - "env_logger 0.9.0", - "log", + "rustix 0.38.28", + "windows-sys 0.52.0", ] [[package]] @@ -975,66 +927,82 @@ dependencies = [ [[package]] name = "from_variant" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03ec5dc38ee19078d84a692b1c41181ff9f94331c76cee66ff0208c770b5e54f" +checksum = "3a0b11eeb173ce52f84ebd943d42e58813a2ebb78a6a3ff0a243b71c5199cd7b" dependencies = [ - "pmutil", "proc-macro2", "swc_macros_common", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] name = "fs-set-times" -version = "0.15.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7df62ee66ee2d532ea8d567b5a3f0d03ecd64636b98bad5be1e93dcc918b92aa" +checksum = "033b337d725b97690d86893f9de22b67b80dcc4e9ad815f348254c38119db8fb" dependencies = [ - "io-lifetimes 0.5.3", - "rustix 0.33.7", - "winapi", + "io-lifetimes 2.0.3", + "rustix 0.38.28", + "windows-sys 0.52.0", ] [[package]] -name = "fs-set-times" -version = "0.19.1" +name = "futures" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7833d0f115a013d51c55950a3b09d30e4b057be9961b709acb9b5b17a1108861" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" dependencies = [ - "io-lifetimes 1.0.11", - "rustix 0.37.26", - "windows-sys 0.48.0", + "futures-channel", + "futures-core", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", ] [[package]] name = "futures-channel" -version = "0.3.27" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "164713a5a0dcc3e7b4b1ed7d3b433cabc18025386f9339346e8daf15963cf7ac" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" dependencies = [ "futures-core", + "futures-sink", ] [[package]] name = "futures-core" -version = "0.3.29" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-io" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" + +[[package]] +name = "futures-sink" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" [[package]] name = "futures-task" -version = "0.3.29" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" [[package]] name = "futures-util" -version = "0.3.27" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ef6b17e481503ec85211fed8f39d1970f128935ca1f814cd32ac4a6842e84ab" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" dependencies = [ "futures-core", + "futures-sink", "futures-task", "pin-project-lite", "pin-utils", @@ -1083,46 +1051,28 @@ dependencies = [ "wasi 0.10.2+wasi-snapshot-preview1", ] -[[package]] -name = "getset" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e45727250e75cc04ff2846a66397da8ef2b3db8e40e0cef4df67950a07621eb9" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "gimli" version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" dependencies = [ - "fallible-iterator", + "fallible-iterator 0.2.0", "indexmap 1.9.3", "stable_deref_trait", ] [[package]] name = "gimli" -version = "0.27.2" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" dependencies = [ - "fallible-iterator", - "indexmap 1.9.3", + "fallible-iterator 0.3.0", + "indexmap 2.0.2", "stable_deref_trait", ] -[[package]] -name = "gimli" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" - [[package]] name = "glob" version = "0.3.0" @@ -1155,6 +1105,9 @@ name = "hashbrown" version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" +dependencies = [ + "ahash", +] [[package]] name = "heck" @@ -1186,6 +1139,19 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" +[[package]] +name = "hstr" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de90d3db62411eb62eddabe402d706ac4970f7ac8d088c05f11069cad9be9857" +dependencies = [ + "new_debug_unreachable", + "once_cell", + "phf", + "rustc-hash", + "smallvec", +] + [[package]] name = "http" version = "1.0.0" @@ -1226,17 +1192,11 @@ version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" -[[package]] -name = "humantime" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" - [[package]] name = "hyper" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "403f9214f3e703236b221f1a9cd88ec8b4adfa5296de01ab96216361f4692f56" +checksum = "fb5aa53871fc917b1a9ed87b683a5d86db645e23acb32c2e0785a353e522fb75" dependencies = [ "bytes", "futures-channel", @@ -1268,9 +1228,9 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ca339002caeb0d159cc6e023dff48e199f081e42fa039895c7c6f38b37f2e9d" +checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa" dependencies = [ "bytes", "futures-channel", @@ -1286,6 +1246,29 @@ dependencies = [ "tracing", ] +[[package]] +name = "iana-time-zone" +version = "0.1.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + [[package]] name = "id-arena" version = "2.2.1" @@ -1316,7 +1299,6 @@ checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", "hashbrown 0.12.3", - "serde", ] [[package]] @@ -1332,30 +1314,14 @@ dependencies = [ [[package]] name = "io-extras" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c937cc9891c12eaa8c63ad347e4a288364b1328b924886970b47a14ab8f8f8" -dependencies = [ - "io-lifetimes 0.5.3", - "winapi", -] - -[[package]] -name = "io-extras" -version = "0.17.4" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fde93d48f0d9277f977a333eca8313695ddd5301dc96f7e02aeddcb0dd99096f" +checksum = "c301e73fb90e8a29e600a9f402d095765f74310d582916a952f618836a1bd1ed" dependencies = [ - "io-lifetimes 1.0.11", - "windows-sys 0.48.0", + "io-lifetimes 2.0.3", + "windows-sys 0.52.0", ] -[[package]] -name = "io-lifetimes" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec58677acfea8a15352d42fc87d11d63596ade9239e0a7c9352914417515dbe6" - [[package]] name = "io-lifetimes" version = "1.0.11" @@ -1367,11 +1333,17 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "io-lifetimes" +version = "2.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a611371471e98973dbcab4e0ec66c31a10bc356eeb4d54a0e05eac8158fe38c" + [[package]] name = "ipnet" -version = "2.3.1" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f2d64f2edebec4ce84ad108148e67e1064789bee435edc5b60ad398714a3a9" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" [[package]] name = "is-macro" @@ -1383,7 +1355,7 @@ dependencies = [ "pmutil", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -1415,9 +1387,9 @@ checksum = "4217ad341ebadf8d8e724e264f13e593e0648f5b3e94b3896a5df283be015ecc" [[package]] name = "ittapi" -version = "0.3.3" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e648c437172ce7d3ac35ca11a068755072054826fa455a916b43524fa4a62a7" +checksum = "6b996fe614c41395cdaedf3cf408a9534851090959d90d54a535f675550b64b1" dependencies = [ "anyhow", "ittapi-sys", @@ -1426,16 +1398,16 @@ dependencies = [ [[package]] name = "ittapi-sys" -version = "0.3.3" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9b32a4d23f72548178dde54f3c12c6b6a08598e25575c0d0fa5bd861e0dc1a5" +checksum = "52f5385394064fa2c886205dba02598013ce83d3e92d33dbdc0c52fe0e7bf4fc" dependencies = [ "cc", ] [[package]] name = "javy" -version = "2.1.1-alpha.1" +version = "2.2.1-alpha.1" dependencies = [ "anyhow", "quickjs-wasm-rs", @@ -1446,7 +1418,7 @@ dependencies = [ [[package]] name = "javy-apis" -version = "2.1.1-alpha.1" +version = "2.2.1-alpha.1" dependencies = [ "anyhow", "fastrand", @@ -1458,10 +1430,9 @@ dependencies = [ [[package]] name = "javy-cli" -version = "1.3.0" +version = "1.4.0" dependencies = [ "anyhow", - "binaryen", "brotli", "convert_case", "criterion", @@ -1475,11 +1446,12 @@ dependencies = [ "uuid", "walrus", "wasi-common", - "wasmparser 0.118.1", + "wasm-opt", + "wasmparser 0.121.0", "wasmprinter", "wasmtime", "wasmtime-wasi", - "wit-parser 0.13.0", + "wit-parser", "wizer", ] @@ -1531,9 +1503,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.149" +version = "0.2.151" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" +checksum = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4" [[package]] name = "libloading" @@ -1546,10 +1518,13 @@ dependencies = [ ] [[package]] -name = "linux-raw-sys" -version = "0.0.42" +name = "link-cplusplus" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5284f00d480e1c39af34e72f8ad60b94f47007e3481cd3b731c1d67190ddc7b7" +checksum = "9d240c6f7e1ba3a28b0249f774e6a9dd0175054b52dfbb61b16eb8505c3785c9" +dependencies = [ + "cc", +] [[package]] name = "linux-raw-sys" @@ -1559,19 +1534,9 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" [[package]] name = "linux-raw-sys" -version = "0.4.10" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" - -[[package]] -name = "lock_api" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" -dependencies = [ - "autocfg", - "scopeguard", -] +checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456" [[package]] name = "log" @@ -1623,9 +1588,9 @@ dependencies = [ [[package]] name = "memoffset" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" dependencies = [ "autocfg", ] @@ -1742,32 +1707,23 @@ dependencies = [ "libc", ] -[[package]] -name = "object" -version = "0.30.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439" -dependencies = [ - "crc32fast", - "hashbrown 0.13.2", - "indexmap 1.9.3", - "memchr", -] - [[package]] name = "object" version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ + "crc32fast", + "hashbrown 0.14.1", + "indexmap 2.0.2", "memchr", ] [[package]] name = "once_cell" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "oorandom" @@ -1798,7 +1754,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -1819,29 +1775,6 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "parking_lot" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall 0.3.5", - "smallvec", - "windows-targets", -] - [[package]] name = "paste" version = "1.0.6" @@ -1858,18 +1791,7 @@ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" name = "percent-encoding" version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" - -[[package]] -name = "phf" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" -dependencies = [ - "phf_macros 0.10.0", - "phf_shared 0.10.0", - "proc-macro-hack", -] +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "phf" @@ -1877,18 +1799,8 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" dependencies = [ - "phf_macros 0.11.2", - "phf_shared 0.11.2", -] - -[[package]] -name = "phf_generator" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6" -dependencies = [ - "phf_shared 0.10.0", - "rand", + "phf_macros", + "phf_shared", ] [[package]] @@ -1897,44 +1809,21 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" dependencies = [ - "phf_shared 0.11.2", + "phf_shared", "rand", ] -[[package]] -name = "phf_macros" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0" -dependencies = [ - "phf_generator 0.10.0", - "phf_shared 0.10.0", - "proc-macro-hack", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "phf_macros" version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" dependencies = [ - "phf_generator 0.11.2", - "phf_shared 0.11.2", + "phf_generator", + "phf_shared", "proc-macro2", "quote", - "syn 2.0.32", -] - -[[package]] -name = "phf_shared" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" -dependencies = [ - "siphasher", + "syn 2.0.46", ] [[package]] @@ -1963,7 +1852,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -2020,7 +1909,7 @@ checksum = "52a40bc70c2c58040d2d8b167ba9a5ff59fc9dab7ad44771cfde3dcfde7a09c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -2029,12 +1918,6 @@ version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" -[[package]] -name = "precomputed-hash" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" - [[package]] name = "prettyplease" version = "0.2.15" @@ -2042,7 +1925,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -2069,17 +1952,11 @@ dependencies = [ "version_check", ] -[[package]] -name = "proc-macro-hack" -version = "0.5.20+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" - [[package]] name = "proc-macro2" -version = "1.0.63" +version = "1.0.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb" +checksum = "2de98502f212cfcea8d0bb305bd0f49d7ebdd75b64ba0a68f937d888f4e0d6db" dependencies = [ "unicode-ident", ] @@ -2093,31 +1970,20 @@ dependencies = [ "cc", ] -[[package]] -name = "pulldown-cmark" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffade02495f22453cd593159ea2f59827aae7f53fa8323f756799b670881dcf8" -dependencies = [ - "bitflags 1.3.2", - "memchr", - "unicase", -] - [[package]] name = "quickcheck" version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6" dependencies = [ - "env_logger 0.8.4", + "env_logger", "log", "rand", ] [[package]] name = "quickjs-wasm-rs" -version = "3.0.0-alpha.1" +version = "3.0.1-alpha.1" dependencies = [ "anyhow", "once_cell", @@ -2129,7 +1995,7 @@ dependencies = [ [[package]] name = "quickjs-wasm-sys" -version = "1.1.2-alpha.1" +version = "1.2.1-alpha.1" dependencies = [ "anyhow", "bindgen", @@ -2144,9 +2010,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.28" +version = "1.0.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488" +checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" dependencies = [ "proc-macro2", ] @@ -2215,15 +2081,6 @@ dependencies = [ "bitflags 1.3.2", ] -[[package]] -name = "redox_syscall" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" -dependencies = [ - "bitflags 1.3.2", -] - [[package]] name = "redox_syscall" version = "0.4.1" @@ -2245,9 +2102,9 @@ dependencies = [ [[package]] name = "regalloc2" -version = "0.8.1" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4a52e724646c6c0800fc456ec43b4165d2f91fba88ceaca06d9e0b400023478" +checksum = "ad156d539c879b7a24a363a2016d77961786e71f48f2e2fc8302a92abd2429a6" dependencies = [ "hashbrown 0.13.2", "log", @@ -2316,22 +2173,6 @@ dependencies = [ "semver 0.9.0", ] -[[package]] -name = "rustix" -version = "0.33.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "938a344304321a9da4973b9ff4f9f8db9caf4597dfd9dda6a60b523340a0fff0" -dependencies = [ - "bitflags 1.3.2", - "errno 0.2.8", - "io-lifetimes 0.5.3", - "itoa", - "libc", - "linux-raw-sys 0.0.42", - "once_cell", - "winapi", -] - [[package]] name = "rustix" version = "0.37.26" @@ -2339,33 +2180,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "84f3f8f960ed3b5a59055428714943298bf3fa2d4a1d53135084e0544829d995" dependencies = [ "bitflags 1.3.2", - "errno 0.3.1", + "errno", "io-lifetimes 1.0.11", - "itoa", "libc", "linux-raw-sys 0.3.8", - "once_cell", "windows-sys 0.48.0", ] [[package]] name = "rustix" -version = "0.38.21" +version = "0.38.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3" +checksum = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316" dependencies = [ "bitflags 2.4.1", - "errno 0.3.1", + "errno", + "itoa", "libc", - "linux-raw-sys 0.4.10", - "windows-sys 0.48.0", + "linux-raw-sys 0.4.12", + "once_cell", + "windows-sys 0.52.0", ] [[package]] name = "rustversion" -version = "1.0.12" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" [[package]] name = "ryu" @@ -2403,6 +2244,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +[[package]] +name = "scratch" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3cf7c11c38cb994f3d40e8a8cde3bbd1f72a435e4c49e85d6553d8312306152" + [[package]] name = "security-framework" version = "2.9.1" @@ -2449,9 +2296,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.193" +version = "1.0.196" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89" +checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" dependencies = [ "serde_derive", ] @@ -2467,29 +2314,29 @@ dependencies = [ [[package]] name = "serde_bytes" -version = "0.11.12" +version = "0.11.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff" +checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" dependencies = [ "serde", ] [[package]] name = "serde_derive" -version = "1.0.193" +version = "1.0.196" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3" +checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] name = "serde_json" -version = "1.0.108" +version = "1.0.113" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" +checksum = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79" dependencies = [ "itoa", "ryu", @@ -2518,9 +2365,9 @@ dependencies = [ [[package]] name = "shlex" -version = "1.1.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "siphasher" @@ -2536,9 +2383,9 @@ checksum = "03b634d87b960ab1a38c4fe143b508576f075e7c978bfad18217645ebfdfa2ec" [[package]] name = "smallvec" -version = "1.8.0" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" [[package]] name = "smartstring" @@ -2576,6 +2423,12 @@ dependencies = [ "url", ] +[[package]] +name = "sptr" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a" + [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -2601,43 +2454,16 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" -[[package]] -name = "string_cache" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b" -dependencies = [ - "new_debug_unreachable", - "once_cell", - "parking_lot", - "phf_shared 0.10.0", - "precomputed-hash", - "serde", -] - -[[package]] -name = "string_cache_codegen" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988" -dependencies = [ - "phf_generator 0.10.0", - "phf_shared 0.10.0", - "proc-macro2", - "quote", -] - [[package]] name = "string_enum" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fa4d4f81d7c05b9161f8de839975d3326328b8ba2831164b465524cc2f55252" +checksum = "1b650ea2087d32854a0f20b837fc56ec987a1cb4f758c9757e1171ee9812da63" dependencies = [ - "pmutil", "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -2670,25 +2496,42 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "strum" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" + +[[package]] +name = "strum_macros" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "rustversion", + "syn 1.0.109", +] + [[package]] name = "swc_atoms" -version = "0.6.0" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebf7a12229f0c0efb654a6a0f8cbfd94fbd320a57c764857a82d8abe9342b450" +checksum = "7d538eaaa6f085161d088a04cf0a3a5a52c5a7f2b3bd9b83f73f058b0ed357c0" dependencies = [ + "hstr", "once_cell", "rustc-hash", "serde", - "string_cache", - "string_cache_codegen", - "triomphe", ] [[package]] name = "swc_common" -version = "0.33.4" +version = "0.33.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b392fa3590181ab52441aaf6132bd247d447444663f4f9bcb43166d2c2f6853" +checksum = "3792c10fa5d3e93a705b31f13fdea4a6e68c3c20d4351e84ed1741b7864399cd" dependencies = [ "ast_node", "better_scoped_tls", @@ -2702,7 +2545,6 @@ dependencies = [ "serde", "siphasher", "sourcemap", - "string_cache", "swc_atoms", "swc_eq_ignore_macros", "swc_visit", @@ -2713,9 +2555,9 @@ dependencies = [ [[package]] name = "swc_core" -version = "0.86.39" +version = "0.89.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d624b7b8c133eeda034c85593553efe1f66f37a5a95cf0f48aed008a4f4199a" +checksum = "ada90e2757a61cbd3d82427bf4968561cc00994a151534536f74c46f4612fc26" dependencies = [ "swc_atoms", "swc_common", @@ -2727,14 +2569,14 @@ dependencies = [ [[package]] name = "swc_ecma_ast" -version = "0.110.5" +version = "0.111.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a6db4d66bf6f59bd60b27ae12ad934f2ecca50bd134b6f65944131a646f32ec" +checksum = "e12b4d0f3b31d293dac16fc13a50f8a282a3bdb658f2a000ffe09b1b638f45c9" dependencies = [ "bitflags 2.4.1", "is-macro", "num-bigint", - "phf 0.11.2", + "phf", "scoped-tls", "string_enum", "swc_atoms", @@ -2744,15 +2586,15 @@ dependencies = [ [[package]] name = "swc_ecma_parser" -version = "0.141.13" +version = "0.142.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3c7da7124f91c624316c8e2f06ce03fafafc1def769968fea9b5d53362a05a6" +checksum = "5c3eedda441af51ca25caebb88837649a40e2a39b763344a53cfedd869740c71" dependencies = [ "either", "new_debug_unreachable", "num-bigint", "num-traits", - "phf 0.11.2", + "phf", "serde", "smallvec", "smartstring", @@ -2766,15 +2608,15 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_base" -version = "0.134.21" +version = "0.136.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2f579e198e370c7cc81ccac5dcbd55278524dd15ca73fa83eceb81714816fe8" +checksum = "4ac76e9680791b06239fdf69ede6d9f7e6d0e2ae7280adcfa71c5e1af5aa6303" dependencies = [ "better_scoped_tls", "bitflags 2.4.1", - "indexmap 1.9.3", + "indexmap 2.0.2", "once_cell", - "phf 0.10.1", + "phf", "rustc-hash", "serde", "smallvec", @@ -2789,11 +2631,11 @@ dependencies = [ [[package]] name = "swc_ecma_utils" -version = "0.124.18" +version = "0.126.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "259dfe66cdf95f347bce647e72cb73c3f92def8f3386f9504d70c0c5924110d4" +checksum = "2f6edc4064cd932c6d267c05f0b161e6aaa4df4f900d5e1db8c92eda8edcc410" dependencies = [ - "indexmap 1.9.3", + "indexmap 2.0.2", "num_cpus", "once_cell", "rustc-hash", @@ -2807,9 +2649,9 @@ dependencies = [ [[package]] name = "swc_ecma_visit" -version = "0.96.5" +version = "0.97.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "363d97d22639a755f8ecfc34cdf8bff0def7efcd76783a6a79da8b27becd8f1b" +checksum = "26ecefeec816318f1d449b4bac2e28a4243a167cc16620e15c3c1f2d91085770" dependencies = [ "num-bigint", "swc_atoms", @@ -2821,33 +2663,31 @@ dependencies = [ [[package]] name = "swc_eq_ignore_macros" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05a95d367e228d52484c53336991fdcf47b6b553ef835d9159db4ba40efb0ee8" +checksum = "695a1d8b461033d32429b5befbf0ad4d7a2c4d6ba9cd5ba4e0645c615839e8e4" dependencies = [ - "pmutil", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] name = "swc_macros_common" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a273205ccb09b51fabe88c49f3b34c5a4631c4c00a16ae20e03111d6a42e832" +checksum = "50176cfc1cbc8bb22f41c6fe9d1ec53fbe057001219b5954961b8ad0f336fce9" dependencies = [ - "pmutil", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] name = "swc_visit" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e87c337fbb2d191bf371173dea6a957f01899adb8f189c6c31b122a6cfc98fc3" +checksum = "b27078d8571abe23aa52ef608dd1df89096a37d867cf691cbb4f4c392322b7c9" dependencies = [ "either", "swc_visit_macros", @@ -2855,16 +2695,16 @@ dependencies = [ [[package]] name = "swc_visit_macros" -version = "0.5.8" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f322730fb82f3930a450ac24de8c98523af7d34ab8cb2f46bcb405839891a99" +checksum = "fa8bb05975506741555ea4d10c3a3bdb0e2357cd58e1a4a4332b8ebb4b44c34d" dependencies = [ "Inflector", "pmutil", "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -2880,9 +2720,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.32" +version = "2.0.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2" +checksum = "89456b690ff72fddcecf231caedbe615c59480c93358a93dfae7fc29e3ebbf0e" dependencies = [ "proc-macro2", "quote", @@ -2891,44 +2731,44 @@ dependencies = [ [[package]] name = "system-interface" -version = "0.25.7" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "928ebd55ab758962e230f51ca63735c5b283f26292297c81404289cda5d78631" +checksum = "0682e006dd35771e392a6623ac180999a9a854b1d4a6c12fb2e804941c2b1f58" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.1", "cap-fs-ext", - "cap-std 1.0.10", + "cap-std", "fd-lock", - "io-lifetimes 1.0.11", - "rustix 0.37.26", - "windows-sys 0.48.0", - "winx 0.35.1", + "io-lifetimes 2.0.3", + "rustix 0.38.28", + "windows-sys 0.52.0", + "winx", ] [[package]] name = "target-lexicon" -version = "0.12.3" +version = "0.12.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7fa7e55043acb85fca6b3c01485a2eeb6b69c5d21002e273c79e465f43b7ac1" +checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" [[package]] name = "tempfile" -version = "3.8.1" +version = "3.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" +checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" dependencies = [ "cfg-if", "fastrand", "redox_syscall 0.4.1", - "rustix 0.38.21", - "windows-sys 0.48.0", + "rustix 0.38.28", + "windows-sys 0.52.0", ] [[package]] name = "termcolor" -version = "1.1.2" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4" +checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" dependencies = [ "winapi-util", ] @@ -2944,49 +2784,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.40" +version = "1.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" +checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.40" +version = "1.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" +checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", -] - -[[package]] -name = "time" -version = "0.3.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea9e1b3cf1243ae005d9e74085d4d542f3125458f3a81af210d901dcd7411efd" -dependencies = [ - "itoa", - "serde", - "time-core", - "time-macros", -] - -[[package]] -name = "time-core" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" - -[[package]] -name = "time-macros" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "372950940a5f07bf38dbe211d7283c9e6d7327df53794992d293e534c733d09b" -dependencies = [ - "time-core", + "syn 2.0.46", ] [[package]] @@ -3016,13 +2829,15 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.34.0" +version = "1.35.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9" +checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104" dependencies = [ "backtrace", + "bytes", "libc", "mio", + "num_cpus", "pin-project-lite", "socket2", "tokio-macros", @@ -3037,7 +2852,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -3108,7 +2923,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.46", ] [[package]] @@ -3120,16 +2935,6 @@ dependencies = [ "once_cell", ] -[[package]] -name = "triomphe" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1ee9bd9239c339d714d657fac840c6d2a4f9c45f4f9ec7b0975113458be78db" -dependencies = [ - "serde", - "stable_deref_trait", -] - [[package]] name = "try-lock" version = "0.2.4" @@ -3148,15 +2953,6 @@ version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987" -[[package]] -name = "unicase" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" -dependencies = [ - "version_check", -] - [[package]] name = "unicode-bidi" version = "0.3.13" @@ -3215,9 +3011,9 @@ dependencies = [ [[package]] name = "uuid" -version = "1.6.1" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560" +checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" dependencies = [ "getrandom", ] @@ -3236,17 +3032,12 @@ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" [[package]] name = "vergen" -version = "7.5.1" +version = "8.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f21b881cd6636ece9735721cf03c1fe1e774fe258683d084bb2812ab67435749" +checksum = "1290fd64cc4e7d3c9b07d7f333ce0ce0007253e32870e632624835cc80b83939" dependencies = [ "anyhow", - "cfg-if", - "enum-iterator", - "getset", "rustversion", - "thiserror", - "time", ] [[package]] @@ -3317,22 +3108,21 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasi-cap-std-sync" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d29c5da3b5cfc9212a7fa824224875cb67fb89d2a8392db655e4c59b8ab2ae7" +checksum = "154528979a211aa28d969846e883df75705809ed9bcc70aba61460683ea7355b" dependencies = [ "anyhow", "async-trait", "cap-fs-ext", "cap-rand", - "cap-std 1.0.10", + "cap-std", "cap-time-ext", - "fs-set-times 0.19.1", - "io-extras 0.17.4", - "io-lifetimes 1.0.11", - "is-terminal", + "fs-set-times", + "io-extras", + "io-lifetimes 2.0.3", "once_cell", - "rustix 0.37.26", + "rustix 0.38.28", "system-interface", "tracing", "wasi-common", @@ -3341,17 +3131,17 @@ dependencies = [ [[package]] name = "wasi-common" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8bd905dcec1448664bf63d42d291cbae0feeea3ad41631817b8819e096d76bd" +checksum = "3d888b611fee7d273dd057dc009d2dd3132736f36710ffd65657ac83628d1e3b" dependencies = [ "anyhow", - "bitflags 1.3.2", + "bitflags 2.4.1", "cap-rand", - "cap-std 1.0.10", - "io-extras 0.17.4", + "cap-std", + "io-extras", "log", - "rustix 0.37.26", + "rustix 0.38.28", "thiserror", "tracing", "wasmtime", @@ -3415,47 +3205,77 @@ checksum = "6a89911bd99e5f3659ec4acf9c4d93b0a90fe4a2a11f15328472058edc5261be" [[package]] name = "wasm-encoder" -version = "0.25.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eff853c4f09eec94d76af527eddad4e9de13b11d6286a1ef7134bc30135a2b7" +checksum = "18c41dbd92eaebf3612a39be316540b8377c871cb9bde6b064af962984912881" dependencies = [ "leb128", ] [[package]] name = "wasm-encoder" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83c94f464d50e31da425794a02da1a82d4b96a657dcb152a6664e8aa915be517" +checksum = "b2f8e9778e04cbf44f58acc301372577375a666b966c50b03ef46144f80436a8" dependencies = [ "leb128", ] [[package]] name = "wasm-encoder" -version = "0.29.0" +version = "0.38.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18c41dbd92eaebf3612a39be316540b8377c871cb9bde6b064af962984912881" +checksum = "0ad2b51884de9c7f4fe2fd1043fccb8dcad4b1e29558146ee57a144d15779f3f" dependencies = [ "leb128", ] [[package]] -name = "wasmparser" -version = "0.80.2" +name = "wasm-opt" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "449167e2832691a1bff24cde28d2804e90e09586a448c8e76984792c44334a6b" +checksum = "fc942673e7684671f0c5708fc18993569d184265fd5223bb51fc8e5b9b6cfd52" +dependencies = [ + "anyhow", + "libc", + "strum", + "strum_macros", + "tempfile", + "thiserror", + "wasm-opt-cxx-sys", + "wasm-opt-sys", +] [[package]] -name = "wasmparser" -version = "0.103.0" +name = "wasm-opt-cxx-sys" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c437373cac5ea84f1113d648d51f71751ffbe3d90c00ae67618cf20d0b5ee7b" +checksum = "8c57b28207aa724318fcec6575fe74803c23f6f266fce10cbc9f3f116762f12e" dependencies = [ - "indexmap 1.9.3", - "url", + "anyhow", + "cxx", + "cxx-build", + "wasm-opt-sys", +] + +[[package]] +name = "wasm-opt-sys" +version = "0.116.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a1cce564dc768dacbdb718fc29df2dba80bd21cb47d8f77ae7e3d95ceb98cbe" +dependencies = [ + "anyhow", + "cc", + "cxx", + "cxx-build", ] +[[package]] +name = "wasmparser" +version = "0.80.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "449167e2832691a1bff24cde28d2804e90e09586a448c8e76984792c44334a6b" + [[package]] name = "wasmparser" version = "0.106.0" @@ -3476,74 +3296,89 @@ dependencies = [ "semver 1.0.17", ] +[[package]] +name = "wasmparser" +version = "0.121.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "953cf6a7606ab31382cb1caa5ae403e77ba70c7f8e12eeda167e7040d42bfda8" +dependencies = [ + "bitflags 2.4.1", + "indexmap 2.0.2", + "semver 1.0.17", +] + [[package]] name = "wasmprinter" -version = "0.2.75" +version = "0.2.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d027eb8294904fc715ac0870cebe6b0271e96b90605ee21511e7565c4ce568c" +checksum = "05e32c13c59fdc64d3f6998a1d52eb1d362b6904a88b754190ccb85661ad577a" dependencies = [ "anyhow", - "wasmparser 0.118.1", + "wasmparser 0.121.0", ] [[package]] name = "wasmtime" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634357e8668774b24c80b210552f3f194e2342a065d6d83845ba22c5817d0770" +checksum = "a8e539fded2495422ea3c4dfa7beeddba45904eece182cf315294009e1a323bf" dependencies = [ "anyhow", "async-trait", "bincode", "bumpalo", "cfg-if", + "encoding_rs", "fxprof-processed-profile", - "indexmap 1.9.3", + "indexmap 2.0.2", "libc", "log", - "object 0.30.3", + "object", "once_cell", "paste", - "psm", "rayon", "serde", + "serde_derive", "serde_json", "target-lexicon", - "wasmparser 0.103.0", + "wasm-encoder 0.38.1", + "wasmparser 0.118.1", "wasmtime-cache", "wasmtime-component-macro", + "wasmtime-component-util", "wasmtime-cranelift", "wasmtime-environ", "wasmtime-fiber", "wasmtime-jit", "wasmtime-runtime", + "wasmtime-winch", "wat", "windows-sys 0.48.0", ] [[package]] name = "wasmtime-asm-macros" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d33c73c24ce79b0483a3b091a9acf88871f4490b88998e8974b22236264d304c" +checksum = "660ba9143e15a2acd921820df221b73aee256bd3ca2d208d73d8adc9587ccbb9" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-cache" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6107809b2d9f5b2fd3ddbaddb3bb92ff8048b62f4030debf1408119ffd38c6cb" +checksum = "a3ce373743892002f9391c6741ef0cb0335b55ec899d874f311222b7e36f4594" dependencies = [ "anyhow", "base64", "bincode", "directories-next", - "file-per-thread-logger", "log", - "rustix 0.37.26", + "rustix 0.38.28", "serde", + "serde_derive", "sha2", "toml", "windows-sys 0.48.0", @@ -3552,113 +3387,123 @@ dependencies = [ [[package]] name = "wasmtime-component-macro" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5ba489850d9c91c6c5b9e1696ee89e7a69d9796236a005f7e9131b6746e13b6" +checksum = "12ef32643324e564e1c359e9044daa06cbf90d7e2d6c99a738d17a12959f01a5" dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.46", "wasmtime-component-util", "wasmtime-wit-bindgen", - "wit-parser 0.7.1", + "wit-parser", ] [[package]] name = "wasmtime-component-util" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fa88f9e77d80f828c9d684741a9da649366c6d1cceb814755dd9cab7112d1d1" +checksum = "8c87d06c18d21a4818f354c00a85f4ebc62b2270961cd022968452b0e4dbed9d" [[package]] name = "wasmtime-cranelift" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5800616a28ed6bd5e8b99ea45646c956d798ae030494ac0689bc3e45d3b689c1" +checksum = "2d648c8b4064a7911093b02237cd5569f71ca171d3a0a486bf80600b19e1cba2" dependencies = [ "anyhow", + "cfg-if", "cranelift-codegen", "cranelift-control", "cranelift-entity", "cranelift-frontend", "cranelift-native", "cranelift-wasm", - "gimli 0.27.2", + "gimli 0.28.0", "log", - "object 0.30.3", + "object", "target-lexicon", "thiserror", - "wasmparser 0.103.0", + "wasmparser 0.118.1", "wasmtime-cranelift-shared", "wasmtime-environ", + "wasmtime-versioned-export-macros", ] [[package]] name = "wasmtime-cranelift-shared" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27e4030b959ac5c5d6ee500078977e813f8768fa2b92fc12be01856cd0c76c55" +checksum = "290a89027688782da8ff60b12bb95695494b1874e0d0ba2ba387d23dace6d70c" dependencies = [ "anyhow", "cranelift-codegen", "cranelift-control", "cranelift-native", - "gimli 0.27.2", - "object 0.30.3", + "gimli 0.28.0", + "object", "target-lexicon", "wasmtime-environ", ] [[package]] name = "wasmtime-environ" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ec815d01a8d38aceb7ed4678f9ba551ae6b8a568a63810ac3ad9293b0fd01c8" +checksum = "61eb64fb3e0da883e2df4a13a81d6282e072336e6cb6295021d0f7ab2e352754" dependencies = [ "anyhow", "cranelift-entity", - "gimli 0.27.2", - "indexmap 1.9.3", + "gimli 0.28.0", + "indexmap 2.0.2", "log", - "object 0.30.3", + "object", "serde", + "serde_derive", "target-lexicon", "thiserror", - "wasmparser 0.103.0", + "wasm-encoder 0.38.1", + "wasmparser 0.118.1", + "wasmprinter", + "wasmtime-component-util", "wasmtime-types", ] [[package]] name = "wasmtime-fiber" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23c5127908fdf720614891ec741c13dd70c844e102caa393e2faca1ee68e9bfb" +checksum = "40ecf1d3a838b0956b71ad3f8cb80069a228339775bf02dd35d86a5a68bbe443" dependencies = [ + "anyhow", "cc", "cfg-if", - "rustix 0.37.26", + "rustix 0.38.28", "wasmtime-asm-macros", + "wasmtime-versioned-export-macros", "windows-sys 0.48.0", ] [[package]] name = "wasmtime-jit" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2712eafe829778b426cad0e1769fef944898923dd29f0039e34e0d53ba72b234" +checksum = "f485336add49267d8859e8f8084d2d4b9a4b1564496b6f30ba5b168d50c10ceb" dependencies = [ - "addr2line 0.19.0", + "addr2line", "anyhow", "bincode", "cfg-if", "cpp_demangle", - "gimli 0.27.2", + "gimli 0.28.0", "ittapi", "log", - "object 0.30.3", + "object", "rustc-demangle", + "rustix 0.38.28", "serde", + "serde_derive", "target-lexicon", "wasmtime-environ", "wasmtime-jit-debug", @@ -3669,20 +3514,21 @@ dependencies = [ [[package]] name = "wasmtime-jit-debug" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fb78eacf4a6e47260d8ef8cc81ea8ddb91397b2e848b3fb01567adebfe89b5" +checksum = "65e119affec40edb2fab9044f188759a00c2df9c3017278d047012a2de1efb4f" dependencies = [ - "object 0.30.3", + "object", "once_cell", - "rustix 0.37.26", + "rustix 0.38.28", + "wasmtime-versioned-export-macros", ] [[package]] name = "wasmtime-jit-icache-coherence" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1364900b05f7d6008516121e8e62767ddb3e176bdf4c84dfa85da1734aeab79" +checksum = "6b6d197fcc34ad32ed440e1f9552fd57d1f377d9699d31dee1b5b457322c1f8a" dependencies = [ "cfg-if", "libc", @@ -3691,66 +3537,128 @@ dependencies = [ [[package]] name = "wasmtime-runtime" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a16ffe4de9ac9669175c0ea5c6c51ffc596dfb49320aaa6f6c57eff58cef069" +checksum = "794b2bb19b99ef8322ff0dd9fe1ba7e19c41036dfb260b3f99ecce128c42ff92" dependencies = [ "anyhow", "cc", "cfg-if", - "indexmap 1.9.3", + "encoding_rs", + "indexmap 2.0.2", "libc", "log", "mach", "memfd", - "memoffset 0.8.0", + "memoffset 0.9.0", "paste", - "rand", - "rustix 0.37.26", + "psm", + "rustix 0.38.28", + "sptr", + "wasm-encoder 0.38.1", "wasmtime-asm-macros", "wasmtime-environ", "wasmtime-fiber", "wasmtime-jit-debug", + "wasmtime-versioned-export-macros", + "wasmtime-wmemcheck", "windows-sys 0.48.0", ] [[package]] name = "wasmtime-types" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19961c9a3b04d5e766875a5c467f6f5d693f508b3e81f8dc4a1444aa94f041c9" +checksum = "d995db8bb56f2cd8d2dc0ed5ffab94ffb435283b0fe6747f80f7aab40b2d06a1" dependencies = [ "cranelift-entity", "serde", + "serde_derive", "thiserror", - "wasmparser 0.103.0", + "wasmparser 0.118.1", +] + +[[package]] +name = "wasmtime-versioned-export-macros" +version = "16.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f55c5565959287c21dd0f4277ae3518dd2ae62679f655ee2dbc4396e19d210db" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.46", ] [[package]] name = "wasmtime-wasi" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21080ff62878f1d7c53d9571053dbe96552c0f982f9f29eac65ea89974fabfd7" +checksum = "ccd8370078149d49a3a47e93741553fd79b700421464b6a27ca32718192ab130" dependencies = [ "anyhow", + "async-trait", + "bitflags 2.4.1", + "bytes", + "cap-fs-ext", + "cap-net-ext", + "cap-rand", + "cap-std", + "cap-time-ext", + "fs-set-times", + "futures", + "io-extras", + "io-lifetimes 2.0.3", "libc", + "log", + "once_cell", + "rustix 0.38.28", + "system-interface", + "thiserror", + "tokio", + "tracing", + "url", "wasi-cap-std-sync", "wasi-common", "wasmtime", "wiggle", + "windows-sys 0.48.0", +] + +[[package]] +name = "wasmtime-winch" +version = "16.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c6f945ff9bad96e0a69973d74f193c19f627c8adbf250e7cb73ae7564b6cc8a" +dependencies = [ + "anyhow", + "cranelift-codegen", + "gimli 0.28.0", + "object", + "target-lexicon", + "wasmparser 0.118.1", + "wasmtime-cranelift-shared", + "wasmtime-environ", + "winch-codegen", ] [[package]] name = "wasmtime-wit-bindgen" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "421f0d16cc5c612b35ae53a0be3d3124c72296f18e5be3468263c745d56d37ab" +checksum = "f328b2d4a690270324756e886ed5be3a4da4c00be0eea48253f4595ad068062b" dependencies = [ "anyhow", "heck 0.4.1", - "wit-parser 0.7.1", + "indexmap 2.0.2", + "wit-parser", ] +[[package]] +name = "wasmtime-wmemcheck" +version = "16.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67761d8f8c0b3c13a5d34356274b10a40baba67fe9cfabbfc379a8b414e45de2" + [[package]] name = "wast" version = "35.0.2" @@ -3762,23 +3670,23 @@ dependencies = [ [[package]] name = "wast" -version = "56.0.0" +version = "69.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b54185c051d7bbe23757d50fe575880a2426a2f06d2e9f6a10fd9a4a42920c0" +checksum = "c1ee37317321afde358e4d7593745942c48d6d17e0e6e943704de9bbee121e7a" dependencies = [ "leb128", "memchr", "unicode-width", - "wasm-encoder 0.25.0", + "wasm-encoder 0.38.1", ] [[package]] name = "wat" -version = "1.0.62" +version = "1.0.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56681922808216ab86d96bb750f70d500b5a7800e41564290fd46bb773581299" +checksum = "aeb338ee8dee4d4cd05e6426683f21c5087dc7cfc8903e839ccf48d43332da3c" dependencies = [ - "wast 56.0.0", + "wast 69.0.1", ] [[package]] @@ -3804,13 +3712,13 @@ dependencies = [ [[package]] name = "wiggle" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b34e40b7b17a920d03449ca78b0319984379eed01a9a11c1def9c3d3832d85a" +checksum = "0afb26cd3269289bb314a361ff0a6685e5ce793b62181a9fe3f81ace15051697" dependencies = [ "anyhow", "async-trait", - "bitflags 1.3.2", + "bitflags 2.4.1", "thiserror", "tracing", "wasmtime", @@ -3819,28 +3727,28 @@ dependencies = [ [[package]] name = "wiggle-generate" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eefda132eaa84fe5f15d23a55a912f8417385aee65d0141d78a3b65e46201ed" +checksum = "cef2868fed7584d2b552fa317104858ded80021d23b073b2d682d3c932a027bd" dependencies = [ "anyhow", "heck 0.4.1", "proc-macro2", "quote", "shellexpand", - "syn 1.0.109", + "syn 2.0.46", "witx", ] [[package]] name = "wiggle-macro" -version = "9.0.4" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ca1a344a0ba781e2a94b27be5bb78f23e43d52336bd663b810d49d7189ad334" +checksum = "31ae1ec11a17ea481539ee9a5719a278c9790d974060fbf71db4b2c05378780b" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.46", "wiggle-generate", ] @@ -3875,6 +3783,31 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "winch-codegen" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58e58c236a6abdd9ab454552b4f29e16cfa837a86897c1503313b2e62e7609ec" +dependencies = [ + "anyhow", + "cranelift-codegen", + "gimli 0.28.0", + "regalloc2", + "smallvec", + "target-lexicon", + "wasmparser 0.118.1", + "wasmtime-environ", +] + +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.0", +] + [[package]] name = "windows-sys" version = "0.42.0" @@ -3896,7 +3829,16 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets", + "windows-targets 0.48.0", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.0", ] [[package]] @@ -3914,6 +3856,21 @@ dependencies = [ "windows_x86_64_msvc 0.48.0", ] +[[package]] +name = "windows-targets" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +dependencies = [ + "windows_aarch64_gnullvm 0.52.0", + "windows_aarch64_msvc 0.52.0", + "windows_i686_gnu 0.52.0", + "windows_i686_msvc 0.52.0", + "windows_x86_64_gnu 0.52.0", + "windows_x86_64_gnullvm 0.52.0", + "windows_x86_64_msvc 0.52.0", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" @@ -3926,6 +3883,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" + [[package]] name = "windows_aarch64_msvc" version = "0.42.2" @@ -3938,6 +3901,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" + [[package]] name = "windows_i686_gnu" version = "0.42.2" @@ -3950,6 +3919,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +[[package]] +name = "windows_i686_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" + [[package]] name = "windows_i686_msvc" version = "0.42.2" @@ -3962,6 +3937,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +[[package]] +name = "windows_i686_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" + [[package]] name = "windows_x86_64_gnu" version = "0.42.2" @@ -3974,6 +3955,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" + [[package]] name = "windows_x86_64_gnullvm" version = "0.42.2" @@ -3986,6 +3973,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" + [[package]] name = "windows_x86_64_msvc" version = "0.42.2" @@ -3999,47 +3992,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" [[package]] -name = "winx" -version = "0.31.0" +name = "windows_x86_64_msvc" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d5973cb8cd94a77d03ad7e23bbe14889cb29805da1cec0e4aff75e21aebded" -dependencies = [ - "bitflags 1.3.2", - "io-lifetimes 0.5.3", - "winapi", -] +checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" [[package]] name = "winx" -version = "0.35.1" +version = "0.36.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c52a121f0fbf9320d5f2a9a5d82f6cb7557eda5e8b47fc3e7f359ec866ae960" +checksum = "f9643b83820c0cd246ecabe5fa454dd04ba4fa67996369466d0747472d337346" dependencies = [ - "bitflags 1.3.2", - "io-lifetimes 1.0.11", - "windows-sys 0.48.0", -] - -[[package]] -name = "wit-parser" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca2581061573ef6d1754983d7a9b3ed5871ef859d52708ea9a0f5af32919172" -dependencies = [ - "anyhow", - "id-arena", - "indexmap 1.9.3", - "log", - "pulldown-cmark", - "unicode-xid", - "url", + "bitflags 2.4.1", + "windows-sys 0.52.0", ] [[package]] name = "wit-parser" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15df6b7b28ce94b8be39d8df5cb21a08a4f3b9f33b631aedb4aa5776f785ead3" +checksum = "df4913a2219096373fd6512adead1fb77ecdaa59d7fc517972a7d30b12f625be" dependencies = [ "anyhow", "id-arena", @@ -4066,16 +4038,16 @@ dependencies = [ [[package]] name = "wizer" -version = "3.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdbf85c6302a99e5c9d15655abd804c0e204a278fdb62c1e53a37ba4f3550b8b" +checksum = "31f1f0143257faa028962616998d9bcf456f2b92b41d923fb630d0c62250f1fc" dependencies = [ "anyhow", - "cap-std 0.24.4", + "cap-std", "log", "rayon", "wasi-cap-std-sync", - "wasm-encoder 0.28.0", + "wasm-encoder 0.30.0", "wasmparser 0.106.0", "wasmtime", "wasmtime-wasi", diff --git a/Cargo.toml b/Cargo.toml index ada3cd64..7afd8789 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,18 +10,19 @@ members = [ resolver = "2" [workspace.package] -version = "1.3.0" +version = "1.4.0" authors = ["The Javy Project Developers"] edition = "2021" license = "Apache-2.0 WITH LLVM-exception" [workspace.dependencies] -wasmtime = "9.0" -wasmtime-wasi = "9.0" -wasi-common = "9.0" +wizer = "4.0.0" +wasmtime = "16" +wasmtime-wasi = "16" +wasi-common = "16" anyhow = "1.0" -once_cell = "1.16" -javy = { path = "crates/javy", version = "2.1.1-alpha.1" } +once_cell = "1.19" +javy = { path = "crates/javy", version = "2.2.1-alpha.1" } [profile.release] lto = false diff --git a/README.md b/README.md index 15b88f09..37034a99 100644 --- a/README.md +++ b/README.md @@ -144,6 +144,12 @@ $ echo '{ "n": 2, "bar": "baz" }' | wasmtime index.wasm {"foo":3,"newBar":"baz!"}% ``` +If you have a lot of JavaScript and you want to reduce compile times, try using the `--no-source-compression` flag. It will skip compressing the JavaScript source code when generating the Wasm module but will result in the Wasm module being larger. + +```bash +javy compile index.js -o destination/index.wasm --no-source-compression +``` + ### Exporting functions To export exported JavaScript functions, you can pass a WIT file and WIT world when running `javy compile`. Only ESM exports are supported (that is, Node.js/CommonJS exports are _not_ supported). For each exported JavaScript function, Javy will add an additional function export to the WebAssembly module. Exported functions with arguments and generators are not supported. Return values will also be dropped and not returned. The Wasm module generated is a core Wasm module, **not** a Wasm component. diff --git a/crates/apis/CHANGELOG.md b/crates/apis/CHANGELOG.md index a22f2d52..8cb293e6 100644 --- a/crates/apis/CHANGELOG.md +++ b/crates/apis/CHANGELOG.md @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [2.2.0] - 2024-01-31 + +### Changed + +- Updated to 2023-12-09 release of QuickJS. + ## [2.1.0] - 2023-09-11 ### Fixed diff --git a/crates/apis/Cargo.toml b/crates/apis/Cargo.toml index d9040b63..c081ffa0 100644 --- a/crates/apis/Cargo.toml +++ b/crates/apis/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "javy-apis" -version = "2.1.1-alpha.1" +version = "2.2.1-alpha.1" authors.workspace = true edition.workspace = true license.workspace = true diff --git a/crates/cli/Cargo.toml b/crates/cli/Cargo.toml index 2f14a546..a93c2963 100644 --- a/crates/cli/Cargo.toml +++ b/crates/cli/Cargo.toml @@ -15,33 +15,33 @@ dump_wat = ["dep:wasmprinter"] experimental_event_loop = [] [dependencies] -wizer = "3.0" +wizer = { workspace = true } structopt = "0.3" anyhow = { workspace = true } -binaryen = { git = "https://github.com/pepyakin/binaryen-rs", rev = "00c98174843f957681ba0bc5cdcc9d15f5d0cb23" } brotli = "3.4.0" -wasmprinter = { version = "0.2.75", optional = true } +wasmprinter = { version = "0.2.78", optional = true } wasmtime = { workspace = true } wasmtime-wasi = { workspace = true } wasi-common = { workspace = true } walrus = "0.20.3" -swc_core = { version = "0.86.39", features = ["common_sourcemap", "ecma_ast", "ecma_parser"] } -wit-parser = "0.13.0" +swc_core = { version = "0.89.7", features = ["common_sourcemap", "ecma_ast", "ecma_parser"] } +wit-parser = "0.13.1" convert_case = "0.6.0" +wasm-opt = "0.116.0" +tempfile = "3.9.0" [dev-dependencies] serde_json = "1.0" -uuid = { version = "1.6", features = ["v4"] } +uuid = { version = "1.7", features = ["v4"] } lazy_static = "1.4" serde = { version = "1.0", default-features = false, features = ["derive"] } criterion = "0.5" num-format = "0.4.4" -tempfile = "3.8.0" -wasmparser = "0.118.1" +wasmparser = "0.121.0" [build-dependencies] -anyhow = "1.0.75" -wizer = "3.0" +anyhow = "1.0.79" +wizer = { workspace = true } [[bench]] name = "benchmark" diff --git a/crates/cli/benches/functions/complex_discount/package-lock.json b/crates/cli/benches/functions/complex_discount/package-lock.json index 20f60f29..725d4500 100644 --- a/crates/cli/benches/functions/complex_discount/package-lock.json +++ b/crates/cli/benches/functions/complex_discount/package-lock.json @@ -528,9 +528,9 @@ "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, "node_modules/vite": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/vite/-/vite-3.2.7.tgz", - "integrity": "sha512-29pdXjk49xAP0QBr0xXqu2s5jiQIXNvE/xwd0vUizYT2Hzqe4BksNNoWllFVXJf4eLZ+UlVQmXfB4lWrc+t18g==", + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/vite/-/vite-3.2.8.tgz", + "integrity": "sha512-EtQU16PLIJpAZol2cTLttNP1mX6L0SyI0pgQB1VOoWeQnMSvtiwovV3D6NcjN8CZQWWyESD2v5NGnpz5RvgOZA==", "dependencies": { "esbuild": "^0.15.9", "postcss": "^8.4.18", diff --git a/crates/cli/src/commands.rs b/crates/cli/src/commands.rs index 445953ad..ad335f09 100644 --- a/crates/cli/src/commands.rs +++ b/crates/cli/src/commands.rs @@ -34,6 +34,10 @@ pub struct CompileCommandOpts { #[structopt(short = "n")] /// Optional WIT world name for WIT file. Must be specified if WIT is file path is specified. pub wit_world: Option, + + #[structopt(long = "no-source-compression")] + /// Disable source code compression, which reduces compile time at the expense of generating larger WebAssembly files. + pub no_source_compression: bool, } #[derive(Debug, StructOpt)] diff --git a/crates/cli/src/main.rs b/crates/cli/src/main.rs index de3a2cb8..a98dd9a5 100644 --- a/crates/cli/src/main.rs +++ b/crates/cli/src/main.rs @@ -29,9 +29,9 @@ fn main() -> Result<()> { (Some(wit), Some(world)) => exports::process_exports(&js, wit, world), }?; let wasm = if opts.dynamic { - dynamic_generator::generate(&js, exports)? + dynamic_generator::generate(&js, exports, opts.no_source_compression)? } else { - static_generator::generate(&js, exports)? + static_generator::generate(&js, exports, opts.no_source_compression)? }; fs::write(&opts.output, wasm)?; Ok(()) diff --git a/crates/cli/src/wasm_generator/dynamic.rs b/crates/cli/src/wasm_generator/dynamic.rs index 3934852c..a89455a1 100644 --- a/crates/cli/src/wasm_generator/dynamic.rs +++ b/crates/cli/src/wasm_generator/dynamic.rs @@ -64,7 +64,11 @@ use walrus::{DataKind, FunctionBuilder, Module, ValType}; // (data (;0;) "\02\05\18function.mjs\06foo\0econsole\06log\06bar\0f\bc\03\00\01\00\00\be\03\00\00\0e\00\06\01\a0\01\00\00\00\03\01\01\1a\00\be\03\00\01\08\ea\05\c0\00\e1)8\e0\00\00\00B\e1\00\00\00\04\e2\00\00\00$\01\00)\bc\03\01\04\01\00\07\0a\0eC\06\01\be\03\00\00\00\03\00\00\13\008\e0\00\00\00B\e1\00\00\00\04\df\00\00\00$\01\00)\bc\03\01\02\03]") // (data (;1;) "foo") // ) -pub fn generate(js: &JS, exported_functions: Vec) -> Result> { +pub fn generate( + js: &JS, + exported_functions: Vec, + no_source_compression: bool, +) -> Result> { let mut module = Module::with_config(transform::module_config()); const IMPORT_NAMESPACE: &str = "javy_quickjs_provider_v1"; @@ -86,7 +90,11 @@ pub fn generate(js: &JS, exported_functions: Vec) -> Result> { let (memory, _) = module.add_import_memory(IMPORT_NAMESPACE, "memory", false, 0, None); transform::add_producers_section(&mut module.producers); - module.customs.add(SourceCodeSection::new(js)?); + if no_source_compression { + module.customs.add(SourceCodeSection::uncompressed(js)?); + } else { + module.customs.add(SourceCodeSection::compressed(js)?); + } let bytecode = js.compile()?; let bytecode_len: i32 = bytecode.len().try_into()?; diff --git a/crates/cli/src/wasm_generator/static.rs b/crates/cli/src/wasm_generator/static.rs index 44d53ce4..8538d4e3 100644 --- a/crates/cli/src/wasm_generator/static.rs +++ b/crates/cli/src/wasm_generator/static.rs @@ -1,9 +1,9 @@ -use std::{collections::HashMap, rc::Rc, sync::OnceLock}; +use std::{collections::HashMap, fs, rc::Rc, sync::OnceLock}; use anyhow::{anyhow, Result}; -use binaryen::{CodegenConfig, Module}; use walrus::{DataKind, ExportItem, FunctionBuilder, FunctionId, MemoryId, ValType}; use wasi_common::{pipe::ReadPipe, WasiCtx}; +use wasm_opt::{OptimizationOptions, ShrinkLevel}; use wasmtime::Linker; use wasmtime_wasi::WasiCtxBuilder; use wizer::Wizer; @@ -14,7 +14,7 @@ use super::transform::{self, SourceCodeSection}; static mut WASI: OnceLock = OnceLock::new(); -pub fn generate(js: &JS, exports: Vec) -> Result> { +pub fn generate(js: &JS, exports: Vec, no_source_compression: bool) -> Result> { let wasm = include_bytes!(concat!(env!("OUT_DIR"), "/engine.wasm")); let wasi = WasiCtxBuilder::new() @@ -82,22 +82,14 @@ pub fn generate(js: &JS, exports: Vec) -> Result> { let wasm = module.emit_wasm(); - let codegen_cfg = CodegenConfig { - optimization_level: 3, // Aggressively optimize for speed. - shrink_level: 0, // Don't optimize for size at the expense of performance. - debug_info: false, - }; - - let mut module = Module::read(&wasm) - .map_err(|_| anyhow!("Unable to read wasm binary for wasm-opt optimizations"))?; - module.optimize(&codegen_cfg); - module - .run_optimization_passes(vec!["strip"], &codegen_cfg) - .map_err(|_| anyhow!("Running wasm-opt optimization passes failed"))?; - let wasm = module.write(); + let wasm = optimize_wasm(&wasm)?; let mut module = transform::module_config().parse(&wasm)?; - module.customs.add(SourceCodeSection::new(js)?); + if no_source_compression { + module.customs.add(SourceCodeSection::uncompressed(js)?); + } else { + module.customs.add(SourceCodeSection::compressed(js)?); + } transform::add_producers_section(&mut module.producers); Ok(module.emit_wasm()) } @@ -136,3 +128,17 @@ fn export_exported_js_functions( module.exports.add(&export.wit, export_fn); } } + +fn optimize_wasm(wasm: &[u8]) -> Result> { + let tempdir = tempfile::tempdir()?; + let tempfile_path = tempdir.path().join("temp.wasm"); + + fs::write(&tempfile_path, wasm)?; + + OptimizationOptions::new_opt_level_3() // Aggressively optimize for speed. + .shrink_level(ShrinkLevel::Level0) // Don't optimize for size at the expense of performance. + .debug_info(false) + .run(&tempfile_path, &tempfile_path)?; + + Ok(fs::read(&tempfile_path)?) +} diff --git a/crates/cli/src/wasm_generator/transform.rs b/crates/cli/src/wasm_generator/transform.rs index 31692a09..68023dcb 100644 --- a/crates/cli/src/wasm_generator/transform.rs +++ b/crates/cli/src/wasm_generator/transform.rs @@ -7,13 +7,19 @@ use crate::js::JS; #[derive(Debug)] pub struct SourceCodeSection { - compressed_source_code: Vec, + source_code: Vec, } impl SourceCodeSection { - pub fn new(js: &JS) -> Result { + pub fn compressed(js: &JS) -> Result { Ok(SourceCodeSection { - compressed_source_code: js.compress()?, + source_code: js.compress()?, + }) + } + + pub fn uncompressed(js: &JS) -> Result { + Ok(SourceCodeSection { + source_code: js.as_bytes().to_vec(), }) } } @@ -24,7 +30,7 @@ impl CustomSection for SourceCodeSection { } fn data(&self, _ids_to_indices: &IdsToIndices) -> Cow<[u8]> { - (&self.compressed_source_code).into() + (&self.source_code).into() } } diff --git a/crates/cli/tests/runner/mod.rs b/crates/cli/tests/runner/mod.rs index c45ee8ce..fd312aeb 100644 --- a/crates/cli/tests/runner/mod.rs +++ b/crates/cli/tests/runner/mod.rs @@ -149,7 +149,8 @@ impl Runner { self.linker.engine(), StoreContext::new(input, self.log_capacity), ); - store.add_fuel(u64::MAX)?; + const INITIAL_FUEL: u64 = u64::MAX; + store.set_fuel(INITIAL_FUEL)?; let module = Module::from_binary(self.linker.engine(), &self.wasm)?; @@ -157,7 +158,7 @@ impl Runner { let run = instance.get_typed_func::<(), ()>(&mut store, func)?; let res = run.call(&mut store, ()); - let fuel_consumed = store.fuel_consumed().unwrap(); + let fuel_consumed = INITIAL_FUEL - store.get_fuel()?; let store_context = store.into_data(); drop(store_context.wasi); let logs = store_context diff --git a/crates/javy/CHANGELOG.md b/crates/javy/CHANGELOG.md index f80b0def..68f15a2d 100644 --- a/crates/javy/CHANGELOG.md +++ b/crates/javy/CHANGELOG.md @@ -7,10 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [2.2.0] - 2024-01-31 + ### Fixed - Missing documentation for `export_alloc_fns` feature and `alloc` functions. +### Changed + +- Updated to 2023-12-09 release of QuickJS. + ## [2.1.0] - 2023-09-11 ### Added diff --git a/crates/javy/Cargo.toml b/crates/javy/Cargo.toml index 73f0eb65..524f91b1 100644 --- a/crates/javy/Cargo.toml +++ b/crates/javy/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "javy" -version = "2.1.1-alpha.1" +version = "2.2.1-alpha.1" authors.workspace = true edition.workspace = true license.workspace = true @@ -11,7 +11,7 @@ categories = ["wasm"] [dependencies] anyhow = { workspace = true } -quickjs-wasm-rs = { version = "3.0.0-alpha.1", path = "../quickjs-wasm-rs" } +quickjs-wasm-rs = { version = "3.0.1-alpha.1", path = "../quickjs-wasm-rs" } serde_json = { version = "1.0", optional = true } serde-transcode = { version = "1.1", optional = true } rmp-serde = { version = "^1.1", optional = true } diff --git a/crates/quickjs-wasm-rs/CHANGELOG.md b/crates/quickjs-wasm-rs/CHANGELOG.md index 62733a71..d88f7a31 100644 --- a/crates/quickjs-wasm-rs/CHANGELOG.md +++ b/crates/quickjs-wasm-rs/CHANGELOG.md @@ -7,9 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +## [3.0.0] - 2024-01-31 + ### Changed + - Make `JSContextRef::wrap_rust_value` private. Similar to `context::get_rust_value` this function is simply an internal detail. +- Updated to 2023-12-09 release of QuickJS. ## [2.0.1] - 2023-09-11 diff --git a/crates/quickjs-wasm-rs/Cargo.toml b/crates/quickjs-wasm-rs/Cargo.toml index b10093d2..e714078d 100644 --- a/crates/quickjs-wasm-rs/Cargo.toml +++ b/crates/quickjs-wasm-rs/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "quickjs-wasm-rs" -version = "3.0.0-alpha.1" +version = "3.0.1-alpha.1" authors.workspace = true edition.workspace = true license.workspace = true @@ -11,10 +11,10 @@ categories = ["api-bindings"] [dependencies] anyhow = { workspace = true } -quickjs-wasm-sys = { version = "1.1.2-alpha.1", path = "../quickjs-wasm-sys" } +quickjs-wasm-sys = { version = "1.2.1-alpha.1", path = "../quickjs-wasm-sys" } serde = { version = "1.0", features = ["derive"] } -once_cell = "1.16" +once_cell = "1.19" [dev-dependencies] quickcheck = "1" -serde_bytes = "0.11.12" +serde_bytes = "0.11.14" diff --git a/crates/quickjs-wasm-sys/CHANGELOG.md b/crates/quickjs-wasm-sys/CHANGELOG.md index 7a236e2f..fb0a3d58 100644 --- a/crates/quickjs-wasm-sys/CHANGELOG.md +++ b/crates/quickjs-wasm-sys/CHANGELOG.md @@ -5,7 +5,11 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## Unreleased changes + +## [1.2.0] - 2024-01-31 + +- Changed: Updated to 2023-12-09 release of QuickJS. ## [1.1.1] - 2023-09-11 diff --git a/crates/quickjs-wasm-sys/Cargo.toml b/crates/quickjs-wasm-sys/Cargo.toml index 5bcfb4d1..ce7e679d 100644 --- a/crates/quickjs-wasm-sys/Cargo.toml +++ b/crates/quickjs-wasm-sys/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "quickjs-wasm-sys" -version = "1.1.2-alpha.1" +version = "1.2.1-alpha.1" authors.workspace = true edition.workspace = true license.workspace = true @@ -11,11 +11,11 @@ categories = ["external-ffi-bindings"] [build-dependencies] cc = "1.0" -bindgen = "0.69.1" +bindgen = "0.69.2" walkdir = "2" anyhow.workspace = true -tokio = { version = "1.34", default-features = false, features = ["rt", "macros"] } +tokio = { version = "1.35", default-features = false, features = ["rt", "macros"] } http-body-util = "0.1.0" -hyper = "1.0" +hyper = "1.1" hyper-tls = "0.6.0" -hyper-util = { version = "0.1.0", features = ["http1"] } +hyper-util = { version = "0.1.3", features = ["http1"] } diff --git a/crates/quickjs-wasm-sys/patches/quickjsc-patch.diff b/crates/quickjs-wasm-sys/patches/quickjsc-patch.diff new file mode 100644 index 00000000..4d83107c --- /dev/null +++ b/crates/quickjs-wasm-sys/patches/quickjsc-patch.diff @@ -0,0 +1,93 @@ +51,56c51,55 +< // #if defined(EMSCRIPTEN) +< // #define DIRECT_DISPATCH 0 +< // #else +< // #define DIRECT_DISPATCH 1 +< // #endif +< #define DIRECT_DISPATCH 0 +--- +> #if defined(EMSCRIPTEN) +> #define DIRECT_DISPATCH 0 +> #else +> #define DIRECT_DISPATCH 1 +> #endif +64,67c63,66 +< // #if !defined(_WIN32) +< // /* define it if printf uses the RNDN rounding mode instead of RNDNA */ +< // #define CONFIG_PRINTF_RNDN +< // #endif +--- +> #if !defined(_WIN32) +> /* define it if printf uses the RNDN rounding mode instead of RNDNA */ +> #define CONFIG_PRINTF_RNDN +> #endif +71,73c70,72 +< // #if !defined(EMSCRIPTEN) +< // #define CONFIG_ATOMICS +< // #endif +--- +> #if !defined(EMSCRIPTEN) +> #define CONFIG_ATOMICS +> #endif +75c74 +< // #if !defined(EMSCRIPTEN) +--- +> #if !defined(EMSCRIPTEN) +77,78c76,77 +< // #define CONFIG_STACK_CHECK +< // #endif +--- +> #define CONFIG_STACK_CHECK +> #endif +1668,1679c1667,1671 +< // #if defined(__APPLE__) +< // return malloc_size(ptr); +< // #elif defined(_WIN32) +< // return _msize(ptr); +< // #elif defined(EMSCRIPTEN) +< // return 0; +< // #elif defined(__linux__) +< // return malloc_usable_size(ptr); +< // #else +< // /* change this to `return 0;` if compilation fails */ +< // return malloc_usable_size(ptr); +< // #endif +--- +> #if defined(__APPLE__) +> return malloc_size(ptr); +> #elif defined(_WIN32) +> return _msize(ptr); +> #elif defined(EMSCRIPTEN) +1680a1673,1678 +> #elif defined(__linux__) +> return malloc_usable_size(ptr); +> #else +> /* change this to `return 0;` if compilation fails */ +> return malloc_usable_size(ptr); +> #endif +1743,1754c1741,1745 +< // #if defined(__APPLE__) +< // malloc_size, +< // #elif defined(_WIN32) +< // (size_t (*)(const void *))_msize, +< // #elif defined(EMSCRIPTEN) +< // NULL, +< // #elif defined(__linux__) +< // (size_t (*)(const void *))malloc_usable_size, +< // #else +< // /* change this to `NULL,` if compilation fails */ +< // malloc_usable_size, +< // #endif +--- +> #if defined(__APPLE__) +> malloc_size, +> #elif defined(_WIN32) +> (size_t (*)(const void *))_msize, +> #elif defined(EMSCRIPTEN) +1755a1747,1752 +> #elif defined(__linux__) +> (size_t (*)(const void *))malloc_usable_size, +> #else +> /* change this to `NULL,` if compilation fails */ +> malloc_usable_size, +> #endif diff --git a/crates/quickjs-wasm-sys/quickjs/Changelog b/crates/quickjs-wasm-sys/quickjs/Changelog index c09af91c..0ced9956 100644 --- a/crates/quickjs-wasm-sys/quickjs/Changelog +++ b/crates/quickjs-wasm-sys/quickjs/Changelog @@ -1,3 +1,11 @@ +2023-12-09: + +- added Object.hasOwn, {String|Array|TypedArray}.prototype.at, + {Array|TypedArray}.prototype.findLast{Index} +- BigInt support is enabled even if CONFIG_BIGNUM disabled +- updated to Unicode 15.0.0 +- misc bug fixes + 2021-03-27: - faster Array.prototype.push and Array.prototype.unshift diff --git a/crates/quickjs-wasm-sys/quickjs/Makefile b/crates/quickjs-wasm-sys/quickjs/Makefile index 49b1f6fa..39bd3ad6 100644 --- a/crates/quickjs-wasm-sys/quickjs/Makefile +++ b/crates/quickjs-wasm-sys/quickjs/Makefile @@ -47,7 +47,7 @@ prefix=/usr/local #CONFIG_PROFILE=y # use address sanitizer #CONFIG_ASAN=y -# include the code for BigInt/BigFloat/BigDecimal and math mode +# include the code for BigFloat/BigDecimal, math mode and faster large integers CONFIG_BIGNUM=y OBJDIR=.obj @@ -166,11 +166,10 @@ endif all: $(OBJDIR) $(OBJDIR)/quickjs.check.o $(OBJDIR)/qjs.check.o $(PROGS) -QJS_LIB_OBJS=$(OBJDIR)/quickjs.o $(OBJDIR)/libregexp.o $(OBJDIR)/libunicode.o $(OBJDIR)/cutils.o $(OBJDIR)/quickjs-libc.o +QJS_LIB_OBJS=$(OBJDIR)/quickjs.o $(OBJDIR)/libregexp.o $(OBJDIR)/libunicode.o $(OBJDIR)/cutils.o $(OBJDIR)/quickjs-libc.o $(OBJDIR)/libbf.o QJS_OBJS=$(OBJDIR)/qjs.o $(OBJDIR)/repl.o $(QJS_LIB_OBJS) ifdef CONFIG_BIGNUM -QJS_LIB_OBJS+=$(OBJDIR)/libbf.o QJS_OBJS+=$(OBJDIR)/qjscalc.o endif @@ -317,10 +316,7 @@ endif HELLO_SRCS=examples/hello.js HELLO_OPTS=-fno-string-normalize -fno-map -fno-promise -fno-typedarray \ -fno-typedarray -fno-regexp -fno-json -fno-eval -fno-proxy \ - -fno-date -fno-module-loader -ifdef CONFIG_BIGNUM -HELLO_OPTS+=-fno-bigint -endif + -fno-date -fno-module-loader -fno-bigint hello.c: $(QJSC) $(HELLO_SRCS) $(QJSC) -e $(HELLO_OPTS) -o $@ $(HELLO_SRCS) diff --git a/crates/quickjs-wasm-sys/quickjs/VERSION b/crates/quickjs-wasm-sys/quickjs/VERSION index 22ffec18..08d12220 100644 --- a/crates/quickjs-wasm-sys/quickjs/VERSION +++ b/crates/quickjs-wasm-sys/quickjs/VERSION @@ -1 +1 @@ -2021-03-27 +2023-12-09 diff --git a/crates/quickjs-wasm-sys/quickjs/doc/jsbignum.html b/crates/quickjs-wasm-sys/quickjs/doc/jsbignum.html deleted file mode 100644 index ab31612b..00000000 --- a/crates/quickjs-wasm-sys/quickjs/doc/jsbignum.html +++ /dev/null @@ -1,734 +0,0 @@ - - - - -Javascript Bignum Extensions - - - - - - - - - - - - - - - -

Javascript Bignum Extensions

- - -

Table of Contents

- - - - - -

1 Introduction

- -

The Bignum extensions add the following features to the Javascript -language while being 100% backward compatible: -

-
    -
  • Operator overloading with a dispatch logic inspired from the proposal available at https://github.com/tc39/proposal-operator-overloading/. - -
  • Arbitrarily large floating point numbers (BigFloat) in base 2 using the IEEE 754 semantics. - -
  • Arbitrarily large floating point numbers (BigDecimal) in base 10 based on the proposal available at -https://github.com/littledan/proposal-bigdecimal. - -
  • math mode: arbitrarily large integers and floating point numbers are available by default. The integer division and power can be overloaded for example to return a fraction. The modulo operator (%) is defined as the Euclidian -remainder. ^ is an alias to the power operator -(**). ^^ is used as the exclusive or operator. - -
- -

The extensions are independent from each other except the math -mode which relies on BigFloat and operator overloading. -

- -

2 Operator overloading

- -

Operator overloading is inspired from the proposal available at -https://github.com/tc39/proposal-operator-overloading/. It -implements the same dispatch logic but finds the operator sets by -looking at the Symbol.operatorSet property in the objects. The -changes were done in order to simplify the implementation. -

-

More precisely, the following modifications were made: -

-
    -
  • with operators from is not supported. Operator overloading is always enabled. - -
  • The dispatch is not based on a static [[OperatorSet]] field in all instances. Instead, a dynamic lookup of the Symbol.operatorSet property is done. This property is typically added in the prototype of each object. - -
  • Operators.create(...dictionaries) is used to create a new OperatorSet object. The Operators function is supported as an helper to be closer to the TC39 proposal. - -
  • [] cannot be overloaded. - -
  • In math mode, the BigInt division and power operators can be overloaded with Operators.updateBigIntOperators(dictionary). - -
- - -

3 BigInt extensions

- -

A few properties are added to the BigInt object: -

-
-
tdiv(a, b)
-

Return trunc(a/b). b = 0 raises a RangeError -exception. -

-
-
fdiv(a, b)
-

Return \lfloor a/b \rfloor. b = 0 raises a RangeError -exception. -

-
-
cdiv(a, b)
-

Return \lceil a/b \rceil. b = 0 raises a RangeError -exception. -

-
-
ediv(a, b)
-

Return sgn(b) \lfloor a/{|b|} \rfloor (Euclidian -division). b = 0 raises a RangeError exception. -

-
-
tdivrem(a, b)
-
fdivrem(a, b)
-
cdivrem(a, b)
-
edivrem(a, b)
-

Return an array of two elements. The first element is the quotient, -the second is the remainder. The same rounding is done as the -corresponding division operation. -

-
-
sqrt(a)
-

Return \lfloor \sqrt(a) \rfloor. A RangeError exception is -raised if a < 0. -

-
-
sqrtrem(a)
-

Return an array of two elements. The first element is \lfloor -\sqrt{a} \rfloor. The second element is a-\lfloor \sqrt{a} -\rfloor^2. A RangeError exception is raised if a < 0. -

-
-
floorLog2(a)
-

Return -1 if a \leq 0 otherwise return \lfloor \log2(a) \rfloor. -

-
-
ctz(a)
-

Return the number of trailing zeros in the two’s complement binary representation of a. Return -1 if a=0. -

-
-
- - -

4 BigFloat

- - -

4.1 Introduction

- -

This extension adds the BigFloat primitive type. The -BigFloat type represents floating point numbers in base 2 -with the IEEE 754 semantics. A floating -point number is represented as a sign, mantissa and exponent. The -special values NaN, +/-Infinity, +0 and -0 -are supported. The mantissa and exponent can have any bit length with -an implementation specific minimum and maximum. -

- -

4.2 Floating point rounding

- -

Each floating point operation operates with infinite precision and -then rounds the result according to the specified floating point -environment (BigFloatEnv object). The status flags of the -environment are also set according to the result of the operation. -

-

If no floating point environment is provided, the global floating -point environment is used. -

-

The rounding mode of the global floating point environment is always -RNDN (“round to nearest with ties to even”)1. The status flags of the global environment cannot be -read2. The precision of the global environment is -BigFloatEnv.prec. The number of exponent bits of the global -environment is BigFloatEnv.expBits. The global environment -subnormal flag is set to true. -

-

For example, prec = 53 and expBits = 11 exactly give -the same precision as the IEEE 754 64 bit floating point format. The -default precision is prec = 113 and expBits = 15 (IEEE -754 128 bit floating point format). -

-

The global floating point environment can only be modified temporarily -when calling a function (see BigFloatEnv.setPrec). Hence a -function can change the global floating point environment for its -callees but not for its caller. -

- -

4.3 Operators

- -

The builtin operators are extended so that a BigFloat is returned if -at least one operand is a BigFloat. The computations are always done -with infinite precision and rounded according to the global floating -point environment. -

-

typeof applied on a BigFloat returns bigfloat. -

-

BigFloat can be compared with all the other numeric types and the -result follows the expected mathematical relations. -

-

However, since BigFloat and Number are different types they are never -equal when using the strict comparison operators (e.g. 0.0 === -0.0l is false). -

- -

4.4 BigFloat literals

- -

BigFloat literals are floating point numbers with a trailing l -suffix. BigFloat literals have an infinite precision. They are rounded -according to the global floating point environment when they are -evaluated.3 -

- -

4.5 Builtin Object changes

- - -

4.5.1 BigFloat function

- -

The BigFloat function cannot be invoked as a constructor. When -invoked as a function: the parameter is converted to a primitive -type. If the result is a numeric type, it is converted to BigFloat -without rounding. If the result is a string, it is converted to -BigFloat using the precision of the global floating point environment. -

-

BigFloat properties: -

-
-
LN2
-
PI
-

Getter. Return the value of the corresponding mathematical constant -rounded to nearest, ties to even with the current global -precision. The constant values are cached for small precisions. -

-
-
MIN_VALUE
-
MAX_VALUE
-
EPSILON
-

Getter. Return the minimum, maximum and epsilon BigFloat values -(same definition as the corresponding Number constants). -

-
-
fpRound(a[, e])
-

Round the floating point number a according to the floating -point environment e or the global environment if e is -undefined. -

-
-
parseFloat(a[, radix[, e]])
-

Parse the string a as a floating point number in radix -radix. The radix is 0 (default) or from 2 to 36. The radix 0 -means radix 10 unless there is a hexadecimal or binary prefix. The -result is rounded according to the floating point environment e -or the global environment if e is undefined. -

-
-
isFinite(a)
-

Return true if a is a finite bigfloat. -

-
-
isNaN(a)
-

Return true if a is a NaN bigfloat. -

-
-
add(a, b[, e])
-
sub(a, b[, e])
-
mul(a, b[, e])
-
div(a, b[, e])
-

Perform the specified floating point operation and round the floating -point number a according to the floating point environment -e or the global environment if e is undefined. If -e is specified, the floating point status flags are updated. -

-
-
floor(x)
-
ceil(x)
-
round(x)
-
trunc(x)
-

Round to an integer. No additional rounding is performed. -

-
-
abs(x)
-

Return the absolute value of x. No additional rounding is performed. -

-
-
fmod(x, y[, e])
-
remainder(x, y[, e])
-

Floating point remainder. The quotient is truncated to zero (fmod) or -to the nearest integer with ties to even (remainder). e is an -optional floating point environment. -

-
-
sqrt(x[, e])
-

Square root. Return a rounded floating point number. e is an -optional floating point environment. -

-
-
sin(x[, e])
-
cos(x[, e])
-
tan(x[, e])
-
asin(x[, e])
-
acos(x[, e])
-
atan(x[, e])
-
atan2(x, y[, e])
-
exp(x[, e])
-
log(x[, e])
-
pow(x, y[, e])
-

Transcendental operations. Return a rounded floating point -number. e is an optional floating point environment. -

-
-
- - -

4.5.2 BigFloat.prototype

- -

The following properties are modified: -

-
-
valueOf()
-

Return the bigfloat primitive value corresponding to this. -

-
-
toString(radix)
-
-

For floating point numbers: -

-
    -
  • If the radix is a power of two, the conversion is done with infinite -precision. -
  • Otherwise, the number is rounded to nearest with ties to even using -the global precision. It is then converted to string using the minimum -number of digits so that its conversion back to a floating point using -the global precision and round to nearest gives the same number. - -
- -

The exponent letter is e for base 10, p for bases 2, 8, -16 with a binary exponent and @ for the other bases. -

-
-
toPrecision(p, rnd_mode = BigFloatEnv.RNDNA, radix = 10)
-
toFixed(p, rnd_mode = BigFloatEnv.RNDNA, radix = 10)
-
toExponential(p, rnd_mode = BigFloatEnv.RNDNA, radix = 10)
-

Same semantics as the corresponding Number functions with -BigFloats. There is no limit on the accepted precision p. The -rounding mode and radix can be optionally specified. The radix must be -between 2 and 36. -

-
-
- - -

4.5.3 BigFloatEnv constructor

- -

The BigFloatEnv([p, [,rndMode]] constructor cannot be invoked as a -function. The floating point environment contains: -

-
    -
  • the mantissa precision in bits - -
  • the exponent size in bits assuming an IEEE 754 representation; - -
  • the subnormal flag (if true, subnormal floating point numbers can -be generated by the floating point operations). - -
  • the rounding mode - -
  • the floating point status. The status flags can only be set by the floating point operations. They can be reset with BigFloatEnv.prototype.clearStatus() or with the various status flag setters. - -
- -

new BigFloatEnv([p, [,rndMode]] creates a new floating point -environment. The status flags are reset. If no parameter is given the -precision, exponent bits and subnormal flags are copied from the -global floating point environment. Otherwise, the precision is set to -p, the number of exponent bits is set to expBitsMax and the -subnormal flags is set to false. If rndMode is -undefined, the rounding mode is set to RNDN. -

-

BigFloatEnv properties: -

-
-
prec
-

Getter. Return the precision in bits of the global floating point -environment. The initial value is 113. -

-
-
expBits
-

Getter. Return the exponent size in bits of the global floating point -environment assuming an IEEE 754 representation. The initial value is -15. -

-
-
setPrec(f, p[, e])
-

Set the precision of the global floating point environment to p -and the exponent size to e then call the function -f. Then the Float precision and exponent size are reset to -their precious value and the return value of f is returned (or -an exception is raised if f raised an exception). If e -is undefined it is set to BigFloatEnv.expBitsMax. -

-
-
precMin
-

Read-only integer. Return the minimum allowed precision. Must be at least 2. -

-
-
precMax
-

Read-only integer. Return the maximum allowed precision. Must be at least 113. -

-
-
expBitsMin
-

Read-only integer. Return the minimum allowed exponent size in -bits. Must be at least 3. -

-
-
expBitsMax
-

Read-only integer. Return the maximum allowed exponent size in -bits. Must be at least 15. -

-
-
RNDN
-

Read-only integer. Round to nearest, with ties to even rounding mode. -

-
-
RNDZ
-

Read-only integer. Round to zero rounding mode. -

-
-
RNDD
-

Read-only integer. Round to -Infinity rounding mode. -

-
-
RNDU
-

Read-only integer. Round to +Infinity rounding mode. -

-
-
RNDNA
-

Read-only integer. Round to nearest, with ties away from zero rounding mode. -

-
-
RNDA
-

Read-only integer. Round away from zero rounding mode. -

-
-
RNDF4
-

Read-only integer. Faithful rounding mode. The result is -non-deterministically rounded to -Infinity or +Infinity. This rounding -mode usually gives a faster and deterministic running time for the -floating point operations. -

-
-
- -

BigFloatEnv.prototype properties: -

-
-
prec
-

Getter and setter (Integer). Return or set the precision in bits. -

-
-
expBits
-

Getter and setter (Integer). Return or set the exponent size in bits -assuming an IEEE 754 representation. -

-
-
rndMode
-

Getter and setter (Integer). Return or set the rounding mode. -

-
-
subnormal
-

Getter and setter (Boolean). subnormal flag. It is false when -expBits = expBitsMax. -

-
-
clearStatus()
-

Clear the status flags. -

-
-
invalidOperation
-
divideByZero
-
overflow
-
underflow
-
inexact
-

Getter and setter (Boolean). Status flags. -

-
-
- - -

5 BigDecimal

- -

This extension adds the BigDecimal primitive type. The -BigDecimal type represents floating point numbers in base -10. It is inspired from the proposal available at -https://github.com/littledan/proposal-bigdecimal. -

-

The BigDecimal floating point numbers are always normalized and -finite. There is no concept of -0, Infinity or -NaN. By default, all the computations are done with infinite -precision. -

- -

5.1 Operators

- -

The following builtin operators support BigDecimal: -

-
-
+
-
-
-
*
-

Both operands must be BigDecimal. The result is computed with infinite -precision. -

-
%
-

Both operands must be BigDecimal. The result is computed with infinite -precision. A range error is throws in case of division by zero. -

-
-
/
-

Both operands must be BigDecimal. A range error is throws in case of -division by zero or if the result cannot be represented with infinite -precision (use BigDecimal.div to specify the rounding). -

-
-
**
-

Both operands must be BigDecimal. The exponent must be a positive -integer. The result is computed with infinite precision. -

-
-
===
-

When one of the operand is a BigDecimal, return true if both operands -are a BigDecimal and if they are equal. -

-
-
==
-
!=
-
<=
-
>=
-
<
-
>
-
-

Numerical comparison. When one of the operand is not a BigDecimal, it is -converted to BigDecimal by using ToString(). Hence comparisons between -Number and BigDecimal do not use the exact mathematical value of the -Number value. -

-
-
- - -

5.2 BigDecimal literals

- -

BigDecimal literals are decimal floating point numbers with a trailing -m suffix. -

- -

5.3 Builtin Object changes

- - -

5.3.1 The BigDecimal function.

- -

It returns 0m if no parameter is provided. Otherwise the first -parameter is converted to a bigdecimal by using ToString(). Hence -Number values are not converted to their exact numerical value as -BigDecimal. -

- -

5.3.2 Properties of the BigDecimal object

- -
-
add(a, b[, e])
-
sub(a, b[, e])
-
mul(a, b[, e])
-
div(a, b[, e])
-
mod(a, b[, e])
-
sqrt(a, e)
-
round(a, e)
-

Perform the specified floating point operation and round the floating -point result according to the rounding object e. If the -rounding object is not present, the operation is executed with -infinite precision. -

-

For div, a RangeError exception is thrown in case of -division by zero or if the result cannot be represented with infinite -precision if no rounding object is present. -

-

For sqrt, a range error is thrown if a is less than -zero. -

-

The rounding object must contain the following properties: -roundingMode is a string specifying the rounding mode -("floor", "ceiling", "down", "up", -"half-even", "half-up"). Either -maximumSignificantDigits or maximumFractionDigits must -be present to specify respectively the number of significant digits -(must be >= 1) or the number of digits after the decimal point (must -be >= 0). -

-
-
- - -

5.3.3 Properties of the BigDecimal.prototype object

- -
-
valueOf()
-

Return the bigdecimal primitive value corresponding to this. -

-
-
toString()
-

Convert this to a string with infinite precision in base 10. -

-
-
toPrecision(p, rnd_mode = "half-up")
-
toFixed(p, rnd_mode = "half-up")
-
toExponential(p, rnd_mode = "half-up")
-

Convert the BigDecimal this to string with the specified -precision p. There is no limit on the accepted precision -p. The rounding mode can be optionally -specified. toPrecision outputs either in decimal fixed notation -or in decimal exponential notation with a p digits of -precision. toExponential outputs in decimal exponential -notation with p digits after the decimal point. toFixed -outputs in decimal notation with p digits after the decimal -point. -

-
-
- - -

6 Math mode

- -

A new math mode is enabled with the "use math" -directive. It propagates the same way as the strict mode. It is -designed so that arbitrarily large integers and floating point numbers -are available by default. In order to minimize the number of changes -in the Javascript semantics, integers are represented either as Number -or BigInt depending on their magnitude. Floating point numbers are -always represented as BigFloat. -

-

The following changes are made to the Javascript semantics: -

-
    -
  • Floating point literals (i.e. number with a decimal point or an exponent) are BigFloat by default (i.e. a l suffix is implied). Hence typeof 1.0 === "bigfloat". - -
  • Integer literals (i.e. numbers without a decimal point or an exponent) with or without the n suffix are BigInt if their value cannot be represented as a safe integer. A safe integer is defined as a integer whose absolute value is smaller or equal to 2**53-1. Hence typeof 1 === "number ", typeof 1n === "number" but typeof 9007199254740992 === "bigint" . - -
  • All the bigint builtin operators and functions are modified so that their result is returned as a Number if it is a safe integer. Otherwise the result stays a BigInt. - -
  • The builtin operators are modified so that they return an exact result (which can be a BigInt) if their operands are safe integers. Operands between Number and BigInt are accepted provided the Number operand is a safe integer. The integer power with a negative exponent returns a BigFloat as result. The integer division returns a BigFloat as result. - -
  • The ^ operator is an alias to the power operator (**). - -
  • The power operator (both ^ and **) grammar is modified so that -2^2 is allowed and yields -4. - -
  • The logical xor operator is still available with the ^^ operator. - -
  • The modulo operator (%) returns the Euclidian remainder (always positive) instead of the truncated remainder. - -
  • The integer division operator can be overloaded with Operators.updateBigIntOperators(dictionary). - -
  • The integer power operator with a non zero negative exponent can be overloaded with Operators.updateBigIntOperators(dictionary). - -
- -
-
-

Footnotes

- -

(1)

-

The -rationale is that the rounding mode changes must always be -explicit.

-

(2)

-

The rationale is to avoid side effects for the built-in -operators.

-

(3)

-

Base 10 floating point literals cannot usually be -exactly represented as base 2 floating point number. In order to -ensure that the literal is represented accurately with the current -precision, it must be evaluated at runtime.

-

(4)

-

Could be removed in case a deterministic behavior for floating point operations is required.

-
-
- - - - - diff --git a/crates/quickjs-wasm-sys/quickjs/doc/jsbignum.pdf b/crates/quickjs-wasm-sys/quickjs/doc/jsbignum.pdf deleted file mode 100644 index 442a8c04..00000000 Binary files a/crates/quickjs-wasm-sys/quickjs/doc/jsbignum.pdf and /dev/null differ diff --git a/crates/quickjs-wasm-sys/quickjs/doc/quickjs.html b/crates/quickjs-wasm-sys/quickjs/doc/quickjs.html deleted file mode 100644 index cd07ed7e..00000000 --- a/crates/quickjs-wasm-sys/quickjs/doc/quickjs.html +++ /dev/null @@ -1,1383 +0,0 @@ - - - - -QuickJS Javascript Engine - - - - - - - - - - - - - - - -

QuickJS Javascript Engine

- - -

Table of Contents

- - - - - -

1 Introduction

- -

QuickJS is a small and embeddable Javascript engine. It supports the -ES2020 specification -1 -including modules, asynchronous generators, proxies and BigInt. -

-

It supports mathematical extensions such as big decimal float float -numbers (BigDecimal), big binary floating point numbers (BigFloat), -and operator overloading. -

- -

1.1 Main Features

- -
    -
  • Small and easily embeddable: just a few C files, no external dependency, 210 KiB of x86 code for a simple “hello world” program. - -
  • Fast interpreter with very low startup time: runs the 69000 tests of the ECMAScript Test Suite2 in about 95 seconds on a single core of a desktop PC. The complete life cycle of a runtime instance completes in less than 300 microseconds. - -
  • Almost complete ES2020 support including modules, asynchronous -generators and full Annex B support (legacy web compatibility). Many -features from the upcoming ES2021 specification -3 are also supported. - -
  • Passes nearly 100% of the ECMAScript Test Suite tests when selecting the ES2020 features. - -
  • Compile Javascript sources to executables with no external dependency. - -
  • Garbage collection using reference counting (to reduce memory usage and have deterministic behavior) with cycle removal. - -
  • Mathematical extensions: BigDecimal, BigFloat, operator overloading, bigint mode, math mode. - -
  • Command line interpreter with contextual colorization and completion implemented in Javascript. - -
  • Small built-in standard library with C library wrappers. - -
- - -

2 Usage

- - -

2.1 Installation

- -

A Makefile is provided to compile the engine on Linux or MacOS/X. A -preliminary Windows support is available thru cross compilation on a -Linux host with the MingGW tools. -

-

Edit the top of the Makefile if you wish to select specific -options then run make. -

-

You can type make install as root if you wish to install the binaries and support files to -/usr/local (this is not necessary to use QuickJS). -

- -

2.2 Quick start

- -

qjs is the command line interpreter (Read-Eval-Print Loop). You can pass -Javascript files and/or expressions as arguments to execute them: -

-
-
./qjs examples/hello.js
-
- -

qjsc is the command line compiler: -

-
-
./qjsc -o hello examples/hello.js
-./hello
-
- -

generates a hello executable with no external dependency. -

- -

2.3 Command line options

- - -

2.3.1 qjs interpreter

- -
usage: qjs [options] [file [args]]
-
-

Options are: -

-
-h
-
--help
-

List options. -

-
-
-e EXPR
-
--eval EXPR
-

Evaluate EXPR. -

-
-
-i
-
--interactive
-

Go to interactive mode (it is not the default when files are provided on the command line). -

-
-
-m
-
--module
-

Load as ES6 module (default=autodetect). A module is autodetected if -the filename extension is .mjs or if the first keyword of the -source is import. -

-
-
--script
-

Load as ES6 script (default=autodetect). -

-
-
--bignum
-

Enable the bignum extensions: BigDecimal object, BigFloat object and -the "use math" directive. -

-
-
-I file
-
--include file
-

Include an additional file. -

-
-
- -

Advanced options are: -

-
-
--std
-

Make the std and os modules available to the loaded -script even if it is not a module. -

-
-
-d
-
--dump
-

Dump the memory usage stats. -

-
-
-q
-
--quit
-

just instantiate the interpreter and quit. -

-
-
- - -

2.3.2 qjsc compiler

- -
usage: qjsc [options] [files]
-
-

Options are: -

-
-c
-

Only output bytecode in a C file. The default is to output an executable file. -

-
-e
-

Output main() and bytecode in a C file. The default is to output an -executable file. -

-
-o output
-

Set the output filename (default = out.c or a.out). -

-
-
-N cname
-

Set the C name of the generated data. -

-
-
-m
-

Compile as Javascript module (default=autodetect). -

-
-
-D module_name
-

Compile a dynamically loaded module and its dependencies. This option -is needed when your code uses the import keyword or the -os.Worker constructor because the compiler cannot statically -find the name of the dynamically loaded modules. -

-
-
-M module_name[,cname]
-

Add initialization code for an external C module. See the -c_module example. -

-
-
-x
-

Byte swapped output (only used for cross compilation). -

-
-
-flto
-

Use link time optimization. The compilation is slower but the -executable is smaller and faster. This option is automatically set -when the -fno-x options are used. -

-
-
-fno-[eval|string-normalize|regexp|json|proxy|map|typedarray|promise|bigint]
-

Disable selected language features to produce a smaller executable file. -

-
-
-fbignum
-

Enable the bignum extensions: BigDecimal object, BigFloat object and -the "use math" directive. -

-
-
- - -

2.4 qjscalc application

- -

The qjscalc application is a superset of the qjs -command line interpreter implementing a Javascript calculator with -arbitrarily large integer and floating point numbers, fractions, -complex numbers, polynomials and matrices. The source code is in -qjscalc.js. More documentation and a web version are available at -http://numcalc.com. -

- -

2.5 Built-in tests

- -

Run make test to run the few built-in tests included in the -QuickJS archive. -

- -

2.6 Test262 (ECMAScript Test Suite)

- -

A test262 runner is included in the QuickJS archive. The test262 tests -can be installed in the QuickJS source directory with: -

-
-
git clone https://github.com/tc39/test262.git test262
-cd test262
-patch -p1 < ../tests/test262.patch
-cd ..
-
- -

The patch adds the implementation specific harness functions -and optimizes the inefficient RegExp character classes and Unicode -property escapes tests (the tests themselves are not modified, only a -slow string initialization function is optimized). -

-

The tests can be run with -

-
make test2
-
- -

The configuration files test262.conf -(resp. test262o.conf for the old ES5.1 tests4)) -contain the options to run the various tests. Tests can be excluded -based on features or filename. -

-

The file test262_errors.txt contains the current list of -errors. The runner displays a message when a new error appears or when -an existing error is corrected or modified. Use the -u option -to update the current list of errors (or make test2-update). -

-

The file test262_report.txt contains the logs of all the -tests. It is useful to have a clearer analysis of a particular -error. In case of crash, the last line corresponds to the failing -test. -

-

Use the syntax ./run-test262 -c test262.conf -f filename.js to -run a single test. Use the syntax ./run-test262 -c test262.conf -N to start testing at test number N. -

-

For more information, run ./run-test262 to see the command line -options of the test262 runner. -

-

run-test262 accepts the -N option to be invoked from -test262-harness5 -thru eshost. Unless you want to compare QuickJS with other -engines under the same conditions, we do not recommend to run the -tests this way as it is much slower (typically half an hour instead of -about 100 seconds). -

- -

3 Specifications

- - -

3.1 Language support

- - -

3.1.1 ES2020 support

- -

The ES2020 specification is almost fully supported including the Annex -B (legacy web compatibility) and the Unicode related features. -

-

The following features are not supported yet: -

-
    -
  • Tail calls6 - -
- - -

3.1.2 ECMA402

- -

ECMA402 (Internationalization API) is not supported. -

- -

3.1.3 Extensions

- -
    -
  • The directive "use strip" indicates that the debug information (including the source code of the functions) should not be retained to save memory. As "use strict", the directive can be global to a script or local to a function. - -
  • The first line of a script beginning with #! is ignored. - -
- - -

3.1.4 Mathematical extensions

- -

The mathematical extensions are fully backward compatible with -standard Javascript. See jsbignum.pdf for more information. -

-
    -
  • BigDecimal support: arbitrary large floating point numbers in base 10. - -
  • BigFloat support: arbitrary large floating point numbers in base 2. - -
  • Operator overloading. - -
  • The directive "use bigint" enables the bigint mode where integers are BigInt by default. - -
  • The directive "use math" enables the math mode where the division and power operators on integers produce fractions. Floating point literals are BigFloat by default and integers are BigInt by default. - -
- - -

3.2 Modules

- -

ES6 modules are fully supported. The default name resolution is the -following: -

-
    -
  • Module names with a leading . or .. are relative -to the current module path. - -
  • Module names without a leading . or .. are system -modules, such as std or os. - -
  • Module names ending with .so are native modules using the -QuickJS C API. - -
- - -

3.3 Standard library

- -

The standard library is included by default in the command line -interpreter. It contains the two modules std and os and -a few global objects. -

- -

3.3.1 Global objects

- -
-
scriptArgs
-

Provides the command line arguments. The first argument is the script name. -

-
print(...args)
-

Print the arguments separated by spaces and a trailing newline. -

-
console.log(...args)
-

Same as print(). -

-
-
- - -

3.3.2 std module

- -

The std module provides wrappers to the libc stdlib.h -and stdio.h and a few other utilities. -

-

Available exports: -

-
-
exit(n)
-

Exit the process. -

-
-
evalScript(str, options = undefined)
-

Evaluate the string str as a script (global -eval). options is an optional object containing the following -optional properties: -

-
-
backtrace_barrier
-

Boolean (default = false). If true, error backtraces do not list the - stack frames below the evalScript. -

-
- -
-
loadScript(filename)
-

Evaluate the file filename as a script (global eval). -

-
-
loadFile(filename)
-

Load the file filename and return it as a string assuming UTF-8 -encoding. Return null in case of I/O error. -

-
-
open(filename, flags, errorObj = undefined)
-

Open a file (wrapper to the libc fopen()). Return the FILE -object or null in case of I/O error. If errorObj is not -undefined, set its errno property to the error code or to 0 if -no error occured. -

-
-
popen(command, flags, errorObj = undefined)
-

Open a process by creating a pipe (wrapper to the libc -popen()). Return the FILE -object or null in case of I/O error. If errorObj is not -undefined, set its errno property to the error code or to 0 if -no error occured. -

-
-
fdopen(fd, flags, errorObj = undefined)
-

Open a file from a file handle (wrapper to the libc -fdopen()). Return the FILE -object or null in case of I/O error. If errorObj is not -undefined, set its errno property to the error code or to 0 if -no error occured. -

-
-
tmpfile(errorObj = undefined)
-

Open a temporary file. Return the FILE -object or null in case of I/O error. If errorObj is not -undefined, set its errno property to the error code or to 0 if -no error occured. -

-
-
puts(str)
-

Equivalent to std.out.puts(str). -

-
-
printf(fmt, ...args)
-

Equivalent to std.out.printf(fmt, ...args). -

-
-
sprintf(fmt, ...args)
-

Equivalent to the libc sprintf(). -

-
-
in
-
out
-
err
-

Wrappers to the libc file stdin, stdout, stderr. -

-
-
SEEK_SET
-
SEEK_CUR
-
SEEK_END
-

Constants for seek(). -

-
-
Error
-
-

Enumeration object containing the integer value of common errors -(additional error codes may be defined): -

-
-
EINVAL
-
EIO
-
EACCES
-
EEXIST
-
ENOSPC
-
ENOSYS
-
EBUSY
-
ENOENT
-
EPERM
-
EPIPE
-
- -
-
strerror(errno)
-

Return a string that describes the error errno. -

-
-
gc()
-

Manually invoke the cycle removal algorithm. The cycle removal -algorithm is automatically started when needed, so this function is -useful in case of specific memory constraints or for testing. -

-
-
getenv(name)
-

Return the value of the environment variable name or -undefined if it is not defined. -

-
-
setenv(name, value)
-

Set the value of the environment variable name to the string -value. -

-
-
unsetenv(name)
-

Delete the environment variable name. -

-
-
getenviron()
-

Return an object containing the environment variables as key-value pairs. -

-
-
urlGet(url, options = undefined)
-
-

Download url using the curl command line -utility. options is an optional object containing the following -optional properties: -

-
-
binary
-

Boolean (default = false). If true, the response is an ArrayBuffer - instead of a string. When a string is returned, the data is assumed - to be UTF-8 encoded. -

-
-
full
-
-

Boolean (default = false). If true, return the an object contains - the properties response (response content), - responseHeaders (headers separated by CRLF), status - (status code). response is null is case of protocol or - network error. If full is false, only the response is - returned if the status is between 200 and 299. Otherwise null - is returned. -

-
-
- -
-
parseExtJSON(str)
-
-

Parse str using a superset of JSON.parse. The - following extensions are accepted: -

-
    -
  • Single line and multiline comments -
  • unquoted properties (ASCII-only Javascript identifiers) -
  • trailing comma in array and object definitions -
  • single quoted strings -
  • \f and \v are accepted as space characters -
  • leading plus in numbers -
  • octal (0o prefix) and hexadecimal (0x prefix) numbers -
-
-
- -

FILE prototype: -

-
-
close()
-

Close the file. Return 0 if OK or -errno in case of I/O error. -

-
puts(str)
-

Outputs the string with the UTF-8 encoding. -

-
printf(fmt, ...args)
-

Formatted printf. -

-

The same formats as the standard C library printf are -supported. Integer format types (e.g. %d) truncate the Numbers -or BigInts to 32 bits. Use the l modifier (e.g. %ld) to -truncate to 64 bits. -

-
-
flush()
-

Flush the buffered file. -

-
seek(offset, whence)
-

Seek to a give file position (whence is -std.SEEK_*). offset can be a number or a bigint. Return -0 if OK or -errno in case of I/O error. -

-
tell()
-

Return the current file position. -

-
tello()
-

Return the current file position as a bigint. -

-
eof()
-

Return true if end of file. -

-
fileno()
-

Return the associated OS handle. -

-
error()
-

Return true if there was an error. -

-
clearerr()
-

Clear the error indication. -

-
-
read(buffer, position, length)
-

Read length bytes from the file to the ArrayBuffer buffer at byte -position position (wrapper to the libc fread). -

-
-
write(buffer, position, length)
-

Write length bytes to the file from the ArrayBuffer buffer at byte -position position (wrapper to the libc fwrite). -

-
-
getline()
-

Return the next line from the file, assuming UTF-8 encoding, excluding -the trailing line feed. -

-
-
readAsString(max_size = undefined)
-

Read max_size bytes from the file and return them as a string -assuming UTF-8 encoding. If max_size is not present, the file -is read up its end. -

-
-
getByte()
-

Return the next byte from the file. Return -1 if the end of file is reached. -

-
-
putByte(c)
-

Write one byte to the file. -

-
- - -

3.3.3 os module

- -

The os module provides Operating System specific functions: -

-
    -
  • low level file access -
  • signals -
  • timers -
  • asynchronous I/O -
  • workers (threads) -
- -

The OS functions usually return 0 if OK or an OS specific negative -error code. -

-

Available exports: -

-
-
open(filename, flags, mode = 0o666)
-

Open a file. Return a handle or < 0 if error. -

-
-
O_RDONLY
-
O_WRONLY
-
O_RDWR
-
O_APPEND
-
O_CREAT
-
O_EXCL
-
O_TRUNC
-

POSIX open flags. -

-
-
O_TEXT
-

(Windows specific). Open the file in text mode. The default is binary mode. -

-
-
close(fd)
-

Close the file handle fd. -

-
-
seek(fd, offset, whence)
-

Seek in the file. Use std.SEEK_* for -whence. offset is either a number or a bigint. If -offset is a bigint, a bigint is returned too. -

-
-
read(fd, buffer, offset, length)
-

Read length bytes from the file handle fd to the -ArrayBuffer buffer at byte position offset. -Return the number of read bytes or < 0 if error. -

-
-
write(fd, buffer, offset, length)
-

Write length bytes to the file handle fd from the -ArrayBuffer buffer at byte position offset. -Return the number of written bytes or < 0 if error. -

-
-
isatty(fd)
-

Return true is fd is a TTY (terminal) handle. -

-
-
ttyGetWinSize(fd)
-

Return the TTY size as [width, height] or null if not available. -

-
-
ttySetRaw(fd)
-

Set the TTY in raw mode. -

-
-
remove(filename)
-

Remove a file. Return 0 if OK or -errno. -

-
-
rename(oldname, newname)
-

Rename a file. Return 0 if OK or -errno. -

-
-
realpath(path)
-

Return [str, err] where str is the canonicalized absolute -pathname of path and err the error code. -

-
-
getcwd()
-

Return [str, err] where str is the current working directory -and err the error code. -

-
-
chdir(path)
-

Change the current directory. Return 0 if OK or -errno. -

-
-
mkdir(path, mode = 0o777)
-

Create a directory at path. Return 0 if OK or -errno. -

-
-
stat(path)
-
lstat(path)
-
-

Return [obj, err] where obj is an object containing the -file status of path. err is the error code. The -following fields are defined in obj: dev, ino, mode, nlink, -uid, gid, rdev, size, blocks, atime, mtime, ctime. The times are -specified in milliseconds since 1970. lstat() is the same as -stat() excepts that it returns information about the link -itself. -

-
-
S_IFMT
-
S_IFIFO
-
S_IFCHR
-
S_IFDIR
-
S_IFBLK
-
S_IFREG
-
S_IFSOCK
-
S_IFLNK
-
S_ISGID
-
S_ISUID
-

Constants to interpret the mode property returned by -stat(). They have the same value as in the C system header -sys/stat.h. -

-
-
utimes(path, atime, mtime)
-

Change the access and modification times of the file path. The -times are specified in milliseconds since 1970. Return 0 if OK or -errno. -

-
-
symlink(target, linkpath)
-

Create a link at linkpath containing the string target. Return 0 if OK or -errno. -

-
-
readlink(path)
-

Return [str, err] where str is the link target and err -the error code. -

-
-
readdir(path)
-

Return [array, err] where array is an array of strings -containing the filenames of the directory path. err is -the error code. -

-
-
setReadHandler(fd, func)
-

Add a read handler to the file handle fd. func is called -each time there is data pending for fd. A single read handler -per file handle is supported. Use func = null to remove the -handler. -

-
-
setWriteHandler(fd, func)
-

Add a write handler to the file handle fd. func is -called each time data can be written to fd. A single write -handler per file handle is supported. Use func = null to remove -the handler. -

-
-
signal(signal, func)
-

Call the function func when the signal signal -happens. Only a single handler per signal number is supported. Use -null to set the default handler or undefined to ignore -the signal. Signal handlers can only be defined in the main thread. -

-
-
SIGINT
-
SIGABRT
-
SIGFPE
-
SIGILL
-
SIGSEGV
-
SIGTERM
-

POSIX signal numbers. -

-
-
kill(pid, sig)
-

Send the signal sig to the process pid. -

-
-
exec(args[, options])
-

Execute a process with the arguments args. options is an -object containing optional parameters: -

-
-
block
-

Boolean (default = true). If true, wait until the process is - terminated. In this case, exec return the exit code if positive - or the negated signal number if the process was interrupted by a - signal. If false, do not block and return the process id of the child. -

-
-
usePath
-

Boolean (default = true). If true, the file is searched in the - PATH environment variable. -

-
-
file
-

String (default = args[0]). Set the file to be executed. -

-
-
cwd
-

String. If present, set the working directory of the new process. -

-
-
stdin
-
stdout
-
stderr
-

If present, set the handle in the child for stdin, stdout or stderr. -

-
-
env
-

Object. If present, set the process environment from the object - key-value pairs. Otherwise use the same environment as the current - process. -

-
-
uid
-

Integer. If present, the process uid with setuid. -

-
-
gid
-

Integer. If present, the process gid with setgid. -

-
-
- -
-
waitpid(pid, options)
-

waitpid Unix system call. Return the array [ret, -status]. ret contains -errno in case of error. -

-
-
WNOHANG
-

Constant for the options argument of waitpid. -

-
-
dup(fd)
-

dup Unix system call. -

-
-
dup2(oldfd, newfd)
-

dup2 Unix system call. -

-
-
pipe()
-

pipe Unix system call. Return two handles as [read_fd, -write_fd] or null in case of error. -

-
-
sleep(delay_ms)
-

Sleep during delay_ms milliseconds. -

-
-
setTimeout(func, delay)
-

Call the function func after delay ms. Return a handle -to the timer. -

-
-
clearTimeout(handle)
-

Cancel a timer. -

-
-
platform
-

Return a string representing the platform: "linux", "darwin", -"win32" or "js". -

-
-
Worker(module_filename)
-

Constructor to create a new thread (worker) with an API close to the -WebWorkers. module_filename is a string specifying the -module filename which is executed in the newly created thread. As for -dynamically imported module, it is relative to the current script or -module path. Threads normally don’t share any data and communicate -between each other with messages. Nested workers are not supported. An -example is available in tests/test_worker.js. -

-

The worker class has the following static properties: -

-
-
parent
-

In the created worker, Worker.parent represents the parent - worker and is used to send or receive messages. -

-
- -

The worker instances have the following properties: -

-
-
postMessage(msg)
-
-

Send a message to the corresponding worker. msg is cloned in - the destination worker using an algorithm similar to the HTML - structured clone algorithm. SharedArrayBuffer are shared - between workers. -

-

Current limitations: Map and Set are not supported - yet. -

-
-
onmessage
-
-

Getter and setter. Set a function which is called each time a - message is received. The function is called with a single - argument. It is an object with a data property containing the - received message. The thread is not terminated if there is at least - one non null onmessage handler. -

-
-
- -
-
- - -

3.4 QuickJS C API

- -

The C API was designed to be simple and efficient. The C API is -defined in the header quickjs.h. -

- -

3.4.1 Runtime and contexts

- -

JSRuntime represents a Javascript runtime corresponding to an -object heap. Several runtimes can exist at the same time but they -cannot exchange objects. Inside a given runtime, no multi-threading is -supported. -

-

JSContext represents a Javascript context (or Realm). Each -JSContext has its own global objects and system objects. There can be -several JSContexts per JSRuntime and they can share objects, similar -to frames of the same origin sharing Javascript objects in a -web browser. -

- -

3.4.2 JSValue

- -

JSValue represents a Javascript value which can be a primitive -type or an object. Reference counting is used, so it is important to -explicitly duplicate (JS_DupValue(), increment the reference -count) or free (JS_FreeValue(), decrement the reference count) -JSValues. -

- -

3.4.3 C functions

- -

C functions can be created with -JS_NewCFunction(). JS_SetPropertyFunctionList() is a -shortcut to easily add functions, setters and getters properties to a -given object. -

-

Unlike other embedded Javascript engines, there is no implicit stack, -so C functions get their parameters as normal C parameters. As a -general rule, C functions take constant JSValues as parameters -(so they don’t need to free them) and return a newly allocated (=live) -JSValue. -

- -

3.4.4 Exceptions

- -

Exceptions: most C functions can return a Javascript exception. It -must be explicitly tested and handled by the C code. The specific -JSValue JS_EXCEPTION indicates that an exception -occurred. The actual exception object is stored in the -JSContext and can be retrieved with JS_GetException(). -

- -

3.4.5 Script evaluation

- -

Use JS_Eval() to evaluate a script or module source. -

-

If the script or module was compiled to bytecode with qjsc, it -can be evaluated by calling js_std_eval_binary(). The advantage -is that no compilation is needed so it is faster and smaller because -the compiler can be removed from the executable if no eval is -required. -

-

Note: the bytecode format is linked to a given QuickJS -version. Moreover, no security check is done before its -execution. Hence the bytecode should not be loaded from untrusted -sources. That’s why there is no option to output the bytecode to a -binary file in qjsc. -

- -

3.4.6 JS Classes

- -

C opaque data can be attached to a Javascript object. The type of the -C opaque data is determined with the class ID (JSClassID) of -the object. Hence the first step is to register a new class ID and JS -class (JS_NewClassID(), JS_NewClass()). Then you can -create objects of this class with JS_NewObjectClass() and get or -set the C opaque point with -JS_GetOpaque()/JS_SetOpaque(). -

-

When defining a new JS class, it is possible to declare a finalizer -which is called when the object is destroyed. The finalizer should be -used to release C resources. It is invalid to execute JS code from -it. A gc_mark method can be provided so that the cycle removal -algorithm can find the other objects referenced by this object. Other -methods are available to define exotic object behaviors. -

-

The Class ID are globally allocated (i.e. for all runtimes). The -JSClass are allocated per JSRuntime. JS_SetClassProto() -is used to define a prototype for a given class in a given -JSContext. JS_NewObjectClass() sets this prototype in the -created object. -

-

Examples are available in quickjs-libc.c. -

- -

3.4.7 C Modules

- -

Native ES6 modules are supported and can be dynamically or statically -linked. Look at the test_bjson and bjson.so -examples. The standard library quickjs-libc.c is also a good example -of a native module. -

- -

3.4.8 Memory handling

- -

Use JS_SetMemoryLimit() to set a global memory allocation limit -to a given JSRuntime. -

-

Custom memory allocation functions can be provided with -JS_NewRuntime2(). -

-

The maximum system stack size can be set with JS_SetMaxStackSize(). -

- -

3.4.9 Execution timeout and interrupts

- -

Use JS_SetInterruptHandler() to set a callback which is -regularly called by the engine when it is executing code. This -callback can be used to implement an execution timeout. -

-

It is used by the command line interpreter to implement a -Ctrl-C handler. -

- -

4 Internals

- - -

4.1 Bytecode

- -

The compiler generates bytecode directly with no intermediate -representation such as a parse tree, hence it is very fast. Several -optimizations passes are done over the generated bytecode. -

-

A stack-based bytecode was chosen because it is simple and generates -compact code. -

-

For each function, the maximum stack size is computed at compile time so that -no runtime stack overflow tests are needed. -

-

A separate compressed line number table is maintained for the debug -information. -

-

Access to closure variables is optimized and is almost as fast as local -variables. -

-

Direct eval in strict mode is optimized. -

- -

4.2 Executable generation

- - -

4.2.1 qjsc compiler

- -

The qjsc compiler generates C sources from Javascript files. By -default the C sources are compiled with the system compiler -(gcc or clang). -

-

The generated C source contains the bytecode of the compiled functions -or modules. If a full complete executable is needed, it also -contains a main() function with the necessary C code to initialize the -Javascript engine and to load and execute the compiled functions and -modules. -

-

Javascript code can be mixed with C modules. -

-

In order to have smaller executables, specific Javascript features can -be disabled, in particular eval or the regular expressions. The -code removal relies on the Link Time Optimization of the system -compiler. -

- -

4.2.2 Binary JSON

- -

qjsc works by compiling scripts or modules and then serializing -them to a binary format. A subset of this format (without functions or -modules) can be used as binary JSON. The example test_bjson.js -shows how to use it. -

-

Warning: the binary JSON format may change without notice, so it -should not be used to store persistent data. The test_bjson.js -example is only used to test the binary object format functions. -

- -

4.3 Runtime

- - -

4.3.1 Strings

- -

Strings are stored either as an 8 bit or a 16 bit array of -characters. Hence random access to characters is always fast. -

-

The C API provides functions to convert Javascript Strings to C UTF-8 encoded -strings. The most common case where the Javascript string contains -only ASCII characters involves no copying. -

- -

4.3.2 Objects

- -

The object shapes (object prototype, property names and flags) are shared -between objects to save memory. -

-

Arrays with no holes (except at the end of the array) are optimized. -

-

TypedArray accesses are optimized. -

- -

4.3.3 Atoms

- -

Object property names and some strings are stored as Atoms (unique -strings) to save memory and allow fast comparison. Atoms are -represented as a 32 bit integer. Half of the atom range is reserved for -immediate integer literals from 0 to 2^{31}-1. -

- -

4.3.4 Numbers

- -

Numbers are represented either as 32-bit signed integers or 64-bit IEEE-754 -floating point values. Most operations have fast paths for the 32-bit -integer case. -

- -

4.3.5 Garbage collection

- -

Reference counting is used to free objects automatically and -deterministically. A separate cycle removal pass is done when the allocated -memory becomes too large. The cycle removal algorithm only uses the -reference counts and the object content, so no explicit garbage -collection roots need to be manipulated in the C code. -

- -

4.3.6 JSValue

- -

It is a Javascript value which can be a primitive type (such as -Number, String, ...) or an Object. NaN boxing is used in the 32-bit version -to store 64-bit floating point numbers. The representation is -optimized so that 32-bit integers and reference counted values can be -efficiently tested. -

-

In 64-bit code, JSValue are 128-bit large and no NaN boxing is used. The -rationale is that in 64-bit code memory usage is less critical. -

-

In both cases (32 or 64 bits), JSValue exactly fits two CPU registers, -so it can be efficiently returned by C functions. -

- -

4.3.7 Function call

- -

The engine is optimized so that function calls are fast. The system -stack holds the Javascript parameters and local variables. -

- -

4.4 RegExp

- -

A specific regular expression engine was developed. It is both small -and efficient and supports all the ES2020 features including the -Unicode properties. As the Javascript compiler, it directly generates -bytecode without a parse tree. -

-

Backtracking with an explicit stack is used so that there is no -recursion on the system stack. Simple quantifiers are specifically -optimized to avoid recursions. -

-

Infinite recursions coming from quantifiers with empty terms are -avoided. -

-

The full regexp library weights about 15 KiB (x86 code), excluding the -Unicode library. -

- -

4.5 Unicode

- -

A specific Unicode library was developed so that there is no -dependency on an external large Unicode library such as ICU. All the -Unicode tables are compressed while keeping a reasonable access -speed. -

-

The library supports case conversion, Unicode normalization, Unicode -script queries, Unicode general category queries and all Unicode -binary properties. -

-

The full Unicode library weights about 45 KiB (x86 code). -

- -

4.6 BigInt, BigFloat, BigDecimal

- -

BigInt, BigFloat and BigDecimal are implemented with the libbf -library7. It weights about 90 -KiB (x86 code) and provides arbitrary precision IEEE 754 floating -point operations and transcendental functions with exact rounding. -

- -

5 License

- -

QuickJS is released under the MIT license. -

-

Unless otherwise specified, the QuickJS sources are copyright Fabrice -Bellard and Charlie Gordon. -

-
-
-

Footnotes

- -

(1)

-

https://tc39.es/ecma262/

-

(2)

-

https://github.com/tc39/test262

-

(3)

-

https://tc39.github.io/ecma262/

-

(4)

-

The old -ES5.1 tests can be extracted with git clone --single-branch ---branch es5-tests https://github.com/tc39/test262.git test262o

-

(5)

-

https://github.com/bterlson/test262-harness

-

(6)

-

We believe the current specification of tails calls is too complicated and presents limited practical interests.

-

(7)

-

https://bellard.org/libbf

-
-
- - - - - diff --git a/crates/quickjs-wasm-sys/quickjs/doc/quickjs.pdf b/crates/quickjs-wasm-sys/quickjs/doc/quickjs.pdf deleted file mode 100644 index 53c8e734..00000000 Binary files a/crates/quickjs-wasm-sys/quickjs/doc/quickjs.pdf and /dev/null differ diff --git a/crates/quickjs-wasm-sys/quickjs/examples/hello b/crates/quickjs-wasm-sys/quickjs/examples/hello new file mode 100755 index 00000000..237ebcbf Binary files /dev/null and b/crates/quickjs-wasm-sys/quickjs/examples/hello differ diff --git a/crates/quickjs-wasm-sys/quickjs/examples/hello_module b/crates/quickjs-wasm-sys/quickjs/examples/hello_module new file mode 100755 index 00000000..d15e2be2 Binary files /dev/null and b/crates/quickjs-wasm-sys/quickjs/examples/hello_module differ diff --git a/crates/quickjs-wasm-sys/quickjs/examples/test_fib b/crates/quickjs-wasm-sys/quickjs/examples/test_fib new file mode 100755 index 00000000..6b9c5bad Binary files /dev/null and b/crates/quickjs-wasm-sys/quickjs/examples/test_fib differ diff --git a/crates/quickjs-wasm-sys/quickjs/hello.c b/crates/quickjs-wasm-sys/quickjs/hello.c new file mode 100644 index 00000000..f12c8e2b --- /dev/null +++ b/crates/quickjs-wasm-sys/quickjs/hello.c @@ -0,0 +1,44 @@ +/* File generated automatically by the QuickJS compiler. */ + +#include "quickjs-libc.h" + +const uint32_t qjsc_hello_size = 87; + +const uint8_t qjsc_hello[87] = { + 0x02, 0x04, 0x0e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, + 0x6c, 0x65, 0x06, 0x6c, 0x6f, 0x67, 0x16, 0x48, + 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, 0x6f, 0x72, + 0x6c, 0x64, 0x22, 0x65, 0x78, 0x61, 0x6d, 0x70, + 0x6c, 0x65, 0x73, 0x2f, 0x68, 0x65, 0x6c, 0x6c, + 0x6f, 0x2e, 0x6a, 0x73, 0x0e, 0x00, 0x06, 0x00, + 0xa0, 0x01, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, + 0x14, 0x01, 0xa2, 0x01, 0x00, 0x00, 0x00, 0x38, + 0xe1, 0x00, 0x00, 0x00, 0x42, 0xe2, 0x00, 0x00, + 0x00, 0x04, 0xe3, 0x00, 0x00, 0x00, 0x24, 0x01, + 0x00, 0xcd, 0x28, 0xc8, 0x03, 0x01, 0x00, +}; + +static JSContext *JS_NewCustomContext(JSRuntime *rt) +{ + JSContext *ctx = JS_NewContextRaw(rt); + if (!ctx) + return NULL; + JS_AddIntrinsicBaseObjects(ctx); + return ctx; +} + +int main(int argc, char **argv) +{ + JSRuntime *rt; + JSContext *ctx; + rt = JS_NewRuntime(); + js_std_set_worker_new_context_func(JS_NewCustomContext); + js_std_init_handlers(rt); + ctx = JS_NewCustomContext(rt); + js_std_add_helpers(ctx, argc, argv); + js_std_eval_binary(ctx, qjsc_hello, qjsc_hello_size, 0); + js_std_loop(ctx); + JS_FreeContext(ctx); + JS_FreeRuntime(rt); + return 0; +} diff --git a/crates/quickjs-wasm-sys/quickjs/libbf.c b/crates/quickjs-wasm-sys/quickjs/libbf.c index fe1628e7..234b956b 100644 --- a/crates/quickjs-wasm-sys/quickjs/libbf.c +++ b/crates/quickjs-wasm-sys/quickjs/libbf.c @@ -37,10 +37,12 @@ /* enable it to check the multiplication result */ //#define USE_MUL_CHECK +#ifdef CONFIG_BIGNUM /* enable it to use FFT/NTT multiplication */ #define USE_FFT_MUL /* enable decimal floating point support */ #define USE_BF_DEC +#endif //#define inline __attribute__((always_inline)) @@ -164,6 +166,21 @@ static inline slimb_t sat_add(slimb_t a, slimb_t b) return r; } +static inline __maybe_unused limb_t shrd(limb_t low, limb_t high, long shift) +{ + if (shift != 0) + low = (low >> shift) | (high << (LIMB_BITS - shift)); + return low; +} + +static inline __maybe_unused limb_t shld(limb_t a1, limb_t a0, long shift) +{ + if (shift != 0) + return (a1 << shift) | (a0 >> (LIMB_BITS - shift)); + else + return a1; +} + #define malloc(s) malloc_is_forbidden(s) #define free(p) free_is_forbidden(p) #define realloc(p, s) realloc_is_forbidden(p, s) @@ -236,7 +253,7 @@ int bf_set_ui(bf_t *r, uint64_t a) a1 = a >> 32; shift = clz(a1); r->tab[0] = a0 << shift; - r->tab[1] = (a1 << shift) | (a0 >> (LIMB_BITS - shift)); + r->tab[1] = shld(a1, a0, shift); r->expn = 2 * LIMB_BITS - shift; } #endif @@ -1585,7 +1602,9 @@ int bf_mul(bf_t *r, const bf_t *a, const bf_t *b, limb_t prec, r = &tmp; } if (bf_resize(r, a_len + b_len)) { +#ifdef USE_FFT_MUL fail: +#endif bf_set_nan(r); ret = BF_ST_MEM_ERROR; goto done; @@ -2282,11 +2301,14 @@ static int bf_pow_ui_ui(bf_t *r, limb_t a1, limb_t b, bf_t a; int ret; +#ifdef USE_BF_DEC if (a1 == 10 && b <= LIMB_DIGITS) { /* use precomputed powers. We do not round at this point because we expect the caller to do it */ ret = bf_set_ui(r, mp_pow_dec[b]); - } else { + } else +#endif + { bf_init(r->ctx, &a); ret = bf_set_ui(&a, a1); ret |= bf_pow_ui(r, &a, b, prec, flags); @@ -5392,21 +5414,6 @@ int bf_acos(bf_t *r, const bf_t *a, limb_t prec, bf_flags_t flags) #endif /* LIMB_BITS != 64 */ -static inline __maybe_unused limb_t shrd(limb_t low, limb_t high, long shift) -{ - if (shift != 0) - low = (low >> shift) | (high << (LIMB_BITS - shift)); - return low; -} - -static inline __maybe_unused limb_t shld(limb_t a1, limb_t a0, long shift) -{ - if (shift != 0) - return (a1 << shift) | (a0 >> (LIMB_BITS - shift)); - else - return a1; -} - #if LIMB_DIGITS == 19 /* WARNING: hardcoded for b = 1e19. It is assumed that: diff --git a/crates/quickjs-wasm-sys/quickjs/libregexp.c b/crates/quickjs-wasm-sys/quickjs/libregexp.c index 379bfc7a..dab8fa1e 100644 --- a/crates/quickjs-wasm-sys/quickjs/libregexp.c +++ b/crates/quickjs-wasm-sys/quickjs/libregexp.c @@ -1071,11 +1071,10 @@ static int re_is_simple_quantifier(const uint8_t *bc_buf, int bc_buf_len) } /* '*pp' is the first char after '<' */ -static int re_parse_group_name(char *buf, int buf_size, - const uint8_t **pp, BOOL is_utf16) +static int re_parse_group_name(char *buf, int buf_size, const uint8_t **pp) { - const uint8_t *p; - uint32_t c; + const uint8_t *p, *p1; + uint32_t c, d; char *q; p = *pp; @@ -1086,11 +1085,18 @@ static int re_parse_group_name(char *buf, int buf_size, p++; if (*p != 'u') return -1; - c = lre_parse_escape(&p, is_utf16 * 2); + c = lre_parse_escape(&p, 2); // accept surrogate pairs } else if (c == '>') { break; } else if (c >= 128) { c = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p); + if (c >= 0xD800 && c <= 0xDBFF) { + d = unicode_from_utf8(p, UTF8_CHAR_LEN_MAX, &p1); + if (d >= 0xDC00 && d <= 0xDFFF) { + c = 0x10000 + 0x400 * (c - 0xD800) + (d - 0xDC00); + p = p1; + } + } } else { p++; } @@ -1140,8 +1146,7 @@ static int re_parse_captures(REParseState *s, int *phas_named_captures, /* potential named capture */ if (capture_name) { p += 3; - if (re_parse_group_name(name, sizeof(name), &p, - s->is_utf16) == 0) { + if (re_parse_group_name(name, sizeof(name), &p) == 0) { if (!strcmp(name, capture_name)) return capture_index; } @@ -1314,7 +1319,7 @@ static int re_parse_term(REParseState *s, BOOL is_backward_dir) } else if (p[2] == '<') { p += 3; if (re_parse_group_name(s->u.tmp_buf, sizeof(s->u.tmp_buf), - &p, s->is_utf16)) { + &p)) { return re_parse_error(s, "invalid group name"); } if (find_group_name(s, s->u.tmp_buf) > 0) { @@ -1378,7 +1383,7 @@ static int re_parse_term(REParseState *s, BOOL is_backward_dir) } p1 += 3; if (re_parse_group_name(s->u.tmp_buf, sizeof(s->u.tmp_buf), - &p1, s->is_utf16)) { + &p1)) { if (s->is_utf16 || re_has_named_captures(s)) return re_parse_error(s, "invalid group name"); else diff --git a/crates/quickjs-wasm-sys/quickjs/libunicode-table.h b/crates/quickjs-wasm-sys/quickjs/libunicode-table.h index 0ef21135..b64178b4 100644 --- a/crates/quickjs-wasm-sys/quickjs/libunicode-table.h +++ b/crates/quickjs-wasm-sys/quickjs/libunicode-table.h @@ -3,7 +3,7 @@ #include -static const uint32_t case_conv_table1[361] = { +static const uint32_t case_conv_table1[370] = { 0x00209a30, 0x00309a00, 0x005a8173, 0x00601730, 0x006c0730, 0x006f81b3, 0x00701700, 0x007c0700, 0x007f8100, 0x00803040, 0x009801c3, 0x00988190, @@ -74,8 +74,8 @@ static const uint32_t case_conv_table1[361] = { 0x0ffb01b2, 0x0ffb81d9, 0x0ffc0230, 0x0ffd0230, 0x0ffe0162, 0x109301a0, 0x109501a0, 0x109581a0, 0x10990131, 0x10a70101, 0x10b01031, 0x10b81001, - 0x10c18240, 0x125b1a31, 0x12681a01, 0x16002f31, - 0x16182f01, 0x16300240, 0x16310130, 0x16318130, + 0x10c18240, 0x125b1a31, 0x12681a01, 0x16003031, + 0x16183001, 0x16300240, 0x16310130, 0x16318130, 0x16320130, 0x16328100, 0x16330100, 0x16338640, 0x16368130, 0x16370130, 0x16378130, 0x16380130, 0x16390240, 0x163a8240, 0x163f0230, 0x16406440, @@ -85,19 +85,21 @@ static const uint32_t case_conv_table1[361] = { 0x53c58240, 0x53c68130, 0x53c80440, 0x53ca0101, 0x53cb1440, 0x53d50130, 0x53d58130, 0x53d60130, 0x53d68130, 0x53d70130, 0x53d80130, 0x53d88130, - 0x53d90130, 0x53d98131, 0x53da0c40, 0x53e10240, - 0x53e20131, 0x53e28130, 0x53e30130, 0x53e38440, - 0x53fa8240, 0x55a98101, 0x55b85020, 0x7d8001b2, - 0x7d8081b2, 0x7d8101b2, 0x7d8181da, 0x7d8201da, - 0x7d8281b3, 0x7d8301b3, 0x7d8981bb, 0x7d8a01bb, - 0x7d8a81bb, 0x7d8b01bc, 0x7d8b81bb, 0x7f909a31, - 0x7fa09a01, 0x82002831, 0x82142801, 0x82582431, - 0x826c2401, 0x86403331, 0x86603301, 0x8c502031, - 0x8c602001, 0xb7202031, 0xb7302001, 0xf4802231, - 0xf4912201, + 0x53d90130, 0x53d98131, 0x53da1040, 0x53e20131, + 0x53e28130, 0x53e30130, 0x53e38440, 0x53e80240, + 0x53eb0440, 0x53fa8240, 0x55a98101, 0x55b85020, + 0x7d8001b2, 0x7d8081b2, 0x7d8101b2, 0x7d8181da, + 0x7d8201da, 0x7d8281b3, 0x7d8301b3, 0x7d8981bb, + 0x7d8a01bb, 0x7d8a81bb, 0x7d8b01bc, 0x7d8b81bb, + 0x7f909a31, 0x7fa09a01, 0x82002831, 0x82142801, + 0x82582431, 0x826c2401, 0x82b80b31, 0x82be0f31, + 0x82c60731, 0x82ca0231, 0x82cb8b01, 0x82d18f01, + 0x82d98701, 0x82dd8201, 0x86403331, 0x86603301, + 0x8c502031, 0x8c602001, 0xb7202031, 0xb7302001, + 0xf4802231, 0xf4912201, }; -static const uint8_t case_conv_table2[361] = { +static const uint8_t case_conv_table2[370] = { 0x01, 0x00, 0x9c, 0x06, 0x07, 0x4d, 0x03, 0x04, 0x10, 0x00, 0x8f, 0x0b, 0x00, 0x00, 0x11, 0x00, 0x08, 0x00, 0x53, 0x4a, 0x51, 0x00, 0x52, 0x00, @@ -110,7 +112,7 @@ static const uint8_t case_conv_table2[361] = { 0x2a, 0x00, 0x13, 0x6b, 0x6d, 0x00, 0x26, 0x24, 0x27, 0x14, 0x16, 0x18, 0x1b, 0x1c, 0x3e, 0x1e, 0x3f, 0x1f, 0x39, 0x3d, 0x22, 0x21, 0x41, 0x1e, - 0x40, 0x25, 0x25, 0x26, 0x28, 0x20, 0x2a, 0x49, + 0x40, 0x25, 0x25, 0x26, 0x28, 0x20, 0x2a, 0x48, 0x2c, 0x43, 0x2e, 0x4b, 0x30, 0x4c, 0x32, 0x44, 0x42, 0x99, 0x00, 0x00, 0x95, 0x8f, 0x7d, 0x7e, 0x83, 0x84, 0x12, 0x80, 0x82, 0x76, 0x77, 0x12, @@ -119,9 +121,9 @@ static const uint8_t case_conv_table2[361] = { 0x33, 0x95, 0x00, 0x8e, 0x00, 0x74, 0x99, 0x98, 0x97, 0x96, 0x00, 0x00, 0x9e, 0x00, 0x9c, 0x00, 0xa1, 0xa0, 0x15, 0x2e, 0x2f, 0x30, 0xb4, 0xb5, - 0x4e, 0xaa, 0xa9, 0x12, 0x14, 0x1e, 0x21, 0x22, + 0x4f, 0xaa, 0xa9, 0x12, 0x14, 0x1e, 0x21, 0x22, 0x22, 0x2a, 0x34, 0x35, 0xa6, 0xa7, 0x36, 0x1f, - 0x4a, 0x00, 0x00, 0x97, 0x01, 0x5a, 0xda, 0x1d, + 0x49, 0x00, 0x00, 0x97, 0x01, 0x5a, 0xda, 0x1d, 0x36, 0x05, 0x00, 0xc4, 0xc3, 0xc6, 0xc5, 0xc8, 0xc7, 0xca, 0xc9, 0xcc, 0xcb, 0xc4, 0xd5, 0x45, 0xd6, 0x42, 0xd7, 0x46, 0xd8, 0xce, 0xd0, 0xd2, @@ -137,13 +139,14 @@ static const uint8_t case_conv_table2[361] = { 0x65, 0x44, 0x47, 0x00, 0x4f, 0x62, 0x4e, 0x50, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0xa3, 0xa4, 0xa5, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb6, 0x00, - 0x00, 0x5a, 0x00, 0x48, 0x00, 0x5b, 0x56, 0x58, - 0x60, 0x5e, 0x70, 0x69, 0x6f, 0x4d, 0x00, 0x00, - 0x3b, 0x67, 0xb8, 0x00, 0x00, 0x45, 0xa8, 0x8a, - 0x8b, 0x8c, 0xab, 0xac, 0x58, 0x58, 0xaf, 0x94, - 0xb0, 0x6f, 0xb2, 0x5c, 0x5b, 0x5e, 0x5d, 0x60, - 0x5f, 0x62, 0x61, 0x64, 0x63, 0x66, 0x65, 0x68, - 0x67, + 0x00, 0x5a, 0x00, 0x47, 0x00, 0x5b, 0x56, 0x58, + 0x60, 0x5e, 0x70, 0x69, 0x6f, 0x4e, 0x00, 0x3b, + 0x67, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x45, 0xa8, + 0x8a, 0x8b, 0x8c, 0xab, 0xac, 0x58, 0x58, 0xaf, + 0x94, 0xb0, 0x6f, 0xb2, 0x5d, 0x5c, 0x5f, 0x5e, + 0x61, 0x60, 0x66, 0x67, 0x68, 0x69, 0x62, 0x63, + 0x64, 0x65, 0x6b, 0x6a, 0x6d, 0x6c, 0x6f, 0x6e, + 0x71, 0x70, }; static const uint16_t case_conv_ext[58] = { @@ -157,38 +160,41 @@ static const uint16_t case_conv_ext[58] = { 0x006b, 0x00e5, }; -static const uint8_t unicode_prop_Cased1_table[172] = { +static const uint8_t unicode_prop_Cased1_table[196] = { 0x40, 0xa9, 0x80, 0x8e, 0x80, 0xfc, 0x80, 0xd3, 0x80, 0x8c, 0x80, 0x8d, 0x81, 0x8d, 0x02, 0x80, 0xe1, 0x80, 0x91, 0x85, 0x9a, 0x01, 0x00, 0x01, 0x11, 0x00, 0x01, 0x04, 0x08, 0x01, 0x08, 0x30, 0x08, 0x01, 0x15, 0x20, 0x00, 0x39, 0x99, 0x31, 0x9d, 0x84, 0x40, 0x94, 0x80, 0xd6, 0x82, 0xa6, - 0x80, 0x41, 0x62, 0x80, 0xa6, 0x80, 0x57, 0x76, - 0xf8, 0x02, 0x80, 0x8f, 0x80, 0xb0, 0x40, 0xdb, - 0x08, 0x80, 0x41, 0xd0, 0x80, 0x8c, 0x80, 0x8f, - 0x8c, 0xe4, 0x03, 0x01, 0x89, 0x00, 0x14, 0x28, - 0x10, 0x11, 0x02, 0x01, 0x18, 0x0b, 0x24, 0x4b, - 0x26, 0x01, 0x01, 0x86, 0xe5, 0x80, 0x60, 0x79, - 0xb6, 0x81, 0x40, 0x91, 0x81, 0xbd, 0x88, 0x94, - 0x05, 0x80, 0x98, 0x80, 0xc7, 0x82, 0x43, 0x34, - 0xa2, 0x06, 0x80, 0x8c, 0x61, 0x28, 0x96, 0xd4, - 0x80, 0xc6, 0x01, 0x08, 0x09, 0x0b, 0x80, 0x8b, - 0x00, 0x06, 0x80, 0xc0, 0x03, 0x0f, 0x06, 0x80, - 0x9b, 0x03, 0x04, 0x00, 0x16, 0x80, 0x41, 0x53, - 0x81, 0x98, 0x80, 0x98, 0x80, 0x9e, 0x80, 0x98, - 0x80, 0x9e, 0x80, 0x98, 0x80, 0x9e, 0x80, 0x98, - 0x80, 0x9e, 0x80, 0x98, 0x07, 0x59, 0x63, 0x99, + 0x80, 0x41, 0x62, 0x80, 0xa6, 0x80, 0x4b, 0x72, + 0x80, 0x4c, 0x02, 0xf8, 0x02, 0x80, 0x8f, 0x80, + 0xb0, 0x40, 0xdb, 0x08, 0x80, 0x41, 0xd0, 0x80, + 0x8c, 0x80, 0x8f, 0x8c, 0xe4, 0x03, 0x01, 0x89, + 0x00, 0x14, 0x28, 0x10, 0x11, 0x02, 0x01, 0x18, + 0x0b, 0x24, 0x4b, 0x26, 0x01, 0x01, 0x86, 0xe5, + 0x80, 0x60, 0x79, 0xb6, 0x81, 0x40, 0x91, 0x81, + 0xbd, 0x88, 0x94, 0x05, 0x80, 0x98, 0x80, 0xa2, + 0x00, 0x80, 0x9b, 0x12, 0x82, 0x43, 0x34, 0xa2, + 0x06, 0x80, 0x8d, 0x60, 0x5c, 0x15, 0x01, 0x10, + 0xa9, 0x80, 0x88, 0x60, 0xcc, 0x44, 0xd4, 0x80, + 0xc6, 0x01, 0x08, 0x09, 0x0b, 0x80, 0x8b, 0x00, + 0x06, 0x80, 0xc0, 0x03, 0x0f, 0x06, 0x80, 0x9b, + 0x03, 0x04, 0x00, 0x16, 0x80, 0x41, 0x53, 0x81, + 0x98, 0x80, 0x98, 0x80, 0x9e, 0x80, 0x98, 0x80, + 0x9e, 0x80, 0x98, 0x80, 0x9e, 0x80, 0x98, 0x80, + 0x9e, 0x80, 0x98, 0x07, 0x47, 0x33, 0x89, 0x80, + 0x93, 0x2d, 0x41, 0x04, 0xbd, 0x50, 0xc1, 0x99, 0x85, 0x99, 0x85, 0x99, }; -static const uint8_t unicode_prop_Cased1_index[18] = { - 0xb9, 0x02, 0xe0, 0xa0, 0x1e, 0x40, 0x9e, 0xa6, - 0x40, 0xba, 0xd4, 0x01, 0x89, 0xd7, 0x01, 0x8a, - 0xf1, 0x01, +static const uint8_t unicode_prop_Cased1_index[21] = { + 0xb9, 0x02, 0xe0, 0xc0, 0x1d, 0x20, 0xe5, 0x2c, + 0x20, 0xb1, 0x07, 0x21, 0xc1, 0xd6, 0x21, 0x4a, + 0xf1, 0x01, 0x8a, 0xf1, 0x01, }; -static const uint8_t unicode_prop_Case_Ignorable_table[692] = { +static const uint8_t unicode_prop_Case_Ignorable_table[737] = { 0xa6, 0x05, 0x80, 0x8a, 0x80, 0xa2, 0x00, 0x80, 0xc6, 0x03, 0x00, 0x03, 0x01, 0x81, 0x41, 0xf6, 0x40, 0xbf, 0x19, 0x18, 0x88, 0x08, 0x80, 0x40, @@ -197,100 +203,106 @@ static const uint8_t unicode_prop_Case_Ignorable_table[692] = { 0x89, 0x8a, 0x00, 0xa2, 0x80, 0x89, 0x94, 0x8f, 0x80, 0xe4, 0x38, 0x89, 0x03, 0xa0, 0x00, 0x80, 0x9d, 0x9a, 0xda, 0x8a, 0xb9, 0x8a, 0x18, 0x08, - 0x97, 0x97, 0xaa, 0x82, 0xf6, 0xaf, 0xb6, 0x00, - 0x03, 0x3b, 0x02, 0x86, 0x89, 0x81, 0x8c, 0x80, - 0x8e, 0x80, 0xb9, 0x03, 0x1f, 0x80, 0x93, 0x81, - 0x99, 0x01, 0x81, 0xb8, 0x03, 0x0b, 0x09, 0x12, - 0x80, 0x9d, 0x0a, 0x80, 0x8a, 0x81, 0xb8, 0x03, - 0x20, 0x0b, 0x80, 0x93, 0x81, 0x95, 0x28, 0x80, - 0xb9, 0x01, 0x00, 0x1f, 0x06, 0x81, 0x8a, 0x81, - 0x9d, 0x80, 0xbc, 0x80, 0x8b, 0x80, 0xb1, 0x02, - 0x80, 0xb8, 0x14, 0x10, 0x1e, 0x81, 0x8a, 0x81, - 0x9c, 0x80, 0xb9, 0x01, 0x05, 0x04, 0x81, 0x93, - 0x81, 0x9b, 0x81, 0xb8, 0x0b, 0x1f, 0x80, 0x93, - 0x81, 0x9c, 0x80, 0xc7, 0x06, 0x10, 0x80, 0xd9, - 0x01, 0x86, 0x8a, 0x88, 0xe1, 0x01, 0x88, 0x88, - 0x00, 0x85, 0xc9, 0x81, 0x9a, 0x00, 0x00, 0x80, - 0xb6, 0x8d, 0x04, 0x01, 0x84, 0x8a, 0x80, 0xa3, - 0x88, 0x80, 0xe5, 0x18, 0x28, 0x09, 0x81, 0x98, - 0x0b, 0x82, 0x8f, 0x83, 0x8c, 0x01, 0x0d, 0x80, - 0x8e, 0x80, 0xdd, 0x80, 0x42, 0x5f, 0x82, 0x43, - 0xb1, 0x82, 0x9c, 0x82, 0x9c, 0x81, 0x9d, 0x81, - 0xbf, 0x08, 0x37, 0x01, 0x8a, 0x10, 0x20, 0xac, - 0x83, 0xb3, 0x80, 0xc0, 0x81, 0xa1, 0x80, 0xf5, - 0x13, 0x81, 0x88, 0x05, 0x82, 0x40, 0xda, 0x09, - 0x80, 0xb9, 0x00, 0x30, 0x00, 0x01, 0x3d, 0x89, - 0x08, 0xa6, 0x07, 0x90, 0xbe, 0x83, 0xaf, 0x00, - 0x20, 0x04, 0x80, 0xa7, 0x88, 0x8b, 0x81, 0x9f, - 0x19, 0x08, 0x82, 0xb7, 0x00, 0x0a, 0x00, 0x82, - 0xb9, 0x39, 0x81, 0xbf, 0x85, 0xd1, 0x10, 0x8c, - 0x06, 0x18, 0x28, 0x11, 0xb1, 0xbe, 0x8c, 0x80, - 0xa1, 0xde, 0x04, 0x41, 0xbc, 0x00, 0x82, 0x8a, - 0x82, 0x8c, 0x82, 0x8c, 0x82, 0x8c, 0x81, 0x8b, - 0x27, 0x81, 0x89, 0x01, 0x01, 0x84, 0xb0, 0x20, - 0x89, 0x00, 0x8c, 0x80, 0x8f, 0x8c, 0xb2, 0xa0, - 0x4b, 0x8a, 0x81, 0xf0, 0x82, 0xfc, 0x80, 0x8e, - 0x80, 0xdf, 0x9f, 0xae, 0x80, 0x41, 0xd4, 0x80, - 0xa3, 0x1a, 0x24, 0x80, 0xdc, 0x85, 0xdc, 0x82, - 0x60, 0x6f, 0x15, 0x80, 0x44, 0xe1, 0x85, 0x41, - 0x0d, 0x80, 0xe1, 0x18, 0x89, 0x00, 0x9b, 0x83, - 0xcf, 0x81, 0x8d, 0xa1, 0xcd, 0x80, 0x96, 0x82, - 0xec, 0x0f, 0x02, 0x03, 0x80, 0x98, 0x0c, 0x80, - 0x40, 0x96, 0x81, 0x99, 0x91, 0x8c, 0x80, 0xa5, - 0x87, 0x98, 0x8a, 0xad, 0x82, 0xaf, 0x01, 0x19, - 0x81, 0x90, 0x80, 0x94, 0x81, 0xc1, 0x29, 0x09, - 0x81, 0x8b, 0x07, 0x80, 0xa2, 0x80, 0x8a, 0x80, - 0xb2, 0x00, 0x11, 0x0c, 0x08, 0x80, 0x9a, 0x80, - 0x8d, 0x0c, 0x08, 0x80, 0xe3, 0x84, 0x88, 0x82, - 0xf8, 0x01, 0x03, 0x80, 0x60, 0x4f, 0x2f, 0x80, - 0x40, 0x92, 0x8f, 0x42, 0x3d, 0x8f, 0x10, 0x8b, - 0x8f, 0xa1, 0x01, 0x80, 0x40, 0xa8, 0x06, 0x05, - 0x80, 0x8a, 0x80, 0xa2, 0x00, 0x80, 0xae, 0x80, - 0xac, 0x81, 0xc2, 0x80, 0x94, 0x82, 0x42, 0x00, - 0x80, 0x40, 0xe1, 0x80, 0x40, 0x94, 0x84, 0x46, - 0x85, 0x10, 0x0c, 0x83, 0xa7, 0x13, 0x80, 0x40, - 0xa4, 0x81, 0x42, 0x3c, 0x83, 0x41, 0x82, 0x81, - 0x40, 0x98, 0x8a, 0x40, 0xaf, 0x80, 0xb5, 0x8e, - 0xb7, 0x82, 0xb0, 0x19, 0x09, 0x80, 0x8e, 0x80, - 0xb1, 0x82, 0xa3, 0x20, 0x87, 0xbd, 0x80, 0x8b, - 0x81, 0xb3, 0x88, 0x89, 0x19, 0x80, 0xde, 0x11, - 0x00, 0x0d, 0x80, 0x40, 0x9f, 0x02, 0x87, 0x94, - 0x81, 0xb8, 0x0a, 0x80, 0xa4, 0x32, 0x84, 0x40, - 0xc2, 0x39, 0x10, 0x80, 0x96, 0x80, 0xd3, 0x28, - 0x03, 0x08, 0x81, 0x40, 0xed, 0x1d, 0x08, 0x81, - 0x9a, 0x81, 0xd4, 0x39, 0x00, 0x81, 0xe9, 0x00, - 0x01, 0x28, 0x80, 0xe4, 0x11, 0x18, 0x84, 0x41, - 0x02, 0x88, 0x01, 0x40, 0xff, 0x08, 0x03, 0x80, - 0x40, 0x8f, 0x19, 0x0b, 0x80, 0x9f, 0x89, 0xa7, - 0x29, 0x1f, 0x80, 0x88, 0x29, 0x82, 0xad, 0x8c, - 0x01, 0x41, 0x95, 0x30, 0x28, 0x80, 0xd1, 0x95, - 0x0e, 0x01, 0x01, 0xf9, 0x2a, 0x00, 0x08, 0x30, - 0x80, 0xc7, 0x0a, 0x00, 0x80, 0x41, 0x5a, 0x81, - 0x55, 0x3a, 0x88, 0x60, 0x36, 0xb6, 0x84, 0xba, - 0x86, 0x88, 0x83, 0x44, 0x0a, 0x80, 0xbe, 0x90, - 0xbf, 0x08, 0x81, 0x60, 0x4c, 0xb7, 0x08, 0x83, - 0x54, 0xc2, 0x82, 0x88, 0x8f, 0x0e, 0x9d, 0x83, - 0x40, 0x93, 0x82, 0x47, 0xba, 0xb6, 0x83, 0xb1, - 0x38, 0x8d, 0x80, 0x95, 0x20, 0x8e, 0x45, 0x4f, - 0x30, 0x90, 0x0e, 0x01, 0x04, 0x41, 0x04, 0x8d, - 0x41, 0xad, 0x83, 0x45, 0xdf, 0x86, 0xec, 0x87, - 0x4a, 0xae, 0x84, 0x6c, 0x0c, 0x00, 0x80, 0x9d, - 0xdf, 0xff, 0x40, 0xef, + 0x97, 0x97, 0xaa, 0x82, 0xab, 0x06, 0x0d, 0x87, + 0xa8, 0xb9, 0xb6, 0x00, 0x03, 0x3b, 0x02, 0x86, + 0x89, 0x81, 0x8c, 0x80, 0x8e, 0x80, 0xb9, 0x03, + 0x1f, 0x80, 0x93, 0x81, 0x99, 0x01, 0x81, 0xb8, + 0x03, 0x0b, 0x09, 0x12, 0x80, 0x9d, 0x0a, 0x80, + 0x8a, 0x81, 0xb8, 0x03, 0x20, 0x0b, 0x80, 0x93, + 0x81, 0x95, 0x28, 0x80, 0xb9, 0x01, 0x00, 0x1f, + 0x06, 0x81, 0x8a, 0x81, 0x9d, 0x80, 0xbc, 0x80, + 0x8b, 0x80, 0xb1, 0x02, 0x80, 0xb6, 0x00, 0x14, + 0x10, 0x1e, 0x81, 0x8a, 0x81, 0x9c, 0x80, 0xb9, + 0x01, 0x05, 0x04, 0x81, 0x93, 0x81, 0x9b, 0x81, + 0xb8, 0x0b, 0x1f, 0x80, 0x93, 0x81, 0x9c, 0x80, + 0xc7, 0x06, 0x10, 0x80, 0xd9, 0x01, 0x86, 0x8a, + 0x88, 0xe1, 0x01, 0x88, 0x88, 0x00, 0x86, 0xc8, + 0x81, 0x9a, 0x00, 0x00, 0x80, 0xb6, 0x8d, 0x04, + 0x01, 0x84, 0x8a, 0x80, 0xa3, 0x88, 0x80, 0xe5, + 0x18, 0x28, 0x09, 0x81, 0x98, 0x0b, 0x82, 0x8f, + 0x83, 0x8c, 0x01, 0x0d, 0x80, 0x8e, 0x80, 0xdd, + 0x80, 0x42, 0x5f, 0x82, 0x43, 0xb1, 0x82, 0x9c, + 0x81, 0x9d, 0x81, 0x9d, 0x81, 0xbf, 0x08, 0x37, + 0x01, 0x8a, 0x10, 0x20, 0xac, 0x84, 0xb2, 0x80, + 0xc0, 0x81, 0xa1, 0x80, 0xf5, 0x13, 0x81, 0x88, + 0x05, 0x82, 0x40, 0xda, 0x09, 0x80, 0xb9, 0x00, + 0x30, 0x00, 0x01, 0x3d, 0x89, 0x08, 0xa6, 0x07, + 0x9e, 0xb0, 0x83, 0xaf, 0x00, 0x20, 0x04, 0x80, + 0xa7, 0x88, 0x8b, 0x81, 0x9f, 0x19, 0x08, 0x82, + 0xb7, 0x00, 0x0a, 0x00, 0x82, 0xb9, 0x39, 0x81, + 0xbf, 0x85, 0xd1, 0x10, 0x8c, 0x06, 0x18, 0x28, + 0x11, 0xb1, 0xbe, 0x8c, 0x80, 0xa1, 0xe4, 0x41, + 0xbc, 0x00, 0x82, 0x8a, 0x82, 0x8c, 0x82, 0x8c, + 0x82, 0x8c, 0x81, 0x8b, 0x27, 0x81, 0x89, 0x01, + 0x01, 0x84, 0xb0, 0x20, 0x89, 0x00, 0x8c, 0x80, + 0x8f, 0x8c, 0xb2, 0xa0, 0x4b, 0x8a, 0x81, 0xf0, + 0x82, 0xfc, 0x80, 0x8e, 0x80, 0xdf, 0x9f, 0xae, + 0x80, 0x41, 0xd4, 0x80, 0xa3, 0x1a, 0x24, 0x80, + 0xdc, 0x85, 0xdc, 0x82, 0x60, 0x6f, 0x15, 0x80, + 0x44, 0xe1, 0x85, 0x41, 0x0d, 0x80, 0xe1, 0x18, + 0x89, 0x00, 0x9b, 0x83, 0xcf, 0x81, 0x8d, 0xa1, + 0xcd, 0x80, 0x96, 0x82, 0xe6, 0x12, 0x0f, 0x02, + 0x03, 0x80, 0x98, 0x0c, 0x80, 0x40, 0x96, 0x81, + 0x99, 0x91, 0x8c, 0x80, 0xa5, 0x87, 0x98, 0x8a, + 0xad, 0x82, 0xaf, 0x01, 0x19, 0x81, 0x90, 0x80, + 0x94, 0x81, 0xc1, 0x29, 0x09, 0x81, 0x8b, 0x07, + 0x80, 0xa2, 0x80, 0x8a, 0x80, 0xb2, 0x00, 0x11, + 0x0c, 0x08, 0x80, 0x9a, 0x80, 0x8d, 0x0c, 0x08, + 0x80, 0xe3, 0x84, 0x88, 0x82, 0xf8, 0x01, 0x03, + 0x80, 0x60, 0x4f, 0x2f, 0x80, 0x40, 0x92, 0x90, + 0x42, 0x3c, 0x8f, 0x10, 0x8b, 0x8f, 0xa1, 0x01, + 0x80, 0x40, 0xa8, 0x06, 0x05, 0x80, 0x8a, 0x80, + 0xa2, 0x00, 0x80, 0xae, 0x80, 0xac, 0x81, 0xc2, + 0x80, 0x94, 0x82, 0x42, 0x00, 0x80, 0x40, 0xe1, + 0x80, 0x40, 0x94, 0x84, 0x44, 0x04, 0x28, 0xa9, + 0x80, 0x88, 0x42, 0x45, 0x10, 0x0c, 0x83, 0xa7, + 0x13, 0x80, 0x40, 0xa4, 0x81, 0x42, 0x3c, 0x83, + 0x41, 0x82, 0x81, 0xcf, 0x82, 0xc5, 0x8a, 0xb0, + 0x83, 0xfa, 0x80, 0xb5, 0x8e, 0xa8, 0x01, 0x81, + 0x89, 0x82, 0xb0, 0x19, 0x09, 0x03, 0x80, 0x89, + 0x80, 0xb1, 0x82, 0xa3, 0x20, 0x87, 0xbd, 0x80, + 0x8b, 0x81, 0xb3, 0x88, 0x89, 0x19, 0x80, 0xde, + 0x11, 0x00, 0x0d, 0x01, 0x80, 0x40, 0x9c, 0x02, + 0x87, 0x94, 0x81, 0xb8, 0x0a, 0x80, 0xa4, 0x32, + 0x84, 0x40, 0xc2, 0x39, 0x10, 0x80, 0x96, 0x80, + 0xd3, 0x28, 0x03, 0x08, 0x81, 0x40, 0xed, 0x1d, + 0x08, 0x81, 0x9a, 0x81, 0xd4, 0x39, 0x00, 0x81, + 0xe9, 0x00, 0x01, 0x28, 0x80, 0xe4, 0x11, 0x18, + 0x84, 0x41, 0x02, 0x88, 0x01, 0x40, 0xff, 0x08, + 0x03, 0x80, 0x40, 0x8f, 0x19, 0x0b, 0x80, 0x9f, + 0x89, 0xa7, 0x29, 0x1f, 0x80, 0x88, 0x29, 0x82, + 0xad, 0x8c, 0x01, 0x41, 0x95, 0x30, 0x28, 0x80, + 0xd1, 0x95, 0x0e, 0x01, 0x01, 0xf9, 0x2a, 0x00, + 0x08, 0x30, 0x80, 0xc7, 0x0a, 0x00, 0x80, 0x41, + 0x5a, 0x81, 0x8a, 0x81, 0xb3, 0x24, 0x00, 0x80, + 0x54, 0xec, 0x90, 0x85, 0x8e, 0x60, 0x36, 0x99, + 0x84, 0xba, 0x86, 0x88, 0x83, 0x44, 0x0a, 0x80, + 0xbe, 0x90, 0xbf, 0x08, 0x81, 0x60, 0x40, 0x0a, + 0x18, 0x30, 0x81, 0x4c, 0x9d, 0x08, 0x83, 0x52, + 0x5b, 0xad, 0x81, 0x96, 0x42, 0x1f, 0x82, 0x88, + 0x8f, 0x0e, 0x9d, 0x83, 0x40, 0x93, 0x82, 0x47, + 0xba, 0xb6, 0x83, 0xb1, 0x38, 0x8d, 0x80, 0x95, + 0x20, 0x8e, 0x45, 0x4f, 0x30, 0x90, 0x0e, 0x01, + 0x04, 0x84, 0xbd, 0xa0, 0x80, 0x40, 0x9f, 0x8d, + 0x41, 0x6f, 0x80, 0xbc, 0x83, 0x41, 0xfa, 0x84, + 0x43, 0xdf, 0x86, 0xec, 0x87, 0x4a, 0xae, 0x84, + 0x6c, 0x0c, 0x00, 0x80, 0x9d, 0xdf, 0xff, 0x40, + 0xef, }; -static const uint8_t unicode_prop_Case_Ignorable_index[66] = { +static const uint8_t unicode_prop_Case_Ignorable_index[69] = { 0xbe, 0x05, 0x00, 0xfe, 0x07, 0x00, 0x52, 0x0a, - 0x20, 0x05, 0x0c, 0x20, 0x3b, 0x0e, 0x40, 0x61, - 0x10, 0x40, 0x0f, 0x18, 0x20, 0x43, 0x1b, 0x60, - 0x79, 0x1d, 0x00, 0xf1, 0x20, 0x00, 0x0d, 0xa6, - 0x40, 0x2e, 0xa9, 0x20, 0xde, 0xaa, 0x00, 0x0f, - 0xff, 0x20, 0xe7, 0x0a, 0x41, 0x82, 0x11, 0x21, - 0xc4, 0x14, 0x61, 0x44, 0x19, 0x01, 0x48, 0x1d, - 0x21, 0xa4, 0xbc, 0x01, 0x3e, 0xe1, 0x01, 0xf0, - 0x01, 0x0e, + 0xa0, 0xc1, 0x0b, 0x00, 0x82, 0x0d, 0x00, 0x3f, + 0x10, 0x80, 0xd4, 0x17, 0x40, 0xcf, 0x1a, 0x20, + 0xf5, 0x1c, 0x00, 0x80, 0x20, 0x00, 0x16, 0xa0, + 0x00, 0xc6, 0xa8, 0x00, 0xc2, 0xaa, 0x60, 0x56, + 0xfe, 0x20, 0xb1, 0x07, 0x01, 0x75, 0x10, 0x01, + 0xeb, 0x12, 0x21, 0x41, 0x16, 0x01, 0x5c, 0x1a, + 0x01, 0x43, 0x1f, 0x01, 0x2e, 0xcf, 0x41, 0x25, + 0xe0, 0x01, 0xf0, 0x01, 0x0e, }; -static const uint8_t unicode_prop_ID_Start_table[1045] = { +static const uint8_t unicode_prop_ID_Start_table[1100] = { 0xc0, 0x99, 0x85, 0x99, 0xae, 0x80, 0x89, 0x03, 0x04, 0x96, 0x80, 0x9e, 0x80, 0x41, 0xc9, 0x83, 0x8b, 0x8d, 0x26, 0x00, 0x80, 0x40, 0x80, 0x20, @@ -301,241 +313,253 @@ static const uint8_t unicode_prop_ID_Start_table[1045] = { 0x89, 0x11, 0x80, 0x8f, 0x00, 0x9d, 0x9c, 0xd8, 0x8a, 0x80, 0x97, 0xa0, 0x88, 0x0b, 0x04, 0x95, 0x18, 0x88, 0x02, 0x80, 0x96, 0x98, 0x86, 0x8a, - 0xb4, 0x94, 0x80, 0x91, 0xbb, 0xb5, 0x10, 0x91, - 0x06, 0x89, 0x8e, 0x8f, 0x1f, 0x09, 0x81, 0x95, - 0x06, 0x00, 0x13, 0x10, 0x8f, 0x80, 0x8c, 0x08, - 0x82, 0x8d, 0x81, 0x89, 0x07, 0x2b, 0x09, 0x95, - 0x06, 0x01, 0x01, 0x01, 0x9e, 0x18, 0x80, 0x92, - 0x82, 0x8f, 0x88, 0x02, 0x80, 0x95, 0x06, 0x01, - 0x04, 0x10, 0x91, 0x80, 0x8e, 0x81, 0x96, 0x80, - 0x8a, 0x39, 0x09, 0x95, 0x06, 0x01, 0x04, 0x10, - 0x9d, 0x08, 0x82, 0x8e, 0x80, 0x90, 0x00, 0x2a, - 0x10, 0x1a, 0x08, 0x00, 0x0a, 0x0a, 0x12, 0x8b, - 0x95, 0x80, 0xb3, 0x38, 0x10, 0x96, 0x80, 0x8f, - 0x10, 0x99, 0x14, 0x81, 0x9d, 0x03, 0x38, 0x10, - 0x96, 0x80, 0x89, 0x04, 0x10, 0x9f, 0x00, 0x81, - 0x8e, 0x81, 0x90, 0x88, 0x02, 0x80, 0xa8, 0x08, - 0x8f, 0x04, 0x17, 0x82, 0x97, 0x2c, 0x91, 0x82, - 0x97, 0x80, 0x88, 0x00, 0x0e, 0xb9, 0xaf, 0x01, - 0x8b, 0x86, 0xb9, 0x08, 0x00, 0x20, 0x97, 0x00, - 0x80, 0x89, 0x01, 0x88, 0x01, 0x20, 0x80, 0x94, - 0x83, 0x9f, 0x80, 0xbe, 0x38, 0xa3, 0x9a, 0x84, - 0xf2, 0xaa, 0x93, 0x80, 0x8f, 0x2b, 0x1a, 0x02, - 0x0e, 0x13, 0x8c, 0x8b, 0x80, 0x90, 0xa5, 0x00, - 0x20, 0x81, 0xaa, 0x80, 0x41, 0x4c, 0x03, 0x0e, - 0x00, 0x03, 0x81, 0xa8, 0x03, 0x81, 0xa0, 0x03, - 0x0e, 0x00, 0x03, 0x81, 0x8e, 0x80, 0xb8, 0x03, - 0x81, 0xc2, 0xa4, 0x8f, 0x8f, 0xd5, 0x0d, 0x82, - 0x42, 0x6b, 0x81, 0x90, 0x80, 0x99, 0x84, 0xca, - 0x82, 0x8a, 0x86, 0x8c, 0x03, 0x8d, 0x91, 0x8d, - 0x91, 0x8d, 0x8c, 0x02, 0x8e, 0xb3, 0xa2, 0x03, - 0x80, 0xc2, 0xd8, 0x86, 0xa8, 0x00, 0x84, 0xc5, - 0x89, 0x9e, 0xb0, 0x9d, 0x0c, 0x8a, 0xab, 0x83, - 0x99, 0xb5, 0x96, 0x88, 0xb4, 0xd1, 0x80, 0xdc, - 0xae, 0x90, 0x86, 0xb6, 0x9d, 0x8c, 0x81, 0x89, - 0xab, 0x99, 0xa3, 0xa8, 0x82, 0x89, 0xa3, 0x81, - 0x88, 0x86, 0xaa, 0x0a, 0xa8, 0x18, 0x28, 0x0a, - 0x04, 0x40, 0xbf, 0xbf, 0x41, 0x15, 0x0d, 0x81, - 0xa5, 0x0d, 0x0f, 0x00, 0x00, 0x00, 0x80, 0x9e, - 0x81, 0xb4, 0x06, 0x00, 0x12, 0x06, 0x13, 0x0d, - 0x83, 0x8c, 0x22, 0x06, 0xf3, 0x80, 0x8c, 0x80, - 0x8f, 0x8c, 0xe4, 0x03, 0x01, 0x89, 0x00, 0x0d, - 0x28, 0x00, 0x00, 0x80, 0x8f, 0x0b, 0x24, 0x18, - 0x90, 0xa8, 0x4a, 0x76, 0xae, 0x80, 0xae, 0x80, - 0x40, 0x84, 0x2b, 0x11, 0x8b, 0xa5, 0x00, 0x20, - 0x81, 0xb7, 0x30, 0x8f, 0x96, 0x88, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x30, 0x30, 0x86, 0x42, 0x25, - 0x82, 0x98, 0x88, 0x34, 0x0c, 0x83, 0xd5, 0x1c, - 0x80, 0xd9, 0x03, 0x84, 0xaa, 0x80, 0xdd, 0x90, - 0x9f, 0xaf, 0x8f, 0x41, 0xff, 0x59, 0xbf, 0xbf, - 0x60, 0x51, 0xfc, 0x82, 0x44, 0x8c, 0xc2, 0xad, - 0x81, 0x41, 0x0c, 0x82, 0x8f, 0x89, 0x81, 0x93, - 0xae, 0x8f, 0x9e, 0x81, 0xcf, 0xa6, 0x88, 0x81, - 0xe6, 0x81, 0xb4, 0x81, 0x88, 0xa9, 0x8c, 0x02, - 0x03, 0x80, 0x96, 0x9c, 0xb3, 0x8d, 0xb1, 0xbd, - 0x2a, 0x00, 0x81, 0x8a, 0x9b, 0x89, 0x96, 0x98, - 0x9c, 0x86, 0xae, 0x9b, 0x80, 0x8f, 0x20, 0x89, - 0x89, 0x20, 0xa8, 0x96, 0x10, 0x87, 0x93, 0x96, - 0x10, 0x82, 0xb1, 0x00, 0x11, 0x0c, 0x08, 0x00, - 0x97, 0x11, 0x8a, 0x32, 0x8b, 0x29, 0x29, 0x85, - 0x88, 0x30, 0x30, 0xaa, 0x80, 0x8d, 0x85, 0xf2, - 0x9c, 0x60, 0x2b, 0xa3, 0x8b, 0x96, 0x83, 0xb0, - 0x60, 0x21, 0x03, 0x41, 0x6d, 0x81, 0xe9, 0xa5, - 0x86, 0x8b, 0x24, 0x00, 0x89, 0x80, 0x8c, 0x04, - 0x00, 0x01, 0x01, 0x80, 0xeb, 0xa0, 0x41, 0x6a, - 0x91, 0xbf, 0x81, 0xb5, 0xa7, 0x8b, 0xf3, 0x20, - 0x40, 0x86, 0xa3, 0x99, 0x85, 0x99, 0x8a, 0xd8, - 0x15, 0x0d, 0x0d, 0x0a, 0xa2, 0x8b, 0x80, 0x99, - 0x80, 0x92, 0x01, 0x80, 0x8e, 0x81, 0x8d, 0xa1, - 0xfa, 0xc4, 0xb4, 0x41, 0x0a, 0x9c, 0x82, 0xb0, - 0xae, 0x9f, 0x8c, 0x9d, 0x84, 0xa5, 0x89, 0x9d, - 0x81, 0xa3, 0x1f, 0x04, 0xa9, 0x40, 0x9d, 0x91, - 0xa3, 0x83, 0xa3, 0x83, 0xa7, 0x87, 0xb3, 0x40, - 0x9b, 0x41, 0x36, 0x88, 0x95, 0x89, 0x87, 0x40, - 0x97, 0x29, 0x00, 0xab, 0x01, 0x10, 0x81, 0x96, - 0x89, 0x96, 0x88, 0x9e, 0xc0, 0x92, 0x01, 0x89, - 0x95, 0x89, 0x99, 0xc5, 0xb7, 0x29, 0xbf, 0x80, - 0x8e, 0x18, 0x10, 0x9c, 0xa9, 0x9c, 0x82, 0x9c, - 0xa2, 0x38, 0x9b, 0x9a, 0xb5, 0x89, 0x95, 0x89, - 0x92, 0x8c, 0x91, 0xed, 0xc8, 0xb6, 0xb2, 0x8c, - 0xb2, 0x8c, 0xa3, 0x41, 0x5b, 0xa9, 0x29, 0xcd, - 0x9c, 0x89, 0x07, 0x95, 0xe9, 0x94, 0x9a, 0x96, - 0x8b, 0xb4, 0xca, 0xac, 0x9f, 0x98, 0x99, 0xa3, - 0x9c, 0x01, 0x07, 0xa2, 0x10, 0x8b, 0xaf, 0x8d, - 0x83, 0x94, 0x00, 0x80, 0xa2, 0x91, 0x80, 0x98, - 0xd3, 0x30, 0x00, 0x18, 0x8e, 0x80, 0x89, 0x86, - 0xae, 0xa5, 0x39, 0x09, 0x95, 0x06, 0x01, 0x04, - 0x10, 0x91, 0x80, 0x8b, 0x84, 0x40, 0x9d, 0xb4, - 0x91, 0x83, 0x93, 0x82, 0x9d, 0xaf, 0x93, 0x08, - 0x80, 0x40, 0xb7, 0xae, 0xa8, 0x83, 0xa3, 0xaf, - 0x93, 0x80, 0xba, 0xaa, 0x8c, 0x80, 0xc6, 0x9a, - 0x40, 0xe4, 0xab, 0xf3, 0xbf, 0x9e, 0x39, 0x01, - 0x38, 0x08, 0x97, 0x8e, 0x00, 0x80, 0xdd, 0x39, - 0xa6, 0x8f, 0x00, 0x80, 0x9b, 0x80, 0x89, 0xa7, - 0x30, 0x94, 0x80, 0x8a, 0xad, 0x92, 0x80, 0xa1, - 0xb8, 0x41, 0x06, 0x88, 0x80, 0xa4, 0x90, 0x80, - 0xb0, 0x9d, 0xef, 0x30, 0x08, 0xa5, 0x94, 0x80, - 0x98, 0x28, 0x08, 0x9f, 0x8d, 0x80, 0x41, 0x46, - 0x92, 0x40, 0xbc, 0x80, 0xce, 0x43, 0x99, 0xe5, - 0xee, 0x90, 0x40, 0xc3, 0x4a, 0xbb, 0x44, 0x2e, - 0x4f, 0xd0, 0x42, 0x46, 0x60, 0x21, 0xb8, 0x42, - 0x38, 0x86, 0x9e, 0xf0, 0x9d, 0x91, 0xaf, 0x8f, - 0x83, 0x9e, 0x94, 0x84, 0x92, 0x42, 0xaf, 0xbf, - 0xff, 0xca, 0x20, 0xc1, 0x8c, 0xbf, 0x08, 0x80, - 0x9b, 0x57, 0xf7, 0x87, 0x44, 0xd5, 0xa9, 0x88, - 0x60, 0x22, 0xf6, 0x41, 0x1e, 0xb0, 0x82, 0x90, - 0x1f, 0x41, 0x8b, 0x49, 0x03, 0xea, 0x84, 0x8c, - 0x82, 0x88, 0x86, 0x89, 0x57, 0x65, 0xd4, 0x80, - 0xc6, 0x01, 0x08, 0x09, 0x0b, 0x80, 0x8b, 0x00, - 0x06, 0x80, 0xc0, 0x03, 0x0f, 0x06, 0x80, 0x9b, - 0x03, 0x04, 0x00, 0x16, 0x80, 0x41, 0x53, 0x81, - 0x98, 0x80, 0x98, 0x80, 0x9e, 0x80, 0x98, 0x80, - 0x9e, 0x80, 0x98, 0x80, 0x9e, 0x80, 0x98, 0x80, - 0x9e, 0x80, 0x98, 0x07, 0x49, 0x33, 0xac, 0x89, - 0x86, 0x8f, 0x80, 0x41, 0x70, 0xab, 0x45, 0x13, - 0x40, 0xc4, 0xba, 0xc3, 0x30, 0x44, 0xb3, 0x18, - 0x9a, 0x01, 0x00, 0x08, 0x80, 0x89, 0x03, 0x00, - 0x00, 0x28, 0x18, 0x00, 0x00, 0x02, 0x01, 0x00, - 0x08, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x0b, - 0x06, 0x03, 0x03, 0x00, 0x80, 0x89, 0x80, 0x90, - 0x22, 0x04, 0x80, 0x90, 0x51, 0x43, 0x60, 0xa6, - 0xdd, 0xa1, 0x50, 0x34, 0x8a, 0x40, 0xdd, 0x81, - 0x56, 0x81, 0x8d, 0x5d, 0x30, 0x4c, 0x1e, 0x42, - 0x1d, 0x45, 0xe1, 0x53, 0x4a, + 0x84, 0x97, 0x05, 0x90, 0xa9, 0xb9, 0xb5, 0x10, + 0x91, 0x06, 0x89, 0x8e, 0x8f, 0x1f, 0x09, 0x81, + 0x95, 0x06, 0x00, 0x13, 0x10, 0x8f, 0x80, 0x8c, + 0x08, 0x82, 0x8d, 0x81, 0x89, 0x07, 0x2b, 0x09, + 0x95, 0x06, 0x01, 0x01, 0x01, 0x9e, 0x18, 0x80, + 0x92, 0x82, 0x8f, 0x88, 0x02, 0x80, 0x95, 0x06, + 0x01, 0x04, 0x10, 0x91, 0x80, 0x8e, 0x81, 0x96, + 0x80, 0x8a, 0x39, 0x09, 0x95, 0x06, 0x01, 0x04, + 0x10, 0x9d, 0x08, 0x82, 0x8e, 0x80, 0x90, 0x00, + 0x2a, 0x10, 0x1a, 0x08, 0x00, 0x0a, 0x0a, 0x12, + 0x8b, 0x95, 0x80, 0xb3, 0x38, 0x10, 0x96, 0x80, + 0x8f, 0x10, 0x99, 0x11, 0x01, 0x81, 0x9d, 0x03, + 0x38, 0x10, 0x96, 0x80, 0x89, 0x04, 0x10, 0x9e, + 0x08, 0x81, 0x8e, 0x81, 0x90, 0x88, 0x02, 0x80, + 0xa8, 0x08, 0x8f, 0x04, 0x17, 0x82, 0x97, 0x2c, + 0x91, 0x82, 0x97, 0x80, 0x88, 0x00, 0x0e, 0xb9, + 0xaf, 0x01, 0x8b, 0x86, 0xb9, 0x08, 0x00, 0x20, + 0x97, 0x00, 0x80, 0x89, 0x01, 0x88, 0x01, 0x20, + 0x80, 0x94, 0x83, 0x9f, 0x80, 0xbe, 0x38, 0xa3, + 0x9a, 0x84, 0xf2, 0xaa, 0x93, 0x80, 0x8f, 0x2b, + 0x1a, 0x02, 0x0e, 0x13, 0x8c, 0x8b, 0x80, 0x90, + 0xa5, 0x00, 0x20, 0x81, 0xaa, 0x80, 0x41, 0x4c, + 0x03, 0x0e, 0x00, 0x03, 0x81, 0xa8, 0x03, 0x81, + 0xa0, 0x03, 0x0e, 0x00, 0x03, 0x81, 0x8e, 0x80, + 0xb8, 0x03, 0x81, 0xc2, 0xa4, 0x8f, 0x8f, 0xd5, + 0x0d, 0x82, 0x42, 0x6b, 0x81, 0x90, 0x80, 0x99, + 0x84, 0xca, 0x82, 0x8a, 0x86, 0x91, 0x8c, 0x92, + 0x8d, 0x91, 0x8d, 0x8c, 0x02, 0x8e, 0xb3, 0xa2, + 0x03, 0x80, 0xc2, 0xd8, 0x86, 0xa8, 0x00, 0x84, + 0xc5, 0x89, 0x9e, 0xb0, 0x9d, 0x0c, 0x8a, 0xab, + 0x83, 0x99, 0xb5, 0x96, 0x88, 0xb4, 0xd1, 0x80, + 0xdc, 0xae, 0x90, 0x87, 0xb5, 0x9d, 0x8c, 0x81, + 0x89, 0xab, 0x99, 0xa3, 0xa8, 0x82, 0x89, 0xa3, + 0x81, 0x88, 0x86, 0xaa, 0x0a, 0xa8, 0x18, 0x28, + 0x0a, 0x04, 0x40, 0xbf, 0xbf, 0x41, 0x15, 0x0d, + 0x81, 0xa5, 0x0d, 0x0f, 0x00, 0x00, 0x00, 0x80, + 0x9e, 0x81, 0xb4, 0x06, 0x00, 0x12, 0x06, 0x13, + 0x0d, 0x83, 0x8c, 0x22, 0x06, 0xf3, 0x80, 0x8c, + 0x80, 0x8f, 0x8c, 0xe4, 0x03, 0x01, 0x89, 0x00, + 0x0d, 0x28, 0x00, 0x00, 0x80, 0x8f, 0x0b, 0x24, + 0x18, 0x90, 0xa8, 0x4a, 0x76, 0x40, 0xe4, 0x2b, + 0x11, 0x8b, 0xa5, 0x00, 0x20, 0x81, 0xb7, 0x30, + 0x8f, 0x96, 0x88, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x86, 0x42, 0x25, 0x82, 0x98, 0x88, + 0x34, 0x0c, 0x83, 0xd5, 0x1c, 0x80, 0xd9, 0x03, + 0x84, 0xaa, 0x80, 0xdd, 0x90, 0x9f, 0xaf, 0x8f, + 0x41, 0xff, 0x59, 0xbf, 0xbf, 0x60, 0x56, 0x8c, + 0xc2, 0xad, 0x81, 0x41, 0x0c, 0x82, 0x8f, 0x89, + 0x81, 0x93, 0xae, 0x8f, 0x9e, 0x81, 0xcf, 0xa6, + 0x88, 0x81, 0xe6, 0x81, 0xbf, 0x21, 0x00, 0x04, + 0x97, 0x8f, 0x02, 0x03, 0x80, 0x96, 0x9c, 0xb3, + 0x8d, 0xb1, 0xbd, 0x2a, 0x00, 0x81, 0x8a, 0x9b, + 0x89, 0x96, 0x98, 0x9c, 0x86, 0xae, 0x9b, 0x80, + 0x8f, 0x20, 0x89, 0x89, 0x20, 0xa8, 0x96, 0x10, + 0x87, 0x93, 0x96, 0x10, 0x82, 0xb1, 0x00, 0x11, + 0x0c, 0x08, 0x00, 0x97, 0x11, 0x8a, 0x32, 0x8b, + 0x29, 0x29, 0x85, 0x88, 0x30, 0x30, 0xaa, 0x80, + 0x8d, 0x85, 0xf2, 0x9c, 0x60, 0x2b, 0xa3, 0x8b, + 0x96, 0x83, 0xb0, 0x60, 0x21, 0x03, 0x41, 0x6d, + 0x81, 0xe9, 0xa5, 0x86, 0x8b, 0x24, 0x00, 0x89, + 0x80, 0x8c, 0x04, 0x00, 0x01, 0x01, 0x80, 0xeb, + 0xa0, 0x41, 0x6a, 0x91, 0xbf, 0x81, 0xb5, 0xa7, + 0x8b, 0xf3, 0x20, 0x40, 0x86, 0xa3, 0x99, 0x85, + 0x99, 0x8a, 0xd8, 0x15, 0x0d, 0x0d, 0x0a, 0xa2, + 0x8b, 0x80, 0x99, 0x80, 0x92, 0x01, 0x80, 0x8e, + 0x81, 0x8d, 0xa1, 0xfa, 0xc4, 0xb4, 0x41, 0x0a, + 0x9c, 0x82, 0xb0, 0xae, 0x9f, 0x8c, 0x9d, 0x84, + 0xa5, 0x89, 0x9d, 0x81, 0xa3, 0x1f, 0x04, 0xa9, + 0x40, 0x9d, 0x91, 0xa3, 0x83, 0xa3, 0x83, 0xa7, + 0x87, 0xb3, 0x8b, 0x8a, 0x80, 0x8e, 0x06, 0x01, + 0x80, 0x8a, 0x80, 0x8e, 0x06, 0x01, 0xc2, 0x41, + 0x36, 0x88, 0x95, 0x89, 0x87, 0x97, 0x28, 0xa9, + 0x80, 0x88, 0xc4, 0x29, 0x00, 0xab, 0x01, 0x10, + 0x81, 0x96, 0x89, 0x96, 0x88, 0x9e, 0xc0, 0x92, + 0x01, 0x89, 0x95, 0x89, 0x99, 0xc5, 0xb7, 0x29, + 0xbf, 0x80, 0x8e, 0x18, 0x10, 0x9c, 0xa9, 0x9c, + 0x82, 0x9c, 0xa2, 0x38, 0x9b, 0x9a, 0xb5, 0x89, + 0x95, 0x89, 0x92, 0x8c, 0x91, 0xed, 0xc8, 0xb6, + 0xb2, 0x8c, 0xb2, 0x8c, 0xa3, 0x41, 0x5b, 0xa9, + 0x29, 0xcd, 0x9c, 0x89, 0x07, 0x95, 0xa9, 0x91, + 0xad, 0x94, 0x9a, 0x96, 0x8b, 0xb4, 0xb8, 0x09, + 0x80, 0x8c, 0xac, 0x9f, 0x98, 0x99, 0xa3, 0x9c, + 0x01, 0x07, 0xa2, 0x10, 0x8b, 0xaf, 0x8d, 0x83, + 0x94, 0x00, 0x80, 0xa2, 0x91, 0x80, 0x98, 0x92, + 0x81, 0xbe, 0x30, 0x00, 0x18, 0x8e, 0x80, 0x89, + 0x86, 0xae, 0xa5, 0x39, 0x09, 0x95, 0x06, 0x01, + 0x04, 0x10, 0x91, 0x80, 0x8b, 0x84, 0x40, 0x9d, + 0xb4, 0x91, 0x83, 0x93, 0x82, 0x9d, 0xaf, 0x93, + 0x08, 0x80, 0x40, 0xb7, 0xae, 0xa8, 0x83, 0xa3, + 0xaf, 0x93, 0x80, 0xba, 0xaa, 0x8c, 0x80, 0xc6, + 0x9a, 0xa4, 0x86, 0x40, 0xb8, 0xab, 0xf3, 0xbf, + 0x9e, 0x39, 0x01, 0x38, 0x08, 0x97, 0x8e, 0x00, + 0x80, 0xdd, 0x39, 0xa6, 0x8f, 0x00, 0x80, 0x9b, + 0x80, 0x89, 0xa7, 0x30, 0x94, 0x80, 0x8a, 0xad, + 0x92, 0x80, 0x91, 0xc8, 0x41, 0x06, 0x88, 0x80, + 0xa4, 0x90, 0x80, 0xb0, 0x9d, 0xef, 0x30, 0x08, + 0xa5, 0x94, 0x80, 0x98, 0x28, 0x08, 0x9f, 0x8d, + 0x80, 0x41, 0x46, 0x92, 0x8e, 0x00, 0x8c, 0x80, + 0xa1, 0xfb, 0x80, 0xce, 0x43, 0x99, 0xe5, 0xee, + 0x90, 0x40, 0xc3, 0x4a, 0x4b, 0xe0, 0x8e, 0x44, + 0x2f, 0x90, 0x85, 0x4f, 0xb8, 0x42, 0x46, 0x60, + 0x21, 0xb8, 0x42, 0x38, 0x86, 0x9e, 0x90, 0xce, + 0x90, 0x9d, 0x91, 0xaf, 0x8f, 0x83, 0x9e, 0x94, + 0x84, 0x92, 0x42, 0xaf, 0xbf, 0xff, 0xca, 0x20, + 0xc1, 0x8c, 0xbf, 0x08, 0x80, 0x9b, 0x57, 0xf7, + 0x87, 0x44, 0xd5, 0xa9, 0x88, 0x60, 0x22, 0xe6, + 0x18, 0x30, 0x08, 0x41, 0x22, 0x8e, 0x80, 0x9c, + 0x11, 0x80, 0x8d, 0x1f, 0x41, 0x8b, 0x49, 0x03, + 0xea, 0x84, 0x8c, 0x82, 0x88, 0x86, 0x89, 0x57, + 0x65, 0xd4, 0x80, 0xc6, 0x01, 0x08, 0x09, 0x0b, + 0x80, 0x8b, 0x00, 0x06, 0x80, 0xc0, 0x03, 0x0f, + 0x06, 0x80, 0x9b, 0x03, 0x04, 0x00, 0x16, 0x80, + 0x41, 0x53, 0x81, 0x98, 0x80, 0x98, 0x80, 0x9e, + 0x80, 0x98, 0x80, 0x9e, 0x80, 0x98, 0x80, 0x9e, + 0x80, 0x98, 0x80, 0x9e, 0x80, 0x98, 0x07, 0x47, + 0x33, 0x9e, 0x2d, 0x41, 0x04, 0xbd, 0x40, 0x91, + 0xac, 0x89, 0x86, 0x8f, 0x80, 0x41, 0x40, 0x9d, + 0x91, 0xab, 0x41, 0xe3, 0x9b, 0x42, 0xf3, 0x30, + 0x18, 0x08, 0x8e, 0x80, 0x40, 0xc4, 0xba, 0xc3, + 0x30, 0x44, 0xb3, 0x18, 0x9a, 0x01, 0x00, 0x08, + 0x80, 0x89, 0x03, 0x00, 0x00, 0x28, 0x18, 0x00, + 0x00, 0x02, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x0b, 0x06, 0x03, 0x03, 0x00, + 0x80, 0x89, 0x80, 0x90, 0x22, 0x04, 0x80, 0x90, + 0x51, 0x43, 0x60, 0xa6, 0xdf, 0x9f, 0x50, 0x39, + 0x85, 0x40, 0xdd, 0x81, 0x56, 0x81, 0x8d, 0x5d, + 0x30, 0x4c, 0x1e, 0x42, 0x1d, 0x45, 0xe1, 0x53, + 0x4a, 0x84, 0x50, 0x5f, }; -static const uint8_t unicode_prop_ID_Start_index[99] = { +static const uint8_t unicode_prop_ID_Start_index[105] = { 0xf6, 0x03, 0x20, 0xa6, 0x07, 0x00, 0xa9, 0x09, - 0x00, 0xb4, 0x0a, 0x00, 0xba, 0x0b, 0x00, 0x3e, - 0x0d, 0x00, 0xe0, 0x0e, 0x20, 0x57, 0x12, 0x00, - 0xeb, 0x16, 0x00, 0xca, 0x19, 0x20, 0xc0, 0x1d, - 0x60, 0x80, 0x20, 0x00, 0x2e, 0x2d, 0x00, 0xc0, - 0x31, 0x20, 0x89, 0xa7, 0x20, 0xf0, 0xa9, 0x00, - 0xe3, 0xab, 0x00, 0x3e, 0xfd, 0x00, 0xfb, 0x00, - 0x21, 0x37, 0x07, 0x61, 0x01, 0x0a, 0x01, 0x1d, - 0x0f, 0x21, 0x2c, 0x12, 0x01, 0xc8, 0x14, 0x21, - 0xd1, 0x19, 0x21, 0x47, 0x1d, 0x01, 0x39, 0x6a, - 0x21, 0x09, 0x8d, 0x01, 0xbc, 0xd4, 0x01, 0xa9, - 0xd7, 0x21, 0x3a, 0xee, 0x01, 0xde, 0xa6, 0x22, - 0x4b, 0x13, 0x03, + 0x20, 0xb1, 0x0a, 0x00, 0xba, 0x0b, 0x20, 0x3b, + 0x0d, 0x20, 0xc7, 0x0e, 0x20, 0x49, 0x12, 0x00, + 0x9b, 0x16, 0x00, 0xac, 0x19, 0x00, 0xc0, 0x1d, + 0x80, 0x80, 0x20, 0x20, 0x70, 0x2d, 0x00, 0x00, + 0x32, 0x00, 0xda, 0xa7, 0x00, 0x4c, 0xaa, 0x20, + 0xc7, 0xd7, 0x20, 0xfc, 0xfd, 0x20, 0x9d, 0x02, + 0x21, 0x96, 0x05, 0x01, 0xf3, 0x08, 0x01, 0xb3, + 0x0c, 0x21, 0x73, 0x11, 0x61, 0x34, 0x13, 0x01, + 0x1b, 0x17, 0x21, 0x8a, 0x1a, 0x01, 0x34, 0x1f, + 0x21, 0xbf, 0x6a, 0x01, 0x23, 0xb1, 0xa1, 0xad, + 0xd4, 0x01, 0x6f, 0xd7, 0x01, 0xff, 0xe7, 0x61, + 0x5e, 0xee, 0x01, 0xe1, 0xeb, 0x22, 0xb0, 0x23, + 0x03, }; -static const uint8_t unicode_prop_ID_Continue1_table[626] = { +static const uint8_t unicode_prop_ID_Continue1_table[660] = { 0xaf, 0x89, 0xa4, 0x80, 0xd6, 0x80, 0x42, 0x47, 0xef, 0x96, 0x80, 0x40, 0xfa, 0x84, 0x41, 0x08, 0xac, 0x00, 0x01, 0x01, 0x00, 0xc7, 0x8a, 0xaf, 0x9e, 0x28, 0xe4, 0x31, 0x29, 0x08, 0x19, 0x89, 0x96, 0x80, 0x9d, 0x9a, 0xda, 0x8a, 0x8e, 0x89, 0xa0, 0x88, 0x88, 0x80, 0x97, 0x18, 0x88, 0x02, - 0x04, 0xaa, 0x82, 0xf6, 0x8e, 0x80, 0xa0, 0xb5, - 0x10, 0x91, 0x06, 0x89, 0x09, 0x89, 0x90, 0x82, - 0xb7, 0x00, 0x31, 0x09, 0x82, 0x88, 0x80, 0x89, - 0x09, 0x89, 0x8d, 0x01, 0x82, 0xb7, 0x00, 0x23, - 0x09, 0x12, 0x80, 0x93, 0x8b, 0x10, 0x8a, 0x82, - 0xb7, 0x00, 0x38, 0x10, 0x82, 0x93, 0x09, 0x89, - 0x89, 0x28, 0x82, 0xb7, 0x00, 0x31, 0x09, 0x16, - 0x82, 0x89, 0x09, 0x89, 0x91, 0x80, 0xba, 0x22, - 0x10, 0x83, 0x88, 0x80, 0x8d, 0x89, 0x8f, 0x84, - 0xb8, 0x30, 0x10, 0x1e, 0x81, 0x8a, 0x09, 0x89, - 0x90, 0x82, 0xb7, 0x00, 0x30, 0x10, 0x1e, 0x81, - 0x8a, 0x09, 0x89, 0x8f, 0x83, 0xb6, 0x08, 0x30, - 0x10, 0x83, 0x88, 0x80, 0x89, 0x09, 0x89, 0x90, - 0x82, 0xc5, 0x03, 0x28, 0x00, 0x3d, 0x89, 0x09, - 0xbc, 0x01, 0x86, 0x8b, 0x38, 0x89, 0xd6, 0x01, - 0x88, 0x8a, 0x29, 0x89, 0xbd, 0x0d, 0x89, 0x8a, - 0x00, 0x00, 0x03, 0x81, 0xb0, 0x93, 0x01, 0x84, - 0x8a, 0x80, 0xa3, 0x88, 0x80, 0xe3, 0x93, 0x80, - 0x89, 0x8b, 0x1b, 0x10, 0x11, 0x32, 0x83, 0x8c, - 0x8b, 0x80, 0x8e, 0x42, 0xbe, 0x82, 0x88, 0x88, - 0x43, 0x9f, 0x82, 0x9c, 0x82, 0x9c, 0x81, 0x9d, - 0x81, 0xbf, 0x9f, 0x88, 0x01, 0x89, 0xa0, 0x11, - 0x89, 0x40, 0x8e, 0x80, 0xf5, 0x8b, 0x83, 0x8b, - 0x89, 0x89, 0xff, 0x8a, 0xbb, 0x84, 0xb8, 0x89, - 0x80, 0x9c, 0x81, 0x8a, 0x85, 0x89, 0x95, 0x8d, - 0x01, 0xbe, 0x84, 0xae, 0x90, 0x8a, 0x89, 0x90, - 0x88, 0x8b, 0x82, 0x9d, 0x8c, 0x81, 0x89, 0xab, - 0x8d, 0xaf, 0x93, 0x87, 0x89, 0x85, 0x89, 0xf5, - 0x10, 0x94, 0x18, 0x28, 0x0a, 0x40, 0xc5, 0xb9, - 0x04, 0x42, 0x3e, 0x81, 0x92, 0x80, 0xfa, 0x8c, - 0x18, 0x82, 0x8b, 0x4b, 0xfd, 0x82, 0x40, 0x8c, - 0x80, 0xdf, 0x9f, 0x42, 0x29, 0x85, 0xe8, 0x81, - 0x60, 0x75, 0x84, 0x89, 0xc4, 0x03, 0x89, 0x9f, - 0x81, 0xcf, 0x81, 0x41, 0x0f, 0x02, 0x03, 0x80, - 0x96, 0x23, 0x80, 0xd2, 0x81, 0xb1, 0x91, 0x89, - 0x89, 0x85, 0x91, 0x8c, 0x8a, 0x9b, 0x87, 0x98, - 0x8c, 0xab, 0x83, 0xae, 0x8d, 0x8e, 0x89, 0x8a, - 0x80, 0x89, 0x89, 0xae, 0x8d, 0x8b, 0x07, 0x09, - 0x89, 0xa0, 0x82, 0xb1, 0x00, 0x11, 0x0c, 0x08, - 0x80, 0xa8, 0x24, 0x81, 0x40, 0xeb, 0x38, 0x09, - 0x89, 0x60, 0x4f, 0x23, 0x80, 0x42, 0xe0, 0x8f, - 0x8f, 0x8f, 0x11, 0x97, 0x82, 0x40, 0xbf, 0x89, - 0xa4, 0x80, 0x42, 0xbc, 0x80, 0x40, 0xe1, 0x80, - 0x40, 0x94, 0x84, 0x41, 0x24, 0x89, 0x45, 0x56, - 0x10, 0x0c, 0x83, 0xa7, 0x13, 0x80, 0x40, 0xa4, - 0x81, 0x42, 0x3c, 0x1f, 0x89, 0x41, 0x70, 0x81, - 0x40, 0x98, 0x8a, 0x40, 0xae, 0x82, 0xb4, 0x8e, - 0x9e, 0x89, 0x8e, 0x83, 0xac, 0x8a, 0xb4, 0x89, + 0x04, 0xaa, 0x82, 0xbb, 0x87, 0xa9, 0x97, 0x80, + 0xa0, 0xb5, 0x10, 0x91, 0x06, 0x89, 0x09, 0x89, + 0x90, 0x82, 0xb7, 0x00, 0x31, 0x09, 0x82, 0x88, + 0x80, 0x89, 0x09, 0x89, 0x8d, 0x01, 0x82, 0xb7, + 0x00, 0x23, 0x09, 0x12, 0x80, 0x93, 0x8b, 0x10, + 0x8a, 0x82, 0xb7, 0x00, 0x38, 0x10, 0x82, 0x93, + 0x09, 0x89, 0x89, 0x28, 0x82, 0xb7, 0x00, 0x31, + 0x09, 0x16, 0x82, 0x89, 0x09, 0x89, 0x91, 0x80, + 0xba, 0x22, 0x10, 0x83, 0x88, 0x80, 0x8d, 0x89, + 0x8f, 0x84, 0xb6, 0x00, 0x30, 0x10, 0x1e, 0x81, + 0x8a, 0x09, 0x89, 0x90, 0x82, 0xb7, 0x00, 0x30, + 0x10, 0x1e, 0x81, 0x8a, 0x09, 0x89, 0x10, 0x8b, + 0x83, 0xb6, 0x08, 0x30, 0x10, 0x83, 0x88, 0x80, + 0x89, 0x09, 0x89, 0x90, 0x82, 0xc5, 0x03, 0x28, + 0x00, 0x3d, 0x89, 0x09, 0xbc, 0x01, 0x86, 0x8b, + 0x38, 0x89, 0xd6, 0x01, 0x88, 0x8a, 0x30, 0x89, + 0xbd, 0x0d, 0x89, 0x8a, 0x00, 0x00, 0x03, 0x81, + 0xb0, 0x93, 0x01, 0x84, 0x8a, 0x80, 0xa3, 0x88, + 0x80, 0xe3, 0x93, 0x80, 0x89, 0x8b, 0x1b, 0x10, + 0x11, 0x32, 0x83, 0x8c, 0x8b, 0x80, 0x8e, 0x42, + 0xbe, 0x82, 0x88, 0x88, 0x43, 0x9f, 0x83, 0x9b, + 0x82, 0x9c, 0x81, 0x9d, 0x81, 0xbf, 0x9f, 0x88, + 0x01, 0x89, 0xa0, 0x10, 0x8a, 0x40, 0x8e, 0x80, + 0xf5, 0x8b, 0x83, 0x8b, 0x89, 0x89, 0xff, 0x8a, + 0xbb, 0x84, 0xb8, 0x89, 0x80, 0x9c, 0x81, 0x8a, + 0x85, 0x89, 0x95, 0x8d, 0x80, 0x8f, 0xb0, 0x84, + 0xae, 0x90, 0x8a, 0x89, 0x90, 0x88, 0x8b, 0x82, + 0x9d, 0x8c, 0x81, 0x89, 0xab, 0x8d, 0xaf, 0x93, + 0x87, 0x89, 0x85, 0x89, 0xf5, 0x10, 0x94, 0x18, + 0x28, 0x0a, 0x40, 0xc5, 0xbf, 0x42, 0x3e, 0x81, + 0x92, 0x80, 0xfa, 0x8c, 0x18, 0x82, 0x8b, 0x4b, + 0xfd, 0x82, 0x40, 0x8c, 0x80, 0xdf, 0x9f, 0x42, + 0x29, 0x85, 0xe8, 0x81, 0x60, 0x75, 0x84, 0x89, + 0xc4, 0x03, 0x89, 0x9f, 0x81, 0xcf, 0x81, 0x41, + 0x0f, 0x02, 0x03, 0x80, 0x96, 0x23, 0x80, 0xd2, + 0x81, 0xb1, 0x91, 0x89, 0x89, 0x85, 0x91, 0x8c, + 0x8a, 0x9b, 0x87, 0x98, 0x8c, 0xab, 0x83, 0xae, + 0x8d, 0x8e, 0x89, 0x8a, 0x80, 0x89, 0x89, 0xae, + 0x8d, 0x8b, 0x07, 0x09, 0x89, 0xa0, 0x82, 0xb1, + 0x00, 0x11, 0x0c, 0x08, 0x80, 0xa8, 0x24, 0x81, + 0x40, 0xeb, 0x38, 0x09, 0x89, 0x60, 0x4f, 0x23, + 0x80, 0x42, 0xe0, 0x8f, 0x8f, 0x8f, 0x11, 0x97, + 0x82, 0x40, 0xbf, 0x89, 0xa4, 0x80, 0x42, 0xbc, + 0x80, 0x40, 0xe1, 0x80, 0x40, 0x94, 0x84, 0x41, + 0x24, 0x89, 0x45, 0x56, 0x10, 0x0c, 0x83, 0xa7, + 0x13, 0x80, 0x40, 0xa4, 0x81, 0x42, 0x3c, 0x1f, + 0x89, 0x41, 0x70, 0x81, 0xcf, 0x82, 0xc5, 0x8a, + 0xb0, 0x83, 0xf9, 0x82, 0xb4, 0x8e, 0x9e, 0x8a, + 0x09, 0x89, 0x83, 0xac, 0x8a, 0x30, 0xac, 0x89, 0x2a, 0xa3, 0x8d, 0x80, 0x89, 0x21, 0xab, 0x80, 0x8b, 0x82, 0xaf, 0x8d, 0x3b, 0x80, 0x8b, 0xd1, - 0x8b, 0x28, 0x40, 0x9f, 0x8b, 0x84, 0x89, 0x2b, - 0xb6, 0x08, 0x31, 0x09, 0x82, 0x88, 0x80, 0x89, - 0x09, 0x32, 0x84, 0x40, 0xbf, 0x91, 0x88, 0x89, - 0x18, 0xd0, 0x93, 0x8b, 0x89, 0x40, 0xd4, 0x31, - 0x88, 0x9a, 0x81, 0xd1, 0x90, 0x8e, 0x89, 0xd0, - 0x8c, 0x87, 0x89, 0xd2, 0x8e, 0x83, 0x89, 0x40, - 0xf1, 0x8e, 0x40, 0xa4, 0x89, 0xc5, 0x28, 0x09, - 0x18, 0x00, 0x81, 0x8b, 0x89, 0xf6, 0x31, 0x32, - 0x80, 0x9b, 0x89, 0xa7, 0x30, 0x1f, 0x80, 0x88, - 0x8a, 0xad, 0x8f, 0x41, 0x94, 0x38, 0x87, 0x8f, - 0x89, 0xb7, 0x95, 0x80, 0x8d, 0xf9, 0x2a, 0x00, - 0x08, 0x30, 0x07, 0x89, 0xaf, 0x20, 0x08, 0x27, - 0x89, 0x41, 0x48, 0x83, 0x60, 0x4b, 0x68, 0x89, - 0x40, 0x85, 0x84, 0xba, 0x86, 0x98, 0x89, 0x43, - 0xf4, 0x00, 0xb6, 0x33, 0xd0, 0x80, 0x8a, 0x81, - 0x60, 0x4c, 0xaa, 0x81, 0x54, 0xc5, 0x22, 0x2f, - 0x39, 0x86, 0x9d, 0x83, 0x40, 0x93, 0x82, 0x45, - 0x88, 0xb1, 0x41, 0xff, 0xb6, 0x83, 0xb1, 0x38, - 0x8d, 0x80, 0x95, 0x20, 0x8e, 0x45, 0x4f, 0x30, - 0x90, 0x0e, 0x01, 0x04, 0x41, 0x04, 0x86, 0x88, - 0x89, 0x41, 0xa1, 0x8d, 0x45, 0xd5, 0x86, 0xec, - 0x34, 0x89, 0x52, 0x95, 0x89, 0x6c, 0x05, 0x05, - 0x40, 0xef, + 0x8b, 0x28, 0x08, 0x40, 0x9c, 0x8b, 0x84, 0x89, + 0x2b, 0xb6, 0x08, 0x31, 0x09, 0x82, 0x88, 0x80, + 0x89, 0x09, 0x32, 0x84, 0x40, 0xbf, 0x91, 0x88, + 0x89, 0x18, 0xd0, 0x93, 0x8b, 0x89, 0x40, 0xd4, + 0x31, 0x88, 0x9a, 0x81, 0xd1, 0x90, 0x8e, 0x89, + 0xd0, 0x8c, 0x87, 0x89, 0xd2, 0x8e, 0x83, 0x89, + 0x40, 0xf1, 0x8e, 0x40, 0xa4, 0x89, 0xc5, 0x28, + 0x09, 0x18, 0x00, 0x81, 0x8b, 0x89, 0xf6, 0x31, + 0x32, 0x80, 0x9b, 0x89, 0xa7, 0x30, 0x1f, 0x80, + 0x88, 0x8a, 0xad, 0x8f, 0x41, 0x94, 0x38, 0x87, + 0x8f, 0x89, 0xb7, 0x95, 0x80, 0x8d, 0xf9, 0x2a, + 0x00, 0x08, 0x30, 0x07, 0x89, 0xaf, 0x20, 0x08, + 0x27, 0x89, 0x41, 0x48, 0x83, 0x88, 0x08, 0x80, + 0xaf, 0x32, 0x84, 0x8c, 0x89, 0x54, 0xe5, 0x05, + 0x8e, 0x60, 0x36, 0x09, 0x89, 0xd5, 0x89, 0xa5, + 0x84, 0xba, 0x86, 0x98, 0x89, 0x43, 0xf4, 0x00, + 0xb6, 0x33, 0xd0, 0x80, 0x8a, 0x81, 0x60, 0x4c, + 0xaa, 0x81, 0x52, 0x60, 0xad, 0x81, 0x96, 0x42, + 0x1d, 0x22, 0x2f, 0x39, 0x86, 0x9d, 0x83, 0x40, + 0x93, 0x82, 0x45, 0x88, 0xb1, 0x41, 0xff, 0xb6, + 0x83, 0xb1, 0x38, 0x8d, 0x80, 0x95, 0x20, 0x8e, + 0x45, 0x4f, 0x30, 0x90, 0x0e, 0x01, 0x04, 0xe3, + 0x80, 0x40, 0x9f, 0x86, 0x88, 0x89, 0x41, 0x63, + 0x80, 0xbc, 0x8d, 0x41, 0xf1, 0x8d, 0x43, 0xd5, + 0x86, 0xec, 0x34, 0x89, 0x52, 0x95, 0x89, 0x6c, + 0x05, 0x05, 0x40, 0xef, }; -static const uint8_t unicode_prop_ID_Continue1_index[60] = { - 0xfa, 0x06, 0x00, 0x84, 0x09, 0x00, 0xf0, 0x0a, - 0x00, 0x70, 0x0c, 0x00, 0xf4, 0x0d, 0x00, 0x4a, - 0x10, 0x20, 0x1a, 0x18, 0x20, 0x74, 0x1b, 0x20, - 0xdd, 0x20, 0x00, 0x0c, 0xa8, 0x00, 0x5a, 0xaa, - 0x20, 0x1a, 0xff, 0x00, 0xad, 0x0e, 0x01, 0x38, - 0x12, 0x21, 0xc1, 0x15, 0x21, 0xe5, 0x19, 0x21, - 0xaa, 0x1d, 0x21, 0x8c, 0xd1, 0x41, 0x4a, 0xe1, - 0x21, 0xf0, 0x01, 0x0e, +static const uint8_t unicode_prop_ID_Continue1_index[63] = { + 0xfa, 0x06, 0x00, 0x70, 0x09, 0x00, 0xf0, 0x0a, + 0x40, 0x57, 0x0c, 0x00, 0xf0, 0x0d, 0x60, 0xc7, + 0x0f, 0x20, 0xea, 0x17, 0x40, 0x05, 0x1b, 0x00, + 0x41, 0x20, 0x00, 0x0c, 0xa8, 0x80, 0x37, 0xaa, + 0x20, 0x50, 0xfe, 0x20, 0x3a, 0x0d, 0x21, 0x74, + 0x11, 0x01, 0x5a, 0x14, 0x21, 0x44, 0x19, 0x81, + 0x5a, 0x1d, 0xa1, 0xf5, 0x6a, 0x21, 0x45, 0xd2, + 0x41, 0xaf, 0xe2, 0x21, 0xf0, 0x01, 0x0e, }; #ifdef CONFIG_ALL_UNICODE -static const uint8_t unicode_cc_table[851] = { +static const uint8_t unicode_cc_table[899] = { 0xb2, 0xcf, 0xd4, 0x00, 0xe8, 0x03, 0xdc, 0x00, 0xe8, 0x00, 0xd8, 0x04, 0xdc, 0x01, 0xca, 0x03, 0xdc, 0x01, 0xca, 0x0a, 0xdc, 0x04, 0x01, 0x03, @@ -559,34 +583,36 @@ static const uint8_t unicode_cc_table[851] = { 0xc0, 0x00, 0xdc, 0xc0, 0x00, 0xdc, 0xc1, 0xb0, 0x6f, 0xc6, 0x00, 0xdc, 0xc0, 0x88, 0x00, 0xdc, 0x97, 0xc3, 0x80, 0xc8, 0x80, 0xc2, 0x80, 0xc4, - 0xaa, 0x02, 0xdc, 0xb0, 0x46, 0x00, 0xdc, 0xcd, - 0x80, 0x00, 0xdc, 0xc1, 0x00, 0xdc, 0xc1, 0x00, - 0xdc, 0xc2, 0x02, 0xdc, 0x42, 0x1b, 0xc2, 0x00, - 0xdc, 0xc1, 0x01, 0xdc, 0xc4, 0xb0, 0x0b, 0x00, - 0x07, 0x8f, 0x00, 0x09, 0x82, 0xc0, 0x00, 0xdc, - 0xc1, 0xb0, 0x36, 0x00, 0x07, 0x8f, 0x00, 0x09, - 0xaf, 0xc0, 0xb0, 0x0c, 0x00, 0x07, 0x8f, 0x00, + 0xaa, 0x02, 0xdc, 0xb0, 0x0b, 0xc0, 0x02, 0xdc, + 0xc3, 0xa9, 0xc4, 0x04, 0xdc, 0xcd, 0x80, 0x00, + 0xdc, 0xc1, 0x00, 0xdc, 0xc1, 0x00, 0xdc, 0xc2, + 0x02, 0xdc, 0x42, 0x1b, 0xc2, 0x00, 0xdc, 0xc1, + 0x01, 0xdc, 0xc4, 0xb0, 0x0b, 0x00, 0x07, 0x8f, + 0x00, 0x09, 0x82, 0xc0, 0x00, 0xdc, 0xc1, 0xb0, + 0x36, 0x00, 0x07, 0x8f, 0x00, 0x09, 0xaf, 0xc0, + 0xb0, 0x0c, 0x00, 0x07, 0x8f, 0x00, 0x09, 0xb0, + 0x3d, 0x00, 0x07, 0x8f, 0x00, 0x09, 0xb0, 0x3d, + 0x00, 0x07, 0x8f, 0x00, 0x09, 0xb0, 0x4e, 0x00, 0x09, 0xb0, 0x3d, 0x00, 0x07, 0x8f, 0x00, 0x09, - 0xb0, 0x3d, 0x00, 0x07, 0x8f, 0x00, 0x09, 0xb0, - 0x4e, 0x00, 0x09, 0xb0, 0x4e, 0x00, 0x09, 0x86, - 0x00, 0x54, 0x00, 0x5b, 0xb0, 0x34, 0x00, 0x07, - 0x8f, 0x00, 0x09, 0xb0, 0x3c, 0x01, 0x09, 0x8f, - 0x00, 0x09, 0xb0, 0x4b, 0x00, 0x09, 0xb0, 0x3c, - 0x01, 0x67, 0x00, 0x09, 0x8c, 0x03, 0x6b, 0xb0, - 0x3b, 0x01, 0x76, 0x00, 0x09, 0x8c, 0x03, 0x7a, - 0xb0, 0x1b, 0x01, 0xdc, 0x9a, 0x00, 0xdc, 0x80, - 0x00, 0xdc, 0x80, 0x00, 0xd8, 0xb0, 0x06, 0x41, - 0x81, 0x80, 0x00, 0x84, 0x84, 0x03, 0x82, 0x81, - 0x00, 0x82, 0x80, 0xc1, 0x00, 0x09, 0x80, 0xc1, - 0xb0, 0x0d, 0x00, 0xdc, 0xb0, 0x3f, 0x00, 0x07, - 0x80, 0x01, 0x09, 0xb0, 0x21, 0x00, 0xdc, 0xb2, - 0x9e, 0xc2, 0xb3, 0x83, 0x00, 0x09, 0x9e, 0x00, - 0x09, 0xb0, 0x6c, 0x00, 0x09, 0x89, 0xc0, 0xb0, - 0x9a, 0x00, 0xe4, 0xb0, 0x5e, 0x00, 0xde, 0xc0, - 0x00, 0xdc, 0xb0, 0xaa, 0xc0, 0x00, 0xdc, 0xb0, - 0x16, 0x00, 0x09, 0x93, 0xc7, 0x81, 0x00, 0xdc, - 0xaf, 0xc4, 0x05, 0xdc, 0xc1, 0x00, 0xdc, 0x80, - 0x01, 0xdc, 0xb0, 0x42, 0x00, 0x07, 0x8e, 0x00, + 0x86, 0x00, 0x54, 0x00, 0x5b, 0xb0, 0x34, 0x00, + 0x07, 0x8f, 0x00, 0x09, 0xb0, 0x3c, 0x01, 0x09, + 0x8f, 0x00, 0x09, 0xb0, 0x4b, 0x00, 0x09, 0xb0, + 0x3c, 0x01, 0x67, 0x00, 0x09, 0x8c, 0x03, 0x6b, + 0xb0, 0x3b, 0x01, 0x76, 0x00, 0x09, 0x8c, 0x03, + 0x7a, 0xb0, 0x1b, 0x01, 0xdc, 0x9a, 0x00, 0xdc, + 0x80, 0x00, 0xdc, 0x80, 0x00, 0xd8, 0xb0, 0x06, + 0x41, 0x81, 0x80, 0x00, 0x84, 0x84, 0x03, 0x82, + 0x81, 0x00, 0x82, 0x80, 0xc1, 0x00, 0x09, 0x80, + 0xc1, 0xb0, 0x0d, 0x00, 0xdc, 0xb0, 0x3f, 0x00, + 0x07, 0x80, 0x01, 0x09, 0xb0, 0x21, 0x00, 0xdc, + 0xb2, 0x9e, 0xc2, 0xb3, 0x83, 0x01, 0x09, 0x9d, + 0x00, 0x09, 0xb0, 0x6c, 0x00, 0x09, 0x89, 0xc0, + 0xb0, 0x9a, 0x00, 0xe4, 0xb0, 0x5e, 0x00, 0xde, + 0xc0, 0x00, 0xdc, 0xb0, 0xaa, 0xc0, 0x00, 0xdc, + 0xb0, 0x16, 0x00, 0x09, 0x93, 0xc7, 0x81, 0x00, + 0xdc, 0xaf, 0xc4, 0x05, 0xdc, 0xc1, 0x00, 0xdc, + 0x80, 0x01, 0xdc, 0xc1, 0x01, 0xdc, 0xc4, 0x00, + 0xdc, 0xc3, 0xb0, 0x34, 0x00, 0x07, 0x8e, 0x00, 0x09, 0xa5, 0xc0, 0x00, 0xdc, 0xc6, 0xb0, 0x05, 0x01, 0x09, 0xb0, 0x09, 0x00, 0x07, 0x8a, 0x01, 0x09, 0xb0, 0x12, 0x00, 0x07, 0xb0, 0x67, 0xc2, @@ -595,71 +621,75 @@ static const uint8_t unicode_cc_table[851] = { 0xc0, 0x82, 0xc1, 0xb0, 0x95, 0xc1, 0x00, 0xdc, 0xc6, 0x00, 0xdc, 0xc1, 0x00, 0xea, 0x00, 0xd6, 0x00, 0xdc, 0x00, 0xca, 0xe4, 0x00, 0xe8, 0x01, - 0xe4, 0x00, 0xdc, 0x80, 0xc0, 0x00, 0xe9, 0x00, - 0xdc, 0xc0, 0x00, 0xdc, 0xb2, 0x9f, 0xc1, 0x01, - 0x01, 0xc3, 0x02, 0x01, 0xc1, 0x83, 0xc0, 0x82, - 0x01, 0x01, 0xc0, 0x00, 0xdc, 0xc0, 0x01, 0x01, - 0x03, 0xdc, 0xc0, 0xb8, 0x03, 0xcd, 0xc2, 0xb0, - 0x5c, 0x00, 0x09, 0xb0, 0x2f, 0xdf, 0xb1, 0xf9, - 0x00, 0xda, 0x00, 0xe4, 0x00, 0xe8, 0x00, 0xde, - 0x01, 0xe0, 0xb0, 0x38, 0x01, 0x08, 0xb8, 0x6d, - 0xa3, 0xc0, 0x83, 0xc9, 0x9f, 0xc1, 0xb0, 0x1f, - 0xc1, 0xb0, 0xe3, 0x00, 0x09, 0xa4, 0x00, 0x09, - 0xb0, 0x66, 0x00, 0x09, 0x9a, 0xd1, 0xb0, 0x08, - 0x02, 0xdc, 0xa4, 0x00, 0x09, 0xb0, 0x2e, 0x00, - 0x07, 0x8b, 0x00, 0x09, 0xb0, 0xbe, 0xc0, 0x80, - 0xc1, 0x00, 0xdc, 0x81, 0xc1, 0x84, 0xc1, 0x80, - 0xc0, 0xb0, 0x03, 0x00, 0x09, 0xb0, 0xc5, 0x00, - 0x09, 0xb8, 0x46, 0xff, 0x00, 0x1a, 0xb2, 0xd0, - 0xc6, 0x06, 0xdc, 0xc1, 0xb3, 0x9c, 0x00, 0xdc, - 0xb0, 0xb1, 0x00, 0xdc, 0xb0, 0x64, 0xc4, 0xb6, - 0x61, 0x00, 0xdc, 0x80, 0xc0, 0xa7, 0xc0, 0x00, - 0x01, 0x00, 0xdc, 0x83, 0x00, 0x09, 0xb0, 0x74, - 0xc0, 0x00, 0xdc, 0xb2, 0x0c, 0xc3, 0xb1, 0x52, - 0xc1, 0xb0, 0x68, 0x01, 0xdc, 0xc2, 0x00, 0xdc, - 0xc0, 0x03, 0xdc, 0xb0, 0xc4, 0x00, 0x09, 0xb0, - 0x07, 0x00, 0x09, 0xb0, 0x08, 0x00, 0x09, 0x00, - 0x07, 0xb0, 0x14, 0xc2, 0xaf, 0x01, 0x09, 0xb0, - 0x0d, 0x00, 0x07, 0xb0, 0x1b, 0x00, 0x09, 0x88, - 0x00, 0x07, 0xb0, 0x39, 0x00, 0x09, 0x00, 0x07, - 0xb0, 0x81, 0x00, 0x07, 0x00, 0x09, 0xb0, 0x1f, - 0x01, 0x07, 0x8f, 0x00, 0x09, 0x97, 0xc6, 0x82, - 0xc4, 0xb0, 0x9c, 0x00, 0x09, 0x82, 0x00, 0x07, - 0x96, 0xc0, 0xb0, 0x32, 0x00, 0x09, 0x00, 0x07, - 0xb0, 0xca, 0x00, 0x09, 0x00, 0x07, 0xb0, 0x4d, - 0x00, 0x09, 0xb0, 0x45, 0x00, 0x09, 0x00, 0x07, - 0xb0, 0x42, 0x00, 0x09, 0xb0, 0xdc, 0x00, 0x09, - 0x00, 0x07, 0xb0, 0xd1, 0x01, 0x09, 0x83, 0x00, - 0x07, 0xb0, 0x6b, 0x00, 0x09, 0xb0, 0x22, 0x00, - 0x09, 0x91, 0x00, 0x09, 0xb0, 0x20, 0x00, 0x09, - 0xb1, 0x74, 0x00, 0x09, 0xb0, 0xd1, 0x00, 0x07, - 0x80, 0x01, 0x09, 0xb0, 0x20, 0x00, 0x09, 0xb8, - 0x45, 0x27, 0x04, 0x01, 0xb0, 0x0a, 0xc6, 0xb4, - 0x88, 0x01, 0x06, 0xb8, 0x44, 0x7b, 0x00, 0x01, - 0xb8, 0x0c, 0x95, 0x01, 0xd8, 0x02, 0x01, 0x82, - 0x00, 0xe2, 0x04, 0xd8, 0x87, 0x07, 0xdc, 0x81, - 0xc4, 0x01, 0xdc, 0x9d, 0xc3, 0xb0, 0x63, 0xc2, - 0xb8, 0x05, 0x8a, 0xc6, 0x80, 0xd0, 0x81, 0xc6, - 0x80, 0xc1, 0x80, 0xc4, 0xb0, 0xd4, 0xc6, 0xb1, - 0x84, 0xc3, 0xb5, 0xaf, 0x06, 0xdc, 0xb0, 0x3c, + 0xe4, 0x00, 0xdc, 0x00, 0xda, 0xc0, 0x00, 0xe9, + 0x00, 0xdc, 0xc0, 0x00, 0xdc, 0xb2, 0x9f, 0xc1, + 0x01, 0x01, 0xc3, 0x02, 0x01, 0xc1, 0x83, 0xc0, + 0x82, 0x01, 0x01, 0xc0, 0x00, 0xdc, 0xc0, 0x01, + 0x01, 0x03, 0xdc, 0xc0, 0xb8, 0x03, 0xcd, 0xc2, + 0xb0, 0x5c, 0x00, 0x09, 0xb0, 0x2f, 0xdf, 0xb1, + 0xf9, 0x00, 0xda, 0x00, 0xe4, 0x00, 0xe8, 0x00, + 0xde, 0x01, 0xe0, 0xb0, 0x38, 0x01, 0x08, 0xb8, + 0x6d, 0xa3, 0xc0, 0x83, 0xc9, 0x9f, 0xc1, 0xb0, + 0x1f, 0xc1, 0xb0, 0xe3, 0x00, 0x09, 0xa4, 0x00, + 0x09, 0xb0, 0x66, 0x00, 0x09, 0x9a, 0xd1, 0xb0, + 0x08, 0x02, 0xdc, 0xa4, 0x00, 0x09, 0xb0, 0x2e, + 0x00, 0x07, 0x8b, 0x00, 0x09, 0xb0, 0xbe, 0xc0, + 0x80, 0xc1, 0x00, 0xdc, 0x81, 0xc1, 0x84, 0xc1, + 0x80, 0xc0, 0xb0, 0x03, 0x00, 0x09, 0xb0, 0xc5, + 0x00, 0x09, 0xb8, 0x46, 0xff, 0x00, 0x1a, 0xb2, + 0xd0, 0xc6, 0x06, 0xdc, 0xc1, 0xb3, 0x9c, 0x00, + 0xdc, 0xb0, 0xb1, 0x00, 0xdc, 0xb0, 0x64, 0xc4, + 0xb6, 0x61, 0x00, 0xdc, 0x80, 0xc0, 0xa7, 0xc0, + 0x00, 0x01, 0x00, 0xdc, 0x83, 0x00, 0x09, 0xb0, + 0x74, 0xc0, 0x00, 0xdc, 0xb2, 0x0c, 0xc3, 0xb1, + 0x52, 0xc1, 0xb0, 0x1f, 0x02, 0xdc, 0xb0, 0x15, + 0x01, 0xdc, 0xc2, 0x00, 0xdc, 0xc0, 0x03, 0xdc, + 0xb0, 0x00, 0xc0, 0x00, 0xdc, 0xc0, 0x00, 0xdc, + 0xb0, 0x8f, 0x00, 0x09, 0xa8, 0x00, 0x09, 0x8d, + 0x00, 0x09, 0xb0, 0x08, 0x00, 0x09, 0x00, 0x07, + 0xb0, 0x14, 0xc2, 0xaf, 0x01, 0x09, 0xb0, 0x0d, + 0x00, 0x07, 0xb0, 0x1b, 0x00, 0x09, 0x88, 0x00, + 0x07, 0xb0, 0x39, 0x00, 0x09, 0x00, 0x07, 0xb0, + 0x81, 0x00, 0x07, 0x00, 0x09, 0xb0, 0x1f, 0x01, + 0x07, 0x8f, 0x00, 0x09, 0x97, 0xc6, 0x82, 0xc4, + 0xb0, 0x9c, 0x00, 0x09, 0x82, 0x00, 0x07, 0x96, + 0xc0, 0xb0, 0x32, 0x00, 0x09, 0x00, 0x07, 0xb0, + 0xca, 0x00, 0x09, 0x00, 0x07, 0xb0, 0x4d, 0x00, + 0x09, 0xb0, 0x45, 0x00, 0x09, 0x00, 0x07, 0xb0, + 0x42, 0x00, 0x09, 0xb0, 0xdc, 0x00, 0x09, 0x00, + 0x07, 0xb0, 0xd1, 0x01, 0x09, 0x83, 0x00, 0x07, + 0xb0, 0x6b, 0x00, 0x09, 0xb0, 0x22, 0x00, 0x09, + 0x91, 0x00, 0x09, 0xb0, 0x20, 0x00, 0x09, 0xb1, + 0x74, 0x00, 0x09, 0xb0, 0xd1, 0x00, 0x07, 0x80, + 0x01, 0x09, 0xb0, 0x20, 0x00, 0x09, 0xb1, 0x78, + 0x01, 0x09, 0xb8, 0x43, 0x7c, 0x04, 0x01, 0xb0, + 0x0a, 0xc6, 0xb4, 0x88, 0x01, 0x06, 0xb8, 0x44, + 0x7b, 0x00, 0x01, 0xb8, 0x0c, 0x95, 0x01, 0xd8, + 0x02, 0x01, 0x82, 0x00, 0xe2, 0x04, 0xd8, 0x87, + 0x07, 0xdc, 0x81, 0xc4, 0x01, 0xdc, 0x9d, 0xc3, + 0xb0, 0x63, 0xc2, 0xb8, 0x05, 0x8a, 0xc6, 0x80, + 0xd0, 0x81, 0xc6, 0x80, 0xc1, 0x80, 0xc4, 0xb0, + 0x33, 0xc0, 0xb0, 0x6f, 0xc6, 0xb1, 0x46, 0xc0, + 0xb0, 0x0c, 0xc3, 0xb1, 0xcb, 0x01, 0xe8, 0x00, + 0xdc, 0xc0, 0xb3, 0xaf, 0x06, 0xdc, 0xb0, 0x3c, 0xc5, 0x00, 0x07, }; -static const uint8_t unicode_cc_index[81] = { +static const uint8_t unicode_cc_index[87] = { 0x4d, 0x03, 0x00, 0x97, 0x05, 0x20, 0xc6, 0x05, - 0x00, 0xe7, 0x06, 0x00, 0x45, 0x07, 0x00, 0xe2, - 0x08, 0x00, 0x53, 0x09, 0x00, 0xcd, 0x0b, 0x20, - 0x38, 0x0e, 0x00, 0x73, 0x0f, 0x20, 0x5d, 0x13, - 0x20, 0x60, 0x1a, 0x20, 0xaa, 0x1b, 0x00, 0xf4, - 0x1c, 0x00, 0xfe, 0x1d, 0x20, 0x7f, 0x2d, 0x20, - 0xf0, 0xa6, 0x00, 0xb2, 0xaa, 0x00, 0xfe, 0x01, - 0x01, 0xab, 0x0e, 0x01, 0x73, 0x11, 0x21, 0x70, - 0x13, 0x01, 0xb8, 0x16, 0x01, 0x9a, 0x1a, 0x01, - 0x9f, 0xbc, 0x01, 0x22, 0xe0, 0x01, 0x4b, 0xe9, - 0x01, + 0x00, 0xe7, 0x06, 0x00, 0x45, 0x07, 0x00, 0x9c, + 0x08, 0x00, 0x4d, 0x09, 0x00, 0x3c, 0x0b, 0x00, + 0x3d, 0x0d, 0x00, 0x36, 0x0f, 0x00, 0x38, 0x10, + 0x20, 0x3a, 0x19, 0x00, 0xcb, 0x1a, 0x20, 0xd3, + 0x1c, 0x00, 0xcf, 0x1d, 0x00, 0xe2, 0x20, 0x00, + 0x2e, 0x30, 0x20, 0x2b, 0xa9, 0x20, 0xed, 0xab, + 0x00, 0x39, 0x0a, 0x01, 0x51, 0x0f, 0x01, 0x73, + 0x11, 0x01, 0x75, 0x13, 0x01, 0x2b, 0x17, 0x21, + 0x3f, 0x1c, 0x21, 0x9e, 0xbc, 0x21, 0x08, 0xe0, + 0x01, 0x44, 0xe9, 0x01, 0x4b, 0xe9, 0x01, }; -static const uint32_t unicode_decomp_table1[690] = { +static const uint32_t unicode_decomp_table1[699] = { 0x00280081, 0x002a0097, 0x002a8081, 0x002bc097, 0x002c8115, 0x002d0097, 0x002d4081, 0x002e0097, 0x002e4115, 0x002f0199, 0x00302016, 0x00400842, @@ -786,56 +816,58 @@ static const uint32_t unicode_decomp_table1[690] = { 0x0cf54119, 0x0cf5c097, 0x0cf6009b, 0x0cf64099, 0x0cf68217, 0x0cf78119, 0x0cf804a1, 0x0cfa4525, 0x0cfcc525, 0x0cff4125, 0x0cffc099, 0x29a70103, - 0x29dc0081, 0x29fe0103, 0x2ad70203, 0x2ada4081, - 0x3e401482, 0x3e4a7f82, 0x3e6a3f82, 0x3e8aa102, - 0x3e9b0110, 0x3e9c2f82, 0x3eb3c590, 0x3ec00197, - 0x3ec0c119, 0x3ec1413f, 0x3ec4c2af, 0x3ec74184, - 0x3ec804ad, 0x3eca4081, 0x3eca8304, 0x3ecc03a0, - 0x3ece02a0, 0x3ecf8084, 0x3ed00120, 0x3ed0c120, - 0x3ed184ae, 0x3ed3c085, 0x3ed4312d, 0x3ef4cbad, - 0x3efa892f, 0x3eff022d, 0x3f002f2f, 0x3f1782a5, - 0x3f18c0b1, 0x3f1907af, 0x3f1cffaf, 0x3f3c81a5, - 0x3f3d64af, 0x3f542031, 0x3f649b31, 0x3f7c0131, - 0x3f7c83b3, 0x3f7e40b1, 0x3f7e80bd, 0x3f7ec0bb, - 0x3f7f00b3, 0x3f840503, 0x3f8c01ad, 0x3f8cc315, - 0x3f8e462d, 0x3f91cc03, 0x3f97c695, 0x3f9c01af, - 0x3f9d0085, 0x3f9d852f, 0x3fa03aad, 0x3fbd442f, - 0x3fc06f1f, 0x3fd7c11f, 0x3fd85fad, 0x3fe80081, - 0x3fe84f1f, 0x3ff0831f, 0x3ff2831f, 0x3ff4831f, - 0x3ff6819f, 0x3ff80783, 0x44268192, 0x442ac092, - 0x444b8112, 0x44d2c112, 0x452ec212, 0x456e8112, - 0x464e0092, 0x74578392, 0x746ec312, 0x75000d1f, - 0x75068d1f, 0x750d0d1f, 0x7513839f, 0x7515891f, - 0x751a0d1f, 0x75208d1f, 0x75271015, 0x752f439f, - 0x7531459f, 0x75340d1f, 0x753a8d1f, 0x75410395, - 0x7543441f, 0x7545839f, 0x75478d1f, 0x754e0795, - 0x7552839f, 0x75548d1f, 0x755b0d1f, 0x75618d1f, - 0x75680d1f, 0x756e8d1f, 0x75750d1f, 0x757b8d1f, - 0x75820d1f, 0x75888d1f, 0x758f0d1f, 0x75958d1f, - 0x759c0d1f, 0x75a28d1f, 0x75a90103, 0x75aa089f, - 0x75ae4081, 0x75ae839f, 0x75b04081, 0x75b08c9f, - 0x75b6c081, 0x75b7032d, 0x75b8889f, 0x75bcc081, - 0x75bd039f, 0x75bec081, 0x75bf0c9f, 0x75c54081, - 0x75c5832d, 0x75c7089f, 0x75cb4081, 0x75cb839f, - 0x75cd4081, 0x75cd8c9f, 0x75d3c081, 0x75d4032d, - 0x75d5889f, 0x75d9c081, 0x75da039f, 0x75dbc081, - 0x75dc0c9f, 0x75e24081, 0x75e2832d, 0x75e4089f, - 0x75e84081, 0x75e8839f, 0x75ea4081, 0x75ea8c9f, - 0x75f0c081, 0x75f1042d, 0x75f3851f, 0x75f6051f, - 0x75f8851f, 0x75fb051f, 0x75fd851f, 0x7b80022d, - 0x7b814dad, 0x7b884203, 0x7b89c081, 0x7b8a452d, - 0x7b8d0403, 0x7b908081, 0x7b91dc03, 0x7ba0052d, - 0x7ba2c8ad, 0x7ba84483, 0x7baac8ad, 0x7c400097, - 0x7c404521, 0x7c440d25, 0x7c4a8087, 0x7c4ac115, - 0x7c4b4117, 0x7c4c0d1f, 0x7c528217, 0x7c538099, - 0x7c53c097, 0x7c5a8197, 0x7c640097, 0x7c80012f, - 0x7c808081, 0x7c841603, 0x7c9004c1, 0x7c940103, - 0x7efc051f, 0xbe0001ac, 0xbe00d110, 0xbe0947ac, - 0xbe0d3910, 0xbe29872c, 0xbe2d022c, 0xbe2e3790, - 0xbe49ff90, 0xbe69bc10, + 0x29dc0081, 0x29fc8195, 0x29fe0103, 0x2ad70203, + 0x2ada4081, 0x3e401482, 0x3e4a7f82, 0x3e6a3f82, + 0x3e8aa102, 0x3e9b0110, 0x3e9c2f82, 0x3eb3c590, + 0x3ec00197, 0x3ec0c119, 0x3ec1413f, 0x3ec4c2af, + 0x3ec74184, 0x3ec804ad, 0x3eca4081, 0x3eca8304, + 0x3ecc03a0, 0x3ece02a0, 0x3ecf8084, 0x3ed00120, + 0x3ed0c120, 0x3ed184ae, 0x3ed3c085, 0x3ed4312d, + 0x3ef4cbad, 0x3efa892f, 0x3eff022d, 0x3f002f2f, + 0x3f1782a5, 0x3f18c0b1, 0x3f1907af, 0x3f1cffaf, + 0x3f3c81a5, 0x3f3d64af, 0x3f542031, 0x3f649b31, + 0x3f7c0131, 0x3f7c83b3, 0x3f7e40b1, 0x3f7e80bd, + 0x3f7ec0bb, 0x3f7f00b3, 0x3f840503, 0x3f8c01ad, + 0x3f8cc315, 0x3f8e462d, 0x3f91cc03, 0x3f97c695, + 0x3f9c01af, 0x3f9d0085, 0x3f9d852f, 0x3fa03aad, + 0x3fbd442f, 0x3fc06f1f, 0x3fd7c11f, 0x3fd85fad, + 0x3fe80081, 0x3fe84f1f, 0x3ff0831f, 0x3ff2831f, + 0x3ff4831f, 0x3ff6819f, 0x3ff80783, 0x41e04d83, + 0x41e70f91, 0x44268192, 0x442ac092, 0x444b8112, + 0x44d2c112, 0x452ec212, 0x456e8112, 0x464e0092, + 0x74578392, 0x746ec312, 0x75000d1f, 0x75068d1f, + 0x750d0d1f, 0x7513839f, 0x7515891f, 0x751a0d1f, + 0x75208d1f, 0x75271015, 0x752f439f, 0x7531459f, + 0x75340d1f, 0x753a8d1f, 0x75410395, 0x7543441f, + 0x7545839f, 0x75478d1f, 0x754e0795, 0x7552839f, + 0x75548d1f, 0x755b0d1f, 0x75618d1f, 0x75680d1f, + 0x756e8d1f, 0x75750d1f, 0x757b8d1f, 0x75820d1f, + 0x75888d1f, 0x758f0d1f, 0x75958d1f, 0x759c0d1f, + 0x75a28d1f, 0x75a90103, 0x75aa089f, 0x75ae4081, + 0x75ae839f, 0x75b04081, 0x75b08c9f, 0x75b6c081, + 0x75b7032d, 0x75b8889f, 0x75bcc081, 0x75bd039f, + 0x75bec081, 0x75bf0c9f, 0x75c54081, 0x75c5832d, + 0x75c7089f, 0x75cb4081, 0x75cb839f, 0x75cd4081, + 0x75cd8c9f, 0x75d3c081, 0x75d4032d, 0x75d5889f, + 0x75d9c081, 0x75da039f, 0x75dbc081, 0x75dc0c9f, + 0x75e24081, 0x75e2832d, 0x75e4089f, 0x75e84081, + 0x75e8839f, 0x75ea4081, 0x75ea8c9f, 0x75f0c081, + 0x75f1042d, 0x75f3851f, 0x75f6051f, 0x75f8851f, + 0x75fb051f, 0x75fd851f, 0x780c049f, 0x780e419f, + 0x780f059f, 0x7811c203, 0x7812d0ad, 0x781b0103, + 0x7b80022d, 0x7b814dad, 0x7b884203, 0x7b89c081, + 0x7b8a452d, 0x7b8d0403, 0x7b908081, 0x7b91dc03, + 0x7ba0052d, 0x7ba2c8ad, 0x7ba84483, 0x7baac8ad, + 0x7c400097, 0x7c404521, 0x7c440d25, 0x7c4a8087, + 0x7c4ac115, 0x7c4b4117, 0x7c4c0d1f, 0x7c528217, + 0x7c538099, 0x7c53c097, 0x7c5a8197, 0x7c640097, + 0x7c80012f, 0x7c808081, 0x7c841603, 0x7c9004c1, + 0x7c940103, 0x7efc051f, 0xbe0001ac, 0xbe00d110, + 0xbe0947ac, 0xbe0d3910, 0xbe29872c, 0xbe2d022c, + 0xbe2e3790, 0xbe49ff90, 0xbe69bc10, }; -static const uint16_t unicode_decomp_table2[690] = { +static const uint16_t unicode_decomp_table2[699] = { 0x0020, 0x0000, 0x0061, 0x0002, 0x0004, 0x0006, 0x03bc, 0x0008, 0x000a, 0x000c, 0x0015, 0x0095, 0x00a5, 0x00b9, 0x00c1, 0x00c3, 0x00c7, 0x00cb, 0x00d1, 0x00d7, 0x00dd, 0x00e0, 0x00e6, 0x00f8, @@ -899,33 +931,34 @@ static const uint16_t unicode_decomp_table2[690] = { 0x10f4, 0x1100, 0x1105, 0x1111, 0x1141, 0x1149, 0x114d, 0x1153, 0x1157, 0x115a, 0x116e, 0x1171, 0x1175, 0x117b, 0x117d, 0x1181, 0x1184, 0x118c, 0x1192, 0x1196, 0x119c, 0x11a2, 0x11a8, 0x11ab, - 0xa76f, 0x11af, 0x11b3, 0x028d, 0x11bb, 0x120d, 0x130b, 0x1409, - 0x148d, 0x1492, 0x1550, 0x1569, 0x156f, 0x1575, 0x157b, 0x1587, - 0x1593, 0x002b, 0x159e, 0x15b6, 0x15ba, 0x15be, 0x15c2, 0x15c6, - 0x15ca, 0x15de, 0x15e2, 0x1646, 0x165f, 0x1685, 0x168b, 0x1749, - 0x174f, 0x1754, 0x1774, 0x1874, 0x187a, 0x190e, 0x19d0, 0x1a74, - 0x1a7c, 0x1a9a, 0x1a9f, 0x1ab3, 0x1abd, 0x1ac3, 0x1ad7, 0x1adc, - 0x1ae2, 0x1af0, 0x1b20, 0x1b2d, 0x1b35, 0x1b39, 0x1b4f, 0x1bc6, - 0x1bd8, 0x1bda, 0x1bdc, 0x3164, 0x1c1d, 0x1c1f, 0x1c21, 0x1c23, - 0x1c25, 0x1c27, 0x1c45, 0x1c53, 0x1c58, 0x1c61, 0x1c6a, 0x1c7c, - 0x1c85, 0x1c8a, 0x1caa, 0x1cc5, 0x1cc7, 0x1cc9, 0x1ccb, 0x1ccd, - 0x1ccf, 0x1cd1, 0x1cd3, 0x1cf3, 0x1cf5, 0x1cf7, 0x1cf9, 0x1cfb, - 0x1d02, 0x1d04, 0x1d06, 0x1d08, 0x1d17, 0x1d19, 0x1d1b, 0x1d1d, - 0x1d1f, 0x1d21, 0x1d23, 0x1d25, 0x1d27, 0x1d29, 0x1d2b, 0x1d2d, - 0x1d2f, 0x1d31, 0x1d33, 0x1d37, 0x03f4, 0x1d39, 0x2207, 0x1d3b, - 0x2202, 0x1d3d, 0x1d45, 0x03f4, 0x1d47, 0x2207, 0x1d49, 0x2202, - 0x1d4b, 0x1d53, 0x03f4, 0x1d55, 0x2207, 0x1d57, 0x2202, 0x1d59, - 0x1d61, 0x03f4, 0x1d63, 0x2207, 0x1d65, 0x2202, 0x1d67, 0x1d6f, - 0x03f4, 0x1d71, 0x2207, 0x1d73, 0x2202, 0x1d75, 0x1d7f, 0x1d81, - 0x1d83, 0x1d85, 0x1d87, 0x1d89, 0x1d8f, 0x1dac, 0x062d, 0x1db4, - 0x1dc0, 0x062c, 0x1dd0, 0x1e40, 0x1e4c, 0x1e5f, 0x1e71, 0x1e84, - 0x1e86, 0x1e8a, 0x1e90, 0x1e96, 0x1e98, 0x1e9c, 0x1e9e, 0x1ea6, - 0x1ea9, 0x1eab, 0x1eb1, 0x1eb3, 0x30b5, 0x1eb9, 0x1f11, 0x1f27, - 0x1f2b, 0x1f2d, 0x1f32, 0x1f7f, 0x1f90, 0x2091, 0x20a1, 0x20a7, - 0x21a1, 0x22bf, + 0xa76f, 0x11af, 0x11b2, 0x11b6, 0x028d, 0x11be, 0x1210, 0x130e, + 0x140c, 0x1490, 0x1495, 0x1553, 0x156c, 0x1572, 0x1578, 0x157e, + 0x158a, 0x1596, 0x002b, 0x15a1, 0x15b9, 0x15bd, 0x15c1, 0x15c5, + 0x15c9, 0x15cd, 0x15e1, 0x15e5, 0x1649, 0x1662, 0x1688, 0x168e, + 0x174c, 0x1752, 0x1757, 0x1777, 0x1877, 0x187d, 0x1911, 0x19d3, + 0x1a77, 0x1a7f, 0x1a9d, 0x1aa2, 0x1ab6, 0x1ac0, 0x1ac6, 0x1ada, + 0x1adf, 0x1ae5, 0x1af3, 0x1b23, 0x1b30, 0x1b38, 0x1b3c, 0x1b52, + 0x1bc9, 0x1bdb, 0x1bdd, 0x1bdf, 0x3164, 0x1c20, 0x1c22, 0x1c24, + 0x1c26, 0x1c28, 0x1c2a, 0x1c48, 0x1c7e, 0x1cc4, 0x1cd2, 0x1cd7, + 0x1ce0, 0x1ce9, 0x1cfb, 0x1d04, 0x1d09, 0x1d29, 0x1d44, 0x1d46, + 0x1d48, 0x1d4a, 0x1d4c, 0x1d4e, 0x1d50, 0x1d52, 0x1d72, 0x1d74, + 0x1d76, 0x1d78, 0x1d7a, 0x1d81, 0x1d83, 0x1d85, 0x1d87, 0x1d96, + 0x1d98, 0x1d9a, 0x1d9c, 0x1d9e, 0x1da0, 0x1da2, 0x1da4, 0x1da6, + 0x1da8, 0x1daa, 0x1dac, 0x1dae, 0x1db0, 0x1db2, 0x1db6, 0x03f4, + 0x1db8, 0x2207, 0x1dba, 0x2202, 0x1dbc, 0x1dc4, 0x03f4, 0x1dc6, + 0x2207, 0x1dc8, 0x2202, 0x1dca, 0x1dd2, 0x03f4, 0x1dd4, 0x2207, + 0x1dd6, 0x2202, 0x1dd8, 0x1de0, 0x03f4, 0x1de2, 0x2207, 0x1de4, + 0x2202, 0x1de6, 0x1dee, 0x03f4, 0x1df0, 0x2207, 0x1df2, 0x2202, + 0x1df4, 0x1dfe, 0x1e00, 0x1e02, 0x1e04, 0x1e06, 0x1e08, 0x1e0a, + 0x1e0c, 0x1e0e, 0x1e16, 0x1e39, 0x1e3d, 0x1e43, 0x1e60, 0x062d, + 0x1e68, 0x1e74, 0x062c, 0x1e84, 0x1ef4, 0x1f00, 0x1f13, 0x1f25, + 0x1f38, 0x1f3a, 0x1f3e, 0x1f44, 0x1f4a, 0x1f4c, 0x1f50, 0x1f52, + 0x1f5a, 0x1f5d, 0x1f5f, 0x1f65, 0x1f67, 0x30b5, 0x1f6d, 0x1fc5, + 0x1fdb, 0x1fdf, 0x1fe1, 0x1fe6, 0x2033, 0x2044, 0x2145, 0x2155, + 0x215b, 0x2255, 0x2373, }; -static const uint8_t unicode_decomp_data[9165] = { +static const uint8_t unicode_decomp_data[9345] = { 0x20, 0x88, 0x20, 0x84, 0x32, 0x33, 0x20, 0x81, 0x20, 0xa7, 0x31, 0x6f, 0x31, 0xd0, 0x34, 0x31, 0xd0, 0x32, 0x33, 0xd0, 0x34, 0x41, 0x80, 0x41, @@ -1491,587 +1524,610 @@ static const uint8_t unicode_decomp_data[9165] = { 0xd1, 0x6d, 0x31, 0x00, 0xe5, 0x65, 0x31, 0x00, 0x30, 0x00, 0xe5, 0x65, 0x32, 0x00, 0x30, 0x00, 0xe5, 0x65, 0x33, 0x00, 0x30, 0x00, 0xe5, 0x65, - 0x67, 0x61, 0x6c, 0x4a, 0x04, 0x4c, 0x04, 0x26, - 0x01, 0x53, 0x01, 0x27, 0xa7, 0x37, 0xab, 0x6b, - 0x02, 0x52, 0xab, 0x48, 0x8c, 0xf4, 0x66, 0xca, - 0x8e, 0xc8, 0x8c, 0xd1, 0x6e, 0x32, 0x4e, 0xe5, - 0x53, 0x9c, 0x9f, 0x9c, 0x9f, 0x51, 0x59, 0xd1, - 0x91, 0x87, 0x55, 0x48, 0x59, 0xf6, 0x61, 0x69, - 0x76, 0x85, 0x7f, 0x3f, 0x86, 0xba, 0x87, 0xf8, - 0x88, 0x8f, 0x90, 0x02, 0x6a, 0x1b, 0x6d, 0xd9, - 0x70, 0xde, 0x73, 0x3d, 0x84, 0x6a, 0x91, 0xf1, - 0x99, 0x82, 0x4e, 0x75, 0x53, 0x04, 0x6b, 0x1b, - 0x72, 0x2d, 0x86, 0x1e, 0x9e, 0x50, 0x5d, 0xeb, - 0x6f, 0xcd, 0x85, 0x64, 0x89, 0xc9, 0x62, 0xd8, - 0x81, 0x1f, 0x88, 0xca, 0x5e, 0x17, 0x67, 0x6a, - 0x6d, 0xfc, 0x72, 0xce, 0x90, 0x86, 0x4f, 0xb7, - 0x51, 0xde, 0x52, 0xc4, 0x64, 0xd3, 0x6a, 0x10, - 0x72, 0xe7, 0x76, 0x01, 0x80, 0x06, 0x86, 0x5c, - 0x86, 0xef, 0x8d, 0x32, 0x97, 0x6f, 0x9b, 0xfa, - 0x9d, 0x8c, 0x78, 0x7f, 0x79, 0xa0, 0x7d, 0xc9, - 0x83, 0x04, 0x93, 0x7f, 0x9e, 0xd6, 0x8a, 0xdf, - 0x58, 0x04, 0x5f, 0x60, 0x7c, 0x7e, 0x80, 0x62, - 0x72, 0xca, 0x78, 0xc2, 0x8c, 0xf7, 0x96, 0xd8, - 0x58, 0x62, 0x5c, 0x13, 0x6a, 0xda, 0x6d, 0x0f, - 0x6f, 0x2f, 0x7d, 0x37, 0x7e, 0x4b, 0x96, 0xd2, - 0x52, 0x8b, 0x80, 0xdc, 0x51, 0xcc, 0x51, 0x1c, - 0x7a, 0xbe, 0x7d, 0xf1, 0x83, 0x75, 0x96, 0x80, - 0x8b, 0xcf, 0x62, 0x02, 0x6a, 0xfe, 0x8a, 0x39, - 0x4e, 0xe7, 0x5b, 0x12, 0x60, 0x87, 0x73, 0x70, - 0x75, 0x17, 0x53, 0xfb, 0x78, 0xbf, 0x4f, 0xa9, - 0x5f, 0x0d, 0x4e, 0xcc, 0x6c, 0x78, 0x65, 0x22, - 0x7d, 0xc3, 0x53, 0x5e, 0x58, 0x01, 0x77, 0x49, - 0x84, 0xaa, 0x8a, 0xba, 0x6b, 0xb0, 0x8f, 0x88, - 0x6c, 0xfe, 0x62, 0xe5, 0x82, 0xa0, 0x63, 0x65, - 0x75, 0xae, 0x4e, 0x69, 0x51, 0xc9, 0x51, 0x81, - 0x68, 0xe7, 0x7c, 0x6f, 0x82, 0xd2, 0x8a, 0xcf, - 0x91, 0xf5, 0x52, 0x42, 0x54, 0x73, 0x59, 0xec, - 0x5e, 0xc5, 0x65, 0xfe, 0x6f, 0x2a, 0x79, 0xad, - 0x95, 0x6a, 0x9a, 0x97, 0x9e, 0xce, 0x9e, 0x9b, - 0x52, 0xc6, 0x66, 0x77, 0x6b, 0x62, 0x8f, 0x74, - 0x5e, 0x90, 0x61, 0x00, 0x62, 0x9a, 0x64, 0x23, - 0x6f, 0x49, 0x71, 0x89, 0x74, 0xca, 0x79, 0xf4, - 0x7d, 0x6f, 0x80, 0x26, 0x8f, 0xee, 0x84, 0x23, - 0x90, 0x4a, 0x93, 0x17, 0x52, 0xa3, 0x52, 0xbd, - 0x54, 0xc8, 0x70, 0xc2, 0x88, 0xaa, 0x8a, 0xc9, - 0x5e, 0xf5, 0x5f, 0x7b, 0x63, 0xae, 0x6b, 0x3e, - 0x7c, 0x75, 0x73, 0xe4, 0x4e, 0xf9, 0x56, 0xe7, - 0x5b, 0xba, 0x5d, 0x1c, 0x60, 0xb2, 0x73, 0x69, - 0x74, 0x9a, 0x7f, 0x46, 0x80, 0x34, 0x92, 0xf6, - 0x96, 0x48, 0x97, 0x18, 0x98, 0x8b, 0x4f, 0xae, - 0x79, 0xb4, 0x91, 0xb8, 0x96, 0xe1, 0x60, 0x86, - 0x4e, 0xda, 0x50, 0xee, 0x5b, 0x3f, 0x5c, 0x99, - 0x65, 0x02, 0x6a, 0xce, 0x71, 0x42, 0x76, 0xfc, - 0x84, 0x7c, 0x90, 0x8d, 0x9f, 0x88, 0x66, 0x2e, - 0x96, 0x89, 0x52, 0x7b, 0x67, 0xf3, 0x67, 0x41, - 0x6d, 0x9c, 0x6e, 0x09, 0x74, 0x59, 0x75, 0x6b, - 0x78, 0x10, 0x7d, 0x5e, 0x98, 0x6d, 0x51, 0x2e, - 0x62, 0x78, 0x96, 0x2b, 0x50, 0x19, 0x5d, 0xea, - 0x6d, 0x2a, 0x8f, 0x8b, 0x5f, 0x44, 0x61, 0x17, - 0x68, 0x87, 0x73, 0x86, 0x96, 0x29, 0x52, 0x0f, - 0x54, 0x65, 0x5c, 0x13, 0x66, 0x4e, 0x67, 0xa8, - 0x68, 0xe5, 0x6c, 0x06, 0x74, 0xe2, 0x75, 0x79, - 0x7f, 0xcf, 0x88, 0xe1, 0x88, 0xcc, 0x91, 0xe2, - 0x96, 0x3f, 0x53, 0xba, 0x6e, 0x1d, 0x54, 0xd0, - 0x71, 0x98, 0x74, 0xfa, 0x85, 0xa3, 0x96, 0x57, - 0x9c, 0x9f, 0x9e, 0x97, 0x67, 0xcb, 0x6d, 0xe8, - 0x81, 0xcb, 0x7a, 0x20, 0x7b, 0x92, 0x7c, 0xc0, - 0x72, 0x99, 0x70, 0x58, 0x8b, 0xc0, 0x4e, 0x36, - 0x83, 0x3a, 0x52, 0x07, 0x52, 0xa6, 0x5e, 0xd3, - 0x62, 0xd6, 0x7c, 0x85, 0x5b, 0x1e, 0x6d, 0xb4, - 0x66, 0x3b, 0x8f, 0x4c, 0x88, 0x4d, 0x96, 0x8b, - 0x89, 0xd3, 0x5e, 0x40, 0x51, 0xc0, 0x55, 0x00, - 0x00, 0x00, 0x00, 0x5a, 0x58, 0x00, 0x00, 0x74, - 0x66, 0x00, 0x00, 0x00, 0x00, 0xde, 0x51, 0x2a, - 0x73, 0xca, 0x76, 0x3c, 0x79, 0x5e, 0x79, 0x65, - 0x79, 0x8f, 0x79, 0x56, 0x97, 0xbe, 0x7c, 0xbd, - 0x7f, 0x00, 0x00, 0x12, 0x86, 0x00, 0x00, 0xf8, - 0x8a, 0x00, 0x00, 0x00, 0x00, 0x38, 0x90, 0xfd, - 0x90, 0xef, 0x98, 0xfc, 0x98, 0x28, 0x99, 0xb4, - 0x9d, 0xde, 0x90, 0xb7, 0x96, 0xae, 0x4f, 0xe7, - 0x50, 0x4d, 0x51, 0xc9, 0x52, 0xe4, 0x52, 0x51, - 0x53, 0x9d, 0x55, 0x06, 0x56, 0x68, 0x56, 0x40, - 0x58, 0xa8, 0x58, 0x64, 0x5c, 0x6e, 0x5c, 0x94, - 0x60, 0x68, 0x61, 0x8e, 0x61, 0xf2, 0x61, 0x4f, - 0x65, 0xe2, 0x65, 0x91, 0x66, 0x85, 0x68, 0x77, - 0x6d, 0x1a, 0x6e, 0x22, 0x6f, 0x6e, 0x71, 0x2b, - 0x72, 0x22, 0x74, 0x91, 0x78, 0x3e, 0x79, 0x49, - 0x79, 0x48, 0x79, 0x50, 0x79, 0x56, 0x79, 0x5d, - 0x79, 0x8d, 0x79, 0x8e, 0x79, 0x40, 0x7a, 0x81, - 0x7a, 0xc0, 0x7b, 0xf4, 0x7d, 0x09, 0x7e, 0x41, - 0x7e, 0x72, 0x7f, 0x05, 0x80, 0xed, 0x81, 0x79, - 0x82, 0x79, 0x82, 0x57, 0x84, 0x10, 0x89, 0x96, - 0x89, 0x01, 0x8b, 0x39, 0x8b, 0xd3, 0x8c, 0x08, - 0x8d, 0xb6, 0x8f, 0x38, 0x90, 0xe3, 0x96, 0xff, - 0x97, 0x3b, 0x98, 0x75, 0x60, 0xee, 0x42, 0x18, - 0x82, 0x02, 0x26, 0x4e, 0xb5, 0x51, 0x68, 0x51, - 0x80, 0x4f, 0x45, 0x51, 0x80, 0x51, 0xc7, 0x52, - 0xfa, 0x52, 0x9d, 0x55, 0x55, 0x55, 0x99, 0x55, - 0xe2, 0x55, 0x5a, 0x58, 0xb3, 0x58, 0x44, 0x59, - 0x54, 0x59, 0x62, 0x5a, 0x28, 0x5b, 0xd2, 0x5e, - 0xd9, 0x5e, 0x69, 0x5f, 0xad, 0x5f, 0xd8, 0x60, - 0x4e, 0x61, 0x08, 0x61, 0x8e, 0x61, 0x60, 0x61, - 0xf2, 0x61, 0x34, 0x62, 0xc4, 0x63, 0x1c, 0x64, - 0x52, 0x64, 0x56, 0x65, 0x74, 0x66, 0x17, 0x67, - 0x1b, 0x67, 0x56, 0x67, 0x79, 0x6b, 0xba, 0x6b, - 0x41, 0x6d, 0xdb, 0x6e, 0xcb, 0x6e, 0x22, 0x6f, - 0x1e, 0x70, 0x6e, 0x71, 0xa7, 0x77, 0x35, 0x72, - 0xaf, 0x72, 0x2a, 0x73, 0x71, 0x74, 0x06, 0x75, - 0x3b, 0x75, 0x1d, 0x76, 0x1f, 0x76, 0xca, 0x76, - 0xdb, 0x76, 0xf4, 0x76, 0x4a, 0x77, 0x40, 0x77, - 0xcc, 0x78, 0xb1, 0x7a, 0xc0, 0x7b, 0x7b, 0x7c, - 0x5b, 0x7d, 0xf4, 0x7d, 0x3e, 0x7f, 0x05, 0x80, - 0x52, 0x83, 0xef, 0x83, 0x79, 0x87, 0x41, 0x89, - 0x86, 0x89, 0x96, 0x89, 0xbf, 0x8a, 0xf8, 0x8a, - 0xcb, 0x8a, 0x01, 0x8b, 0xfe, 0x8a, 0xed, 0x8a, - 0x39, 0x8b, 0x8a, 0x8b, 0x08, 0x8d, 0x38, 0x8f, - 0x72, 0x90, 0x99, 0x91, 0x76, 0x92, 0x7c, 0x96, - 0xe3, 0x96, 0x56, 0x97, 0xdb, 0x97, 0xff, 0x97, - 0x0b, 0x98, 0x3b, 0x98, 0x12, 0x9b, 0x9c, 0x9f, - 0x4a, 0x28, 0x44, 0x28, 0xd5, 0x33, 0x9d, 0x3b, - 0x18, 0x40, 0x39, 0x40, 0x49, 0x52, 0xd0, 0x5c, - 0xd3, 0x7e, 0x43, 0x9f, 0x8e, 0x9f, 0x2a, 0xa0, - 0x02, 0x66, 0x66, 0x66, 0x69, 0x66, 0x6c, 0x66, - 0x66, 0x69, 0x66, 0x66, 0x6c, 0x7f, 0x01, 0x74, - 0x73, 0x00, 0x74, 0x65, 0x05, 0x0f, 0x11, 0x0f, - 0x00, 0x0f, 0x06, 0x19, 0x11, 0x0f, 0x08, 0xd9, - 0x05, 0xb4, 0x05, 0x00, 0x00, 0x00, 0x00, 0xf2, - 0x05, 0xb7, 0x05, 0xd0, 0x05, 0x12, 0x00, 0x03, - 0x04, 0x0b, 0x0c, 0x0d, 0x18, 0x1a, 0xe9, 0x05, - 0xc1, 0x05, 0xe9, 0x05, 0xc2, 0x05, 0x49, 0xfb, - 0xc1, 0x05, 0x49, 0xfb, 0xc2, 0x05, 0xd0, 0x05, - 0xb7, 0x05, 0xd0, 0x05, 0xb8, 0x05, 0xd0, 0x05, - 0xbc, 0x05, 0xd8, 0x05, 0xbc, 0x05, 0xde, 0x05, - 0xbc, 0x05, 0xe0, 0x05, 0xbc, 0x05, 0xe3, 0x05, - 0xbc, 0x05, 0xb9, 0x05, 0x2d, 0x03, 0x2e, 0x03, - 0x2f, 0x03, 0x30, 0x03, 0x31, 0x03, 0x1c, 0x00, - 0x18, 0x06, 0x22, 0x06, 0x2b, 0x06, 0xd0, 0x05, - 0xdc, 0x05, 0x71, 0x06, 0x00, 0x00, 0x0a, 0x0a, - 0x0a, 0x0a, 0x0d, 0x0d, 0x0d, 0x0d, 0x0f, 0x0f, - 0x0f, 0x0f, 0x09, 0x09, 0x09, 0x09, 0x0e, 0x0e, - 0x0e, 0x0e, 0x08, 0x08, 0x08, 0x08, 0x33, 0x33, - 0x33, 0x33, 0x35, 0x35, 0x35, 0x35, 0x13, 0x13, - 0x13, 0x13, 0x12, 0x12, 0x12, 0x12, 0x15, 0x15, - 0x15, 0x15, 0x16, 0x16, 0x16, 0x16, 0x1c, 0x1c, - 0x1b, 0x1b, 0x1d, 0x1d, 0x17, 0x17, 0x27, 0x27, - 0x20, 0x20, 0x38, 0x38, 0x38, 0x38, 0x3e, 0x3e, - 0x3e, 0x3e, 0x42, 0x42, 0x42, 0x42, 0x40, 0x40, - 0x40, 0x40, 0x49, 0x49, 0x4a, 0x4a, 0x4a, 0x4a, - 0x4f, 0x4f, 0x50, 0x50, 0x50, 0x50, 0x4d, 0x4d, - 0x4d, 0x4d, 0x61, 0x61, 0x62, 0x62, 0x49, 0x06, - 0x64, 0x64, 0x64, 0x64, 0x7e, 0x7e, 0x7d, 0x7d, - 0x7f, 0x7f, 0x2e, 0x82, 0x82, 0x7c, 0x7c, 0x80, - 0x80, 0x87, 0x87, 0x87, 0x87, 0x00, 0x00, 0x26, - 0x06, 0x00, 0x01, 0x00, 0x01, 0x00, 0xaf, 0x00, - 0xaf, 0x00, 0x22, 0x00, 0x22, 0x00, 0xa1, 0x00, - 0xa1, 0x00, 0xa0, 0x00, 0xa0, 0x00, 0xa2, 0x00, - 0xa2, 0x00, 0xaa, 0x00, 0xaa, 0x00, 0xaa, 0x00, - 0x23, 0x00, 0x23, 0x00, 0x23, 0xcc, 0x06, 0x00, - 0x00, 0x00, 0x00, 0x26, 0x06, 0x00, 0x06, 0x00, - 0x07, 0x00, 0x1f, 0x00, 0x23, 0x00, 0x24, 0x02, - 0x06, 0x02, 0x07, 0x02, 0x08, 0x02, 0x1f, 0x02, - 0x23, 0x02, 0x24, 0x04, 0x06, 0x04, 0x07, 0x04, - 0x08, 0x04, 0x1f, 0x04, 0x23, 0x04, 0x24, 0x05, - 0x06, 0x05, 0x1f, 0x05, 0x23, 0x05, 0x24, 0x06, - 0x07, 0x06, 0x1f, 0x07, 0x06, 0x07, 0x1f, 0x08, - 0x06, 0x08, 0x07, 0x08, 0x1f, 0x0d, 0x06, 0x0d, + 0x67, 0x61, 0x6c, 0x4a, 0x04, 0x4c, 0x04, 0x43, + 0x46, 0x51, 0x26, 0x01, 0x53, 0x01, 0x27, 0xa7, + 0x37, 0xab, 0x6b, 0x02, 0x52, 0xab, 0x48, 0x8c, + 0xf4, 0x66, 0xca, 0x8e, 0xc8, 0x8c, 0xd1, 0x6e, + 0x32, 0x4e, 0xe5, 0x53, 0x9c, 0x9f, 0x9c, 0x9f, + 0x51, 0x59, 0xd1, 0x91, 0x87, 0x55, 0x48, 0x59, + 0xf6, 0x61, 0x69, 0x76, 0x85, 0x7f, 0x3f, 0x86, + 0xba, 0x87, 0xf8, 0x88, 0x8f, 0x90, 0x02, 0x6a, + 0x1b, 0x6d, 0xd9, 0x70, 0xde, 0x73, 0x3d, 0x84, + 0x6a, 0x91, 0xf1, 0x99, 0x82, 0x4e, 0x75, 0x53, + 0x04, 0x6b, 0x1b, 0x72, 0x2d, 0x86, 0x1e, 0x9e, + 0x50, 0x5d, 0xeb, 0x6f, 0xcd, 0x85, 0x64, 0x89, + 0xc9, 0x62, 0xd8, 0x81, 0x1f, 0x88, 0xca, 0x5e, + 0x17, 0x67, 0x6a, 0x6d, 0xfc, 0x72, 0xce, 0x90, + 0x86, 0x4f, 0xb7, 0x51, 0xde, 0x52, 0xc4, 0x64, + 0xd3, 0x6a, 0x10, 0x72, 0xe7, 0x76, 0x01, 0x80, + 0x06, 0x86, 0x5c, 0x86, 0xef, 0x8d, 0x32, 0x97, + 0x6f, 0x9b, 0xfa, 0x9d, 0x8c, 0x78, 0x7f, 0x79, + 0xa0, 0x7d, 0xc9, 0x83, 0x04, 0x93, 0x7f, 0x9e, + 0xd6, 0x8a, 0xdf, 0x58, 0x04, 0x5f, 0x60, 0x7c, + 0x7e, 0x80, 0x62, 0x72, 0xca, 0x78, 0xc2, 0x8c, + 0xf7, 0x96, 0xd8, 0x58, 0x62, 0x5c, 0x13, 0x6a, + 0xda, 0x6d, 0x0f, 0x6f, 0x2f, 0x7d, 0x37, 0x7e, + 0x4b, 0x96, 0xd2, 0x52, 0x8b, 0x80, 0xdc, 0x51, + 0xcc, 0x51, 0x1c, 0x7a, 0xbe, 0x7d, 0xf1, 0x83, + 0x75, 0x96, 0x80, 0x8b, 0xcf, 0x62, 0x02, 0x6a, + 0xfe, 0x8a, 0x39, 0x4e, 0xe7, 0x5b, 0x12, 0x60, + 0x87, 0x73, 0x70, 0x75, 0x17, 0x53, 0xfb, 0x78, + 0xbf, 0x4f, 0xa9, 0x5f, 0x0d, 0x4e, 0xcc, 0x6c, + 0x78, 0x65, 0x22, 0x7d, 0xc3, 0x53, 0x5e, 0x58, + 0x01, 0x77, 0x49, 0x84, 0xaa, 0x8a, 0xba, 0x6b, + 0xb0, 0x8f, 0x88, 0x6c, 0xfe, 0x62, 0xe5, 0x82, + 0xa0, 0x63, 0x65, 0x75, 0xae, 0x4e, 0x69, 0x51, + 0xc9, 0x51, 0x81, 0x68, 0xe7, 0x7c, 0x6f, 0x82, + 0xd2, 0x8a, 0xcf, 0x91, 0xf5, 0x52, 0x42, 0x54, + 0x73, 0x59, 0xec, 0x5e, 0xc5, 0x65, 0xfe, 0x6f, + 0x2a, 0x79, 0xad, 0x95, 0x6a, 0x9a, 0x97, 0x9e, + 0xce, 0x9e, 0x9b, 0x52, 0xc6, 0x66, 0x77, 0x6b, + 0x62, 0x8f, 0x74, 0x5e, 0x90, 0x61, 0x00, 0x62, + 0x9a, 0x64, 0x23, 0x6f, 0x49, 0x71, 0x89, 0x74, + 0xca, 0x79, 0xf4, 0x7d, 0x6f, 0x80, 0x26, 0x8f, + 0xee, 0x84, 0x23, 0x90, 0x4a, 0x93, 0x17, 0x52, + 0xa3, 0x52, 0xbd, 0x54, 0xc8, 0x70, 0xc2, 0x88, + 0xaa, 0x8a, 0xc9, 0x5e, 0xf5, 0x5f, 0x7b, 0x63, + 0xae, 0x6b, 0x3e, 0x7c, 0x75, 0x73, 0xe4, 0x4e, + 0xf9, 0x56, 0xe7, 0x5b, 0xba, 0x5d, 0x1c, 0x60, + 0xb2, 0x73, 0x69, 0x74, 0x9a, 0x7f, 0x46, 0x80, + 0x34, 0x92, 0xf6, 0x96, 0x48, 0x97, 0x18, 0x98, + 0x8b, 0x4f, 0xae, 0x79, 0xb4, 0x91, 0xb8, 0x96, + 0xe1, 0x60, 0x86, 0x4e, 0xda, 0x50, 0xee, 0x5b, + 0x3f, 0x5c, 0x99, 0x65, 0x02, 0x6a, 0xce, 0x71, + 0x42, 0x76, 0xfc, 0x84, 0x7c, 0x90, 0x8d, 0x9f, + 0x88, 0x66, 0x2e, 0x96, 0x89, 0x52, 0x7b, 0x67, + 0xf3, 0x67, 0x41, 0x6d, 0x9c, 0x6e, 0x09, 0x74, + 0x59, 0x75, 0x6b, 0x78, 0x10, 0x7d, 0x5e, 0x98, + 0x6d, 0x51, 0x2e, 0x62, 0x78, 0x96, 0x2b, 0x50, + 0x19, 0x5d, 0xea, 0x6d, 0x2a, 0x8f, 0x8b, 0x5f, + 0x44, 0x61, 0x17, 0x68, 0x87, 0x73, 0x86, 0x96, + 0x29, 0x52, 0x0f, 0x54, 0x65, 0x5c, 0x13, 0x66, + 0x4e, 0x67, 0xa8, 0x68, 0xe5, 0x6c, 0x06, 0x74, + 0xe2, 0x75, 0x79, 0x7f, 0xcf, 0x88, 0xe1, 0x88, + 0xcc, 0x91, 0xe2, 0x96, 0x3f, 0x53, 0xba, 0x6e, + 0x1d, 0x54, 0xd0, 0x71, 0x98, 0x74, 0xfa, 0x85, + 0xa3, 0x96, 0x57, 0x9c, 0x9f, 0x9e, 0x97, 0x67, + 0xcb, 0x6d, 0xe8, 0x81, 0xcb, 0x7a, 0x20, 0x7b, + 0x92, 0x7c, 0xc0, 0x72, 0x99, 0x70, 0x58, 0x8b, + 0xc0, 0x4e, 0x36, 0x83, 0x3a, 0x52, 0x07, 0x52, + 0xa6, 0x5e, 0xd3, 0x62, 0xd6, 0x7c, 0x85, 0x5b, + 0x1e, 0x6d, 0xb4, 0x66, 0x3b, 0x8f, 0x4c, 0x88, + 0x4d, 0x96, 0x8b, 0x89, 0xd3, 0x5e, 0x40, 0x51, + 0xc0, 0x55, 0x00, 0x00, 0x00, 0x00, 0x5a, 0x58, + 0x00, 0x00, 0x74, 0x66, 0x00, 0x00, 0x00, 0x00, + 0xde, 0x51, 0x2a, 0x73, 0xca, 0x76, 0x3c, 0x79, + 0x5e, 0x79, 0x65, 0x79, 0x8f, 0x79, 0x56, 0x97, + 0xbe, 0x7c, 0xbd, 0x7f, 0x00, 0x00, 0x12, 0x86, + 0x00, 0x00, 0xf8, 0x8a, 0x00, 0x00, 0x00, 0x00, + 0x38, 0x90, 0xfd, 0x90, 0xef, 0x98, 0xfc, 0x98, + 0x28, 0x99, 0xb4, 0x9d, 0xde, 0x90, 0xb7, 0x96, + 0xae, 0x4f, 0xe7, 0x50, 0x4d, 0x51, 0xc9, 0x52, + 0xe4, 0x52, 0x51, 0x53, 0x9d, 0x55, 0x06, 0x56, + 0x68, 0x56, 0x40, 0x58, 0xa8, 0x58, 0x64, 0x5c, + 0x6e, 0x5c, 0x94, 0x60, 0x68, 0x61, 0x8e, 0x61, + 0xf2, 0x61, 0x4f, 0x65, 0xe2, 0x65, 0x91, 0x66, + 0x85, 0x68, 0x77, 0x6d, 0x1a, 0x6e, 0x22, 0x6f, + 0x6e, 0x71, 0x2b, 0x72, 0x22, 0x74, 0x91, 0x78, + 0x3e, 0x79, 0x49, 0x79, 0x48, 0x79, 0x50, 0x79, + 0x56, 0x79, 0x5d, 0x79, 0x8d, 0x79, 0x8e, 0x79, + 0x40, 0x7a, 0x81, 0x7a, 0xc0, 0x7b, 0xf4, 0x7d, + 0x09, 0x7e, 0x41, 0x7e, 0x72, 0x7f, 0x05, 0x80, + 0xed, 0x81, 0x79, 0x82, 0x79, 0x82, 0x57, 0x84, + 0x10, 0x89, 0x96, 0x89, 0x01, 0x8b, 0x39, 0x8b, + 0xd3, 0x8c, 0x08, 0x8d, 0xb6, 0x8f, 0x38, 0x90, + 0xe3, 0x96, 0xff, 0x97, 0x3b, 0x98, 0x75, 0x60, + 0xee, 0x42, 0x18, 0x82, 0x02, 0x26, 0x4e, 0xb5, + 0x51, 0x68, 0x51, 0x80, 0x4f, 0x45, 0x51, 0x80, + 0x51, 0xc7, 0x52, 0xfa, 0x52, 0x9d, 0x55, 0x55, + 0x55, 0x99, 0x55, 0xe2, 0x55, 0x5a, 0x58, 0xb3, + 0x58, 0x44, 0x59, 0x54, 0x59, 0x62, 0x5a, 0x28, + 0x5b, 0xd2, 0x5e, 0xd9, 0x5e, 0x69, 0x5f, 0xad, + 0x5f, 0xd8, 0x60, 0x4e, 0x61, 0x08, 0x61, 0x8e, + 0x61, 0x60, 0x61, 0xf2, 0x61, 0x34, 0x62, 0xc4, + 0x63, 0x1c, 0x64, 0x52, 0x64, 0x56, 0x65, 0x74, + 0x66, 0x17, 0x67, 0x1b, 0x67, 0x56, 0x67, 0x79, + 0x6b, 0xba, 0x6b, 0x41, 0x6d, 0xdb, 0x6e, 0xcb, + 0x6e, 0x22, 0x6f, 0x1e, 0x70, 0x6e, 0x71, 0xa7, + 0x77, 0x35, 0x72, 0xaf, 0x72, 0x2a, 0x73, 0x71, + 0x74, 0x06, 0x75, 0x3b, 0x75, 0x1d, 0x76, 0x1f, + 0x76, 0xca, 0x76, 0xdb, 0x76, 0xf4, 0x76, 0x4a, + 0x77, 0x40, 0x77, 0xcc, 0x78, 0xb1, 0x7a, 0xc0, + 0x7b, 0x7b, 0x7c, 0x5b, 0x7d, 0xf4, 0x7d, 0x3e, + 0x7f, 0x05, 0x80, 0x52, 0x83, 0xef, 0x83, 0x79, + 0x87, 0x41, 0x89, 0x86, 0x89, 0x96, 0x89, 0xbf, + 0x8a, 0xf8, 0x8a, 0xcb, 0x8a, 0x01, 0x8b, 0xfe, + 0x8a, 0xed, 0x8a, 0x39, 0x8b, 0x8a, 0x8b, 0x08, + 0x8d, 0x38, 0x8f, 0x72, 0x90, 0x99, 0x91, 0x76, + 0x92, 0x7c, 0x96, 0xe3, 0x96, 0x56, 0x97, 0xdb, + 0x97, 0xff, 0x97, 0x0b, 0x98, 0x3b, 0x98, 0x12, + 0x9b, 0x9c, 0x9f, 0x4a, 0x28, 0x44, 0x28, 0xd5, + 0x33, 0x9d, 0x3b, 0x18, 0x40, 0x39, 0x40, 0x49, + 0x52, 0xd0, 0x5c, 0xd3, 0x7e, 0x43, 0x9f, 0x8e, + 0x9f, 0x2a, 0xa0, 0x02, 0x66, 0x66, 0x66, 0x69, + 0x66, 0x6c, 0x66, 0x66, 0x69, 0x66, 0x66, 0x6c, + 0x7f, 0x01, 0x74, 0x73, 0x00, 0x74, 0x65, 0x05, + 0x0f, 0x11, 0x0f, 0x00, 0x0f, 0x06, 0x19, 0x11, + 0x0f, 0x08, 0xd9, 0x05, 0xb4, 0x05, 0x00, 0x00, + 0x00, 0x00, 0xf2, 0x05, 0xb7, 0x05, 0xd0, 0x05, + 0x12, 0x00, 0x03, 0x04, 0x0b, 0x0c, 0x0d, 0x18, + 0x1a, 0xe9, 0x05, 0xc1, 0x05, 0xe9, 0x05, 0xc2, + 0x05, 0x49, 0xfb, 0xc1, 0x05, 0x49, 0xfb, 0xc2, + 0x05, 0xd0, 0x05, 0xb7, 0x05, 0xd0, 0x05, 0xb8, + 0x05, 0xd0, 0x05, 0xbc, 0x05, 0xd8, 0x05, 0xbc, + 0x05, 0xde, 0x05, 0xbc, 0x05, 0xe0, 0x05, 0xbc, + 0x05, 0xe3, 0x05, 0xbc, 0x05, 0xb9, 0x05, 0x2d, + 0x03, 0x2e, 0x03, 0x2f, 0x03, 0x30, 0x03, 0x31, + 0x03, 0x1c, 0x00, 0x18, 0x06, 0x22, 0x06, 0x2b, + 0x06, 0xd0, 0x05, 0xdc, 0x05, 0x71, 0x06, 0x00, + 0x00, 0x0a, 0x0a, 0x0a, 0x0a, 0x0d, 0x0d, 0x0d, + 0x0d, 0x0f, 0x0f, 0x0f, 0x0f, 0x09, 0x09, 0x09, + 0x09, 0x0e, 0x0e, 0x0e, 0x0e, 0x08, 0x08, 0x08, + 0x08, 0x33, 0x33, 0x33, 0x33, 0x35, 0x35, 0x35, + 0x35, 0x13, 0x13, 0x13, 0x13, 0x12, 0x12, 0x12, + 0x12, 0x15, 0x15, 0x15, 0x15, 0x16, 0x16, 0x16, + 0x16, 0x1c, 0x1c, 0x1b, 0x1b, 0x1d, 0x1d, 0x17, + 0x17, 0x27, 0x27, 0x20, 0x20, 0x38, 0x38, 0x38, + 0x38, 0x3e, 0x3e, 0x3e, 0x3e, 0x42, 0x42, 0x42, + 0x42, 0x40, 0x40, 0x40, 0x40, 0x49, 0x49, 0x4a, + 0x4a, 0x4a, 0x4a, 0x4f, 0x4f, 0x50, 0x50, 0x50, + 0x50, 0x4d, 0x4d, 0x4d, 0x4d, 0x61, 0x61, 0x62, + 0x62, 0x49, 0x06, 0x64, 0x64, 0x64, 0x64, 0x7e, + 0x7e, 0x7d, 0x7d, 0x7f, 0x7f, 0x2e, 0x82, 0x82, + 0x7c, 0x7c, 0x80, 0x80, 0x87, 0x87, 0x87, 0x87, + 0x00, 0x00, 0x26, 0x06, 0x00, 0x01, 0x00, 0x01, + 0x00, 0xaf, 0x00, 0xaf, 0x00, 0x22, 0x00, 0x22, + 0x00, 0xa1, 0x00, 0xa1, 0x00, 0xa0, 0x00, 0xa0, + 0x00, 0xa2, 0x00, 0xa2, 0x00, 0xaa, 0x00, 0xaa, + 0x00, 0xaa, 0x00, 0x23, 0x00, 0x23, 0x00, 0x23, + 0xcc, 0x06, 0x00, 0x00, 0x00, 0x00, 0x26, 0x06, + 0x00, 0x06, 0x00, 0x07, 0x00, 0x1f, 0x00, 0x23, + 0x00, 0x24, 0x02, 0x06, 0x02, 0x07, 0x02, 0x08, + 0x02, 0x1f, 0x02, 0x23, 0x02, 0x24, 0x04, 0x06, + 0x04, 0x07, 0x04, 0x08, 0x04, 0x1f, 0x04, 0x23, + 0x04, 0x24, 0x05, 0x06, 0x05, 0x1f, 0x05, 0x23, + 0x05, 0x24, 0x06, 0x07, 0x06, 0x1f, 0x07, 0x06, + 0x07, 0x1f, 0x08, 0x06, 0x08, 0x07, 0x08, 0x1f, + 0x0d, 0x06, 0x0d, 0x07, 0x0d, 0x08, 0x0d, 0x1f, + 0x0f, 0x07, 0x0f, 0x1f, 0x10, 0x06, 0x10, 0x07, + 0x10, 0x08, 0x10, 0x1f, 0x11, 0x07, 0x11, 0x1f, + 0x12, 0x1f, 0x13, 0x06, 0x13, 0x1f, 0x14, 0x06, + 0x14, 0x1f, 0x1b, 0x06, 0x1b, 0x07, 0x1b, 0x08, + 0x1b, 0x1f, 0x1b, 0x23, 0x1b, 0x24, 0x1c, 0x07, + 0x1c, 0x1f, 0x1c, 0x23, 0x1c, 0x24, 0x1d, 0x01, + 0x1d, 0x06, 0x1d, 0x07, 0x1d, 0x08, 0x1d, 0x1e, + 0x1d, 0x1f, 0x1d, 0x23, 0x1d, 0x24, 0x1e, 0x06, + 0x1e, 0x07, 0x1e, 0x08, 0x1e, 0x1f, 0x1e, 0x23, + 0x1e, 0x24, 0x1f, 0x06, 0x1f, 0x07, 0x1f, 0x08, + 0x1f, 0x1f, 0x1f, 0x23, 0x1f, 0x24, 0x20, 0x06, + 0x20, 0x07, 0x20, 0x08, 0x20, 0x1f, 0x20, 0x23, + 0x20, 0x24, 0x21, 0x06, 0x21, 0x1f, 0x21, 0x23, + 0x21, 0x24, 0x24, 0x06, 0x24, 0x07, 0x24, 0x08, + 0x24, 0x1f, 0x24, 0x23, 0x24, 0x24, 0x0a, 0x4a, + 0x0b, 0x4a, 0x23, 0x4a, 0x20, 0x00, 0x4c, 0x06, + 0x51, 0x06, 0x51, 0x06, 0xff, 0x00, 0x1f, 0x26, + 0x06, 0x00, 0x0b, 0x00, 0x0c, 0x00, 0x1f, 0x00, + 0x20, 0x00, 0x23, 0x00, 0x24, 0x02, 0x0b, 0x02, + 0x0c, 0x02, 0x1f, 0x02, 0x20, 0x02, 0x23, 0x02, + 0x24, 0x04, 0x0b, 0x04, 0x0c, 0x04, 0x1f, 0x26, + 0x06, 0x04, 0x20, 0x04, 0x23, 0x04, 0x24, 0x05, + 0x0b, 0x05, 0x0c, 0x05, 0x1f, 0x05, 0x20, 0x05, + 0x23, 0x05, 0x24, 0x1b, 0x23, 0x1b, 0x24, 0x1c, + 0x23, 0x1c, 0x24, 0x1d, 0x01, 0x1d, 0x1e, 0x1d, + 0x1f, 0x1d, 0x23, 0x1d, 0x24, 0x1e, 0x1f, 0x1e, + 0x23, 0x1e, 0x24, 0x1f, 0x01, 0x1f, 0x1f, 0x20, + 0x0b, 0x20, 0x0c, 0x20, 0x1f, 0x20, 0x20, 0x20, + 0x23, 0x20, 0x24, 0x23, 0x4a, 0x24, 0x0b, 0x24, + 0x0c, 0x24, 0x1f, 0x24, 0x20, 0x24, 0x23, 0x24, + 0x24, 0x00, 0x06, 0x00, 0x07, 0x00, 0x08, 0x00, + 0x1f, 0x00, 0x21, 0x02, 0x06, 0x02, 0x07, 0x02, + 0x08, 0x02, 0x1f, 0x02, 0x21, 0x04, 0x06, 0x04, + 0x07, 0x04, 0x08, 0x04, 0x1f, 0x04, 0x21, 0x05, + 0x1f, 0x06, 0x07, 0x06, 0x1f, 0x07, 0x06, 0x07, + 0x1f, 0x08, 0x06, 0x08, 0x1f, 0x0d, 0x06, 0x0d, 0x07, 0x0d, 0x08, 0x0d, 0x1f, 0x0f, 0x07, 0x0f, - 0x1f, 0x10, 0x06, 0x10, 0x07, 0x10, 0x08, 0x10, - 0x1f, 0x11, 0x07, 0x11, 0x1f, 0x12, 0x1f, 0x13, + 0x08, 0x0f, 0x1f, 0x10, 0x06, 0x10, 0x07, 0x10, + 0x08, 0x10, 0x1f, 0x11, 0x07, 0x12, 0x1f, 0x13, 0x06, 0x13, 0x1f, 0x14, 0x06, 0x14, 0x1f, 0x1b, - 0x06, 0x1b, 0x07, 0x1b, 0x08, 0x1b, 0x1f, 0x1b, - 0x23, 0x1b, 0x24, 0x1c, 0x07, 0x1c, 0x1f, 0x1c, - 0x23, 0x1c, 0x24, 0x1d, 0x01, 0x1d, 0x06, 0x1d, - 0x07, 0x1d, 0x08, 0x1d, 0x1e, 0x1d, 0x1f, 0x1d, - 0x23, 0x1d, 0x24, 0x1e, 0x06, 0x1e, 0x07, 0x1e, - 0x08, 0x1e, 0x1f, 0x1e, 0x23, 0x1e, 0x24, 0x1f, - 0x06, 0x1f, 0x07, 0x1f, 0x08, 0x1f, 0x1f, 0x1f, - 0x23, 0x1f, 0x24, 0x20, 0x06, 0x20, 0x07, 0x20, - 0x08, 0x20, 0x1f, 0x20, 0x23, 0x20, 0x24, 0x21, - 0x06, 0x21, 0x1f, 0x21, 0x23, 0x21, 0x24, 0x24, + 0x06, 0x1b, 0x07, 0x1b, 0x08, 0x1b, 0x1f, 0x1c, + 0x07, 0x1c, 0x1f, 0x1d, 0x06, 0x1d, 0x07, 0x1d, + 0x08, 0x1d, 0x1e, 0x1d, 0x1f, 0x1e, 0x06, 0x1e, + 0x07, 0x1e, 0x08, 0x1e, 0x1f, 0x1e, 0x21, 0x1f, + 0x06, 0x1f, 0x07, 0x1f, 0x08, 0x1f, 0x1f, 0x20, + 0x06, 0x20, 0x07, 0x20, 0x08, 0x20, 0x1f, 0x20, + 0x21, 0x21, 0x06, 0x21, 0x1f, 0x21, 0x4a, 0x24, 0x06, 0x24, 0x07, 0x24, 0x08, 0x24, 0x1f, 0x24, - 0x23, 0x24, 0x24, 0x0a, 0x4a, 0x0b, 0x4a, 0x23, - 0x4a, 0x20, 0x00, 0x4c, 0x06, 0x51, 0x06, 0x51, - 0x06, 0xff, 0x00, 0x1f, 0x26, 0x06, 0x00, 0x0b, - 0x00, 0x0c, 0x00, 0x1f, 0x00, 0x20, 0x00, 0x23, - 0x00, 0x24, 0x02, 0x0b, 0x02, 0x0c, 0x02, 0x1f, - 0x02, 0x20, 0x02, 0x23, 0x02, 0x24, 0x04, 0x0b, - 0x04, 0x0c, 0x04, 0x1f, 0x26, 0x06, 0x04, 0x20, - 0x04, 0x23, 0x04, 0x24, 0x05, 0x0b, 0x05, 0x0c, - 0x05, 0x1f, 0x05, 0x20, 0x05, 0x23, 0x05, 0x24, - 0x1b, 0x23, 0x1b, 0x24, 0x1c, 0x23, 0x1c, 0x24, - 0x1d, 0x01, 0x1d, 0x1e, 0x1d, 0x1f, 0x1d, 0x23, - 0x1d, 0x24, 0x1e, 0x1f, 0x1e, 0x23, 0x1e, 0x24, - 0x1f, 0x01, 0x1f, 0x1f, 0x20, 0x0b, 0x20, 0x0c, - 0x20, 0x1f, 0x20, 0x20, 0x20, 0x23, 0x20, 0x24, - 0x23, 0x4a, 0x24, 0x0b, 0x24, 0x0c, 0x24, 0x1f, - 0x24, 0x20, 0x24, 0x23, 0x24, 0x24, 0x00, 0x06, - 0x00, 0x07, 0x00, 0x08, 0x00, 0x1f, 0x00, 0x21, - 0x02, 0x06, 0x02, 0x07, 0x02, 0x08, 0x02, 0x1f, - 0x02, 0x21, 0x04, 0x06, 0x04, 0x07, 0x04, 0x08, - 0x04, 0x1f, 0x04, 0x21, 0x05, 0x1f, 0x06, 0x07, - 0x06, 0x1f, 0x07, 0x06, 0x07, 0x1f, 0x08, 0x06, - 0x08, 0x1f, 0x0d, 0x06, 0x0d, 0x07, 0x0d, 0x08, - 0x0d, 0x1f, 0x0f, 0x07, 0x0f, 0x08, 0x0f, 0x1f, - 0x10, 0x06, 0x10, 0x07, 0x10, 0x08, 0x10, 0x1f, - 0x11, 0x07, 0x12, 0x1f, 0x13, 0x06, 0x13, 0x1f, - 0x14, 0x06, 0x14, 0x1f, 0x1b, 0x06, 0x1b, 0x07, - 0x1b, 0x08, 0x1b, 0x1f, 0x1c, 0x07, 0x1c, 0x1f, - 0x1d, 0x06, 0x1d, 0x07, 0x1d, 0x08, 0x1d, 0x1e, - 0x1d, 0x1f, 0x1e, 0x06, 0x1e, 0x07, 0x1e, 0x08, - 0x1e, 0x1f, 0x1e, 0x21, 0x1f, 0x06, 0x1f, 0x07, - 0x1f, 0x08, 0x1f, 0x1f, 0x20, 0x06, 0x20, 0x07, - 0x20, 0x08, 0x20, 0x1f, 0x20, 0x21, 0x21, 0x06, - 0x21, 0x1f, 0x21, 0x4a, 0x24, 0x06, 0x24, 0x07, - 0x24, 0x08, 0x24, 0x1f, 0x24, 0x21, 0x00, 0x1f, - 0x00, 0x21, 0x02, 0x1f, 0x02, 0x21, 0x04, 0x1f, - 0x04, 0x21, 0x05, 0x1f, 0x05, 0x21, 0x0d, 0x1f, - 0x0d, 0x21, 0x0e, 0x1f, 0x0e, 0x21, 0x1d, 0x1e, - 0x1d, 0x1f, 0x1e, 0x1f, 0x20, 0x1f, 0x20, 0x21, - 0x24, 0x1f, 0x24, 0x21, 0x40, 0x06, 0x4e, 0x06, - 0x51, 0x06, 0x27, 0x06, 0x10, 0x22, 0x10, 0x23, - 0x12, 0x22, 0x12, 0x23, 0x13, 0x22, 0x13, 0x23, - 0x0c, 0x22, 0x0c, 0x23, 0x0d, 0x22, 0x0d, 0x23, - 0x06, 0x22, 0x06, 0x23, 0x05, 0x22, 0x05, 0x23, - 0x07, 0x22, 0x07, 0x23, 0x0e, 0x22, 0x0e, 0x23, - 0x0f, 0x22, 0x0f, 0x23, 0x0d, 0x05, 0x0d, 0x06, - 0x0d, 0x07, 0x0d, 0x1e, 0x0d, 0x0a, 0x0c, 0x0a, - 0x0e, 0x0a, 0x0f, 0x0a, 0x10, 0x22, 0x10, 0x23, - 0x12, 0x22, 0x12, 0x23, 0x13, 0x22, 0x13, 0x23, - 0x0c, 0x22, 0x0c, 0x23, 0x0d, 0x22, 0x0d, 0x23, - 0x06, 0x22, 0x06, 0x23, 0x05, 0x22, 0x05, 0x23, - 0x07, 0x22, 0x07, 0x23, 0x0e, 0x22, 0x0e, 0x23, - 0x0f, 0x22, 0x0f, 0x23, 0x0d, 0x05, 0x0d, 0x06, - 0x0d, 0x07, 0x0d, 0x1e, 0x0d, 0x0a, 0x0c, 0x0a, - 0x0e, 0x0a, 0x0f, 0x0a, 0x0d, 0x05, 0x0d, 0x06, - 0x0d, 0x07, 0x0d, 0x1e, 0x0c, 0x20, 0x0d, 0x20, - 0x10, 0x1e, 0x0c, 0x05, 0x0c, 0x06, 0x0c, 0x07, - 0x0d, 0x05, 0x0d, 0x06, 0x0d, 0x07, 0x10, 0x1e, - 0x11, 0x1e, 0x00, 0x24, 0x00, 0x24, 0x2a, 0x06, - 0x00, 0x02, 0x1b, 0x00, 0x03, 0x02, 0x00, 0x03, - 0x02, 0x00, 0x03, 0x1b, 0x00, 0x04, 0x1b, 0x00, - 0x1b, 0x02, 0x00, 0x1b, 0x03, 0x00, 0x1b, 0x04, - 0x02, 0x1b, 0x03, 0x02, 0x1b, 0x03, 0x03, 0x1b, - 0x20, 0x03, 0x1b, 0x1f, 0x09, 0x03, 0x02, 0x09, - 0x02, 0x03, 0x09, 0x02, 0x1f, 0x09, 0x1b, 0x03, - 0x09, 0x1b, 0x03, 0x09, 0x1b, 0x02, 0x09, 0x1b, - 0x1b, 0x09, 0x1b, 0x1b, 0x0b, 0x03, 0x03, 0x0b, - 0x03, 0x03, 0x0b, 0x1b, 0x1b, 0x0a, 0x03, 0x1b, - 0x0a, 0x03, 0x1b, 0x0a, 0x02, 0x20, 0x0a, 0x1b, - 0x04, 0x0a, 0x1b, 0x04, 0x0a, 0x1b, 0x1b, 0x0a, - 0x1b, 0x1b, 0x0c, 0x03, 0x1f, 0x0c, 0x04, 0x1b, - 0x0c, 0x04, 0x1b, 0x0d, 0x1b, 0x03, 0x0d, 0x1b, - 0x03, 0x0d, 0x1b, 0x1b, 0x0d, 0x1b, 0x20, 0x0f, - 0x02, 0x1b, 0x0f, 0x1b, 0x1b, 0x0f, 0x1b, 0x1b, - 0x0f, 0x1b, 0x1f, 0x10, 0x1b, 0x1b, 0x10, 0x1b, - 0x20, 0x10, 0x1b, 0x1f, 0x17, 0x04, 0x1b, 0x17, - 0x04, 0x1b, 0x18, 0x1b, 0x03, 0x18, 0x1b, 0x1b, - 0x1a, 0x03, 0x1b, 0x1a, 0x03, 0x20, 0x1a, 0x03, - 0x1f, 0x1a, 0x02, 0x02, 0x1a, 0x02, 0x02, 0x1a, - 0x04, 0x1b, 0x1a, 0x04, 0x1b, 0x1a, 0x1b, 0x03, - 0x1a, 0x1b, 0x03, 0x1b, 0x03, 0x02, 0x1b, 0x03, - 0x1b, 0x1b, 0x03, 0x20, 0x1b, 0x02, 0x03, 0x1b, - 0x02, 0x1b, 0x1b, 0x04, 0x02, 0x1b, 0x04, 0x1b, - 0x28, 0x06, 0x1d, 0x04, 0x06, 0x1f, 0x1d, 0x04, - 0x1f, 0x1d, 0x1d, 0x1e, 0x05, 0x1d, 0x1e, 0x05, - 0x21, 0x1e, 0x04, 0x1d, 0x1e, 0x04, 0x1d, 0x1e, - 0x04, 0x21, 0x1e, 0x1d, 0x22, 0x1e, 0x1d, 0x21, - 0x22, 0x1d, 0x1d, 0x22, 0x1d, 0x1d, 0x00, 0x06, - 0x22, 0x02, 0x04, 0x22, 0x02, 0x04, 0x21, 0x02, - 0x06, 0x22, 0x02, 0x06, 0x21, 0x02, 0x1d, 0x22, - 0x02, 0x1d, 0x21, 0x04, 0x1d, 0x22, 0x04, 0x05, - 0x21, 0x04, 0x1d, 0x21, 0x0b, 0x06, 0x21, 0x0d, - 0x05, 0x22, 0x0c, 0x05, 0x22, 0x0e, 0x05, 0x22, - 0x1c, 0x04, 0x22, 0x1c, 0x1d, 0x22, 0x22, 0x05, - 0x22, 0x22, 0x04, 0x22, 0x22, 0x1d, 0x22, 0x1d, - 0x1d, 0x22, 0x1a, 0x1d, 0x22, 0x1e, 0x05, 0x22, - 0x1a, 0x1d, 0x05, 0x1c, 0x05, 0x1d, 0x11, 0x1d, - 0x22, 0x1b, 0x1d, 0x22, 0x1e, 0x04, 0x05, 0x1d, - 0x06, 0x22, 0x1c, 0x04, 0x1d, 0x1b, 0x1d, 0x1d, - 0x1c, 0x04, 0x1d, 0x1e, 0x04, 0x05, 0x04, 0x05, - 0x22, 0x05, 0x04, 0x22, 0x1d, 0x04, 0x22, 0x19, - 0x1d, 0x22, 0x00, 0x05, 0x22, 0x1b, 0x1d, 0x1d, - 0x11, 0x04, 0x1d, 0x0d, 0x1d, 0x1d, 0x0b, 0x06, - 0x22, 0x1e, 0x04, 0x22, 0x35, 0x06, 0x00, 0x0f, - 0x9d, 0x0d, 0x0f, 0x9d, 0x27, 0x06, 0x00, 0x1d, - 0x1d, 0x20, 0x00, 0x1c, 0x01, 0x0a, 0x1e, 0x06, - 0x1e, 0x08, 0x0e, 0x1d, 0x12, 0x1e, 0x0a, 0x0c, - 0x21, 0x1d, 0x12, 0x1d, 0x23, 0x20, 0x21, 0x0c, - 0x1d, 0x1e, 0x35, 0x06, 0x00, 0x0f, 0x14, 0x27, - 0x06, 0x0e, 0x1d, 0x22, 0xff, 0x00, 0x1d, 0x1d, - 0x20, 0xff, 0x12, 0x1d, 0x23, 0x20, 0xff, 0x21, - 0x0c, 0x1d, 0x1e, 0x27, 0x06, 0x05, 0x1d, 0xff, - 0x05, 0x1d, 0x00, 0x1d, 0x20, 0x27, 0x06, 0x0a, - 0xa5, 0x00, 0x1d, 0x2c, 0x00, 0x01, 0x30, 0x02, - 0x30, 0x3a, 0x00, 0x3b, 0x00, 0x21, 0x00, 0x3f, - 0x00, 0x16, 0x30, 0x17, 0x30, 0x26, 0x20, 0x13, - 0x20, 0x12, 0x01, 0x00, 0x5f, 0x5f, 0x28, 0x29, - 0x7b, 0x7d, 0x08, 0x30, 0x0c, 0x0d, 0x08, 0x09, - 0x02, 0x03, 0x00, 0x01, 0x04, 0x05, 0x06, 0x07, - 0x5b, 0x00, 0x5d, 0x00, 0x3e, 0x20, 0x3e, 0x20, - 0x3e, 0x20, 0x3e, 0x20, 0x5f, 0x00, 0x5f, 0x00, - 0x5f, 0x00, 0x2c, 0x00, 0x01, 0x30, 0x2e, 0x00, - 0x00, 0x00, 0x3b, 0x00, 0x3a, 0x00, 0x3f, 0x00, - 0x21, 0x00, 0x14, 0x20, 0x28, 0x00, 0x29, 0x00, - 0x7b, 0x00, 0x7d, 0x00, 0x14, 0x30, 0x15, 0x30, - 0x23, 0x26, 0x2a, 0x2b, 0x2d, 0x3c, 0x3e, 0x3d, - 0x00, 0x5c, 0x24, 0x25, 0x40, 0x40, 0x06, 0xff, - 0x0b, 0x00, 0x0b, 0xff, 0x0c, 0x20, 0x00, 0x4d, - 0x06, 0x40, 0x06, 0xff, 0x0e, 0x00, 0x0e, 0xff, - 0x0f, 0x00, 0x0f, 0xff, 0x10, 0x00, 0x10, 0xff, - 0x11, 0x00, 0x11, 0xff, 0x12, 0x00, 0x12, 0x21, - 0x06, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03, - 0x04, 0x04, 0x05, 0x05, 0x05, 0x05, 0x06, 0x06, - 0x07, 0x07, 0x07, 0x07, 0x08, 0x08, 0x09, 0x09, - 0x09, 0x09, 0x0a, 0x0a, 0x0a, 0x0a, 0x0b, 0x0b, - 0x0b, 0x0b, 0x0c, 0x0c, 0x0c, 0x0c, 0x0d, 0x0d, - 0x0d, 0x0d, 0x0e, 0x0e, 0x0f, 0x0f, 0x10, 0x10, - 0x11, 0x11, 0x12, 0x12, 0x12, 0x12, 0x13, 0x13, - 0x13, 0x13, 0x14, 0x14, 0x14, 0x14, 0x15, 0x15, - 0x15, 0x15, 0x16, 0x16, 0x16, 0x16, 0x17, 0x17, - 0x17, 0x17, 0x18, 0x18, 0x18, 0x18, 0x19, 0x19, - 0x19, 0x19, 0x20, 0x20, 0x20, 0x20, 0x21, 0x21, - 0x21, 0x21, 0x22, 0x22, 0x22, 0x22, 0x23, 0x23, - 0x23, 0x23, 0x24, 0x24, 0x24, 0x24, 0x25, 0x25, - 0x25, 0x25, 0x26, 0x26, 0x26, 0x26, 0x27, 0x27, - 0x28, 0x28, 0x29, 0x29, 0x29, 0x29, 0x22, 0x06, - 0x22, 0x00, 0x22, 0x00, 0x22, 0x01, 0x22, 0x01, - 0x22, 0x03, 0x22, 0x03, 0x22, 0x05, 0x22, 0x05, - 0x21, 0x00, 0x85, 0x29, 0x01, 0x30, 0x01, 0x0b, - 0x0c, 0x00, 0xfa, 0xf1, 0xa0, 0xa2, 0xa4, 0xa6, - 0xa8, 0xe2, 0xe4, 0xe6, 0xc2, 0xfb, 0xa1, 0xa3, - 0xa5, 0xa7, 0xa9, 0xaa, 0xac, 0xae, 0xb0, 0xb2, - 0xb4, 0xb6, 0xb8, 0xba, 0xbc, 0xbe, 0xc0, 0xc3, - 0xc5, 0xc7, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, - 0xd1, 0xd4, 0xd7, 0xda, 0xdd, 0xde, 0xdf, 0xe0, - 0xe1, 0xe3, 0xe5, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, - 0xec, 0xee, 0xf2, 0x98, 0x99, 0x31, 0x31, 0x4f, - 0x31, 0x55, 0x31, 0x5b, 0x31, 0x61, 0x31, 0xa2, - 0x00, 0xa3, 0x00, 0xac, 0x00, 0xaf, 0x00, 0xa6, - 0x00, 0xa5, 0x00, 0xa9, 0x20, 0x00, 0x00, 0x02, - 0x25, 0x90, 0x21, 0x91, 0x21, 0x92, 0x21, 0x93, - 0x21, 0xa0, 0x25, 0xcb, 0x25, 0x99, 0x10, 0xba, - 0x10, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x10, 0xba, - 0x10, 0x05, 0x05, 0xa5, 0x10, 0xba, 0x10, 0x05, - 0x31, 0x11, 0x27, 0x11, 0x32, 0x11, 0x27, 0x11, - 0x55, 0x47, 0x13, 0x3e, 0x13, 0x47, 0x13, 0x57, - 0x13, 0x55, 0xb9, 0x14, 0xba, 0x14, 0xb9, 0x14, - 0xb0, 0x14, 0x00, 0x00, 0x00, 0x00, 0xb9, 0x14, - 0xbd, 0x14, 0x55, 0x50, 0xb8, 0x15, 0xaf, 0x15, - 0xb9, 0x15, 0xaf, 0x15, 0x55, 0x35, 0x19, 0x30, - 0x19, 0x05, 0x57, 0xd1, 0x65, 0xd1, 0x58, 0xd1, - 0x65, 0xd1, 0x5f, 0xd1, 0x6e, 0xd1, 0x5f, 0xd1, - 0x6f, 0xd1, 0x5f, 0xd1, 0x70, 0xd1, 0x5f, 0xd1, - 0x71, 0xd1, 0x5f, 0xd1, 0x72, 0xd1, 0x55, 0x55, - 0x55, 0x05, 0xb9, 0xd1, 0x65, 0xd1, 0xba, 0xd1, - 0x65, 0xd1, 0xbb, 0xd1, 0x6e, 0xd1, 0xbc, 0xd1, - 0x6e, 0xd1, 0xbb, 0xd1, 0x6f, 0xd1, 0xbc, 0xd1, - 0x6f, 0xd1, 0x55, 0x55, 0x55, 0x41, 0x00, 0x61, - 0x00, 0x41, 0x00, 0x61, 0x00, 0x69, 0x00, 0x41, - 0x00, 0x61, 0x00, 0x41, 0x00, 0x43, 0x44, 0x00, - 0x00, 0x47, 0x00, 0x00, 0x4a, 0x4b, 0x00, 0x00, - 0x4e, 0x4f, 0x50, 0x51, 0x00, 0x53, 0x54, 0x55, - 0x56, 0x57, 0x58, 0x59, 0x5a, 0x61, 0x62, 0x63, - 0x64, 0x00, 0x66, 0x68, 0x00, 0x70, 0x00, 0x41, - 0x00, 0x61, 0x00, 0x41, 0x42, 0x00, 0x44, 0x45, - 0x46, 0x47, 0x4a, 0x00, 0x53, 0x00, 0x61, 0x00, - 0x41, 0x42, 0x00, 0x44, 0x45, 0x46, 0x47, 0x00, - 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x00, 0x4f, 0x53, - 0x00, 0x61, 0x00, 0x41, 0x00, 0x61, 0x00, 0x41, - 0x00, 0x61, 0x00, 0x41, 0x00, 0x61, 0x00, 0x41, - 0x00, 0x61, 0x00, 0x41, 0x00, 0x61, 0x00, 0x41, - 0x00, 0x61, 0x00, 0x31, 0x01, 0x37, 0x02, 0x91, - 0x03, 0xa3, 0x03, 0xb1, 0x03, 0xd1, 0x03, 0x24, - 0x00, 0x1f, 0x04, 0x20, 0x05, 0x91, 0x03, 0xa3, - 0x03, 0xb1, 0x03, 0xd1, 0x03, 0x24, 0x00, 0x1f, - 0x04, 0x20, 0x05, 0x91, 0x03, 0xa3, 0x03, 0xb1, - 0x03, 0xd1, 0x03, 0x24, 0x00, 0x1f, 0x04, 0x20, - 0x05, 0x91, 0x03, 0xa3, 0x03, 0xb1, 0x03, 0xd1, - 0x03, 0x24, 0x00, 0x1f, 0x04, 0x20, 0x05, 0x91, - 0x03, 0xa3, 0x03, 0xb1, 0x03, 0xd1, 0x03, 0x24, - 0x00, 0x1f, 0x04, 0x20, 0x05, 0x0b, 0x0c, 0x30, - 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, - 0x00, 0x27, 0x06, 0x00, 0x01, 0x05, 0x08, 0x2a, - 0x06, 0x1e, 0x08, 0x03, 0x0d, 0x20, 0x19, 0x1a, + 0x21, 0x00, 0x1f, 0x00, 0x21, 0x02, 0x1f, 0x02, + 0x21, 0x04, 0x1f, 0x04, 0x21, 0x05, 0x1f, 0x05, + 0x21, 0x0d, 0x1f, 0x0d, 0x21, 0x0e, 0x1f, 0x0e, + 0x21, 0x1d, 0x1e, 0x1d, 0x1f, 0x1e, 0x1f, 0x20, + 0x1f, 0x20, 0x21, 0x24, 0x1f, 0x24, 0x21, 0x40, + 0x06, 0x4e, 0x06, 0x51, 0x06, 0x27, 0x06, 0x10, + 0x22, 0x10, 0x23, 0x12, 0x22, 0x12, 0x23, 0x13, + 0x22, 0x13, 0x23, 0x0c, 0x22, 0x0c, 0x23, 0x0d, + 0x22, 0x0d, 0x23, 0x06, 0x22, 0x06, 0x23, 0x05, + 0x22, 0x05, 0x23, 0x07, 0x22, 0x07, 0x23, 0x0e, + 0x22, 0x0e, 0x23, 0x0f, 0x22, 0x0f, 0x23, 0x0d, + 0x05, 0x0d, 0x06, 0x0d, 0x07, 0x0d, 0x1e, 0x0d, + 0x0a, 0x0c, 0x0a, 0x0e, 0x0a, 0x0f, 0x0a, 0x10, + 0x22, 0x10, 0x23, 0x12, 0x22, 0x12, 0x23, 0x13, + 0x22, 0x13, 0x23, 0x0c, 0x22, 0x0c, 0x23, 0x0d, + 0x22, 0x0d, 0x23, 0x06, 0x22, 0x06, 0x23, 0x05, + 0x22, 0x05, 0x23, 0x07, 0x22, 0x07, 0x23, 0x0e, + 0x22, 0x0e, 0x23, 0x0f, 0x22, 0x0f, 0x23, 0x0d, + 0x05, 0x0d, 0x06, 0x0d, 0x07, 0x0d, 0x1e, 0x0d, + 0x0a, 0x0c, 0x0a, 0x0e, 0x0a, 0x0f, 0x0a, 0x0d, + 0x05, 0x0d, 0x06, 0x0d, 0x07, 0x0d, 0x1e, 0x0c, + 0x20, 0x0d, 0x20, 0x10, 0x1e, 0x0c, 0x05, 0x0c, + 0x06, 0x0c, 0x07, 0x0d, 0x05, 0x0d, 0x06, 0x0d, + 0x07, 0x10, 0x1e, 0x11, 0x1e, 0x00, 0x24, 0x00, + 0x24, 0x2a, 0x06, 0x00, 0x02, 0x1b, 0x00, 0x03, + 0x02, 0x00, 0x03, 0x02, 0x00, 0x03, 0x1b, 0x00, + 0x04, 0x1b, 0x00, 0x1b, 0x02, 0x00, 0x1b, 0x03, + 0x00, 0x1b, 0x04, 0x02, 0x1b, 0x03, 0x02, 0x1b, + 0x03, 0x03, 0x1b, 0x20, 0x03, 0x1b, 0x1f, 0x09, + 0x03, 0x02, 0x09, 0x02, 0x03, 0x09, 0x02, 0x1f, + 0x09, 0x1b, 0x03, 0x09, 0x1b, 0x03, 0x09, 0x1b, + 0x02, 0x09, 0x1b, 0x1b, 0x09, 0x1b, 0x1b, 0x0b, + 0x03, 0x03, 0x0b, 0x03, 0x03, 0x0b, 0x1b, 0x1b, + 0x0a, 0x03, 0x1b, 0x0a, 0x03, 0x1b, 0x0a, 0x02, + 0x20, 0x0a, 0x1b, 0x04, 0x0a, 0x1b, 0x04, 0x0a, + 0x1b, 0x1b, 0x0a, 0x1b, 0x1b, 0x0c, 0x03, 0x1f, + 0x0c, 0x04, 0x1b, 0x0c, 0x04, 0x1b, 0x0d, 0x1b, + 0x03, 0x0d, 0x1b, 0x03, 0x0d, 0x1b, 0x1b, 0x0d, + 0x1b, 0x20, 0x0f, 0x02, 0x1b, 0x0f, 0x1b, 0x1b, + 0x0f, 0x1b, 0x1b, 0x0f, 0x1b, 0x1f, 0x10, 0x1b, + 0x1b, 0x10, 0x1b, 0x20, 0x10, 0x1b, 0x1f, 0x17, + 0x04, 0x1b, 0x17, 0x04, 0x1b, 0x18, 0x1b, 0x03, + 0x18, 0x1b, 0x1b, 0x1a, 0x03, 0x1b, 0x1a, 0x03, + 0x20, 0x1a, 0x03, 0x1f, 0x1a, 0x02, 0x02, 0x1a, + 0x02, 0x02, 0x1a, 0x04, 0x1b, 0x1a, 0x04, 0x1b, + 0x1a, 0x1b, 0x03, 0x1a, 0x1b, 0x03, 0x1b, 0x03, + 0x02, 0x1b, 0x03, 0x1b, 0x1b, 0x03, 0x20, 0x1b, + 0x02, 0x03, 0x1b, 0x02, 0x1b, 0x1b, 0x04, 0x02, + 0x1b, 0x04, 0x1b, 0x28, 0x06, 0x1d, 0x04, 0x06, + 0x1f, 0x1d, 0x04, 0x1f, 0x1d, 0x1d, 0x1e, 0x05, + 0x1d, 0x1e, 0x05, 0x21, 0x1e, 0x04, 0x1d, 0x1e, + 0x04, 0x1d, 0x1e, 0x04, 0x21, 0x1e, 0x1d, 0x22, + 0x1e, 0x1d, 0x21, 0x22, 0x1d, 0x1d, 0x22, 0x1d, + 0x1d, 0x00, 0x06, 0x22, 0x02, 0x04, 0x22, 0x02, + 0x04, 0x21, 0x02, 0x06, 0x22, 0x02, 0x06, 0x21, + 0x02, 0x1d, 0x22, 0x02, 0x1d, 0x21, 0x04, 0x1d, + 0x22, 0x04, 0x05, 0x21, 0x04, 0x1d, 0x21, 0x0b, + 0x06, 0x21, 0x0d, 0x05, 0x22, 0x0c, 0x05, 0x22, + 0x0e, 0x05, 0x22, 0x1c, 0x04, 0x22, 0x1c, 0x1d, + 0x22, 0x22, 0x05, 0x22, 0x22, 0x04, 0x22, 0x22, + 0x1d, 0x22, 0x1d, 0x1d, 0x22, 0x1a, 0x1d, 0x22, + 0x1e, 0x05, 0x22, 0x1a, 0x1d, 0x05, 0x1c, 0x05, + 0x1d, 0x11, 0x1d, 0x22, 0x1b, 0x1d, 0x22, 0x1e, + 0x04, 0x05, 0x1d, 0x06, 0x22, 0x1c, 0x04, 0x1d, + 0x1b, 0x1d, 0x1d, 0x1c, 0x04, 0x1d, 0x1e, 0x04, + 0x05, 0x04, 0x05, 0x22, 0x05, 0x04, 0x22, 0x1d, + 0x04, 0x22, 0x19, 0x1d, 0x22, 0x00, 0x05, 0x22, + 0x1b, 0x1d, 0x1d, 0x11, 0x04, 0x1d, 0x0d, 0x1d, + 0x1d, 0x0b, 0x06, 0x22, 0x1e, 0x04, 0x22, 0x35, + 0x06, 0x00, 0x0f, 0x9d, 0x0d, 0x0f, 0x9d, 0x27, + 0x06, 0x00, 0x1d, 0x1d, 0x20, 0x00, 0x1c, 0x01, + 0x0a, 0x1e, 0x06, 0x1e, 0x08, 0x0e, 0x1d, 0x12, + 0x1e, 0x0a, 0x0c, 0x21, 0x1d, 0x12, 0x1d, 0x23, + 0x20, 0x21, 0x0c, 0x1d, 0x1e, 0x35, 0x06, 0x00, + 0x0f, 0x14, 0x27, 0x06, 0x0e, 0x1d, 0x22, 0xff, + 0x00, 0x1d, 0x1d, 0x20, 0xff, 0x12, 0x1d, 0x23, + 0x20, 0xff, 0x21, 0x0c, 0x1d, 0x1e, 0x27, 0x06, + 0x05, 0x1d, 0xff, 0x05, 0x1d, 0x00, 0x1d, 0x20, + 0x27, 0x06, 0x0a, 0xa5, 0x00, 0x1d, 0x2c, 0x00, + 0x01, 0x30, 0x02, 0x30, 0x3a, 0x00, 0x3b, 0x00, + 0x21, 0x00, 0x3f, 0x00, 0x16, 0x30, 0x17, 0x30, + 0x26, 0x20, 0x13, 0x20, 0x12, 0x01, 0x00, 0x5f, + 0x5f, 0x28, 0x29, 0x7b, 0x7d, 0x08, 0x30, 0x0c, + 0x0d, 0x08, 0x09, 0x02, 0x03, 0x00, 0x01, 0x04, + 0x05, 0x06, 0x07, 0x5b, 0x00, 0x5d, 0x00, 0x3e, + 0x20, 0x3e, 0x20, 0x3e, 0x20, 0x3e, 0x20, 0x5f, + 0x00, 0x5f, 0x00, 0x5f, 0x00, 0x2c, 0x00, 0x01, + 0x30, 0x2e, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x3a, + 0x00, 0x3f, 0x00, 0x21, 0x00, 0x14, 0x20, 0x28, + 0x00, 0x29, 0x00, 0x7b, 0x00, 0x7d, 0x00, 0x14, + 0x30, 0x15, 0x30, 0x23, 0x26, 0x2a, 0x2b, 0x2d, + 0x3c, 0x3e, 0x3d, 0x00, 0x5c, 0x24, 0x25, 0x40, + 0x40, 0x06, 0xff, 0x0b, 0x00, 0x0b, 0xff, 0x0c, + 0x20, 0x00, 0x4d, 0x06, 0x40, 0x06, 0xff, 0x0e, + 0x00, 0x0e, 0xff, 0x0f, 0x00, 0x0f, 0xff, 0x10, + 0x00, 0x10, 0xff, 0x11, 0x00, 0x11, 0xff, 0x12, + 0x00, 0x12, 0x21, 0x06, 0x00, 0x01, 0x01, 0x02, + 0x02, 0x03, 0x03, 0x04, 0x04, 0x05, 0x05, 0x05, + 0x05, 0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x08, + 0x08, 0x09, 0x09, 0x09, 0x09, 0x0a, 0x0a, 0x0a, + 0x0a, 0x0b, 0x0b, 0x0b, 0x0b, 0x0c, 0x0c, 0x0c, + 0x0c, 0x0d, 0x0d, 0x0d, 0x0d, 0x0e, 0x0e, 0x0f, + 0x0f, 0x10, 0x10, 0x11, 0x11, 0x12, 0x12, 0x12, + 0x12, 0x13, 0x13, 0x13, 0x13, 0x14, 0x14, 0x14, + 0x14, 0x15, 0x15, 0x15, 0x15, 0x16, 0x16, 0x16, + 0x16, 0x17, 0x17, 0x17, 0x17, 0x18, 0x18, 0x18, + 0x18, 0x19, 0x19, 0x19, 0x19, 0x20, 0x20, 0x20, + 0x20, 0x21, 0x21, 0x21, 0x21, 0x22, 0x22, 0x22, + 0x22, 0x23, 0x23, 0x23, 0x23, 0x24, 0x24, 0x24, + 0x24, 0x25, 0x25, 0x25, 0x25, 0x26, 0x26, 0x26, + 0x26, 0x27, 0x27, 0x28, 0x28, 0x29, 0x29, 0x29, + 0x29, 0x22, 0x06, 0x22, 0x00, 0x22, 0x00, 0x22, + 0x01, 0x22, 0x01, 0x22, 0x03, 0x22, 0x03, 0x22, + 0x05, 0x22, 0x05, 0x21, 0x00, 0x85, 0x29, 0x01, + 0x30, 0x01, 0x0b, 0x0c, 0x00, 0xfa, 0xf1, 0xa0, + 0xa2, 0xa4, 0xa6, 0xa8, 0xe2, 0xe4, 0xe6, 0xc2, + 0xfb, 0xa1, 0xa3, 0xa5, 0xa7, 0xa9, 0xaa, 0xac, + 0xae, 0xb0, 0xb2, 0xb4, 0xb6, 0xb8, 0xba, 0xbc, + 0xbe, 0xc0, 0xc3, 0xc5, 0xc7, 0xc9, 0xca, 0xcb, + 0xcc, 0xcd, 0xce, 0xd1, 0xd4, 0xd7, 0xda, 0xdd, + 0xde, 0xdf, 0xe0, 0xe1, 0xe3, 0xe5, 0xe7, 0xe8, + 0xe9, 0xea, 0xeb, 0xec, 0xee, 0xf2, 0x98, 0x99, + 0x31, 0x31, 0x4f, 0x31, 0x55, 0x31, 0x5b, 0x31, + 0x61, 0x31, 0xa2, 0x00, 0xa3, 0x00, 0xac, 0x00, + 0xaf, 0x00, 0xa6, 0x00, 0xa5, 0x00, 0xa9, 0x20, + 0x00, 0x00, 0x02, 0x25, 0x90, 0x21, 0x91, 0x21, + 0x92, 0x21, 0x93, 0x21, 0xa0, 0x25, 0xcb, 0x25, + 0xd0, 0x02, 0xd1, 0x02, 0xe6, 0x00, 0x99, 0x02, + 0x53, 0x02, 0x00, 0x00, 0xa3, 0x02, 0x66, 0xab, + 0xa5, 0x02, 0xa4, 0x02, 0x56, 0x02, 0x57, 0x02, + 0x91, 0x1d, 0x58, 0x02, 0x5e, 0x02, 0xa9, 0x02, + 0x64, 0x02, 0x62, 0x02, 0x60, 0x02, 0x9b, 0x02, + 0x27, 0x01, 0x9c, 0x02, 0x67, 0x02, 0x84, 0x02, + 0xaa, 0x02, 0xab, 0x02, 0x6c, 0x02, 0x04, 0xdf, + 0x8e, 0xa7, 0x6e, 0x02, 0x05, 0xdf, 0x8e, 0x02, + 0x06, 0xdf, 0xf8, 0x00, 0x76, 0x02, 0x77, 0x02, + 0x71, 0x00, 0x7a, 0x02, 0x08, 0xdf, 0x7d, 0x02, + 0x7e, 0x02, 0x80, 0x02, 0xa8, 0x02, 0xa6, 0x02, + 0x67, 0xab, 0xa7, 0x02, 0x88, 0x02, 0x71, 0x2c, + 0x00, 0x00, 0x8f, 0x02, 0xa1, 0x02, 0xa2, 0x02, + 0x98, 0x02, 0xc0, 0x01, 0xc1, 0x01, 0xc2, 0x01, + 0x0a, 0xdf, 0x1e, 0xdf, 0x41, 0x04, 0x40, 0x00, + 0x00, 0x00, 0x00, 0x14, 0x99, 0x10, 0xba, 0x10, + 0x00, 0x00, 0x00, 0x00, 0x9b, 0x10, 0xba, 0x10, + 0x05, 0x05, 0xa5, 0x10, 0xba, 0x10, 0x05, 0x31, + 0x11, 0x27, 0x11, 0x32, 0x11, 0x27, 0x11, 0x55, + 0x47, 0x13, 0x3e, 0x13, 0x47, 0x13, 0x57, 0x13, + 0x55, 0xb9, 0x14, 0xba, 0x14, 0xb9, 0x14, 0xb0, + 0x14, 0x00, 0x00, 0x00, 0x00, 0xb9, 0x14, 0xbd, + 0x14, 0x55, 0x50, 0xb8, 0x15, 0xaf, 0x15, 0xb9, + 0x15, 0xaf, 0x15, 0x55, 0x35, 0x19, 0x30, 0x19, + 0x05, 0x57, 0xd1, 0x65, 0xd1, 0x58, 0xd1, 0x65, + 0xd1, 0x5f, 0xd1, 0x6e, 0xd1, 0x5f, 0xd1, 0x6f, + 0xd1, 0x5f, 0xd1, 0x70, 0xd1, 0x5f, 0xd1, 0x71, + 0xd1, 0x5f, 0xd1, 0x72, 0xd1, 0x55, 0x55, 0x55, + 0x05, 0xb9, 0xd1, 0x65, 0xd1, 0xba, 0xd1, 0x65, + 0xd1, 0xbb, 0xd1, 0x6e, 0xd1, 0xbc, 0xd1, 0x6e, + 0xd1, 0xbb, 0xd1, 0x6f, 0xd1, 0xbc, 0xd1, 0x6f, + 0xd1, 0x55, 0x55, 0x55, 0x41, 0x00, 0x61, 0x00, + 0x41, 0x00, 0x61, 0x00, 0x69, 0x00, 0x41, 0x00, + 0x61, 0x00, 0x41, 0x00, 0x43, 0x44, 0x00, 0x00, + 0x47, 0x00, 0x00, 0x4a, 0x4b, 0x00, 0x00, 0x4e, + 0x4f, 0x50, 0x51, 0x00, 0x53, 0x54, 0x55, 0x56, + 0x57, 0x58, 0x59, 0x5a, 0x61, 0x62, 0x63, 0x64, + 0x00, 0x66, 0x68, 0x00, 0x70, 0x00, 0x41, 0x00, + 0x61, 0x00, 0x41, 0x42, 0x00, 0x44, 0x45, 0x46, + 0x47, 0x4a, 0x00, 0x53, 0x00, 0x61, 0x00, 0x41, + 0x42, 0x00, 0x44, 0x45, 0x46, 0x47, 0x00, 0x49, + 0x4a, 0x4b, 0x4c, 0x4d, 0x00, 0x4f, 0x53, 0x00, + 0x61, 0x00, 0x41, 0x00, 0x61, 0x00, 0x41, 0x00, + 0x61, 0x00, 0x41, 0x00, 0x61, 0x00, 0x41, 0x00, + 0x61, 0x00, 0x41, 0x00, 0x61, 0x00, 0x41, 0x00, + 0x61, 0x00, 0x31, 0x01, 0x37, 0x02, 0x91, 0x03, + 0xa3, 0x03, 0xb1, 0x03, 0xd1, 0x03, 0x24, 0x00, + 0x1f, 0x04, 0x20, 0x05, 0x91, 0x03, 0xa3, 0x03, + 0xb1, 0x03, 0xd1, 0x03, 0x24, 0x00, 0x1f, 0x04, + 0x20, 0x05, 0x91, 0x03, 0xa3, 0x03, 0xb1, 0x03, + 0xd1, 0x03, 0x24, 0x00, 0x1f, 0x04, 0x20, 0x05, + 0x91, 0x03, 0xa3, 0x03, 0xb1, 0x03, 0xd1, 0x03, + 0x24, 0x00, 0x1f, 0x04, 0x20, 0x05, 0x91, 0x03, + 0xa3, 0x03, 0xb1, 0x03, 0xd1, 0x03, 0x24, 0x00, + 0x1f, 0x04, 0x20, 0x05, 0x0b, 0x0c, 0x30, 0x00, + 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, + 0x30, 0x04, 0x3a, 0x04, 0x3e, 0x04, 0x4b, 0x04, + 0x4d, 0x04, 0x4e, 0x04, 0x89, 0xa6, 0x30, 0x04, + 0xa9, 0x26, 0x28, 0xb9, 0x7f, 0x9f, 0x00, 0x01, + 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x0a, + 0x0b, 0x0e, 0x0f, 0x11, 0x13, 0x14, 0x15, 0x16, + 0x17, 0x18, 0x1a, 0x1b, 0x61, 0x26, 0x25, 0x2f, + 0x7b, 0x51, 0xa6, 0xb1, 0x04, 0x27, 0x06, 0x00, + 0x01, 0x05, 0x08, 0x2a, 0x06, 0x1e, 0x08, 0x03, + 0x0d, 0x20, 0x19, 0x1a, 0x1b, 0x1c, 0x09, 0x0f, + 0x17, 0x0b, 0x18, 0x07, 0x0a, 0x00, 0x01, 0x04, + 0x06, 0x0c, 0x0e, 0x10, 0x44, 0x90, 0x77, 0x45, + 0x28, 0x06, 0x2c, 0x06, 0x00, 0x00, 0x47, 0x06, + 0x33, 0x06, 0x17, 0x10, 0x11, 0x12, 0x13, 0x00, + 0x06, 0x0e, 0x02, 0x0f, 0x34, 0x06, 0x2a, 0x06, + 0x2b, 0x06, 0x2e, 0x06, 0x00, 0x00, 0x36, 0x06, + 0x00, 0x00, 0x3a, 0x06, 0x2d, 0x06, 0x00, 0x00, + 0x4a, 0x06, 0x00, 0x00, 0x44, 0x06, 0x00, 0x00, + 0x46, 0x06, 0x33, 0x06, 0x39, 0x06, 0x00, 0x00, + 0x35, 0x06, 0x42, 0x06, 0x00, 0x00, 0x34, 0x06, + 0x00, 0x00, 0x00, 0x00, 0x2e, 0x06, 0x00, 0x00, + 0x36, 0x06, 0x00, 0x00, 0x3a, 0x06, 0x00, 0x00, + 0xba, 0x06, 0x00, 0x00, 0x6f, 0x06, 0x00, 0x00, + 0x28, 0x06, 0x2c, 0x06, 0x00, 0x00, 0x47, 0x06, + 0x00, 0x00, 0x00, 0x00, 0x2d, 0x06, 0x37, 0x06, + 0x4a, 0x06, 0x43, 0x06, 0x00, 0x00, 0x45, 0x06, + 0x46, 0x06, 0x33, 0x06, 0x39, 0x06, 0x41, 0x06, + 0x35, 0x06, 0x42, 0x06, 0x00, 0x00, 0x34, 0x06, + 0x2a, 0x06, 0x2b, 0x06, 0x2e, 0x06, 0x00, 0x00, + 0x36, 0x06, 0x38, 0x06, 0x3a, 0x06, 0x6e, 0x06, + 0x00, 0x00, 0xa1, 0x06, 0x27, 0x06, 0x00, 0x01, + 0x05, 0x08, 0x20, 0x21, 0x0b, 0x06, 0x10, 0x23, + 0x2a, 0x06, 0x1a, 0x1b, 0x1c, 0x09, 0x0f, 0x17, + 0x0b, 0x18, 0x07, 0x0a, 0x00, 0x01, 0x04, 0x06, + 0x0c, 0x0e, 0x10, 0x28, 0x06, 0x2c, 0x06, 0x2f, + 0x06, 0x00, 0x00, 0x48, 0x06, 0x32, 0x06, 0x2d, + 0x06, 0x37, 0x06, 0x4a, 0x06, 0x2a, 0x06, 0x1a, 0x1b, 0x1c, 0x09, 0x0f, 0x17, 0x0b, 0x18, 0x07, 0x0a, 0x00, 0x01, 0x04, 0x06, 0x0c, 0x0e, 0x10, - 0x44, 0x90, 0x77, 0x45, 0x28, 0x06, 0x2c, 0x06, - 0x00, 0x00, 0x47, 0x06, 0x33, 0x06, 0x17, 0x10, - 0x11, 0x12, 0x13, 0x00, 0x06, 0x0e, 0x02, 0x0f, - 0x34, 0x06, 0x2a, 0x06, 0x2b, 0x06, 0x2e, 0x06, - 0x00, 0x00, 0x36, 0x06, 0x00, 0x00, 0x3a, 0x06, - 0x2d, 0x06, 0x00, 0x00, 0x4a, 0x06, 0x00, 0x00, - 0x44, 0x06, 0x00, 0x00, 0x46, 0x06, 0x33, 0x06, - 0x39, 0x06, 0x00, 0x00, 0x35, 0x06, 0x42, 0x06, - 0x00, 0x00, 0x34, 0x06, 0x00, 0x00, 0x00, 0x00, - 0x2e, 0x06, 0x00, 0x00, 0x36, 0x06, 0x00, 0x00, - 0x3a, 0x06, 0x00, 0x00, 0xba, 0x06, 0x00, 0x00, - 0x6f, 0x06, 0x00, 0x00, 0x28, 0x06, 0x2c, 0x06, - 0x00, 0x00, 0x47, 0x06, 0x00, 0x00, 0x00, 0x00, - 0x2d, 0x06, 0x37, 0x06, 0x4a, 0x06, 0x43, 0x06, - 0x00, 0x00, 0x45, 0x06, 0x46, 0x06, 0x33, 0x06, - 0x39, 0x06, 0x41, 0x06, 0x35, 0x06, 0x42, 0x06, - 0x00, 0x00, 0x34, 0x06, 0x2a, 0x06, 0x2b, 0x06, - 0x2e, 0x06, 0x00, 0x00, 0x36, 0x06, 0x38, 0x06, - 0x3a, 0x06, 0x6e, 0x06, 0x00, 0x00, 0xa1, 0x06, - 0x27, 0x06, 0x00, 0x01, 0x05, 0x08, 0x20, 0x21, - 0x0b, 0x06, 0x10, 0x23, 0x2a, 0x06, 0x1a, 0x1b, - 0x1c, 0x09, 0x0f, 0x17, 0x0b, 0x18, 0x07, 0x0a, - 0x00, 0x01, 0x04, 0x06, 0x0c, 0x0e, 0x10, 0x28, - 0x06, 0x2c, 0x06, 0x2f, 0x06, 0x00, 0x00, 0x48, - 0x06, 0x32, 0x06, 0x2d, 0x06, 0x37, 0x06, 0x4a, - 0x06, 0x2a, 0x06, 0x1a, 0x1b, 0x1c, 0x09, 0x0f, - 0x17, 0x0b, 0x18, 0x07, 0x0a, 0x00, 0x01, 0x04, - 0x06, 0x0c, 0x0e, 0x10, 0x30, 0x2e, 0x30, 0x00, - 0x2c, 0x00, 0x28, 0x00, 0x41, 0x00, 0x29, 0x00, - 0x14, 0x30, 0x53, 0x00, 0x15, 0x30, 0x43, 0x52, - 0x43, 0x44, 0x57, 0x5a, 0x41, 0x00, 0x48, 0x56, - 0x4d, 0x56, 0x53, 0x44, 0x53, 0x53, 0x50, 0x50, - 0x56, 0x57, 0x43, 0x4d, 0x43, 0x4d, 0x44, 0x4d, - 0x52, 0x44, 0x4a, 0x4b, 0x30, 0x30, 0x00, 0x68, - 0x68, 0x4b, 0x62, 0x57, 0x5b, 0xcc, 0x53, 0xc7, - 0x30, 0x8c, 0x4e, 0x1a, 0x59, 0xe3, 0x89, 0x29, - 0x59, 0xa4, 0x4e, 0x20, 0x66, 0x21, 0x71, 0x99, - 0x65, 0x4d, 0x52, 0x8c, 0x5f, 0x8d, 0x51, 0xb0, - 0x65, 0x1d, 0x52, 0x42, 0x7d, 0x1f, 0x75, 0xa9, - 0x8c, 0xf0, 0x58, 0x39, 0x54, 0x14, 0x6f, 0x95, - 0x62, 0x55, 0x63, 0x00, 0x4e, 0x09, 0x4e, 0x4a, - 0x90, 0xe6, 0x5d, 0x2d, 0x4e, 0xf3, 0x53, 0x07, - 0x63, 0x70, 0x8d, 0x53, 0x62, 0x81, 0x79, 0x7a, - 0x7a, 0x08, 0x54, 0x80, 0x6e, 0x09, 0x67, 0x08, - 0x67, 0x33, 0x75, 0x72, 0x52, 0xb6, 0x55, 0x4d, - 0x91, 0x14, 0x30, 0x15, 0x30, 0x2c, 0x67, 0x09, - 0x4e, 0x8c, 0x4e, 0x89, 0x5b, 0xb9, 0x70, 0x53, - 0x62, 0xd7, 0x76, 0xdd, 0x52, 0x57, 0x65, 0x97, - 0x5f, 0xef, 0x53, 0x30, 0x00, 0x38, 0x4e, 0x05, - 0x00, 0x09, 0x22, 0x01, 0x60, 0x4f, 0xae, 0x4f, - 0xbb, 0x4f, 0x02, 0x50, 0x7a, 0x50, 0x99, 0x50, - 0xe7, 0x50, 0xcf, 0x50, 0x9e, 0x34, 0x3a, 0x06, - 0x4d, 0x51, 0x54, 0x51, 0x64, 0x51, 0x77, 0x51, - 0x1c, 0x05, 0xb9, 0x34, 0x67, 0x51, 0x8d, 0x51, - 0x4b, 0x05, 0x97, 0x51, 0xa4, 0x51, 0xcc, 0x4e, - 0xac, 0x51, 0xb5, 0x51, 0xdf, 0x91, 0xf5, 0x51, - 0x03, 0x52, 0xdf, 0x34, 0x3b, 0x52, 0x46, 0x52, - 0x72, 0x52, 0x77, 0x52, 0x15, 0x35, 0x02, 0x00, - 0x20, 0x80, 0x80, 0x00, 0x08, 0x00, 0x00, 0xc7, - 0x52, 0x00, 0x02, 0x1d, 0x33, 0x3e, 0x3f, 0x50, - 0x82, 0x8a, 0x93, 0xac, 0xb6, 0xb8, 0xb8, 0xb8, - 0x2c, 0x0a, 0x70, 0x70, 0xca, 0x53, 0xdf, 0x53, - 0x63, 0x0b, 0xeb, 0x53, 0xf1, 0x53, 0x06, 0x54, - 0x9e, 0x54, 0x38, 0x54, 0x48, 0x54, 0x68, 0x54, - 0xa2, 0x54, 0xf6, 0x54, 0x10, 0x55, 0x53, 0x55, - 0x63, 0x55, 0x84, 0x55, 0x84, 0x55, 0x99, 0x55, - 0xab, 0x55, 0xb3, 0x55, 0xc2, 0x55, 0x16, 0x57, - 0x06, 0x56, 0x17, 0x57, 0x51, 0x56, 0x74, 0x56, - 0x07, 0x52, 0xee, 0x58, 0xce, 0x57, 0xf4, 0x57, - 0x0d, 0x58, 0x8b, 0x57, 0x32, 0x58, 0x31, 0x58, - 0xac, 0x58, 0xe4, 0x14, 0xf2, 0x58, 0xf7, 0x58, - 0x06, 0x59, 0x1a, 0x59, 0x22, 0x59, 0x62, 0x59, - 0xa8, 0x16, 0xea, 0x16, 0xec, 0x59, 0x1b, 0x5a, - 0x27, 0x5a, 0xd8, 0x59, 0x66, 0x5a, 0xee, 0x36, - 0xfc, 0x36, 0x08, 0x5b, 0x3e, 0x5b, 0x3e, 0x5b, - 0xc8, 0x19, 0xc3, 0x5b, 0xd8, 0x5b, 0xe7, 0x5b, - 0xf3, 0x5b, 0x18, 0x1b, 0xff, 0x5b, 0x06, 0x5c, - 0x53, 0x5f, 0x22, 0x5c, 0x81, 0x37, 0x60, 0x5c, - 0x6e, 0x5c, 0xc0, 0x5c, 0x8d, 0x5c, 0xe4, 0x1d, - 0x43, 0x5d, 0xe6, 0x1d, 0x6e, 0x5d, 0x6b, 0x5d, - 0x7c, 0x5d, 0xe1, 0x5d, 0xe2, 0x5d, 0x2f, 0x38, - 0xfd, 0x5d, 0x28, 0x5e, 0x3d, 0x5e, 0x69, 0x5e, - 0x62, 0x38, 0x83, 0x21, 0x7c, 0x38, 0xb0, 0x5e, - 0xb3, 0x5e, 0xb6, 0x5e, 0xca, 0x5e, 0x92, 0xa3, - 0xfe, 0x5e, 0x31, 0x23, 0x31, 0x23, 0x01, 0x82, - 0x22, 0x5f, 0x22, 0x5f, 0xc7, 0x38, 0xb8, 0x32, - 0xda, 0x61, 0x62, 0x5f, 0x6b, 0x5f, 0xe3, 0x38, - 0x9a, 0x5f, 0xcd, 0x5f, 0xd7, 0x5f, 0xf9, 0x5f, - 0x81, 0x60, 0x3a, 0x39, 0x1c, 0x39, 0x94, 0x60, - 0xd4, 0x26, 0xc7, 0x60, 0x02, 0x02, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x0a, - 0x00, 0x00, 0x02, 0x08, 0x00, 0x80, 0x08, 0x00, - 0x00, 0x08, 0x80, 0x28, 0x80, 0x02, 0x00, 0x00, - 0x02, 0x48, 0x61, 0x00, 0x04, 0x06, 0x04, 0x32, - 0x46, 0x6a, 0x5c, 0x67, 0x96, 0xaa, 0xae, 0xc8, - 0xd3, 0x5d, 0x62, 0x00, 0x54, 0x77, 0xf3, 0x0c, - 0x2b, 0x3d, 0x63, 0xfc, 0x62, 0x68, 0x63, 0x83, - 0x63, 0xe4, 0x63, 0xf1, 0x2b, 0x22, 0x64, 0xc5, - 0x63, 0xa9, 0x63, 0x2e, 0x3a, 0x69, 0x64, 0x7e, - 0x64, 0x9d, 0x64, 0x77, 0x64, 0x6c, 0x3a, 0x4f, - 0x65, 0x6c, 0x65, 0x0a, 0x30, 0xe3, 0x65, 0xf8, - 0x66, 0x49, 0x66, 0x19, 0x3b, 0x91, 0x66, 0x08, - 0x3b, 0xe4, 0x3a, 0x92, 0x51, 0x95, 0x51, 0x00, - 0x67, 0x9c, 0x66, 0xad, 0x80, 0xd9, 0x43, 0x17, - 0x67, 0x1b, 0x67, 0x21, 0x67, 0x5e, 0x67, 0x53, - 0x67, 0xc3, 0x33, 0x49, 0x3b, 0xfa, 0x67, 0x85, - 0x67, 0x52, 0x68, 0x85, 0x68, 0x6d, 0x34, 0x8e, - 0x68, 0x1f, 0x68, 0x14, 0x69, 0x9d, 0x3b, 0x42, - 0x69, 0xa3, 0x69, 0xea, 0x69, 0xa8, 0x6a, 0xa3, - 0x36, 0xdb, 0x6a, 0x18, 0x3c, 0x21, 0x6b, 0xa7, - 0x38, 0x54, 0x6b, 0x4e, 0x3c, 0x72, 0x6b, 0x9f, - 0x6b, 0xba, 0x6b, 0xbb, 0x6b, 0x8d, 0x3a, 0x0b, - 0x1d, 0xfa, 0x3a, 0x4e, 0x6c, 0xbc, 0x3c, 0xbf, - 0x6c, 0xcd, 0x6c, 0x67, 0x6c, 0x16, 0x6d, 0x3e, - 0x6d, 0x77, 0x6d, 0x41, 0x6d, 0x69, 0x6d, 0x78, - 0x6d, 0x85, 0x6d, 0x1e, 0x3d, 0x34, 0x6d, 0x2f, - 0x6e, 0x6e, 0x6e, 0x33, 0x3d, 0xcb, 0x6e, 0xc7, - 0x6e, 0xd1, 0x3e, 0xf9, 0x6d, 0x6e, 0x6f, 0x5e, - 0x3f, 0x8e, 0x3f, 0xc6, 0x6f, 0x39, 0x70, 0x1e, - 0x70, 0x1b, 0x70, 0x96, 0x3d, 0x4a, 0x70, 0x7d, - 0x70, 0x77, 0x70, 0xad, 0x70, 0x25, 0x05, 0x45, - 0x71, 0x63, 0x42, 0x9c, 0x71, 0xab, 0x43, 0x28, - 0x72, 0x35, 0x72, 0x50, 0x72, 0x08, 0x46, 0x80, - 0x72, 0x95, 0x72, 0x35, 0x47, 0x02, 0x20, 0x00, - 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x08, 0x80, - 0x00, 0x00, 0x02, 0x02, 0x80, 0x8a, 0x00, 0x00, - 0x20, 0x00, 0x08, 0x0a, 0x00, 0x80, 0x88, 0x80, - 0x20, 0x14, 0x48, 0x7a, 0x73, 0x8b, 0x73, 0xac, - 0x3e, 0xa5, 0x73, 0xb8, 0x3e, 0xb8, 0x3e, 0x47, - 0x74, 0x5c, 0x74, 0x71, 0x74, 0x85, 0x74, 0xca, - 0x74, 0x1b, 0x3f, 0x24, 0x75, 0x36, 0x4c, 0x3e, - 0x75, 0x92, 0x4c, 0x70, 0x75, 0x9f, 0x21, 0x10, - 0x76, 0xa1, 0x4f, 0xb8, 0x4f, 0x44, 0x50, 0xfc, - 0x3f, 0x08, 0x40, 0xf4, 0x76, 0xf3, 0x50, 0xf2, - 0x50, 0x19, 0x51, 0x33, 0x51, 0x1e, 0x77, 0x1f, - 0x77, 0x1f, 0x77, 0x4a, 0x77, 0x39, 0x40, 0x8b, - 0x77, 0x46, 0x40, 0x96, 0x40, 0x1d, 0x54, 0x4e, - 0x78, 0x8c, 0x78, 0xcc, 0x78, 0xe3, 0x40, 0x26, - 0x56, 0x56, 0x79, 0x9a, 0x56, 0xc5, 0x56, 0x8f, - 0x79, 0xeb, 0x79, 0x2f, 0x41, 0x40, 0x7a, 0x4a, - 0x7a, 0x4f, 0x7a, 0x7c, 0x59, 0xa7, 0x5a, 0xa7, - 0x5a, 0xee, 0x7a, 0x02, 0x42, 0xab, 0x5b, 0xc6, - 0x7b, 0xc9, 0x7b, 0x27, 0x42, 0x80, 0x5c, 0xd2, - 0x7c, 0xa0, 0x42, 0xe8, 0x7c, 0xe3, 0x7c, 0x00, - 0x7d, 0x86, 0x5f, 0x63, 0x7d, 0x01, 0x43, 0xc7, - 0x7d, 0x02, 0x7e, 0x45, 0x7e, 0x34, 0x43, 0x28, - 0x62, 0x47, 0x62, 0x59, 0x43, 0xd9, 0x62, 0x7a, - 0x7f, 0x3e, 0x63, 0x95, 0x7f, 0xfa, 0x7f, 0x05, - 0x80, 0xda, 0x64, 0x23, 0x65, 0x60, 0x80, 0xa8, - 0x65, 0x70, 0x80, 0x5f, 0x33, 0xd5, 0x43, 0xb2, - 0x80, 0x03, 0x81, 0x0b, 0x44, 0x3e, 0x81, 0xb5, - 0x5a, 0xa7, 0x67, 0xb5, 0x67, 0x93, 0x33, 0x9c, - 0x33, 0x01, 0x82, 0x04, 0x82, 0x9e, 0x8f, 0x6b, - 0x44, 0x91, 0x82, 0x8b, 0x82, 0x9d, 0x82, 0xb3, - 0x52, 0xb1, 0x82, 0xb3, 0x82, 0xbd, 0x82, 0xe6, - 0x82, 0x3c, 0x6b, 0xe5, 0x82, 0x1d, 0x83, 0x63, - 0x83, 0xad, 0x83, 0x23, 0x83, 0xbd, 0x83, 0xe7, - 0x83, 0x57, 0x84, 0x53, 0x83, 0xca, 0x83, 0xcc, - 0x83, 0xdc, 0x83, 0x36, 0x6c, 0x6b, 0x6d, 0x02, - 0x00, 0x00, 0x20, 0x22, 0x2a, 0xa0, 0x0a, 0x00, - 0x20, 0x80, 0x28, 0x00, 0xa8, 0x20, 0x20, 0x00, - 0x02, 0x80, 0x22, 0x02, 0x8a, 0x08, 0x00, 0xaa, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x28, 0xd5, - 0x6c, 0x2b, 0x45, 0xf1, 0x84, 0xf3, 0x84, 0x16, - 0x85, 0xca, 0x73, 0x64, 0x85, 0x2c, 0x6f, 0x5d, - 0x45, 0x61, 0x45, 0xb1, 0x6f, 0xd2, 0x70, 0x6b, - 0x45, 0x50, 0x86, 0x5c, 0x86, 0x67, 0x86, 0x69, - 0x86, 0xa9, 0x86, 0x88, 0x86, 0x0e, 0x87, 0xe2, - 0x86, 0x79, 0x87, 0x28, 0x87, 0x6b, 0x87, 0x86, - 0x87, 0xd7, 0x45, 0xe1, 0x87, 0x01, 0x88, 0xf9, - 0x45, 0x60, 0x88, 0x63, 0x88, 0x67, 0x76, 0xd7, - 0x88, 0xde, 0x88, 0x35, 0x46, 0xfa, 0x88, 0xbb, - 0x34, 0xae, 0x78, 0x66, 0x79, 0xbe, 0x46, 0xc7, - 0x46, 0xa0, 0x8a, 0xed, 0x8a, 0x8a, 0x8b, 0x55, - 0x8c, 0xa8, 0x7c, 0xab, 0x8c, 0xc1, 0x8c, 0x1b, - 0x8d, 0x77, 0x8d, 0x2f, 0x7f, 0x04, 0x08, 0xcb, - 0x8d, 0xbc, 0x8d, 0xf0, 0x8d, 0xde, 0x08, 0xd4, - 0x8e, 0x38, 0x8f, 0xd2, 0x85, 0xed, 0x85, 0x94, - 0x90, 0xf1, 0x90, 0x11, 0x91, 0x2e, 0x87, 0x1b, - 0x91, 0x38, 0x92, 0xd7, 0x92, 0xd8, 0x92, 0x7c, - 0x92, 0xf9, 0x93, 0x15, 0x94, 0xfa, 0x8b, 0x8b, - 0x95, 0x95, 0x49, 0xb7, 0x95, 0x77, 0x8d, 0xe6, - 0x49, 0xc3, 0x96, 0xb2, 0x5d, 0x23, 0x97, 0x45, - 0x91, 0x1a, 0x92, 0x6e, 0x4a, 0x76, 0x4a, 0xe0, - 0x97, 0x0a, 0x94, 0xb2, 0x4a, 0x96, 0x94, 0x0b, - 0x98, 0x0b, 0x98, 0x29, 0x98, 0xb6, 0x95, 0xe2, - 0x98, 0x33, 0x4b, 0x29, 0x99, 0xa7, 0x99, 0xc2, - 0x99, 0xfe, 0x99, 0xce, 0x4b, 0x30, 0x9b, 0x12, - 0x9b, 0x40, 0x9c, 0xfd, 0x9c, 0xce, 0x4c, 0xed, - 0x4c, 0x67, 0x9d, 0xce, 0xa0, 0xf8, 0x4c, 0x05, - 0xa1, 0x0e, 0xa2, 0x91, 0xa2, 0xbb, 0x9e, 0x56, - 0x4d, 0xf9, 0x9e, 0xfe, 0x9e, 0x05, 0x9f, 0x0f, - 0x9f, 0x16, 0x9f, 0x3b, 0x9f, 0x00, 0xa6, 0x02, - 0x88, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, - 0x28, 0x00, 0x08, 0xa0, 0x80, 0xa0, 0x80, 0x00, - 0x80, 0x80, 0x00, 0x0a, 0x88, 0x80, 0x00, 0x80, - 0x00, 0x20, 0x2a, 0x00, 0x80, + 0x30, 0x2e, 0x30, 0x00, 0x2c, 0x00, 0x28, 0x00, + 0x41, 0x00, 0x29, 0x00, 0x14, 0x30, 0x53, 0x00, + 0x15, 0x30, 0x43, 0x52, 0x43, 0x44, 0x57, 0x5a, + 0x41, 0x00, 0x48, 0x56, 0x4d, 0x56, 0x53, 0x44, + 0x53, 0x53, 0x50, 0x50, 0x56, 0x57, 0x43, 0x4d, + 0x43, 0x4d, 0x44, 0x4d, 0x52, 0x44, 0x4a, 0x4b, + 0x30, 0x30, 0x00, 0x68, 0x68, 0x4b, 0x62, 0x57, + 0x5b, 0xcc, 0x53, 0xc7, 0x30, 0x8c, 0x4e, 0x1a, + 0x59, 0xe3, 0x89, 0x29, 0x59, 0xa4, 0x4e, 0x20, + 0x66, 0x21, 0x71, 0x99, 0x65, 0x4d, 0x52, 0x8c, + 0x5f, 0x8d, 0x51, 0xb0, 0x65, 0x1d, 0x52, 0x42, + 0x7d, 0x1f, 0x75, 0xa9, 0x8c, 0xf0, 0x58, 0x39, + 0x54, 0x14, 0x6f, 0x95, 0x62, 0x55, 0x63, 0x00, + 0x4e, 0x09, 0x4e, 0x4a, 0x90, 0xe6, 0x5d, 0x2d, + 0x4e, 0xf3, 0x53, 0x07, 0x63, 0x70, 0x8d, 0x53, + 0x62, 0x81, 0x79, 0x7a, 0x7a, 0x08, 0x54, 0x80, + 0x6e, 0x09, 0x67, 0x08, 0x67, 0x33, 0x75, 0x72, + 0x52, 0xb6, 0x55, 0x4d, 0x91, 0x14, 0x30, 0x15, + 0x30, 0x2c, 0x67, 0x09, 0x4e, 0x8c, 0x4e, 0x89, + 0x5b, 0xb9, 0x70, 0x53, 0x62, 0xd7, 0x76, 0xdd, + 0x52, 0x57, 0x65, 0x97, 0x5f, 0xef, 0x53, 0x30, + 0x00, 0x38, 0x4e, 0x05, 0x00, 0x09, 0x22, 0x01, + 0x60, 0x4f, 0xae, 0x4f, 0xbb, 0x4f, 0x02, 0x50, + 0x7a, 0x50, 0x99, 0x50, 0xe7, 0x50, 0xcf, 0x50, + 0x9e, 0x34, 0x3a, 0x06, 0x4d, 0x51, 0x54, 0x51, + 0x64, 0x51, 0x77, 0x51, 0x1c, 0x05, 0xb9, 0x34, + 0x67, 0x51, 0x8d, 0x51, 0x4b, 0x05, 0x97, 0x51, + 0xa4, 0x51, 0xcc, 0x4e, 0xac, 0x51, 0xb5, 0x51, + 0xdf, 0x91, 0xf5, 0x51, 0x03, 0x52, 0xdf, 0x34, + 0x3b, 0x52, 0x46, 0x52, 0x72, 0x52, 0x77, 0x52, + 0x15, 0x35, 0x02, 0x00, 0x20, 0x80, 0x80, 0x00, + 0x08, 0x00, 0x00, 0xc7, 0x52, 0x00, 0x02, 0x1d, + 0x33, 0x3e, 0x3f, 0x50, 0x82, 0x8a, 0x93, 0xac, + 0xb6, 0xb8, 0xb8, 0xb8, 0x2c, 0x0a, 0x70, 0x70, + 0xca, 0x53, 0xdf, 0x53, 0x63, 0x0b, 0xeb, 0x53, + 0xf1, 0x53, 0x06, 0x54, 0x9e, 0x54, 0x38, 0x54, + 0x48, 0x54, 0x68, 0x54, 0xa2, 0x54, 0xf6, 0x54, + 0x10, 0x55, 0x53, 0x55, 0x63, 0x55, 0x84, 0x55, + 0x84, 0x55, 0x99, 0x55, 0xab, 0x55, 0xb3, 0x55, + 0xc2, 0x55, 0x16, 0x57, 0x06, 0x56, 0x17, 0x57, + 0x51, 0x56, 0x74, 0x56, 0x07, 0x52, 0xee, 0x58, + 0xce, 0x57, 0xf4, 0x57, 0x0d, 0x58, 0x8b, 0x57, + 0x32, 0x58, 0x31, 0x58, 0xac, 0x58, 0xe4, 0x14, + 0xf2, 0x58, 0xf7, 0x58, 0x06, 0x59, 0x1a, 0x59, + 0x22, 0x59, 0x62, 0x59, 0xa8, 0x16, 0xea, 0x16, + 0xec, 0x59, 0x1b, 0x5a, 0x27, 0x5a, 0xd8, 0x59, + 0x66, 0x5a, 0xee, 0x36, 0xfc, 0x36, 0x08, 0x5b, + 0x3e, 0x5b, 0x3e, 0x5b, 0xc8, 0x19, 0xc3, 0x5b, + 0xd8, 0x5b, 0xe7, 0x5b, 0xf3, 0x5b, 0x18, 0x1b, + 0xff, 0x5b, 0x06, 0x5c, 0x53, 0x5f, 0x22, 0x5c, + 0x81, 0x37, 0x60, 0x5c, 0x6e, 0x5c, 0xc0, 0x5c, + 0x8d, 0x5c, 0xe4, 0x1d, 0x43, 0x5d, 0xe6, 0x1d, + 0x6e, 0x5d, 0x6b, 0x5d, 0x7c, 0x5d, 0xe1, 0x5d, + 0xe2, 0x5d, 0x2f, 0x38, 0xfd, 0x5d, 0x28, 0x5e, + 0x3d, 0x5e, 0x69, 0x5e, 0x62, 0x38, 0x83, 0x21, + 0x7c, 0x38, 0xb0, 0x5e, 0xb3, 0x5e, 0xb6, 0x5e, + 0xca, 0x5e, 0x92, 0xa3, 0xfe, 0x5e, 0x31, 0x23, + 0x31, 0x23, 0x01, 0x82, 0x22, 0x5f, 0x22, 0x5f, + 0xc7, 0x38, 0xb8, 0x32, 0xda, 0x61, 0x62, 0x5f, + 0x6b, 0x5f, 0xe3, 0x38, 0x9a, 0x5f, 0xcd, 0x5f, + 0xd7, 0x5f, 0xf9, 0x5f, 0x81, 0x60, 0x3a, 0x39, + 0x1c, 0x39, 0x94, 0x60, 0xd4, 0x26, 0xc7, 0x60, + 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x00, 0x0a, 0x00, 0x00, 0x02, 0x08, + 0x00, 0x80, 0x08, 0x00, 0x00, 0x08, 0x80, 0x28, + 0x80, 0x02, 0x00, 0x00, 0x02, 0x48, 0x61, 0x00, + 0x04, 0x06, 0x04, 0x32, 0x46, 0x6a, 0x5c, 0x67, + 0x96, 0xaa, 0xae, 0xc8, 0xd3, 0x5d, 0x62, 0x00, + 0x54, 0x77, 0xf3, 0x0c, 0x2b, 0x3d, 0x63, 0xfc, + 0x62, 0x68, 0x63, 0x83, 0x63, 0xe4, 0x63, 0xf1, + 0x2b, 0x22, 0x64, 0xc5, 0x63, 0xa9, 0x63, 0x2e, + 0x3a, 0x69, 0x64, 0x7e, 0x64, 0x9d, 0x64, 0x77, + 0x64, 0x6c, 0x3a, 0x4f, 0x65, 0x6c, 0x65, 0x0a, + 0x30, 0xe3, 0x65, 0xf8, 0x66, 0x49, 0x66, 0x19, + 0x3b, 0x91, 0x66, 0x08, 0x3b, 0xe4, 0x3a, 0x92, + 0x51, 0x95, 0x51, 0x00, 0x67, 0x9c, 0x66, 0xad, + 0x80, 0xd9, 0x43, 0x17, 0x67, 0x1b, 0x67, 0x21, + 0x67, 0x5e, 0x67, 0x53, 0x67, 0xc3, 0x33, 0x49, + 0x3b, 0xfa, 0x67, 0x85, 0x67, 0x52, 0x68, 0x85, + 0x68, 0x6d, 0x34, 0x8e, 0x68, 0x1f, 0x68, 0x14, + 0x69, 0x9d, 0x3b, 0x42, 0x69, 0xa3, 0x69, 0xea, + 0x69, 0xa8, 0x6a, 0xa3, 0x36, 0xdb, 0x6a, 0x18, + 0x3c, 0x21, 0x6b, 0xa7, 0x38, 0x54, 0x6b, 0x4e, + 0x3c, 0x72, 0x6b, 0x9f, 0x6b, 0xba, 0x6b, 0xbb, + 0x6b, 0x8d, 0x3a, 0x0b, 0x1d, 0xfa, 0x3a, 0x4e, + 0x6c, 0xbc, 0x3c, 0xbf, 0x6c, 0xcd, 0x6c, 0x67, + 0x6c, 0x16, 0x6d, 0x3e, 0x6d, 0x77, 0x6d, 0x41, + 0x6d, 0x69, 0x6d, 0x78, 0x6d, 0x85, 0x6d, 0x1e, + 0x3d, 0x34, 0x6d, 0x2f, 0x6e, 0x6e, 0x6e, 0x33, + 0x3d, 0xcb, 0x6e, 0xc7, 0x6e, 0xd1, 0x3e, 0xf9, + 0x6d, 0x6e, 0x6f, 0x5e, 0x3f, 0x8e, 0x3f, 0xc6, + 0x6f, 0x39, 0x70, 0x1e, 0x70, 0x1b, 0x70, 0x96, + 0x3d, 0x4a, 0x70, 0x7d, 0x70, 0x77, 0x70, 0xad, + 0x70, 0x25, 0x05, 0x45, 0x71, 0x63, 0x42, 0x9c, + 0x71, 0xab, 0x43, 0x28, 0x72, 0x35, 0x72, 0x50, + 0x72, 0x08, 0x46, 0x80, 0x72, 0x95, 0x72, 0x35, + 0x47, 0x02, 0x20, 0x00, 0x00, 0x20, 0x00, 0x00, + 0x00, 0x00, 0x08, 0x80, 0x00, 0x00, 0x02, 0x02, + 0x80, 0x8a, 0x00, 0x00, 0x20, 0x00, 0x08, 0x0a, + 0x00, 0x80, 0x88, 0x80, 0x20, 0x14, 0x48, 0x7a, + 0x73, 0x8b, 0x73, 0xac, 0x3e, 0xa5, 0x73, 0xb8, + 0x3e, 0xb8, 0x3e, 0x47, 0x74, 0x5c, 0x74, 0x71, + 0x74, 0x85, 0x74, 0xca, 0x74, 0x1b, 0x3f, 0x24, + 0x75, 0x36, 0x4c, 0x3e, 0x75, 0x92, 0x4c, 0x70, + 0x75, 0x9f, 0x21, 0x10, 0x76, 0xa1, 0x4f, 0xb8, + 0x4f, 0x44, 0x50, 0xfc, 0x3f, 0x08, 0x40, 0xf4, + 0x76, 0xf3, 0x50, 0xf2, 0x50, 0x19, 0x51, 0x33, + 0x51, 0x1e, 0x77, 0x1f, 0x77, 0x1f, 0x77, 0x4a, + 0x77, 0x39, 0x40, 0x8b, 0x77, 0x46, 0x40, 0x96, + 0x40, 0x1d, 0x54, 0x4e, 0x78, 0x8c, 0x78, 0xcc, + 0x78, 0xe3, 0x40, 0x26, 0x56, 0x56, 0x79, 0x9a, + 0x56, 0xc5, 0x56, 0x8f, 0x79, 0xeb, 0x79, 0x2f, + 0x41, 0x40, 0x7a, 0x4a, 0x7a, 0x4f, 0x7a, 0x7c, + 0x59, 0xa7, 0x5a, 0xa7, 0x5a, 0xee, 0x7a, 0x02, + 0x42, 0xab, 0x5b, 0xc6, 0x7b, 0xc9, 0x7b, 0x27, + 0x42, 0x80, 0x5c, 0xd2, 0x7c, 0xa0, 0x42, 0xe8, + 0x7c, 0xe3, 0x7c, 0x00, 0x7d, 0x86, 0x5f, 0x63, + 0x7d, 0x01, 0x43, 0xc7, 0x7d, 0x02, 0x7e, 0x45, + 0x7e, 0x34, 0x43, 0x28, 0x62, 0x47, 0x62, 0x59, + 0x43, 0xd9, 0x62, 0x7a, 0x7f, 0x3e, 0x63, 0x95, + 0x7f, 0xfa, 0x7f, 0x05, 0x80, 0xda, 0x64, 0x23, + 0x65, 0x60, 0x80, 0xa8, 0x65, 0x70, 0x80, 0x5f, + 0x33, 0xd5, 0x43, 0xb2, 0x80, 0x03, 0x81, 0x0b, + 0x44, 0x3e, 0x81, 0xb5, 0x5a, 0xa7, 0x67, 0xb5, + 0x67, 0x93, 0x33, 0x9c, 0x33, 0x01, 0x82, 0x04, + 0x82, 0x9e, 0x8f, 0x6b, 0x44, 0x91, 0x82, 0x8b, + 0x82, 0x9d, 0x82, 0xb3, 0x52, 0xb1, 0x82, 0xb3, + 0x82, 0xbd, 0x82, 0xe6, 0x82, 0x3c, 0x6b, 0xe5, + 0x82, 0x1d, 0x83, 0x63, 0x83, 0xad, 0x83, 0x23, + 0x83, 0xbd, 0x83, 0xe7, 0x83, 0x57, 0x84, 0x53, + 0x83, 0xca, 0x83, 0xcc, 0x83, 0xdc, 0x83, 0x36, + 0x6c, 0x6b, 0x6d, 0x02, 0x00, 0x00, 0x20, 0x22, + 0x2a, 0xa0, 0x0a, 0x00, 0x20, 0x80, 0x28, 0x00, + 0xa8, 0x20, 0x20, 0x00, 0x02, 0x80, 0x22, 0x02, + 0x8a, 0x08, 0x00, 0xaa, 0x00, 0x00, 0x00, 0x02, + 0x00, 0x00, 0x28, 0xd5, 0x6c, 0x2b, 0x45, 0xf1, + 0x84, 0xf3, 0x84, 0x16, 0x85, 0xca, 0x73, 0x64, + 0x85, 0x2c, 0x6f, 0x5d, 0x45, 0x61, 0x45, 0xb1, + 0x6f, 0xd2, 0x70, 0x6b, 0x45, 0x50, 0x86, 0x5c, + 0x86, 0x67, 0x86, 0x69, 0x86, 0xa9, 0x86, 0x88, + 0x86, 0x0e, 0x87, 0xe2, 0x86, 0x79, 0x87, 0x28, + 0x87, 0x6b, 0x87, 0x86, 0x87, 0xd7, 0x45, 0xe1, + 0x87, 0x01, 0x88, 0xf9, 0x45, 0x60, 0x88, 0x63, + 0x88, 0x67, 0x76, 0xd7, 0x88, 0xde, 0x88, 0x35, + 0x46, 0xfa, 0x88, 0xbb, 0x34, 0xae, 0x78, 0x66, + 0x79, 0xbe, 0x46, 0xc7, 0x46, 0xa0, 0x8a, 0xed, + 0x8a, 0x8a, 0x8b, 0x55, 0x8c, 0xa8, 0x7c, 0xab, + 0x8c, 0xc1, 0x8c, 0x1b, 0x8d, 0x77, 0x8d, 0x2f, + 0x7f, 0x04, 0x08, 0xcb, 0x8d, 0xbc, 0x8d, 0xf0, + 0x8d, 0xde, 0x08, 0xd4, 0x8e, 0x38, 0x8f, 0xd2, + 0x85, 0xed, 0x85, 0x94, 0x90, 0xf1, 0x90, 0x11, + 0x91, 0x2e, 0x87, 0x1b, 0x91, 0x38, 0x92, 0xd7, + 0x92, 0xd8, 0x92, 0x7c, 0x92, 0xf9, 0x93, 0x15, + 0x94, 0xfa, 0x8b, 0x8b, 0x95, 0x95, 0x49, 0xb7, + 0x95, 0x77, 0x8d, 0xe6, 0x49, 0xc3, 0x96, 0xb2, + 0x5d, 0x23, 0x97, 0x45, 0x91, 0x1a, 0x92, 0x6e, + 0x4a, 0x76, 0x4a, 0xe0, 0x97, 0x0a, 0x94, 0xb2, + 0x4a, 0x96, 0x94, 0x0b, 0x98, 0x0b, 0x98, 0x29, + 0x98, 0xb6, 0x95, 0xe2, 0x98, 0x33, 0x4b, 0x29, + 0x99, 0xa7, 0x99, 0xc2, 0x99, 0xfe, 0x99, 0xce, + 0x4b, 0x30, 0x9b, 0x12, 0x9b, 0x40, 0x9c, 0xfd, + 0x9c, 0xce, 0x4c, 0xed, 0x4c, 0x67, 0x9d, 0xce, + 0xa0, 0xf8, 0x4c, 0x05, 0xa1, 0x0e, 0xa2, 0x91, + 0xa2, 0xbb, 0x9e, 0x56, 0x4d, 0xf9, 0x9e, 0xfe, + 0x9e, 0x05, 0x9f, 0x0f, 0x9f, 0x16, 0x9f, 0x3b, + 0x9f, 0x00, 0xa6, 0x02, 0x88, 0xa0, 0x00, 0x00, + 0x00, 0x00, 0x80, 0x00, 0x28, 0x00, 0x08, 0xa0, + 0x80, 0xa0, 0x80, 0x00, 0x80, 0x80, 0x00, 0x0a, + 0x88, 0x80, 0x00, 0x80, 0x00, 0x20, 0x2a, 0x00, + 0x80, }; static const uint16_t unicode_comp_table[945] = { @@ -2191,9 +2247,9 @@ static const uint16_t unicode_comp_table[945] = { 0x5704, 0x5706, 0x5708, 0x570a, 0x570c, 0x570e, 0x5710, 0x5712, 0x5714, 0x5716, 0x5740, 0x5742, 0x5744, 0x5780, 0x5781, 0x57c0, 0x57c1, 0x5800, 0x5801, 0x5840, 0x5841, 0x5880, 0x5881, 0x5900, - 0x5901, 0x5902, 0x5903, 0x5940, 0x8e80, 0x8e82, 0x8ec0, 0x8f00, - 0x8f01, 0x8f40, 0x8f41, 0x8f81, 0x8f80, 0x8f83, 0x8fc0, 0x8fc1, - 0x9000, + 0x5901, 0x5902, 0x5903, 0x5940, 0x8f40, 0x8f42, 0x8f80, 0x8fc0, + 0x8fc1, 0x9000, 0x9001, 0x9041, 0x9040, 0x9043, 0x9080, 0x9081, + 0x90c0, }; typedef enum { @@ -2279,7 +2335,7 @@ static const char unicode_gc_name_table[] = "C,Other" "\0" ; -static const uint8_t unicode_gc_table[3790] = { +static const uint8_t unicode_gc_table[3948] = { 0xfa, 0x18, 0x17, 0x56, 0x0d, 0x56, 0x12, 0x13, 0x16, 0x0c, 0x16, 0x11, 0x36, 0xe9, 0x02, 0x36, 0x4c, 0x36, 0xe1, 0x12, 0x12, 0x16, 0x13, 0x0e, @@ -2312,129 +2368,130 @@ static const uint8_t unicode_gc_table[3790] = { 0x11, 0x06, 0x16, 0x26, 0x16, 0x26, 0x16, 0x06, 0xe0, 0x00, 0xe5, 0x13, 0x60, 0x65, 0x36, 0xe0, 0x03, 0xbb, 0x4c, 0x36, 0x0d, 0x36, 0x2f, 0xe6, - 0x03, 0x16, 0x1b, 0x00, 0x36, 0xe5, 0x18, 0x04, - 0xe5, 0x02, 0xe6, 0x0d, 0xe9, 0x02, 0x76, 0x25, - 0x06, 0xe5, 0x5b, 0x16, 0x05, 0xc6, 0x1b, 0x0f, - 0xa6, 0x24, 0x26, 0x0f, 0x66, 0x25, 0xe9, 0x02, - 0x45, 0x2f, 0x05, 0xf6, 0x06, 0x00, 0x1b, 0x05, - 0x06, 0xe5, 0x16, 0xe6, 0x13, 0x20, 0xe5, 0x51, - 0xe6, 0x03, 0x05, 0xe0, 0x06, 0xe9, 0x02, 0xe5, - 0x19, 0xe6, 0x01, 0x24, 0x0f, 0x56, 0x04, 0x20, - 0x06, 0x2d, 0xe5, 0x0e, 0x66, 0x04, 0xe6, 0x01, - 0x04, 0x46, 0x04, 0x86, 0x20, 0xf6, 0x07, 0x00, - 0xe5, 0x11, 0x46, 0x20, 0x16, 0x00, 0xe5, 0x03, - 0xe0, 0x2d, 0xe5, 0x0d, 0x00, 0xe5, 0x0a, 0xe0, - 0x03, 0xe6, 0x07, 0x1b, 0xe6, 0x18, 0x07, 0xe5, - 0x2e, 0x06, 0x07, 0x06, 0x05, 0x47, 0xe6, 0x00, - 0x67, 0x06, 0x27, 0x05, 0xc6, 0xe5, 0x02, 0x26, - 0x36, 0xe9, 0x02, 0x16, 0x04, 0xe5, 0x07, 0x06, - 0x27, 0x00, 0xe5, 0x00, 0x20, 0x25, 0x20, 0xe5, - 0x0e, 0x00, 0xc5, 0x00, 0x05, 0x40, 0x65, 0x20, - 0x06, 0x05, 0x47, 0x66, 0x20, 0x27, 0x20, 0x27, - 0x06, 0x05, 0xe0, 0x00, 0x07, 0x60, 0x25, 0x00, - 0x45, 0x26, 0x20, 0xe9, 0x02, 0x25, 0x2d, 0xab, - 0x0f, 0x0d, 0x05, 0x16, 0x06, 0x20, 0x26, 0x07, - 0x00, 0xa5, 0x60, 0x25, 0x20, 0xe5, 0x0e, 0x00, - 0xc5, 0x00, 0x25, 0x00, 0x25, 0x00, 0x25, 0x20, - 0x06, 0x00, 0x47, 0x26, 0x60, 0x26, 0x20, 0x46, - 0x40, 0x06, 0xc0, 0x65, 0x00, 0x05, 0xc0, 0xe9, - 0x02, 0x26, 0x45, 0x06, 0x16, 0xe0, 0x02, 0x26, - 0x07, 0x00, 0xe5, 0x01, 0x00, 0x45, 0x00, 0xe5, - 0x0e, 0x00, 0xc5, 0x00, 0x25, 0x00, 0x85, 0x20, - 0x06, 0x05, 0x47, 0x86, 0x00, 0x26, 0x07, 0x00, - 0x27, 0x06, 0x20, 0x05, 0xe0, 0x07, 0x25, 0x26, - 0x20, 0xe9, 0x02, 0x16, 0x0d, 0xc0, 0x05, 0xa6, - 0x00, 0x06, 0x27, 0x00, 0xe5, 0x00, 0x20, 0x25, - 0x20, 0xe5, 0x0e, 0x00, 0xc5, 0x00, 0x25, 0x00, - 0x85, 0x20, 0x06, 0x05, 0x07, 0x06, 0x07, 0x66, - 0x20, 0x27, 0x20, 0x27, 0x06, 0xc0, 0x26, 0x07, + 0x03, 0x16, 0x1b, 0x56, 0xe5, 0x18, 0x04, 0xe5, + 0x02, 0xe6, 0x0d, 0xe9, 0x02, 0x76, 0x25, 0x06, + 0xe5, 0x5b, 0x16, 0x05, 0xc6, 0x1b, 0x0f, 0xa6, + 0x24, 0x26, 0x0f, 0x66, 0x25, 0xe9, 0x02, 0x45, + 0x2f, 0x05, 0xf6, 0x06, 0x00, 0x1b, 0x05, 0x06, + 0xe5, 0x16, 0xe6, 0x13, 0x20, 0xe5, 0x51, 0xe6, + 0x03, 0x05, 0xe0, 0x06, 0xe9, 0x02, 0xe5, 0x19, + 0xe6, 0x01, 0x24, 0x0f, 0x56, 0x04, 0x20, 0x06, + 0x2d, 0xe5, 0x0e, 0x66, 0x04, 0xe6, 0x01, 0x04, + 0x46, 0x04, 0x86, 0x20, 0xf6, 0x07, 0x00, 0xe5, + 0x11, 0x46, 0x20, 0x16, 0x00, 0xe5, 0x03, 0x80, + 0xe5, 0x10, 0x0e, 0xa5, 0x00, 0x3b, 0xa0, 0xe6, + 0x00, 0xe5, 0x21, 0x04, 0xe6, 0x10, 0x1b, 0xe6, + 0x18, 0x07, 0xe5, 0x2e, 0x06, 0x07, 0x06, 0x05, + 0x47, 0xe6, 0x00, 0x67, 0x06, 0x27, 0x05, 0xc6, + 0xe5, 0x02, 0x26, 0x36, 0xe9, 0x02, 0x16, 0x04, + 0xe5, 0x07, 0x06, 0x27, 0x00, 0xe5, 0x00, 0x20, + 0x25, 0x20, 0xe5, 0x0e, 0x00, 0xc5, 0x00, 0x05, + 0x40, 0x65, 0x20, 0x06, 0x05, 0x47, 0x66, 0x20, + 0x27, 0x20, 0x27, 0x06, 0x05, 0xe0, 0x00, 0x07, 0x60, 0x25, 0x00, 0x45, 0x26, 0x20, 0xe9, 0x02, - 0x0f, 0x05, 0xab, 0xe0, 0x02, 0x06, 0x05, 0x00, - 0xa5, 0x40, 0x45, 0x00, 0x65, 0x40, 0x25, 0x00, - 0x05, 0x00, 0x25, 0x40, 0x25, 0x40, 0x45, 0x40, - 0xe5, 0x04, 0x60, 0x27, 0x06, 0x27, 0x40, 0x47, - 0x00, 0x47, 0x06, 0x20, 0x05, 0xa0, 0x07, 0xe0, - 0x06, 0xe9, 0x02, 0x4b, 0xaf, 0x0d, 0x0f, 0x80, - 0x06, 0x47, 0x06, 0xe5, 0x00, 0x00, 0x45, 0x00, - 0xe5, 0x0f, 0x00, 0xe5, 0x08, 0x40, 0x05, 0x46, - 0x67, 0x00, 0x46, 0x00, 0x66, 0xc0, 0x26, 0x00, - 0x45, 0x80, 0x25, 0x26, 0x20, 0xe9, 0x02, 0xc0, - 0x16, 0xcb, 0x0f, 0x05, 0x06, 0x27, 0x16, 0xe5, - 0x00, 0x00, 0x45, 0x00, 0xe5, 0x0f, 0x00, 0xe5, - 0x02, 0x00, 0x85, 0x20, 0x06, 0x05, 0x07, 0x06, - 0x87, 0x00, 0x06, 0x27, 0x00, 0x27, 0x26, 0xc0, - 0x27, 0xc0, 0x05, 0x00, 0x25, 0x26, 0x20, 0xe9, - 0x02, 0x00, 0x25, 0xe0, 0x05, 0x26, 0x27, 0xe5, - 0x01, 0x00, 0x45, 0x00, 0xe5, 0x21, 0x26, 0x05, - 0x47, 0x66, 0x00, 0x47, 0x00, 0x47, 0x06, 0x05, - 0x0f, 0x60, 0x45, 0x07, 0xcb, 0x45, 0x26, 0x20, - 0xe9, 0x02, 0xeb, 0x01, 0x0f, 0xa5, 0x00, 0x06, - 0x27, 0x00, 0xe5, 0x0a, 0x40, 0xe5, 0x10, 0x00, - 0xe5, 0x01, 0x00, 0x05, 0x20, 0xc5, 0x40, 0x06, - 0x60, 0x47, 0x46, 0x00, 0x06, 0x00, 0xe7, 0x00, - 0xa0, 0xe9, 0x02, 0x20, 0x27, 0x16, 0xe0, 0x04, - 0xe5, 0x28, 0x06, 0x25, 0xc6, 0x60, 0x0d, 0xa5, - 0x04, 0xe6, 0x00, 0x16, 0xe9, 0x02, 0x36, 0xe0, - 0x1d, 0x25, 0x00, 0x05, 0x00, 0x85, 0x00, 0xe5, - 0x10, 0x00, 0x05, 0x00, 0xe5, 0x02, 0x06, 0x25, - 0xe6, 0x01, 0x05, 0x20, 0x85, 0x00, 0x04, 0x00, - 0xa6, 0x20, 0xe9, 0x02, 0x20, 0x65, 0xe0, 0x18, - 0x05, 0x4f, 0xf6, 0x07, 0x0f, 0x16, 0x4f, 0x26, - 0xaf, 0xe9, 0x02, 0xeb, 0x02, 0x0f, 0x06, 0x0f, - 0x06, 0x0f, 0x06, 0x12, 0x13, 0x12, 0x13, 0x27, - 0xe5, 0x00, 0x00, 0xe5, 0x1c, 0x60, 0xe6, 0x06, - 0x07, 0x86, 0x16, 0x26, 0x85, 0xe6, 0x03, 0x00, - 0xe6, 0x1c, 0x00, 0xef, 0x00, 0x06, 0xaf, 0x00, - 0x2f, 0x96, 0x6f, 0x36, 0xe0, 0x1d, 0xe5, 0x23, - 0x27, 0x66, 0x07, 0xa6, 0x07, 0x26, 0x27, 0x26, - 0x05, 0xe9, 0x02, 0xb6, 0xa5, 0x27, 0x26, 0x65, - 0x46, 0x05, 0x47, 0x25, 0xc7, 0x45, 0x66, 0xe5, - 0x05, 0x06, 0x27, 0x26, 0xa7, 0x06, 0x05, 0x07, - 0xe9, 0x02, 0x47, 0x06, 0x2f, 0xe1, 0x1e, 0x00, - 0x01, 0x80, 0x01, 0x20, 0xe2, 0x23, 0x16, 0x04, - 0x42, 0xe5, 0x80, 0xc1, 0x00, 0x65, 0x20, 0xc5, - 0x00, 0x05, 0x00, 0x65, 0x20, 0xe5, 0x21, 0x00, - 0x65, 0x20, 0xe5, 0x19, 0x00, 0x65, 0x20, 0xc5, - 0x00, 0x05, 0x00, 0x65, 0x20, 0xe5, 0x07, 0x00, - 0xe5, 0x31, 0x00, 0x65, 0x20, 0xe5, 0x3b, 0x20, - 0x46, 0xf6, 0x01, 0xeb, 0x0c, 0x40, 0xe5, 0x08, - 0xef, 0x02, 0xa0, 0xe1, 0x4e, 0x20, 0xa2, 0x20, - 0x11, 0xe5, 0x81, 0xe4, 0x0f, 0x16, 0xe5, 0x09, - 0x17, 0xe5, 0x12, 0x12, 0x13, 0x40, 0xe5, 0x43, - 0x56, 0x4a, 0xe5, 0x00, 0xc0, 0xe5, 0x05, 0x00, - 0x65, 0x46, 0xe0, 0x03, 0xe5, 0x0a, 0x46, 0x36, - 0xe0, 0x01, 0xe5, 0x0a, 0x26, 0xe0, 0x04, 0xe5, - 0x05, 0x00, 0x45, 0x00, 0x26, 0xe0, 0x04, 0xe5, - 0x2c, 0x26, 0x07, 0xc6, 0xe7, 0x00, 0x06, 0x27, - 0xe6, 0x03, 0x56, 0x04, 0x56, 0x0d, 0x05, 0x06, - 0x20, 0xe9, 0x02, 0xa0, 0xeb, 0x02, 0xa0, 0xb6, - 0x11, 0x76, 0x46, 0x1b, 0x00, 0xe9, 0x02, 0xa0, - 0xe5, 0x1b, 0x04, 0xe5, 0x2d, 0xc0, 0x85, 0x26, - 0xe5, 0x1a, 0x06, 0x05, 0x80, 0xe5, 0x3e, 0xe0, - 0x02, 0xe5, 0x17, 0x00, 0x46, 0x67, 0x26, 0x47, - 0x60, 0x27, 0x06, 0xa7, 0x46, 0x60, 0x0f, 0x40, - 0x36, 0xe9, 0x02, 0xe5, 0x16, 0x20, 0x85, 0xe0, - 0x03, 0xe5, 0x24, 0x60, 0xe5, 0x12, 0xa0, 0xe9, - 0x02, 0x0b, 0x40, 0xef, 0x1a, 0xe5, 0x0f, 0x26, - 0x27, 0x06, 0x20, 0x36, 0xe5, 0x2d, 0x07, 0x06, - 0x07, 0xc6, 0x00, 0x06, 0x07, 0x06, 0x27, 0xe6, - 0x00, 0xa7, 0xe6, 0x02, 0x20, 0x06, 0xe9, 0x02, - 0xa0, 0xe9, 0x02, 0xa0, 0xd6, 0x04, 0xb6, 0x20, - 0xe6, 0x06, 0x08, 0x26, 0xe0, 0x37, 0x66, 0x07, + 0x25, 0x2d, 0xab, 0x0f, 0x0d, 0x05, 0x16, 0x06, + 0x20, 0x26, 0x07, 0x00, 0xa5, 0x60, 0x25, 0x20, + 0xe5, 0x0e, 0x00, 0xc5, 0x00, 0x25, 0x00, 0x25, + 0x00, 0x25, 0x20, 0x06, 0x00, 0x47, 0x26, 0x60, + 0x26, 0x20, 0x46, 0x40, 0x06, 0xc0, 0x65, 0x00, + 0x05, 0xc0, 0xe9, 0x02, 0x26, 0x45, 0x06, 0x16, + 0xe0, 0x02, 0x26, 0x07, 0x00, 0xe5, 0x01, 0x00, + 0x45, 0x00, 0xe5, 0x0e, 0x00, 0xc5, 0x00, 0x25, + 0x00, 0x85, 0x20, 0x06, 0x05, 0x47, 0x86, 0x00, + 0x26, 0x07, 0x00, 0x27, 0x06, 0x20, 0x05, 0xe0, + 0x07, 0x25, 0x26, 0x20, 0xe9, 0x02, 0x16, 0x0d, + 0xc0, 0x05, 0xa6, 0x00, 0x06, 0x27, 0x00, 0xe5, + 0x00, 0x20, 0x25, 0x20, 0xe5, 0x0e, 0x00, 0xc5, + 0x00, 0x25, 0x00, 0x85, 0x20, 0x06, 0x05, 0x07, + 0x06, 0x07, 0x66, 0x20, 0x27, 0x20, 0x27, 0x06, + 0xc0, 0x26, 0x07, 0x60, 0x25, 0x00, 0x45, 0x26, + 0x20, 0xe9, 0x02, 0x0f, 0x05, 0xab, 0xe0, 0x02, + 0x06, 0x05, 0x00, 0xa5, 0x40, 0x45, 0x00, 0x65, + 0x40, 0x25, 0x00, 0x05, 0x00, 0x25, 0x40, 0x25, + 0x40, 0x45, 0x40, 0xe5, 0x04, 0x60, 0x27, 0x06, + 0x27, 0x40, 0x47, 0x00, 0x47, 0x06, 0x20, 0x05, + 0xa0, 0x07, 0xe0, 0x06, 0xe9, 0x02, 0x4b, 0xaf, + 0x0d, 0x0f, 0x80, 0x06, 0x47, 0x06, 0xe5, 0x00, + 0x00, 0x45, 0x00, 0xe5, 0x0f, 0x00, 0xe5, 0x08, + 0x20, 0x06, 0x05, 0x46, 0x67, 0x00, 0x46, 0x00, + 0x66, 0xc0, 0x26, 0x00, 0x45, 0x20, 0x05, 0x20, + 0x25, 0x26, 0x20, 0xe9, 0x02, 0xc0, 0x16, 0xcb, + 0x0f, 0x05, 0x06, 0x27, 0x16, 0xe5, 0x00, 0x00, + 0x45, 0x00, 0xe5, 0x0f, 0x00, 0xe5, 0x02, 0x00, + 0x85, 0x20, 0x06, 0x05, 0x07, 0x06, 0x87, 0x00, + 0x06, 0x27, 0x00, 0x27, 0x26, 0xc0, 0x27, 0xa0, + 0x25, 0x00, 0x25, 0x26, 0x20, 0xe9, 0x02, 0x00, + 0x25, 0x07, 0xe0, 0x04, 0x26, 0x27, 0xe5, 0x01, + 0x00, 0x45, 0x00, 0xe5, 0x21, 0x26, 0x05, 0x47, + 0x66, 0x00, 0x47, 0x00, 0x47, 0x06, 0x05, 0x0f, + 0x60, 0x45, 0x07, 0xcb, 0x45, 0x26, 0x20, 0xe9, + 0x02, 0xeb, 0x01, 0x0f, 0xa5, 0x00, 0x06, 0x27, + 0x00, 0xe5, 0x0a, 0x40, 0xe5, 0x10, 0x00, 0xe5, + 0x01, 0x00, 0x05, 0x20, 0xc5, 0x40, 0x06, 0x60, + 0x47, 0x46, 0x00, 0x06, 0x00, 0xe7, 0x00, 0xa0, + 0xe9, 0x02, 0x20, 0x27, 0x16, 0xe0, 0x04, 0xe5, + 0x28, 0x06, 0x25, 0xc6, 0x60, 0x0d, 0xa5, 0x04, + 0xe6, 0x00, 0x16, 0xe9, 0x02, 0x36, 0xe0, 0x1d, + 0x25, 0x00, 0x05, 0x00, 0x85, 0x00, 0xe5, 0x10, + 0x00, 0x05, 0x00, 0xe5, 0x02, 0x06, 0x25, 0xe6, + 0x01, 0x05, 0x20, 0x85, 0x00, 0x04, 0x00, 0xc6, + 0x00, 0xe9, 0x02, 0x20, 0x65, 0xe0, 0x18, 0x05, + 0x4f, 0xf6, 0x07, 0x0f, 0x16, 0x4f, 0x26, 0xaf, + 0xe9, 0x02, 0xeb, 0x02, 0x0f, 0x06, 0x0f, 0x06, + 0x0f, 0x06, 0x12, 0x13, 0x12, 0x13, 0x27, 0xe5, + 0x00, 0x00, 0xe5, 0x1c, 0x60, 0xe6, 0x06, 0x07, + 0x86, 0x16, 0x26, 0x85, 0xe6, 0x03, 0x00, 0xe6, + 0x1c, 0x00, 0xef, 0x00, 0x06, 0xaf, 0x00, 0x2f, + 0x96, 0x6f, 0x36, 0xe0, 0x1d, 0xe5, 0x23, 0x27, + 0x66, 0x07, 0xa6, 0x07, 0x26, 0x27, 0x26, 0x05, + 0xe9, 0x02, 0xb6, 0xa5, 0x27, 0x26, 0x65, 0x46, + 0x05, 0x47, 0x25, 0xc7, 0x45, 0x66, 0xe5, 0x05, + 0x06, 0x27, 0x26, 0xa7, 0x06, 0x05, 0x07, 0xe9, + 0x02, 0x47, 0x06, 0x2f, 0xe1, 0x1e, 0x00, 0x01, + 0x80, 0x01, 0x20, 0xe2, 0x23, 0x16, 0x04, 0x42, + 0xe5, 0x80, 0xc1, 0x00, 0x65, 0x20, 0xc5, 0x00, + 0x05, 0x00, 0x65, 0x20, 0xe5, 0x21, 0x00, 0x65, + 0x20, 0xe5, 0x19, 0x00, 0x65, 0x20, 0xc5, 0x00, + 0x05, 0x00, 0x65, 0x20, 0xe5, 0x07, 0x00, 0xe5, + 0x31, 0x00, 0x65, 0x20, 0xe5, 0x3b, 0x20, 0x46, + 0xf6, 0x01, 0xeb, 0x0c, 0x40, 0xe5, 0x08, 0xef, + 0x02, 0xa0, 0xe1, 0x4e, 0x20, 0xa2, 0x20, 0x11, + 0xe5, 0x81, 0xe4, 0x0f, 0x16, 0xe5, 0x09, 0x17, + 0xe5, 0x12, 0x12, 0x13, 0x40, 0xe5, 0x43, 0x56, + 0x4a, 0xe5, 0x00, 0xc0, 0xe5, 0x0a, 0x46, 0x07, + 0xe0, 0x01, 0xe5, 0x0b, 0x26, 0x07, 0x36, 0xe0, + 0x01, 0xe5, 0x0a, 0x26, 0xe0, 0x04, 0xe5, 0x05, + 0x00, 0x45, 0x00, 0x26, 0xe0, 0x04, 0xe5, 0x2c, + 0x26, 0x07, 0xc6, 0xe7, 0x00, 0x06, 0x27, 0xe6, + 0x03, 0x56, 0x04, 0x56, 0x0d, 0x05, 0x06, 0x20, + 0xe9, 0x02, 0xa0, 0xeb, 0x02, 0xa0, 0xb6, 0x11, + 0x76, 0x46, 0x1b, 0x06, 0xe9, 0x02, 0xa0, 0xe5, + 0x1b, 0x04, 0xe5, 0x2d, 0xc0, 0x85, 0x26, 0xe5, + 0x1a, 0x06, 0x05, 0x80, 0xe5, 0x3e, 0xe0, 0x02, + 0xe5, 0x17, 0x00, 0x46, 0x67, 0x26, 0x47, 0x60, + 0x27, 0x06, 0xa7, 0x46, 0x60, 0x0f, 0x40, 0x36, + 0xe9, 0x02, 0xe5, 0x16, 0x20, 0x85, 0xe0, 0x03, + 0xe5, 0x24, 0x60, 0xe5, 0x12, 0xa0, 0xe9, 0x02, + 0x0b, 0x40, 0xef, 0x1a, 0xe5, 0x0f, 0x26, 0x27, + 0x06, 0x20, 0x36, 0xe5, 0x2d, 0x07, 0x06, 0x07, + 0xc6, 0x00, 0x06, 0x07, 0x06, 0x27, 0xe6, 0x00, + 0xa7, 0xe6, 0x02, 0x20, 0x06, 0xe9, 0x02, 0xa0, + 0xe9, 0x02, 0xa0, 0xd6, 0x04, 0xb6, 0x20, 0xe6, + 0x06, 0x08, 0xe6, 0x08, 0xe0, 0x29, 0x66, 0x07, 0xe5, 0x27, 0x06, 0x07, 0x86, 0x07, 0x06, 0x87, - 0x06, 0x27, 0xc5, 0x60, 0xe9, 0x02, 0xd6, 0xef, - 0x02, 0xe6, 0x01, 0xef, 0x01, 0x40, 0x26, 0x07, - 0xe5, 0x16, 0x07, 0x66, 0x27, 0x26, 0x07, 0x46, - 0x25, 0xe9, 0x02, 0xe5, 0x24, 0x06, 0x07, 0x26, - 0x47, 0x06, 0x07, 0x46, 0x27, 0xe0, 0x00, 0x76, - 0xe5, 0x1c, 0xe7, 0x00, 0xe6, 0x00, 0x27, 0x26, - 0x40, 0x96, 0xe9, 0x02, 0x40, 0x45, 0xe9, 0x02, - 0xe5, 0x16, 0xa4, 0x36, 0xe2, 0x01, 0xc0, 0xe1, - 0x23, 0x20, 0x41, 0xf6, 0x00, 0xe0, 0x00, 0x46, - 0x16, 0xe6, 0x05, 0x07, 0xc6, 0x65, 0x06, 0xa5, - 0x06, 0x25, 0x07, 0x26, 0x05, 0x80, 0xe2, 0x24, - 0xe4, 0x37, 0xe2, 0x05, 0x04, 0xe2, 0x1a, 0xe4, - 0x1d, 0xe6, 0x32, 0x00, 0x86, 0xff, 0x80, 0x0e, + 0x06, 0x27, 0xe5, 0x00, 0x40, 0xe9, 0x02, 0xd6, + 0xef, 0x02, 0xe6, 0x01, 0xef, 0x01, 0x36, 0x00, + 0x26, 0x07, 0xe5, 0x16, 0x07, 0x66, 0x27, 0x26, + 0x07, 0x46, 0x25, 0xe9, 0x02, 0xe5, 0x24, 0x06, + 0x07, 0x26, 0x47, 0x06, 0x07, 0x46, 0x27, 0xe0, + 0x00, 0x76, 0xe5, 0x1c, 0xe7, 0x00, 0xe6, 0x00, + 0x27, 0x26, 0x40, 0x96, 0xe9, 0x02, 0x40, 0x45, + 0xe9, 0x02, 0xe5, 0x16, 0xa4, 0x36, 0xe2, 0x01, + 0xc0, 0xe1, 0x23, 0x20, 0x41, 0xf6, 0x00, 0xe0, + 0x00, 0x46, 0x16, 0xe6, 0x05, 0x07, 0xc6, 0x65, + 0x06, 0xa5, 0x06, 0x25, 0x07, 0x26, 0x05, 0x80, + 0xe2, 0x24, 0xe4, 0x37, 0xe2, 0x05, 0x04, 0xe2, + 0x1a, 0xe4, 0x1d, 0xe6, 0x38, 0xff, 0x80, 0x0e, 0xe2, 0x00, 0xff, 0x5a, 0xe2, 0x00, 0xe1, 0x00, 0xa2, 0x20, 0xa1, 0x20, 0xe2, 0x00, 0xe1, 0x00, 0xe2, 0x00, 0xe1, 0x00, 0xa2, 0x20, 0xa1, 0x20, @@ -2452,8 +2509,8 @@ static const uint8_t unicode_gc_table[3790] = { 0xf6, 0x03, 0x0c, 0x16, 0x10, 0xf6, 0x02, 0x17, 0x9b, 0x00, 0xfb, 0x02, 0x0b, 0x04, 0x20, 0xab, 0x4c, 0x12, 0x13, 0x04, 0xeb, 0x02, 0x4c, 0x12, - 0x13, 0x00, 0xe4, 0x05, 0x40, 0xed, 0x18, 0xe0, - 0x08, 0xe6, 0x05, 0x68, 0x06, 0x48, 0xe6, 0x04, + 0x13, 0x00, 0xe4, 0x05, 0x40, 0xed, 0x19, 0xe0, + 0x07, 0xe6, 0x05, 0x68, 0x06, 0x48, 0xe6, 0x04, 0xe0, 0x07, 0x2f, 0x01, 0x6f, 0x01, 0x2f, 0x02, 0x41, 0x22, 0x41, 0x02, 0x0f, 0x01, 0x2f, 0x0c, 0x81, 0xaf, 0x01, 0x0f, 0x01, 0x0f, 0x01, 0x0f, @@ -2481,179 +2538,186 @@ static const uint8_t unicode_gc_table[3790] = { 0x13, 0x12, 0x13, 0xec, 0x18, 0x12, 0x13, 0xec, 0x80, 0x7a, 0xef, 0x28, 0xec, 0x0d, 0x2f, 0xac, 0xef, 0x1f, 0x20, 0xef, 0x18, 0x00, 0xef, 0x61, - 0xe1, 0x27, 0x00, 0xe2, 0x27, 0x00, 0x5f, 0x21, - 0x22, 0xdf, 0x41, 0x02, 0x3f, 0x02, 0x3f, 0x82, - 0x24, 0x41, 0x02, 0xff, 0x5a, 0x02, 0xaf, 0x7f, - 0x46, 0x3f, 0x80, 0x76, 0x0b, 0x36, 0xe2, 0x1e, - 0x00, 0x02, 0x80, 0x02, 0x20, 0xe5, 0x30, 0xc0, - 0x04, 0x16, 0xe0, 0x06, 0x06, 0xe5, 0x0f, 0xe0, - 0x01, 0xc5, 0x00, 0xc5, 0x00, 0xc5, 0x00, 0xc5, + 0xe1, 0x28, 0xe2, 0x28, 0x5f, 0x21, 0x22, 0xdf, + 0x41, 0x02, 0x3f, 0x02, 0x3f, 0x82, 0x24, 0x41, + 0x02, 0xff, 0x5a, 0x02, 0xaf, 0x7f, 0x46, 0x3f, + 0x80, 0x76, 0x0b, 0x36, 0xe2, 0x1e, 0x00, 0x02, + 0x80, 0x02, 0x20, 0xe5, 0x30, 0xc0, 0x04, 0x16, + 0xe0, 0x06, 0x06, 0xe5, 0x0f, 0xe0, 0x01, 0xc5, 0x00, 0xc5, 0x00, 0xc5, 0x00, 0xc5, 0x00, 0xc5, - 0x00, 0xe6, 0x18, 0x36, 0x14, 0x15, 0x14, 0x15, - 0x56, 0x14, 0x15, 0x16, 0x14, 0x15, 0xf6, 0x01, - 0x11, 0x36, 0x11, 0x16, 0x14, 0x15, 0x36, 0x14, - 0x15, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, - 0x13, 0x96, 0x04, 0xf6, 0x02, 0x31, 0x76, 0x11, - 0x16, 0x12, 0xf6, 0x05, 0x2f, 0x16, 0xe0, 0x25, - 0xef, 0x12, 0x00, 0xef, 0x51, 0xe0, 0x04, 0xef, - 0x80, 0x4e, 0xe0, 0x12, 0xef, 0x04, 0x60, 0x17, - 0x56, 0x0f, 0x04, 0x05, 0x0a, 0x12, 0x13, 0x12, - 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x2f, - 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, - 0x11, 0x12, 0x33, 0x0f, 0xea, 0x01, 0x66, 0x27, - 0x11, 0x84, 0x2f, 0x4a, 0x04, 0x05, 0x16, 0x2f, - 0x00, 0xe5, 0x4e, 0x20, 0x26, 0x2e, 0x24, 0x05, - 0x11, 0xe5, 0x52, 0x16, 0x44, 0x05, 0x80, 0xe5, - 0x23, 0x00, 0xe5, 0x56, 0x00, 0x2f, 0x6b, 0xef, - 0x02, 0xe5, 0x18, 0xef, 0x1c, 0xe0, 0x04, 0xe5, - 0x08, 0xef, 0x17, 0x00, 0xeb, 0x02, 0xef, 0x16, - 0xeb, 0x00, 0x0f, 0xeb, 0x07, 0xef, 0x18, 0xeb, - 0x02, 0xef, 0x1f, 0xeb, 0x07, 0xef, 0x80, 0xb8, - 0xe5, 0x99, 0x38, 0xef, 0x38, 0xe5, 0xc0, 0x11, - 0x75, 0x40, 0xe5, 0x0d, 0x04, 0xe5, 0x83, 0xef, - 0x40, 0xef, 0x2f, 0xe0, 0x01, 0xe5, 0x20, 0xa4, - 0x36, 0xe5, 0x80, 0x84, 0x04, 0x56, 0xe5, 0x08, - 0xe9, 0x02, 0x25, 0xe0, 0x0c, 0xff, 0x26, 0x05, - 0x06, 0x48, 0x16, 0xe6, 0x02, 0x16, 0x04, 0xff, - 0x14, 0x24, 0x26, 0xe5, 0x3e, 0xea, 0x02, 0x26, - 0xb6, 0xe0, 0x00, 0xee, 0x0f, 0xe4, 0x01, 0x2e, - 0xff, 0x06, 0x22, 0xff, 0x36, 0x04, 0xe2, 0x00, - 0x9f, 0xff, 0x02, 0x04, 0x2e, 0x7f, 0x05, 0x7f, - 0x22, 0xff, 0x0d, 0x61, 0x02, 0x81, 0x02, 0xff, - 0x02, 0x20, 0x5f, 0x41, 0x02, 0x3f, 0xe0, 0x22, - 0x3f, 0x05, 0x24, 0x02, 0xc5, 0x06, 0x45, 0x06, - 0x65, 0x06, 0xe5, 0x0f, 0x27, 0x26, 0x07, 0x6f, - 0x06, 0x40, 0xab, 0x2f, 0x0d, 0x0f, 0xa0, 0xe5, - 0x2c, 0x76, 0xe0, 0x00, 0x27, 0xe5, 0x2a, 0xe7, - 0x08, 0x26, 0xe0, 0x00, 0x36, 0xe9, 0x02, 0xa0, - 0xe6, 0x0a, 0xa5, 0x56, 0x05, 0x16, 0x25, 0x06, - 0xe9, 0x02, 0xe5, 0x14, 0xe6, 0x00, 0x36, 0xe5, - 0x0f, 0xe6, 0x03, 0x27, 0xe0, 0x03, 0x16, 0xe5, - 0x15, 0x40, 0x46, 0x07, 0xe5, 0x27, 0x06, 0x27, - 0x66, 0x27, 0x26, 0x47, 0xf6, 0x05, 0x00, 0x04, - 0xe9, 0x02, 0x60, 0x36, 0x85, 0x06, 0x04, 0xe5, - 0x01, 0xe9, 0x02, 0x85, 0x00, 0xe5, 0x21, 0xa6, - 0x27, 0x26, 0x27, 0x26, 0xe0, 0x01, 0x45, 0x06, - 0xe5, 0x00, 0x06, 0x07, 0x20, 0xe9, 0x02, 0x20, - 0x76, 0xe5, 0x08, 0x04, 0xa5, 0x4f, 0x05, 0x07, - 0x06, 0x07, 0xe5, 0x2a, 0x06, 0x05, 0x46, 0x25, - 0x26, 0x85, 0x26, 0x05, 0x06, 0x05, 0xe0, 0x10, - 0x25, 0x04, 0x36, 0xe5, 0x03, 0x07, 0x26, 0x27, - 0x36, 0x05, 0x24, 0x07, 0x06, 0xe0, 0x02, 0xa5, - 0x20, 0xa5, 0x20, 0xa5, 0xe0, 0x01, 0xc5, 0x00, - 0xc5, 0x00, 0xe2, 0x23, 0x0e, 0x64, 0xe2, 0x01, - 0x04, 0x2e, 0x60, 0xe2, 0x48, 0xe5, 0x1b, 0x27, - 0x06, 0x27, 0x06, 0x27, 0x16, 0x07, 0x06, 0x20, - 0xe9, 0x02, 0xa0, 0xe5, 0xab, 0x1c, 0xe0, 0x04, - 0xe5, 0x0f, 0x60, 0xe5, 0x29, 0x60, 0xfc, 0x87, - 0x78, 0xfd, 0x98, 0x78, 0xe5, 0x80, 0xe6, 0x20, - 0xe5, 0x62, 0xe0, 0x1e, 0xc2, 0xe0, 0x04, 0x82, - 0x80, 0x05, 0x06, 0xe5, 0x02, 0x0c, 0xe5, 0x05, - 0x00, 0x85, 0x00, 0x05, 0x00, 0x25, 0x00, 0x25, - 0x00, 0xe5, 0x64, 0xee, 0x08, 0xe0, 0x09, 0xe5, - 0x80, 0xe3, 0x13, 0x12, 0xe0, 0x08, 0xe5, 0x38, - 0x20, 0xe5, 0x2e, 0xe0, 0x20, 0xe5, 0x04, 0x0d, - 0x0f, 0x20, 0xe6, 0x08, 0xd6, 0x12, 0x13, 0x16, - 0xa0, 0xe6, 0x08, 0x16, 0x31, 0x30, 0x12, 0x13, - 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, - 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x36, 0x12, - 0x13, 0x76, 0x50, 0x56, 0x00, 0x76, 0x11, 0x12, - 0x13, 0x12, 0x13, 0x12, 0x13, 0x56, 0x0c, 0x11, - 0x4c, 0x00, 0x16, 0x0d, 0x36, 0x60, 0x85, 0x00, - 0xe5, 0x7f, 0x20, 0x1b, 0x00, 0x56, 0x0d, 0x56, - 0x12, 0x13, 0x16, 0x0c, 0x16, 0x11, 0x36, 0xe9, - 0x02, 0x36, 0x4c, 0x36, 0xe1, 0x12, 0x12, 0x16, - 0x13, 0x0e, 0x10, 0x0e, 0xe2, 0x12, 0x12, 0x0c, - 0x13, 0x0c, 0x12, 0x13, 0x16, 0x12, 0x13, 0x36, - 0xe5, 0x02, 0x04, 0xe5, 0x25, 0x24, 0xe5, 0x17, - 0x40, 0xa5, 0x20, 0xa5, 0x20, 0xa5, 0x20, 0x45, - 0x40, 0x2d, 0x0c, 0x0e, 0x0f, 0x2d, 0x00, 0x0f, - 0x6c, 0x2f, 0xe0, 0x02, 0x5b, 0x2f, 0x20, 0xe5, - 0x04, 0x00, 0xe5, 0x12, 0x00, 0xe5, 0x0b, 0x00, - 0x25, 0x00, 0xe5, 0x07, 0x20, 0xe5, 0x06, 0xe0, - 0x1a, 0xe5, 0x73, 0x80, 0x56, 0x60, 0xeb, 0x25, - 0x40, 0xef, 0x01, 0xea, 0x2d, 0x6b, 0xef, 0x09, - 0x2b, 0x4f, 0x00, 0xef, 0x05, 0x40, 0x0f, 0xe0, - 0x27, 0xef, 0x25, 0x06, 0xe0, 0x7a, 0xe5, 0x15, - 0x40, 0xe5, 0x29, 0xe0, 0x07, 0x06, 0xeb, 0x13, - 0x60, 0xe5, 0x18, 0x6b, 0xe0, 0x01, 0xe5, 0x0c, - 0x0a, 0xe5, 0x00, 0x0a, 0x80, 0xe5, 0x1e, 0x86, - 0x80, 0xe5, 0x16, 0x00, 0x16, 0xe5, 0x1c, 0x60, - 0xe5, 0x00, 0x16, 0x8a, 0xe0, 0x22, 0xe1, 0x20, - 0xe2, 0x20, 0xe5, 0x46, 0x20, 0xe9, 0x02, 0xa0, - 0xe1, 0x1c, 0x60, 0xe2, 0x1c, 0x60, 0xe5, 0x20, - 0xe0, 0x00, 0xe5, 0x2c, 0xe0, 0x03, 0x16, 0xe0, - 0x80, 0x08, 0xe5, 0x80, 0xaf, 0xe0, 0x01, 0xe5, - 0x0e, 0xe0, 0x02, 0xe5, 0x00, 0xe0, 0x80, 0x10, - 0xa5, 0x20, 0x05, 0x00, 0xe5, 0x24, 0x00, 0x25, - 0x40, 0x05, 0x20, 0xe5, 0x0f, 0x00, 0x16, 0xeb, - 0x00, 0xe5, 0x0f, 0x2f, 0xcb, 0xe5, 0x17, 0xe0, - 0x00, 0xeb, 0x01, 0xe0, 0x28, 0xe5, 0x0b, 0x00, - 0x25, 0x80, 0x8b, 0xe5, 0x0e, 0xab, 0x40, 0x16, - 0xe5, 0x12, 0x80, 0x16, 0xe0, 0x38, 0xe5, 0x30, - 0x60, 0x2b, 0x25, 0xeb, 0x08, 0x20, 0xeb, 0x26, - 0x05, 0x46, 0x00, 0x26, 0x80, 0x66, 0x65, 0x00, - 0x45, 0x00, 0xe5, 0x15, 0x20, 0x46, 0x60, 0x06, - 0xeb, 0x01, 0xc0, 0xf6, 0x01, 0xc0, 0xe5, 0x15, - 0x2b, 0x16, 0xe5, 0x15, 0x4b, 0xe0, 0x18, 0xe5, - 0x00, 0x0f, 0xe5, 0x14, 0x26, 0x60, 0x8b, 0xd6, - 0xe0, 0x01, 0xe5, 0x2e, 0x40, 0xd6, 0xe5, 0x0e, - 0x20, 0xeb, 0x00, 0xe5, 0x0b, 0x80, 0xeb, 0x00, - 0xe5, 0x0a, 0xc0, 0x76, 0xe0, 0x04, 0xcb, 0xe0, - 0x48, 0xe5, 0x41, 0xe0, 0x2f, 0xe1, 0x2b, 0xe0, - 0x05, 0xe2, 0x2b, 0xc0, 0xab, 0xe5, 0x1c, 0x66, - 0xe0, 0x00, 0xe9, 0x02, 0xe0, 0x80, 0x9e, 0xeb, - 0x17, 0x00, 0xe5, 0x22, 0x00, 0x26, 0x11, 0x20, - 0x25, 0xe0, 0x46, 0xe5, 0x15, 0xeb, 0x02, 0x05, - 0xe0, 0x00, 0xe5, 0x0e, 0xe6, 0x03, 0x6b, 0x96, - 0xe0, 0x4e, 0xe5, 0x0d, 0xcb, 0xe0, 0x0c, 0xe5, - 0x0f, 0xe0, 0x01, 0x07, 0x06, 0x07, 0xe5, 0x2d, - 0xe6, 0x07, 0xd6, 0x60, 0xeb, 0x0c, 0xe9, 0x02, - 0xe0, 0x07, 0x46, 0x07, 0xe5, 0x25, 0x47, 0x66, - 0x27, 0x26, 0x36, 0x1b, 0x76, 0xe0, 0x03, 0x1b, - 0x20, 0xe5, 0x11, 0xc0, 0xe9, 0x02, 0xa0, 0x46, - 0xe5, 0x1c, 0x86, 0x07, 0xe6, 0x00, 0x00, 0xe9, - 0x02, 0x76, 0x05, 0x27, 0x05, 0xe0, 0x00, 0xe5, - 0x1b, 0x06, 0x36, 0x05, 0xe0, 0x01, 0x26, 0x07, - 0xe5, 0x28, 0x47, 0xe6, 0x01, 0x27, 0x65, 0x76, - 0x66, 0x16, 0x07, 0x06, 0xe9, 0x02, 0x05, 0x16, - 0x05, 0x56, 0x00, 0xeb, 0x0c, 0xe0, 0x03, 0xe5, - 0x0a, 0x00, 0xe5, 0x11, 0x47, 0x46, 0x27, 0x06, - 0x07, 0x26, 0xb6, 0x06, 0xe0, 0x39, 0xc5, 0x00, - 0x05, 0x00, 0x65, 0x00, 0xe5, 0x07, 0x00, 0xe5, - 0x02, 0x16, 0xa0, 0xe5, 0x27, 0x06, 0x47, 0xe6, - 0x00, 0x80, 0xe9, 0x02, 0xa0, 0x26, 0x27, 0x00, - 0xe5, 0x00, 0x20, 0x25, 0x20, 0xe5, 0x0e, 0x00, - 0xc5, 0x00, 0x25, 0x00, 0x85, 0x00, 0x26, 0x05, - 0x27, 0x06, 0x67, 0x20, 0x27, 0x20, 0x47, 0x20, - 0x05, 0xa0, 0x07, 0x80, 0x85, 0x27, 0x20, 0xc6, - 0x40, 0x86, 0xe0, 0x80, 0x03, 0xe5, 0x2d, 0x47, - 0xe6, 0x00, 0x27, 0x46, 0x07, 0x06, 0x65, 0x96, - 0xe9, 0x02, 0x36, 0x00, 0x16, 0x06, 0x45, 0xe0, - 0x16, 0xe5, 0x28, 0x47, 0xa6, 0x07, 0x06, 0x67, - 0x26, 0x07, 0x26, 0x25, 0x16, 0x05, 0xe0, 0x00, - 0xe9, 0x02, 0xe0, 0x80, 0x1e, 0xe5, 0x27, 0x47, - 0x66, 0x20, 0x67, 0x26, 0x07, 0x26, 0xf6, 0x0f, - 0x65, 0x26, 0xe0, 0x1a, 0xe5, 0x28, 0x47, 0xe6, - 0x00, 0x27, 0x06, 0x07, 0x26, 0x56, 0x05, 0xe0, - 0x03, 0xe9, 0x02, 0xa0, 0xf6, 0x05, 0xe0, 0x0b, - 0xe5, 0x23, 0x06, 0x07, 0x06, 0x27, 0xa6, 0x07, - 0x06, 0x05, 0xc0, 0xe9, 0x02, 0xe0, 0x2e, 0xe5, - 0x13, 0x20, 0x46, 0x27, 0x66, 0x07, 0x86, 0x60, - 0xe9, 0x02, 0x2b, 0x56, 0x0f, 0xe0, 0x80, 0x38, - 0xe5, 0x24, 0x47, 0xe6, 0x01, 0x07, 0x26, 0x16, - 0xe0, 0x5c, 0xe1, 0x18, 0xe2, 0x18, 0xe9, 0x02, - 0xeb, 0x01, 0xe0, 0x04, 0xe5, 0x00, 0x20, 0x05, - 0x20, 0xe5, 0x00, 0x00, 0x25, 0x00, 0xe5, 0x10, - 0xa7, 0x00, 0x27, 0x20, 0x26, 0x07, 0x06, 0x05, - 0x07, 0x05, 0x07, 0x06, 0x56, 0xe0, 0x01, 0xe9, - 0x02, 0xe0, 0x3e, 0xe5, 0x00, 0x20, 0xe5, 0x1f, - 0x47, 0x66, 0x20, 0x26, 0x67, 0x06, 0x05, 0x16, - 0x05, 0x07, 0xe0, 0x13, 0x05, 0xe6, 0x02, 0xe5, - 0x20, 0xa6, 0x07, 0x05, 0x66, 0xf6, 0x00, 0x06, - 0xe0, 0x00, 0x05, 0xa6, 0x27, 0x46, 0xe5, 0x26, - 0xe6, 0x05, 0x07, 0x26, 0x56, 0x05, 0x96, 0xe0, - 0x15, 0xe5, 0x31, 0xe0, 0x80, 0x7f, 0xe5, 0x01, + 0x00, 0xc5, 0x00, 0xc5, 0x00, 0xc5, 0x00, 0xe6, + 0x18, 0x36, 0x14, 0x15, 0x14, 0x15, 0x56, 0x14, + 0x15, 0x16, 0x14, 0x15, 0xf6, 0x01, 0x11, 0x36, + 0x11, 0x16, 0x14, 0x15, 0x36, 0x14, 0x15, 0x12, + 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x96, + 0x04, 0xf6, 0x02, 0x31, 0x76, 0x11, 0x16, 0x12, + 0xf6, 0x05, 0x2f, 0x56, 0x12, 0x13, 0x12, 0x13, + 0x12, 0x13, 0x12, 0x13, 0x11, 0xe0, 0x1a, 0xef, + 0x12, 0x00, 0xef, 0x51, 0xe0, 0x04, 0xef, 0x80, + 0x4e, 0xe0, 0x12, 0xef, 0x04, 0x60, 0x17, 0x56, + 0x0f, 0x04, 0x05, 0x0a, 0x12, 0x13, 0x12, 0x13, + 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x2f, 0x12, + 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x11, + 0x12, 0x33, 0x0f, 0xea, 0x01, 0x66, 0x27, 0x11, + 0x84, 0x2f, 0x4a, 0x04, 0x05, 0x16, 0x2f, 0x00, + 0xe5, 0x4e, 0x20, 0x26, 0x2e, 0x24, 0x05, 0x11, + 0xe5, 0x52, 0x16, 0x44, 0x05, 0x80, 0xe5, 0x23, + 0x00, 0xe5, 0x56, 0x00, 0x2f, 0x6b, 0xef, 0x02, + 0xe5, 0x18, 0xef, 0x1c, 0xe0, 0x04, 0xe5, 0x08, + 0xef, 0x17, 0x00, 0xeb, 0x02, 0xef, 0x16, 0xeb, + 0x00, 0x0f, 0xeb, 0x07, 0xef, 0x18, 0xeb, 0x02, + 0xef, 0x1f, 0xeb, 0x07, 0xef, 0x80, 0xb8, 0xe5, + 0x99, 0x38, 0xef, 0x38, 0xe5, 0xc0, 0x11, 0x8d, + 0x04, 0xe5, 0x83, 0xef, 0x40, 0xef, 0x2f, 0xe0, + 0x01, 0xe5, 0x20, 0xa4, 0x36, 0xe5, 0x80, 0x84, + 0x04, 0x56, 0xe5, 0x08, 0xe9, 0x02, 0x25, 0xe0, + 0x0c, 0xff, 0x26, 0x05, 0x06, 0x48, 0x16, 0xe6, + 0x02, 0x16, 0x04, 0xff, 0x14, 0x24, 0x26, 0xe5, + 0x3e, 0xea, 0x02, 0x26, 0xb6, 0xe0, 0x00, 0xee, + 0x0f, 0xe4, 0x01, 0x2e, 0xff, 0x06, 0x22, 0xff, + 0x36, 0x04, 0xe2, 0x00, 0x9f, 0xff, 0x02, 0x04, + 0x2e, 0x7f, 0x05, 0x7f, 0x22, 0xff, 0x0d, 0x61, + 0x02, 0x81, 0x02, 0xff, 0x07, 0x41, 0x02, 0x3f, + 0x80, 0x3f, 0x00, 0x02, 0x00, 0x02, 0x7f, 0xe0, + 0x10, 0x44, 0x3f, 0x05, 0x24, 0x02, 0xc5, 0x06, + 0x45, 0x06, 0x65, 0x06, 0xe5, 0x0f, 0x27, 0x26, + 0x07, 0x6f, 0x06, 0x40, 0xab, 0x2f, 0x0d, 0x0f, + 0xa0, 0xe5, 0x2c, 0x76, 0xe0, 0x00, 0x27, 0xe5, + 0x2a, 0xe7, 0x08, 0x26, 0xe0, 0x00, 0x36, 0xe9, + 0x02, 0xa0, 0xe6, 0x0a, 0xa5, 0x56, 0x05, 0x16, + 0x25, 0x06, 0xe9, 0x02, 0xe5, 0x14, 0xe6, 0x00, + 0x36, 0xe5, 0x0f, 0xe6, 0x03, 0x27, 0xe0, 0x03, + 0x16, 0xe5, 0x15, 0x40, 0x46, 0x07, 0xe5, 0x27, + 0x06, 0x27, 0x66, 0x27, 0x26, 0x47, 0xf6, 0x05, + 0x00, 0x04, 0xe9, 0x02, 0x60, 0x36, 0x85, 0x06, + 0x04, 0xe5, 0x01, 0xe9, 0x02, 0x85, 0x00, 0xe5, + 0x21, 0xa6, 0x27, 0x26, 0x27, 0x26, 0xe0, 0x01, + 0x45, 0x06, 0xe5, 0x00, 0x06, 0x07, 0x20, 0xe9, + 0x02, 0x20, 0x76, 0xe5, 0x08, 0x04, 0xa5, 0x4f, + 0x05, 0x07, 0x06, 0x07, 0xe5, 0x2a, 0x06, 0x05, + 0x46, 0x25, 0x26, 0x85, 0x26, 0x05, 0x06, 0x05, + 0xe0, 0x10, 0x25, 0x04, 0x36, 0xe5, 0x03, 0x07, + 0x26, 0x27, 0x36, 0x05, 0x24, 0x07, 0x06, 0xe0, + 0x02, 0xa5, 0x20, 0xa5, 0x20, 0xa5, 0xe0, 0x01, + 0xc5, 0x00, 0xc5, 0x00, 0xe2, 0x23, 0x0e, 0x64, + 0xe2, 0x01, 0x04, 0x2e, 0x60, 0xe2, 0x48, 0xe5, + 0x1b, 0x27, 0x06, 0x27, 0x06, 0x27, 0x16, 0x07, + 0x06, 0x20, 0xe9, 0x02, 0xa0, 0xe5, 0xab, 0x1c, + 0xe0, 0x04, 0xe5, 0x0f, 0x60, 0xe5, 0x29, 0x60, + 0xfc, 0x87, 0x78, 0xfd, 0x98, 0x78, 0xe5, 0x80, + 0xe6, 0x20, 0xe5, 0x62, 0xe0, 0x1e, 0xc2, 0xe0, + 0x04, 0x82, 0x80, 0x05, 0x06, 0xe5, 0x02, 0x0c, + 0xe5, 0x05, 0x00, 0x85, 0x00, 0x05, 0x00, 0x25, + 0x00, 0x25, 0x00, 0xe5, 0x64, 0xee, 0x09, 0xe0, + 0x08, 0xe5, 0x80, 0xe3, 0x13, 0x12, 0xef, 0x08, + 0xe5, 0x38, 0x20, 0xe5, 0x2e, 0xc0, 0x0f, 0xe0, + 0x18, 0xe5, 0x04, 0x0d, 0x4f, 0xe6, 0x08, 0xd6, + 0x12, 0x13, 0x16, 0xa0, 0xe6, 0x08, 0x16, 0x31, + 0x30, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, + 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, 0x12, + 0x13, 0x36, 0x12, 0x13, 0x76, 0x50, 0x56, 0x00, + 0x76, 0x11, 0x12, 0x13, 0x12, 0x13, 0x12, 0x13, + 0x56, 0x0c, 0x11, 0x4c, 0x00, 0x16, 0x0d, 0x36, + 0x60, 0x85, 0x00, 0xe5, 0x7f, 0x20, 0x1b, 0x00, + 0x56, 0x0d, 0x56, 0x12, 0x13, 0x16, 0x0c, 0x16, + 0x11, 0x36, 0xe9, 0x02, 0x36, 0x4c, 0x36, 0xe1, + 0x12, 0x12, 0x16, 0x13, 0x0e, 0x10, 0x0e, 0xe2, + 0x12, 0x12, 0x0c, 0x13, 0x0c, 0x12, 0x13, 0x16, + 0x12, 0x13, 0x36, 0xe5, 0x02, 0x04, 0xe5, 0x25, + 0x24, 0xe5, 0x17, 0x40, 0xa5, 0x20, 0xa5, 0x20, + 0xa5, 0x20, 0x45, 0x40, 0x2d, 0x0c, 0x0e, 0x0f, + 0x2d, 0x00, 0x0f, 0x6c, 0x2f, 0xe0, 0x02, 0x5b, + 0x2f, 0x20, 0xe5, 0x04, 0x00, 0xe5, 0x12, 0x00, + 0xe5, 0x0b, 0x00, 0x25, 0x00, 0xe5, 0x07, 0x20, + 0xe5, 0x06, 0xe0, 0x1a, 0xe5, 0x73, 0x80, 0x56, + 0x60, 0xeb, 0x25, 0x40, 0xef, 0x01, 0xea, 0x2d, + 0x6b, 0xef, 0x09, 0x2b, 0x4f, 0x00, 0xef, 0x05, + 0x40, 0x0f, 0xe0, 0x27, 0xef, 0x25, 0x06, 0xe0, + 0x7a, 0xe5, 0x15, 0x40, 0xe5, 0x29, 0xe0, 0x07, + 0x06, 0xeb, 0x13, 0x60, 0xe5, 0x18, 0x6b, 0xe0, + 0x01, 0xe5, 0x0c, 0x0a, 0xe5, 0x00, 0x0a, 0x80, + 0xe5, 0x1e, 0x86, 0x80, 0xe5, 0x16, 0x00, 0x16, + 0xe5, 0x1c, 0x60, 0xe5, 0x00, 0x16, 0x8a, 0xe0, + 0x22, 0xe1, 0x20, 0xe2, 0x20, 0xe5, 0x46, 0x20, + 0xe9, 0x02, 0xa0, 0xe1, 0x1c, 0x60, 0xe2, 0x1c, + 0x60, 0xe5, 0x20, 0xe0, 0x00, 0xe5, 0x2c, 0xe0, + 0x03, 0x16, 0xe1, 0x03, 0x00, 0xe1, 0x07, 0x00, + 0xc1, 0x00, 0x21, 0x00, 0xe2, 0x03, 0x00, 0xe2, + 0x07, 0x00, 0xc2, 0x00, 0x22, 0xe0, 0x3b, 0xe5, + 0x80, 0xaf, 0xe0, 0x01, 0xe5, 0x0e, 0xe0, 0x02, + 0xe5, 0x00, 0xe0, 0x10, 0xa4, 0x00, 0xe4, 0x22, + 0x00, 0xe4, 0x01, 0xe0, 0x3d, 0xa5, 0x20, 0x05, + 0x00, 0xe5, 0x24, 0x00, 0x25, 0x40, 0x05, 0x20, + 0xe5, 0x0f, 0x00, 0x16, 0xeb, 0x00, 0xe5, 0x0f, + 0x2f, 0xcb, 0xe5, 0x17, 0xe0, 0x00, 0xeb, 0x01, + 0xe0, 0x28, 0xe5, 0x0b, 0x00, 0x25, 0x80, 0x8b, + 0xe5, 0x0e, 0xab, 0x40, 0x16, 0xe5, 0x12, 0x80, + 0x16, 0xe0, 0x38, 0xe5, 0x30, 0x60, 0x2b, 0x25, + 0xeb, 0x08, 0x20, 0xeb, 0x26, 0x05, 0x46, 0x00, + 0x26, 0x80, 0x66, 0x65, 0x00, 0x45, 0x00, 0xe5, + 0x15, 0x20, 0x46, 0x60, 0x06, 0xeb, 0x01, 0xc0, + 0xf6, 0x01, 0xc0, 0xe5, 0x15, 0x2b, 0x16, 0xe5, + 0x15, 0x4b, 0xe0, 0x18, 0xe5, 0x00, 0x0f, 0xe5, + 0x14, 0x26, 0x60, 0x8b, 0xd6, 0xe0, 0x01, 0xe5, + 0x2e, 0x40, 0xd6, 0xe5, 0x0e, 0x20, 0xeb, 0x00, + 0xe5, 0x0b, 0x80, 0xeb, 0x00, 0xe5, 0x0a, 0xc0, + 0x76, 0xe0, 0x04, 0xcb, 0xe0, 0x48, 0xe5, 0x41, + 0xe0, 0x2f, 0xe1, 0x2b, 0xe0, 0x05, 0xe2, 0x2b, + 0xc0, 0xab, 0xe5, 0x1c, 0x66, 0xe0, 0x00, 0xe9, + 0x02, 0xe0, 0x80, 0x9e, 0xeb, 0x17, 0x00, 0xe5, + 0x22, 0x00, 0x26, 0x11, 0x20, 0x25, 0xe0, 0x43, + 0x46, 0xe5, 0x15, 0xeb, 0x02, 0x05, 0xe0, 0x00, + 0xe5, 0x0e, 0xe6, 0x03, 0x6b, 0x96, 0xe0, 0x0e, + 0xe5, 0x0a, 0x66, 0x76, 0xe0, 0x1e, 0xe5, 0x0d, + 0xcb, 0xe0, 0x0c, 0xe5, 0x0f, 0xe0, 0x01, 0x07, + 0x06, 0x07, 0xe5, 0x2d, 0xe6, 0x07, 0xd6, 0x60, + 0xeb, 0x0c, 0xe9, 0x02, 0x06, 0x25, 0x26, 0x05, + 0xe0, 0x01, 0x46, 0x07, 0xe5, 0x25, 0x47, 0x66, + 0x27, 0x26, 0x36, 0x1b, 0x76, 0x06, 0xe0, 0x02, + 0x1b, 0x20, 0xe5, 0x11, 0xc0, 0xe9, 0x02, 0xa0, + 0x46, 0xe5, 0x1c, 0x86, 0x07, 0xe6, 0x00, 0x00, + 0xe9, 0x02, 0x76, 0x05, 0x27, 0x05, 0xe0, 0x00, + 0xe5, 0x1b, 0x06, 0x36, 0x05, 0xe0, 0x01, 0x26, + 0x07, 0xe5, 0x28, 0x47, 0xe6, 0x01, 0x27, 0x65, + 0x76, 0x66, 0x16, 0x07, 0x06, 0xe9, 0x02, 0x05, + 0x16, 0x05, 0x56, 0x00, 0xeb, 0x0c, 0xe0, 0x03, + 0xe5, 0x0a, 0x00, 0xe5, 0x11, 0x47, 0x46, 0x27, + 0x06, 0x07, 0x26, 0xb6, 0x06, 0x25, 0x06, 0xe0, + 0x36, 0xc5, 0x00, 0x05, 0x00, 0x65, 0x00, 0xe5, + 0x07, 0x00, 0xe5, 0x02, 0x16, 0xa0, 0xe5, 0x27, + 0x06, 0x47, 0xe6, 0x00, 0x80, 0xe9, 0x02, 0xa0, + 0x26, 0x27, 0x00, 0xe5, 0x00, 0x20, 0x25, 0x20, + 0xe5, 0x0e, 0x00, 0xc5, 0x00, 0x25, 0x00, 0x85, + 0x00, 0x26, 0x05, 0x27, 0x06, 0x67, 0x20, 0x27, + 0x20, 0x47, 0x20, 0x05, 0xa0, 0x07, 0x80, 0x85, + 0x27, 0x20, 0xc6, 0x40, 0x86, 0xe0, 0x80, 0x03, + 0xe5, 0x2d, 0x47, 0xe6, 0x00, 0x27, 0x46, 0x07, + 0x06, 0x65, 0x96, 0xe9, 0x02, 0x36, 0x00, 0x16, + 0x06, 0x45, 0xe0, 0x16, 0xe5, 0x28, 0x47, 0xa6, + 0x07, 0x06, 0x67, 0x26, 0x07, 0x26, 0x25, 0x16, + 0x05, 0xe0, 0x00, 0xe9, 0x02, 0xe0, 0x80, 0x1e, + 0xe5, 0x27, 0x47, 0x66, 0x20, 0x67, 0x26, 0x07, + 0x26, 0xf6, 0x0f, 0x65, 0x26, 0xe0, 0x1a, 0xe5, + 0x28, 0x47, 0xe6, 0x00, 0x27, 0x06, 0x07, 0x26, + 0x56, 0x05, 0xe0, 0x03, 0xe9, 0x02, 0xa0, 0xf6, + 0x05, 0xe0, 0x0b, 0xe5, 0x23, 0x06, 0x07, 0x06, + 0x27, 0xa6, 0x07, 0x06, 0x05, 0x16, 0xa0, 0xe9, + 0x02, 0xe0, 0x2e, 0xe5, 0x13, 0x20, 0x46, 0x27, + 0x66, 0x07, 0x86, 0x60, 0xe9, 0x02, 0x2b, 0x56, + 0x0f, 0xc5, 0xe0, 0x80, 0x31, 0xe5, 0x24, 0x47, + 0xe6, 0x01, 0x07, 0x26, 0x16, 0xe0, 0x5c, 0xe1, + 0x18, 0xe2, 0x18, 0xe9, 0x02, 0xeb, 0x01, 0xe0, + 0x04, 0xe5, 0x00, 0x20, 0x05, 0x20, 0xe5, 0x00, + 0x00, 0x25, 0x00, 0xe5, 0x10, 0xa7, 0x00, 0x27, + 0x20, 0x26, 0x07, 0x06, 0x05, 0x07, 0x05, 0x07, + 0x06, 0x56, 0xe0, 0x01, 0xe9, 0x02, 0xe0, 0x3e, + 0xe5, 0x00, 0x20, 0xe5, 0x1f, 0x47, 0x66, 0x20, + 0x26, 0x67, 0x06, 0x05, 0x16, 0x05, 0x07, 0xe0, + 0x13, 0x05, 0xe6, 0x02, 0xe5, 0x20, 0xa6, 0x07, + 0x05, 0x66, 0xf6, 0x00, 0x06, 0xe0, 0x00, 0x05, + 0xa6, 0x27, 0x46, 0xe5, 0x26, 0xe6, 0x05, 0x07, + 0x26, 0x56, 0x05, 0x96, 0xe0, 0x05, 0xe5, 0x41, + 0xc0, 0xf6, 0x02, 0xe0, 0x80, 0x6e, 0xe5, 0x01, 0x00, 0xe5, 0x1d, 0x07, 0xc6, 0x00, 0xa6, 0x07, 0x06, 0x05, 0x96, 0xe0, 0x02, 0xe9, 0x02, 0xeb, 0x0b, 0x40, 0x36, 0xe5, 0x16, 0x20, 0xe6, 0x0e, @@ -2663,33 +2727,40 @@ static const uint8_t unicode_gc_table[3790] = { 0xe0, 0x00, 0xe9, 0x02, 0xa0, 0xa5, 0x00, 0x25, 0x00, 0xe5, 0x18, 0x87, 0x00, 0x26, 0x00, 0x27, 0x06, 0x07, 0x06, 0x05, 0xc0, 0xe9, 0x02, 0xe0, - 0x80, 0xae, 0xe5, 0x0b, 0x26, 0x27, 0x36, 0xe0, - 0x80, 0x2f, 0x05, 0xe0, 0x07, 0xeb, 0x0d, 0xef, - 0x00, 0x6d, 0xef, 0x09, 0xe0, 0x05, 0x16, 0xe5, - 0x83, 0x12, 0xe0, 0x5e, 0xea, 0x67, 0x00, 0x96, - 0xe0, 0x03, 0xe5, 0x80, 0x3c, 0xe0, 0x8a, 0x34, - 0xe5, 0x83, 0xa7, 0x00, 0xfb, 0x01, 0xe0, 0x8f, - 0x3f, 0xe5, 0x81, 0xbf, 0xe0, 0xa1, 0x31, 0xe5, - 0x81, 0xb1, 0xc0, 0xe5, 0x17, 0x00, 0xe9, 0x02, - 0x60, 0x36, 0xe0, 0x58, 0xe5, 0x16, 0x20, 0x86, - 0x16, 0xe0, 0x02, 0xe5, 0x28, 0xc6, 0x96, 0x6f, - 0x64, 0x16, 0x0f, 0xe0, 0x02, 0xe9, 0x02, 0x00, - 0xcb, 0x00, 0xe5, 0x0d, 0x80, 0xe5, 0x0b, 0xe0, - 0x82, 0x28, 0xe1, 0x18, 0xe2, 0x18, 0xeb, 0x0f, - 0x76, 0xe0, 0x5d, 0xe5, 0x43, 0x60, 0x06, 0x05, - 0xe7, 0x2f, 0xc0, 0x66, 0xe4, 0x05, 0xe0, 0x38, - 0x24, 0x16, 0x04, 0x06, 0xe0, 0x03, 0x27, 0xe0, - 0x06, 0xe5, 0x97, 0x70, 0xe0, 0x00, 0xe5, 0x84, - 0x4e, 0xe0, 0x22, 0xe5, 0x01, 0xe0, 0xa2, 0x6f, - 0xe5, 0x80, 0x97, 0xe0, 0x29, 0x45, 0xe0, 0x09, - 0x65, 0xe0, 0x00, 0xe5, 0x81, 0x04, 0xe0, 0x88, - 0x7c, 0xe5, 0x63, 0x80, 0xe5, 0x05, 0x40, 0xe5, - 0x01, 0xc0, 0xe5, 0x02, 0x20, 0x0f, 0x26, 0x16, - 0x7b, 0xe0, 0x92, 0xd4, 0xef, 0x80, 0x6e, 0xe0, - 0x02, 0xef, 0x1f, 0x20, 0xef, 0x34, 0x27, 0x46, - 0x4f, 0xa7, 0xfb, 0x00, 0xe6, 0x00, 0x2f, 0xc6, - 0xef, 0x16, 0x66, 0xef, 0x33, 0xe0, 0x0f, 0xef, - 0x3a, 0x46, 0x0f, 0xe0, 0x80, 0x12, 0xeb, 0x0c, + 0x80, 0xae, 0xe5, 0x0b, 0x26, 0x27, 0x36, 0xc0, + 0x26, 0x05, 0x07, 0xe5, 0x05, 0x00, 0xe5, 0x1a, + 0x27, 0x86, 0x40, 0x27, 0x06, 0x07, 0x06, 0xf6, + 0x05, 0xe9, 0x02, 0xe0, 0x4e, 0x05, 0xe0, 0x07, + 0xeb, 0x0d, 0xef, 0x00, 0x6d, 0xef, 0x09, 0xe0, + 0x05, 0x16, 0xe5, 0x83, 0x12, 0xe0, 0x5e, 0xea, + 0x67, 0x00, 0x96, 0xe0, 0x03, 0xe5, 0x80, 0x3c, + 0xe0, 0x89, 0xc4, 0xe5, 0x59, 0x36, 0xe0, 0x05, + 0xe5, 0x83, 0xa8, 0xfb, 0x08, 0x06, 0xa5, 0xe6, + 0x07, 0xe0, 0x8f, 0x22, 0xe5, 0x81, 0xbf, 0xe0, + 0xa1, 0x31, 0xe5, 0x81, 0xb1, 0xc0, 0xe5, 0x17, + 0x00, 0xe9, 0x02, 0x60, 0x36, 0xe5, 0x47, 0x00, + 0xe9, 0x02, 0xa0, 0xe5, 0x16, 0x20, 0x86, 0x16, + 0xe0, 0x02, 0xe5, 0x28, 0xc6, 0x96, 0x6f, 0x64, + 0x16, 0x0f, 0xe0, 0x02, 0xe9, 0x02, 0x00, 0xcb, + 0x00, 0xe5, 0x0d, 0x80, 0xe5, 0x0b, 0xe0, 0x82, + 0x28, 0xe1, 0x18, 0xe2, 0x18, 0xeb, 0x0f, 0x76, + 0xe0, 0x5d, 0xe5, 0x43, 0x60, 0x06, 0x05, 0xe7, + 0x2f, 0xc0, 0x66, 0xe4, 0x05, 0xe0, 0x38, 0x24, + 0x16, 0x04, 0x06, 0xe0, 0x03, 0x27, 0xe0, 0x06, + 0xe5, 0x97, 0x70, 0xe0, 0x00, 0xe5, 0x84, 0x4e, + 0xe0, 0x22, 0xe5, 0x01, 0xe0, 0xa2, 0x5f, 0x64, + 0x00, 0xc4, 0x00, 0x24, 0x00, 0xe5, 0x80, 0x9b, + 0xe0, 0x07, 0x05, 0xe0, 0x15, 0x45, 0x20, 0x05, + 0xe0, 0x06, 0x65, 0xe0, 0x00, 0xe5, 0x81, 0x04, + 0xe0, 0x88, 0x7c, 0xe5, 0x63, 0x80, 0xe5, 0x05, + 0x40, 0xe5, 0x01, 0xc0, 0xe5, 0x02, 0x20, 0x0f, + 0x26, 0x16, 0x7b, 0xe0, 0x91, 0xd4, 0xe6, 0x26, + 0x20, 0xe6, 0x0f, 0xe0, 0x01, 0xef, 0x6c, 0xe0, + 0x34, 0xef, 0x80, 0x6e, 0xe0, 0x02, 0xef, 0x1f, + 0x20, 0xef, 0x34, 0x27, 0x46, 0x4f, 0xa7, 0xfb, + 0x00, 0xe6, 0x00, 0x2f, 0xc6, 0xef, 0x16, 0x66, + 0xef, 0x35, 0xe0, 0x0d, 0xef, 0x3a, 0x46, 0x0f, + 0xe0, 0x72, 0xeb, 0x0c, 0xe0, 0x04, 0xeb, 0x0c, 0xe0, 0x04, 0xef, 0x4f, 0xe0, 0x01, 0xeb, 0x11, 0xe0, 0x7f, 0xe1, 0x12, 0xe2, 0x12, 0xe1, 0x12, 0xc2, 0x00, 0xe2, 0x0a, 0xe1, 0x12, 0xe2, 0x12, @@ -2709,51 +2780,56 @@ static const uint8_t unicode_gc_table[3790] = { 0x11, 0x0c, 0xa2, 0x3f, 0x20, 0xe9, 0x2a, 0xef, 0x81, 0x78, 0xe6, 0x2f, 0x6f, 0xe6, 0x2a, 0xef, 0x00, 0x06, 0xef, 0x06, 0x06, 0x2f, 0x96, 0xe0, - 0x07, 0x86, 0x00, 0xe6, 0x07, 0xe0, 0x84, 0xc8, - 0xc6, 0x00, 0xe6, 0x09, 0x20, 0xc6, 0x00, 0x26, - 0x00, 0x86, 0xe0, 0x80, 0x4d, 0xe5, 0x25, 0x40, - 0xc6, 0xc4, 0x20, 0xe9, 0x02, 0x60, 0x05, 0x0f, - 0xe0, 0x80, 0xe8, 0xe5, 0x24, 0x66, 0xe9, 0x02, - 0x80, 0x0d, 0xe0, 0x84, 0x78, 0xe5, 0x80, 0x3d, - 0x20, 0xeb, 0x01, 0xc6, 0xe0, 0x21, 0xe1, 0x1a, - 0xe2, 0x1a, 0xc6, 0x04, 0x60, 0xe9, 0x02, 0x60, - 0x36, 0xe0, 0x82, 0x89, 0xeb, 0x33, 0x0f, 0x4b, - 0x0d, 0x6b, 0xe0, 0x44, 0xeb, 0x25, 0x0f, 0xeb, - 0x07, 0xe0, 0x80, 0x3a, 0x65, 0x00, 0xe5, 0x13, - 0x00, 0x25, 0x00, 0x05, 0x20, 0x05, 0x00, 0xe5, - 0x02, 0x00, 0x65, 0x00, 0x05, 0x00, 0x05, 0xa0, - 0x05, 0x60, 0x05, 0x00, 0x05, 0x00, 0x05, 0x00, - 0x45, 0x00, 0x25, 0x00, 0x05, 0x20, 0x05, 0x00, - 0x05, 0x00, 0x05, 0x00, 0x05, 0x00, 0x05, 0x00, - 0x25, 0x00, 0x05, 0x20, 0x65, 0x00, 0xc5, 0x00, - 0x65, 0x00, 0x65, 0x00, 0x05, 0x00, 0xe5, 0x02, - 0x00, 0xe5, 0x09, 0x80, 0x45, 0x00, 0x85, 0x00, - 0xe5, 0x09, 0xe0, 0x2c, 0x2c, 0xe0, 0x80, 0x86, - 0xef, 0x24, 0x60, 0xef, 0x5c, 0xe0, 0x04, 0xef, - 0x07, 0x20, 0xef, 0x07, 0x00, 0xef, 0x07, 0x00, - 0xef, 0x1d, 0xe0, 0x02, 0xeb, 0x05, 0xef, 0x80, - 0x19, 0xe0, 0x30, 0xef, 0x15, 0xe0, 0x05, 0xef, - 0x24, 0x60, 0xef, 0x01, 0xc0, 0x2f, 0xe0, 0x06, - 0xaf, 0xe0, 0x80, 0x12, 0xef, 0x80, 0x73, 0x8e, - 0xef, 0x82, 0x50, 0xe0, 0x00, 0xef, 0x05, 0x40, - 0xef, 0x05, 0x40, 0xef, 0x6c, 0xe0, 0x04, 0xef, - 0x51, 0xc0, 0xef, 0x04, 0xe0, 0x0c, 0xef, 0x04, - 0x60, 0xef, 0x30, 0xe0, 0x00, 0xef, 0x02, 0xa0, - 0xef, 0x20, 0xe0, 0x00, 0xef, 0x16, 0x20, 0x2f, - 0xe0, 0x46, 0xef, 0x71, 0x00, 0xef, 0x4a, 0x00, - 0xef, 0x7f, 0xe0, 0x04, 0xef, 0x06, 0x20, 0x8f, - 0x40, 0x4f, 0x80, 0xcf, 0xe0, 0x01, 0xef, 0x11, - 0xc0, 0xcf, 0xe0, 0x01, 0x4f, 0xe0, 0x05, 0xcf, - 0xe0, 0x21, 0xef, 0x80, 0x0b, 0x00, 0xef, 0x2f, - 0xe0, 0x1d, 0xe9, 0x02, 0xe0, 0x83, 0x7e, 0xe5, - 0xc0, 0x66, 0x56, 0xe0, 0x1a, 0xe5, 0x8f, 0xad, - 0xe0, 0x03, 0xe5, 0x80, 0x56, 0x20, 0xe5, 0x95, - 0xfa, 0xe0, 0x06, 0xe5, 0x9c, 0xa9, 0xe0, 0x8b, - 0x97, 0xe5, 0x81, 0x96, 0xe0, 0x85, 0x5a, 0xe5, - 0x92, 0xc3, 0xe0, 0xca, 0xac, 0x2e, 0x1b, 0xe0, - 0x16, 0xfb, 0x58, 0xe0, 0x78, 0xe6, 0x80, 0x68, - 0xe0, 0xc0, 0xbd, 0x88, 0xfd, 0xc0, 0xbf, 0x76, - 0x20, 0xfd, 0xc0, 0xbf, 0x76, 0x20, + 0x07, 0x86, 0x00, 0xe6, 0x07, 0xe0, 0x83, 0xc8, + 0xe2, 0x02, 0x05, 0xe2, 0x0c, 0xa0, 0xa2, 0xe0, + 0x80, 0x4d, 0xc6, 0x00, 0xe6, 0x09, 0x20, 0xc6, + 0x00, 0x26, 0x00, 0x86, 0x80, 0xe4, 0x36, 0xe0, + 0x19, 0x06, 0xe0, 0x68, 0xe5, 0x25, 0x40, 0xc6, + 0xc4, 0x20, 0xe9, 0x02, 0x60, 0x05, 0x0f, 0xe0, + 0x80, 0xb8, 0xe5, 0x16, 0x06, 0xe0, 0x09, 0xe5, + 0x24, 0x66, 0xe9, 0x02, 0x80, 0x0d, 0xe0, 0x81, + 0x48, 0xe5, 0x13, 0x04, 0x66, 0xe9, 0x02, 0xe0, + 0x82, 0x5e, 0xc5, 0x00, 0x65, 0x00, 0x25, 0x00, + 0xe5, 0x07, 0x00, 0xe5, 0x80, 0x3d, 0x20, 0xeb, + 0x01, 0xc6, 0xe0, 0x21, 0xe1, 0x1a, 0xe2, 0x1a, + 0xc6, 0x04, 0x60, 0xe9, 0x02, 0x60, 0x36, 0xe0, + 0x82, 0x89, 0xeb, 0x33, 0x0f, 0x4b, 0x0d, 0x6b, + 0xe0, 0x44, 0xeb, 0x25, 0x0f, 0xeb, 0x07, 0xe0, + 0x80, 0x3a, 0x65, 0x00, 0xe5, 0x13, 0x00, 0x25, + 0x00, 0x05, 0x20, 0x05, 0x00, 0xe5, 0x02, 0x00, + 0x65, 0x00, 0x05, 0x00, 0x05, 0xa0, 0x05, 0x60, + 0x05, 0x00, 0x05, 0x00, 0x05, 0x00, 0x45, 0x00, + 0x25, 0x00, 0x05, 0x20, 0x05, 0x00, 0x05, 0x00, + 0x05, 0x00, 0x05, 0x00, 0x05, 0x00, 0x25, 0x00, + 0x05, 0x20, 0x65, 0x00, 0xc5, 0x00, 0x65, 0x00, + 0x65, 0x00, 0x05, 0x00, 0xe5, 0x02, 0x00, 0xe5, + 0x09, 0x80, 0x45, 0x00, 0x85, 0x00, 0xe5, 0x09, + 0xe0, 0x2c, 0x2c, 0xe0, 0x80, 0x86, 0xef, 0x24, + 0x60, 0xef, 0x5c, 0xe0, 0x04, 0xef, 0x07, 0x20, + 0xef, 0x07, 0x00, 0xef, 0x07, 0x00, 0xef, 0x1d, + 0xe0, 0x02, 0xeb, 0x05, 0xef, 0x80, 0x19, 0xe0, + 0x30, 0xef, 0x15, 0xe0, 0x05, 0xef, 0x24, 0x60, + 0xef, 0x01, 0xc0, 0x2f, 0xe0, 0x06, 0xaf, 0xe0, + 0x80, 0x12, 0xef, 0x80, 0x73, 0x8e, 0xef, 0x82, + 0x50, 0x60, 0xef, 0x09, 0x40, 0xef, 0x05, 0x40, + 0xef, 0x6f, 0x60, 0xef, 0x57, 0xa0, 0xef, 0x04, + 0x60, 0x0f, 0xe0, 0x07, 0xef, 0x04, 0x60, 0xef, + 0x30, 0xe0, 0x00, 0xef, 0x02, 0xa0, 0xef, 0x20, + 0xe0, 0x00, 0xef, 0x16, 0x20, 0x2f, 0xe0, 0x46, + 0xef, 0x80, 0xcc, 0xe0, 0x04, 0xef, 0x06, 0x20, + 0xef, 0x05, 0x40, 0xef, 0x01, 0xc0, 0xef, 0x26, + 0x00, 0xcf, 0xe0, 0x00, 0xef, 0x06, 0x60, 0xef, + 0x01, 0xc0, 0xef, 0x01, 0xc0, 0xef, 0x80, 0x0b, + 0x00, 0xef, 0x2f, 0xe0, 0x1d, 0xe9, 0x02, 0xe0, + 0x83, 0x7e, 0xe5, 0xc0, 0x66, 0x58, 0xe0, 0x18, + 0xe5, 0x8f, 0xb2, 0xa0, 0xe5, 0x80, 0x56, 0x20, + 0xe5, 0x95, 0xfa, 0xe0, 0x06, 0xe5, 0x9c, 0xa9, + 0xe0, 0x8b, 0x97, 0xe5, 0x81, 0x96, 0xe0, 0x85, + 0x5a, 0xe5, 0x92, 0xc3, 0x80, 0xe5, 0x8f, 0xd8, + 0xe0, 0xca, 0x9b, 0xc9, 0x1b, 0xe0, 0x16, 0xfb, + 0x58, 0xe0, 0x78, 0xe6, 0x80, 0x68, 0xe0, 0xc0, + 0xbd, 0x88, 0xfd, 0xc0, 0xbf, 0x76, 0x20, 0xfd, + 0xc0, 0xbf, 0x76, 0x20, }; typedef enum { @@ -2787,6 +2863,7 @@ typedef enum { UNICODE_SCRIPT_Cuneiform, UNICODE_SCRIPT_Cypriot, UNICODE_SCRIPT_Cyrillic, + UNICODE_SCRIPT_Cypro_Minoan, UNICODE_SCRIPT_Deseret, UNICODE_SCRIPT_Devanagari, UNICODE_SCRIPT_Dives_Akuru, @@ -2819,6 +2896,7 @@ typedef enum { UNICODE_SCRIPT_Kaithi, UNICODE_SCRIPT_Kannada, UNICODE_SCRIPT_Katakana, + UNICODE_SCRIPT_Kawi, UNICODE_SCRIPT_Kayah_Li, UNICODE_SCRIPT_Kharoshthi, UNICODE_SCRIPT_Khmer, @@ -2853,6 +2931,7 @@ typedef enum { UNICODE_SCRIPT_Multani, UNICODE_SCRIPT_Myanmar, UNICODE_SCRIPT_Nabataean, + UNICODE_SCRIPT_Nag_Mundari, UNICODE_SCRIPT_Nandinagari, UNICODE_SCRIPT_New_Tai_Lue, UNICODE_SCRIPT_Newa, @@ -2869,6 +2948,7 @@ typedef enum { UNICODE_SCRIPT_Old_Sogdian, UNICODE_SCRIPT_Old_South_Arabian, UNICODE_SCRIPT_Old_Turkic, + UNICODE_SCRIPT_Old_Uyghur, UNICODE_SCRIPT_Oriya, UNICODE_SCRIPT_Osage, UNICODE_SCRIPT_Osmanya, @@ -2907,8 +2987,11 @@ typedef enum { UNICODE_SCRIPT_Tibetan, UNICODE_SCRIPT_Tifinagh, UNICODE_SCRIPT_Tirhuta, + UNICODE_SCRIPT_Tangsa, + UNICODE_SCRIPT_Toto, UNICODE_SCRIPT_Ugaritic, UNICODE_SCRIPT_Vai, + UNICODE_SCRIPT_Vithkuqi, UNICODE_SCRIPT_Wancho, UNICODE_SCRIPT_Warang_Citi, UNICODE_SCRIPT_Yezidi, @@ -2947,6 +3030,7 @@ static const char unicode_script_name_table[] = "Cuneiform,Xsux" "\0" "Cypriot,Cprt" "\0" "Cyrillic,Cyrl" "\0" + "Cypro_Minoan,Cpmn" "\0" "Deseret,Dsrt" "\0" "Devanagari,Deva" "\0" "Dives_Akuru,Diak" "\0" @@ -2979,6 +3063,7 @@ static const char unicode_script_name_table[] = "Kaithi,Kthi" "\0" "Kannada,Knda" "\0" "Katakana,Kana" "\0" + "Kawi,Kawi" "\0" "Kayah_Li,Kali" "\0" "Kharoshthi,Khar" "\0" "Khmer,Khmr" "\0" @@ -3013,6 +3098,7 @@ static const char unicode_script_name_table[] = "Multani,Mult" "\0" "Myanmar,Mymr" "\0" "Nabataean,Nbat" "\0" + "Nag_Mundari,Nagm" "\0" "Nandinagari,Nand" "\0" "New_Tai_Lue,Talu" "\0" "Newa,Newa" "\0" @@ -3029,6 +3115,7 @@ static const char unicode_script_name_table[] = "Old_Sogdian,Sogo" "\0" "Old_South_Arabian,Sarb" "\0" "Old_Turkic,Orkh" "\0" + "Old_Uyghur,Ougr" "\0" "Oriya,Orya" "\0" "Osage,Osge" "\0" "Osmanya,Osma" "\0" @@ -3067,8 +3154,11 @@ static const char unicode_script_name_table[] = "Tibetan,Tibt" "\0" "Tifinagh,Tfng" "\0" "Tirhuta,Tirh" "\0" + "Tangsa,Tnsa" "\0" + "Toto,Toto" "\0" "Ugaritic,Ugar" "\0" "Vai,Vaii" "\0" + "Vithkuqi,Vith" "\0" "Wancho,Wcho" "\0" "Warang_Citi,Wara" "\0" "Yezidi,Yezi" "\0" @@ -3076,437 +3166,454 @@ static const char unicode_script_name_table[] = "Zanabazar_Square,Zanb" "\0" ; -static const uint8_t unicode_script_table[2609] = { - 0xc0, 0x19, 0x99, 0x45, 0x85, 0x19, 0x99, 0x45, - 0xae, 0x19, 0x80, 0x45, 0x8e, 0x19, 0x80, 0x45, - 0x84, 0x19, 0x96, 0x45, 0x80, 0x19, 0x9e, 0x45, - 0x80, 0x19, 0xe1, 0x60, 0x45, 0xa6, 0x19, 0x84, - 0x45, 0x84, 0x19, 0x81, 0x0d, 0x93, 0x19, 0xe0, - 0x0f, 0x37, 0x83, 0x2b, 0x80, 0x19, 0x82, 0x2b, - 0x01, 0x83, 0x2b, 0x80, 0x19, 0x80, 0x2b, 0x03, - 0x80, 0x2b, 0x80, 0x19, 0x80, 0x2b, 0x80, 0x19, - 0x82, 0x2b, 0x00, 0x80, 0x2b, 0x00, 0x93, 0x2b, - 0x00, 0xbe, 0x2b, 0x8d, 0x1a, 0x8f, 0x2b, 0xe0, - 0x24, 0x1d, 0x81, 0x37, 0xe0, 0x48, 0x1d, 0x00, +static const uint8_t unicode_script_table[2720] = { + 0xc0, 0x19, 0x99, 0x47, 0x85, 0x19, 0x99, 0x47, + 0xae, 0x19, 0x80, 0x47, 0x8e, 0x19, 0x80, 0x47, + 0x84, 0x19, 0x96, 0x47, 0x80, 0x19, 0x9e, 0x47, + 0x80, 0x19, 0xe1, 0x60, 0x47, 0xa6, 0x19, 0x84, + 0x47, 0x84, 0x19, 0x81, 0x0d, 0x93, 0x19, 0xe0, + 0x0f, 0x38, 0x83, 0x2c, 0x80, 0x19, 0x82, 0x2c, + 0x01, 0x83, 0x2c, 0x80, 0x19, 0x80, 0x2c, 0x03, + 0x80, 0x2c, 0x80, 0x19, 0x80, 0x2c, 0x80, 0x19, + 0x82, 0x2c, 0x00, 0x80, 0x2c, 0x00, 0x93, 0x2c, + 0x00, 0xbe, 0x2c, 0x8d, 0x1a, 0x8f, 0x2c, 0xe0, + 0x24, 0x1d, 0x81, 0x38, 0xe0, 0x48, 0x1d, 0x00, 0xa5, 0x05, 0x01, 0xb1, 0x05, 0x01, 0x82, 0x05, - 0x00, 0xb6, 0x34, 0x07, 0x9a, 0x34, 0x03, 0x85, - 0x34, 0x0a, 0x84, 0x04, 0x80, 0x19, 0x85, 0x04, - 0x80, 0x19, 0x8d, 0x04, 0x80, 0x19, 0x80, 0x04, - 0x00, 0x80, 0x04, 0x80, 0x19, 0x9f, 0x04, 0x80, - 0x19, 0x89, 0x04, 0x8a, 0x37, 0x99, 0x04, 0x80, - 0x37, 0xe0, 0x0b, 0x04, 0x80, 0x19, 0xa1, 0x04, - 0x8d, 0x87, 0x00, 0xbb, 0x87, 0x01, 0x82, 0x87, - 0xaf, 0x04, 0xb1, 0x91, 0x0d, 0xba, 0x63, 0x01, - 0x82, 0x63, 0xad, 0x7b, 0x01, 0x8e, 0x7b, 0x00, - 0x9b, 0x50, 0x01, 0x80, 0x50, 0x00, 0x8a, 0x87, - 0x34, 0x94, 0x04, 0x00, 0x91, 0x04, 0x0a, 0x8e, - 0x04, 0x80, 0x19, 0x9c, 0x04, 0xd0, 0x1f, 0x83, - 0x37, 0x8e, 0x1f, 0x81, 0x19, 0x99, 0x1f, 0x83, - 0x0b, 0x00, 0x87, 0x0b, 0x01, 0x81, 0x0b, 0x01, - 0x95, 0x0b, 0x00, 0x86, 0x0b, 0x00, 0x80, 0x0b, - 0x02, 0x83, 0x0b, 0x01, 0x88, 0x0b, 0x01, 0x81, - 0x0b, 0x01, 0x83, 0x0b, 0x07, 0x80, 0x0b, 0x03, - 0x81, 0x0b, 0x00, 0x84, 0x0b, 0x01, 0x98, 0x0b, - 0x01, 0x82, 0x2e, 0x00, 0x85, 0x2e, 0x03, 0x81, - 0x2e, 0x01, 0x95, 0x2e, 0x00, 0x86, 0x2e, 0x00, - 0x81, 0x2e, 0x00, 0x81, 0x2e, 0x00, 0x81, 0x2e, - 0x01, 0x80, 0x2e, 0x00, 0x84, 0x2e, 0x03, 0x81, - 0x2e, 0x01, 0x82, 0x2e, 0x02, 0x80, 0x2e, 0x06, - 0x83, 0x2e, 0x00, 0x80, 0x2e, 0x06, 0x90, 0x2e, - 0x09, 0x82, 0x2c, 0x00, 0x88, 0x2c, 0x00, 0x82, - 0x2c, 0x00, 0x95, 0x2c, 0x00, 0x86, 0x2c, 0x00, - 0x81, 0x2c, 0x00, 0x84, 0x2c, 0x01, 0x89, 0x2c, - 0x00, 0x82, 0x2c, 0x00, 0x82, 0x2c, 0x01, 0x80, - 0x2c, 0x0e, 0x83, 0x2c, 0x01, 0x8b, 0x2c, 0x06, - 0x86, 0x2c, 0x00, 0x82, 0x70, 0x00, 0x87, 0x70, - 0x01, 0x81, 0x70, 0x01, 0x95, 0x70, 0x00, 0x86, - 0x70, 0x00, 0x81, 0x70, 0x00, 0x84, 0x70, 0x01, - 0x88, 0x70, 0x01, 0x81, 0x70, 0x01, 0x82, 0x70, - 0x06, 0x82, 0x70, 0x03, 0x81, 0x70, 0x00, 0x84, - 0x70, 0x01, 0x91, 0x70, 0x09, 0x81, 0x8e, 0x00, - 0x85, 0x8e, 0x02, 0x82, 0x8e, 0x00, 0x83, 0x8e, - 0x02, 0x81, 0x8e, 0x00, 0x80, 0x8e, 0x00, 0x81, - 0x8e, 0x02, 0x81, 0x8e, 0x02, 0x82, 0x8e, 0x02, - 0x8b, 0x8e, 0x03, 0x84, 0x8e, 0x02, 0x82, 0x8e, - 0x00, 0x83, 0x8e, 0x01, 0x80, 0x8e, 0x05, 0x80, - 0x8e, 0x0d, 0x94, 0x8e, 0x04, 0x8c, 0x90, 0x00, - 0x82, 0x90, 0x00, 0x96, 0x90, 0x00, 0x8f, 0x90, - 0x02, 0x87, 0x90, 0x00, 0x82, 0x90, 0x00, 0x83, - 0x90, 0x06, 0x81, 0x90, 0x00, 0x82, 0x90, 0x04, - 0x83, 0x90, 0x01, 0x89, 0x90, 0x06, 0x88, 0x90, - 0x8c, 0x3c, 0x00, 0x82, 0x3c, 0x00, 0x96, 0x3c, - 0x00, 0x89, 0x3c, 0x00, 0x84, 0x3c, 0x01, 0x88, - 0x3c, 0x00, 0x82, 0x3c, 0x00, 0x83, 0x3c, 0x06, - 0x81, 0x3c, 0x06, 0x80, 0x3c, 0x00, 0x83, 0x3c, - 0x01, 0x89, 0x3c, 0x00, 0x81, 0x3c, 0x0c, 0x8c, - 0x4f, 0x00, 0x82, 0x4f, 0x00, 0xb2, 0x4f, 0x00, - 0x82, 0x4f, 0x00, 0x85, 0x4f, 0x03, 0x8f, 0x4f, - 0x01, 0x99, 0x4f, 0x00, 0x82, 0x81, 0x00, 0x91, - 0x81, 0x02, 0x97, 0x81, 0x00, 0x88, 0x81, 0x00, - 0x80, 0x81, 0x01, 0x86, 0x81, 0x02, 0x80, 0x81, - 0x03, 0x85, 0x81, 0x00, 0x80, 0x81, 0x00, 0x87, - 0x81, 0x05, 0x89, 0x81, 0x01, 0x82, 0x81, 0x0b, - 0xb9, 0x92, 0x03, 0x80, 0x19, 0x9b, 0x92, 0x24, - 0x81, 0x44, 0x00, 0x80, 0x44, 0x00, 0x84, 0x44, - 0x00, 0x97, 0x44, 0x00, 0x80, 0x44, 0x00, 0x96, - 0x44, 0x01, 0x84, 0x44, 0x00, 0x80, 0x44, 0x00, - 0x85, 0x44, 0x01, 0x89, 0x44, 0x01, 0x83, 0x44, - 0x1f, 0xc7, 0x93, 0x00, 0xa3, 0x93, 0x03, 0xa6, - 0x93, 0x00, 0xa3, 0x93, 0x00, 0x8e, 0x93, 0x00, - 0x86, 0x93, 0x83, 0x19, 0x81, 0x93, 0x24, 0xe0, - 0x3f, 0x5e, 0xa5, 0x27, 0x00, 0x80, 0x27, 0x04, - 0x80, 0x27, 0x01, 0xaa, 0x27, 0x80, 0x19, 0x83, - 0x27, 0xe0, 0x9f, 0x30, 0xc8, 0x26, 0x00, 0x83, - 0x26, 0x01, 0x86, 0x26, 0x00, 0x80, 0x26, 0x00, - 0x83, 0x26, 0x01, 0xa8, 0x26, 0x00, 0x83, 0x26, - 0x01, 0xa0, 0x26, 0x00, 0x83, 0x26, 0x01, 0x86, - 0x26, 0x00, 0x80, 0x26, 0x00, 0x83, 0x26, 0x01, - 0x8e, 0x26, 0x00, 0xb8, 0x26, 0x00, 0x83, 0x26, - 0x01, 0xc2, 0x26, 0x01, 0x9f, 0x26, 0x02, 0x99, - 0x26, 0x05, 0xd5, 0x17, 0x01, 0x85, 0x17, 0x01, - 0xe2, 0x1f, 0x12, 0x9c, 0x66, 0x02, 0xca, 0x7a, - 0x82, 0x19, 0x8a, 0x7a, 0x06, 0x8c, 0x88, 0x00, - 0x86, 0x88, 0x0a, 0x94, 0x32, 0x81, 0x19, 0x08, - 0x93, 0x11, 0x0b, 0x8c, 0x89, 0x00, 0x82, 0x89, - 0x00, 0x81, 0x89, 0x0b, 0xdd, 0x40, 0x01, 0x89, - 0x40, 0x05, 0x89, 0x40, 0x05, 0x81, 0x5b, 0x81, - 0x19, 0x80, 0x5b, 0x80, 0x19, 0x88, 0x5b, 0x00, - 0x89, 0x5b, 0x05, 0xd8, 0x5b, 0x06, 0xaa, 0x5b, - 0x04, 0xc5, 0x12, 0x09, 0x9e, 0x47, 0x00, 0x8b, - 0x47, 0x03, 0x8b, 0x47, 0x03, 0x80, 0x47, 0x02, - 0x8b, 0x47, 0x9d, 0x8a, 0x01, 0x84, 0x8a, 0x0a, - 0xab, 0x61, 0x03, 0x99, 0x61, 0x05, 0x8a, 0x61, - 0x02, 0x81, 0x61, 0x9f, 0x40, 0x9b, 0x10, 0x01, - 0x81, 0x10, 0xbe, 0x8b, 0x00, 0x9c, 0x8b, 0x01, - 0x8a, 0x8b, 0x05, 0x89, 0x8b, 0x05, 0x8d, 0x8b, - 0x01, 0x90, 0x37, 0x3e, 0xcb, 0x07, 0x03, 0xac, - 0x07, 0x02, 0xbf, 0x85, 0xb3, 0x0a, 0x07, 0x83, - 0x0a, 0xb7, 0x46, 0x02, 0x8e, 0x46, 0x02, 0x82, - 0x46, 0xaf, 0x67, 0x88, 0x1d, 0x06, 0xaa, 0x27, - 0x01, 0x82, 0x27, 0x87, 0x85, 0x07, 0x82, 0x37, - 0x80, 0x19, 0x8c, 0x37, 0x80, 0x19, 0x86, 0x37, - 0x83, 0x19, 0x80, 0x37, 0x85, 0x19, 0x80, 0x37, - 0x82, 0x19, 0x81, 0x37, 0x80, 0x19, 0x04, 0xa5, - 0x45, 0x84, 0x2b, 0x80, 0x1d, 0xb0, 0x45, 0x84, - 0x2b, 0x83, 0x45, 0x84, 0x2b, 0x8c, 0x45, 0x80, - 0x1d, 0xc5, 0x45, 0x80, 0x2b, 0xb9, 0x37, 0x00, - 0x84, 0x37, 0xe0, 0x9f, 0x45, 0x95, 0x2b, 0x01, - 0x85, 0x2b, 0x01, 0xa5, 0x2b, 0x01, 0x85, 0x2b, - 0x01, 0x87, 0x2b, 0x00, 0x80, 0x2b, 0x00, 0x80, - 0x2b, 0x00, 0x80, 0x2b, 0x00, 0x9e, 0x2b, 0x01, - 0xb4, 0x2b, 0x00, 0x8e, 0x2b, 0x00, 0x8d, 0x2b, - 0x01, 0x85, 0x2b, 0x00, 0x92, 0x2b, 0x01, 0x82, - 0x2b, 0x00, 0x88, 0x2b, 0x00, 0x8b, 0x19, 0x81, - 0x37, 0xd6, 0x19, 0x00, 0x8a, 0x19, 0x80, 0x45, - 0x01, 0x8a, 0x19, 0x80, 0x45, 0x8e, 0x19, 0x00, - 0x8c, 0x45, 0x02, 0x9f, 0x19, 0x0f, 0xa0, 0x37, - 0x0e, 0xa5, 0x19, 0x80, 0x2b, 0x82, 0x19, 0x81, - 0x45, 0x85, 0x19, 0x80, 0x45, 0x9a, 0x19, 0x80, - 0x45, 0x90, 0x19, 0xa8, 0x45, 0x82, 0x19, 0x03, - 0xe2, 0x36, 0x19, 0x18, 0x8a, 0x19, 0x14, 0xe3, - 0x3f, 0x19, 0xe0, 0x9f, 0x0f, 0xe2, 0x13, 0x19, - 0x01, 0x9f, 0x19, 0x00, 0xe0, 0x08, 0x19, 0xae, - 0x28, 0x00, 0xae, 0x28, 0x00, 0x9f, 0x45, 0xe0, - 0x13, 0x1a, 0x04, 0x86, 0x1a, 0xa5, 0x27, 0x00, - 0x80, 0x27, 0x04, 0x80, 0x27, 0x01, 0xb7, 0x94, - 0x06, 0x81, 0x94, 0x0d, 0x80, 0x94, 0x96, 0x26, - 0x08, 0x86, 0x26, 0x00, 0x86, 0x26, 0x00, 0x86, - 0x26, 0x00, 0x86, 0x26, 0x00, 0x86, 0x26, 0x00, - 0x86, 0x26, 0x00, 0x86, 0x26, 0x00, 0x86, 0x26, - 0x00, 0x9f, 0x1d, 0xd2, 0x19, 0x2c, 0x99, 0x2f, - 0x00, 0xd8, 0x2f, 0x0b, 0xe0, 0x75, 0x2f, 0x19, - 0x8b, 0x19, 0x03, 0x84, 0x19, 0x80, 0x2f, 0x80, - 0x19, 0x80, 0x2f, 0x98, 0x19, 0x88, 0x2f, 0x83, - 0x37, 0x81, 0x30, 0x87, 0x19, 0x83, 0x2f, 0x83, - 0x19, 0x00, 0xd5, 0x35, 0x01, 0x81, 0x37, 0x81, - 0x19, 0x82, 0x35, 0x80, 0x19, 0xd9, 0x3d, 0x81, - 0x19, 0x82, 0x3d, 0x04, 0xaa, 0x0d, 0x00, 0xdd, - 0x30, 0x00, 0x8f, 0x19, 0x9f, 0x0d, 0xa3, 0x19, - 0x0b, 0x8f, 0x3d, 0x9e, 0x30, 0x00, 0xbf, 0x19, - 0x9e, 0x30, 0xd0, 0x19, 0xae, 0x3d, 0x80, 0x19, - 0xd7, 0x3d, 0xe0, 0x47, 0x19, 0xf0, 0x09, 0x5f, - 0x2f, 0xbf, 0x19, 0xf0, 0x41, 0x9c, 0x2f, 0x02, - 0xe4, 0x2c, 0x9b, 0x02, 0xb6, 0x9b, 0x08, 0xaf, - 0x4a, 0xe0, 0xcb, 0x97, 0x13, 0xdf, 0x1d, 0xd7, - 0x08, 0x07, 0xa1, 0x19, 0xe0, 0x05, 0x45, 0x82, - 0x19, 0xb4, 0x45, 0x01, 0x88, 0x45, 0x29, 0x8a, - 0x45, 0xac, 0x86, 0x02, 0x89, 0x19, 0x05, 0xb7, - 0x76, 0x07, 0xc5, 0x7c, 0x07, 0x8b, 0x7c, 0x05, - 0x9f, 0x1f, 0xad, 0x3e, 0x80, 0x19, 0x80, 0x3e, - 0xa3, 0x79, 0x0a, 0x80, 0x79, 0x9c, 0x30, 0x02, - 0xcd, 0x3a, 0x00, 0x80, 0x19, 0x89, 0x3a, 0x03, - 0x81, 0x3a, 0x9e, 0x5e, 0x00, 0xb6, 0x16, 0x08, - 0x8d, 0x16, 0x01, 0x89, 0x16, 0x01, 0x83, 0x16, - 0x9f, 0x5e, 0xc2, 0x8c, 0x17, 0x84, 0x8c, 0x96, - 0x55, 0x09, 0x85, 0x26, 0x01, 0x85, 0x26, 0x01, - 0x85, 0x26, 0x08, 0x86, 0x26, 0x00, 0x86, 0x26, - 0x00, 0xaa, 0x45, 0x80, 0x19, 0x88, 0x45, 0x80, - 0x2b, 0x83, 0x45, 0x81, 0x19, 0x03, 0xcf, 0x17, - 0xad, 0x55, 0x01, 0x89, 0x55, 0x05, 0xf0, 0x1b, - 0x43, 0x30, 0x0b, 0x96, 0x30, 0x03, 0xb0, 0x30, - 0x70, 0x10, 0xa3, 0xe1, 0x0d, 0x2f, 0x01, 0xe0, - 0x09, 0x2f, 0x25, 0x86, 0x45, 0x0b, 0x84, 0x05, - 0x04, 0x99, 0x34, 0x00, 0x84, 0x34, 0x00, 0x80, - 0x34, 0x00, 0x81, 0x34, 0x00, 0x81, 0x34, 0x00, - 0x89, 0x34, 0xe0, 0x11, 0x04, 0x10, 0xe1, 0x0a, - 0x04, 0x81, 0x19, 0x0f, 0xbf, 0x04, 0x01, 0xb5, - 0x04, 0x27, 0x8d, 0x04, 0x01, 0x8f, 0x37, 0x89, - 0x19, 0x05, 0x8d, 0x37, 0x81, 0x1d, 0xa2, 0x19, - 0x00, 0x92, 0x19, 0x00, 0x83, 0x19, 0x03, 0x84, - 0x04, 0x00, 0xe0, 0x26, 0x04, 0x01, 0x80, 0x19, - 0x00, 0x9f, 0x19, 0x99, 0x45, 0x85, 0x19, 0x99, - 0x45, 0x8a, 0x19, 0x89, 0x3d, 0x80, 0x19, 0xac, - 0x3d, 0x81, 0x19, 0x9e, 0x30, 0x02, 0x85, 0x30, - 0x01, 0x85, 0x30, 0x01, 0x85, 0x30, 0x01, 0x82, - 0x30, 0x02, 0x86, 0x19, 0x00, 0x86, 0x19, 0x09, - 0x84, 0x19, 0x01, 0x8b, 0x49, 0x00, 0x99, 0x49, - 0x00, 0x92, 0x49, 0x00, 0x81, 0x49, 0x00, 0x8e, - 0x49, 0x01, 0x8d, 0x49, 0x21, 0xe0, 0x1a, 0x49, - 0x04, 0x82, 0x19, 0x03, 0xac, 0x19, 0x02, 0x88, - 0x19, 0xce, 0x2b, 0x00, 0x8c, 0x19, 0x02, 0x80, - 0x2b, 0x2e, 0xac, 0x19, 0x80, 0x37, 0x60, 0x21, - 0x9c, 0x4b, 0x02, 0xb0, 0x13, 0x0e, 0x80, 0x37, - 0x9a, 0x19, 0x03, 0xa3, 0x69, 0x08, 0x82, 0x69, - 0x9a, 0x29, 0x04, 0xaa, 0x6b, 0x04, 0x9d, 0x96, - 0x00, 0x80, 0x96, 0xa3, 0x6c, 0x03, 0x8d, 0x6c, - 0x29, 0xcf, 0x1e, 0xaf, 0x7e, 0x9d, 0x72, 0x01, - 0x89, 0x72, 0x05, 0xa3, 0x71, 0x03, 0xa3, 0x71, - 0x03, 0xa7, 0x24, 0x07, 0xb3, 0x14, 0x0a, 0x80, - 0x14, 0x60, 0x2f, 0xe0, 0xd6, 0x48, 0x08, 0x95, - 0x48, 0x09, 0x87, 0x48, 0x60, 0x37, 0x85, 0x1c, - 0x01, 0x80, 0x1c, 0x00, 0xab, 0x1c, 0x00, 0x81, - 0x1c, 0x02, 0x80, 0x1c, 0x01, 0x80, 0x1c, 0x95, - 0x36, 0x00, 0x88, 0x36, 0x9f, 0x74, 0x9e, 0x5f, - 0x07, 0x88, 0x5f, 0x2f, 0x92, 0x33, 0x00, 0x81, - 0x33, 0x04, 0x84, 0x33, 0x9b, 0x77, 0x02, 0x80, - 0x77, 0x99, 0x4c, 0x04, 0x80, 0x4c, 0x3f, 0x9f, - 0x58, 0x97, 0x57, 0x03, 0x93, 0x57, 0x01, 0xad, - 0x57, 0x83, 0x3f, 0x00, 0x81, 0x3f, 0x04, 0x87, - 0x3f, 0x00, 0x82, 0x3f, 0x00, 0x9c, 0x3f, 0x01, - 0x82, 0x3f, 0x03, 0x89, 0x3f, 0x06, 0x88, 0x3f, - 0x06, 0x9f, 0x6e, 0x9f, 0x6a, 0x1f, 0xa6, 0x51, - 0x03, 0x8b, 0x51, 0x08, 0xb5, 0x06, 0x02, 0x86, - 0x06, 0x95, 0x39, 0x01, 0x87, 0x39, 0x92, 0x38, - 0x04, 0x87, 0x38, 0x91, 0x78, 0x06, 0x83, 0x78, - 0x0b, 0x86, 0x78, 0x4f, 0xc8, 0x6f, 0x36, 0xb2, - 0x68, 0x0c, 0xb2, 0x68, 0x06, 0x85, 0x68, 0xa7, - 0x31, 0x07, 0x89, 0x31, 0x60, 0xc5, 0x9e, 0x04, - 0x00, 0xa9, 0x9a, 0x00, 0x82, 0x9a, 0x01, 0x81, - 0x9a, 0x4d, 0xa7, 0x6d, 0x07, 0xa9, 0x82, 0x55, - 0x9b, 0x18, 0x13, 0x96, 0x25, 0x08, 0xcd, 0x0e, - 0x03, 0x9d, 0x0e, 0x0e, 0x80, 0x0e, 0xc1, 0x3b, - 0x0a, 0x80, 0x3b, 0x01, 0x98, 0x83, 0x06, 0x89, - 0x83, 0x05, 0xb4, 0x15, 0x00, 0x91, 0x15, 0x07, - 0xa6, 0x4e, 0x08, 0xdf, 0x7d, 0x00, 0x93, 0x81, - 0x0a, 0x91, 0x41, 0x00, 0xab, 0x41, 0x40, 0x86, - 0x5d, 0x00, 0x80, 0x5d, 0x00, 0x83, 0x5d, 0x00, - 0x8e, 0x5d, 0x00, 0x8a, 0x5d, 0x05, 0xba, 0x43, - 0x04, 0x89, 0x43, 0x05, 0x83, 0x2a, 0x00, 0x87, - 0x2a, 0x01, 0x81, 0x2a, 0x01, 0x95, 0x2a, 0x00, - 0x86, 0x2a, 0x00, 0x81, 0x2a, 0x00, 0x84, 0x2a, - 0x00, 0x80, 0x37, 0x88, 0x2a, 0x01, 0x81, 0x2a, - 0x01, 0x82, 0x2a, 0x01, 0x80, 0x2a, 0x05, 0x80, - 0x2a, 0x04, 0x86, 0x2a, 0x01, 0x86, 0x2a, 0x02, - 0x84, 0x2a, 0x60, 0x2a, 0xdb, 0x62, 0x00, 0x84, - 0x62, 0x1d, 0xc7, 0x95, 0x07, 0x89, 0x95, 0x60, - 0x45, 0xb5, 0x7f, 0x01, 0xa5, 0x7f, 0x21, 0xc4, - 0x5a, 0x0a, 0x89, 0x5a, 0x05, 0x8c, 0x5b, 0x12, - 0xb8, 0x8d, 0x06, 0x89, 0x8d, 0x35, 0x9a, 0x02, - 0x01, 0x8e, 0x02, 0x03, 0x8f, 0x02, 0x60, 0x5f, - 0xbb, 0x21, 0x60, 0x03, 0xd2, 0x99, 0x0b, 0x80, - 0x99, 0x86, 0x20, 0x01, 0x80, 0x20, 0x01, 0x87, - 0x20, 0x00, 0x81, 0x20, 0x00, 0x9d, 0x20, 0x00, - 0x81, 0x20, 0x01, 0x8b, 0x20, 0x08, 0x89, 0x20, - 0x45, 0x87, 0x60, 0x01, 0xad, 0x60, 0x01, 0x8a, - 0x60, 0x1a, 0xc7, 0x9c, 0x07, 0xd2, 0x84, 0x1c, - 0xb8, 0x75, 0x60, 0xa6, 0x88, 0x0c, 0x00, 0xac, - 0x0c, 0x00, 0x8d, 0x0c, 0x09, 0x9c, 0x0c, 0x02, - 0x9f, 0x52, 0x01, 0x95, 0x52, 0x00, 0x8d, 0x52, - 0x48, 0x86, 0x53, 0x00, 0x81, 0x53, 0x00, 0xab, - 0x53, 0x02, 0x80, 0x53, 0x00, 0x81, 0x53, 0x00, - 0x88, 0x53, 0x07, 0x89, 0x53, 0x05, 0x85, 0x2d, - 0x00, 0x81, 0x2d, 0x00, 0xa4, 0x2d, 0x00, 0x81, - 0x2d, 0x00, 0x85, 0x2d, 0x06, 0x89, 0x2d, 0x60, - 0xd5, 0x98, 0x4d, 0x60, 0x56, 0x80, 0x4a, 0x0e, - 0xb1, 0x8e, 0x0c, 0x80, 0x8e, 0xe3, 0x39, 0x1b, - 0x60, 0x05, 0xe0, 0x0e, 0x1b, 0x00, 0x84, 0x1b, - 0x0a, 0xe0, 0x63, 0x1b, 0x6a, 0x5b, 0xe3, 0xce, - 0x23, 0x00, 0x88, 0x23, 0x6f, 0x66, 0xe1, 0xe6, - 0x03, 0x70, 0x11, 0x58, 0xe1, 0xd8, 0x08, 0x06, - 0x9e, 0x5c, 0x00, 0x89, 0x5c, 0x03, 0x81, 0x5c, - 0x5f, 0x9d, 0x09, 0x01, 0x85, 0x09, 0x09, 0xc5, - 0x73, 0x09, 0x89, 0x73, 0x00, 0x86, 0x73, 0x00, - 0x94, 0x73, 0x04, 0x92, 0x73, 0x62, 0x4f, 0xda, - 0x54, 0x60, 0x04, 0xca, 0x59, 0x03, 0xb8, 0x59, - 0x06, 0x90, 0x59, 0x3f, 0x80, 0x8f, 0x80, 0x64, - 0x81, 0x19, 0x80, 0x42, 0x0a, 0x81, 0x2f, 0x0d, - 0xf0, 0x07, 0x97, 0x8f, 0x07, 0xe2, 0x9f, 0x8f, - 0xe1, 0x75, 0x42, 0x29, 0x88, 0x8f, 0x70, 0x12, - 0x96, 0x80, 0x3d, 0xe0, 0xbd, 0x35, 0x30, 0x82, - 0x35, 0x10, 0x83, 0x3d, 0x07, 0xe1, 0x2b, 0x64, - 0x68, 0xa3, 0xe0, 0x0a, 0x22, 0x04, 0x8c, 0x22, - 0x02, 0x88, 0x22, 0x06, 0x89, 0x22, 0x01, 0x83, - 0x22, 0x83, 0x19, 0x70, 0x02, 0xfb, 0xe0, 0x95, - 0x19, 0x09, 0xa6, 0x19, 0x01, 0xbd, 0x19, 0x82, - 0x37, 0x90, 0x19, 0x87, 0x37, 0x81, 0x19, 0x86, - 0x37, 0x9d, 0x19, 0x83, 0x37, 0xba, 0x19, 0x16, - 0xc5, 0x2b, 0x60, 0x39, 0x93, 0x19, 0x0b, 0xd6, - 0x19, 0x08, 0x98, 0x19, 0x60, 0x26, 0xd4, 0x19, - 0x00, 0xc6, 0x19, 0x00, 0x81, 0x19, 0x01, 0x80, - 0x19, 0x01, 0x81, 0x19, 0x01, 0x83, 0x19, 0x00, - 0x8b, 0x19, 0x00, 0x80, 0x19, 0x00, 0x86, 0x19, - 0x00, 0xc0, 0x19, 0x00, 0x83, 0x19, 0x01, 0x87, - 0x19, 0x00, 0x86, 0x19, 0x00, 0x9b, 0x19, 0x00, - 0x83, 0x19, 0x00, 0x84, 0x19, 0x00, 0x80, 0x19, - 0x02, 0x86, 0x19, 0x00, 0xe0, 0xf3, 0x19, 0x01, - 0xe0, 0xc3, 0x19, 0x01, 0xb1, 0x19, 0xe2, 0x2b, - 0x80, 0x0e, 0x84, 0x80, 0x00, 0x8e, 0x80, 0x64, - 0xef, 0x86, 0x28, 0x00, 0x90, 0x28, 0x01, 0x86, - 0x28, 0x00, 0x81, 0x28, 0x00, 0x84, 0x28, 0x60, - 0x74, 0xac, 0x65, 0x02, 0x8d, 0x65, 0x01, 0x89, - 0x65, 0x03, 0x81, 0x65, 0x61, 0x0f, 0xb9, 0x98, - 0x04, 0x80, 0x98, 0x64, 0x9f, 0xe0, 0x64, 0x56, - 0x01, 0x8f, 0x56, 0x28, 0xcb, 0x01, 0x03, 0x89, - 0x01, 0x03, 0x81, 0x01, 0x62, 0xb0, 0xc3, 0x19, - 0x4b, 0xbc, 0x19, 0x60, 0x61, 0x83, 0x04, 0x00, - 0x9a, 0x04, 0x00, 0x81, 0x04, 0x00, 0x80, 0x04, - 0x01, 0x80, 0x04, 0x00, 0x89, 0x04, 0x00, 0x83, - 0x04, 0x00, 0x80, 0x04, 0x00, 0x80, 0x04, 0x05, - 0x80, 0x04, 0x03, 0x80, 0x04, 0x00, 0x80, 0x04, - 0x00, 0x80, 0x04, 0x00, 0x82, 0x04, 0x00, 0x81, - 0x04, 0x00, 0x80, 0x04, 0x01, 0x80, 0x04, 0x00, - 0x80, 0x04, 0x00, 0x80, 0x04, 0x00, 0x80, 0x04, - 0x00, 0x80, 0x04, 0x00, 0x81, 0x04, 0x00, 0x80, - 0x04, 0x01, 0x83, 0x04, 0x00, 0x86, 0x04, 0x00, - 0x83, 0x04, 0x00, 0x83, 0x04, 0x00, 0x80, 0x04, - 0x00, 0x89, 0x04, 0x00, 0x90, 0x04, 0x04, 0x82, - 0x04, 0x00, 0x84, 0x04, 0x00, 0x90, 0x04, 0x33, - 0x81, 0x04, 0x60, 0xad, 0xab, 0x19, 0x03, 0xe0, - 0x03, 0x19, 0x0b, 0x8e, 0x19, 0x01, 0x8e, 0x19, - 0x00, 0x8e, 0x19, 0x00, 0xa4, 0x19, 0x09, 0xe0, - 0x4d, 0x19, 0x37, 0x99, 0x19, 0x80, 0x35, 0x81, - 0x19, 0x0c, 0xab, 0x19, 0x03, 0x88, 0x19, 0x06, - 0x81, 0x19, 0x0d, 0x85, 0x19, 0x60, 0x39, 0xe3, - 0x77, 0x19, 0x07, 0x8c, 0x19, 0x02, 0x8c, 0x19, - 0x02, 0xe0, 0x13, 0x19, 0x0b, 0xd8, 0x19, 0x06, - 0x8b, 0x19, 0x13, 0x8b, 0x19, 0x03, 0xb7, 0x19, - 0x07, 0x89, 0x19, 0x05, 0xa7, 0x19, 0x07, 0x9d, - 0x19, 0x01, 0x81, 0x19, 0x4d, 0xe0, 0x18, 0x19, - 0x00, 0xd1, 0x19, 0x00, 0xe0, 0x26, 0x19, 0x0b, - 0x8d, 0x19, 0x01, 0x84, 0x19, 0x02, 0x82, 0x19, - 0x04, 0x86, 0x19, 0x08, 0x98, 0x19, 0x06, 0x86, - 0x19, 0x08, 0x82, 0x19, 0x0c, 0x86, 0x19, 0x28, - 0xe0, 0x32, 0x19, 0x00, 0xb6, 0x19, 0x24, 0x89, - 0x19, 0x63, 0xa5, 0xf0, 0x96, 0x7d, 0x2f, 0x21, - 0xef, 0xd4, 0x2f, 0x0a, 0xe0, 0x7d, 0x2f, 0x01, - 0xf0, 0x06, 0x21, 0x2f, 0x0d, 0xf0, 0x0c, 0xd0, - 0x2f, 0x6b, 0xbe, 0xe1, 0xbd, 0x2f, 0x65, 0x81, - 0xf0, 0x02, 0xea, 0x2f, 0x7a, 0xdc, 0x55, 0x80, - 0x19, 0x1d, 0xdf, 0x19, 0x60, 0x1f, 0xe0, 0x8f, - 0x37, + 0x00, 0xb6, 0x35, 0x07, 0x9a, 0x35, 0x03, 0x85, + 0x35, 0x0a, 0x84, 0x04, 0x80, 0x19, 0x85, 0x04, + 0x80, 0x19, 0x8d, 0x04, 0x80, 0x19, 0x82, 0x04, + 0x80, 0x19, 0x9f, 0x04, 0x80, 0x19, 0x89, 0x04, + 0x8a, 0x38, 0x99, 0x04, 0x80, 0x38, 0xe0, 0x0b, + 0x04, 0x80, 0x19, 0xa1, 0x04, 0x8d, 0x8b, 0x00, + 0xbb, 0x8b, 0x01, 0x82, 0x8b, 0xaf, 0x04, 0xb1, + 0x95, 0x0d, 0xba, 0x66, 0x01, 0x82, 0x66, 0xad, + 0x7f, 0x01, 0x8e, 0x7f, 0x00, 0x9b, 0x52, 0x01, + 0x80, 0x52, 0x00, 0x8a, 0x8b, 0x04, 0x9e, 0x04, + 0x00, 0x81, 0x04, 0x05, 0xc9, 0x04, 0x80, 0x19, + 0x9c, 0x04, 0xd0, 0x20, 0x83, 0x38, 0x8e, 0x20, + 0x81, 0x19, 0x99, 0x20, 0x83, 0x0b, 0x00, 0x87, + 0x0b, 0x01, 0x81, 0x0b, 0x01, 0x95, 0x0b, 0x00, + 0x86, 0x0b, 0x00, 0x80, 0x0b, 0x02, 0x83, 0x0b, + 0x01, 0x88, 0x0b, 0x01, 0x81, 0x0b, 0x01, 0x83, + 0x0b, 0x07, 0x80, 0x0b, 0x03, 0x81, 0x0b, 0x00, + 0x84, 0x0b, 0x01, 0x98, 0x0b, 0x01, 0x82, 0x2f, + 0x00, 0x85, 0x2f, 0x03, 0x81, 0x2f, 0x01, 0x95, + 0x2f, 0x00, 0x86, 0x2f, 0x00, 0x81, 0x2f, 0x00, + 0x81, 0x2f, 0x00, 0x81, 0x2f, 0x01, 0x80, 0x2f, + 0x00, 0x84, 0x2f, 0x03, 0x81, 0x2f, 0x01, 0x82, + 0x2f, 0x02, 0x80, 0x2f, 0x06, 0x83, 0x2f, 0x00, + 0x80, 0x2f, 0x06, 0x90, 0x2f, 0x09, 0x82, 0x2d, + 0x00, 0x88, 0x2d, 0x00, 0x82, 0x2d, 0x00, 0x95, + 0x2d, 0x00, 0x86, 0x2d, 0x00, 0x81, 0x2d, 0x00, + 0x84, 0x2d, 0x01, 0x89, 0x2d, 0x00, 0x82, 0x2d, + 0x00, 0x82, 0x2d, 0x01, 0x80, 0x2d, 0x0e, 0x83, + 0x2d, 0x01, 0x8b, 0x2d, 0x06, 0x86, 0x2d, 0x00, + 0x82, 0x74, 0x00, 0x87, 0x74, 0x01, 0x81, 0x74, + 0x01, 0x95, 0x74, 0x00, 0x86, 0x74, 0x00, 0x81, + 0x74, 0x00, 0x84, 0x74, 0x01, 0x88, 0x74, 0x01, + 0x81, 0x74, 0x01, 0x82, 0x74, 0x06, 0x82, 0x74, + 0x03, 0x81, 0x74, 0x00, 0x84, 0x74, 0x01, 0x91, + 0x74, 0x09, 0x81, 0x92, 0x00, 0x85, 0x92, 0x02, + 0x82, 0x92, 0x00, 0x83, 0x92, 0x02, 0x81, 0x92, + 0x00, 0x80, 0x92, 0x00, 0x81, 0x92, 0x02, 0x81, + 0x92, 0x02, 0x82, 0x92, 0x02, 0x8b, 0x92, 0x03, + 0x84, 0x92, 0x02, 0x82, 0x92, 0x00, 0x83, 0x92, + 0x01, 0x80, 0x92, 0x05, 0x80, 0x92, 0x0d, 0x94, + 0x92, 0x04, 0x8c, 0x94, 0x00, 0x82, 0x94, 0x00, + 0x96, 0x94, 0x00, 0x8f, 0x94, 0x01, 0x88, 0x94, + 0x00, 0x82, 0x94, 0x00, 0x83, 0x94, 0x06, 0x81, + 0x94, 0x00, 0x82, 0x94, 0x01, 0x80, 0x94, 0x01, + 0x83, 0x94, 0x01, 0x89, 0x94, 0x06, 0x88, 0x94, + 0x8c, 0x3d, 0x00, 0x82, 0x3d, 0x00, 0x96, 0x3d, + 0x00, 0x89, 0x3d, 0x00, 0x84, 0x3d, 0x01, 0x88, + 0x3d, 0x00, 0x82, 0x3d, 0x00, 0x83, 0x3d, 0x06, + 0x81, 0x3d, 0x05, 0x81, 0x3d, 0x00, 0x83, 0x3d, + 0x01, 0x89, 0x3d, 0x00, 0x82, 0x3d, 0x0b, 0x8c, + 0x51, 0x00, 0x82, 0x51, 0x00, 0xb2, 0x51, 0x00, + 0x82, 0x51, 0x00, 0x85, 0x51, 0x03, 0x8f, 0x51, + 0x01, 0x99, 0x51, 0x00, 0x82, 0x85, 0x00, 0x91, + 0x85, 0x02, 0x97, 0x85, 0x00, 0x88, 0x85, 0x00, + 0x80, 0x85, 0x01, 0x86, 0x85, 0x02, 0x80, 0x85, + 0x03, 0x85, 0x85, 0x00, 0x80, 0x85, 0x00, 0x87, + 0x85, 0x05, 0x89, 0x85, 0x01, 0x82, 0x85, 0x0b, + 0xb9, 0x96, 0x03, 0x80, 0x19, 0x9b, 0x96, 0x24, + 0x81, 0x46, 0x00, 0x80, 0x46, 0x00, 0x84, 0x46, + 0x00, 0x97, 0x46, 0x00, 0x80, 0x46, 0x00, 0x96, + 0x46, 0x01, 0x84, 0x46, 0x00, 0x80, 0x46, 0x00, + 0x86, 0x46, 0x00, 0x89, 0x46, 0x01, 0x83, 0x46, + 0x1f, 0xc7, 0x97, 0x00, 0xa3, 0x97, 0x03, 0xa6, + 0x97, 0x00, 0xa3, 0x97, 0x00, 0x8e, 0x97, 0x00, + 0x86, 0x97, 0x83, 0x19, 0x81, 0x97, 0x24, 0xe0, + 0x3f, 0x60, 0xa5, 0x28, 0x00, 0x80, 0x28, 0x04, + 0x80, 0x28, 0x01, 0xaa, 0x28, 0x80, 0x19, 0x83, + 0x28, 0xe0, 0x9f, 0x31, 0xc8, 0x27, 0x00, 0x83, + 0x27, 0x01, 0x86, 0x27, 0x00, 0x80, 0x27, 0x00, + 0x83, 0x27, 0x01, 0xa8, 0x27, 0x00, 0x83, 0x27, + 0x01, 0xa0, 0x27, 0x00, 0x83, 0x27, 0x01, 0x86, + 0x27, 0x00, 0x80, 0x27, 0x00, 0x83, 0x27, 0x01, + 0x8e, 0x27, 0x00, 0xb8, 0x27, 0x00, 0x83, 0x27, + 0x01, 0xc2, 0x27, 0x01, 0x9f, 0x27, 0x02, 0x99, + 0x27, 0x05, 0xd5, 0x17, 0x01, 0x85, 0x17, 0x01, + 0xe2, 0x1f, 0x12, 0x9c, 0x69, 0x02, 0xca, 0x7e, + 0x82, 0x19, 0x8a, 0x7e, 0x06, 0x95, 0x8c, 0x08, + 0x80, 0x8c, 0x94, 0x33, 0x81, 0x19, 0x08, 0x93, + 0x11, 0x0b, 0x8c, 0x8d, 0x00, 0x82, 0x8d, 0x00, + 0x81, 0x8d, 0x0b, 0xdd, 0x42, 0x01, 0x89, 0x42, + 0x05, 0x89, 0x42, 0x05, 0x81, 0x5d, 0x81, 0x19, + 0x80, 0x5d, 0x80, 0x19, 0x93, 0x5d, 0x05, 0xd8, + 0x5d, 0x06, 0xaa, 0x5d, 0x04, 0xc5, 0x12, 0x09, + 0x9e, 0x49, 0x00, 0x8b, 0x49, 0x03, 0x8b, 0x49, + 0x03, 0x80, 0x49, 0x02, 0x8b, 0x49, 0x9d, 0x8e, + 0x01, 0x84, 0x8e, 0x0a, 0xab, 0x64, 0x03, 0x99, + 0x64, 0x05, 0x8a, 0x64, 0x02, 0x81, 0x64, 0x9f, + 0x42, 0x9b, 0x10, 0x01, 0x81, 0x10, 0xbe, 0x8f, + 0x00, 0x9c, 0x8f, 0x01, 0x8a, 0x8f, 0x05, 0x89, + 0x8f, 0x05, 0x8d, 0x8f, 0x01, 0x9e, 0x38, 0x30, + 0xcc, 0x07, 0x02, 0xae, 0x07, 0x00, 0xbf, 0x89, + 0xb3, 0x0a, 0x07, 0x83, 0x0a, 0xb7, 0x48, 0x02, + 0x8e, 0x48, 0x02, 0x82, 0x48, 0xaf, 0x6a, 0x88, + 0x1d, 0x06, 0xaa, 0x28, 0x01, 0x82, 0x28, 0x87, + 0x89, 0x07, 0x82, 0x38, 0x80, 0x19, 0x8c, 0x38, + 0x80, 0x19, 0x86, 0x38, 0x83, 0x19, 0x80, 0x38, + 0x85, 0x19, 0x80, 0x38, 0x82, 0x19, 0x81, 0x38, + 0x80, 0x19, 0x04, 0xa5, 0x47, 0x84, 0x2c, 0x80, + 0x1d, 0xb0, 0x47, 0x84, 0x2c, 0x83, 0x47, 0x84, + 0x2c, 0x8c, 0x47, 0x80, 0x1d, 0xc5, 0x47, 0x80, + 0x2c, 0xbf, 0x38, 0xe0, 0x9f, 0x47, 0x95, 0x2c, + 0x01, 0x85, 0x2c, 0x01, 0xa5, 0x2c, 0x01, 0x85, + 0x2c, 0x01, 0x87, 0x2c, 0x00, 0x80, 0x2c, 0x00, + 0x80, 0x2c, 0x00, 0x80, 0x2c, 0x00, 0x9e, 0x2c, + 0x01, 0xb4, 0x2c, 0x00, 0x8e, 0x2c, 0x00, 0x8d, + 0x2c, 0x01, 0x85, 0x2c, 0x00, 0x92, 0x2c, 0x01, + 0x82, 0x2c, 0x00, 0x88, 0x2c, 0x00, 0x8b, 0x19, + 0x81, 0x38, 0xd6, 0x19, 0x00, 0x8a, 0x19, 0x80, + 0x47, 0x01, 0x8a, 0x19, 0x80, 0x47, 0x8e, 0x19, + 0x00, 0x8c, 0x47, 0x02, 0xa0, 0x19, 0x0e, 0xa0, + 0x38, 0x0e, 0xa5, 0x19, 0x80, 0x2c, 0x82, 0x19, + 0x81, 0x47, 0x85, 0x19, 0x80, 0x47, 0x9a, 0x19, + 0x80, 0x47, 0x90, 0x19, 0xa8, 0x47, 0x82, 0x19, + 0x03, 0xe2, 0x36, 0x19, 0x18, 0x8a, 0x19, 0x14, + 0xe3, 0x3f, 0x19, 0xe0, 0x9f, 0x0f, 0xe2, 0x13, + 0x19, 0x01, 0x9f, 0x19, 0x00, 0xe0, 0x08, 0x19, + 0xdf, 0x29, 0x9f, 0x47, 0xe0, 0x13, 0x1a, 0x04, + 0x86, 0x1a, 0xa5, 0x28, 0x00, 0x80, 0x28, 0x04, + 0x80, 0x28, 0x01, 0xb7, 0x98, 0x06, 0x81, 0x98, + 0x0d, 0x80, 0x98, 0x96, 0x27, 0x08, 0x86, 0x27, + 0x00, 0x86, 0x27, 0x00, 0x86, 0x27, 0x00, 0x86, + 0x27, 0x00, 0x86, 0x27, 0x00, 0x86, 0x27, 0x00, + 0x86, 0x27, 0x00, 0x86, 0x27, 0x00, 0x9f, 0x1d, + 0xdd, 0x19, 0x21, 0x99, 0x30, 0x00, 0xd8, 0x30, + 0x0b, 0xe0, 0x75, 0x30, 0x19, 0x8b, 0x19, 0x03, + 0x84, 0x19, 0x80, 0x30, 0x80, 0x19, 0x80, 0x30, + 0x98, 0x19, 0x88, 0x30, 0x83, 0x38, 0x81, 0x31, + 0x87, 0x19, 0x83, 0x30, 0x83, 0x19, 0x00, 0xd5, + 0x36, 0x01, 0x81, 0x38, 0x81, 0x19, 0x82, 0x36, + 0x80, 0x19, 0xd9, 0x3e, 0x81, 0x19, 0x82, 0x3e, + 0x04, 0xaa, 0x0d, 0x00, 0xdd, 0x31, 0x00, 0x8f, + 0x19, 0x9f, 0x0d, 0xa3, 0x19, 0x0b, 0x8f, 0x3e, + 0x9e, 0x31, 0x00, 0xbf, 0x19, 0x9e, 0x31, 0xd0, + 0x19, 0xae, 0x3e, 0x80, 0x19, 0xd7, 0x3e, 0xe0, + 0x47, 0x19, 0xf0, 0x09, 0x5f, 0x30, 0xbf, 0x19, + 0xf0, 0x41, 0x9f, 0x30, 0xe4, 0x2c, 0xa2, 0x02, + 0xb6, 0xa2, 0x08, 0xaf, 0x4c, 0xe0, 0xcb, 0x9d, + 0x13, 0xdf, 0x1d, 0xd7, 0x08, 0x07, 0xa1, 0x19, + 0xe0, 0x05, 0x47, 0x82, 0x19, 0xbf, 0x47, 0x04, + 0x81, 0x47, 0x00, 0x80, 0x47, 0x00, 0x84, 0x47, + 0x17, 0x8d, 0x47, 0xac, 0x8a, 0x02, 0x89, 0x19, + 0x05, 0xb7, 0x7a, 0x07, 0xc5, 0x80, 0x07, 0x8b, + 0x80, 0x05, 0x9f, 0x20, 0xad, 0x40, 0x80, 0x19, + 0x80, 0x40, 0xa3, 0x7d, 0x0a, 0x80, 0x7d, 0x9c, + 0x31, 0x02, 0xcd, 0x3b, 0x00, 0x80, 0x19, 0x89, + 0x3b, 0x03, 0x81, 0x3b, 0x9e, 0x60, 0x00, 0xb6, + 0x16, 0x08, 0x8d, 0x16, 0x01, 0x89, 0x16, 0x01, + 0x83, 0x16, 0x9f, 0x60, 0xc2, 0x90, 0x17, 0x84, + 0x90, 0x96, 0x57, 0x09, 0x85, 0x27, 0x01, 0x85, + 0x27, 0x01, 0x85, 0x27, 0x08, 0x86, 0x27, 0x00, + 0x86, 0x27, 0x00, 0xaa, 0x47, 0x80, 0x19, 0x88, + 0x47, 0x80, 0x2c, 0x83, 0x47, 0x81, 0x19, 0x03, + 0xcf, 0x17, 0xad, 0x57, 0x01, 0x89, 0x57, 0x05, + 0xf0, 0x1b, 0x43, 0x31, 0x0b, 0x96, 0x31, 0x03, + 0xb0, 0x31, 0x70, 0x10, 0xa3, 0xe1, 0x0d, 0x30, + 0x01, 0xe0, 0x09, 0x30, 0x25, 0x86, 0x47, 0x0b, + 0x84, 0x05, 0x04, 0x99, 0x35, 0x00, 0x84, 0x35, + 0x00, 0x80, 0x35, 0x00, 0x81, 0x35, 0x00, 0x81, + 0x35, 0x00, 0x89, 0x35, 0xe0, 0x12, 0x04, 0x0f, + 0xe1, 0x0a, 0x04, 0x81, 0x19, 0xcf, 0x04, 0x01, + 0xb5, 0x04, 0x06, 0x80, 0x04, 0x1f, 0x8f, 0x04, + 0x8f, 0x38, 0x89, 0x19, 0x05, 0x8d, 0x38, 0x81, + 0x1d, 0xa2, 0x19, 0x00, 0x92, 0x19, 0x00, 0x83, + 0x19, 0x03, 0x84, 0x04, 0x00, 0xe0, 0x26, 0x04, + 0x01, 0x80, 0x19, 0x00, 0x9f, 0x19, 0x99, 0x47, + 0x85, 0x19, 0x99, 0x47, 0x8a, 0x19, 0x89, 0x3e, + 0x80, 0x19, 0xac, 0x3e, 0x81, 0x19, 0x9e, 0x31, + 0x02, 0x85, 0x31, 0x01, 0x85, 0x31, 0x01, 0x85, + 0x31, 0x01, 0x82, 0x31, 0x02, 0x86, 0x19, 0x00, + 0x86, 0x19, 0x09, 0x84, 0x19, 0x01, 0x8b, 0x4b, + 0x00, 0x99, 0x4b, 0x00, 0x92, 0x4b, 0x00, 0x81, + 0x4b, 0x00, 0x8e, 0x4b, 0x01, 0x8d, 0x4b, 0x21, + 0xe0, 0x1a, 0x4b, 0x04, 0x82, 0x19, 0x03, 0xac, + 0x19, 0x02, 0x88, 0x19, 0xce, 0x2c, 0x00, 0x8c, + 0x19, 0x02, 0x80, 0x2c, 0x2e, 0xac, 0x19, 0x80, + 0x38, 0x60, 0x21, 0x9c, 0x4d, 0x02, 0xb0, 0x13, + 0x0e, 0x80, 0x38, 0x9a, 0x19, 0x03, 0xa3, 0x6c, + 0x08, 0x82, 0x6c, 0x9a, 0x2a, 0x04, 0xaa, 0x6e, + 0x04, 0x9d, 0x9c, 0x00, 0x80, 0x9c, 0xa3, 0x6f, + 0x03, 0x8d, 0x6f, 0x29, 0xcf, 0x1f, 0xaf, 0x82, + 0x9d, 0x76, 0x01, 0x89, 0x76, 0x05, 0xa3, 0x75, + 0x03, 0xa3, 0x75, 0x03, 0xa7, 0x25, 0x07, 0xb3, + 0x14, 0x0a, 0x80, 0x14, 0x8a, 0x9e, 0x00, 0x8e, + 0x9e, 0x00, 0x86, 0x9e, 0x00, 0x81, 0x9e, 0x00, + 0x8a, 0x9e, 0x00, 0x8e, 0x9e, 0x00, 0x86, 0x9e, + 0x00, 0x81, 0x9e, 0x42, 0xe0, 0xd6, 0x4a, 0x08, + 0x95, 0x4a, 0x09, 0x87, 0x4a, 0x17, 0x85, 0x47, + 0x00, 0xa9, 0x47, 0x00, 0x88, 0x47, 0x44, 0x85, + 0x1c, 0x01, 0x80, 0x1c, 0x00, 0xab, 0x1c, 0x00, + 0x81, 0x1c, 0x02, 0x80, 0x1c, 0x01, 0x80, 0x1c, + 0x95, 0x37, 0x00, 0x88, 0x37, 0x9f, 0x78, 0x9e, + 0x61, 0x07, 0x88, 0x61, 0x2f, 0x92, 0x34, 0x00, + 0x81, 0x34, 0x04, 0x84, 0x34, 0x9b, 0x7b, 0x02, + 0x80, 0x7b, 0x99, 0x4e, 0x04, 0x80, 0x4e, 0x3f, + 0x9f, 0x5a, 0x97, 0x59, 0x03, 0x93, 0x59, 0x01, + 0xad, 0x59, 0x83, 0x41, 0x00, 0x81, 0x41, 0x04, + 0x87, 0x41, 0x00, 0x82, 0x41, 0x00, 0x9c, 0x41, + 0x01, 0x82, 0x41, 0x03, 0x89, 0x41, 0x06, 0x88, + 0x41, 0x06, 0x9f, 0x71, 0x9f, 0x6d, 0x1f, 0xa6, + 0x53, 0x03, 0x8b, 0x53, 0x08, 0xb5, 0x06, 0x02, + 0x86, 0x06, 0x95, 0x3a, 0x01, 0x87, 0x3a, 0x92, + 0x39, 0x04, 0x87, 0x39, 0x91, 0x7c, 0x06, 0x83, + 0x7c, 0x0b, 0x86, 0x7c, 0x4f, 0xc8, 0x72, 0x36, + 0xb2, 0x6b, 0x0c, 0xb2, 0x6b, 0x06, 0x85, 0x6b, + 0xa7, 0x32, 0x07, 0x89, 0x32, 0x60, 0xc5, 0x9e, + 0x04, 0x00, 0xa9, 0xa1, 0x00, 0x82, 0xa1, 0x01, + 0x81, 0xa1, 0x4a, 0x82, 0x04, 0xa7, 0x70, 0x07, + 0xa9, 0x86, 0x15, 0x99, 0x73, 0x25, 0x9b, 0x18, + 0x13, 0x96, 0x26, 0x08, 0xcd, 0x0e, 0x03, 0xa3, + 0x0e, 0x08, 0x80, 0x0e, 0xc2, 0x3c, 0x09, 0x80, + 0x3c, 0x01, 0x98, 0x87, 0x06, 0x89, 0x87, 0x05, + 0xb4, 0x15, 0x00, 0x91, 0x15, 0x07, 0xa6, 0x50, + 0x08, 0xdf, 0x81, 0x00, 0x93, 0x85, 0x0a, 0x91, + 0x43, 0x00, 0xae, 0x43, 0x3d, 0x86, 0x5f, 0x00, + 0x80, 0x5f, 0x00, 0x83, 0x5f, 0x00, 0x8e, 0x5f, + 0x00, 0x8a, 0x5f, 0x05, 0xba, 0x45, 0x04, 0x89, + 0x45, 0x05, 0x83, 0x2b, 0x00, 0x87, 0x2b, 0x01, + 0x81, 0x2b, 0x01, 0x95, 0x2b, 0x00, 0x86, 0x2b, + 0x00, 0x81, 0x2b, 0x00, 0x84, 0x2b, 0x00, 0x80, + 0x38, 0x88, 0x2b, 0x01, 0x81, 0x2b, 0x01, 0x82, + 0x2b, 0x01, 0x80, 0x2b, 0x05, 0x80, 0x2b, 0x04, + 0x86, 0x2b, 0x01, 0x86, 0x2b, 0x02, 0x84, 0x2b, + 0x60, 0x2a, 0xdb, 0x65, 0x00, 0x84, 0x65, 0x1d, + 0xc7, 0x99, 0x07, 0x89, 0x99, 0x60, 0x45, 0xb5, + 0x83, 0x01, 0xa5, 0x83, 0x21, 0xc4, 0x5c, 0x0a, + 0x89, 0x5c, 0x05, 0x8c, 0x5d, 0x12, 0xb9, 0x91, + 0x05, 0x89, 0x91, 0x35, 0x9a, 0x02, 0x01, 0x8e, + 0x02, 0x03, 0x96, 0x02, 0x60, 0x58, 0xbb, 0x22, + 0x60, 0x03, 0xd2, 0xa0, 0x0b, 0x80, 0xa0, 0x86, + 0x21, 0x01, 0x80, 0x21, 0x01, 0x87, 0x21, 0x00, + 0x81, 0x21, 0x00, 0x9d, 0x21, 0x00, 0x81, 0x21, + 0x01, 0x8b, 0x21, 0x08, 0x89, 0x21, 0x45, 0x87, + 0x63, 0x01, 0xad, 0x63, 0x01, 0x8a, 0x63, 0x1a, + 0xc7, 0xa3, 0x07, 0xd2, 0x88, 0x0c, 0x8f, 0x12, + 0xb8, 0x79, 0x06, 0x89, 0x20, 0x60, 0x95, 0x88, + 0x0c, 0x00, 0xac, 0x0c, 0x00, 0x8d, 0x0c, 0x09, + 0x9c, 0x0c, 0x02, 0x9f, 0x54, 0x01, 0x95, 0x54, + 0x00, 0x8d, 0x54, 0x48, 0x86, 0x55, 0x00, 0x81, + 0x55, 0x00, 0xab, 0x55, 0x02, 0x80, 0x55, 0x00, + 0x81, 0x55, 0x00, 0x88, 0x55, 0x07, 0x89, 0x55, + 0x05, 0x85, 0x2e, 0x00, 0x81, 0x2e, 0x00, 0xa4, + 0x2e, 0x00, 0x81, 0x2e, 0x00, 0x85, 0x2e, 0x06, + 0x89, 0x2e, 0x60, 0xd5, 0x98, 0x4f, 0x06, 0x90, + 0x3f, 0x00, 0xa8, 0x3f, 0x02, 0x9b, 0x3f, 0x55, + 0x80, 0x4c, 0x0e, 0xb1, 0x92, 0x0c, 0x80, 0x92, + 0xe3, 0x39, 0x1b, 0x60, 0x05, 0xe0, 0x0e, 0x1b, + 0x00, 0x84, 0x1b, 0x0a, 0xe0, 0x63, 0x1b, 0x69, + 0xeb, 0xe0, 0x02, 0x1e, 0x0c, 0xe3, 0xf5, 0x24, + 0x6f, 0x49, 0xe1, 0xe6, 0x03, 0x70, 0x11, 0x58, + 0xe1, 0xd8, 0x08, 0x06, 0x9e, 0x5e, 0x00, 0x89, + 0x5e, 0x03, 0x81, 0x5e, 0xce, 0x9a, 0x00, 0x89, + 0x9a, 0x05, 0x9d, 0x09, 0x01, 0x85, 0x09, 0x09, + 0xc5, 0x77, 0x09, 0x89, 0x77, 0x00, 0x86, 0x77, + 0x00, 0x94, 0x77, 0x04, 0x92, 0x77, 0x62, 0x4f, + 0xda, 0x56, 0x60, 0x04, 0xca, 0x5b, 0x03, 0xb8, + 0x5b, 0x06, 0x90, 0x5b, 0x3f, 0x80, 0x93, 0x80, + 0x67, 0x81, 0x30, 0x80, 0x44, 0x0a, 0x81, 0x30, + 0x0d, 0xf0, 0x07, 0x97, 0x93, 0x07, 0xe2, 0x9f, + 0x93, 0xe1, 0x75, 0x44, 0x29, 0x88, 0x93, 0x70, + 0x12, 0x86, 0x83, 0x3e, 0x00, 0x86, 0x3e, 0x00, + 0x81, 0x3e, 0x00, 0x80, 0x3e, 0xe0, 0xbe, 0x36, + 0x82, 0x3e, 0x0e, 0x80, 0x36, 0x1c, 0x82, 0x36, + 0x01, 0x80, 0x3e, 0x0d, 0x83, 0x3e, 0x07, 0xe1, + 0x2b, 0x67, 0x68, 0xa3, 0xe0, 0x0a, 0x23, 0x04, + 0x8c, 0x23, 0x02, 0x88, 0x23, 0x06, 0x89, 0x23, + 0x01, 0x83, 0x23, 0x83, 0x19, 0x70, 0x01, 0xfb, + 0xad, 0x38, 0x01, 0x96, 0x38, 0x08, 0xe0, 0x13, + 0x19, 0x3b, 0xe0, 0x95, 0x19, 0x09, 0xa6, 0x19, + 0x01, 0xbd, 0x19, 0x82, 0x38, 0x90, 0x19, 0x87, + 0x38, 0x81, 0x19, 0x86, 0x38, 0x9d, 0x19, 0x83, + 0x38, 0xbc, 0x19, 0x14, 0xc5, 0x2c, 0x60, 0x19, + 0x93, 0x19, 0x0b, 0x93, 0x19, 0x0b, 0xd6, 0x19, + 0x08, 0x98, 0x19, 0x60, 0x26, 0xd4, 0x19, 0x00, + 0xc6, 0x19, 0x00, 0x81, 0x19, 0x01, 0x80, 0x19, + 0x01, 0x81, 0x19, 0x01, 0x83, 0x19, 0x00, 0x8b, + 0x19, 0x00, 0x80, 0x19, 0x00, 0x86, 0x19, 0x00, + 0xc0, 0x19, 0x00, 0x83, 0x19, 0x01, 0x87, 0x19, + 0x00, 0x86, 0x19, 0x00, 0x9b, 0x19, 0x00, 0x83, + 0x19, 0x00, 0x84, 0x19, 0x00, 0x80, 0x19, 0x02, + 0x86, 0x19, 0x00, 0xe0, 0xf3, 0x19, 0x01, 0xe0, + 0xc3, 0x19, 0x01, 0xb1, 0x19, 0xe2, 0x2b, 0x84, + 0x0e, 0x84, 0x84, 0x00, 0x8e, 0x84, 0x63, 0xef, + 0x9e, 0x47, 0x05, 0x85, 0x47, 0x60, 0x74, 0x86, + 0x29, 0x00, 0x90, 0x29, 0x01, 0x86, 0x29, 0x00, + 0x81, 0x29, 0x00, 0x84, 0x29, 0x04, 0xbd, 0x1d, + 0x20, 0x80, 0x1d, 0x60, 0x0f, 0xac, 0x68, 0x02, + 0x8d, 0x68, 0x01, 0x89, 0x68, 0x03, 0x81, 0x68, + 0x60, 0xdf, 0x9e, 0x9b, 0x10, 0xb9, 0x9f, 0x04, + 0x80, 0x9f, 0x61, 0x6f, 0xa9, 0x62, 0x62, 0x85, + 0x86, 0x27, 0x00, 0x83, 0x27, 0x00, 0x81, 0x27, + 0x00, 0x8e, 0x27, 0x00, 0xe0, 0x64, 0x58, 0x01, + 0x8f, 0x58, 0x28, 0xcb, 0x01, 0x03, 0x89, 0x01, + 0x03, 0x81, 0x01, 0x62, 0xb0, 0xc3, 0x19, 0x4b, + 0xbc, 0x19, 0x60, 0x61, 0x83, 0x04, 0x00, 0x9a, + 0x04, 0x00, 0x81, 0x04, 0x00, 0x80, 0x04, 0x01, + 0x80, 0x04, 0x00, 0x89, 0x04, 0x00, 0x83, 0x04, + 0x00, 0x80, 0x04, 0x00, 0x80, 0x04, 0x05, 0x80, + 0x04, 0x03, 0x80, 0x04, 0x00, 0x80, 0x04, 0x00, + 0x80, 0x04, 0x00, 0x82, 0x04, 0x00, 0x81, 0x04, + 0x00, 0x80, 0x04, 0x01, 0x80, 0x04, 0x00, 0x80, + 0x04, 0x00, 0x80, 0x04, 0x00, 0x80, 0x04, 0x00, + 0x80, 0x04, 0x00, 0x81, 0x04, 0x00, 0x80, 0x04, + 0x01, 0x83, 0x04, 0x00, 0x86, 0x04, 0x00, 0x83, + 0x04, 0x00, 0x83, 0x04, 0x00, 0x80, 0x04, 0x00, + 0x89, 0x04, 0x00, 0x90, 0x04, 0x04, 0x82, 0x04, + 0x00, 0x84, 0x04, 0x00, 0x90, 0x04, 0x33, 0x81, + 0x04, 0x60, 0xad, 0xab, 0x19, 0x03, 0xe0, 0x03, + 0x19, 0x0b, 0x8e, 0x19, 0x01, 0x8e, 0x19, 0x00, + 0x8e, 0x19, 0x00, 0xa4, 0x19, 0x09, 0xe0, 0x4d, + 0x19, 0x37, 0x99, 0x19, 0x80, 0x36, 0x81, 0x19, + 0x0c, 0xab, 0x19, 0x03, 0x88, 0x19, 0x06, 0x81, + 0x19, 0x0d, 0x85, 0x19, 0x60, 0x39, 0xe3, 0x77, + 0x19, 0x03, 0x90, 0x19, 0x02, 0x8c, 0x19, 0x02, + 0xe0, 0x16, 0x19, 0x03, 0xde, 0x19, 0x05, 0x8b, + 0x19, 0x03, 0x80, 0x19, 0x0e, 0x8b, 0x19, 0x03, + 0xb7, 0x19, 0x07, 0x89, 0x19, 0x05, 0xa7, 0x19, + 0x07, 0x9d, 0x19, 0x01, 0x81, 0x19, 0x4d, 0xe0, + 0xf3, 0x19, 0x0b, 0x8d, 0x19, 0x01, 0x8c, 0x19, + 0x02, 0x88, 0x19, 0x06, 0xad, 0x19, 0x00, 0x86, + 0x19, 0x07, 0x8d, 0x19, 0x03, 0x88, 0x19, 0x06, + 0x88, 0x19, 0x06, 0xe0, 0x32, 0x19, 0x00, 0xb6, + 0x19, 0x24, 0x89, 0x19, 0x63, 0xa5, 0xf0, 0x96, + 0x7f, 0x30, 0x1f, 0xef, 0xd9, 0x30, 0x05, 0xe0, + 0x7d, 0x30, 0x01, 0xf0, 0x06, 0x21, 0x30, 0x0d, + 0xf0, 0x0c, 0xd0, 0x30, 0x6b, 0xbe, 0xe1, 0xbd, + 0x30, 0x65, 0x81, 0xf0, 0x02, 0xea, 0x30, 0x04, + 0xef, 0xff, 0x30, 0x7a, 0xcb, 0xf0, 0x80, 0x19, + 0x1d, 0xdf, 0x19, 0x60, 0x1f, 0xe0, 0x8f, 0x38, }; -static const uint8_t unicode_script_ext_table[799] = { - 0x82, 0xc1, 0x00, 0x00, 0x01, 0x2b, 0x01, 0x00, - 0x00, 0x01, 0x2b, 0x1c, 0x00, 0x0c, 0x01, 0x45, - 0x80, 0x92, 0x00, 0x00, 0x02, 0x1d, 0x6b, 0x00, - 0x02, 0x1d, 0x28, 0x01, 0x02, 0x1d, 0x45, 0x00, - 0x02, 0x1d, 0x28, 0x81, 0x03, 0x00, 0x00, 0x05, - 0x04, 0x31, 0x87, 0x91, 0x9a, 0x0d, 0x00, 0x00, - 0x05, 0x04, 0x31, 0x87, 0x91, 0x9a, 0x00, 0x03, - 0x04, 0x87, 0x91, 0x01, 0x00, 0x00, 0x05, 0x04, - 0x31, 0x87, 0x91, 0x9a, 0x1f, 0x00, 0x00, 0x08, - 0x01, 0x04, 0x50, 0x51, 0x78, 0x31, 0x82, 0x87, - 0x09, 0x00, 0x0a, 0x02, 0x04, 0x87, 0x09, 0x00, - 0x09, 0x03, 0x04, 0x91, 0x9a, 0x05, 0x00, 0x00, - 0x02, 0x04, 0x87, 0x62, 0x00, 0x00, 0x02, 0x04, - 0x31, 0x81, 0xfb, 0x00, 0x00, 0x0d, 0x0b, 0x1f, - 0x2a, 0x2c, 0x2e, 0x3c, 0x45, 0x4f, 0x70, 0x7d, - 0x8e, 0x90, 0x95, 0x00, 0x0c, 0x0b, 0x1f, 0x2a, - 0x2c, 0x2e, 0x3c, 0x45, 0x4f, 0x70, 0x8e, 0x90, - 0x95, 0x10, 0x00, 0x00, 0x14, 0x0b, 0x1f, 0x21, - 0x2d, 0x53, 0x2a, 0x2c, 0x2e, 0x3c, 0x4e, 0x4f, - 0x60, 0x70, 0x43, 0x81, 0x86, 0x8d, 0x8e, 0x90, - 0x95, 0x00, 0x15, 0x0b, 0x1f, 0x21, 0x2d, 0x53, - 0x2a, 0x2c, 0x2e, 0x3c, 0x47, 0x4e, 0x4f, 0x60, - 0x70, 0x43, 0x81, 0x86, 0x8d, 0x8e, 0x90, 0x95, - 0x09, 0x04, 0x1f, 0x21, 0x3b, 0x4e, 0x75, 0x00, - 0x09, 0x03, 0x0b, 0x15, 0x86, 0x75, 0x00, 0x09, - 0x02, 0x2e, 0x5d, 0x75, 0x00, 0x09, 0x02, 0x2c, - 0x41, 0x80, 0x75, 0x00, 0x0d, 0x02, 0x2a, 0x8e, - 0x80, 0x71, 0x00, 0x09, 0x02, 0x3c, 0x60, 0x82, - 0xcf, 0x00, 0x09, 0x03, 0x15, 0x5e, 0x8a, 0x80, - 0x30, 0x00, 0x00, 0x02, 0x27, 0x45, 0x85, 0xb8, - 0x00, 0x01, 0x04, 0x11, 0x32, 0x89, 0x88, 0x80, - 0x4a, 0x00, 0x01, 0x02, 0x5b, 0x76, 0x00, 0x00, - 0x00, 0x02, 0x5b, 0x76, 0x84, 0x49, 0x00, 0x00, - 0x04, 0x0b, 0x1f, 0x2a, 0x3c, 0x00, 0x01, 0x1f, - 0x00, 0x04, 0x0b, 0x1f, 0x2a, 0x3c, 0x00, 0x02, - 0x1f, 0x2a, 0x00, 0x01, 0x1f, 0x01, 0x02, 0x0b, - 0x1f, 0x00, 0x02, 0x1f, 0x7d, 0x00, 0x02, 0x0b, - 0x1f, 0x00, 0x02, 0x1f, 0x7d, 0x00, 0x06, 0x1f, - 0x3c, 0x4f, 0x70, 0x8e, 0x90, 0x00, 0x01, 0x1f, - 0x01, 0x02, 0x1f, 0x7d, 0x01, 0x01, 0x1f, 0x00, - 0x02, 0x1f, 0x7d, 0x00, 0x02, 0x0b, 0x1f, 0x06, - 0x01, 0x1f, 0x00, 0x02, 0x1f, 0x60, 0x00, 0x02, - 0x0b, 0x1f, 0x01, 0x01, 0x1f, 0x00, 0x02, 0x0b, - 0x1f, 0x03, 0x01, 0x1f, 0x00, 0x08, 0x0b, 0x1f, - 0x2a, 0x3c, 0x60, 0x70, 0x90, 0x95, 0x00, 0x02, - 0x1f, 0x2a, 0x00, 0x03, 0x1f, 0x2a, 0x3c, 0x01, - 0x02, 0x0b, 0x1f, 0x00, 0x01, 0x0b, 0x01, 0x02, - 0x1f, 0x2a, 0x00, 0x01, 0x60, 0x80, 0x44, 0x00, - 0x01, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x02, 0x1d, - 0x87, 0x81, 0xb5, 0x00, 0x00, 0x02, 0x45, 0x5b, - 0x80, 0x3f, 0x00, 0x00, 0x03, 0x1f, 0x2a, 0x45, - 0x8c, 0xd1, 0x00, 0x00, 0x02, 0x1d, 0x28, 0x81, - 0x3c, 0x00, 0x01, 0x06, 0x0d, 0x30, 0x2f, 0x35, - 0x3d, 0x9b, 0x00, 0x05, 0x0d, 0x30, 0x2f, 0x35, - 0x3d, 0x01, 0x00, 0x00, 0x01, 0x2f, 0x00, 0x00, - 0x09, 0x06, 0x0d, 0x30, 0x2f, 0x35, 0x3d, 0x9b, - 0x00, 0x00, 0x00, 0x05, 0x0d, 0x30, 0x2f, 0x35, - 0x3d, 0x07, 0x06, 0x0d, 0x30, 0x2f, 0x35, 0x3d, - 0x9b, 0x03, 0x05, 0x0d, 0x30, 0x2f, 0x35, 0x3d, - 0x09, 0x00, 0x03, 0x02, 0x0d, 0x2f, 0x01, 0x00, - 0x00, 0x05, 0x0d, 0x30, 0x2f, 0x35, 0x3d, 0x04, - 0x02, 0x35, 0x3d, 0x00, 0x00, 0x00, 0x05, 0x0d, - 0x30, 0x2f, 0x35, 0x3d, 0x03, 0x00, 0x01, 0x03, - 0x2f, 0x35, 0x3d, 0x01, 0x01, 0x2f, 0x58, 0x00, - 0x03, 0x02, 0x35, 0x3d, 0x02, 0x00, 0x00, 0x02, - 0x35, 0x3d, 0x59, 0x00, 0x00, 0x06, 0x0d, 0x30, - 0x2f, 0x35, 0x3d, 0x9b, 0x00, 0x02, 0x35, 0x3d, - 0x80, 0x12, 0x00, 0x0f, 0x01, 0x2f, 0x1f, 0x00, - 0x23, 0x01, 0x2f, 0x3b, 0x00, 0x27, 0x01, 0x2f, - 0x37, 0x00, 0x30, 0x01, 0x2f, 0x0e, 0x00, 0x0b, - 0x01, 0x2f, 0x32, 0x00, 0x00, 0x01, 0x2f, 0x57, - 0x00, 0x18, 0x01, 0x2f, 0x09, 0x00, 0x04, 0x01, - 0x2f, 0x5f, 0x00, 0x1e, 0x01, 0x2f, 0xc0, 0x31, - 0xef, 0x00, 0x00, 0x02, 0x1d, 0x28, 0x80, 0x0f, - 0x00, 0x07, 0x02, 0x2f, 0x45, 0x80, 0xa7, 0x00, - 0x02, 0x0e, 0x1f, 0x21, 0x2c, 0x2e, 0x41, 0x3c, - 0x3b, 0x4e, 0x4f, 0x5a, 0x60, 0x43, 0x8d, 0x95, - 0x02, 0x0d, 0x1f, 0x21, 0x2c, 0x2e, 0x41, 0x3c, - 0x3b, 0x4e, 0x5a, 0x60, 0x43, 0x8d, 0x95, 0x03, - 0x0b, 0x1f, 0x21, 0x2c, 0x2e, 0x41, 0x3b, 0x4e, - 0x5a, 0x43, 0x8d, 0x95, 0x80, 0x36, 0x00, 0x00, - 0x02, 0x0b, 0x1f, 0x00, 0x00, 0x00, 0x02, 0x1f, - 0x8e, 0x39, 0x00, 0x00, 0x03, 0x3e, 0x45, 0x5e, - 0x80, 0x1f, 0x00, 0x00, 0x02, 0x10, 0x3a, 0xc0, - 0x13, 0xa1, 0x00, 0x00, 0x02, 0x04, 0x91, 0x09, - 0x00, 0x00, 0x02, 0x04, 0x91, 0x46, 0x00, 0x01, - 0x05, 0x0d, 0x30, 0x2f, 0x35, 0x3d, 0x80, 0x99, - 0x00, 0x04, 0x06, 0x0d, 0x30, 0x2f, 0x35, 0x3d, - 0x9b, 0x09, 0x00, 0x00, 0x02, 0x35, 0x3d, 0x2c, - 0x00, 0x01, 0x02, 0x35, 0x3d, 0x80, 0xdf, 0x00, - 0x02, 0x02, 0x1c, 0x49, 0x03, 0x00, 0x2c, 0x03, - 0x1c, 0x48, 0x49, 0x02, 0x00, 0x08, 0x02, 0x1c, - 0x49, 0x81, 0x1f, 0x00, 0x1b, 0x02, 0x04, 0x1a, - 0x8f, 0x84, 0x00, 0x00, 0x02, 0x2a, 0x8e, 0x00, - 0x00, 0x00, 0x02, 0x2a, 0x8e, 0x36, 0x00, 0x01, - 0x02, 0x2a, 0x8e, 0x8c, 0x12, 0x00, 0x01, 0x02, - 0x2a, 0x8e, 0x00, 0x00, 0x00, 0x02, 0x2a, 0x8e, - 0xc0, 0x5c, 0x4b, 0x00, 0x03, 0x01, 0x22, 0x96, - 0x3b, 0x00, 0x11, 0x01, 0x2f, 0x9e, 0x5d, 0x00, - 0x01, 0x01, 0x2f, 0xce, 0xcd, 0x2d, 0x00, +static const uint8_t unicode_script_ext_table[828] = { + 0x82, 0xc1, 0x00, 0x00, 0x01, 0x2c, 0x01, 0x00, + 0x00, 0x01, 0x2c, 0x1c, 0x00, 0x0c, 0x01, 0x47, + 0x80, 0x92, 0x00, 0x00, 0x02, 0x1d, 0x6e, 0x00, + 0x02, 0x1d, 0x29, 0x01, 0x02, 0x1d, 0x47, 0x00, + 0x02, 0x1d, 0x29, 0x81, 0x03, 0x00, 0x00, 0x06, + 0x04, 0x66, 0x32, 0x8b, 0x95, 0xa1, 0x0d, 0x00, + 0x00, 0x06, 0x04, 0x66, 0x32, 0x8b, 0x95, 0xa1, + 0x00, 0x03, 0x04, 0x8b, 0x95, 0x01, 0x00, 0x00, + 0x07, 0x01, 0x04, 0x66, 0x32, 0x8b, 0x95, 0xa1, + 0x1f, 0x00, 0x00, 0x09, 0x01, 0x04, 0x52, 0x53, + 0x73, 0x7c, 0x32, 0x86, 0x8b, 0x09, 0x00, 0x0a, + 0x02, 0x04, 0x8b, 0x09, 0x00, 0x09, 0x03, 0x04, + 0x95, 0xa1, 0x05, 0x00, 0x00, 0x02, 0x04, 0x8b, + 0x62, 0x00, 0x00, 0x02, 0x04, 0x32, 0x81, 0xfb, + 0x00, 0x00, 0x0d, 0x0b, 0x20, 0x2b, 0x2d, 0x2f, + 0x3d, 0x47, 0x51, 0x74, 0x81, 0x92, 0x94, 0x99, + 0x00, 0x0c, 0x0b, 0x20, 0x2b, 0x2d, 0x2f, 0x3d, + 0x47, 0x51, 0x74, 0x92, 0x94, 0x99, 0x10, 0x00, + 0x00, 0x14, 0x0b, 0x20, 0x22, 0x2e, 0x55, 0x2b, + 0x2d, 0x2f, 0x3d, 0x50, 0x51, 0x63, 0x74, 0x45, + 0x85, 0x8a, 0x91, 0x92, 0x94, 0x99, 0x00, 0x15, + 0x0b, 0x20, 0x22, 0x2e, 0x55, 0x2b, 0x2d, 0x2f, + 0x3d, 0x49, 0x50, 0x51, 0x63, 0x74, 0x45, 0x85, + 0x8a, 0x91, 0x92, 0x94, 0x99, 0x09, 0x04, 0x20, + 0x22, 0x3c, 0x50, 0x75, 0x00, 0x09, 0x03, 0x0b, + 0x15, 0x8a, 0x75, 0x00, 0x09, 0x02, 0x2f, 0x5f, + 0x75, 0x00, 0x09, 0x02, 0x2d, 0x43, 0x80, 0x75, + 0x00, 0x0d, 0x02, 0x2b, 0x92, 0x80, 0x71, 0x00, + 0x09, 0x02, 0x3d, 0x63, 0x82, 0xcf, 0x00, 0x09, + 0x03, 0x15, 0x60, 0x8e, 0x80, 0x30, 0x00, 0x00, + 0x02, 0x28, 0x47, 0x85, 0xb8, 0x00, 0x01, 0x04, + 0x11, 0x33, 0x8d, 0x8c, 0x80, 0x4a, 0x00, 0x01, + 0x02, 0x5d, 0x7a, 0x00, 0x00, 0x00, 0x02, 0x5d, + 0x7a, 0x84, 0x49, 0x00, 0x00, 0x04, 0x0b, 0x20, + 0x2b, 0x3d, 0x00, 0x01, 0x20, 0x00, 0x04, 0x0b, + 0x20, 0x2b, 0x3d, 0x00, 0x02, 0x20, 0x2b, 0x00, + 0x01, 0x20, 0x01, 0x02, 0x0b, 0x20, 0x00, 0x02, + 0x20, 0x81, 0x00, 0x02, 0x0b, 0x20, 0x00, 0x02, + 0x20, 0x81, 0x00, 0x06, 0x20, 0x3d, 0x51, 0x74, + 0x92, 0x94, 0x00, 0x01, 0x20, 0x01, 0x02, 0x20, + 0x81, 0x01, 0x01, 0x20, 0x00, 0x02, 0x20, 0x81, + 0x00, 0x02, 0x0b, 0x20, 0x06, 0x01, 0x20, 0x00, + 0x02, 0x20, 0x63, 0x00, 0x02, 0x0b, 0x20, 0x01, + 0x01, 0x20, 0x00, 0x02, 0x0b, 0x20, 0x03, 0x01, + 0x20, 0x00, 0x08, 0x0b, 0x20, 0x2b, 0x3d, 0x63, + 0x74, 0x94, 0x99, 0x00, 0x02, 0x20, 0x2b, 0x00, + 0x03, 0x20, 0x2b, 0x3d, 0x01, 0x02, 0x0b, 0x20, + 0x00, 0x01, 0x0b, 0x01, 0x02, 0x20, 0x2b, 0x00, + 0x01, 0x63, 0x80, 0x44, 0x00, 0x01, 0x01, 0x2c, + 0x35, 0x00, 0x00, 0x02, 0x1d, 0x8b, 0x00, 0x00, + 0x00, 0x01, 0x8b, 0x81, 0xb3, 0x00, 0x00, 0x02, + 0x47, 0x5d, 0x80, 0x3f, 0x00, 0x00, 0x03, 0x20, + 0x2b, 0x47, 0x8c, 0xd1, 0x00, 0x00, 0x02, 0x1d, + 0x29, 0x81, 0x3c, 0x00, 0x01, 0x06, 0x0d, 0x31, + 0x30, 0x36, 0x3e, 0xa2, 0x00, 0x05, 0x0d, 0x31, + 0x30, 0x36, 0x3e, 0x01, 0x00, 0x00, 0x01, 0x30, + 0x00, 0x00, 0x09, 0x06, 0x0d, 0x31, 0x30, 0x36, + 0x3e, 0xa2, 0x00, 0x00, 0x00, 0x05, 0x0d, 0x31, + 0x30, 0x36, 0x3e, 0x07, 0x06, 0x0d, 0x31, 0x30, + 0x36, 0x3e, 0xa2, 0x03, 0x05, 0x0d, 0x31, 0x30, + 0x36, 0x3e, 0x09, 0x00, 0x03, 0x02, 0x0d, 0x30, + 0x01, 0x00, 0x00, 0x05, 0x0d, 0x31, 0x30, 0x36, + 0x3e, 0x04, 0x02, 0x36, 0x3e, 0x00, 0x00, 0x00, + 0x05, 0x0d, 0x31, 0x30, 0x36, 0x3e, 0x03, 0x00, + 0x01, 0x03, 0x30, 0x36, 0x3e, 0x01, 0x01, 0x30, + 0x58, 0x00, 0x03, 0x02, 0x36, 0x3e, 0x02, 0x00, + 0x00, 0x02, 0x36, 0x3e, 0x59, 0x00, 0x00, 0x06, + 0x0d, 0x31, 0x30, 0x36, 0x3e, 0xa2, 0x00, 0x02, + 0x36, 0x3e, 0x80, 0x12, 0x00, 0x0f, 0x01, 0x30, + 0x1f, 0x00, 0x23, 0x01, 0x30, 0x3b, 0x00, 0x27, + 0x01, 0x30, 0x37, 0x00, 0x30, 0x01, 0x30, 0x0e, + 0x00, 0x0b, 0x01, 0x30, 0x32, 0x00, 0x00, 0x01, + 0x30, 0x57, 0x00, 0x18, 0x01, 0x30, 0x09, 0x00, + 0x04, 0x01, 0x30, 0x5f, 0x00, 0x1e, 0x01, 0x30, + 0xc0, 0x31, 0xef, 0x00, 0x00, 0x02, 0x1d, 0x29, + 0x80, 0x0f, 0x00, 0x07, 0x02, 0x30, 0x47, 0x80, + 0xa7, 0x00, 0x02, 0x0e, 0x20, 0x22, 0x2d, 0x2f, + 0x43, 0x3d, 0x3c, 0x50, 0x51, 0x5c, 0x63, 0x45, + 0x91, 0x99, 0x02, 0x0d, 0x20, 0x22, 0x2d, 0x2f, + 0x43, 0x3d, 0x3c, 0x50, 0x5c, 0x63, 0x45, 0x91, + 0x99, 0x03, 0x0b, 0x20, 0x22, 0x2d, 0x2f, 0x43, + 0x3c, 0x50, 0x5c, 0x45, 0x91, 0x99, 0x80, 0x36, + 0x00, 0x00, 0x02, 0x0b, 0x20, 0x00, 0x00, 0x00, + 0x02, 0x20, 0x92, 0x39, 0x00, 0x00, 0x03, 0x40, + 0x47, 0x60, 0x80, 0x1f, 0x00, 0x00, 0x02, 0x10, + 0x3b, 0xc0, 0x12, 0xed, 0x00, 0x01, 0x02, 0x04, + 0x66, 0x80, 0x31, 0x00, 0x00, 0x02, 0x04, 0x95, + 0x09, 0x00, 0x00, 0x02, 0x04, 0x95, 0x46, 0x00, + 0x01, 0x05, 0x0d, 0x31, 0x30, 0x36, 0x3e, 0x80, + 0x99, 0x00, 0x04, 0x06, 0x0d, 0x31, 0x30, 0x36, + 0x3e, 0xa2, 0x09, 0x00, 0x00, 0x02, 0x36, 0x3e, + 0x2c, 0x00, 0x01, 0x02, 0x36, 0x3e, 0x80, 0xdf, + 0x00, 0x01, 0x03, 0x1e, 0x1c, 0x4b, 0x00, 0x02, + 0x1c, 0x4b, 0x03, 0x00, 0x2c, 0x03, 0x1c, 0x4a, + 0x4b, 0x02, 0x00, 0x08, 0x02, 0x1c, 0x4b, 0x81, + 0x1f, 0x00, 0x1b, 0x02, 0x04, 0x1a, 0x87, 0x75, + 0x00, 0x00, 0x02, 0x53, 0x73, 0x87, 0x8d, 0x00, + 0x00, 0x02, 0x2b, 0x92, 0x00, 0x00, 0x00, 0x02, + 0x2b, 0x92, 0x36, 0x00, 0x01, 0x02, 0x2b, 0x92, + 0x8c, 0x12, 0x00, 0x01, 0x02, 0x2b, 0x92, 0x00, + 0x00, 0x00, 0x02, 0x2b, 0x92, 0xc0, 0x5c, 0x4b, + 0x00, 0x03, 0x01, 0x23, 0x96, 0x3b, 0x00, 0x11, + 0x01, 0x30, 0x9e, 0x5d, 0x00, 0x01, 0x01, 0x30, + 0xce, 0xcd, 0x2d, 0x00, }; static const uint8_t unicode_prop_Hyphen_table[28] = { @@ -3544,7 +3651,7 @@ static const uint8_t unicode_prop_Other_Math_table[200] = { 0x80, 0x89, 0x80, 0x90, 0x22, 0x04, 0x80, 0x90, }; -static const uint8_t unicode_prop_Other_Alphabetic_table[411] = { +static const uint8_t unicode_prop_Other_Alphabetic_table[428] = { 0x43, 0x44, 0x80, 0x42, 0x69, 0x8d, 0x00, 0x01, 0x01, 0x00, 0xc7, 0x8a, 0xaf, 0x8c, 0x06, 0x8f, 0x80, 0xe4, 0x33, 0x19, 0x0b, 0x80, 0xa2, 0x80, @@ -3556,57 +3663,61 @@ static const uint8_t unicode_prop_Other_Alphabetic_table[411] = { 0x0a, 0x80, 0x8a, 0x82, 0xb9, 0x38, 0x10, 0x81, 0x94, 0x81, 0x95, 0x13, 0x82, 0xb9, 0x31, 0x09, 0x81, 0x88, 0x81, 0x89, 0x81, 0x9d, 0x80, 0xba, - 0x22, 0x10, 0x82, 0x89, 0x80, 0xa7, 0x83, 0xb9, + 0x22, 0x10, 0x82, 0x89, 0x80, 0xa7, 0x84, 0xb8, 0x30, 0x10, 0x17, 0x81, 0x8a, 0x81, 0x9c, 0x82, - 0xb9, 0x30, 0x10, 0x17, 0x81, 0x8a, 0x81, 0x9b, - 0x83, 0xb9, 0x30, 0x10, 0x82, 0x89, 0x80, 0x89, - 0x81, 0x9c, 0x82, 0xca, 0x28, 0x00, 0x87, 0x91, - 0x81, 0xbc, 0x01, 0x86, 0x91, 0x80, 0xe2, 0x01, - 0x28, 0x81, 0x8f, 0x80, 0x40, 0xa2, 0x90, 0x8a, - 0x8a, 0x80, 0xa3, 0xed, 0x8b, 0x00, 0x0b, 0x96, - 0x1b, 0x10, 0x11, 0x32, 0x83, 0x8c, 0x8b, 0x00, - 0x89, 0x83, 0x46, 0x73, 0x81, 0x9d, 0x81, 0x9d, - 0x81, 0x9d, 0x81, 0xc1, 0x92, 0x40, 0xbb, 0x81, - 0xa1, 0x80, 0xf5, 0x8b, 0x83, 0x88, 0x40, 0xdd, - 0x84, 0xb8, 0x89, 0x81, 0x93, 0xc9, 0x81, 0xbe, - 0x84, 0xaf, 0x8e, 0xbb, 0x82, 0x9d, 0x88, 0x09, - 0xb8, 0x8a, 0xb1, 0x92, 0x41, 0xaf, 0x8d, 0x46, - 0xc0, 0xb3, 0x48, 0xf5, 0x9f, 0x60, 0x78, 0x73, - 0x87, 0xa1, 0x81, 0x41, 0x61, 0x07, 0x80, 0x96, - 0x84, 0xd7, 0x81, 0xb1, 0x8f, 0x00, 0xb8, 0x80, - 0xa5, 0x84, 0x9b, 0x8b, 0xac, 0x83, 0xaf, 0x8b, - 0xa4, 0x80, 0xc2, 0x8d, 0x8b, 0x07, 0x81, 0xac, - 0x82, 0xb1, 0x00, 0x11, 0x0c, 0x80, 0xab, 0x24, - 0x80, 0x40, 0xec, 0x87, 0x60, 0x4f, 0x32, 0x80, - 0x48, 0x56, 0x84, 0x46, 0x85, 0x10, 0x0c, 0x83, - 0x43, 0x13, 0x83, 0x41, 0x82, 0x81, 0x41, 0x52, - 0x82, 0xb4, 0x8d, 0xbb, 0x80, 0xac, 0x88, 0xc6, + 0xb9, 0x30, 0x10, 0x17, 0x81, 0x8a, 0x81, 0x8e, + 0x80, 0x8b, 0x83, 0xb9, 0x30, 0x10, 0x82, 0x89, + 0x80, 0x89, 0x81, 0x9c, 0x82, 0xca, 0x28, 0x00, + 0x87, 0x91, 0x81, 0xbc, 0x01, 0x86, 0x91, 0x80, + 0xe2, 0x01, 0x28, 0x81, 0x8f, 0x80, 0x40, 0xa2, + 0x92, 0x88, 0x8a, 0x80, 0xa3, 0xed, 0x8b, 0x00, + 0x0b, 0x96, 0x1b, 0x10, 0x11, 0x32, 0x83, 0x8c, + 0x8b, 0x00, 0x89, 0x83, 0x46, 0x73, 0x81, 0x9d, + 0x81, 0x9d, 0x81, 0x9d, 0x81, 0xc1, 0x92, 0x40, + 0xbb, 0x81, 0xa1, 0x80, 0xf5, 0x8b, 0x83, 0x88, + 0x40, 0xdd, 0x84, 0xb8, 0x89, 0x81, 0x93, 0xc9, + 0x81, 0x8a, 0x82, 0xb0, 0x84, 0xaf, 0x8e, 0xbb, + 0x82, 0x9d, 0x88, 0x09, 0xb8, 0x8a, 0xb1, 0x92, + 0x41, 0xaf, 0x8d, 0x46, 0xc0, 0xb3, 0x48, 0xf5, + 0x9f, 0x60, 0x78, 0x73, 0x87, 0xa1, 0x81, 0x41, + 0x61, 0x07, 0x80, 0x96, 0x84, 0xd7, 0x81, 0xb1, + 0x8f, 0x00, 0xb8, 0x80, 0xa5, 0x84, 0x9b, 0x8b, + 0xac, 0x83, 0xaf, 0x8b, 0xa4, 0x80, 0xc2, 0x8d, + 0x8b, 0x07, 0x81, 0xac, 0x82, 0xb1, 0x00, 0x11, + 0x0c, 0x80, 0xab, 0x24, 0x80, 0x40, 0xec, 0x87, + 0x60, 0x4f, 0x32, 0x80, 0x48, 0x56, 0x84, 0x46, + 0x85, 0x10, 0x0c, 0x83, 0x43, 0x13, 0x83, 0x41, + 0x82, 0x81, 0x41, 0x52, 0x82, 0xb4, 0x8d, 0xac, + 0x81, 0x8a, 0x82, 0xac, 0x88, 0x88, 0x80, 0xbc, 0x82, 0xa3, 0x8b, 0x91, 0x81, 0xb8, 0x82, 0xaf, - 0x8c, 0x8d, 0x81, 0xdb, 0x88, 0x08, 0x28, 0x40, - 0x9f, 0x89, 0x96, 0x83, 0xb9, 0x31, 0x09, 0x81, - 0x89, 0x80, 0x89, 0x81, 0x40, 0xd0, 0x8c, 0x02, - 0xe9, 0x91, 0x40, 0xec, 0x31, 0x86, 0x9c, 0x81, - 0xd1, 0x8e, 0x00, 0xe9, 0x8a, 0xe6, 0x8d, 0x41, - 0x00, 0x8c, 0x40, 0xf6, 0x28, 0x09, 0x0a, 0x00, - 0x80, 0x40, 0x8d, 0x31, 0x2b, 0x80, 0x9b, 0x89, - 0xa9, 0x20, 0x83, 0x91, 0x8a, 0xad, 0x8d, 0x41, - 0x96, 0x38, 0x86, 0xd2, 0x95, 0x80, 0x8d, 0xf9, - 0x2a, 0x00, 0x08, 0x10, 0x02, 0x80, 0xc1, 0x20, - 0x08, 0x83, 0x41, 0x5b, 0x83, 0x60, 0x50, 0x57, - 0x00, 0xb6, 0x33, 0xdc, 0x81, 0x60, 0x4c, 0xab, - 0x80, 0x60, 0x23, 0x60, 0x30, 0x90, 0x0e, 0x01, - 0x04, 0x49, 0x1b, 0x80, 0x47, 0xe7, 0x99, 0x85, - 0x99, 0x85, 0x99, + 0x8c, 0x8d, 0x81, 0xdb, 0x88, 0x08, 0x28, 0x08, + 0x40, 0x9c, 0x89, 0x96, 0x83, 0xb9, 0x31, 0x09, + 0x81, 0x89, 0x80, 0x89, 0x81, 0x40, 0xd0, 0x8c, + 0x02, 0xe9, 0x91, 0x40, 0xec, 0x31, 0x86, 0x9c, + 0x81, 0xd1, 0x8e, 0x00, 0xe9, 0x8a, 0xe6, 0x8d, + 0x41, 0x00, 0x8c, 0x40, 0xf6, 0x28, 0x09, 0x0a, + 0x00, 0x80, 0x40, 0x8d, 0x31, 0x2b, 0x80, 0x9b, + 0x89, 0xa9, 0x20, 0x83, 0x91, 0x8a, 0xad, 0x8d, + 0x41, 0x96, 0x38, 0x86, 0xd2, 0x95, 0x80, 0x8d, + 0xf9, 0x2a, 0x00, 0x08, 0x10, 0x02, 0x80, 0xc1, + 0x20, 0x08, 0x83, 0x41, 0x5b, 0x83, 0x88, 0x08, + 0x80, 0xaf, 0x32, 0x82, 0x60, 0x50, 0x0d, 0x00, + 0xb6, 0x33, 0xdc, 0x81, 0x60, 0x4c, 0xab, 0x80, + 0x60, 0x23, 0x60, 0x30, 0x90, 0x0e, 0x01, 0x04, + 0xe3, 0x80, 0x48, 0xb6, 0x80, 0x47, 0xe7, 0x99, + 0x85, 0x99, 0x85, 0x99, }; -static const uint8_t unicode_prop_Other_Lowercase_table[51] = { +static const uint8_t unicode_prop_Other_Lowercase_table[69] = { 0x40, 0xa9, 0x80, 0x8e, 0x80, 0x41, 0xf4, 0x88, - 0x31, 0x9d, 0x84, 0xdf, 0x80, 0xb3, 0x80, 0x59, - 0xb0, 0xbe, 0x8c, 0x80, 0xa1, 0xa4, 0x42, 0xb0, - 0x80, 0x8c, 0x80, 0x8f, 0x8c, 0x40, 0xd2, 0x8f, - 0x43, 0x4f, 0x99, 0x47, 0x91, 0x81, 0x60, 0x7a, - 0x1d, 0x81, 0x40, 0xd1, 0x80, 0x40, 0x86, 0x81, - 0x43, 0x61, 0x83, + 0x31, 0x9d, 0x84, 0xdf, 0x80, 0xb3, 0x80, 0x4d, + 0x80, 0x80, 0x4c, 0x2e, 0xbe, 0x8c, 0x80, 0xa1, + 0xa4, 0x42, 0xb0, 0x80, 0x8c, 0x80, 0x8f, 0x8c, + 0x40, 0xd2, 0x8f, 0x43, 0x4f, 0x99, 0x47, 0x91, + 0x81, 0x60, 0x7a, 0x1d, 0x81, 0x40, 0xd1, 0x80, + 0x40, 0x80, 0x12, 0x81, 0x43, 0x61, 0x83, 0x88, + 0x80, 0x60, 0x5c, 0x15, 0x01, 0x10, 0xa9, 0x80, + 0x88, 0x60, 0xd8, 0x74, 0xbd, }; static const uint8_t unicode_prop_Other_Uppercase_table[15] = { @@ -3643,10 +3754,10 @@ static const uint8_t unicode_prop_Other_ID_Continue_table[12] = { 0x88, 0x46, 0x67, 0x80, }; -static const uint8_t unicode_prop_Prepended_Concatenation_Mark_table[17] = { +static const uint8_t unicode_prop_Prepended_Concatenation_Mark_table[19] = { 0x45, 0xff, 0x85, 0x40, 0xd6, 0x80, 0xb0, 0x80, - 0x41, 0xd1, 0x80, 0x61, 0x07, 0xd9, 0x80, 0x8e, - 0x80, + 0x41, 0x7f, 0x81, 0xcf, 0x80, 0x61, 0x07, 0xd9, + 0x80, 0x8e, 0x80, }; static const uint8_t unicode_prop_XID_Start1_table[31] = { @@ -3676,7 +3787,7 @@ static const uint8_t unicode_prop_Changes_When_Casefolded1_table[33] = { 0x84, }; -static const uint8_t unicode_prop_Changes_When_NFKC_Casefolded1_table[441] = { +static const uint8_t unicode_prop_Changes_When_NFKC_Casefolded1_table[451] = { 0x40, 0x9f, 0x06, 0x00, 0x01, 0x00, 0x01, 0x12, 0x10, 0x82, 0x9f, 0x80, 0xcf, 0x01, 0x80, 0x8b, 0x07, 0x80, 0xfb, 0x01, 0x01, 0x80, 0xa5, 0x80, @@ -3690,7 +3801,7 @@ static const uint8_t unicode_prop_Changes_When_NFKC_Casefolded1_table[441] = { 0x03, 0x03, 0x03, 0x80, 0x8b, 0x80, 0x88, 0x00, 0x26, 0x80, 0x90, 0x80, 0x88, 0x03, 0x03, 0x03, 0x80, 0x8b, 0x80, 0x41, 0x41, 0x80, 0xe1, 0x81, - 0x46, 0x52, 0x81, 0xd4, 0x83, 0x45, 0x1c, 0x10, + 0x46, 0x52, 0x81, 0xd4, 0x84, 0x45, 0x1b, 0x10, 0x8a, 0x80, 0x91, 0x80, 0x9b, 0x8c, 0x80, 0xa1, 0xa4, 0x40, 0xd9, 0x80, 0x40, 0xd5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0x3f, 0x87, @@ -3709,30 +3820,31 @@ static const uint8_t unicode_prop_Changes_When_NFKC_Casefolded1_table[441] = { 0x80, 0xde, 0x80, 0xb0, 0xdd, 0x82, 0x8d, 0xdf, 0x9e, 0x80, 0xa7, 0x87, 0xae, 0x80, 0x41, 0x7f, 0x60, 0x72, 0x9b, 0x81, 0x40, 0xd1, 0x80, 0x40, - 0x86, 0x81, 0x43, 0x61, 0x83, 0x88, 0x80, 0x60, - 0x4d, 0x95, 0x41, 0x0d, 0x08, 0x00, 0x81, 0x89, - 0x00, 0x00, 0x09, 0x82, 0xc3, 0x81, 0xe9, 0xa5, - 0x86, 0x8b, 0x24, 0x00, 0x97, 0x04, 0x00, 0x01, - 0x01, 0x80, 0xeb, 0xa0, 0x41, 0x6a, 0x91, 0xbf, - 0x81, 0xb5, 0xa7, 0x8c, 0x82, 0x99, 0x95, 0x94, - 0x81, 0x8b, 0x80, 0x92, 0x03, 0x1a, 0x00, 0x80, - 0x40, 0x86, 0x08, 0x80, 0x9f, 0x99, 0x40, 0x83, - 0x15, 0x0d, 0x0d, 0x0a, 0x16, 0x06, 0x80, 0x88, - 0x60, 0xbc, 0xa6, 0x83, 0x54, 0xb9, 0x86, 0x8d, - 0x87, 0xbf, 0x85, 0x42, 0x3e, 0xd4, 0x80, 0xc6, - 0x01, 0x08, 0x09, 0x0b, 0x80, 0x8b, 0x00, 0x06, - 0x80, 0xc0, 0x03, 0x0f, 0x06, 0x80, 0x9b, 0x03, - 0x04, 0x00, 0x16, 0x80, 0x41, 0x53, 0x81, 0x41, - 0x23, 0x81, 0xb1, 0x55, 0xff, 0x18, 0x9a, 0x01, - 0x00, 0x08, 0x80, 0x89, 0x03, 0x00, 0x00, 0x28, - 0x18, 0x00, 0x00, 0x02, 0x01, 0x00, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x0b, 0x06, 0x03, - 0x03, 0x00, 0x80, 0x89, 0x80, 0x90, 0x22, 0x04, - 0x80, 0x90, 0x42, 0x43, 0x8a, 0x84, 0x9e, 0x80, - 0x9f, 0x99, 0x82, 0xa2, 0x80, 0xee, 0x82, 0x8c, - 0xab, 0x83, 0x88, 0x31, 0x49, 0x9d, 0x89, 0x60, - 0xfc, 0x05, 0x42, 0x1d, 0x6b, 0x05, 0xe1, 0x4f, - 0xff, + 0x80, 0x12, 0x81, 0x43, 0x61, 0x83, 0x88, 0x80, + 0x60, 0x4d, 0x95, 0x41, 0x0d, 0x08, 0x00, 0x81, + 0x89, 0x00, 0x00, 0x09, 0x82, 0xc3, 0x81, 0xe9, + 0xa5, 0x86, 0x8b, 0x24, 0x00, 0x97, 0x04, 0x00, + 0x01, 0x01, 0x80, 0xeb, 0xa0, 0x41, 0x6a, 0x91, + 0xbf, 0x81, 0xb5, 0xa7, 0x8c, 0x82, 0x99, 0x95, + 0x94, 0x81, 0x8b, 0x80, 0x92, 0x03, 0x1a, 0x00, + 0x80, 0x40, 0x86, 0x08, 0x80, 0x9f, 0x99, 0x40, + 0x83, 0x15, 0x0d, 0x0d, 0x0a, 0x16, 0x06, 0x80, + 0x88, 0x47, 0x87, 0x20, 0xa9, 0x80, 0x88, 0x60, + 0xb4, 0xe4, 0x83, 0x54, 0xb9, 0x86, 0x8d, 0x87, + 0xbf, 0x85, 0x42, 0x3e, 0xd4, 0x80, 0xc6, 0x01, + 0x08, 0x09, 0x0b, 0x80, 0x8b, 0x00, 0x06, 0x80, + 0xc0, 0x03, 0x0f, 0x06, 0x80, 0x9b, 0x03, 0x04, + 0x00, 0x16, 0x80, 0x41, 0x53, 0x81, 0x41, 0x23, + 0x81, 0xb1, 0x48, 0x2f, 0xbd, 0x4d, 0x91, 0x18, + 0x9a, 0x01, 0x00, 0x08, 0x80, 0x89, 0x03, 0x00, + 0x00, 0x28, 0x18, 0x00, 0x00, 0x02, 0x01, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x0b, + 0x06, 0x03, 0x03, 0x00, 0x80, 0x89, 0x80, 0x90, + 0x22, 0x04, 0x80, 0x90, 0x42, 0x43, 0x8a, 0x84, + 0x9e, 0x80, 0x9f, 0x99, 0x82, 0xa2, 0x80, 0xee, + 0x82, 0x8c, 0xab, 0x83, 0x88, 0x31, 0x49, 0x9d, + 0x89, 0x60, 0xfc, 0x05, 0x42, 0x1d, 0x6b, 0x05, + 0xe1, 0x4f, 0xff, }; static const uint8_t unicode_prop_ASCII_Hex_Digit_table[5] = { @@ -3744,14 +3856,14 @@ static const uint8_t unicode_prop_Bidi_Control_table[10] = { 0xb6, 0x83, }; -static const uint8_t unicode_prop_Dash_table[53] = { +static const uint8_t unicode_prop_Dash_table[55] = { 0xac, 0x80, 0x45, 0x5b, 0x80, 0xb2, 0x80, 0x4e, 0x40, 0x80, 0x44, 0x04, 0x80, 0x48, 0x08, 0x85, 0xbc, 0x80, 0xa6, 0x80, 0x8e, 0x80, 0x41, 0x85, 0x80, 0x4c, 0x03, 0x01, 0x80, 0x9e, 0x0b, 0x80, - 0x41, 0xda, 0x80, 0x92, 0x80, 0xee, 0x80, 0x60, - 0xcd, 0x8f, 0x81, 0xa4, 0x80, 0x89, 0x80, 0x40, - 0xa8, 0x80, 0x4f, 0x9e, 0x80, + 0x9b, 0x80, 0x41, 0xbd, 0x80, 0x92, 0x80, 0xee, + 0x80, 0x60, 0xcd, 0x8f, 0x81, 0xa4, 0x80, 0x89, + 0x80, 0x40, 0xa8, 0x80, 0x4f, 0x9e, 0x80, }; static const uint8_t unicode_prop_Deprecated_table[23] = { @@ -3760,55 +3872,60 @@ static const uint8_t unicode_prop_Deprecated_table[23] = { 0x42, 0xb8, 0x81, 0x6d, 0xdc, 0xd5, 0x80, }; -static const uint8_t unicode_prop_Diacritic_table[358] = { +static const uint8_t unicode_prop_Diacritic_table[399] = { 0xdd, 0x00, 0x80, 0xc6, 0x05, 0x03, 0x01, 0x81, 0x41, 0xf6, 0x40, 0x9e, 0x07, 0x25, 0x90, 0x0b, 0x80, 0x88, 0x81, 0x40, 0xfc, 0x84, 0x40, 0xd0, 0x80, 0xb6, 0x90, 0x80, 0x9a, 0x00, 0x01, 0x00, 0x40, 0x85, 0x3b, 0x81, 0x40, 0x85, 0x0b, 0x0a, 0x82, 0xc2, 0x9a, 0xda, 0x8a, 0xb9, 0x8a, 0xa1, - 0x81, 0x40, 0xc8, 0x9b, 0xbc, 0x80, 0x8f, 0x02, - 0x83, 0x9b, 0x80, 0xc9, 0x80, 0x8f, 0x80, 0xed, - 0x80, 0x8f, 0x80, 0xed, 0x80, 0x8f, 0x80, 0xae, - 0x82, 0xbb, 0x80, 0x8f, 0x06, 0x80, 0xf6, 0x80, - 0xfe, 0x80, 0xed, 0x80, 0x8f, 0x80, 0xec, 0x81, - 0x8f, 0x80, 0xfb, 0x80, 0xfb, 0x28, 0x80, 0xea, - 0x80, 0x8c, 0x84, 0xca, 0x81, 0x9a, 0x00, 0x00, - 0x03, 0x81, 0xc1, 0x10, 0x81, 0xbd, 0x80, 0xef, - 0x00, 0x81, 0xa7, 0x0b, 0x84, 0x98, 0x30, 0x80, - 0x89, 0x81, 0x42, 0xc0, 0x82, 0x44, 0x68, 0x8a, + 0x81, 0xfd, 0x87, 0xa8, 0x89, 0x8f, 0x9b, 0xbc, + 0x80, 0x8f, 0x02, 0x83, 0x9b, 0x80, 0xc9, 0x80, + 0x8f, 0x80, 0xed, 0x80, 0x8f, 0x80, 0xed, 0x80, + 0x8f, 0x80, 0xae, 0x82, 0xbb, 0x80, 0x8f, 0x06, + 0x80, 0xf6, 0x80, 0xed, 0x80, 0x8f, 0x80, 0xed, + 0x80, 0x8f, 0x80, 0xec, 0x81, 0x8f, 0x80, 0xfb, + 0x80, 0xfb, 0x28, 0x80, 0xea, 0x80, 0x8c, 0x84, + 0xca, 0x81, 0x9a, 0x00, 0x00, 0x03, 0x81, 0xc1, + 0x10, 0x81, 0xbd, 0x80, 0xef, 0x00, 0x81, 0xa7, + 0x0b, 0x84, 0x98, 0x30, 0x80, 0x89, 0x81, 0x42, + 0xc0, 0x82, 0x43, 0xb3, 0x81, 0x40, 0xb2, 0x8a, 0x88, 0x80, 0x41, 0x5a, 0x82, 0x41, 0x38, 0x39, - 0x80, 0xaf, 0x8d, 0xf5, 0x80, 0x8e, 0x80, 0xa5, - 0x88, 0xb5, 0x81, 0x40, 0x89, 0x81, 0xbf, 0x85, - 0xd1, 0x98, 0x18, 0x28, 0x0a, 0xb1, 0xbe, 0xd8, - 0x8b, 0xa4, 0x22, 0x82, 0x41, 0xbc, 0x00, 0x82, - 0x8a, 0x82, 0x8c, 0x82, 0x8c, 0x82, 0x8c, 0x81, - 0x4c, 0xef, 0x82, 0x41, 0x3c, 0x80, 0x41, 0xf9, - 0x85, 0xe8, 0x83, 0xde, 0x80, 0x60, 0x75, 0x71, - 0x80, 0x8b, 0x08, 0x80, 0x9b, 0x81, 0xd1, 0x81, - 0x8d, 0xa1, 0xe5, 0x82, 0xec, 0x81, 0x40, 0xc9, - 0x80, 0x9a, 0x91, 0xb8, 0x83, 0xa3, 0x80, 0xde, - 0x80, 0x8b, 0x80, 0xa3, 0x80, 0x40, 0x94, 0x82, - 0xc0, 0x83, 0xb2, 0x80, 0xe3, 0x84, 0x88, 0x82, - 0xff, 0x81, 0x60, 0x4f, 0x2f, 0x80, 0x43, 0x00, - 0x8f, 0x41, 0x0d, 0x00, 0x80, 0xae, 0x80, 0xac, - 0x81, 0xc2, 0x80, 0x42, 0xfb, 0x80, 0x48, 0x03, - 0x81, 0x42, 0x3a, 0x85, 0x42, 0x1d, 0x8a, 0x41, - 0x67, 0x81, 0xf7, 0x81, 0xbd, 0x80, 0xcb, 0x80, - 0x88, 0x82, 0xe7, 0x81, 0x40, 0xb1, 0x81, 0xd0, - 0x80, 0x8f, 0x80, 0x97, 0x32, 0x84, 0x40, 0xcc, - 0x02, 0x80, 0xfa, 0x81, 0x40, 0xfa, 0x81, 0xfd, - 0x80, 0xf5, 0x81, 0xf2, 0x80, 0x41, 0x0c, 0x81, - 0x41, 0x01, 0x0b, 0x80, 0x40, 0x9b, 0x80, 0xd2, - 0x80, 0x91, 0x80, 0xd0, 0x80, 0x41, 0xa4, 0x80, - 0x41, 0x01, 0x00, 0x81, 0xd0, 0x80, 0x60, 0x4d, - 0x57, 0x84, 0xba, 0x86, 0x44, 0x57, 0x90, 0xcf, - 0x81, 0x60, 0x61, 0x74, 0x12, 0x2f, 0x39, 0x86, - 0x9d, 0x83, 0x4f, 0x81, 0x86, 0x41, 0xb4, 0x83, - 0x45, 0xdf, 0x86, 0xec, 0x10, 0x82, + 0x80, 0xaf, 0x8e, 0x81, 0x8a, 0xe7, 0x80, 0x8e, + 0x80, 0xa5, 0x88, 0xb5, 0x81, 0x40, 0x89, 0x81, + 0xbf, 0x85, 0xd1, 0x98, 0x18, 0x28, 0x0a, 0xb1, + 0xbe, 0xd8, 0x8b, 0xa4, 0x8a, 0x41, 0xbc, 0x00, + 0x82, 0x8a, 0x82, 0x8c, 0x82, 0x8c, 0x82, 0x8c, + 0x81, 0x4c, 0xef, 0x82, 0x41, 0x3c, 0x80, 0x41, + 0xf9, 0x85, 0xe8, 0x83, 0xde, 0x80, 0x60, 0x75, + 0x71, 0x80, 0x8b, 0x08, 0x80, 0x9b, 0x81, 0xd1, + 0x81, 0x8d, 0xa1, 0xe5, 0x82, 0xec, 0x81, 0x40, + 0xc9, 0x80, 0x9a, 0x91, 0xb8, 0x83, 0xa3, 0x80, + 0xde, 0x80, 0x8b, 0x80, 0xa3, 0x80, 0x40, 0x94, + 0x82, 0xc0, 0x83, 0xb2, 0x80, 0xe3, 0x84, 0x88, + 0x82, 0xff, 0x81, 0x60, 0x4f, 0x2f, 0x80, 0x43, + 0x00, 0x8f, 0x41, 0x0d, 0x00, 0x80, 0xae, 0x80, + 0xac, 0x81, 0xc2, 0x80, 0x42, 0xfb, 0x80, 0x44, + 0x9e, 0x28, 0xa9, 0x80, 0x88, 0x43, 0x29, 0x81, + 0x42, 0x3a, 0x85, 0x41, 0xd4, 0x82, 0xc5, 0x8a, + 0xb0, 0x83, 0x40, 0xbf, 0x80, 0xa8, 0x80, 0xc7, + 0x81, 0xf7, 0x81, 0xbd, 0x80, 0xcb, 0x80, 0x88, + 0x82, 0xe7, 0x81, 0x40, 0xb1, 0x81, 0xd0, 0x80, + 0x8f, 0x80, 0x97, 0x32, 0x84, 0x40, 0xcc, 0x02, + 0x80, 0xfa, 0x81, 0x40, 0xfa, 0x81, 0xfd, 0x80, + 0xf5, 0x81, 0xf2, 0x80, 0x41, 0x0c, 0x81, 0x41, + 0x01, 0x0b, 0x80, 0x40, 0x9b, 0x80, 0xd2, 0x80, + 0x91, 0x80, 0xd0, 0x80, 0x41, 0xa4, 0x80, 0x41, + 0x01, 0x00, 0x81, 0xd0, 0x80, 0x56, 0xae, 0x8e, + 0x60, 0x36, 0x99, 0x84, 0xba, 0x86, 0x44, 0x57, + 0x90, 0xcf, 0x81, 0x60, 0x3f, 0xfd, 0x18, 0x30, + 0x81, 0x5f, 0x00, 0xad, 0x81, 0x96, 0x42, 0x1f, + 0x12, 0x2f, 0x39, 0x86, 0x9d, 0x83, 0x4e, 0x81, + 0xbd, 0x40, 0xc1, 0x86, 0x41, 0x76, 0x80, 0xbc, + 0x83, 0x45, 0xdf, 0x86, 0xec, 0x10, 0x82, }; -static const uint8_t unicode_prop_Extender_table[89] = { +static const uint8_t unicode_prop_Extender_table[92] = { 0x40, 0xb6, 0x80, 0x42, 0x17, 0x81, 0x43, 0x6d, 0x80, 0x41, 0xb8, 0x80, 0x43, 0x59, 0x80, 0x42, 0xef, 0x80, 0xfe, 0x80, 0x49, 0x42, 0x80, 0xb7, @@ -3817,10 +3934,10 @@ static const uint8_t unicode_prop_Extender_table[89] = { 0xdc, 0x82, 0x60, 0x6f, 0x15, 0x80, 0x45, 0xf5, 0x80, 0x43, 0xc1, 0x80, 0x95, 0x80, 0x40, 0x88, 0x80, 0xeb, 0x80, 0x94, 0x81, 0x60, 0x54, 0x7a, - 0x80, 0x53, 0xeb, 0x80, 0x42, 0x67, 0x82, 0x44, - 0xce, 0x80, 0x60, 0x50, 0xa8, 0x81, 0x44, 0x9b, - 0x08, 0x80, 0x60, 0x71, 0x57, 0x81, 0x48, 0x05, - 0x82, + 0x80, 0x48, 0x0f, 0x81, 0x4b, 0xd9, 0x80, 0x42, + 0x67, 0x82, 0x44, 0xce, 0x80, 0x60, 0x50, 0xa8, + 0x81, 0x44, 0x9b, 0x08, 0x80, 0x60, 0x71, 0x57, + 0x81, 0x48, 0x05, 0x82, }; static const uint8_t unicode_prop_Hex_Digit_table[12] = { @@ -3836,16 +3953,16 @@ static const uint8_t unicode_prop_IDS_Trinary_Operator_table[4] = { 0x60, 0x2f, 0xf1, 0x81, }; -static const uint8_t unicode_prop_Ideographic_table[66] = { +static const uint8_t unicode_prop_Ideographic_table[69] = { 0x60, 0x30, 0x05, 0x81, 0x98, 0x88, 0x8d, 0x82, - 0x43, 0xc4, 0x59, 0xbf, 0xbf, 0x60, 0x51, 0xfc, - 0x60, 0x59, 0x02, 0x41, 0x6d, 0x81, 0xe9, 0x60, + 0x43, 0xc4, 0x59, 0xbf, 0xbf, 0x60, 0x51, 0xff, + 0x60, 0x58, 0xff, 0x41, 0x6d, 0x81, 0xe9, 0x60, 0x75, 0x09, 0x80, 0x9a, 0x57, 0xf7, 0x87, 0x44, 0xd5, 0xa9, 0x88, 0x60, 0x24, 0x66, 0x41, 0x8b, - 0x60, 0x4d, 0x03, 0x60, 0xa6, 0xdd, 0xa1, 0x50, - 0x34, 0x8a, 0x40, 0xdd, 0x81, 0x56, 0x81, 0x8d, + 0x60, 0x4d, 0x03, 0x60, 0xa6, 0xdf, 0x9f, 0x50, + 0x39, 0x85, 0x40, 0xdd, 0x81, 0x56, 0x81, 0x8d, 0x5d, 0x30, 0x4c, 0x1e, 0x42, 0x1d, 0x45, 0xe1, - 0x53, 0x4a, + 0x53, 0x4a, 0x84, 0x50, 0x5f, }; static const uint8_t unicode_prop_Join_Control_table[4] = { @@ -3901,34 +4018,35 @@ static const uint8_t unicode_prop_Regional_Indicator_table[4] = { 0x61, 0xf1, 0xe5, 0x99, }; -static const uint8_t unicode_prop_Sentence_Terminal_table[188] = { +static const uint8_t unicode_prop_Sentence_Terminal_table[196] = { 0xa0, 0x80, 0x8b, 0x80, 0x8f, 0x80, 0x45, 0x48, - 0x80, 0x40, 0x93, 0x81, 0x40, 0xb3, 0x80, 0xaa, + 0x80, 0x40, 0x92, 0x82, 0x40, 0xb3, 0x80, 0xaa, 0x82, 0x40, 0xf5, 0x80, 0xbc, 0x00, 0x02, 0x81, 0x41, 0x24, 0x81, 0x46, 0xe3, 0x81, 0x43, 0x15, 0x03, 0x81, 0x43, 0x04, 0x80, 0x40, 0xc5, 0x81, 0x40, 0xcb, 0x04, 0x80, 0x41, 0x39, 0x81, 0x41, - 0x61, 0x83, 0x40, 0xad, 0x09, 0x81, 0x40, 0xda, - 0x81, 0xc0, 0x81, 0x43, 0xbb, 0x81, 0x88, 0x82, - 0x4d, 0xe3, 0x80, 0x8c, 0x80, 0x41, 0xc4, 0x80, - 0x60, 0x74, 0xfb, 0x80, 0x41, 0x0d, 0x81, 0x40, - 0xe2, 0x02, 0x80, 0x41, 0x7d, 0x81, 0xd5, 0x81, - 0xde, 0x80, 0x40, 0x97, 0x81, 0x40, 0x92, 0x82, - 0x40, 0x8f, 0x81, 0x40, 0xf8, 0x80, 0x60, 0x52, - 0x65, 0x02, 0x81, 0x40, 0xa8, 0x80, 0x8b, 0x80, - 0x8f, 0x80, 0xc0, 0x80, 0x4a, 0xf3, 0x81, 0x44, - 0xfc, 0x84, 0x40, 0xec, 0x81, 0xf4, 0x83, 0xfe, - 0x82, 0x40, 0x80, 0x0d, 0x80, 0x8f, 0x81, 0xd7, - 0x08, 0x81, 0xeb, 0x80, 0x41, 0xa0, 0x81, 0x41, - 0x74, 0x0c, 0x8e, 0xe8, 0x81, 0x40, 0xf8, 0x82, - 0x42, 0x04, 0x00, 0x80, 0x40, 0xfa, 0x81, 0xd6, - 0x81, 0x41, 0xa3, 0x81, 0x42, 0xb3, 0x81, 0x60, - 0x4b, 0x74, 0x81, 0x40, 0x84, 0x80, 0xc0, 0x81, + 0x61, 0x83, 0x40, 0xad, 0x09, 0x81, 0x9c, 0x81, + 0x40, 0xbb, 0x81, 0xc0, 0x81, 0x43, 0xbb, 0x81, + 0x88, 0x82, 0x4d, 0xe3, 0x80, 0x8c, 0x80, 0x95, + 0x81, 0x41, 0xac, 0x80, 0x60, 0x74, 0xfb, 0x80, + 0x41, 0x0d, 0x81, 0x40, 0xe2, 0x02, 0x80, 0x41, + 0x7d, 0x81, 0xd5, 0x81, 0xde, 0x80, 0x40, 0x97, + 0x81, 0x40, 0x92, 0x82, 0x40, 0x8f, 0x81, 0x40, + 0xf8, 0x80, 0x60, 0x52, 0x65, 0x02, 0x81, 0x40, + 0xa8, 0x80, 0x8b, 0x80, 0x8f, 0x80, 0xc0, 0x80, + 0x4a, 0xf3, 0x81, 0x44, 0xfc, 0x84, 0xab, 0x83, + 0x40, 0xbc, 0x81, 0xf4, 0x83, 0xfe, 0x82, 0x40, + 0x80, 0x0d, 0x80, 0x8f, 0x81, 0xd7, 0x08, 0x81, + 0xeb, 0x80, 0x41, 0xa0, 0x81, 0x41, 0x74, 0x0c, + 0x8e, 0xe8, 0x81, 0x40, 0xf8, 0x82, 0x42, 0x04, + 0x00, 0x80, 0x40, 0xfa, 0x81, 0xd6, 0x81, 0x41, + 0xa3, 0x81, 0x42, 0xb3, 0x81, 0xc9, 0x81, 0x60, + 0x4b, 0x28, 0x81, 0x40, 0x84, 0x80, 0xc0, 0x81, 0x8a, 0x80, 0x43, 0x52, 0x80, 0x60, 0x4e, 0x05, 0x80, 0x5d, 0xe7, 0x80, }; -static const uint8_t unicode_prop_Soft_Dotted_table[71] = { +static const uint8_t unicode_prop_Soft_Dotted_table[79] = { 0xe8, 0x81, 0x40, 0xc3, 0x80, 0x41, 0x18, 0x80, 0x9d, 0x80, 0xb3, 0x80, 0x93, 0x80, 0x41, 0x3f, 0x80, 0xe1, 0x00, 0x80, 0x59, 0x08, 0x80, 0xb2, @@ -3937,55 +4055,56 @@ static const uint8_t unicode_prop_Soft_Dotted_table[71] = { 0x4b, 0x31, 0x80, 0x61, 0xa7, 0xa4, 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, - 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, 0x81, + 0x81, 0xb1, 0x81, 0xb1, 0x81, 0xb1, 0x81, 0x48, + 0x85, 0x80, 0x41, 0x30, 0x81, 0x99, 0x80, }; -static const uint8_t unicode_prop_Terminal_Punctuation_table[241] = { +static const uint8_t unicode_prop_Terminal_Punctuation_table[248] = { 0xa0, 0x80, 0x89, 0x00, 0x80, 0x8a, 0x0a, 0x80, 0x43, 0x3d, 0x07, 0x80, 0x42, 0x00, 0x80, 0xb8, - 0x80, 0xc7, 0x80, 0x8d, 0x01, 0x81, 0x40, 0xb3, + 0x80, 0xc7, 0x80, 0x8d, 0x00, 0x82, 0x40, 0xb3, 0x80, 0xaa, 0x8a, 0x00, 0x40, 0xea, 0x81, 0xb5, 0x8e, 0x9e, 0x80, 0x41, 0x04, 0x81, 0x44, 0xf3, 0x81, 0x40, 0xab, 0x03, 0x85, 0x41, 0x36, 0x81, 0x43, 0x14, 0x87, 0x43, 0x04, 0x80, 0xfb, 0x82, 0xc6, 0x81, 0x40, 0x9c, 0x12, 0x80, 0xa6, 0x19, 0x81, 0x41, 0x39, 0x81, 0x41, 0x61, 0x83, 0x40, - 0xad, 0x08, 0x82, 0x40, 0xda, 0x84, 0xbd, 0x81, - 0x43, 0xbb, 0x81, 0x88, 0x82, 0x4d, 0xe3, 0x80, - 0x8c, 0x03, 0x80, 0x89, 0x00, 0x81, 0x41, 0xb0, - 0x81, 0x60, 0x74, 0xfa, 0x81, 0x41, 0x0c, 0x82, - 0x40, 0xe2, 0x84, 0x41, 0x7d, 0x81, 0xd5, 0x81, - 0xde, 0x80, 0x40, 0x96, 0x82, 0x40, 0x92, 0x82, - 0xfe, 0x80, 0x8f, 0x81, 0x40, 0xf8, 0x80, 0x60, - 0x52, 0x63, 0x10, 0x83, 0x40, 0xa8, 0x80, 0x89, - 0x00, 0x80, 0x8a, 0x0a, 0x80, 0xc0, 0x01, 0x80, - 0x44, 0x39, 0x80, 0xaf, 0x80, 0x44, 0x85, 0x80, - 0x40, 0xc6, 0x80, 0x41, 0x35, 0x81, 0x40, 0x97, - 0x85, 0xc3, 0x85, 0xd8, 0x83, 0x43, 0xb7, 0x84, - 0x40, 0xec, 0x86, 0xef, 0x83, 0xfe, 0x82, 0x40, - 0x80, 0x0d, 0x80, 0x8f, 0x81, 0xd7, 0x84, 0xeb, - 0x80, 0x41, 0xa0, 0x82, 0x8b, 0x81, 0x41, 0x65, - 0x1a, 0x8e, 0xe8, 0x81, 0x40, 0xf8, 0x82, 0x42, - 0x04, 0x00, 0x80, 0x40, 0xfa, 0x81, 0xd6, 0x0b, - 0x81, 0x41, 0x9d, 0x82, 0xac, 0x80, 0x42, 0x84, - 0x81, 0x45, 0x76, 0x84, 0x60, 0x45, 0xf8, 0x81, - 0x40, 0x84, 0x80, 0xc0, 0x82, 0x89, 0x80, 0x43, - 0x51, 0x81, 0x60, 0x4e, 0x05, 0x80, 0x5d, 0xe6, - 0x83, + 0xad, 0x08, 0x82, 0x9c, 0x81, 0x40, 0xbb, 0x84, + 0xbd, 0x81, 0x43, 0xbb, 0x81, 0x88, 0x82, 0x4d, + 0xe3, 0x80, 0x8c, 0x03, 0x80, 0x89, 0x00, 0x0a, + 0x81, 0x41, 0xab, 0x81, 0x60, 0x74, 0xfa, 0x81, + 0x41, 0x0c, 0x82, 0x40, 0xe2, 0x84, 0x41, 0x7d, + 0x81, 0xd5, 0x81, 0xde, 0x80, 0x40, 0x96, 0x82, + 0x40, 0x92, 0x82, 0xfe, 0x80, 0x8f, 0x81, 0x40, + 0xf8, 0x80, 0x60, 0x52, 0x63, 0x10, 0x83, 0x40, + 0xa8, 0x80, 0x89, 0x00, 0x80, 0x8a, 0x0a, 0x80, + 0xc0, 0x01, 0x80, 0x44, 0x39, 0x80, 0xaf, 0x80, + 0x44, 0x85, 0x80, 0x40, 0xc6, 0x80, 0x41, 0x35, + 0x81, 0x40, 0x97, 0x85, 0xc3, 0x85, 0xd8, 0x83, + 0x43, 0xb7, 0x84, 0xab, 0x83, 0x40, 0xbc, 0x86, + 0xef, 0x83, 0xfe, 0x82, 0x40, 0x80, 0x0d, 0x80, + 0x8f, 0x81, 0xd7, 0x84, 0xeb, 0x80, 0x41, 0xa0, + 0x82, 0x8b, 0x81, 0x41, 0x65, 0x1a, 0x8e, 0xe8, + 0x81, 0x40, 0xf8, 0x82, 0x42, 0x04, 0x00, 0x80, + 0x40, 0xfa, 0x81, 0xd6, 0x0b, 0x81, 0x41, 0x9d, + 0x82, 0xac, 0x80, 0x42, 0x84, 0x81, 0xc9, 0x81, + 0x45, 0x2a, 0x84, 0x60, 0x45, 0xf8, 0x81, 0x40, + 0x84, 0x80, 0xc0, 0x82, 0x89, 0x80, 0x43, 0x51, + 0x81, 0x60, 0x4e, 0x05, 0x80, 0x5d, 0xe6, 0x83, }; -static const uint8_t unicode_prop_Unified_Ideograph_table[42] = { +static const uint8_t unicode_prop_Unified_Ideograph_table[45] = { 0x60, 0x33, 0xff, 0x59, 0xbf, 0xbf, 0x60, 0x51, - 0xfc, 0x60, 0x5a, 0x10, 0x08, 0x00, 0x81, 0x89, + 0xff, 0x60, 0x5a, 0x0d, 0x08, 0x00, 0x81, 0x89, 0x00, 0x00, 0x09, 0x82, 0x61, 0x05, 0xd5, 0x60, - 0xa6, 0xdd, 0xa1, 0x50, 0x34, 0x8a, 0x40, 0xdd, + 0xa6, 0xdf, 0x9f, 0x50, 0x39, 0x85, 0x40, 0xdd, 0x81, 0x56, 0x81, 0x8d, 0x5d, 0x30, 0x54, 0x1e, - 0x53, 0x4a, + 0x53, 0x4a, 0x84, 0x50, 0x5f, }; -static const uint8_t unicode_prop_Variation_Selector_table[12] = { - 0x58, 0x0a, 0x82, 0x60, 0xe5, 0xf1, 0x8f, 0x6d, - 0x02, 0xef, 0x40, 0xef, +static const uint8_t unicode_prop_Variation_Selector_table[13] = { + 0x58, 0x0a, 0x10, 0x80, 0x60, 0xe5, 0xef, 0x8f, + 0x6d, 0x02, 0xef, 0x40, 0xef, }; static const uint8_t unicode_prop_White_Space_table[22] = { @@ -3994,7 +4113,7 @@ static const uint8_t unicode_prop_White_Space_table[22] = { 0x80, 0xae, 0x80, 0x4f, 0x9f, 0x80, }; -static const uint8_t unicode_prop_Bidi_Mirrored_table[171] = { +static const uint8_t unicode_prop_Bidi_Mirrored_table[173] = { 0xa7, 0x81, 0x91, 0x00, 0x80, 0x9b, 0x00, 0x80, 0x9c, 0x00, 0x80, 0xac, 0x80, 0x8e, 0x80, 0x4e, 0x7d, 0x83, 0x47, 0x5c, 0x81, 0x49, 0x9b, 0x81, @@ -4012,14 +4131,14 @@ static const uint8_t unicode_prop_Bidi_Mirrored_table[171] = { 0x09, 0x0b, 0xaa, 0x0f, 0x80, 0xa7, 0x20, 0x00, 0x14, 0x22, 0x18, 0x14, 0x00, 0x40, 0xff, 0x80, 0x42, 0x02, 0x1a, 0x08, 0x81, 0x8d, 0x09, 0x89, - 0x41, 0xdd, 0x89, 0x0f, 0x60, 0xce, 0x3c, 0x2c, - 0x81, 0x40, 0xa1, 0x81, 0x91, 0x00, 0x80, 0x9b, - 0x00, 0x80, 0x9c, 0x00, 0x00, 0x08, 0x81, 0x60, - 0xd7, 0x76, 0x80, 0xb8, 0x80, 0xb8, 0x80, 0xb8, - 0x80, 0xb8, 0x80, + 0xaa, 0x87, 0x41, 0xaa, 0x89, 0x0f, 0x60, 0xce, + 0x3c, 0x2c, 0x81, 0x40, 0xa1, 0x81, 0x91, 0x00, + 0x80, 0x9b, 0x00, 0x80, 0x9c, 0x00, 0x00, 0x08, + 0x81, 0x60, 0xd7, 0x76, 0x80, 0xb8, 0x80, 0xb8, + 0x80, 0xb8, 0x80, 0xb8, 0x80, }; -static const uint8_t unicode_prop_Emoji_table[238] = { +static const uint8_t unicode_prop_Emoji_table[239] = { 0xa2, 0x05, 0x04, 0x89, 0xee, 0x03, 0x80, 0x5f, 0x8c, 0x80, 0x8b, 0x80, 0x40, 0xd7, 0x80, 0x95, 0x80, 0xd9, 0x85, 0x8e, 0x81, 0x41, 0x6e, 0x81, @@ -4045,11 +4164,11 @@ static const uint8_t unicode_prop_Emoji_table[238] = { 0xbe, 0x8a, 0x28, 0x97, 0x31, 0x0f, 0x8b, 0x01, 0x19, 0x03, 0x81, 0x8c, 0x09, 0x07, 0x81, 0x88, 0x04, 0x82, 0x8b, 0x17, 0x11, 0x00, 0x03, 0x05, - 0x02, 0x05, 0xd5, 0xaf, 0xc5, 0x27, 0x0a, 0x3d, - 0x10, 0x01, 0x10, 0x81, 0x89, 0x40, 0xe2, 0x8b, - 0x41, 0x1f, 0xae, 0x80, 0x89, 0x80, 0xb1, 0x80, - 0xd1, 0x80, 0xb2, 0xef, 0x22, 0x14, 0x86, 0x88, - 0x98, 0x36, 0x88, 0x82, 0x8c, 0x86, + 0x02, 0x05, 0xd5, 0xaf, 0xc5, 0x27, 0x0a, 0x83, + 0x89, 0x10, 0x01, 0x10, 0x81, 0x89, 0x40, 0xe2, + 0x8b, 0x18, 0x41, 0x1a, 0xae, 0x80, 0x89, 0x80, + 0x40, 0xb8, 0xef, 0x8c, 0x82, 0x88, 0x86, 0xad, + 0x06, 0x87, 0x8d, 0x83, 0x88, 0x86, 0x88, }; static const uint8_t unicode_prop_Emoji_Component_table[28] = { @@ -4063,7 +4182,7 @@ static const uint8_t unicode_prop_Emoji_Modifier_table[4] = { 0x61, 0xf3, 0xfa, 0x84, }; -static const uint8_t unicode_prop_Emoji_Modifier_Base_table[66] = { +static const uint8_t unicode_prop_Emoji_Modifier_Base_table[71] = { 0x60, 0x26, 0x1c, 0x80, 0x40, 0xda, 0x80, 0x8f, 0x83, 0x61, 0xcc, 0x76, 0x80, 0xbb, 0x11, 0x01, 0x82, 0xf4, 0x09, 0x8a, 0x94, 0x92, 0x10, 0x1a, @@ -4072,10 +4191,10 @@ static const uint8_t unicode_prop_Emoji_Modifier_Base_table[66] = { 0xd2, 0x80, 0x8f, 0x82, 0x88, 0x80, 0x8a, 0x80, 0x42, 0x3e, 0x01, 0x07, 0x3d, 0x80, 0x88, 0x89, 0x0a, 0xb7, 0x80, 0xbc, 0x08, 0x08, 0x80, 0x90, - 0x10, 0x8c, + 0x10, 0x8c, 0x40, 0xe4, 0x82, 0xa9, 0x88, }; -static const uint8_t unicode_prop_Emoji_Presentation_table[144] = { +static const uint8_t unicode_prop_Emoji_Presentation_table[145] = { 0x60, 0x23, 0x19, 0x81, 0x40, 0xcc, 0x1a, 0x01, 0x80, 0x42, 0x08, 0x81, 0x94, 0x81, 0xb1, 0x8b, 0xaa, 0x80, 0x92, 0x80, 0x8c, 0x07, 0x81, 0x90, @@ -4090,10 +4209,11 @@ static const uint8_t unicode_prop_Emoji_Presentation_table[144] = { 0x1c, 0x8b, 0x90, 0x10, 0x82, 0xc6, 0x00, 0x80, 0x40, 0xba, 0x81, 0xbe, 0x8c, 0x18, 0x97, 0x91, 0x80, 0x99, 0x81, 0x8c, 0x80, 0xd5, 0xd4, 0xaf, - 0xc5, 0x28, 0x12, 0x0a, 0x92, 0x0e, 0x88, 0x40, - 0xe2, 0x8b, 0x41, 0x1f, 0xae, 0x80, 0x89, 0x80, - 0xb1, 0x80, 0xd1, 0x80, 0xb2, 0xef, 0x22, 0x14, - 0x86, 0x88, 0x98, 0x36, 0x88, 0x82, 0x8c, 0x86, + 0xc5, 0x28, 0x12, 0x0a, 0x1b, 0x8a, 0x0e, 0x88, + 0x40, 0xe2, 0x8b, 0x18, 0x41, 0x1a, 0xae, 0x80, + 0x89, 0x80, 0x40, 0xb8, 0xef, 0x8c, 0x82, 0x88, + 0x86, 0xad, 0x06, 0x87, 0x8d, 0x83, 0x88, 0x86, + 0x88, }; static const uint8_t unicode_prop_Extended_Pictographic_table[156] = { @@ -4122,7 +4242,7 @@ static const uint8_t unicode_prop_Extended_Pictographic_table[156] = { static const uint8_t unicode_prop_Default_Ignorable_Code_Point_table[51] = { 0x40, 0xac, 0x80, 0x42, 0xa0, 0x80, 0x42, 0xcb, 0x80, 0x4b, 0x41, 0x81, 0x46, 0x52, 0x81, 0xd4, - 0x83, 0x47, 0xfb, 0x84, 0x99, 0x84, 0xb0, 0x8f, + 0x84, 0x47, 0xfa, 0x84, 0x99, 0x84, 0xb0, 0x8f, 0x50, 0xf3, 0x80, 0x60, 0xcc, 0x9a, 0x8f, 0x40, 0xee, 0x80, 0x40, 0x9f, 0x80, 0xce, 0x88, 0x60, 0xbc, 0xa6, 0x83, 0x54, 0xce, 0x87, 0x6c, 0x2e, diff --git a/crates/quickjs-wasm-sys/quickjs/qjs.c b/crates/quickjs-wasm-sys/quickjs/qjs.c index d56b8433..c2d63e9d 100644 --- a/crates/quickjs-wasm-sys/quickjs/qjs.c +++ b/crates/quickjs-wasm-sys/quickjs/qjs.c @@ -454,8 +454,10 @@ int main(int argc, char **argv) } } +#ifdef CONFIG_BIGNUM if (load_jscalc) bignum_ext = 1; +#endif if (trace_memory) { js_trace_malloc_init(&trace_data); diff --git a/crates/quickjs-wasm-sys/quickjs/qjsc.c b/crates/quickjs-wasm-sys/quickjs/qjsc.c index b9f1e4cd..d3178268 100644 --- a/crates/quickjs-wasm-sys/quickjs/qjsc.c +++ b/crates/quickjs-wasm-sys/quickjs/qjsc.c @@ -76,9 +76,7 @@ static const FeatureEntry feature_list[] = { { "promise", "Promise" }, #define FE_MODULE_LOADER 9 { "module-loader", NULL }, -#ifdef CONFIG_BIGNUM { "bigint", "BigInt" }, -#endif }; void namelist_add(namelist_t *lp, const char *name, const char *short_name, diff --git a/crates/quickjs-wasm-sys/quickjs/qjscalc.c b/crates/quickjs-wasm-sys/quickjs/qjscalc.c index 93eef36d..c9c85f7e 100644 --- a/crates/quickjs-wasm-sys/quickjs/qjscalc.c +++ b/crates/quickjs-wasm-sys/quickjs/qjscalc.c @@ -345,185 +345,185 @@ const uint8_t qjsc_qjscalc[31967] = { 0x05, 0xa0, 0x01, 0x00, 0x02, 0x00, 0x06, 0x00, 0x25, 0x97, 0x0b, 0x02, 0xa2, 0x01, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xca, 0x3f, - 0xde, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xdf, 0x00, - 0x00, 0x00, 0x00, 0x3f, 0xe0, 0x00, 0x00, 0x00, - 0x00, 0x3f, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x3f, - 0xe2, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xe3, 0x00, - 0x00, 0x00, 0x00, 0x3f, 0xe4, 0x00, 0x00, 0x00, - 0x00, 0x3f, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x3f, - 0xe6, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xe7, 0x00, - 0x00, 0x00, 0x00, 0x3f, 0xe8, 0x00, 0x00, 0x00, - 0x00, 0x3f, 0xe9, 0x00, 0x00, 0x00, 0x00, 0x3f, - 0xea, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xeb, 0x00, - 0x00, 0x00, 0x00, 0x3f, 0xec, 0x00, 0x00, 0x00, - 0x00, 0x3f, 0xed, 0x00, 0x00, 0x00, 0x00, 0x3f, - 0xee, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xef, 0x00, - 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, - 0x00, 0x3f, 0xf1, 0x00, 0x00, 0x00, 0x00, 0x3f, - 0xf2, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf3, 0x00, - 0x00, 0x00, 0x40, 0x3f, 0xf4, 0x00, 0x00, 0x00, - 0x40, 0x3f, 0xf5, 0x00, 0x00, 0x00, 0x40, 0x3f, - 0xf6, 0x00, 0x00, 0x00, 0x40, 0x3f, 0xf7, 0x00, - 0x00, 0x00, 0x40, 0x3f, 0xf8, 0x00, 0x00, 0x00, - 0x40, 0x3f, 0xf9, 0x00, 0x00, 0x00, 0x40, 0x3f, - 0xfa, 0x00, 0x00, 0x00, 0x40, 0x3f, 0xfb, 0x00, - 0x00, 0x00, 0x40, 0x3f, 0xfc, 0x00, 0x00, 0x00, - 0x40, 0x3f, 0xfd, 0x00, 0x00, 0x00, 0x40, 0x3f, - 0xfe, 0x00, 0x00, 0x00, 0x40, 0x3f, 0xff, 0x00, - 0x00, 0x00, 0x40, 0x3f, 0x00, 0x01, 0x00, 0x00, - 0x40, 0x3f, 0x01, 0x01, 0x00, 0x00, 0x40, 0x3f, - 0x02, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x03, 0x01, - 0x00, 0x00, 0x40, 0x3f, 0x04, 0x01, 0x00, 0x00, - 0x40, 0x3f, 0x05, 0x01, 0x00, 0x00, 0x40, 0x3f, - 0x06, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x07, 0x01, - 0x00, 0x00, 0x40, 0x3f, 0x08, 0x01, 0x00, 0x00, - 0x40, 0x3f, 0x09, 0x01, 0x00, 0x00, 0x40, 0x3f, - 0x0a, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x0b, 0x01, - 0x00, 0x00, 0x40, 0x3f, 0x0c, 0x01, 0x00, 0x00, - 0x40, 0x3f, 0x0d, 0x01, 0x00, 0x00, 0x40, 0x3f, - 0x0e, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x0f, 0x01, - 0x00, 0x00, 0x40, 0x3f, 0x10, 0x01, 0x00, 0x00, - 0x40, 0x3f, 0x11, 0x01, 0x00, 0x00, 0x40, 0x3f, - 0x12, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x13, 0x01, - 0x00, 0x00, 0x40, 0x3f, 0x14, 0x01, 0x00, 0x00, - 0x40, 0x3f, 0x15, 0x01, 0x00, 0x00, 0x40, 0x3f, - 0x16, 0x01, 0x00, 0x00, 0x00, 0x3f, 0x17, 0x01, - 0x00, 0x00, 0x00, 0x3f, 0x18, 0x01, 0x00, 0x00, - 0x00, 0x3f, 0x19, 0x01, 0x00, 0x00, 0x00, 0x3f, - 0x1a, 0x01, 0x00, 0x00, 0x00, 0x3f, 0x1b, 0x01, - 0x00, 0x00, 0x00, 0x3f, 0x1c, 0x01, 0x00, 0x00, - 0x00, 0x3f, 0x1d, 0x01, 0x00, 0x00, 0x00, 0x3f, - 0x1e, 0x01, 0x00, 0x00, 0x00, 0x3f, 0x1f, 0x01, - 0x00, 0x00, 0x00, 0x3f, 0x20, 0x01, 0x00, 0x00, - 0x00, 0x3f, 0x21, 0x01, 0x00, 0x00, 0x00, 0x3f, - 0x22, 0x01, 0x00, 0x00, 0x00, 0x3e, 0xde, 0x00, - 0x00, 0x00, 0x00, 0x3e, 0xdf, 0x00, 0x00, 0x00, - 0x00, 0x3e, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x3e, - 0xe1, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xe2, 0x00, - 0x00, 0x00, 0x00, 0x3e, 0xe3, 0x00, 0x00, 0x00, - 0x00, 0x3e, 0xe4, 0x00, 0x00, 0x00, 0x00, 0x3e, - 0xe5, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xe6, 0x00, - 0x00, 0x00, 0x00, 0x3e, 0xe7, 0x00, 0x00, 0x00, - 0x00, 0x3e, 0xe8, 0x00, 0x00, 0x00, 0x00, 0x3e, - 0xe9, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xea, 0x00, - 0x00, 0x00, 0x00, 0x3e, 0xeb, 0x00, 0x00, 0x00, - 0x00, 0x3e, 0xec, 0x00, 0x00, 0x00, 0x00, 0x3e, - 0xed, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xee, 0x00, - 0x00, 0x00, 0x00, 0x3e, 0xef, 0x00, 0x00, 0x00, - 0x00, 0x3e, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x3e, - 0xf1, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xf2, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x02, 0x40, 0xf3, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x03, 0x40, 0xf4, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x04, 0x40, 0xf5, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x05, 0x40, 0xf6, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x06, 0x40, 0xf7, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x07, 0x40, 0xf8, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x08, 0x40, 0xf9, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x09, 0x40, 0xfa, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x0a, 0x40, 0xfb, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x0b, 0x40, 0xfc, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x0c, 0x40, 0xfd, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x0d, 0x40, 0xfe, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x0e, 0x40, 0xff, 0x00, - 0x00, 0x00, 0x00, 0xc0, 0x0f, 0x40, 0x00, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x10, 0x40, 0x01, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x11, 0x40, 0x02, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x12, 0x40, 0x03, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x13, 0x40, 0x04, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x14, 0x40, 0x05, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x15, 0x40, 0x06, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x16, 0x40, 0x07, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x17, 0x40, 0x08, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x18, 0x40, 0x09, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x19, 0x40, 0x0a, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x1a, 0x40, 0x0b, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x1b, 0x40, 0x0c, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x1c, 0x40, 0x0d, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x1d, 0x40, 0x0e, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x1e, 0x40, 0x0f, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x1f, 0x40, 0x10, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x20, 0x40, 0x11, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x21, 0x40, 0x12, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x22, 0x40, 0x13, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x23, 0x40, 0x14, 0x01, - 0x00, 0x00, 0x00, 0xc0, 0x24, 0x40, 0x15, 0x01, - 0x00, 0x00, 0x00, 0x3e, 0x16, 0x01, 0x00, 0x00, - 0x00, 0x3e, 0x17, 0x01, 0x00, 0x00, 0x00, 0x3e, - 0x18, 0x01, 0x00, 0x00, 0x00, 0x3e, 0x19, 0x01, - 0x00, 0x00, 0x00, 0x3e, 0x1a, 0x01, 0x00, 0x00, - 0x00, 0x3e, 0x1b, 0x01, 0x00, 0x00, 0x00, 0x3e, - 0x1c, 0x01, 0x00, 0x00, 0x00, 0x3e, 0x1d, 0x01, - 0x00, 0x00, 0x00, 0x3e, 0x1e, 0x01, 0x00, 0x00, - 0x00, 0x3e, 0x1f, 0x01, 0x00, 0x00, 0x00, 0x3e, - 0x20, 0x01, 0x00, 0x00, 0x00, 0x3e, 0x21, 0x01, - 0x00, 0x00, 0x00, 0x3e, 0x22, 0x01, 0x00, 0x00, - 0x00, 0x04, 0x23, 0x01, 0x00, 0x00, 0xc9, 0x04, - 0x24, 0x01, 0x00, 0x00, 0xc9, 0xc0, 0x00, 0xc6, - 0xef, 0xc9, 0x36, 0xe8, 0x00, 0x00, 0x00, 0x38, - 0xe1, 0x00, 0x00, 0x00, 0xb5, 0xb6, 0xf0, 0x3b, - 0xe8, 0x00, 0x00, 0x00, 0x36, 0xe9, 0x00, 0x00, - 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xb5, 0xb6, - 0x26, 0x02, 0x00, 0xef, 0x3b, 0xe9, 0x00, 0x00, - 0x00, 0x36, 0xea, 0x00, 0x00, 0x00, 0x38, 0xe6, - 0x00, 0x00, 0x00, 0x41, 0xea, 0x00, 0x00, 0x00, - 0x3b, 0xea, 0x00, 0x00, 0x00, 0x38, 0x92, 0x00, + 0xe1, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xe2, 0x00, + 0x00, 0x00, 0x00, 0x3f, 0xe3, 0x00, 0x00, 0x00, + 0x00, 0x3f, 0xe4, 0x00, 0x00, 0x00, 0x00, 0x3f, + 0xe5, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xe6, 0x00, + 0x00, 0x00, 0x00, 0x3f, 0xe7, 0x00, 0x00, 0x00, + 0x00, 0x3f, 0xe8, 0x00, 0x00, 0x00, 0x00, 0x3f, + 0xe9, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xea, 0x00, + 0x00, 0x00, 0x00, 0x3f, 0xeb, 0x00, 0x00, 0x00, + 0x00, 0x3f, 0xec, 0x00, 0x00, 0x00, 0x00, 0x3f, + 0xed, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xee, 0x00, + 0x00, 0x00, 0x00, 0x3f, 0xef, 0x00, 0x00, 0x00, + 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x3f, + 0xf1, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf2, 0x00, + 0x00, 0x00, 0x00, 0x3f, 0xf3, 0x00, 0x00, 0x00, + 0x00, 0x3f, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x3f, + 0xf5, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf6, 0x00, + 0x00, 0x00, 0x40, 0x3f, 0xf7, 0x00, 0x00, 0x00, + 0x40, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x40, 0x3f, + 0xf9, 0x00, 0x00, 0x00, 0x40, 0x3f, 0xfa, 0x00, + 0x00, 0x00, 0x40, 0x3f, 0xfb, 0x00, 0x00, 0x00, + 0x40, 0x3f, 0xfc, 0x00, 0x00, 0x00, 0x40, 0x3f, + 0xfd, 0x00, 0x00, 0x00, 0x40, 0x3f, 0xfe, 0x00, + 0x00, 0x00, 0x40, 0x3f, 0xff, 0x00, 0x00, 0x00, + 0x40, 0x3f, 0x00, 0x01, 0x00, 0x00, 0x40, 0x3f, + 0x01, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x02, 0x01, + 0x00, 0x00, 0x40, 0x3f, 0x03, 0x01, 0x00, 0x00, + 0x40, 0x3f, 0x04, 0x01, 0x00, 0x00, 0x40, 0x3f, + 0x05, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x06, 0x01, + 0x00, 0x00, 0x40, 0x3f, 0x07, 0x01, 0x00, 0x00, + 0x40, 0x3f, 0x08, 0x01, 0x00, 0x00, 0x40, 0x3f, + 0x09, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x0a, 0x01, + 0x00, 0x00, 0x40, 0x3f, 0x0b, 0x01, 0x00, 0x00, + 0x40, 0x3f, 0x0c, 0x01, 0x00, 0x00, 0x40, 0x3f, + 0x0d, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x0e, 0x01, + 0x00, 0x00, 0x40, 0x3f, 0x0f, 0x01, 0x00, 0x00, + 0x40, 0x3f, 0x10, 0x01, 0x00, 0x00, 0x40, 0x3f, + 0x11, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x12, 0x01, + 0x00, 0x00, 0x40, 0x3f, 0x13, 0x01, 0x00, 0x00, + 0x40, 0x3f, 0x14, 0x01, 0x00, 0x00, 0x40, 0x3f, + 0x15, 0x01, 0x00, 0x00, 0x40, 0x3f, 0x16, 0x01, + 0x00, 0x00, 0x40, 0x3f, 0x17, 0x01, 0x00, 0x00, + 0x40, 0x3f, 0x18, 0x01, 0x00, 0x00, 0x40, 0x3f, + 0x19, 0x01, 0x00, 0x00, 0x00, 0x3f, 0x1a, 0x01, + 0x00, 0x00, 0x00, 0x3f, 0x1b, 0x01, 0x00, 0x00, + 0x00, 0x3f, 0x1c, 0x01, 0x00, 0x00, 0x00, 0x3f, + 0x1d, 0x01, 0x00, 0x00, 0x00, 0x3f, 0x1e, 0x01, + 0x00, 0x00, 0x00, 0x3f, 0x1f, 0x01, 0x00, 0x00, + 0x00, 0x3f, 0x20, 0x01, 0x00, 0x00, 0x00, 0x3f, + 0x21, 0x01, 0x00, 0x00, 0x00, 0x3f, 0x22, 0x01, + 0x00, 0x00, 0x00, 0x3f, 0x23, 0x01, 0x00, 0x00, + 0x00, 0x3f, 0x24, 0x01, 0x00, 0x00, 0x00, 0x3f, + 0x25, 0x01, 0x00, 0x00, 0x00, 0x3e, 0xe1, 0x00, + 0x00, 0x00, 0x00, 0x3e, 0xe2, 0x00, 0x00, 0x00, + 0x00, 0x3e, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x3e, + 0xe4, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xe5, 0x00, + 0x00, 0x00, 0x00, 0x3e, 0xe6, 0x00, 0x00, 0x00, + 0x00, 0x3e, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x3e, + 0xe8, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xe9, 0x00, + 0x00, 0x00, 0x00, 0x3e, 0xea, 0x00, 0x00, 0x00, + 0x00, 0x3e, 0xeb, 0x00, 0x00, 0x00, 0x00, 0x3e, + 0xec, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xed, 0x00, + 0x00, 0x00, 0x00, 0x3e, 0xee, 0x00, 0x00, 0x00, + 0x00, 0x3e, 0xef, 0x00, 0x00, 0x00, 0x00, 0x3e, + 0xf0, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xf1, 0x00, + 0x00, 0x00, 0x00, 0x3e, 0xf2, 0x00, 0x00, 0x00, + 0x00, 0x3e, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x3e, + 0xf4, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xf5, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x02, 0x40, 0xf6, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x03, 0x40, 0xf7, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x04, 0x40, 0xf8, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x05, 0x40, 0xf9, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x06, 0x40, 0xfa, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x07, 0x40, 0xfb, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x08, 0x40, 0xfc, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x09, 0x40, 0xfd, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x0a, 0x40, 0xfe, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x0b, 0x40, 0xff, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x0c, 0x40, 0x00, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x0d, 0x40, 0x01, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x0e, 0x40, 0x02, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x0f, 0x40, 0x03, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x10, 0x40, 0x04, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x11, 0x40, 0x05, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x12, 0x40, 0x06, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x13, 0x40, 0x07, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x14, 0x40, 0x08, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x15, 0x40, 0x09, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x16, 0x40, 0x0a, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x17, 0x40, 0x0b, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x18, 0x40, 0x0c, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x19, 0x40, 0x0d, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x1a, 0x40, 0x0e, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x1b, 0x40, 0x0f, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x1c, 0x40, 0x10, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x1d, 0x40, 0x11, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x1e, 0x40, 0x12, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x1f, 0x40, 0x13, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x20, 0x40, 0x14, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x21, 0x40, 0x15, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x22, 0x40, 0x16, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x23, 0x40, 0x17, 0x01, + 0x00, 0x00, 0x00, 0xc0, 0x24, 0x40, 0x18, 0x01, + 0x00, 0x00, 0x00, 0x3e, 0x19, 0x01, 0x00, 0x00, + 0x00, 0x3e, 0x1a, 0x01, 0x00, 0x00, 0x00, 0x3e, + 0x1b, 0x01, 0x00, 0x00, 0x00, 0x3e, 0x1c, 0x01, + 0x00, 0x00, 0x00, 0x3e, 0x1d, 0x01, 0x00, 0x00, + 0x00, 0x3e, 0x1e, 0x01, 0x00, 0x00, 0x00, 0x3e, + 0x1f, 0x01, 0x00, 0x00, 0x00, 0x3e, 0x20, 0x01, + 0x00, 0x00, 0x00, 0x3e, 0x21, 0x01, 0x00, 0x00, + 0x00, 0x3e, 0x22, 0x01, 0x00, 0x00, 0x00, 0x3e, + 0x23, 0x01, 0x00, 0x00, 0x00, 0x3e, 0x24, 0x01, + 0x00, 0x00, 0x00, 0x3e, 0x25, 0x01, 0x00, 0x00, + 0x00, 0x04, 0x26, 0x01, 0x00, 0x00, 0xc9, 0x04, + 0x27, 0x01, 0x00, 0x00, 0xc9, 0xc0, 0x00, 0xc6, + 0xef, 0xc9, 0x36, 0xeb, 0x00, 0x00, 0x00, 0x38, + 0xe4, 0x00, 0x00, 0x00, 0xb5, 0xb6, 0xf0, 0x3b, + 0xeb, 0x00, 0x00, 0x00, 0x36, 0xec, 0x00, 0x00, + 0x00, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xb5, 0xb6, + 0x26, 0x02, 0x00, 0xef, 0x3b, 0xec, 0x00, 0x00, + 0x00, 0x36, 0xed, 0x00, 0x00, 0x00, 0x38, 0xe9, + 0x00, 0x00, 0x00, 0x41, 0xed, 0x00, 0x00, 0x00, + 0x3b, 0xed, 0x00, 0x00, 0x00, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0x65, 0x00, 0x00, 0x00, 0xc6, - 0x04, 0x25, 0x01, 0x00, 0x00, 0x0b, 0xc0, 0x01, + 0x04, 0x28, 0x01, 0x00, 0x00, 0x0b, 0xc0, 0x01, 0x4d, 0x41, 0x00, 0x00, 0x00, 0x4c, 0x41, 0x00, - 0x00, 0x00, 0x24, 0x03, 0x00, 0xc9, 0x36, 0xeb, - 0x00, 0x00, 0x00, 0x38, 0xde, 0x00, 0x00, 0x00, - 0x41, 0xeb, 0x00, 0x00, 0x00, 0x3b, 0xeb, 0x00, - 0x00, 0x00, 0x36, 0xec, 0x00, 0x00, 0x00, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x41, 0xec, 0x00, 0x00, - 0x00, 0x3b, 0xec, 0x00, 0x00, 0x00, 0x36, 0xed, - 0x00, 0x00, 0x00, 0x38, 0xde, 0x00, 0x00, 0x00, - 0x41, 0xed, 0x00, 0x00, 0x00, 0x3b, 0xed, 0x00, - 0x00, 0x00, 0x36, 0xee, 0x00, 0x00, 0x00, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x41, 0xee, 0x00, 0x00, - 0x00, 0x3b, 0xee, 0x00, 0x00, 0x00, 0x36, 0xef, - 0x00, 0x00, 0x00, 0x38, 0xde, 0x00, 0x00, 0x00, - 0x41, 0xef, 0x00, 0x00, 0x00, 0x3b, 0xef, 0x00, - 0x00, 0x00, 0x36, 0xf0, 0x00, 0x00, 0x00, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x41, 0xf0, 0x00, 0x00, - 0x00, 0x3b, 0xf0, 0x00, 0x00, 0x00, 0x36, 0xf1, - 0x00, 0x00, 0x00, 0x38, 0xde, 0x00, 0x00, 0x00, - 0x41, 0x26, 0x01, 0x00, 0x00, 0x3b, 0xf1, 0x00, - 0x00, 0x00, 0x36, 0xf2, 0x00, 0x00, 0x00, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x41, 0x27, 0x01, 0x00, - 0x00, 0x3b, 0xf2, 0x00, 0x00, 0x00, 0x36, 0x16, - 0x01, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, - 0x41, 0x16, 0x01, 0x00, 0x00, 0x3b, 0x16, 0x01, - 0x00, 0x00, 0x36, 0x17, 0x01, 0x00, 0x00, 0x38, - 0xe7, 0x00, 0x00, 0x00, 0x41, 0x17, 0x01, 0x00, - 0x00, 0x3b, 0x17, 0x01, 0x00, 0x00, 0x36, 0x18, - 0x01, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, - 0x41, 0x18, 0x01, 0x00, 0x00, 0x3b, 0x18, 0x01, - 0x00, 0x00, 0x36, 0x19, 0x01, 0x00, 0x00, 0x38, - 0xe7, 0x00, 0x00, 0x00, 0x41, 0x19, 0x01, 0x00, - 0x00, 0x3b, 0x19, 0x01, 0x00, 0x00, 0x36, 0x1a, - 0x01, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, - 0x41, 0x1a, 0x01, 0x00, 0x00, 0x3b, 0x1a, 0x01, - 0x00, 0x00, 0x36, 0x1b, 0x01, 0x00, 0x00, 0x38, - 0xe7, 0x00, 0x00, 0x00, 0x41, 0x1b, 0x01, 0x00, - 0x00, 0x3b, 0x1b, 0x01, 0x00, 0x00, 0x36, 0x1c, - 0x01, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, - 0x41, 0x1c, 0x01, 0x00, 0x00, 0x3b, 0x1c, 0x01, - 0x00, 0x00, 0x36, 0x1d, 0x01, 0x00, 0x00, 0x38, - 0xe7, 0x00, 0x00, 0x00, 0x41, 0x1d, 0x01, 0x00, - 0x00, 0x3b, 0x1d, 0x01, 0x00, 0x00, 0x36, 0x1e, - 0x01, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, - 0x41, 0x1e, 0x01, 0x00, 0x00, 0x3b, 0x1e, 0x01, - 0x00, 0x00, 0x36, 0x1f, 0x01, 0x00, 0x00, 0x38, - 0xe7, 0x00, 0x00, 0x00, 0x41, 0x1f, 0x01, 0x00, - 0x00, 0x3b, 0x1f, 0x01, 0x00, 0x00, 0x36, 0x20, - 0x01, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, - 0x41, 0x20, 0x01, 0x00, 0x00, 0x3b, 0x20, 0x01, - 0x00, 0x00, 0x36, 0x21, 0x01, 0x00, 0x00, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0x41, 0x28, 0x01, 0x00, - 0x00, 0x3b, 0x21, 0x01, 0x00, 0x00, 0x36, 0x22, - 0x01, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0x41, 0x22, 0x01, 0x00, 0x00, 0x3b, 0x22, 0x01, - 0x00, 0x00, 0xc5, 0x28, 0xd2, 0x04, 0x01, 0x2c, + 0x00, 0x00, 0x24, 0x03, 0x00, 0xc9, 0x36, 0xee, + 0x00, 0x00, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, + 0x41, 0xee, 0x00, 0x00, 0x00, 0x3b, 0xee, 0x00, + 0x00, 0x00, 0x36, 0xef, 0x00, 0x00, 0x00, 0x38, + 0xe1, 0x00, 0x00, 0x00, 0x41, 0xef, 0x00, 0x00, + 0x00, 0x3b, 0xef, 0x00, 0x00, 0x00, 0x36, 0xf0, + 0x00, 0x00, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, + 0x41, 0xf0, 0x00, 0x00, 0x00, 0x3b, 0xf0, 0x00, + 0x00, 0x00, 0x36, 0xf1, 0x00, 0x00, 0x00, 0x38, + 0xe1, 0x00, 0x00, 0x00, 0x41, 0xf1, 0x00, 0x00, + 0x00, 0x3b, 0xf1, 0x00, 0x00, 0x00, 0x36, 0xf2, + 0x00, 0x00, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, + 0x41, 0xf2, 0x00, 0x00, 0x00, 0x3b, 0xf2, 0x00, + 0x00, 0x00, 0x36, 0xf3, 0x00, 0x00, 0x00, 0x38, + 0xe1, 0x00, 0x00, 0x00, 0x41, 0xf3, 0x00, 0x00, + 0x00, 0x3b, 0xf3, 0x00, 0x00, 0x00, 0x36, 0xf4, + 0x00, 0x00, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, + 0x41, 0x29, 0x01, 0x00, 0x00, 0x3b, 0xf4, 0x00, + 0x00, 0x00, 0x36, 0xf5, 0x00, 0x00, 0x00, 0x38, + 0xe1, 0x00, 0x00, 0x00, 0x41, 0x2a, 0x01, 0x00, + 0x00, 0x3b, 0xf5, 0x00, 0x00, 0x00, 0x36, 0x19, + 0x01, 0x00, 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, + 0x41, 0x19, 0x01, 0x00, 0x00, 0x3b, 0x19, 0x01, + 0x00, 0x00, 0x36, 0x1a, 0x01, 0x00, 0x00, 0x38, + 0xea, 0x00, 0x00, 0x00, 0x41, 0x1a, 0x01, 0x00, + 0x00, 0x3b, 0x1a, 0x01, 0x00, 0x00, 0x36, 0x1b, + 0x01, 0x00, 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, + 0x41, 0x1b, 0x01, 0x00, 0x00, 0x3b, 0x1b, 0x01, + 0x00, 0x00, 0x36, 0x1c, 0x01, 0x00, 0x00, 0x38, + 0xea, 0x00, 0x00, 0x00, 0x41, 0x1c, 0x01, 0x00, + 0x00, 0x3b, 0x1c, 0x01, 0x00, 0x00, 0x36, 0x1d, + 0x01, 0x00, 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, + 0x41, 0x1d, 0x01, 0x00, 0x00, 0x3b, 0x1d, 0x01, + 0x00, 0x00, 0x36, 0x1e, 0x01, 0x00, 0x00, 0x38, + 0xea, 0x00, 0x00, 0x00, 0x41, 0x1e, 0x01, 0x00, + 0x00, 0x3b, 0x1e, 0x01, 0x00, 0x00, 0x36, 0x1f, + 0x01, 0x00, 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, + 0x41, 0x1f, 0x01, 0x00, 0x00, 0x3b, 0x1f, 0x01, + 0x00, 0x00, 0x36, 0x20, 0x01, 0x00, 0x00, 0x38, + 0xea, 0x00, 0x00, 0x00, 0x41, 0x20, 0x01, 0x00, + 0x00, 0x3b, 0x20, 0x01, 0x00, 0x00, 0x36, 0x21, + 0x01, 0x00, 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, + 0x41, 0x21, 0x01, 0x00, 0x00, 0x3b, 0x21, 0x01, + 0x00, 0x00, 0x36, 0x22, 0x01, 0x00, 0x00, 0x38, + 0xea, 0x00, 0x00, 0x00, 0x41, 0x22, 0x01, 0x00, + 0x00, 0x3b, 0x22, 0x01, 0x00, 0x00, 0x36, 0x23, + 0x01, 0x00, 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, + 0x41, 0x23, 0x01, 0x00, 0x00, 0x3b, 0x23, 0x01, + 0x00, 0x00, 0x36, 0x24, 0x01, 0x00, 0x00, 0x38, + 0xe6, 0x00, 0x00, 0x00, 0x41, 0x2b, 0x01, 0x00, + 0x00, 0x3b, 0x24, 0x01, 0x00, 0x00, 0x36, 0x25, + 0x01, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0x41, 0x25, 0x01, 0x00, 0x00, 0x3b, 0x25, 0x01, + 0x00, 0x00, 0xc5, 0x28, 0xd8, 0x04, 0x01, 0x2c, 0x00, 0xa0, 0x03, 0x01, 0x00, 0xe4, 0x03, 0x02, 0x00, 0x05, 0x2e, 0x21, 0x00, 0x01, 0xea, 0x24, 0x1e, 0x5d, 0x6c, 0x68, 0xaa, 0x67, 0x67, 0x67, @@ -532,50 +532,50 @@ const uint8_t qjsc_qjscalc[31967] = { 0x67, 0x67, 0x68, 0x67, 0x0e, 0x43, 0x06, 0x05, 0x00, 0x01, 0x46, 0x01, 0x20, 0x00, 0xcd, 0x01, 0x8b, 0x1d, 0x47, 0xdc, 0x01, 0x00, 0x01, 0x40, - 0xd4, 0x04, 0x00, 0x00, 0x00, 0xd6, 0x04, 0x00, - 0x01, 0x00, 0xd8, 0x04, 0x00, 0x02, 0x40, 0xda, - 0x04, 0x00, 0x03, 0x40, 0xdc, 0x04, 0x00, 0x04, - 0x40, 0xde, 0x04, 0x00, 0x05, 0x40, 0xe0, 0x04, - 0x00, 0x06, 0x00, 0xe2, 0x04, 0x00, 0x07, 0x00, - 0xe4, 0x04, 0x00, 0x08, 0x00, 0xe6, 0x04, 0x00, - 0x09, 0x00, 0xe8, 0x04, 0x00, 0x0a, 0x00, 0xea, - 0x04, 0x00, 0x0b, 0x00, 0xec, 0x04, 0x00, 0x0c, - 0x00, 0xee, 0x04, 0x00, 0x0d, 0x00, 0xf0, 0x04, - 0x00, 0x0e, 0x00, 0xf2, 0x04, 0x00, 0x0f, 0x00, - 0xf4, 0x04, 0x00, 0x10, 0x00, 0xf6, 0x04, 0x00, - 0x11, 0x00, 0xf8, 0x04, 0x00, 0x12, 0x00, 0xfa, - 0x04, 0x00, 0x13, 0x00, 0xfc, 0x04, 0x00, 0x14, - 0x00, 0xfe, 0x04, 0x00, 0x15, 0x40, 0x80, 0x05, - 0x00, 0x16, 0x40, 0x82, 0x05, 0x00, 0x17, 0x00, - 0x84, 0x05, 0x00, 0x18, 0x00, 0x86, 0x05, 0x00, - 0x19, 0x00, 0x88, 0x05, 0x00, 0x1a, 0x00, 0x8a, - 0x05, 0x00, 0x1b, 0x00, 0x8c, 0x05, 0x00, 0x1c, - 0x00, 0x8e, 0x05, 0x00, 0x1d, 0x00, 0x90, 0x05, - 0x00, 0x1e, 0x40, 0x92, 0x05, 0x00, 0x1f, 0x00, - 0x94, 0x05, 0x00, 0x20, 0x00, 0x96, 0x05, 0x00, - 0x21, 0x40, 0x98, 0x05, 0x00, 0x22, 0x40, 0x9a, - 0x05, 0x00, 0x23, 0x40, 0x9c, 0x05, 0x00, 0x24, - 0x40, 0x9e, 0x05, 0x00, 0x25, 0x40, 0xa0, 0x05, - 0x00, 0x26, 0x40, 0xa2, 0x05, 0x00, 0x27, 0x00, - 0xa4, 0x05, 0x00, 0x28, 0x00, 0xa6, 0x05, 0x00, - 0x29, 0x00, 0xa8, 0x05, 0x00, 0x2a, 0x00, 0xaa, - 0x05, 0x00, 0x2b, 0x00, 0xac, 0x05, 0x00, 0x2c, - 0x00, 0xae, 0x05, 0x00, 0x2d, 0x40, 0xb0, 0x05, - 0x00, 0x2e, 0x00, 0xb2, 0x05, 0x00, 0x2f, 0x40, - 0xb4, 0x05, 0x00, 0x30, 0x00, 0xb6, 0x05, 0x00, - 0x31, 0x00, 0xb8, 0x05, 0x00, 0x32, 0x00, 0xba, - 0x05, 0x00, 0x33, 0x00, 0xbc, 0x05, 0x00, 0x34, - 0x00, 0xbe, 0x05, 0x00, 0x35, 0x00, 0xc0, 0x05, - 0x00, 0x36, 0x00, 0xc2, 0x05, 0x00, 0x37, 0x40, - 0xc4, 0x05, 0x00, 0x38, 0x40, 0xc6, 0x05, 0x00, - 0x39, 0x40, 0xc8, 0x05, 0x00, 0x3a, 0x00, 0xca, - 0x05, 0x00, 0x3b, 0x40, 0xcc, 0x05, 0x00, 0x3c, - 0x00, 0xce, 0x05, 0x00, 0x3d, 0x00, 0xd0, 0x05, - 0x00, 0x3e, 0x00, 0xd2, 0x05, 0x00, 0x3f, 0x00, - 0xd4, 0x05, 0x00, 0x40, 0x00, 0xd6, 0x05, 0x00, - 0x41, 0x40, 0xd8, 0x05, 0x00, 0x42, 0x40, 0xda, - 0x05, 0x00, 0x43, 0x00, 0xdc, 0x05, 0x00, 0x44, - 0x40, 0xde, 0x05, 0x00, 0x45, 0x00, 0xc0, 0x00, + 0xda, 0x04, 0x00, 0x00, 0x00, 0xdc, 0x04, 0x00, + 0x01, 0x00, 0xde, 0x04, 0x00, 0x02, 0x40, 0xe0, + 0x04, 0x00, 0x03, 0x40, 0xe2, 0x04, 0x00, 0x04, + 0x40, 0xe4, 0x04, 0x00, 0x05, 0x40, 0xe6, 0x04, + 0x00, 0x06, 0x00, 0xe8, 0x04, 0x00, 0x07, 0x00, + 0xea, 0x04, 0x00, 0x08, 0x00, 0xec, 0x04, 0x00, + 0x09, 0x00, 0xee, 0x04, 0x00, 0x0a, 0x00, 0xf0, + 0x04, 0x00, 0x0b, 0x00, 0xf2, 0x04, 0x00, 0x0c, + 0x00, 0xf4, 0x04, 0x00, 0x0d, 0x00, 0xf6, 0x04, + 0x00, 0x0e, 0x00, 0xf8, 0x04, 0x00, 0x0f, 0x00, + 0xfa, 0x04, 0x00, 0x10, 0x00, 0xfc, 0x04, 0x00, + 0x11, 0x00, 0xfe, 0x04, 0x00, 0x12, 0x00, 0x80, + 0x05, 0x00, 0x13, 0x00, 0x82, 0x05, 0x00, 0x14, + 0x00, 0x84, 0x05, 0x00, 0x15, 0x40, 0x86, 0x05, + 0x00, 0x16, 0x40, 0x88, 0x05, 0x00, 0x17, 0x00, + 0x8a, 0x05, 0x00, 0x18, 0x00, 0x8c, 0x05, 0x00, + 0x19, 0x00, 0x8e, 0x05, 0x00, 0x1a, 0x00, 0x90, + 0x05, 0x00, 0x1b, 0x00, 0x92, 0x05, 0x00, 0x1c, + 0x00, 0x94, 0x05, 0x00, 0x1d, 0x00, 0x96, 0x05, + 0x00, 0x1e, 0x40, 0x98, 0x05, 0x00, 0x1f, 0x00, + 0x9a, 0x05, 0x00, 0x20, 0x00, 0x9c, 0x05, 0x00, + 0x21, 0x40, 0x9e, 0x05, 0x00, 0x22, 0x40, 0xa0, + 0x05, 0x00, 0x23, 0x40, 0xa2, 0x05, 0x00, 0x24, + 0x40, 0xa4, 0x05, 0x00, 0x25, 0x40, 0xa6, 0x05, + 0x00, 0x26, 0x40, 0xa8, 0x05, 0x00, 0x27, 0x00, + 0xaa, 0x05, 0x00, 0x28, 0x00, 0xac, 0x05, 0x00, + 0x29, 0x00, 0xae, 0x05, 0x00, 0x2a, 0x00, 0xb0, + 0x05, 0x00, 0x2b, 0x00, 0xb2, 0x05, 0x00, 0x2c, + 0x00, 0xb4, 0x05, 0x00, 0x2d, 0x40, 0xb6, 0x05, + 0x00, 0x2e, 0x00, 0xb8, 0x05, 0x00, 0x2f, 0x40, + 0xba, 0x05, 0x00, 0x30, 0x00, 0xbc, 0x05, 0x00, + 0x31, 0x00, 0xbe, 0x05, 0x00, 0x32, 0x00, 0xc0, + 0x05, 0x00, 0x33, 0x00, 0xc2, 0x05, 0x00, 0x34, + 0x00, 0xc4, 0x05, 0x00, 0x35, 0x00, 0xc6, 0x05, + 0x00, 0x36, 0x00, 0xc8, 0x05, 0x00, 0x37, 0x40, + 0xca, 0x05, 0x00, 0x38, 0x40, 0xcc, 0x05, 0x00, + 0x39, 0x40, 0xce, 0x05, 0x00, 0x3a, 0x00, 0xd0, + 0x05, 0x00, 0x3b, 0x40, 0xd2, 0x05, 0x00, 0x3c, + 0x00, 0xd4, 0x05, 0x00, 0x3d, 0x00, 0xd6, 0x05, + 0x00, 0x3e, 0x00, 0xd8, 0x05, 0x00, 0x3f, 0x00, + 0xda, 0x05, 0x00, 0x40, 0x00, 0xdc, 0x05, 0x00, + 0x41, 0x40, 0xde, 0x05, 0x00, 0x42, 0x40, 0xe0, + 0x05, 0x00, 0x43, 0x00, 0xe2, 0x05, 0x00, 0x44, + 0x40, 0xe4, 0x05, 0x00, 0x45, 0x00, 0xc0, 0x00, 0xc9, 0xc0, 0x01, 0xca, 0xc0, 0x02, 0xcb, 0xc0, 0x03, 0xc3, 0x04, 0xc0, 0x04, 0xc3, 0x05, 0xc0, 0x18, 0xc3, 0x06, 0xc0, 0x19, 0xc3, 0x07, 0xc0, @@ -609,10 +609,10 @@ const uint8_t qjsc_qjscalc[31967] = { 0xbe, 0xc3, 0x3f, 0xc0, 0xbf, 0xc3, 0x40, 0xc0, 0xc0, 0xc3, 0x41, 0xc0, 0xc1, 0xc3, 0x42, 0xc0, 0xc2, 0xc3, 0x43, 0xc0, 0xc3, 0xc3, 0x44, 0xc0, - 0xc4, 0xc3, 0x45, 0xd1, 0xd1, 0x41, 0xaf, 0x00, - 0x00, 0x00, 0x43, 0xde, 0x00, 0x00, 0x00, 0xd1, - 0xd1, 0x41, 0xb0, 0x00, 0x00, 0x00, 0x43, 0xdf, - 0x00, 0x00, 0x00, 0xd1, 0x0a, 0x43, 0x70, 0x01, + 0xc4, 0xc3, 0x45, 0xd1, 0xd1, 0x41, 0xb2, 0x00, + 0x00, 0x00, 0x43, 0xe1, 0x00, 0x00, 0x00, 0xd1, + 0xd1, 0x41, 0xb3, 0x00, 0x00, 0x00, 0x43, 0xe2, + 0x00, 0x00, 0x00, 0xd1, 0x0a, 0x43, 0x73, 0x01, 0x00, 0x00, 0xb7, 0xb8, 0xba, 0xbc, 0xbd, 0x0b, 0xbd, 0x0d, 0xbd, 0x11, 0xbd, 0x13, 0xbd, 0x17, 0xbd, 0x1d, 0xbd, 0x1f, 0xbd, 0x25, 0xbd, 0x29, @@ -684,364 +684,364 @@ const uint8_t qjsc_qjscalc[31967] = { 0x00, 0x80, 0xbe, 0xe7, 0x01, 0x4c, 0x5c, 0x00, 0x00, 0x80, 0xbe, 0xeb, 0x01, 0x4c, 0x5d, 0x00, 0x00, 0x80, 0xbe, 0xf3, 0x01, 0x4c, 0x5e, 0x00, - 0x00, 0x80, 0xcc, 0x38, 0xb4, 0x00, 0x00, 0x00, - 0x42, 0x71, 0x01, 0x00, 0x00, 0x0b, 0xc0, 0x05, - 0x54, 0x72, 0x01, 0x00, 0x00, 0x04, 0xc0, 0x06, - 0x54, 0x73, 0x01, 0x00, 0x00, 0x04, 0x24, 0x01, - 0x00, 0x0e, 0xc5, 0x38, 0xde, 0x00, 0x00, 0x00, - 0x0b, 0xc0, 0x07, 0x54, 0x74, 0x01, 0x00, 0x00, - 0x04, 0xc0, 0x08, 0x54, 0xeb, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0x09, 0x54, 0xec, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0x0a, 0x54, 0xed, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0x0b, 0x54, 0xef, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0x0c, 0x54, 0xee, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0x0d, 0x54, 0x26, 0x01, 0x00, 0x00, - 0x04, 0xc0, 0x0e, 0x54, 0x27, 0x01, 0x00, 0x00, - 0x04, 0xc0, 0x0f, 0x54, 0xf0, 0x00, 0x00, 0x00, - 0x04, 0xf0, 0x0e, 0xc5, 0x38, 0xde, 0x00, 0x00, + 0x00, 0x80, 0xcc, 0x38, 0xb7, 0x00, 0x00, 0x00, + 0x42, 0x74, 0x01, 0x00, 0x00, 0x0b, 0xc0, 0x05, + 0x54, 0x75, 0x01, 0x00, 0x00, 0x04, 0xc0, 0x06, + 0x54, 0x76, 0x01, 0x00, 0x00, 0x04, 0x24, 0x01, + 0x00, 0x0e, 0xc5, 0x38, 0xe1, 0x00, 0x00, 0x00, + 0x0b, 0xc0, 0x07, 0x54, 0x77, 0x01, 0x00, 0x00, + 0x04, 0xc0, 0x08, 0x54, 0xee, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0x09, 0x54, 0xef, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0x0a, 0x54, 0xf0, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0x0b, 0x54, 0xf2, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0x0c, 0x54, 0xf1, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0x0d, 0x54, 0x29, 0x01, 0x00, 0x00, + 0x04, 0xc0, 0x0e, 0x54, 0x2a, 0x01, 0x00, 0x00, + 0x04, 0xc0, 0x0f, 0x54, 0xf3, 0x00, 0x00, 0x00, + 0x04, 0xf0, 0x0e, 0xc5, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x0b, 0xc0, - 0x10, 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, 0xc0, - 0x11, 0x54, 0xf5, 0x00, 0x00, 0x00, 0x04, 0xc0, - 0x12, 0x54, 0xf6, 0x00, 0x00, 0x00, 0x04, 0xc0, - 0x13, 0x54, 0xf7, 0x00, 0x00, 0x00, 0x04, 0xc0, - 0x14, 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, 0xc0, - 0x15, 0x54, 0xfe, 0x00, 0x00, 0x00, 0x04, 0xc0, - 0x16, 0x54, 0xff, 0x00, 0x00, 0x00, 0x04, 0xf0, - 0x0e, 0x36, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0x17, - 0x3b, 0xe0, 0x00, 0x00, 0x00, 0xc6, 0x38, 0xe0, + 0x10, 0x54, 0xfc, 0x00, 0x00, 0x00, 0x04, 0xc0, + 0x11, 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, 0xc0, + 0x12, 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, 0xc0, + 0x13, 0x54, 0xfa, 0x00, 0x00, 0x00, 0x04, 0xc0, + 0x14, 0x54, 0xfb, 0x00, 0x00, 0x00, 0x04, 0xc0, + 0x15, 0x54, 0x01, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0x16, 0x54, 0x02, 0x01, 0x00, 0x00, 0x04, 0xf0, + 0x0e, 0x36, 0xe3, 0x00, 0x00, 0x00, 0xc0, 0x17, + 0x3b, 0xe3, 0x00, 0x00, 0x00, 0xc6, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, - 0x0b, 0xc2, 0x06, 0x4c, 0x75, 0x01, 0x00, 0x00, - 0xc2, 0x07, 0x4c, 0x76, 0x01, 0x00, 0x00, 0xc2, + 0x0b, 0xc2, 0x06, 0x4c, 0x78, 0x01, 0x00, 0x00, + 0xc2, 0x07, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x08, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, 0x09, - 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc2, 0x0a, 0x4c, - 0x77, 0x01, 0x00, 0x00, 0xc7, 0x4c, 0x73, 0x01, - 0x00, 0x00, 0xc2, 0x0b, 0x4c, 0x78, 0x01, 0x00, - 0x00, 0xc2, 0x0c, 0x4c, 0x79, 0x01, 0x00, 0x00, - 0xc0, 0x27, 0x54, 0x7a, 0x01, 0x00, 0x00, 0x04, - 0xc0, 0x28, 0x54, 0x7b, 0x01, 0x00, 0x00, 0x04, - 0x0b, 0x38, 0x95, 0x00, 0x00, 0x00, 0x38, 0xaf, - 0x00, 0x00, 0x00, 0x26, 0x02, 0x00, 0x4c, 0x7c, - 0x01, 0x00, 0x00, 0x38, 0x95, 0x00, 0x00, 0x00, - 0x38, 0xaf, 0x00, 0x00, 0x00, 0x26, 0x02, 0x00, - 0x4c, 0x7d, 0x01, 0x00, 0x00, 0xc2, 0x06, 0x4c, - 0x75, 0x01, 0x00, 0x00, 0xc2, 0x07, 0x4c, 0x76, + 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc2, 0x0a, 0x4c, + 0x7a, 0x01, 0x00, 0x00, 0xc7, 0x4c, 0x76, 0x01, + 0x00, 0x00, 0xc2, 0x0b, 0x4c, 0x7b, 0x01, 0x00, + 0x00, 0xc2, 0x0c, 0x4c, 0x7c, 0x01, 0x00, 0x00, + 0xc0, 0x27, 0x54, 0x7d, 0x01, 0x00, 0x00, 0x04, + 0xc0, 0x28, 0x54, 0x7e, 0x01, 0x00, 0x00, 0x04, + 0x0b, 0x38, 0x98, 0x00, 0x00, 0x00, 0x38, 0xb2, + 0x00, 0x00, 0x00, 0x26, 0x02, 0x00, 0x4c, 0x7f, + 0x01, 0x00, 0x00, 0x38, 0x98, 0x00, 0x00, 0x00, + 0x38, 0xb2, 0x00, 0x00, 0x00, 0x26, 0x02, 0x00, + 0x4c, 0x80, 0x01, 0x00, 0x00, 0xc2, 0x06, 0x4c, + 0x78, 0x01, 0x00, 0x00, 0xc2, 0x07, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x08, 0x4c, 0x7d, 0x00, - 0x00, 0x00, 0xc2, 0x09, 0x4c, 0x72, 0x01, 0x00, - 0x00, 0xc2, 0x0a, 0x4c, 0x77, 0x01, 0x00, 0x00, - 0xc7, 0x4c, 0x73, 0x01, 0x00, 0x00, 0xc2, 0x0b, - 0x4c, 0x78, 0x01, 0x00, 0x00, 0xc2, 0x0c, 0x4c, - 0x79, 0x01, 0x00, 0x00, 0x0b, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0x4c, 0x7c, 0x01, 0x00, 0x00, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x4c, 0x7d, 0x01, 0x00, - 0x00, 0xc2, 0x0d, 0x4c, 0x75, 0x01, 0x00, 0x00, - 0xc2, 0x0e, 0x4c, 0x76, 0x01, 0x00, 0x00, 0xc2, + 0x00, 0x00, 0xc2, 0x09, 0x4c, 0x75, 0x01, 0x00, + 0x00, 0xc2, 0x0a, 0x4c, 0x7a, 0x01, 0x00, 0x00, + 0xc7, 0x4c, 0x76, 0x01, 0x00, 0x00, 0xc2, 0x0b, + 0x4c, 0x7b, 0x01, 0x00, 0x00, 0xc2, 0x0c, 0x4c, + 0x7c, 0x01, 0x00, 0x00, 0x0b, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0x4c, 0x7f, 0x01, 0x00, 0x00, 0x38, + 0xe2, 0x00, 0x00, 0x00, 0x4c, 0x80, 0x01, 0x00, + 0x00, 0xc2, 0x0d, 0x4c, 0x78, 0x01, 0x00, 0x00, + 0xc2, 0x0e, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x0f, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, 0x10, - 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc2, 0x11, 0x4c, - 0x77, 0x01, 0x00, 0x00, 0xc2, 0x12, 0x4c, 0x73, - 0x01, 0x00, 0x00, 0xc2, 0x13, 0x4c, 0x78, 0x01, - 0x00, 0x00, 0xc2, 0x14, 0x4c, 0x79, 0x01, 0x00, - 0x00, 0x22, 0x04, 0x00, 0x0e, 0xc5, 0x38, 0xe0, - 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x29, 0x54, 0x7e, + 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc2, 0x11, 0x4c, + 0x7a, 0x01, 0x00, 0x00, 0xc2, 0x12, 0x4c, 0x76, + 0x01, 0x00, 0x00, 0xc2, 0x13, 0x4c, 0x7b, 0x01, + 0x00, 0x00, 0xc2, 0x14, 0x4c, 0x7c, 0x01, 0x00, + 0x00, 0x22, 0x04, 0x00, 0x0e, 0xc5, 0x38, 0xe3, + 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x29, 0x54, 0x81, 0x01, 0x00, 0x00, 0x04, 0xf0, 0x0e, 0xc5, 0x38, - 0xe0, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x0b, 0x38, 0x98, 0x00, 0x00, 0x00, 0x41, - 0x7f, 0x01, 0x00, 0x00, 0xc0, 0x2a, 0x55, 0x04, - 0xc0, 0x2b, 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, + 0xe3, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, + 0x00, 0x0b, 0x38, 0x9b, 0x00, 0x00, 0x00, 0x41, + 0x82, 0x01, 0x00, 0x00, 0xc0, 0x2a, 0x55, 0x04, + 0xc0, 0x2b, 0x54, 0xfc, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x2c, 0x54, 0x37, 0x00, 0x00, 0x00, 0x04, - 0xc0, 0x2d, 0x54, 0xf5, 0x00, 0x00, 0x00, 0x04, - 0xc0, 0x2e, 0x54, 0xf6, 0x00, 0x00, 0x00, 0x04, - 0xc0, 0x2f, 0x54, 0xf7, 0x00, 0x00, 0x00, 0x04, - 0xc0, 0x30, 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, - 0xc0, 0x31, 0x54, 0xfe, 0x00, 0x00, 0x00, 0x04, - 0xc0, 0x32, 0x54, 0xff, 0x00, 0x00, 0x00, 0x04, - 0xf0, 0x0e, 0xc5, 0x38, 0x95, 0x00, 0x00, 0x00, + 0xc0, 0x2d, 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, + 0xc0, 0x2e, 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, + 0xc0, 0x2f, 0x54, 0xfa, 0x00, 0x00, 0x00, 0x04, + 0xc0, 0x30, 0x54, 0xfb, 0x00, 0x00, 0x00, 0x04, + 0xc0, 0x31, 0x54, 0x01, 0x01, 0x00, 0x00, 0x04, + 0xc0, 0x32, 0x54, 0x02, 0x01, 0x00, 0x00, 0x04, + 0xf0, 0x0e, 0xc5, 0x38, 0x98, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x33, - 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x34, - 0x54, 0xf5, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x35, - 0x54, 0xf6, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x36, - 0x54, 0xf7, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x37, - 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x38, - 0x54, 0xfe, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x39, - 0x54, 0xff, 0x00, 0x00, 0x00, 0x04, 0xf0, 0x0e, - 0x26, 0x00, 0x00, 0xc3, 0x15, 0xc5, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x3b, 0x54, 0x80, - 0x01, 0x00, 0x00, 0x04, 0xc0, 0x3c, 0x54, 0x22, - 0x01, 0x00, 0x00, 0x04, 0xc0, 0x3d, 0x54, 0x81, - 0x01, 0x00, 0x00, 0x05, 0xc0, 0x3e, 0x54, 0x82, - 0x01, 0x00, 0x00, 0x05, 0xc0, 0x3f, 0x54, 0x83, - 0x01, 0x00, 0x00, 0x05, 0xc0, 0x40, 0x54, 0x84, - 0x01, 0x00, 0x00, 0x05, 0xc0, 0x41, 0x54, 0x85, - 0x01, 0x00, 0x00, 0x05, 0xc0, 0x42, 0x54, 0x86, + 0x54, 0xfc, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x34, + 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x35, + 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x36, + 0x54, 0xfa, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x37, + 0x54, 0xfb, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x38, + 0x54, 0x01, 0x01, 0x00, 0x00, 0x04, 0xc0, 0x39, + 0x54, 0x02, 0x01, 0x00, 0x00, 0x04, 0xf0, 0x0e, + 0x26, 0x00, 0x00, 0xc3, 0x15, 0xc5, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x3b, 0x54, 0x83, + 0x01, 0x00, 0x00, 0x04, 0xc0, 0x3c, 0x54, 0x25, + 0x01, 0x00, 0x00, 0x04, 0xc0, 0x3d, 0x54, 0x84, + 0x01, 0x00, 0x00, 0x05, 0xc0, 0x3e, 0x54, 0x85, + 0x01, 0x00, 0x00, 0x05, 0xc0, 0x3f, 0x54, 0x86, + 0x01, 0x00, 0x00, 0x05, 0xc0, 0x40, 0x54, 0x87, + 0x01, 0x00, 0x00, 0x05, 0xc0, 0x41, 0x54, 0x88, + 0x01, 0x00, 0x00, 0x05, 0xc0, 0x42, 0x54, 0x89, 0x01, 0x00, 0x00, 0x05, 0xf0, 0x0e, 0xc5, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x0b, 0xc0, 0x43, 0x54, 0xf9, 0x00, 0x00, - 0x00, 0x04, 0xc0, 0x44, 0x54, 0xf5, 0x00, 0x00, - 0x00, 0x04, 0xc0, 0x45, 0x54, 0xf6, 0x00, 0x00, - 0x00, 0x04, 0xc0, 0x46, 0x54, 0xf7, 0x00, 0x00, - 0x00, 0x04, 0xc0, 0x47, 0x54, 0xf8, 0x00, 0x00, - 0x00, 0x04, 0xc0, 0x48, 0x54, 0xfe, 0x00, 0x00, - 0x00, 0x04, 0xc0, 0x49, 0x54, 0xff, 0x00, 0x00, - 0x00, 0x04, 0xf0, 0x0e, 0x36, 0xe1, 0x00, 0x00, - 0x00, 0xc0, 0x4a, 0x3b, 0xe1, 0x00, 0x00, 0x00, - 0xc6, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x41, 0x3b, - 0x00, 0x00, 0x00, 0x0b, 0xc2, 0x17, 0x4c, 0x75, - 0x01, 0x00, 0x00, 0xc2, 0x18, 0x4c, 0x76, 0x01, + 0xe2, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, + 0x00, 0x0b, 0xc0, 0x43, 0x54, 0xfc, 0x00, 0x00, + 0x00, 0x04, 0xc0, 0x44, 0x54, 0xf8, 0x00, 0x00, + 0x00, 0x04, 0xc0, 0x45, 0x54, 0xf9, 0x00, 0x00, + 0x00, 0x04, 0xc0, 0x46, 0x54, 0xfa, 0x00, 0x00, + 0x00, 0x04, 0xc0, 0x47, 0x54, 0xfb, 0x00, 0x00, + 0x00, 0x04, 0xc0, 0x48, 0x54, 0x01, 0x01, 0x00, + 0x00, 0x04, 0xc0, 0x49, 0x54, 0x02, 0x01, 0x00, + 0x00, 0x04, 0xf0, 0x0e, 0x36, 0xe4, 0x00, 0x00, + 0x00, 0xc0, 0x4a, 0x3b, 0xe4, 0x00, 0x00, 0x00, + 0xc6, 0x38, 0xe4, 0x00, 0x00, 0x00, 0x41, 0x3b, + 0x00, 0x00, 0x00, 0x0b, 0xc2, 0x17, 0x4c, 0x78, + 0x01, 0x00, 0x00, 0xc2, 0x18, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x19, 0x4c, 0x7d, 0x00, 0x00, - 0x00, 0xc2, 0x1a, 0x4c, 0x72, 0x01, 0x00, 0x00, - 0xc7, 0x4c, 0x73, 0x01, 0x00, 0x00, 0xc2, 0x1b, - 0x4c, 0x78, 0x01, 0x00, 0x00, 0xc0, 0x50, 0x54, - 0x7a, 0x01, 0x00, 0x00, 0x04, 0xc0, 0x51, 0x54, - 0x7b, 0x01, 0x00, 0x00, 0x04, 0x0b, 0x38, 0x95, - 0x00, 0x00, 0x00, 0x38, 0xaf, 0x00, 0x00, 0x00, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, - 0x00, 0x00, 0x26, 0x04, 0x00, 0x4c, 0x7c, 0x01, - 0x00, 0x00, 0x38, 0x95, 0x00, 0x00, 0x00, 0x38, - 0xaf, 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x26, 0x04, - 0x00, 0x4c, 0x7d, 0x01, 0x00, 0x00, 0xc2, 0x17, - 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc2, 0x18, 0x4c, - 0x76, 0x01, 0x00, 0x00, 0xc2, 0x19, 0x4c, 0x7d, - 0x00, 0x00, 0x00, 0xc2, 0x1a, 0x4c, 0x72, 0x01, - 0x00, 0x00, 0xc7, 0x4c, 0x73, 0x01, 0x00, 0x00, - 0xc2, 0x1b, 0x4c, 0x78, 0x01, 0x00, 0x00, 0xf1, - 0x0e, 0xc5, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x0b, - 0xc0, 0x52, 0x54, 0x87, 0x01, 0x00, 0x00, 0x04, - 0xf0, 0x0e, 0xc5, 0x38, 0xe1, 0x00, 0x00, 0x00, + 0x00, 0xc2, 0x1a, 0x4c, 0x75, 0x01, 0x00, 0x00, + 0xc7, 0x4c, 0x76, 0x01, 0x00, 0x00, 0xc2, 0x1b, + 0x4c, 0x7b, 0x01, 0x00, 0x00, 0xc0, 0x50, 0x54, + 0x7d, 0x01, 0x00, 0x00, 0x04, 0xc0, 0x51, 0x54, + 0x7e, 0x01, 0x00, 0x00, 0x04, 0x0b, 0x38, 0x98, + 0x00, 0x00, 0x00, 0x38, 0xb2, 0x00, 0x00, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, + 0x00, 0x00, 0x26, 0x04, 0x00, 0x4c, 0x7f, 0x01, + 0x00, 0x00, 0x38, 0x98, 0x00, 0x00, 0x00, 0x38, + 0xb2, 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x26, 0x04, + 0x00, 0x4c, 0x80, 0x01, 0x00, 0x00, 0xc2, 0x17, + 0x4c, 0x78, 0x01, 0x00, 0x00, 0xc2, 0x18, 0x4c, + 0x79, 0x01, 0x00, 0x00, 0xc2, 0x19, 0x4c, 0x7d, + 0x00, 0x00, 0x00, 0xc2, 0x1a, 0x4c, 0x75, 0x01, + 0x00, 0x00, 0xc7, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0xc2, 0x1b, 0x4c, 0x7b, 0x01, 0x00, 0x00, 0xf1, + 0x0e, 0xc5, 0x38, 0xe4, 0x00, 0x00, 0x00, 0x0b, + 0xc0, 0x52, 0x54, 0x8a, 0x01, 0x00, 0x00, 0x04, + 0xf0, 0x0e, 0xc5, 0x38, 0xe4, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x53, - 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x54, + 0x54, 0xfc, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x54, 0x54, 0x37, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x55, - 0x54, 0xf5, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x56, - 0x54, 0xf6, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x57, - 0x54, 0xf7, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x58, - 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x59, - 0x54, 0xfe, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x5a, - 0x54, 0xff, 0x00, 0x00, 0x00, 0x04, 0xf0, 0x0e, - 0x36, 0xe2, 0x00, 0x00, 0x00, 0xc0, 0x5b, 0x3b, - 0xe2, 0x00, 0x00, 0x00, 0xc6, 0x38, 0xe2, 0x00, + 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x56, + 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x57, + 0x54, 0xfa, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x58, + 0x54, 0xfb, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x59, + 0x54, 0x01, 0x01, 0x00, 0x00, 0x04, 0xc0, 0x5a, + 0x54, 0x02, 0x01, 0x00, 0x00, 0x04, 0xf0, 0x0e, + 0x36, 0xe5, 0x00, 0x00, 0x00, 0xc0, 0x5b, 0x3b, + 0xe5, 0x00, 0x00, 0x00, 0xc6, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x0b, - 0xc2, 0x1c, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc2, - 0x1d, 0x4c, 0x76, 0x01, 0x00, 0x00, 0xc2, 0x1e, + 0xc2, 0x1c, 0x4c, 0x78, 0x01, 0x00, 0x00, 0xc2, + 0x1d, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x1e, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, 0x1f, 0x4c, - 0x72, 0x01, 0x00, 0x00, 0xc7, 0x4c, 0x73, 0x01, - 0x00, 0x00, 0xc2, 0x20, 0x4c, 0x78, 0x01, 0x00, - 0x00, 0xc0, 0x61, 0x54, 0x7a, 0x01, 0x00, 0x00, - 0x04, 0xc0, 0x62, 0x54, 0x7b, 0x01, 0x00, 0x00, - 0x04, 0x0b, 0x38, 0x95, 0x00, 0x00, 0x00, 0x38, - 0xaf, 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x26, 0x04, - 0x00, 0x4c, 0x7c, 0x01, 0x00, 0x00, 0x38, 0x95, - 0x00, 0x00, 0x00, 0x38, 0xaf, 0x00, 0x00, 0x00, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, - 0x00, 0x00, 0x26, 0x04, 0x00, 0x4c, 0x7d, 0x01, - 0x00, 0x00, 0xc2, 0x1c, 0x4c, 0x75, 0x01, 0x00, - 0x00, 0xc2, 0x1d, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0x75, 0x01, 0x00, 0x00, 0xc7, 0x4c, 0x76, 0x01, + 0x00, 0x00, 0xc2, 0x20, 0x4c, 0x7b, 0x01, 0x00, + 0x00, 0xc0, 0x61, 0x54, 0x7d, 0x01, 0x00, 0x00, + 0x04, 0xc0, 0x62, 0x54, 0x7e, 0x01, 0x00, 0x00, + 0x04, 0x0b, 0x38, 0x98, 0x00, 0x00, 0x00, 0x38, + 0xb2, 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x26, 0x04, + 0x00, 0x4c, 0x7f, 0x01, 0x00, 0x00, 0x38, 0x98, + 0x00, 0x00, 0x00, 0x38, 0xb2, 0x00, 0x00, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, + 0x00, 0x00, 0x26, 0x04, 0x00, 0x4c, 0x80, 0x01, + 0x00, 0x00, 0xc2, 0x1c, 0x4c, 0x78, 0x01, 0x00, + 0x00, 0xc2, 0x1d, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x1e, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, - 0x1f, 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc7, 0x4c, - 0x73, 0x01, 0x00, 0x00, 0xf1, 0x0e, 0xc5, 0x38, - 0xe2, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x0b, 0xc0, 0x63, 0x54, 0xf9, 0x00, 0x00, + 0x1f, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc7, 0x4c, + 0x76, 0x01, 0x00, 0x00, 0xf1, 0x0e, 0xc5, 0x38, + 0xe5, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, + 0x00, 0x0b, 0xc0, 0x63, 0x54, 0xfc, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x64, 0x54, 0x37, 0x00, 0x00, - 0x00, 0x04, 0xf0, 0x0e, 0x36, 0xe3, 0x00, 0x00, - 0x00, 0xc0, 0x66, 0x3b, 0xe3, 0x00, 0x00, 0x00, - 0xc5, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x41, 0x3b, - 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x6b, 0x54, 0x88, - 0x01, 0x00, 0x00, 0x04, 0xc0, 0x6c, 0x54, 0xf7, - 0x00, 0x00, 0x00, 0x04, 0xc0, 0x6d, 0x54, 0xf9, + 0x00, 0x04, 0xf0, 0x0e, 0x36, 0xe6, 0x00, 0x00, + 0x00, 0xc0, 0x66, 0x3b, 0xe6, 0x00, 0x00, 0x00, + 0xc5, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x41, 0x3b, + 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x6b, 0x54, 0x8b, + 0x01, 0x00, 0x00, 0x04, 0xc0, 0x6c, 0x54, 0xfa, + 0x00, 0x00, 0x00, 0x04, 0xc0, 0x6d, 0x54, 0xfc, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x6e, 0x54, 0x37, - 0x00, 0x00, 0x00, 0x04, 0xc0, 0x6f, 0x54, 0x89, + 0x00, 0x00, 0x00, 0x04, 0xc0, 0x6f, 0x54, 0x8c, 0x01, 0x00, 0x00, 0x04, 0xc0, 0x70, 0x54, 0x5a, - 0x00, 0x00, 0x00, 0x04, 0xc0, 0x71, 0x54, 0xf3, - 0x00, 0x00, 0x00, 0x04, 0xc0, 0x72, 0x54, 0xf4, - 0x00, 0x00, 0x00, 0x04, 0xc0, 0x73, 0x54, 0xf5, + 0x00, 0x00, 0x00, 0x04, 0xc0, 0x71, 0x54, 0xf6, + 0x00, 0x00, 0x00, 0x04, 0xc0, 0x72, 0x54, 0xf7, + 0x00, 0x00, 0x00, 0x04, 0xc0, 0x73, 0x54, 0xf8, 0x00, 0x00, 0x00, 0x04, 0xf0, 0x0e, 0xc6, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x0b, 0xc2, 0x26, 0x4c, 0x75, 0x01, 0x00, - 0x00, 0xc2, 0x27, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0xe6, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, + 0x00, 0x0b, 0xc2, 0x26, 0x4c, 0x78, 0x01, 0x00, + 0x00, 0xc2, 0x27, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x28, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, - 0x2a, 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc7, 0x4c, - 0x73, 0x01, 0x00, 0x00, 0xc2, 0x2c, 0x4c, 0x78, - 0x01, 0x00, 0x00, 0xc0, 0x7b, 0x54, 0x7a, 0x01, - 0x00, 0x00, 0x04, 0xc0, 0x7c, 0x54, 0x7b, 0x01, - 0x00, 0x00, 0x04, 0x0b, 0x38, 0x95, 0x00, 0x00, - 0x00, 0x38, 0xaf, 0x00, 0x00, 0x00, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, - 0x38, 0xe1, 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, - 0x00, 0x00, 0x26, 0x06, 0x00, 0x4c, 0x7c, 0x01, - 0x00, 0x00, 0xc2, 0x26, 0x4c, 0x75, 0x01, 0x00, - 0x00, 0xc2, 0x27, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0x2a, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc7, 0x4c, + 0x76, 0x01, 0x00, 0x00, 0xc2, 0x2c, 0x4c, 0x7b, + 0x01, 0x00, 0x00, 0xc0, 0x7b, 0x54, 0x7d, 0x01, + 0x00, 0x00, 0x04, 0xc0, 0x7c, 0x54, 0x7e, 0x01, + 0x00, 0x00, 0x04, 0x0b, 0x38, 0x98, 0x00, 0x00, + 0x00, 0x38, 0xb2, 0x00, 0x00, 0x00, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, + 0x38, 0xe4, 0x00, 0x00, 0x00, 0x38, 0xe5, 0x00, + 0x00, 0x00, 0x26, 0x06, 0x00, 0x4c, 0x7f, 0x01, + 0x00, 0x00, 0xc2, 0x26, 0x4c, 0x78, 0x01, 0x00, + 0x00, 0xc2, 0x27, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x28, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, - 0x2a, 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc7, 0x4c, - 0x73, 0x01, 0x00, 0x00, 0x0b, 0x38, 0x95, 0x00, - 0x00, 0x00, 0x38, 0xaf, 0x00, 0x00, 0x00, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, - 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x38, 0xe2, - 0x00, 0x00, 0x00, 0x26, 0x06, 0x00, 0x4c, 0x7d, - 0x01, 0x00, 0x00, 0xc2, 0x26, 0x4c, 0x75, 0x01, - 0x00, 0x00, 0xc2, 0x27, 0x4c, 0x76, 0x01, 0x00, + 0x2a, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc7, 0x4c, + 0x76, 0x01, 0x00, 0x00, 0x0b, 0x38, 0x98, 0x00, + 0x00, 0x00, 0x38, 0xb2, 0x00, 0x00, 0x00, 0x38, + 0xe2, 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, + 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, 0x38, 0xe5, + 0x00, 0x00, 0x00, 0x26, 0x06, 0x00, 0x4c, 0x80, + 0x01, 0x00, 0x00, 0xc2, 0x26, 0x4c, 0x78, 0x01, + 0x00, 0x00, 0xc2, 0x27, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x28, 0x4c, 0x7d, 0x00, 0x00, 0x00, - 0xc2, 0x29, 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc7, - 0x4c, 0x73, 0x01, 0x00, 0x00, 0x22, 0x04, 0x00, - 0x0e, 0xc5, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x0b, - 0xc0, 0x7d, 0x54, 0x8a, 0x01, 0x00, 0x00, 0x04, - 0xc0, 0x7e, 0x54, 0xeb, 0x00, 0x00, 0x00, 0x04, - 0xc0, 0x7f, 0x54, 0xef, 0x00, 0x00, 0x00, 0x04, - 0xc0, 0x80, 0x54, 0x28, 0x01, 0x00, 0x00, 0x04, - 0xf0, 0x0e, 0x36, 0xe4, 0x00, 0x00, 0x00, 0xc0, - 0x81, 0x3b, 0xe4, 0x00, 0x00, 0x00, 0xc6, 0x38, - 0xe4, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x0b, 0xc2, 0x2d, 0x4c, 0x75, 0x01, 0x00, - 0x00, 0xc2, 0x2e, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0xc2, 0x29, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc7, + 0x4c, 0x76, 0x01, 0x00, 0x00, 0x22, 0x04, 0x00, + 0x0e, 0xc5, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x0b, + 0xc0, 0x7d, 0x54, 0x8d, 0x01, 0x00, 0x00, 0x04, + 0xc0, 0x7e, 0x54, 0xee, 0x00, 0x00, 0x00, 0x04, + 0xc0, 0x7f, 0x54, 0xf2, 0x00, 0x00, 0x00, 0x04, + 0xc0, 0x80, 0x54, 0x2b, 0x01, 0x00, 0x00, 0x04, + 0xf0, 0x0e, 0x36, 0xe7, 0x00, 0x00, 0x00, 0xc0, + 0x81, 0x3b, 0xe7, 0x00, 0x00, 0x00, 0xc6, 0x38, + 0xe7, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, + 0x00, 0x0b, 0xc2, 0x2d, 0x4c, 0x78, 0x01, 0x00, + 0x00, 0xc2, 0x2e, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x2f, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, - 0x30, 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc7, 0x4c, - 0x73, 0x01, 0x00, 0x00, 0xc2, 0x31, 0x4c, 0x78, - 0x01, 0x00, 0x00, 0xc0, 0x87, 0x54, 0x7a, 0x01, - 0x00, 0x00, 0x04, 0xc0, 0x88, 0x54, 0x7b, 0x01, - 0x00, 0x00, 0x04, 0x0b, 0x38, 0x95, 0x00, 0x00, - 0x00, 0x38, 0xaf, 0x00, 0x00, 0x00, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, - 0x38, 0xe1, 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, - 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x26, - 0x07, 0x00, 0x4c, 0x7c, 0x01, 0x00, 0x00, 0x38, - 0x95, 0x00, 0x00, 0x00, 0x38, 0xaf, 0x00, 0x00, - 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x38, 0xe0, - 0x00, 0x00, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, - 0x00, 0x00, 0x26, 0x07, 0x00, 0x4c, 0x7d, 0x01, - 0x00, 0x00, 0xc2, 0x2d, 0x4c, 0x75, 0x01, 0x00, - 0x00, 0xc2, 0x2e, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0x30, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc7, 0x4c, + 0x76, 0x01, 0x00, 0x00, 0xc2, 0x31, 0x4c, 0x7b, + 0x01, 0x00, 0x00, 0xc0, 0x87, 0x54, 0x7d, 0x01, + 0x00, 0x00, 0x04, 0xc0, 0x88, 0x54, 0x7e, 0x01, + 0x00, 0x00, 0x04, 0x0b, 0x38, 0x98, 0x00, 0x00, + 0x00, 0x38, 0xb2, 0x00, 0x00, 0x00, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, + 0x38, 0xe4, 0x00, 0x00, 0x00, 0x38, 0xe5, 0x00, + 0x00, 0x00, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x26, + 0x07, 0x00, 0x4c, 0x7f, 0x01, 0x00, 0x00, 0x38, + 0x98, 0x00, 0x00, 0x00, 0x38, 0xb2, 0x00, 0x00, + 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, 0xe3, + 0x00, 0x00, 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0x38, 0xe5, 0x00, 0x00, 0x00, 0x38, 0xe6, 0x00, + 0x00, 0x00, 0x26, 0x07, 0x00, 0x4c, 0x80, 0x01, + 0x00, 0x00, 0xc2, 0x2d, 0x4c, 0x78, 0x01, 0x00, + 0x00, 0xc2, 0x2e, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x2f, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, - 0x30, 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc7, 0x4c, - 0x73, 0x01, 0x00, 0x00, 0xf1, 0x0e, 0xc5, 0x38, - 0xe4, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x0b, 0xc0, 0x89, 0x54, 0xf9, 0x00, 0x00, + 0x30, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc7, 0x4c, + 0x76, 0x01, 0x00, 0x00, 0xf1, 0x0e, 0xc5, 0x38, + 0xe7, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, + 0x00, 0x0b, 0xc0, 0x89, 0x54, 0xfc, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x8a, 0x54, 0x37, 0x00, 0x00, - 0x00, 0x04, 0xf0, 0x0e, 0x36, 0xe5, 0x00, 0x00, - 0x00, 0xc0, 0x8b, 0x3b, 0xe5, 0x00, 0x00, 0x00, - 0xc5, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x41, 0x3b, - 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x8c, 0x54, 0xf9, - 0x00, 0x00, 0x00, 0x04, 0xc0, 0x8d, 0x54, 0xf7, + 0x00, 0x04, 0xf0, 0x0e, 0x36, 0xe8, 0x00, 0x00, + 0x00, 0xc0, 0x8b, 0x3b, 0xe8, 0x00, 0x00, 0x00, + 0xc5, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x41, 0x3b, + 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x8c, 0x54, 0xfc, + 0x00, 0x00, 0x00, 0x04, 0xc0, 0x8d, 0x54, 0xfa, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x8e, 0x54, 0x37, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x8f, 0x54, 0x5a, - 0x00, 0x00, 0x00, 0x04, 0xc0, 0x90, 0x54, 0xf3, + 0x00, 0x00, 0x00, 0x04, 0xc0, 0x90, 0x54, 0xf6, 0x00, 0x00, 0x00, 0x04, 0xf0, 0x0e, 0xc6, 0x38, - 0xe5, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x0b, 0xc2, 0x32, 0x4c, 0x75, 0x01, 0x00, - 0x00, 0xc2, 0x33, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0xe8, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, + 0x00, 0x0b, 0xc2, 0x32, 0x4c, 0x78, 0x01, 0x00, + 0x00, 0xc2, 0x33, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x34, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, - 0x35, 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc7, 0x4c, - 0x73, 0x01, 0x00, 0x00, 0xc2, 0x36, 0x4c, 0x78, - 0x01, 0x00, 0x00, 0xc0, 0x96, 0x54, 0x7a, 0x01, - 0x00, 0x00, 0x04, 0xc0, 0x97, 0x54, 0x7b, 0x01, - 0x00, 0x00, 0x04, 0x0b, 0x38, 0x95, 0x00, 0x00, - 0x00, 0x38, 0xaf, 0x00, 0x00, 0x00, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, - 0x38, 0xe1, 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, - 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x26, - 0x07, 0x00, 0x4c, 0x7c, 0x01, 0x00, 0x00, 0x38, - 0x95, 0x00, 0x00, 0x00, 0x38, 0xaf, 0x00, 0x00, - 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x38, 0xe0, - 0x00, 0x00, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, - 0x00, 0x00, 0x26, 0x07, 0x00, 0x4c, 0x7d, 0x01, - 0x00, 0x00, 0xc2, 0x32, 0x4c, 0x75, 0x01, 0x00, - 0x00, 0xc2, 0x33, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0x35, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc7, 0x4c, + 0x76, 0x01, 0x00, 0x00, 0xc2, 0x36, 0x4c, 0x7b, + 0x01, 0x00, 0x00, 0xc0, 0x96, 0x54, 0x7d, 0x01, + 0x00, 0x00, 0x04, 0xc0, 0x97, 0x54, 0x7e, 0x01, + 0x00, 0x00, 0x04, 0x0b, 0x38, 0x98, 0x00, 0x00, + 0x00, 0x38, 0xb2, 0x00, 0x00, 0x00, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, + 0x38, 0xe4, 0x00, 0x00, 0x00, 0x38, 0xe5, 0x00, + 0x00, 0x00, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x26, + 0x07, 0x00, 0x4c, 0x7f, 0x01, 0x00, 0x00, 0x38, + 0x98, 0x00, 0x00, 0x00, 0x38, 0xb2, 0x00, 0x00, + 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, 0xe3, + 0x00, 0x00, 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0x38, 0xe5, 0x00, 0x00, 0x00, 0x38, 0xe6, 0x00, + 0x00, 0x00, 0x26, 0x07, 0x00, 0x4c, 0x80, 0x01, + 0x00, 0x00, 0xc2, 0x32, 0x4c, 0x78, 0x01, 0x00, + 0x00, 0xc2, 0x33, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x34, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, - 0x35, 0x4c, 0x72, 0x01, 0x00, 0x00, 0xc7, 0x4c, - 0x73, 0x01, 0x00, 0x00, 0xf1, 0x0e, 0xc5, 0x38, - 0xe5, 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x98, 0x54, - 0x8b, 0x01, 0x00, 0x00, 0x04, 0xf0, 0x0e, 0x36, - 0xe6, 0x00, 0x00, 0x00, 0xc0, 0x9b, 0x3b, 0xe6, - 0x00, 0x00, 0x00, 0xc6, 0x38, 0xe6, 0x00, 0x00, + 0x35, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc7, 0x4c, + 0x76, 0x01, 0x00, 0x00, 0xf1, 0x0e, 0xc5, 0x38, + 0xe8, 0x00, 0x00, 0x00, 0x0b, 0xc0, 0x98, 0x54, + 0x8e, 0x01, 0x00, 0x00, 0x04, 0xf0, 0x0e, 0x36, + 0xe9, 0x00, 0x00, 0x00, 0xc0, 0x9b, 0x3b, 0xe9, + 0x00, 0x00, 0x00, 0xc6, 0x38, 0xe9, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x0b, 0xc2, - 0x39, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc2, 0x3a, - 0x4c, 0x76, 0x01, 0x00, 0x00, 0xc2, 0x3b, 0x4c, - 0x7d, 0x00, 0x00, 0x00, 0xc2, 0x3c, 0x4c, 0x72, - 0x01, 0x00, 0x00, 0xc2, 0x3d, 0x4c, 0x73, 0x01, - 0x00, 0x00, 0xc2, 0x3e, 0x4c, 0x78, 0x01, 0x00, - 0x00, 0xc0, 0xa2, 0x54, 0x7a, 0x01, 0x00, 0x00, - 0x04, 0xc0, 0xa3, 0x54, 0x7b, 0x01, 0x00, 0x00, - 0x04, 0x0b, 0x38, 0x95, 0x00, 0x00, 0x00, 0x38, - 0xaf, 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe1, - 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, - 0x38, 0xe3, 0x00, 0x00, 0x00, 0x26, 0x07, 0x00, - 0x4c, 0x7c, 0x01, 0x00, 0x00, 0x38, 0x95, 0x00, - 0x00, 0x00, 0x38, 0xaf, 0x00, 0x00, 0x00, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, - 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x38, 0xe2, - 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, - 0x26, 0x07, 0x00, 0x4c, 0x7d, 0x01, 0x00, 0x00, - 0xc2, 0x39, 0x4c, 0x75, 0x01, 0x00, 0x00, 0xc2, - 0x3a, 0x4c, 0x76, 0x01, 0x00, 0x00, 0xc2, 0x3b, + 0x39, 0x4c, 0x78, 0x01, 0x00, 0x00, 0xc2, 0x3a, + 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x3b, 0x4c, + 0x7d, 0x00, 0x00, 0x00, 0xc2, 0x3c, 0x4c, 0x75, + 0x01, 0x00, 0x00, 0xc2, 0x3d, 0x4c, 0x76, 0x01, + 0x00, 0x00, 0xc2, 0x3e, 0x4c, 0x7b, 0x01, 0x00, + 0x00, 0xc0, 0xa2, 0x54, 0x7d, 0x01, 0x00, 0x00, + 0x04, 0xc0, 0xa3, 0x54, 0x7e, 0x01, 0x00, 0x00, + 0x04, 0x0b, 0x38, 0x98, 0x00, 0x00, 0x00, 0x38, + 0xb2, 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x38, 0xe4, + 0x00, 0x00, 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, + 0x38, 0xe6, 0x00, 0x00, 0x00, 0x26, 0x07, 0x00, + 0x4c, 0x7f, 0x01, 0x00, 0x00, 0x38, 0x98, 0x00, + 0x00, 0x00, 0x38, 0xb2, 0x00, 0x00, 0x00, 0x38, + 0xe2, 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, + 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, 0x38, 0xe5, + 0x00, 0x00, 0x00, 0x38, 0xe6, 0x00, 0x00, 0x00, + 0x26, 0x07, 0x00, 0x4c, 0x80, 0x01, 0x00, 0x00, + 0xc2, 0x39, 0x4c, 0x78, 0x01, 0x00, 0x00, 0xc2, + 0x3a, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x3b, 0x4c, 0x7d, 0x00, 0x00, 0x00, 0xc2, 0x3c, 0x4c, - 0x72, 0x01, 0x00, 0x00, 0xc2, 0x3d, 0x4c, 0x73, - 0x01, 0x00, 0x00, 0xf1, 0x0e, 0xc5, 0x38, 0xe6, + 0x75, 0x01, 0x00, 0x00, 0xc2, 0x3d, 0x4c, 0x76, + 0x01, 0x00, 0x00, 0xf1, 0x0e, 0xc5, 0x38, 0xe9, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, - 0x0b, 0xc0, 0xa4, 0x54, 0xf7, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0xa5, 0x54, 0xf9, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0xa6, 0x54, 0x88, 0x01, 0x00, 0x00, + 0x0b, 0xc0, 0xa4, 0x54, 0xfa, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0xa5, 0x54, 0xfc, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0xa6, 0x54, 0x8b, 0x01, 0x00, 0x00, 0x04, 0xc0, 0xa7, 0x54, 0x37, 0x00, 0x00, 0x00, 0x04, 0xc0, 0xa8, 0x54, 0x5a, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0xa9, 0x54, 0xf3, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0xaa, 0x54, 0xf4, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0xab, 0x54, 0xfe, 0x00, 0x00, 0x00, - 0x04, 0xc0, 0xac, 0x54, 0xff, 0x00, 0x00, 0x00, - 0x04, 0xf0, 0x0e, 0xc5, 0x38, 0xe6, 0x00, 0x00, - 0x00, 0x0b, 0xc0, 0xad, 0x54, 0x8c, 0x01, 0x00, - 0x00, 0x04, 0xc0, 0xae, 0x54, 0xea, 0x00, 0x00, - 0x00, 0x04, 0xf0, 0x0e, 0x36, 0xe7, 0x00, 0x00, - 0x00, 0xc0, 0xaf, 0x3b, 0xe7, 0x00, 0x00, 0x00, - 0xc5, 0x38, 0xe7, 0x00, 0x00, 0x00, 0x0b, 0xc0, - 0xb0, 0x54, 0x16, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb1, 0x54, 0x17, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb2, 0x54, 0x8d, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb3, 0x54, 0x18, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb4, 0x54, 0x8e, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb5, 0x54, 0x19, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb6, 0x54, 0x1a, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb7, 0x54, 0x1b, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb8, 0x54, 0x1c, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xb9, 0x54, 0xf9, 0x00, 0x00, 0x00, 0x04, 0xc0, - 0xba, 0x54, 0x1d, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xbb, 0x54, 0x1e, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xbc, 0x54, 0x20, 0x01, 0x00, 0x00, 0x04, 0xc0, - 0xbd, 0x54, 0x1f, 0x01, 0x00, 0x00, 0x04, 0xf0, - 0x0e, 0xc6, 0x38, 0x93, 0x00, 0x00, 0x00, 0x41, + 0x04, 0xc0, 0xa9, 0x54, 0xf6, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0xaa, 0x54, 0xf7, 0x00, 0x00, 0x00, + 0x04, 0xc0, 0xab, 0x54, 0x01, 0x01, 0x00, 0x00, + 0x04, 0xc0, 0xac, 0x54, 0x02, 0x01, 0x00, 0x00, + 0x04, 0xf0, 0x0e, 0xc5, 0x38, 0xe9, 0x00, 0x00, + 0x00, 0x0b, 0xc0, 0xad, 0x54, 0x8f, 0x01, 0x00, + 0x00, 0x04, 0xc0, 0xae, 0x54, 0xed, 0x00, 0x00, + 0x00, 0x04, 0xf0, 0x0e, 0x36, 0xea, 0x00, 0x00, + 0x00, 0xc0, 0xaf, 0x3b, 0xea, 0x00, 0x00, 0x00, + 0xc5, 0x38, 0xea, 0x00, 0x00, 0x00, 0x0b, 0xc0, + 0xb0, 0x54, 0x19, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb1, 0x54, 0x1a, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb2, 0x54, 0x90, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb3, 0x54, 0x1b, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb4, 0x54, 0x91, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb5, 0x54, 0x1c, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb6, 0x54, 0x1d, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb7, 0x54, 0x1e, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb8, 0x54, 0x1f, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xb9, 0x54, 0xfc, 0x00, 0x00, 0x00, 0x04, 0xc0, + 0xba, 0x54, 0x20, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xbb, 0x54, 0x21, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xbc, 0x54, 0x23, 0x01, 0x00, 0x00, 0x04, 0xc0, + 0xbd, 0x54, 0x22, 0x01, 0x00, 0x00, 0x04, 0xf0, + 0x0e, 0xc6, 0x38, 0x96, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x0b, 0xc2, 0x3f, 0x4c, - 0x75, 0x01, 0x00, 0x00, 0xc2, 0x40, 0x4c, 0x76, + 0x78, 0x01, 0x00, 0x00, 0xc2, 0x40, 0x4c, 0x79, 0x01, 0x00, 0x00, 0xc2, 0x42, 0x4c, 0x7d, 0x00, - 0x00, 0x00, 0xc2, 0x43, 0x4c, 0x72, 0x01, 0x00, - 0x00, 0xc2, 0x45, 0x4c, 0x78, 0x01, 0x00, 0x00, - 0xc0, 0xc5, 0x54, 0x7a, 0x01, 0x00, 0x00, 0x04, - 0xc0, 0xc6, 0x54, 0x7b, 0x01, 0x00, 0x00, 0x04, - 0x0b, 0x38, 0x95, 0x00, 0x00, 0x00, 0x38, 0xaf, - 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe1, 0x00, - 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0x38, 0xe4, 0x00, 0x00, - 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x38, 0xe6, - 0x00, 0x00, 0x00, 0x26, 0x0a, 0x00, 0x4c, 0x7d, + 0x00, 0x00, 0xc2, 0x43, 0x4c, 0x75, 0x01, 0x00, + 0x00, 0xc2, 0x45, 0x4c, 0x7b, 0x01, 0x00, 0x00, + 0xc0, 0xc5, 0x54, 0x7d, 0x01, 0x00, 0x00, 0x04, + 0xc0, 0xc6, 0x54, 0x7e, 0x01, 0x00, 0x00, 0x04, + 0x0b, 0x38, 0x98, 0x00, 0x00, 0x00, 0x38, 0xb2, + 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0x38, 0xe3, 0x00, 0x00, 0x00, 0x38, 0xe4, 0x00, + 0x00, 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x38, + 0xe6, 0x00, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, + 0x00, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x38, 0xe9, + 0x00, 0x00, 0x00, 0x26, 0x0a, 0x00, 0x4c, 0x80, 0x01, 0x00, 0x00, 0xc2, 0x41, 0x4c, 0x7d, 0x00, - 0x00, 0x00, 0xc0, 0xc7, 0x54, 0x72, 0x01, 0x00, - 0x00, 0x04, 0xc7, 0x4c, 0x73, 0x01, 0x00, 0x00, - 0x0b, 0x38, 0x95, 0x00, 0x00, 0x00, 0x38, 0xaf, - 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe1, 0x00, - 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0x38, 0xe4, 0x00, 0x00, - 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x38, 0xe6, - 0x00, 0x00, 0x00, 0x26, 0x0a, 0x00, 0x4c, 0x7c, + 0x00, 0x00, 0xc0, 0xc7, 0x54, 0x75, 0x01, 0x00, + 0x00, 0x04, 0xc7, 0x4c, 0x76, 0x01, 0x00, 0x00, + 0x0b, 0x38, 0x98, 0x00, 0x00, 0x00, 0x38, 0xb2, + 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0x38, 0xe3, 0x00, 0x00, 0x00, 0x38, 0xe4, 0x00, + 0x00, 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x38, + 0xe6, 0x00, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, + 0x00, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x38, 0xe9, + 0x00, 0x00, 0x00, 0x26, 0x0a, 0x00, 0x4c, 0x7f, 0x01, 0x00, 0x00, 0xc0, 0xc8, 0x54, 0x7d, 0x00, - 0x00, 0x00, 0x04, 0xc0, 0xc9, 0x54, 0x72, 0x01, + 0x00, 0x00, 0x04, 0xc0, 0xc9, 0x54, 0x75, 0x01, 0x00, 0x00, 0x04, 0x22, 0x04, 0x00, 0x0e, 0xc5, - 0x38, 0x93, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, - 0x00, 0x00, 0x0b, 0xc0, 0xca, 0x54, 0xf7, 0x00, - 0x00, 0x00, 0x04, 0xc0, 0xcb, 0x54, 0x8f, 0x01, - 0x00, 0x00, 0x04, 0xc0, 0xcc, 0x54, 0xf9, 0x00, - 0x00, 0x00, 0x04, 0x38, 0xe3, 0x00, 0x00, 0x00, - 0x41, 0x3b, 0x00, 0x00, 0x00, 0x41, 0xf5, 0x00, - 0x00, 0x00, 0x4c, 0xf5, 0x00, 0x00, 0x00, 0xf0, - 0x29, 0xd2, 0x04, 0x1d, 0xb7, 0x04, 0x00, 0x8d, + 0x38, 0x96, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, + 0x00, 0x00, 0x0b, 0xc0, 0xca, 0x54, 0xfa, 0x00, + 0x00, 0x00, 0x04, 0xc0, 0xcb, 0x54, 0x92, 0x01, + 0x00, 0x00, 0x04, 0xc0, 0xcc, 0x54, 0xfc, 0x00, + 0x00, 0x00, 0x04, 0x38, 0xe6, 0x00, 0x00, 0x00, + 0x41, 0x3b, 0x00, 0x00, 0x00, 0x41, 0xf8, 0x00, + 0x00, 0x00, 0x4c, 0xf8, 0x00, 0x00, 0x00, 0xf0, + 0x29, 0xd8, 0x04, 0x1d, 0xb7, 0x04, 0x00, 0x8d, 0x02, 0x02, 0x3f, 0x3f, 0x00, 0x07, 0xba, 0x01, 0x00, 0xb9, 0x04, 0x5a, 0x35, 0x00, 0x01, 0x0e, 0x00, 0x08, 0x0e, 0x2b, 0x18, 0x00, 0x07, 0x0a, @@ -1113,16 +1113,16 @@ const uint8_t qjsc_qjscalc[31967] = { 0x99, 0x8f, 0x26, 0x2b, 0x22, 0x08, 0x99, 0x8f, 0x2b, 0x2b, 0x18, 0x00, 0x0c, 0x10, 0x00, 0x08, 0x18, 0x2d, 0x2b, 0x67, 0x09, 0x0e, 0x43, 0x06, - 0x05, 0xd4, 0x04, 0x02, 0x05, 0x02, 0x05, 0x00, - 0x00, 0x77, 0x07, 0xa0, 0x06, 0x00, 0x01, 0x00, - 0xa2, 0x06, 0x00, 0x01, 0x00, 0xa4, 0x06, 0x00, - 0x00, 0x00, 0xa6, 0x06, 0x00, 0x01, 0x00, 0xa8, - 0x06, 0x00, 0x02, 0x00, 0xaa, 0x06, 0x00, 0x03, - 0x00, 0xac, 0x06, 0x00, 0x04, 0x00, 0x38, 0x97, + 0x05, 0xda, 0x04, 0x02, 0x05, 0x02, 0x05, 0x00, + 0x00, 0x77, 0x07, 0xa6, 0x06, 0x00, 0x01, 0x00, + 0xa8, 0x06, 0x00, 0x01, 0x00, 0xaa, 0x06, 0x00, + 0x00, 0x00, 0xac, 0x06, 0x00, 0x01, 0x00, 0xae, + 0x06, 0x00, 0x02, 0x00, 0xb0, 0x06, 0x00, 0x03, + 0x00, 0xb2, 0x06, 0x00, 0x04, 0x00, 0x38, 0x9a, 0x01, 0x00, 0x00, 0x42, 0x67, 0x00, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xcc, 0xb5, 0xc9, 0xc5, 0xc8, 0xe9, 0xa3, 0xea, 0x60, 0xc8, 0xc5, 0x47, - 0xcb, 0x38, 0x92, 0x00, 0x00, 0x00, 0x42, 0x66, + 0xcb, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0x66, 0x00, 0x00, 0x00, 0xd2, 0xc7, 0x24, 0x02, 0x00, 0xc4, 0x04, 0x09, 0x43, 0x3f, 0x00, 0x00, 0x00, 0x04, 0x40, 0x00, 0x00, 0x00, 0xc2, 0x04, 0xa8, @@ -1130,102 +1130,102 @@ const uint8_t qjsc_qjscalc[31967] = { 0x00, 0xf5, 0xeb, 0x11, 0xc2, 0x04, 0x09, 0x43, 0x3e, 0x00, 0x00, 0x00, 0xc2, 0x04, 0x09, 0x43, 0x3d, 0x00, 0x00, 0x00, 0xec, 0x09, 0xc2, 0x04, - 0x09, 0x43, 0x3d, 0x00, 0x00, 0x00, 0x38, 0x92, + 0x09, 0x43, 0x3d, 0x00, 0x00, 0x00, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0x65, 0x00, 0x00, 0x00, 0xd1, 0xc7, 0xc2, 0x04, 0x24, 0x03, 0x00, 0x0e, - 0x93, 0x00, 0xec, 0x9c, 0x29, 0xd2, 0x04, 0x23, + 0x93, 0x00, 0xec, 0x9c, 0x29, 0xd8, 0x04, 0x23, 0x0e, 0x04, 0x4e, 0x2b, 0x17, 0x58, 0x21, 0x35, 0x35, 0x2b, 0x2c, 0x0e, 0x2c, 0x5d, 0x17, 0x0e, - 0x41, 0x06, 0x05, 0xd6, 0x04, 0x02, 0x09, 0x01, - 0x07, 0x00, 0x00, 0xfd, 0x01, 0x0b, 0xb0, 0x06, - 0x00, 0x01, 0x00, 0xb2, 0x06, 0x00, 0x01, 0x00, - 0xb4, 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, 0x00, - 0x01, 0x00, 0xb6, 0x06, 0x00, 0x02, 0x00, 0xb8, - 0x06, 0x00, 0x03, 0x00, 0xba, 0x06, 0x00, 0x04, - 0x00, 0xbc, 0x06, 0x00, 0x05, 0x00, 0xa0, 0x06, - 0x00, 0x06, 0x00, 0xaa, 0x06, 0x00, 0x07, 0x00, - 0xbe, 0x06, 0x00, 0x08, 0x00, 0x0d, 0x01, 0x00, - 0xd6, 0x04, 0x7c, 0x01, 0x00, 0x00, 0x04, 0x7d, + 0x41, 0x06, 0x05, 0xdc, 0x04, 0x02, 0x09, 0x01, + 0x07, 0x00, 0x00, 0xfd, 0x01, 0x0b, 0xb6, 0x06, + 0x00, 0x01, 0x00, 0xb8, 0x06, 0x00, 0x01, 0x00, + 0xba, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, 0x00, + 0x01, 0x00, 0xbc, 0x06, 0x00, 0x02, 0x00, 0xbe, + 0x06, 0x00, 0x03, 0x00, 0xc0, 0x06, 0x00, 0x04, + 0x00, 0xc2, 0x06, 0x00, 0x05, 0x00, 0xa6, 0x06, + 0x00, 0x06, 0x00, 0xb0, 0x06, 0x00, 0x07, 0x00, + 0xc4, 0x06, 0x00, 0x08, 0x00, 0x0d, 0x01, 0x00, + 0xd6, 0x04, 0x7f, 0x01, 0x00, 0x00, 0x04, 0x80, 0x01, 0x00, 0x00, 0x26, 0x02, 0x00, 0xc3, 0x08, 0x26, 0x00, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xd2, 0xe9, 0xa3, 0x69, 0xb6, 0x00, 0x00, 0x00, 0xd2, - 0xc6, 0x47, 0xcf, 0x41, 0x7c, 0x01, 0x00, 0x00, - 0x11, 0xeb, 0x08, 0x0e, 0xc7, 0x41, 0x7d, 0x01, + 0xc6, 0x47, 0xcf, 0x41, 0x7f, 0x01, 0x00, 0x00, + 0x11, 0xeb, 0x08, 0x0e, 0xc7, 0x41, 0x80, 0x01, 0x00, 0x00, 0x69, 0x8e, 0x00, 0x00, 0x00, 0xc7, - 0x41, 0x7c, 0x01, 0x00, 0x00, 0xc7, 0x41, 0x7d, + 0x41, 0x7f, 0x01, 0x00, 0x00, 0xc7, 0x41, 0x80, 0x01, 0x00, 0x00, 0x26, 0x02, 0x00, 0xc3, 0x07, - 0xc7, 0x04, 0x7c, 0x01, 0x00, 0x00, 0x98, 0x0e, - 0xc7, 0x04, 0x7d, 0x01, 0x00, 0x00, 0x98, 0x0e, + 0xc7, 0x04, 0x7f, 0x01, 0x00, 0x00, 0x98, 0x0e, + 0xc7, 0x04, 0x80, 0x01, 0x00, 0x00, 0x98, 0x0e, 0xb5, 0xc3, 0x05, 0xc2, 0x05, 0xb7, 0xa3, 0xea, 0x6c, 0xc2, 0x07, 0xc2, 0x05, 0x47, 0xc4, 0x06, - 0xea, 0x54, 0x38, 0x93, 0x00, 0x00, 0x00, 0x42, - 0xa0, 0x01, 0x00, 0x00, 0xc2, 0x06, 0x24, 0x01, + 0xea, 0x54, 0x38, 0x96, 0x00, 0x00, 0x00, 0x42, + 0xa3, 0x01, 0x00, 0x00, 0xc2, 0x06, 0x24, 0x01, 0x00, 0x96, 0xea, 0x08, 0xc2, 0x06, 0x26, 0x01, 0x00, 0xc3, 0x06, 0xb5, 0xcc, 0xc8, 0xc2, 0x06, 0xe9, 0xa3, 0xea, 0x32, 0x0b, 0xc3, 0x04, 0x38, - 0x92, 0x00, 0x00, 0x00, 0x42, 0xa1, 0x01, 0x00, + 0x95, 0x00, 0x00, 0x00, 0x42, 0xa4, 0x01, 0x00, 0x00, 0xc2, 0x04, 0xc7, 0x24, 0x02, 0x00, 0x0e, 0xc2, 0x04, 0xc2, 0x08, 0xc2, 0x05, 0x47, 0x71, - 0xc2, 0x06, 0xc8, 0x47, 0x49, 0xc5, 0x42, 0xa2, + 0xc2, 0x06, 0xc8, 0x47, 0x49, 0xc5, 0x42, 0xa5, 0x01, 0x00, 0x00, 0xc2, 0x04, 0x24, 0x01, 0x00, 0x0e, 0x93, 0x03, 0xec, 0xc9, 0x93, 0x05, 0xec, - 0x9b, 0xc5, 0x42, 0xa2, 0x01, 0x00, 0x00, 0xc7, + 0x9b, 0xc5, 0x42, 0xa5, 0x01, 0x00, 0x00, 0xc7, 0x24, 0x01, 0x00, 0x0e, 0x93, 0x01, 0xed, 0x47, - 0xff, 0xd1, 0x38, 0x98, 0x00, 0x00, 0x00, 0x41, - 0xa3, 0x01, 0x00, 0x00, 0x71, 0x38, 0xb4, 0x00, - 0x00, 0x00, 0x41, 0xa4, 0x01, 0x00, 0x00, 0x42, - 0xa5, 0x01, 0x00, 0x00, 0x07, 0x26, 0x01, 0x00, + 0xff, 0xd1, 0x38, 0x9b, 0x00, 0x00, 0x00, 0x41, + 0xa6, 0x01, 0x00, 0x00, 0x71, 0x38, 0xb7, 0x00, + 0x00, 0x00, 0x41, 0xa7, 0x01, 0x00, 0x00, 0x42, + 0xa8, 0x01, 0x00, 0x00, 0x07, 0x26, 0x01, 0x00, 0xb6, 0xc5, 0x52, 0x0e, 0x18, 0x27, 0x00, 0x00, - 0x49, 0x29, 0xd2, 0x04, 0x3a, 0x19, 0x19, 0x4e, + 0x49, 0x29, 0xd8, 0x04, 0x3a, 0x19, 0x19, 0x4e, 0x17, 0x3a, 0x17, 0x67, 0x58, 0x2b, 0x2b, 0x30, 0x26, 0x0d, 0x5d, 0x27, 0x30, 0x12, 0x58, 0x44, 0x3f, 0x18, 0x18, 0x3b, 0x1c, 0x3f, 0x8f, 0x0e, - 0x43, 0x06, 0x05, 0xd8, 0x04, 0x02, 0x03, 0x02, - 0x04, 0x00, 0x00, 0xbc, 0x01, 0x05, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, - 0xcc, 0x06, 0x00, 0x00, 0x00, 0xce, 0x06, 0x00, - 0x01, 0x00, 0xa4, 0x06, 0x00, 0x02, 0x00, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x42, 0x74, 0x01, 0x00, + 0x43, 0x06, 0x05, 0xde, 0x04, 0x02, 0x03, 0x02, + 0x04, 0x00, 0x00, 0xbc, 0x01, 0x05, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0xd2, 0x06, 0x00, 0x00, 0x00, 0xd4, 0x06, 0x00, + 0x01, 0x00, 0xaa, 0x06, 0x00, 0x02, 0x00, 0x38, + 0xe1, 0x00, 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0x96, 0xea, 0x12, - 0x38, 0xfe, 0x00, 0x00, 0x00, 0x38, 0xff, 0x00, + 0x38, 0x01, 0x01, 0x00, 0x00, 0x38, 0x02, 0x01, 0x00, 0x00, 0xd1, 0xef, 0xd2, 0x9a, 0x23, 0x01, - 0x00, 0x38, 0x93, 0x00, 0x00, 0x00, 0x42, 0xa0, + 0x00, 0x38, 0x96, 0x00, 0x00, 0x00, 0x42, 0xa3, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xea, - 0x2d, 0xd1, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xa7, - 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, 0xe6, 0x00, - 0x00, 0x00, 0xa7, 0x96, 0xea, 0x18, 0x38, 0x16, - 0x01, 0x00, 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, - 0x42, 0x8e, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, + 0x2d, 0xd1, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xa7, + 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, 0xe9, 0x00, + 0x00, 0x00, 0xa7, 0x96, 0xea, 0x18, 0x38, 0x19, + 0x01, 0x00, 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, + 0x42, 0x91, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xef, 0xc9, 0xec, 0x03, 0xb6, 0xc9, 0xd2, 0xb5, 0xa9, 0xea, 0x03, 0xc5, 0x28, 0x09, 0xca, 0xd2, 0xb5, 0xa3, 0xea, 0x06, 0x0a, 0xca, 0xd2, - 0x8c, 0xd6, 0xd1, 0xc9, 0x38, 0xde, 0x00, 0x00, - 0x00, 0x42, 0xa8, 0x01, 0x00, 0x00, 0xd2, 0x24, + 0x8c, 0xd6, 0xd1, 0xc9, 0x38, 0xe1, 0x00, 0x00, + 0x00, 0x42, 0xab, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xb6, 0x9e, 0xcb, 0xc7, 0xb5, 0xa6, 0xea, 0x14, 0xc5, 0xc5, 0x9a, 0xc9, 0xd2, 0xc7, 0xa1, 0xb6, 0xad, 0xea, 0x05, 0xc5, 0xd1, 0x9a, 0xc9, 0x92, 0x02, 0xec, 0xe9, 0xc6, 0xea, 0x1a, - 0xc5, 0x41, 0xf9, 0x00, 0x00, 0x00, 0xf5, 0xeb, - 0x07, 0x04, 0xa9, 0x01, 0x00, 0x00, 0x2f, 0xc5, - 0x42, 0xf9, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, - 0xc9, 0xc5, 0x28, 0xd2, 0x04, 0x5d, 0x18, 0x04, + 0xc5, 0x41, 0xfc, 0x00, 0x00, 0x00, 0xf5, 0xeb, + 0x07, 0x04, 0xac, 0x01, 0x00, 0x00, 0x2f, 0xc5, + 0x42, 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, + 0xc9, 0xc5, 0x28, 0xd8, 0x04, 0x5d, 0x18, 0x04, 0x58, 0x59, 0x8a, 0x35, 0x6c, 0x0d, 0x0e, 0x1c, 0x0d, 0x0d, 0x1c, 0x0d, 0x13, 0x0d, 0x71, 0x17, 0x26, 0x17, 0x17, 0x12, 0x30, 0x21, 0x36, 0x0e, - 0x43, 0x06, 0x05, 0xdc, 0x04, 0x02, 0x06, 0x02, - 0x05, 0x01, 0x00, 0x72, 0x08, 0xd4, 0x06, 0x00, - 0x01, 0x00, 0xd6, 0x06, 0x00, 0x01, 0x00, 0xd8, - 0x06, 0x00, 0x00, 0x00, 0xcc, 0x06, 0x00, 0x01, - 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, 0xa4, 0x06, - 0x00, 0x03, 0x00, 0xb8, 0x06, 0x00, 0x04, 0x00, - 0xb6, 0x06, 0x00, 0x05, 0x00, 0xda, 0x04, 0x03, + 0x43, 0x06, 0x05, 0xe2, 0x04, 0x02, 0x06, 0x02, + 0x05, 0x01, 0x00, 0x72, 0x08, 0xda, 0x06, 0x00, + 0x01, 0x00, 0xdc, 0x06, 0x00, 0x01, 0x00, 0xde, + 0x06, 0x00, 0x00, 0x00, 0xd2, 0x06, 0x00, 0x01, + 0x00, 0xe0, 0x06, 0x00, 0x02, 0x00, 0xaa, 0x06, + 0x00, 0x03, 0x00, 0xbe, 0x06, 0x00, 0x04, 0x00, + 0xbc, 0x06, 0x00, 0x05, 0x00, 0xe0, 0x04, 0x03, 0x01, 0xd1, 0xb6, 0x9e, 0xc9, 0xb5, 0xcb, 0xc5, 0xb6, 0xad, 0xb5, 0xa9, 0xea, 0x09, 0xc5, 0xb6, 0xa1, 0xc9, 0x93, 0x02, 0xec, 0xf2, 0xdd, 0xe9, 0xd2, 0xa3, 0xea, 0x04, 0xdd, 0xe9, 0xd6, 0xb5, 0xc3, 0x04, 0xc2, 0x04, 0xd2, 0xa3, 0xea, 0x4a, - 0xdd, 0xc2, 0x04, 0x47, 0xc3, 0x05, 0x38, 0xde, - 0x00, 0x00, 0x00, 0x42, 0xee, 0x00, 0x00, 0x00, + 0xdd, 0xc2, 0x04, 0x47, 0xc3, 0x05, 0x38, 0xe1, + 0x00, 0x00, 0x00, 0x42, 0xf1, 0x00, 0x00, 0x00, 0xc2, 0x05, 0xc5, 0xd1, 0x24, 0x03, 0x00, 0xce, 0xb6, 0xa9, 0x11, 0xeb, 0x07, 0x0e, 0xc6, 0xd1, 0xb6, 0x9e, 0xa9, 0xeb, 0x21, 0xb6, 0xcc, 0xc8, @@ -1233,113 +1233,113 @@ const uint8_t qjsc_qjscalc[31967] = { 0xb2, 0xce, 0xb6, 0xa9, 0xea, 0x03, 0x09, 0x28, 0xc6, 0xd1, 0xb6, 0x9e, 0xa9, 0xeb, 0x07, 0x93, 0x03, 0xec, 0xe5, 0x09, 0x28, 0x93, 0x04, 0xec, - 0xb2, 0x0a, 0x28, 0xd2, 0x04, 0x7f, 0x17, 0x04, + 0xb2, 0x0a, 0x28, 0xd8, 0x04, 0x7f, 0x17, 0x04, 0x17, 0x0d, 0x26, 0x17, 0x0d, 0x0d, 0x21, 0x12, 0x30, 0x21, 0x5d, 0x3a, 0x0d, 0x26, 0x21, 0x17, 0x0d, 0x1c, 0x0d, 0x17, 0x08, 0x1c, 0x0e, 0x43, - 0x06, 0x05, 0xde, 0x04, 0x02, 0x02, 0x02, 0x04, - 0x01, 0x00, 0x2e, 0x04, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0xa4, 0x06, - 0x00, 0x00, 0x00, 0xcc, 0x06, 0x00, 0x01, 0x00, - 0xde, 0x04, 0x05, 0x01, 0xd2, 0xd1, 0x9e, 0xba, + 0x06, 0x05, 0xe4, 0x04, 0x02, 0x02, 0x02, 0x04, + 0x01, 0x00, 0x2e, 0x04, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0xaa, 0x06, + 0x00, 0x00, 0x00, 0xd2, 0x06, 0x00, 0x01, 0x00, + 0xe4, 0x04, 0x05, 0x01, 0xd2, 0xd1, 0x9e, 0xba, 0xa4, 0xea, 0x16, 0xd1, 0xca, 0xd1, 0xb6, 0x9d, 0xc9, 0xc5, 0xd2, 0xa4, 0xea, 0x09, 0xc6, 0xc5, 0x9a, 0xca, 0x93, 0x00, 0xec, 0xf4, 0xc6, 0x28, 0xd1, 0xd2, 0x9d, 0xb6, 0xa1, 0xc9, 0xdd, 0xd1, 0xc5, 0xf0, 0xdd, 0xc5, 0xb6, 0x9d, 0xd2, 0xf0, - 0x9a, 0x28, 0xd2, 0x04, 0x9a, 0x01, 0x08, 0x04, + 0x9a, 0x28, 0xd8, 0x04, 0x9a, 0x01, 0x08, 0x04, 0x26, 0x0d, 0x30, 0x2b, 0x08, 0x0a, 0x21, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x00, 0x02, 0x04, - 0x00, 0x00, 0x26, 0x02, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, 0x70, - 0x01, 0x00, 0x00, 0xea, 0x10, 0x38, 0xe0, 0x00, - 0x00, 0x00, 0x42, 0x7e, 0x01, 0x00, 0x00, 0xd1, - 0xd2, 0x25, 0x02, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0xd1, 0xef, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0xd2, 0xef, 0x9b, 0x28, 0xd2, 0x04, 0xac, 0x01, + 0x00, 0x00, 0x26, 0x02, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, 0x73, + 0x01, 0x00, 0x00, 0xea, 0x10, 0x38, 0xe3, 0x00, + 0x00, 0x00, 0x42, 0x81, 0x01, 0x00, 0x00, 0xd1, + 0xd2, 0x25, 0x02, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0xd1, 0xef, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0xd2, 0xef, 0x9b, 0x28, 0xd8, 0x04, 0xac, 0x01, 0x03, 0x03, 0x26, 0x4f, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x00, 0x02, 0x03, 0x01, 0x00, 0x1d, - 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, - 0x00, 0x01, 0x00, 0xd8, 0x04, 0x02, 0x01, 0x38, - 0x70, 0x01, 0x00, 0x00, 0xea, 0x07, 0xdd, 0xd1, - 0xd2, 0x23, 0x02, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0xd1, 0xef, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0xd2, 0xef, 0x9f, 0x28, 0xd2, 0x04, 0xb3, 0x01, + 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0xde, 0x04, 0x02, 0x01, 0x38, + 0x73, 0x01, 0x00, 0x00, 0xea, 0x07, 0xdd, 0xd1, + 0xd2, 0x23, 0x02, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0xd1, 0xef, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0xd2, 0xef, 0x9f, 0x28, 0xd8, 0x04, 0xb3, 0x01, 0x03, 0x03, 0x26, 0x22, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x03, 0x00, 0x00, 0x27, - 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x97, + 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x97, 0x04, 0x8b, 0x00, 0x00, 0x00, 0xab, 0x11, 0xeb, 0x1c, 0x0e, 0xd1, 0x97, 0x04, 0x46, 0x00, 0x00, - 0x00, 0xab, 0x11, 0xea, 0x10, 0x0e, 0x38, 0x95, - 0x00, 0x00, 0x00, 0x42, 0xae, 0x01, 0x00, 0x00, - 0xd1, 0x24, 0x01, 0x00, 0x28, 0xd2, 0x04, 0xbd, + 0x00, 0xab, 0x11, 0xea, 0x10, 0x0e, 0x38, 0x98, + 0x00, 0x00, 0x00, 0x42, 0xb1, 0x01, 0x00, 0x00, + 0xd1, 0x24, 0x01, 0x00, 0x28, 0xd8, 0x04, 0xbd, 0x01, 0x02, 0x04, 0x3f, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x01, 0x02, 0x02, 0x00, 0x00, 0x11, - 0x03, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, - 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, 0x00, 0x00, + 0x03, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x00, 0x00, 0xd2, 0xb5, 0xaa, 0xea, 0x0b, 0xd1, 0xd2, 0xb2, 0xc9, 0xd2, 0xd5, 0xc5, 0xd6, 0xec, 0xf2, 0xd1, - 0x28, 0xd2, 0x04, 0xc2, 0x01, 0x06, 0x04, 0x1c, + 0x28, 0xd8, 0x04, 0xc2, 0x01, 0x06, 0x04, 0x1c, 0x17, 0x0d, 0x0d, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x03, 0x01, 0x00, 0x0c, - 0x01, 0xd4, 0x06, 0x00, 0x01, 0x00, 0xde, 0x04, + 0x01, 0xda, 0x06, 0x00, 0x01, 0x00, 0xe4, 0x04, 0x05, 0x01, 0xd1, 0xb5, 0xa4, 0xea, 0x03, 0xb6, - 0x28, 0xdd, 0xb6, 0xd1, 0xf0, 0x28, 0xd2, 0x04, + 0x28, 0xdd, 0xb6, 0xd1, 0xf0, 0x28, 0xd8, 0x04, 0xcb, 0x01, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x00, 0x02, 0x06, 0x01, 0x00, 0x39, - 0x02, 0xd4, 0x06, 0x00, 0x01, 0x00, 0xbc, 0x06, - 0x00, 0x01, 0x00, 0xde, 0x04, 0x05, 0x01, 0xd2, + 0x02, 0xda, 0x06, 0x00, 0x01, 0x00, 0xc2, 0x06, + 0x00, 0x01, 0x00, 0xe4, 0x04, 0x05, 0x01, 0xd2, 0xb5, 0xa3, 0x11, 0xeb, 0x05, 0x0e, 0xd2, 0xd1, 0xa5, 0xea, 0x03, 0xb5, 0x28, 0xd2, 0xd1, 0xd2, 0x9e, 0xa5, 0xea, 0x05, 0xd1, 0xd2, 0x9e, 0xd6, 0xd2, 0xb5, 0xa9, 0xea, 0x03, 0xb6, 0x28, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x42, 0xaf, 0x01, 0x00, + 0xe1, 0x00, 0x00, 0x00, 0x42, 0xb2, 0x01, 0x00, 0x00, 0xdd, 0xd1, 0xd2, 0x9e, 0xb6, 0x9d, 0xd1, 0xf0, 0xdd, 0xb6, 0xd2, 0xf0, 0x25, 0x02, 0x00, - 0xd2, 0x04, 0xcf, 0x01, 0x07, 0x03, 0x3f, 0x0d, + 0xd8, 0x04, 0xcf, 0x01, 0x07, 0x03, 0x3f, 0x0d, 0x26, 0x17, 0x1c, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x06, 0x02, 0x04, 0x00, 0x00, 0x4f, - 0x08, 0xe0, 0x06, 0x00, 0x01, 0x00, 0xe2, 0x06, - 0x00, 0x01, 0x00, 0xe4, 0x06, 0x00, 0x00, 0x00, - 0xe6, 0x06, 0x00, 0x01, 0x00, 0xe8, 0x06, 0x00, - 0x02, 0x00, 0xb6, 0x06, 0x00, 0x03, 0x00, 0xea, - 0x06, 0x00, 0x04, 0x00, 0xd6, 0x06, 0x00, 0x05, + 0x08, 0xe6, 0x06, 0x00, 0x01, 0x00, 0xe8, 0x06, + 0x00, 0x01, 0x00, 0xea, 0x06, 0x00, 0x00, 0x00, + 0xec, 0x06, 0x00, 0x01, 0x00, 0xee, 0x06, 0x00, + 0x02, 0x00, 0xbc, 0x06, 0x00, 0x03, 0x00, 0xf0, + 0x06, 0x00, 0x04, 0x00, 0xdc, 0x06, 0x00, 0x05, 0x00, 0xd1, 0xca, 0xd2, 0xcb, 0xb6, 0xc3, 0x04, 0xb5, 0xcc, 0xc6, 0xb5, 0xaa, 0xea, 0x2d, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x42, 0xb6, 0x01, 0x00, + 0xe1, 0x00, 0x00, 0x00, 0x42, 0xb9, 0x01, 0x00, 0x00, 0xc7, 0xc6, 0x24, 0x02, 0x00, 0xc4, 0x05, 0xb5, 0x47, 0xc9, 0xc6, 0xcb, 0xc2, 0x05, 0xb6, 0x47, 0xca, 0xc2, 0x04, 0xc3, 0x05, 0xc8, 0xc5, 0xc2, 0x04, 0x9a, 0x9e, 0xc3, 0x04, 0xc2, 0x05, 0xcc, 0xec, 0xd0, 0xc7, 0xb6, 0xaa, 0xea, 0x0d, - 0x38, 0xc9, 0x00, 0x00, 0x00, 0x04, 0xb7, 0x01, + 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xba, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xc8, 0xd2, 0xb2, 0x28, - 0xd2, 0x04, 0xd9, 0x01, 0x10, 0x04, 0x0d, 0x0d, + 0xd8, 0x04, 0xd9, 0x01, 0x10, 0x04, 0x0d, 0x0d, 0x12, 0x0d, 0x1c, 0x58, 0x12, 0x0d, 0x1c, 0x17, 0x2b, 0x12, 0x0e, 0x1c, 0x3f, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x03, 0x01, 0x03, 0x04, 0x00, 0x00, - 0x3e, 0x04, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0xf0, 0x06, 0x00, 0x01, - 0x00, 0xcc, 0x06, 0x00, 0x00, 0x00, 0xd2, 0xb5, + 0x3e, 0x04, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0xf6, 0x06, 0x00, 0x01, + 0x00, 0xd2, 0x06, 0x00, 0x00, 0x00, 0xd2, 0xb5, 0xa9, 0xea, 0x03, 0xb6, 0x28, 0xd2, 0xb5, 0xa3, - 0xea, 0x14, 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, - 0xef, 0x00, 0x00, 0x00, 0xd1, 0xd3, 0x24, 0x02, + 0xea, 0x14, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, + 0xf2, 0x00, 0x00, 0x00, 0xd1, 0xd3, 0x24, 0x02, 0x00, 0xd5, 0xd2, 0x8c, 0xd6, 0xb6, 0xc9, 0xd2, 0xb6, 0xad, 0xea, 0x07, 0xc5, 0xd1, 0x9a, 0xd3, 0xb2, 0xc9, 0xd2, 0xb6, 0xa1, 0xda, 0xb5, 0xa9, 0xeb, 0x09, 0xd1, 0xd1, 0x9a, 0xd3, 0xb2, 0xd5, - 0xec, 0xe6, 0xc5, 0x28, 0xd2, 0x04, 0xee, 0x01, + 0xec, 0xe6, 0xc5, 0x28, 0xd8, 0x04, 0xee, 0x01, 0x0e, 0x04, 0x1c, 0x0d, 0x1c, 0x53, 0x13, 0x0e, 0x1c, 0x22, 0x17, 0x0d, 0x0d, 0x21, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x03, 0x02, 0x03, - 0x02, 0x00, 0x62, 0x05, 0xd4, 0x06, 0x00, 0x01, - 0x00, 0xd6, 0x06, 0x00, 0x01, 0x00, 0xa4, 0x06, - 0x00, 0x00, 0x00, 0xd8, 0x06, 0x00, 0x01, 0x00, - 0xf2, 0x06, 0x00, 0x02, 0x00, 0xda, 0x04, 0x03, - 0x01, 0xdc, 0x04, 0x04, 0x01, 0x38, 0xde, 0x00, - 0x00, 0x00, 0x42, 0x74, 0x01, 0x00, 0x00, 0xd1, - 0x24, 0x01, 0x00, 0x96, 0xea, 0x0d, 0x38, 0xcc, - 0x00, 0x00, 0x00, 0x04, 0xba, 0x01, 0x00, 0x00, + 0x02, 0x00, 0x62, 0x05, 0xda, 0x06, 0x00, 0x01, + 0x00, 0xdc, 0x06, 0x00, 0x01, 0x00, 0xaa, 0x06, + 0x00, 0x00, 0x00, 0xde, 0x06, 0x00, 0x01, 0x00, + 0xf8, 0x06, 0x00, 0x02, 0x00, 0xe0, 0x04, 0x03, + 0x01, 0xe2, 0x04, 0x04, 0x01, 0x38, 0xe1, 0x00, + 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd1, + 0x24, 0x01, 0x00, 0x96, 0xea, 0x0d, 0x38, 0xcf, + 0x00, 0x00, 0x00, 0x04, 0xbd, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xb6, 0xa4, 0xea, 0x03, 0x09, 0x28, 0xdd, 0xe9, 0xcb, 0xb5, 0xc9, 0xc5, 0xc7, 0xa3, 0xea, 0x1f, 0xdd, 0xc5, 0x47, 0xce, 0xd1, @@ -1348,48 +1348,48 @@ const uint8_t qjsc_qjscalc[31967] = { 0xa9, 0xea, 0x03, 0x09, 0x28, 0x93, 0x00, 0xec, 0xde, 0xd1, 0xc6, 0xc6, 0x9a, 0xa3, 0xea, 0x03, 0x0a, 0x28, 0xd2, 0xf4, 0xea, 0x04, 0xbd, 0x40, - 0xd6, 0xde, 0xd1, 0xd2, 0x23, 0x02, 0x00, 0xd2, + 0xd6, 0xde, 0xd1, 0xd2, 0x23, 0x02, 0x00, 0xd8, 0x04, 0x85, 0x02, 0x13, 0x04, 0x58, 0x3f, 0x1c, 0x0d, 0x13, 0x26, 0x17, 0x17, 0x0d, 0x1c, 0x0d, 0x26, 0x0d, 0x17, 0x26, 0x0d, 0x17, 0x12, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x03, - 0x00, 0x00, 0x39, 0x01, 0xd4, 0x06, 0x00, 0x01, - 0x00, 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0x74, + 0x00, 0x00, 0x39, 0x01, 0xda, 0x06, 0x00, 0x01, + 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x96, - 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, - 0xba, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xb6, + 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, + 0xbd, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xb6, 0xa3, 0xea, 0x03, 0xb6, 0xd5, 0xd1, 0x8f, 0xd5, - 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0x26, 0x01, + 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0x29, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xea, 0xee, - 0xd1, 0x28, 0xd2, 0x04, 0x9c, 0x02, 0x08, 0x03, + 0xd1, 0x28, 0xd8, 0x04, 0x9c, 0x02, 0x08, 0x03, 0x58, 0x3f, 0x1c, 0x0e, 0x12, 0x53, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x02, 0x01, 0x04, - 0x00, 0x00, 0xbb, 0x01, 0x03, 0xd4, 0x06, 0x00, - 0x01, 0x00, 0xcc, 0x06, 0x00, 0x00, 0x00, 0xd8, - 0x06, 0x00, 0x01, 0x00, 0x38, 0xde, 0x00, 0x00, - 0x00, 0x42, 0x74, 0x01, 0x00, 0x00, 0xd1, 0x24, - 0x01, 0x00, 0x96, 0xea, 0x0d, 0x38, 0xcc, 0x00, - 0x00, 0x00, 0x04, 0xba, 0x01, 0x00, 0x00, 0xef, - 0x2f, 0x26, 0x00, 0x00, 0xc9, 0x38, 0xf6, 0x00, + 0x00, 0x00, 0xbb, 0x01, 0x03, 0xda, 0x06, 0x00, + 0x01, 0x00, 0xd2, 0x06, 0x00, 0x00, 0x00, 0xde, + 0x06, 0x00, 0x01, 0x00, 0x38, 0xe1, 0x00, 0x00, + 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd1, 0x24, + 0x01, 0x00, 0x96, 0xea, 0x0d, 0x38, 0xcf, 0x00, + 0x00, 0x00, 0x04, 0xbd, 0x01, 0x00, 0x00, 0xef, + 0x2f, 0x26, 0x00, 0x00, 0xc9, 0x38, 0xf9, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xb6, 0xa4, 0xea, 0x0e, - 0xc5, 0x42, 0xa2, 0x01, 0x00, 0x00, 0xd1, 0x24, + 0xc5, 0x42, 0xa5, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x0e, 0xc5, 0x28, 0xd1, 0xb5, 0xa3, - 0xea, 0x0f, 0xc5, 0x42, 0xa2, 0x01, 0x00, 0x00, + 0xea, 0x0f, 0xc5, 0x42, 0xa5, 0x01, 0x00, 0x00, 0xb4, 0x24, 0x01, 0x00, 0x0e, 0xd1, 0x8c, 0xd5, 0xd1, 0xb7, 0xb2, 0xb5, 0xa9, 0xea, 0x12, 0xd1, - 0xb6, 0xa1, 0xd5, 0xc5, 0x42, 0xa2, 0x01, 0x00, + 0xb6, 0xa1, 0xd5, 0xc5, 0x42, 0xa5, 0x01, 0x00, 0x00, 0xb7, 0x24, 0x01, 0x00, 0x0e, 0xec, 0xe9, 0xb8, 0xca, 0xd1, 0xb6, 0xaa, 0xea, 0x4f, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x42, 0x26, 0x01, 0x00, + 0xe1, 0x00, 0x00, 0x00, 0x42, 0x29, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xea, 0x0e, 0xc5, - 0x42, 0xa2, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, + 0x42, 0xa5, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x0e, 0xec, 0x32, 0xd1, 0xc6, 0xb2, 0xb5, 0xa9, 0xeb, 0x06, 0xb7, 0x94, 0x01, 0xec, 0xf5, - 0xc5, 0x42, 0xa2, 0x01, 0x00, 0x00, 0xc6, 0x24, - 0x01, 0x00, 0x0e, 0x38, 0xde, 0x00, 0x00, 0x00, - 0x42, 0xaf, 0x01, 0x00, 0x00, 0xd1, 0xc6, 0x24, + 0xc5, 0x42, 0xa5, 0x01, 0x00, 0x00, 0xc6, 0x24, + 0x01, 0x00, 0x0e, 0x38, 0xe1, 0x00, 0x00, 0x00, + 0x42, 0xb2, 0x01, 0x00, 0x00, 0xd1, 0xc6, 0x24, 0x02, 0x00, 0xd9, 0xc6, 0xb2, 0xb5, 0xaa, 0xeb, - 0x03, 0xec, 0xde, 0xec, 0xae, 0xc5, 0x28, 0xd2, + 0x03, 0xec, 0xde, 0xec, 0xae, 0xc5, 0x28, 0xd8, 0x04, 0xa7, 0x02, 0x20, 0x04, 0x58, 0x3f, 0x17, 0x3a, 0x3a, 0x08, 0x08, 0x1c, 0x3a, 0x14, 0x26, 0x17, 0x3a, 0x0e, 0x0d, 0x1c, 0x53, 0x3a, 0x00, @@ -1397,817 +1397,817 @@ const uint8_t qjsc_qjscalc[31967] = { 0x17, 0x0d, 0x0d, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x06, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xb6, - 0xc5, 0x9b, 0x28, 0xd2, 0x04, 0xd2, 0x02, 0x01, + 0xc5, 0x9b, 0x28, 0xd8, 0x04, 0xd2, 0x02, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x06, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0xc5, 0x9a, 0x28, - 0xd2, 0x04, 0xd5, 0x02, 0x01, 0x0d, 0x0e, 0x42, + 0xd8, 0x04, 0xd5, 0x02, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, - 0x00, 0x0d, 0x02, 0xe8, 0x06, 0x00, 0x00, 0x00, + 0x00, 0x0d, 0x02, 0xee, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xca, 0xc6, 0xcd, 0xb5, 0xa3, 0xea, 0x04, 0xc5, 0x8c, 0xc9, 0xc5, - 0x28, 0xd2, 0x04, 0xd8, 0x02, 0x04, 0x0d, 0x08, + 0x28, 0xd8, 0x04, 0xd8, 0x02, 0x04, 0x0d, 0x08, 0x1c, 0x12, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x04, 0x01, 0x10, - 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x28, 0xd2, + 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x28, 0xd8, 0x04, 0xde, 0x02, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x14, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0xb5, 0xa6, 0xea, 0x03, 0xb5, 0x28, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x41, 0x25, 0x01, 0x00, - 0x00, 0x28, 0xd2, 0x04, 0xe1, 0x02, 0x04, 0x0d, + 0xe2, 0x00, 0x00, 0x00, 0x41, 0x28, 0x01, 0x00, + 0x00, 0x28, 0xd8, 0x04, 0xe1, 0x02, 0x04, 0x0d, 0x1c, 0x08, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x17, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0xb5, - 0xa9, 0xea, 0x03, 0xb6, 0x28, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0x42, 0xfe, 0x00, 0x00, 0x00, 0xc5, - 0x25, 0x01, 0x00, 0xd2, 0x04, 0xe7, 0x02, 0x04, + 0xa9, 0xea, 0x03, 0xb6, 0x28, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0x42, 0x01, 0x01, 0x00, 0x00, 0xc5, + 0x25, 0x01, 0x00, 0xd8, 0x04, 0xe7, 0x02, 0x04, 0x0d, 0x1c, 0x08, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x18, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, - 0xb6, 0xa9, 0xea, 0x03, 0xb5, 0x28, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0xc5, 0xef, 0x42, 0xff, 0x00, - 0x00, 0x00, 0x25, 0x00, 0x00, 0xd2, 0x04, 0xed, + 0xb6, 0xa9, 0xea, 0x03, 0xb5, 0x28, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0xc5, 0xef, 0x42, 0x02, 0x01, + 0x00, 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xed, 0x02, 0x04, 0x0d, 0x1c, 0x08, 0x08, 0x0e, 0x43, - 0x06, 0x05, 0xc0, 0x03, 0x02, 0x05, 0x02, 0x04, - 0x00, 0x00, 0xd4, 0x01, 0x07, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0xd8, - 0x06, 0x00, 0x00, 0x00, 0xcc, 0x06, 0x00, 0x01, - 0x00, 0xa0, 0x06, 0x00, 0x02, 0x00, 0xe2, 0x01, - 0x00, 0x01, 0x00, 0xc0, 0x03, 0x00, 0x01, 0x14, + 0x06, 0x05, 0xc6, 0x03, 0x02, 0x05, 0x02, 0x04, + 0x00, 0x00, 0xd4, 0x01, 0x07, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0xde, + 0x06, 0x00, 0x00, 0x00, 0xd2, 0x06, 0x00, 0x01, + 0x00, 0xa6, 0x06, 0x00, 0x02, 0x00, 0xe2, 0x01, + 0x00, 0x01, 0x00, 0xc6, 0x03, 0x00, 0x01, 0x14, 0x0c, 0x03, 0xcc, 0x0c, 0x02, 0xc3, 0x04, 0xc8, - 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, - 0xbb, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xc2, - 0x04, 0xa7, 0xea, 0x03, 0xd1, 0x28, 0x38, 0xde, - 0x00, 0x00, 0x00, 0x42, 0x74, 0x01, 0x00, 0x00, + 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, + 0xbe, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xc2, + 0x04, 0xa7, 0xea, 0x03, 0xd1, 0x28, 0x38, 0xe1, + 0x00, 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x96, 0xea, 0x0d, 0x38, - 0xcc, 0x00, 0x00, 0x00, 0x04, 0xbc, 0x01, 0x00, + 0xcf, 0x00, 0x00, 0x00, 0x04, 0xbf, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd2, 0xf4, 0xea, 0x05, 0xb6, - 0xd6, 0xec, 0x6e, 0x38, 0xde, 0x00, 0x00, 0x00, - 0x42, 0x74, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, - 0x00, 0x96, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, - 0x00, 0x04, 0xbc, 0x01, 0x00, 0x00, 0xef, 0x2f, - 0xd2, 0xb5, 0xa9, 0xea, 0x0d, 0x38, 0xc9, 0x00, - 0x00, 0x00, 0x04, 0xbd, 0x01, 0x00, 0x00, 0xef, - 0x2f, 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0xeb, + 0xd6, 0xec, 0x6e, 0x38, 0xe1, 0x00, 0x00, 0x00, + 0x42, 0x77, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, + 0x00, 0x96, 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, + 0x00, 0x04, 0xbf, 0x01, 0x00, 0x00, 0xef, 0x2f, + 0xd2, 0xb5, 0xa9, 0xea, 0x0d, 0x38, 0xcc, 0x00, + 0x00, 0x00, 0x04, 0xc0, 0x01, 0x00, 0x00, 0xef, + 0x2f, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0xee, 0x00, 0x00, 0x00, 0xd1, 0xd2, 0x24, 0x02, 0x00, - 0xcd, 0xb6, 0xaa, 0xea, 0x21, 0x38, 0xde, 0x00, - 0x00, 0x00, 0x42, 0xaf, 0x01, 0x00, 0x00, 0xd1, - 0xc5, 0x24, 0x02, 0x00, 0xd5, 0x38, 0xde, 0x00, - 0x00, 0x00, 0x42, 0xaf, 0x01, 0x00, 0x00, 0xd2, + 0xcd, 0xb6, 0xaa, 0xea, 0x21, 0x38, 0xe1, 0x00, + 0x00, 0x00, 0x42, 0xb2, 0x01, 0x00, 0x00, 0xd1, + 0xc5, 0x24, 0x02, 0x00, 0xd5, 0x38, 0xe1, 0x00, + 0x00, 0x00, 0x42, 0xb2, 0x01, 0x00, 0x00, 0xd2, 0xc5, 0x24, 0x02, 0x00, 0xd6, 0xd2, 0xb5, 0xa3, 0xea, 0x07, 0xd1, 0x8c, 0xd5, 0xd2, 0x8c, 0xd6, - 0x38, 0x92, 0x00, 0x00, 0x00, 0x42, 0xa4, 0x01, + 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0xa7, 0x01, 0x00, 0x00, 0xc2, 0x04, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x24, 0x01, 0x00, 0xcf, 0xd1, 0x43, 0xbe, - 0x01, 0x00, 0x00, 0xc7, 0xd2, 0x43, 0xbf, 0x01, - 0x00, 0x00, 0xc7, 0x28, 0xd2, 0x04, 0xf7, 0x02, + 0x00, 0x24, 0x01, 0x00, 0xcf, 0xd1, 0x43, 0xc1, + 0x01, 0x00, 0x00, 0xc7, 0xd2, 0x43, 0xc2, 0x01, + 0x00, 0x00, 0xc7, 0x28, 0xd8, 0x04, 0xf7, 0x02, 0x1c, 0x00, 0x07, 0x08, 0x12, 0x3f, 0x21, 0x0d, 0x58, 0x3f, 0x17, 0x0d, 0x0d, 0x58, 0x3f, 0x1c, 0x3f, 0x53, 0x17, 0x53, 0x00, 0x10, 0x08, 0x1c, 0x12, 0x14, 0x6c, 0x21, 0x26, 0x0e, 0x43, 0x06, - 0x05, 0xe0, 0x04, 0x02, 0x00, 0x02, 0x05, 0x00, - 0x00, 0x45, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe0, 0x00, - 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, 0xe0, 0x00, - 0x00, 0x00, 0xd2, 0xef, 0xd6, 0x38, 0xe0, 0x00, - 0x00, 0x00, 0x42, 0x7e, 0x01, 0x00, 0x00, 0xd1, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, 0xbf, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xbe, 0x01, 0x00, 0x00, - 0x9a, 0x9d, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9a, 0x25, - 0x02, 0x00, 0xd2, 0x04, 0x9a, 0x03, 0x03, 0x03, - 0x2b, 0x2b, 0x0e, 0x43, 0x06, 0x05, 0xe2, 0x04, + 0x05, 0xe6, 0x04, 0x02, 0x00, 0x02, 0x05, 0x00, + 0x00, 0x45, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe3, 0x00, + 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, 0xe3, 0x00, + 0x00, 0x00, 0xd2, 0xef, 0xd6, 0x38, 0xe3, 0x00, + 0x00, 0x00, 0x42, 0x81, 0x01, 0x00, 0x00, 0xd1, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, 0xc2, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xc1, 0x01, 0x00, 0x00, + 0x9a, 0x9d, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9a, 0x25, + 0x02, 0x00, 0xd8, 0x04, 0x9a, 0x03, 0x03, 0x03, + 0x2b, 0x2b, 0x0e, 0x43, 0x06, 0x05, 0xe8, 0x04, 0x02, 0x00, 0x02, 0x05, 0x00, 0x00, 0x45, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0xd1, - 0xef, 0xd5, 0x38, 0xe0, 0x00, 0x00, 0x00, 0xd2, - 0xef, 0xd6, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x42, - 0x7e, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xbe, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0x9a, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0x9a, 0x9e, 0xd1, - 0x41, 0xbf, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0x9a, 0x25, 0x02, 0x00, 0xd2, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xd1, + 0xef, 0xd5, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xd2, + 0xef, 0xd6, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x42, + 0x81, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xc1, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0x9a, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0x9a, 0x9e, 0xd1, + 0x41, 0xc2, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0x9a, 0x25, 0x02, 0x00, 0xd8, 0x04, 0x9f, 0x03, 0x03, 0x03, 0x2b, 0x2b, 0x0e, - 0x43, 0x06, 0x05, 0xe4, 0x04, 0x02, 0x00, 0x02, - 0x05, 0x00, 0x00, 0x37, 0x02, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, - 0xe0, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, - 0xe0, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0x38, - 0xe0, 0x00, 0x00, 0x00, 0x42, 0x7e, 0x01, 0x00, - 0x00, 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, - 0xbf, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xbf, 0x01, - 0x00, 0x00, 0x9a, 0x25, 0x02, 0x00, 0xd2, 0x04, + 0x43, 0x06, 0x05, 0xea, 0x04, 0x02, 0x00, 0x02, + 0x05, 0x00, 0x00, 0x37, 0x02, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, + 0xe3, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, + 0xe3, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0x38, + 0xe3, 0x00, 0x00, 0x00, 0x42, 0x81, 0x01, 0x00, + 0x00, 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, + 0xc2, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xc2, 0x01, + 0x00, 0x00, 0x9a, 0x25, 0x02, 0x00, 0xd8, 0x04, 0xa4, 0x03, 0x03, 0x03, 0x2b, 0x2b, 0x0e, 0x43, - 0x06, 0x05, 0xe6, 0x04, 0x02, 0x00, 0x02, 0x05, - 0x00, 0x00, 0x37, 0x02, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe0, - 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, 0xe0, - 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0x38, 0xe0, - 0x00, 0x00, 0x00, 0x42, 0x7e, 0x01, 0x00, 0x00, - 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd2, 0x41, - 0xbf, 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0xd2, 0x41, 0xbe, 0x01, 0x00, - 0x00, 0x9a, 0x25, 0x02, 0x00, 0xd2, 0x04, 0xa9, + 0x06, 0x05, 0xec, 0x04, 0x02, 0x00, 0x02, 0x05, + 0x00, 0x00, 0x37, 0x02, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe3, + 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, 0xe3, + 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0x38, 0xe3, + 0x00, 0x00, 0x00, 0x42, 0x81, 0x01, 0x00, 0x00, + 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd2, 0x41, + 0xc2, 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0xd2, 0x41, 0xc1, 0x01, 0x00, + 0x00, 0x9a, 0x25, 0x02, 0x00, 0xd8, 0x04, 0xa9, 0x03, 0x03, 0x03, 0x2b, 0x2b, 0x0e, 0x43, 0x06, - 0x05, 0xe8, 0x04, 0x02, 0x02, 0x02, 0x06, 0x00, - 0x00, 0x3c, 0x04, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xba, 0x06, 0x00, 0x01, 0x00, 0x80, 0x07, 0x00, - 0x00, 0x00, 0x82, 0x07, 0x00, 0x01, 0x00, 0x38, - 0xe0, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xc9, 0x38, - 0xe0, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xca, 0xd1, - 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0xc2, 0x01, - 0x00, 0x00, 0xc5, 0x41, 0xbe, 0x01, 0x00, 0x00, - 0xc6, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9a, 0xc5, - 0x41, 0xbf, 0x01, 0x00, 0x00, 0xc6, 0x41, 0xbe, + 0x05, 0xee, 0x04, 0x02, 0x02, 0x02, 0x06, 0x00, + 0x00, 0x3c, 0x04, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xc0, 0x06, 0x00, 0x01, 0x00, 0x86, 0x07, 0x00, + 0x00, 0x00, 0x88, 0x07, 0x00, 0x01, 0x00, 0x38, + 0xe3, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xc9, 0x38, + 0xe3, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xca, 0xd1, + 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0xc5, 0x01, + 0x00, 0x00, 0xc5, 0x41, 0xc1, 0x01, 0x00, 0x00, + 0xc6, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9a, 0xc5, + 0x41, 0xc2, 0x01, 0x00, 0x00, 0xc6, 0x41, 0xc1, 0x01, 0x00, 0x00, 0x9a, 0x24, 0x02, 0x00, 0xd2, - 0x9a, 0x9e, 0x28, 0xd2, 0x04, 0xae, 0x03, 0x03, - 0x03, 0x2b, 0x2b, 0x0e, 0x43, 0x06, 0x05, 0xea, + 0x9a, 0x9e, 0x28, 0xd8, 0x04, 0xae, 0x03, 0x03, + 0x03, 0x2b, 0x2b, 0x0e, 0x43, 0x06, 0x05, 0xf0, 0x04, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x2f, - 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, - 0x00, 0x01, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, - 0xd1, 0xef, 0xd5, 0x38, 0xe0, 0x00, 0x00, 0x00, - 0xd2, 0xef, 0xd6, 0xd1, 0x41, 0xbe, 0x01, 0x00, - 0x00, 0xd2, 0x41, 0xbe, 0x01, 0x00, 0x00, 0xa9, - 0x11, 0xea, 0x0f, 0x0e, 0xd1, 0x41, 0xbf, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0xa9, 0x28, 0xd2, 0x04, 0xb3, 0x03, 0x03, 0x03, - 0x2b, 0x2c, 0x0e, 0x43, 0x06, 0x05, 0xec, 0x04, + 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, + 0xd1, 0xef, 0xd5, 0x38, 0xe3, 0x00, 0x00, 0x00, + 0xd2, 0xef, 0xd6, 0xd1, 0x41, 0xc1, 0x01, 0x00, + 0x00, 0xd2, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xa9, + 0x11, 0xea, 0x0f, 0x0e, 0xd1, 0x41, 0xc2, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0xa9, 0x28, 0xd8, 0x04, 0xb3, 0x03, 0x03, 0x03, + 0x2b, 0x2c, 0x0e, 0x43, 0x06, 0x05, 0xf2, 0x04, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, 0x2c, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0xd1, - 0xef, 0xd5, 0x38, 0xe0, 0x00, 0x00, 0x00, 0xd2, - 0xef, 0xd6, 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9a, 0xd2, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0x9a, 0xa3, 0x28, 0xd2, 0x04, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xd1, + 0xef, 0xd5, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xd2, + 0xef, 0xd6, 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9a, 0xd2, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0x9a, 0xa3, 0x28, 0xd8, 0x04, 0xb9, 0x03, 0x03, 0x03, 0x2b, 0x2b, 0x0e, 0x43, - 0x06, 0x05, 0xee, 0x04, 0x02, 0x00, 0x02, 0x03, - 0x00, 0x00, 0x10, 0x02, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0xd1, 0xef, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0xd2, 0xef, 0x9d, 0x28, 0xd2, 0x04, + 0x06, 0x05, 0xf4, 0x04, 0x02, 0x00, 0x02, 0x03, + 0x00, 0x00, 0x10, 0x02, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0xd1, 0xef, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0xd2, 0xef, 0x9d, 0x28, 0xd8, 0x04, 0xc0, 0x03, 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, - 0xf0, 0x04, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, - 0x10, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0xd1, 0xef, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0xd2, 0xef, 0x9e, 0x28, 0xd2, 0x04, 0xc3, 0x03, - 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, 0xf2, 0x04, + 0xf6, 0x04, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, + 0x10, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0xd1, 0xef, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0xd2, 0xef, 0x9e, 0x28, 0xd8, 0x04, 0xc3, 0x03, + 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, 0xf8, 0x04, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, 0x10, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, - 0xef, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd2, 0xef, - 0x9a, 0x28, 0xd2, 0x04, 0xc6, 0x03, 0x01, 0x03, - 0x0e, 0x43, 0x06, 0x05, 0xf4, 0x04, 0x02, 0x00, - 0x02, 0x03, 0x00, 0x00, 0x10, 0x02, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0xd2, 0xef, 0x9b, 0x28, - 0xd2, 0x04, 0xc9, 0x03, 0x01, 0x03, 0x0e, 0x43, - 0x06, 0x05, 0xf6, 0x04, 0x02, 0x00, 0x02, 0x03, - 0x00, 0x00, 0x10, 0x02, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0xd1, 0xef, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0xd2, 0xef, 0xb2, 0x28, 0xd2, 0x04, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, + 0xef, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd2, 0xef, + 0x9a, 0x28, 0xd8, 0x04, 0xc6, 0x03, 0x01, 0x03, + 0x0e, 0x43, 0x06, 0x05, 0xfa, 0x04, 0x02, 0x00, + 0x02, 0x03, 0x00, 0x00, 0x10, 0x02, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x38, + 0xe2, 0x00, 0x00, 0x00, 0xd2, 0xef, 0x9b, 0x28, + 0xd8, 0x04, 0xc9, 0x03, 0x01, 0x03, 0x0e, 0x43, + 0x06, 0x05, 0xfc, 0x04, 0x02, 0x00, 0x02, 0x03, + 0x00, 0x00, 0x10, 0x02, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0xd1, 0xef, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0xd2, 0xef, 0xb2, 0x28, 0xd8, 0x04, 0xcc, 0x03, 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, - 0xf8, 0x04, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, - 0x10, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0xd1, 0xef, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0xd2, 0xef, 0x9f, 0x28, 0xd2, 0x04, 0xcf, 0x03, - 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, 0xfa, 0x04, + 0xfe, 0x04, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, + 0x10, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0xd1, 0xef, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0xd2, 0xef, 0x9f, 0x28, 0xd8, 0x04, 0xcf, 0x03, + 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, 0x80, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, 0x10, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, - 0xef, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd2, 0xef, - 0xab, 0x28, 0xd2, 0x04, 0xd2, 0x03, 0x01, 0x04, - 0x0e, 0x43, 0x06, 0x05, 0xfc, 0x04, 0x02, 0x00, - 0x02, 0x03, 0x00, 0x00, 0x3c, 0x02, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0xc3, 0x01, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, + 0xef, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd2, 0xef, + 0xab, 0x28, 0xd8, 0x04, 0xd2, 0x03, 0x01, 0x04, + 0x0e, 0x43, 0x06, 0x05, 0x82, 0x05, 0x02, 0x00, + 0x02, 0x03, 0x00, 0x00, 0x3c, 0x02, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0xc6, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x11, 0xeb, - 0x10, 0x0e, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, - 0xc3, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, + 0x10, 0x0e, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, + 0xc6, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xea, 0x07, 0x38, 0x45, 0x00, 0x00, 0x00, 0x28, - 0xd1, 0xd2, 0xa3, 0x28, 0xd2, 0x04, 0xd6, 0x03, + 0xd1, 0xd2, 0xa3, 0x28, 0xd8, 0x04, 0xd6, 0x03, 0x06, 0x03, 0x2b, 0x2c, 0xad, 0x1c, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x01, - 0x00, 0x00, 0x02, 0x01, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xd1, 0x28, 0xd2, 0x04, 0xea, 0x03, 0x01, + 0x00, 0x00, 0x02, 0x01, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xd1, 0x28, 0xd8, 0x04, 0xea, 0x03, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, - 0x01, 0x03, 0x00, 0x00, 0x15, 0x01, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, - 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, 0x8c, 0xd1, - 0x41, 0xbf, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, - 0xd2, 0x04, 0xed, 0x03, 0x01, 0x03, 0x0e, 0x42, + 0x01, 0x03, 0x00, 0x00, 0x15, 0x01, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, + 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, 0x8c, 0xd1, + 0x41, 0xc2, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, + 0xd8, 0x04, 0xed, 0x03, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x01, 0x02, 0x03, 0x00, - 0x00, 0x23, 0x03, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xba, 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, - 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0xd1, - 0xd2, 0xf0, 0xc9, 0x38, 0x70, 0x01, 0x00, 0x00, - 0xea, 0x12, 0xc5, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0xb6, 0xa9, 0xea, 0x08, 0xc5, 0x41, 0xbe, 0x01, - 0x00, 0x00, 0x28, 0xc5, 0x28, 0xd2, 0x04, 0x8c, + 0x00, 0x23, 0x03, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xc0, 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, + 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xd1, + 0xd2, 0xf0, 0xc9, 0x38, 0x73, 0x01, 0x00, 0x00, + 0xea, 0x12, 0xc5, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0xb6, 0xa9, 0xea, 0x08, 0xc5, 0x41, 0xc1, 0x01, + 0x00, 0x00, 0x28, 0xc5, 0x28, 0xd8, 0x04, 0x8c, 0x04, 0x05, 0x03, 0x30, 0x58, 0x21, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x01, 0x01, 0x02, - 0x00, 0x00, 0x28, 0x02, 0x88, 0x07, 0x00, 0x01, + 0x00, 0x00, 0x28, 0x02, 0x8e, 0x07, 0x00, 0x01, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xd1, 0x04, 0x48, 0x00, 0x00, 0x00, 0xab, 0xea, 0x0a, 0xc5, 0x42, 0x37, 0x00, 0x00, 0x00, 0x25, 0x00, - 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xc5, 0x41, - 0xbe, 0x01, 0x00, 0x00, 0xef, 0xc5, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0x9b, 0x28, 0xd2, 0x04, 0x96, + 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xc5, 0x41, + 0xc1, 0x01, 0x00, 0x00, 0xef, 0xc5, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0x9b, 0x28, 0xd8, 0x04, 0x96, 0x04, 0x03, 0x0d, 0x30, 0x31, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x16, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, - 0x38, 0xe0, 0x00, 0x00, 0x00, 0xc5, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0xc5, 0x41, 0xbe, 0x01, 0x00, - 0x00, 0x23, 0x02, 0x00, 0xd2, 0x04, 0x9d, 0x04, + 0x38, 0xe3, 0x00, 0x00, 0x00, 0xc5, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0xc5, 0x41, 0xc1, 0x01, 0x00, + 0x00, 0x23, 0x02, 0x00, 0xd8, 0x04, 0x9d, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x16, 0x01, 0x10, - 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x41, 0xbe, - 0x01, 0x00, 0x00, 0x04, 0x72, 0x01, 0x00, 0x00, - 0x9d, 0xc5, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9d, - 0x28, 0xd2, 0x04, 0xa0, 0x04, 0x01, 0x0d, 0x0e, + 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x41, 0xc1, + 0x01, 0x00, 0x00, 0x04, 0x75, 0x01, 0x00, 0x00, + 0x9d, 0xc5, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9d, + 0x28, 0xd8, 0x04, 0xa0, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x06, 0x01, 0x10, 0x00, 0x01, 0x00, - 0x08, 0xc9, 0xc5, 0xc5, 0x9a, 0x28, 0xd2, 0x04, + 0x08, 0xc9, 0xc5, 0xc5, 0x9a, 0x28, 0xd8, 0x04, 0xa3, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x11, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0xb5, 0xa3, 0xea, - 0x04, 0xc5, 0x8c, 0x28, 0xc5, 0x28, 0xd2, 0x04, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0xb5, 0xa3, 0xea, + 0x04, 0xc5, 0x8c, 0x28, 0xc5, 0x28, 0xd8, 0x04, 0xa6, 0x04, 0x04, 0x0d, 0x35, 0x0d, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x04, 0x01, 0x10, 0x00, 0x01, 0x00, - 0x08, 0xc9, 0xc5, 0x28, 0xd2, 0x04, 0xac, 0x04, + 0x08, 0xc9, 0xc5, 0x28, 0xd8, 0x04, 0xac, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x19, 0x01, 0x10, - 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x41, 0xbe, + 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xb5, 0xa6, 0xea, 0x03, 0xb5, - 0x28, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x41, 0x25, - 0x01, 0x00, 0x00, 0x28, 0xd2, 0x04, 0xaf, 0x04, + 0x28, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x41, 0x28, + 0x01, 0x00, 0x00, 0x28, 0xd8, 0x04, 0xaf, 0x04, 0x04, 0x0d, 0x35, 0x08, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x00, 0x16, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0xfe, 0x00, - 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xc5, - 0xef, 0x25, 0x01, 0x00, 0xd2, 0x04, 0xb5, 0x04, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x01, 0x01, + 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xc5, + 0xef, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xb5, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x11, 0x01, 0x10, - 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0xc5, 0xef, 0x42, 0xff, 0x00, 0x00, - 0x00, 0x25, 0x00, 0x00, 0xd2, 0x04, 0xb8, 0x04, + 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0xc5, 0xef, 0x42, 0x02, 0x01, 0x00, + 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xb8, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x06, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xb6, 0xc5, 0x9b, - 0x28, 0xd2, 0x04, 0xc0, 0x04, 0x01, 0x0d, 0x0e, + 0x28, 0xd8, 0x04, 0xc0, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x06, 0x01, 0x10, 0x00, 0x01, 0x00, - 0x08, 0xc9, 0xc5, 0xc5, 0x9a, 0x28, 0xd2, 0x04, + 0x08, 0xc9, 0xc5, 0xc5, 0x9a, 0x28, 0xd8, 0x04, 0xc3, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x10, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, - 0x9a, 0x00, 0x00, 0x00, 0x42, 0xf6, 0x00, 0x00, - 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd2, 0x04, 0xc6, + 0x9d, 0x00, 0x00, 0x00, 0x42, 0xf9, 0x00, 0x00, + 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xc6, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x04, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x28, - 0xd2, 0x04, 0xc9, 0x04, 0x01, 0x0d, 0x0e, 0x42, + 0xd8, 0x04, 0xc9, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x14, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0xb5, 0xa6, 0xea, 0x03, 0xb5, 0x28, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x41, 0x25, 0x01, - 0x00, 0x00, 0x28, 0xd2, 0x04, 0xcc, 0x04, 0x04, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x41, 0x28, 0x01, + 0x00, 0x00, 0x28, 0xd8, 0x04, 0xcc, 0x04, 0x04, 0x0d, 0x1c, 0x08, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x10, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x42, 0xfe, 0x00, 0x00, - 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd2, 0x04, 0xd2, + 0xe2, 0x00, 0x00, 0x00, 0x42, 0x01, 0x01, 0x00, + 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xd2, 0x04, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x24, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0xb5, - 0xa3, 0xea, 0x10, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0xc5, 0xef, 0x42, 0xff, 0x00, 0x00, 0x00, 0x25, - 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, - 0xff, 0x00, 0x00, 0x00, 0xc5, 0x25, 0x01, 0x00, - 0xd2, 0x04, 0xd5, 0x04, 0x03, 0x0d, 0x1c, 0x4f, - 0x0e, 0x43, 0x06, 0x05, 0x80, 0x05, 0x01, 0x03, - 0x01, 0x05, 0x01, 0x01, 0xcb, 0x01, 0x04, 0xd4, - 0x06, 0x00, 0x01, 0x00, 0xd6, 0x06, 0x00, 0x00, - 0x00, 0xea, 0x06, 0x00, 0x01, 0x00, 0x8a, 0x07, - 0x00, 0x02, 0x00, 0xfe, 0x04, 0x15, 0x01, 0xdd, - 0xd1, 0x47, 0xc9, 0x38, 0xb1, 0x00, 0x00, 0x00, - 0x41, 0xc6, 0x01, 0x00, 0x00, 0xcb, 0xc5, 0xea, - 0x12, 0xc5, 0x41, 0xc6, 0x01, 0x00, 0x00, 0xc7, - 0xa9, 0xea, 0x08, 0xc5, 0x41, 0x93, 0x01, 0x00, + 0xa3, 0xea, 0x10, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0xc5, 0xef, 0x42, 0x02, 0x01, 0x00, 0x00, 0x25, + 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, + 0x02, 0x01, 0x00, 0x00, 0xc5, 0x25, 0x01, 0x00, + 0xd8, 0x04, 0xd5, 0x04, 0x03, 0x0d, 0x1c, 0x4f, + 0x0e, 0x43, 0x06, 0x05, 0x86, 0x05, 0x01, 0x03, + 0x01, 0x05, 0x01, 0x01, 0xcb, 0x01, 0x04, 0xda, + 0x06, 0x00, 0x01, 0x00, 0xdc, 0x06, 0x00, 0x00, + 0x00, 0xf0, 0x06, 0x00, 0x01, 0x00, 0x90, 0x07, + 0x00, 0x02, 0x00, 0x84, 0x05, 0x15, 0x01, 0xdd, + 0xd1, 0x47, 0xc9, 0x38, 0xb4, 0x00, 0x00, 0x00, + 0x41, 0xc9, 0x01, 0x00, 0x00, 0xcb, 0xc5, 0xea, + 0x12, 0xc5, 0x41, 0xc9, 0x01, 0x00, 0x00, 0xc7, + 0xa9, 0xea, 0x08, 0xc5, 0x41, 0x96, 0x01, 0x00, 0x00, 0x28, 0xd1, 0x11, 0xb5, 0xab, 0xea, 0x12, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0xfe, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x01, 0x01, 0x00, 0x00, 0xb6, 0x24, 0x01, 0x00, 0xca, 0xec, - 0x77, 0x11, 0xb6, 0xab, 0xea, 0x13, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x42, 0xff, 0x00, 0x00, 0x00, + 0x77, 0x11, 0xb6, 0xab, 0xea, 0x13, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x42, 0x02, 0x01, 0x00, 0x00, 0xbd, 0x0a, 0x24, 0x01, 0x00, 0xca, 0xec, 0x60, - 0x11, 0xb8, 0xab, 0xea, 0x14, 0xb6, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x42, 0xff, 0x00, 0x00, 0x00, + 0x11, 0xb8, 0xab, 0xea, 0x14, 0xb6, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x42, 0x02, 0x01, 0x00, 0x00, 0xb7, 0x24, 0x01, 0x00, 0x9b, 0xca, 0xec, 0x48, - 0x11, 0xb9, 0xab, 0xea, 0x15, 0xb6, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x42, 0xff, 0x00, 0x00, 0x00, + 0x11, 0xb9, 0xab, 0xea, 0x15, 0xb6, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x42, 0x02, 0x01, 0x00, 0x00, 0xbd, 0x0a, 0x24, 0x01, 0x00, 0x9b, 0xca, 0xec, - 0x2f, 0x11, 0xbb, 0xab, 0xea, 0x16, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x42, 0xfd, 0x00, 0x00, 0x00, + 0x2f, 0x11, 0xbb, 0xab, 0xea, 0x16, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x42, 0x00, 0x01, 0x00, 0x00, 0xbf, 0x00, 0xbd, 0xed, 0xb1, 0x24, 0x01, 0x00, 0xca, 0xec, 0x15, 0x11, 0xbc, 0xab, 0xea, 0x10, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0xfd, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x00, 0x01, 0x00, 0x00, 0xb7, 0x24, 0x01, 0x00, 0xca, 0x0e, 0xc7, 0xbe, 0x00, 0x04, 0xa4, 0xea, 0x12, 0xdd, - 0xd1, 0x71, 0x0b, 0xc7, 0x4c, 0xc6, 0x01, 0x00, - 0x00, 0xc6, 0x4c, 0x93, 0x01, 0x00, 0x00, 0x49, - 0xc6, 0x28, 0xd2, 0x04, 0xe3, 0x04, 0x10, 0x04, + 0xd1, 0x71, 0x0b, 0xc7, 0x4c, 0xc9, 0x01, 0x00, + 0x00, 0xc6, 0x4c, 0x96, 0x01, 0x00, 0x00, 0x49, + 0xc6, 0x28, 0xd8, 0x04, 0xe3, 0x04, 0x10, 0x04, 0x17, 0x3a, 0x44, 0x21, 0x08, 0x08, 0x71, 0x77, 0x7b, 0x81, 0x85, 0x67, 0x08, 0x26, 0x59, 0x0b, 0x88, 0x02, 0x06, 0xe8, 0x89, 0x04, 0x23, 0xc7, 0x8a, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, - 0x01, 0x02, 0x00, 0x00, 0x15, 0x01, 0xb6, 0x06, + 0x01, 0x02, 0x00, 0x00, 0x15, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x97, 0x04, 0x46, 0x00, 0x00, 0x00, 0xab, 0x11, 0xeb, 0x0a, 0x0e, 0xd1, 0x97, 0x04, 0x8c, 0x00, 0x00, 0x00, 0xab, 0x28, - 0xd2, 0x04, 0xfc, 0x04, 0x01, 0x03, 0x0e, 0x42, + 0xd8, 0x04, 0xfc, 0x04, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x07, 0x02, 0x04, 0x00, - 0x01, 0x61, 0x09, 0xe6, 0x06, 0x00, 0x01, 0x00, - 0xba, 0x06, 0x00, 0x01, 0x00, 0x8e, 0x07, 0x00, - 0x00, 0x00, 0x90, 0x07, 0x00, 0x01, 0x00, 0x92, - 0x07, 0x00, 0x02, 0x00, 0x94, 0x07, 0x00, 0x03, - 0x00, 0xfc, 0x06, 0x00, 0x04, 0x00, 0xfe, 0x06, - 0x00, 0x05, 0x00, 0xd4, 0x06, 0x00, 0x06, 0x00, - 0xd2, 0xf4, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, - 0x00, 0x04, 0xcb, 0x01, 0x00, 0x00, 0xef, 0x2f, + 0x01, 0x61, 0x09, 0xec, 0x06, 0x00, 0x01, 0x00, + 0xc0, 0x06, 0x00, 0x01, 0x00, 0x94, 0x07, 0x00, + 0x00, 0x00, 0x96, 0x07, 0x00, 0x01, 0x00, 0x98, + 0x07, 0x00, 0x02, 0x00, 0x9a, 0x07, 0x00, 0x03, + 0x00, 0x82, 0x07, 0x00, 0x04, 0x00, 0x84, 0x07, + 0x00, 0x05, 0x00, 0xda, 0x06, 0x00, 0x06, 0x00, + 0xd2, 0xf4, 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, + 0x00, 0x04, 0xce, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xb6, 0xc9, 0xb5, 0xca, 0xb5, 0xcb, 0xb6, 0xcc, - 0x38, 0xde, 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0x42, 0xfb, 0x00, 0x00, 0x00, 0xd1, + 0x38, 0xe1, 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0x42, 0xfe, 0x00, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xef, 0xc4, 0x06, 0xc5, 0x9a, 0xc6, 0x9d, 0xc3, 0x04, 0xc2, 0x06, 0xc7, 0x9a, 0xc8, 0x9d, 0xc4, 0x05, 0xd2, 0xa5, 0xeb, 0x18, 0xbf, 0x00, 0xbd, 0xee, 0xb1, 0xd1, 0xc2, 0x06, 0x9e, 0x9b, 0xd5, 0xc5, 0xca, 0xc2, 0x04, 0xc9, 0xc7, 0xcc, 0xc2, 0x05, 0xcb, 0xec, 0xc2, 0x38, - 0xe0, 0x00, 0x00, 0x00, 0xc5, 0xc7, 0x23, 0x02, - 0x00, 0xd2, 0x04, 0xff, 0x04, 0x12, 0x05, 0x17, + 0xe3, 0x00, 0x00, 0x00, 0xc5, 0xc7, 0x23, 0x02, + 0x00, 0xd8, 0x04, 0xff, 0x04, 0x12, 0x05, 0x17, 0x3f, 0x0d, 0x0d, 0x0d, 0x0e, 0x71, 0x21, 0x2b, 0x0d, 0x0d, 0x3a, 0x0d, 0x12, 0x0d, 0x12, 0x0d, 0x0b, 0xfc, 0x01, 0x06, 0x40, 0x76, 0x3a, 0x6b, 0x0b, 0xde, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, - 0x00, 0x00, 0x02, 0x01, 0x00, 0x05, 0x00, 0x80, + 0x00, 0x00, 0x02, 0x01, 0x00, 0x05, 0x00, 0x86, 0x05, 0x16, 0x01, 0xdd, 0xb5, 0x23, 0x01, 0x00, - 0xd2, 0x04, 0x97, 0x05, 0x00, 0x0e, 0x42, 0x07, + 0xd8, 0x04, 0x97, 0x05, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, - 0x05, 0x00, 0x80, 0x05, 0x16, 0x01, 0xdd, 0xb6, - 0x23, 0x01, 0x00, 0xd2, 0x04, 0x98, 0x05, 0x00, + 0x05, 0x00, 0x86, 0x05, 0x16, 0x01, 0xdd, 0xb6, + 0x23, 0x01, 0x00, 0xd8, 0x04, 0x98, 0x05, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, - 0x02, 0x01, 0x00, 0x05, 0x00, 0x80, 0x05, 0x16, - 0x01, 0xdd, 0xb8, 0x23, 0x01, 0x00, 0xd2, 0x04, + 0x02, 0x01, 0x00, 0x05, 0x00, 0x86, 0x05, 0x16, + 0x01, 0xdd, 0xb8, 0x23, 0x01, 0x00, 0xd8, 0x04, 0x9a, 0x05, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x05, 0x00, - 0x80, 0x05, 0x16, 0x01, 0xdd, 0xb9, 0x23, 0x01, - 0x00, 0xd2, 0x04, 0x9b, 0x05, 0x00, 0x0e, 0x42, + 0x86, 0x05, 0x16, 0x01, 0xdd, 0xb9, 0x23, 0x01, + 0x00, 0xd8, 0x04, 0x9b, 0x05, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, - 0x00, 0x05, 0x00, 0x80, 0x05, 0x16, 0x01, 0xdd, - 0xbb, 0x23, 0x01, 0x00, 0xd2, 0x04, 0x9d, 0x05, + 0x00, 0x05, 0x00, 0x86, 0x05, 0x16, 0x01, 0xdd, + 0xbb, 0x23, 0x01, 0x00, 0xd8, 0x04, 0x9d, 0x05, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x00, - 0x00, 0x02, 0x01, 0x00, 0x05, 0x00, 0x80, 0x05, - 0x16, 0x01, 0xdd, 0xbc, 0x23, 0x01, 0x00, 0xd2, + 0x00, 0x02, 0x01, 0x00, 0x05, 0x00, 0x86, 0x05, + 0x16, 0x01, 0xdd, 0xbc, 0x23, 0x01, 0x00, 0xd8, 0x04, 0x9e, 0x05, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x01, 0x0a, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xbf, - 0x00, 0xbd, 0xee, 0xb1, 0xc5, 0x9b, 0x28, 0xd2, + 0x00, 0xbd, 0xee, 0xb1, 0xc5, 0x9b, 0x28, 0xd8, 0x04, 0xa2, 0x05, 0x01, 0x0d, 0x0b, 0xfc, 0x01, 0x06, 0x40, 0x76, 0x3a, 0x6b, 0x0b, 0xde, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x06, 0x01, 0x10, 0x00, 0x01, 0x00, - 0x08, 0xc9, 0xc5, 0xc5, 0x9a, 0x28, 0xd2, 0x04, + 0x08, 0xc9, 0xc5, 0xc5, 0x9a, 0x28, 0xd8, 0x04, 0xa5, 0x05, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x10, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x42, 0xf6, 0x00, 0x00, - 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd2, 0x04, 0xa8, + 0xe2, 0x00, 0x00, 0x00, 0x42, 0xf9, 0x00, 0x00, + 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xa8, 0x05, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x04, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x28, - 0xd2, 0x04, 0xab, 0x05, 0x01, 0x0d, 0x0e, 0x42, + 0xd8, 0x04, 0xab, 0x05, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x14, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0xb5, 0xa6, 0xea, 0x03, 0xb5, 0x28, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x41, 0x25, 0x01, - 0x00, 0x00, 0x28, 0xd2, 0x04, 0xae, 0x05, 0x04, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x41, 0x28, 0x01, + 0x00, 0x00, 0x28, 0xd8, 0x04, 0xae, 0x05, 0x04, 0x0d, 0x1c, 0x08, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x10, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x42, 0xfe, 0x00, 0x00, - 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd2, 0x04, 0xb4, + 0xe2, 0x00, 0x00, 0x00, 0x42, 0x01, 0x01, 0x00, + 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xb4, 0x05, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x24, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0xb5, - 0xa3, 0xea, 0x10, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0xc5, 0xef, 0x42, 0xff, 0x00, 0x00, 0x00, 0x25, - 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, - 0xff, 0x00, 0x00, 0x00, 0xc5, 0x25, 0x01, 0x00, - 0xd2, 0x04, 0xb7, 0x05, 0x03, 0x0d, 0x1c, 0x4f, - 0x0e, 0x43, 0x06, 0x05, 0xc2, 0x03, 0x02, 0x03, - 0x02, 0x03, 0x00, 0x00, 0x45, 0x05, 0x98, 0x07, - 0x00, 0x01, 0x00, 0x9a, 0x07, 0x00, 0x01, 0x00, - 0xa0, 0x06, 0x00, 0x00, 0x00, 0xe2, 0x01, 0x00, - 0x01, 0x00, 0xc2, 0x03, 0x00, 0x01, 0x14, 0x0c, + 0xa3, 0xea, 0x10, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0xc5, 0xef, 0x42, 0x02, 0x01, 0x00, 0x00, 0x25, + 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, + 0x02, 0x01, 0x00, 0x00, 0xc5, 0x25, 0x01, 0x00, + 0xd8, 0x04, 0xb7, 0x05, 0x03, 0x0d, 0x1c, 0x4f, + 0x0e, 0x43, 0x06, 0x05, 0xc8, 0x03, 0x02, 0x03, + 0x02, 0x03, 0x00, 0x00, 0x45, 0x05, 0x9e, 0x07, + 0x00, 0x01, 0x00, 0xa0, 0x07, 0x00, 0x01, 0x00, + 0xa6, 0x06, 0x00, 0x00, 0x00, 0xe2, 0x01, 0x00, + 0x01, 0x00, 0xc8, 0x03, 0x00, 0x01, 0x14, 0x0c, 0x03, 0xca, 0x0c, 0x02, 0xcb, 0xc6, 0xea, 0x0d, - 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xbb, 0x01, + 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, 0xbe, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xc7, 0xa7, 0xea, 0x03, 0xd1, 0x28, 0xd2, 0xf4, 0xea, 0x03, 0xb5, - 0xd6, 0x38, 0x92, 0x00, 0x00, 0x00, 0x42, 0xa4, + 0xd6, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0xa7, 0x01, 0x00, 0x00, 0xc7, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x24, 0x01, 0x00, 0xcd, 0xd1, 0x43, 0xcc, - 0x01, 0x00, 0x00, 0xc5, 0xd2, 0x43, 0xcd, 0x01, - 0x00, 0x00, 0xc5, 0x28, 0xd2, 0x04, 0xc2, 0x05, + 0x00, 0x24, 0x01, 0x00, 0xcd, 0xd1, 0x43, 0xcf, + 0x01, 0x00, 0x00, 0xc5, 0xd2, 0x43, 0xd0, 0x01, + 0x00, 0x00, 0xc5, 0x28, 0xd8, 0x04, 0xc2, 0x05, 0x0a, 0x23, 0x12, 0x3f, 0x1c, 0x0d, 0x17, 0x0e, - 0x67, 0x21, 0x26, 0x0e, 0x43, 0x06, 0x05, 0x82, + 0x67, 0x21, 0x26, 0x0e, 0x43, 0x06, 0x05, 0x88, 0x05, 0x02, 0x00, 0x02, 0x05, 0x00, 0x00, 0x37, - 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, - 0x00, 0x01, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0xd1, 0xef, 0xd5, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0xd2, 0xef, 0xd6, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0x42, 0x87, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xcc, - 0x01, 0x00, 0x00, 0xd2, 0x41, 0xcc, 0x01, 0x00, - 0x00, 0x9d, 0xd1, 0x41, 0xcd, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xcd, 0x01, 0x00, 0x00, 0x9d, 0x25, - 0x02, 0x00, 0xd2, 0x04, 0xd3, 0x05, 0x03, 0x03, - 0x2b, 0x2b, 0x0e, 0x43, 0x06, 0x05, 0x84, 0x05, + 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0xd1, 0xef, 0xd5, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0xd2, 0xef, 0xd6, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0x42, 0x8a, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xcf, + 0x01, 0x00, 0x00, 0xd2, 0x41, 0xcf, 0x01, 0x00, + 0x00, 0x9d, 0xd1, 0x41, 0xd0, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xd0, 0x01, 0x00, 0x00, 0x9d, 0x25, + 0x02, 0x00, 0xd8, 0x04, 0xd3, 0x05, 0x03, 0x03, + 0x2b, 0x2b, 0x0e, 0x43, 0x06, 0x05, 0x8a, 0x05, 0x02, 0x00, 0x02, 0x05, 0x00, 0x00, 0x37, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xd1, - 0xef, 0xd5, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xd2, - 0xef, 0xd6, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, - 0x87, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xcc, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xcc, 0x01, 0x00, 0x00, - 0x9e, 0xd1, 0x41, 0xcd, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xcd, 0x01, 0x00, 0x00, 0x9e, 0x25, 0x02, - 0x00, 0xd2, 0x04, 0xd8, 0x05, 0x03, 0x03, 0x2b, - 0x2b, 0x0e, 0x43, 0x06, 0x05, 0x86, 0x05, 0x02, - 0x00, 0x02, 0x06, 0x00, 0x00, 0x53, 0x02, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xd1, 0xef, - 0xd5, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xd2, 0xef, - 0xd6, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0x87, - 0x01, 0x00, 0x00, 0xd1, 0x41, 0xcc, 0x01, 0x00, - 0x00, 0xd2, 0x41, 0xcc, 0x01, 0x00, 0x00, 0x9a, - 0xd1, 0x41, 0xcd, 0x01, 0x00, 0x00, 0xd2, 0x41, - 0xcd, 0x01, 0x00, 0x00, 0x9a, 0x9e, 0xd1, 0x41, - 0xcc, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xcd, 0x01, - 0x00, 0x00, 0x9a, 0xd1, 0x41, 0xcd, 0x01, 0x00, - 0x00, 0xd2, 0x41, 0xcc, 0x01, 0x00, 0x00, 0x9a, - 0x9d, 0x25, 0x02, 0x00, 0xd2, 0x04, 0xdd, 0x05, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xd1, + 0xef, 0xd5, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xd2, + 0xef, 0xd6, 0x38, 0xe4, 0x00, 0x00, 0x00, 0x42, + 0x8a, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xcf, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xcf, 0x01, 0x00, 0x00, + 0x9e, 0xd1, 0x41, 0xd0, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xd0, 0x01, 0x00, 0x00, 0x9e, 0x25, 0x02, + 0x00, 0xd8, 0x04, 0xd8, 0x05, 0x03, 0x03, 0x2b, + 0x2b, 0x0e, 0x43, 0x06, 0x05, 0x8c, 0x05, 0x02, + 0x00, 0x02, 0x06, 0x00, 0x00, 0x53, 0x02, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xd1, 0xef, + 0xd5, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xd2, 0xef, + 0xd6, 0x38, 0xe4, 0x00, 0x00, 0x00, 0x42, 0x8a, + 0x01, 0x00, 0x00, 0xd1, 0x41, 0xcf, 0x01, 0x00, + 0x00, 0xd2, 0x41, 0xcf, 0x01, 0x00, 0x00, 0x9a, + 0xd1, 0x41, 0xd0, 0x01, 0x00, 0x00, 0xd2, 0x41, + 0xd0, 0x01, 0x00, 0x00, 0x9a, 0x9e, 0xd1, 0x41, + 0xcf, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xd0, 0x01, + 0x00, 0x00, 0x9a, 0xd1, 0x41, 0xd0, 0x01, 0x00, + 0x00, 0xd2, 0x41, 0xcf, 0x01, 0x00, 0x00, 0x9a, + 0x9d, 0x25, 0x02, 0x00, 0xd8, 0x04, 0xdd, 0x05, 0x04, 0x03, 0x2b, 0x2b, 0xbc, 0x0e, 0x43, 0x06, - 0x05, 0x88, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, - 0x00, 0x1c, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe1, 0x00, - 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, 0xe1, 0x00, + 0x05, 0x8e, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, + 0x00, 0x1c, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe4, 0x00, + 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0xd1, 0xd2, 0x42, - 0xf9, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x9a, - 0x28, 0xd2, 0x04, 0xe3, 0x05, 0x03, 0x03, 0x2b, - 0x2b, 0x0e, 0x43, 0x06, 0x05, 0x8a, 0x05, 0x02, - 0x00, 0x02, 0x02, 0x00, 0x00, 0x2f, 0x02, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xd1, 0xef, - 0xd5, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xd2, 0xef, - 0xd6, 0xd1, 0x41, 0xcc, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xcc, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xea, - 0x0f, 0x0e, 0xd1, 0x41, 0xcd, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xcd, 0x01, 0x00, 0x00, 0xa9, 0x28, - 0xd2, 0x04, 0xe8, 0x05, 0x03, 0x03, 0x2b, 0x2b, + 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x9a, + 0x28, 0xd8, 0x04, 0xe3, 0x05, 0x03, 0x03, 0x2b, + 0x2b, 0x0e, 0x43, 0x06, 0x05, 0x90, 0x05, 0x02, + 0x00, 0x02, 0x02, 0x00, 0x00, 0x2f, 0x02, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xd1, 0xef, + 0xd5, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xd2, 0xef, + 0xd6, 0xd1, 0x41, 0xcf, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xcf, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xea, + 0x0f, 0x0e, 0xd1, 0x41, 0xd0, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xd0, 0x01, 0x00, 0x00, 0xa9, 0x28, + 0xd8, 0x04, 0xe8, 0x05, 0x03, 0x03, 0x2b, 0x2b, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, - 0x01, 0x00, 0x00, 0x02, 0x01, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xd1, 0x28, 0xd2, 0x04, 0xf6, 0x05, + 0x01, 0x00, 0x00, 0x02, 0x01, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xd1, 0x28, 0xd8, 0x04, 0xf6, 0x05, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, - 0x00, 0x01, 0x03, 0x00, 0x00, 0x16, 0x01, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0x38, 0xe1, 0x00, 0x00, - 0x00, 0xd1, 0x41, 0xcc, 0x01, 0x00, 0x00, 0x8c, - 0xd1, 0x41, 0xcd, 0x01, 0x00, 0x00, 0x8c, 0x23, - 0x02, 0x00, 0xd2, 0x04, 0xf9, 0x05, 0x01, 0x03, + 0x00, 0x01, 0x03, 0x00, 0x00, 0x16, 0x01, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0x38, 0xe4, 0x00, 0x00, + 0x00, 0xd1, 0x41, 0xcf, 0x01, 0x00, 0x00, 0x8c, + 0xd1, 0x41, 0xd0, 0x01, 0x00, 0x00, 0x8c, 0x23, + 0x02, 0x00, 0xd8, 0x04, 0xf9, 0x05, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x00, 0x02, - 0x03, 0x00, 0x00, 0x18, 0x02, 0x98, 0x07, 0x00, - 0x01, 0x00, 0x9a, 0x07, 0x00, 0x01, 0x00, 0x38, - 0x70, 0x01, 0x00, 0x00, 0xea, 0x08, 0xd2, 0xb5, - 0xa9, 0xea, 0x03, 0xd1, 0x28, 0x38, 0xe1, 0x00, - 0x00, 0x00, 0xd1, 0xd2, 0x23, 0x02, 0x00, 0xd2, + 0x03, 0x00, 0x00, 0x18, 0x02, 0x9e, 0x07, 0x00, + 0x01, 0x00, 0xa0, 0x07, 0x00, 0x01, 0x00, 0x38, + 0x73, 0x01, 0x00, 0x00, 0xea, 0x08, 0xd2, 0xb5, + 0xa9, 0xea, 0x03, 0xd1, 0x28, 0x38, 0xe4, 0x00, + 0x00, 0x00, 0xd1, 0xd2, 0x23, 0x02, 0x00, 0xd8, 0x04, 0x8a, 0x06, 0x04, 0x03, 0x3f, 0x08, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x02, 0x00, - 0x04, 0x00, 0x00, 0x25, 0x02, 0xea, 0x06, 0x00, + 0x04, 0x00, 0x00, 0x25, 0x02, 0xf0, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xca, - 0xc6, 0x42, 0xf5, 0x00, 0x00, 0x00, 0x24, 0x00, - 0x00, 0xc9, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xc6, - 0x41, 0xcc, 0x01, 0x00, 0x00, 0xc5, 0x9b, 0xc6, - 0x41, 0xcd, 0x01, 0x00, 0x00, 0x8c, 0xc5, 0x9b, - 0x23, 0x02, 0x00, 0xd2, 0x04, 0x93, 0x06, 0x02, + 0xc6, 0x42, 0xf8, 0x00, 0x00, 0x00, 0x24, 0x00, + 0x00, 0xc9, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xc6, + 0x41, 0xcf, 0x01, 0x00, 0x00, 0xc5, 0x9b, 0xc6, + 0x41, 0xd0, 0x01, 0x00, 0x00, 0x8c, 0xc5, 0x9b, + 0x23, 0x02, 0x00, 0xd8, 0x04, 0x93, 0x06, 0x02, 0x0d, 0x35, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x83, 0x01, 0x04, - 0xe8, 0x06, 0x00, 0x00, 0x00, 0xda, 0x06, 0x00, - 0x01, 0x00, 0xb6, 0x06, 0x00, 0x02, 0x00, 0x10, + 0xee, 0x06, 0x00, 0x00, 0x00, 0xe0, 0x06, 0x00, + 0x01, 0x00, 0xbc, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xcc, 0xc1, 0xca, 0xc8, - 0xcf, 0x41, 0xcc, 0x01, 0x00, 0x00, 0xb5, 0xaa, - 0xea, 0x12, 0xc6, 0xc7, 0x41, 0xcc, 0x01, 0x00, + 0xcf, 0x41, 0xcf, 0x01, 0x00, 0x00, 0xb5, 0xaa, + 0xea, 0x12, 0xc6, 0xc7, 0x41, 0xcf, 0x01, 0x00, 0x00, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, - 0x00, 0x9d, 0xca, 0xc7, 0x41, 0xcd, 0x01, 0x00, + 0x00, 0x9d, 0xca, 0xc7, 0x41, 0xd0, 0x01, 0x00, 0x00, 0xb6, 0xa9, 0xea, 0x16, 0xc6, 0xc1, 0xaa, - 0xea, 0x08, 0x04, 0x75, 0x01, 0x00, 0x00, 0x94, - 0x01, 0x04, 0xe8, 0x00, 0x00, 0x00, 0x94, 0x01, - 0xec, 0x43, 0xc7, 0x41, 0xcd, 0x01, 0x00, 0x00, - 0xb4, 0xa9, 0xea, 0x0a, 0x04, 0xce, 0x01, 0x00, - 0x00, 0x94, 0x01, 0xec, 0x30, 0xc7, 0x41, 0xcd, + 0xea, 0x08, 0x04, 0x78, 0x01, 0x00, 0x00, 0x94, + 0x01, 0x04, 0xeb, 0x00, 0x00, 0x00, 0x94, 0x01, + 0xec, 0x43, 0xc7, 0x41, 0xd0, 0x01, 0x00, 0x00, + 0xb4, 0xa9, 0xea, 0x0a, 0x04, 0xd1, 0x01, 0x00, + 0x00, 0x94, 0x01, 0xec, 0x30, 0xc7, 0x41, 0xd0, 0x01, 0x00, 0x00, 0x42, 0x37, 0x00, 0x00, 0x00, - 0x24, 0x00, 0x00, 0xcd, 0xb5, 0x47, 0x04, 0x76, + 0x24, 0x00, 0x00, 0xcd, 0xb5, 0x47, 0x04, 0x79, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x0d, 0xc6, 0xc1, - 0xaa, 0xea, 0x08, 0x04, 0x75, 0x01, 0x00, 0x00, - 0x94, 0x01, 0xc6, 0xc5, 0x04, 0xcf, 0x01, 0x00, - 0x00, 0x9d, 0x9d, 0xca, 0xc6, 0x28, 0xd2, 0x04, + 0xaa, 0xea, 0x08, 0x04, 0x78, 0x01, 0x00, 0x00, + 0x94, 0x01, 0xc6, 0xc5, 0x04, 0xd2, 0x01, 0x00, + 0x00, 0x9d, 0x9d, 0xca, 0xc6, 0x28, 0xd8, 0x04, 0x97, 0x06, 0x0f, 0x0d, 0x12, 0x35, 0x58, 0x35, 0x1c, 0x26, 0x26, 0x3f, 0x26, 0x0d, 0x4e, 0x4e, 0x26, 0x36, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x1e, 0x01, 0x10, - 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x41, 0xcc, - 0x01, 0x00, 0x00, 0xc5, 0x41, 0xcc, 0x01, 0x00, - 0x00, 0x9a, 0xc5, 0x41, 0xcd, 0x01, 0x00, 0x00, - 0xc5, 0x41, 0xcd, 0x01, 0x00, 0x00, 0x9a, 0x9d, - 0x28, 0xd2, 0x04, 0xa9, 0x06, 0x01, 0x0d, 0x0e, + 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x41, 0xcf, + 0x01, 0x00, 0x00, 0xc5, 0x41, 0xcf, 0x01, 0x00, + 0x00, 0x9a, 0xc5, 0x41, 0xd0, 0x01, 0x00, 0x00, + 0xc5, 0x41, 0xd0, 0x01, 0x00, 0x00, 0x9a, 0x9d, + 0x28, 0xd8, 0x04, 0xa9, 0x06, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x00, 0x16, 0x01, 0x10, 0x00, 0x01, 0x00, - 0x08, 0xc9, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, - 0xfd, 0x00, 0x00, 0x00, 0x38, 0xf5, 0x00, 0x00, - 0x00, 0xc5, 0xef, 0x25, 0x01, 0x00, 0xd2, 0x04, + 0x08, 0xc9, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, + 0x00, 0x01, 0x00, 0x00, 0x38, 0xf8, 0x00, 0x00, + 0x00, 0xc5, 0xef, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xac, 0x06, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x17, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, - 0xe1, 0x00, 0x00, 0x00, 0xc5, 0x41, 0xcc, 0x01, - 0x00, 0x00, 0xc5, 0x41, 0xcd, 0x01, 0x00, 0x00, - 0x8c, 0x23, 0x02, 0x00, 0xd2, 0x04, 0xaf, 0x06, + 0xe4, 0x00, 0x00, 0x00, 0xc5, 0x41, 0xcf, 0x01, + 0x00, 0x00, 0xc5, 0x41, 0xd0, 0x01, 0x00, 0x00, + 0x8c, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xaf, 0x06, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x00, 0x1b, 0x01, 0x10, - 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0x42, 0x0a, 0x01, 0x00, 0x00, 0xc5, - 0x41, 0xcd, 0x01, 0x00, 0x00, 0xc5, 0x41, 0xcc, - 0x01, 0x00, 0x00, 0x25, 0x02, 0x00, 0xd2, 0x04, + 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0x42, 0x0d, 0x01, 0x00, 0x00, 0xc5, + 0x41, 0xd0, 0x01, 0x00, 0x00, 0xc5, 0x41, 0xcf, + 0x01, 0x00, 0x00, 0x25, 0x02, 0x00, 0xd8, 0x04, 0xb2, 0x06, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x32, - 0x03, 0xf0, 0x03, 0x00, 0x00, 0x00, 0xcc, 0x06, + 0x03, 0xf6, 0x03, 0x00, 0x00, 0x00, 0xd2, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, - 0xcb, 0xc7, 0x41, 0xcd, 0x01, 0x00, 0x00, 0xc9, - 0xc7, 0x41, 0xcc, 0x01, 0x00, 0x00, 0x42, 0xfe, - 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xca, 0x38, - 0xe1, 0x00, 0x00, 0x00, 0xc6, 0x38, 0x05, 0x01, - 0x00, 0x00, 0xc5, 0xef, 0x9a, 0xc6, 0x38, 0x04, + 0xcb, 0xc7, 0x41, 0xd0, 0x01, 0x00, 0x00, 0xc9, + 0xc7, 0x41, 0xcf, 0x01, 0x00, 0x00, 0x42, 0x01, + 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xca, 0x38, + 0xe4, 0x00, 0x00, 0x00, 0xc6, 0x38, 0x08, 0x01, + 0x00, 0x00, 0xc5, 0xef, 0x9a, 0xc6, 0x38, 0x07, 0x01, 0x00, 0x00, 0xc5, 0xef, 0x9a, 0x23, 0x02, - 0x00, 0xd2, 0x04, 0xb5, 0x06, 0x02, 0x0d, 0x71, + 0x00, 0xd8, 0x04, 0xb5, 0x06, 0x02, 0x0d, 0x71, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x05, 0x00, 0x00, 0x2b, 0x01, 0x10, 0x00, 0x01, - 0x00, 0x08, 0xc9, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0x38, 0xf6, 0x00, 0x00, 0x00, 0xc5, 0xef, 0x42, - 0xff, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x38, - 0x0a, 0x01, 0x00, 0x00, 0xc5, 0x41, 0xcd, 0x01, - 0x00, 0x00, 0xc5, 0x41, 0xcc, 0x01, 0x00, 0x00, - 0xf0, 0x23, 0x02, 0x00, 0xd2, 0x04, 0xb9, 0x06, - 0x01, 0x0d, 0x0e, 0x43, 0x06, 0x05, 0xc4, 0x03, + 0x00, 0x08, 0xc9, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0x38, 0xf9, 0x00, 0x00, 0x00, 0xc5, 0xef, 0x42, + 0x02, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0x38, + 0x0d, 0x01, 0x00, 0x00, 0xc5, 0x41, 0xd0, 0x01, + 0x00, 0x00, 0xc5, 0x41, 0xcf, 0x01, 0x00, 0x00, + 0xf0, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xb9, 0x06, + 0x01, 0x0d, 0x0e, 0x43, 0x06, 0x05, 0xca, 0x03, 0x02, 0x04, 0x02, 0x03, 0x00, 0x00, 0xa2, 0x01, - 0x06, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xf0, 0x06, - 0x00, 0x01, 0x00, 0xa0, 0x06, 0x00, 0x00, 0x00, - 0xd6, 0x06, 0x00, 0x01, 0x00, 0xe2, 0x01, 0x00, - 0x01, 0x00, 0xc4, 0x03, 0x00, 0x01, 0x14, 0x0c, + 0x06, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xf6, 0x06, + 0x00, 0x01, 0x00, 0xa6, 0x06, 0x00, 0x00, 0x00, + 0xdc, 0x06, 0x00, 0x01, 0x00, 0xe2, 0x01, 0x00, + 0x01, 0x00, 0xca, 0x03, 0x00, 0x01, 0x14, 0x0c, 0x03, 0xcb, 0x0c, 0x02, 0xcc, 0xc7, 0xea, 0x0d, - 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xbb, 0x01, - 0x00, 0x00, 0xef, 0x2f, 0x38, 0x92, 0x00, 0x00, - 0x00, 0x42, 0xa4, 0x01, 0x00, 0x00, 0xc8, 0x41, + 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, 0xbe, 0x01, + 0x00, 0x00, 0xef, 0x2f, 0x38, 0x95, 0x00, 0x00, + 0x00, 0x42, 0xa7, 0x01, 0x00, 0x00, 0xc8, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x24, 0x01, 0x00, 0xc9, - 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0x74, 0x01, + 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xea, 0x4e, - 0xd2, 0xb5, 0xa4, 0xea, 0x0d, 0x38, 0xc9, 0x00, - 0x00, 0x00, 0x04, 0xd0, 0x01, 0x00, 0x00, 0xef, - 0x2f, 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0x74, + 0xd2, 0xb5, 0xa4, 0xea, 0x0d, 0x38, 0xcc, 0x00, + 0x00, 0x00, 0x04, 0xd3, 0x01, 0x00, 0x00, 0xef, + 0x2f, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xea, 0x07, 0xd1, 0xd2, 0xb2, 0xd5, 0xec, 0x33, 0xd1, - 0x38, 0xe0, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x12, - 0xc8, 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd2, - 0xf0, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9b, - 0x28, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xd1, - 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, 0xcc, 0x00, - 0x00, 0x00, 0x04, 0xd1, 0x01, 0x00, 0x00, 0xef, - 0x2f, 0xc5, 0xd1, 0x43, 0xd2, 0x01, 0x00, 0x00, - 0xc5, 0xd2, 0x43, 0xd3, 0x01, 0x00, 0x00, 0xc5, - 0x28, 0xd2, 0x04, 0xc0, 0x06, 0x12, 0x22, 0x12, + 0x38, 0xe3, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x12, + 0xc8, 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd2, + 0xf0, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9b, + 0x28, 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, 0xd4, + 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, 0xcf, 0x00, + 0x00, 0x00, 0x04, 0xd4, 0x01, 0x00, 0x00, 0xef, + 0x2f, 0xc5, 0xd1, 0x43, 0xd5, 0x01, 0x00, 0x00, + 0xc5, 0xd2, 0x43, 0xd6, 0x01, 0x00, 0x00, 0xc5, + 0x28, 0xd8, 0x04, 0xc0, 0x06, 0x12, 0x22, 0x12, 0x3f, 0x67, 0x53, 0x1c, 0x3f, 0x53, 0x17, 0x3a, 0x53, 0x08, 0x3b, 0x08, 0x3a, 0x08, 0x26, 0x26, - 0x0e, 0x43, 0x06, 0x05, 0x8c, 0x05, 0x02, 0x00, - 0x02, 0x03, 0x00, 0x00, 0x76, 0x02, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, - 0xd1, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xa7, 0x96, - 0xea, 0x17, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, - 0xd2, 0x41, 0xd2, 0x01, 0x00, 0x00, 0x9d, 0xd2, - 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, - 0xd2, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xa7, 0x96, - 0xea, 0x17, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, - 0x41, 0xd2, 0x01, 0x00, 0x00, 0xd2, 0x9d, 0xd1, - 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, - 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, 0xd2, 0x41, - 0xd3, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x0d, 0x38, - 0xcc, 0x00, 0x00, 0x00, 0x04, 0xd4, 0x01, 0x00, - 0x00, 0xef, 0x2f, 0x38, 0xe2, 0x00, 0x00, 0x00, - 0xd1, 0x41, 0xd2, 0x01, 0x00, 0x00, 0xd2, 0x41, - 0xd2, 0x01, 0x00, 0x00, 0x9d, 0xd1, 0x41, 0xd3, - 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd2, 0x04, + 0x0e, 0x43, 0x06, 0x05, 0x92, 0x05, 0x02, 0x00, + 0x02, 0x03, 0x00, 0x00, 0x76, 0x02, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0xd1, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, 0x96, + 0xea, 0x17, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xd1, + 0xd2, 0x41, 0xd5, 0x01, 0x00, 0x00, 0x9d, 0xd2, + 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, + 0xd2, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, 0x96, + 0xea, 0x17, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xd1, + 0x41, 0xd5, 0x01, 0x00, 0x00, 0xd2, 0x9d, 0xd1, + 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, + 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, 0xd2, 0x41, + 0xd6, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x0d, 0x38, + 0xcf, 0x00, 0x00, 0x00, 0x04, 0xd7, 0x01, 0x00, + 0x00, 0xef, 0x2f, 0x38, 0xe5, 0x00, 0x00, 0x00, + 0xd1, 0x41, 0xd5, 0x01, 0x00, 0x00, 0xd2, 0x41, + 0xd5, 0x01, 0x00, 0x00, 0x9d, 0xd1, 0x41, 0xd6, + 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xd7, 0x06, 0x07, 0x03, 0x35, 0x71, 0x35, 0x72, - 0x4e, 0x3f, 0x0e, 0x43, 0x06, 0x05, 0x8e, 0x05, + 0x4e, 0x3f, 0x0e, 0x43, 0x06, 0x05, 0x94, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, 0x76, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0xd1, 0x38, 0xe2, 0x00, 0x00, 0x00, - 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe2, 0x00, 0x00, - 0x00, 0xd1, 0xd2, 0x41, 0xd2, 0x01, 0x00, 0x00, - 0x9e, 0xd2, 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, - 0x02, 0x00, 0xd2, 0x38, 0xe2, 0x00, 0x00, 0x00, - 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe2, 0x00, 0x00, - 0x00, 0xd1, 0x41, 0xd2, 0x01, 0x00, 0x00, 0xd2, - 0x9e, 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, - 0x02, 0x00, 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xd3, 0x01, 0x00, 0x00, 0xaa, 0xea, - 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xd4, - 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, 0xe2, 0x00, - 0x00, 0x00, 0xd1, 0x41, 0xd2, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xd2, 0x01, 0x00, 0x00, 0x9e, 0xd1, - 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, - 0xd2, 0x04, 0xe2, 0x06, 0x07, 0x03, 0x35, 0x71, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0xd1, 0x38, 0xe5, 0x00, 0x00, 0x00, + 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe5, 0x00, 0x00, + 0x00, 0xd1, 0xd2, 0x41, 0xd5, 0x01, 0x00, 0x00, + 0x9e, 0xd2, 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, + 0x02, 0x00, 0xd2, 0x38, 0xe5, 0x00, 0x00, 0x00, + 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe5, 0x00, 0x00, + 0x00, 0xd1, 0x41, 0xd5, 0x01, 0x00, 0x00, 0xd2, + 0x9e, 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, + 0x02, 0x00, 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xd6, 0x01, 0x00, 0x00, 0xaa, 0xea, + 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, 0xd7, + 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, 0xe5, 0x00, + 0x00, 0x00, 0xd1, 0x41, 0xd5, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xd5, 0x01, 0x00, 0x00, 0x9e, 0xd1, + 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, + 0xd8, 0x04, 0xe2, 0x06, 0x07, 0x03, 0x35, 0x71, 0x35, 0x72, 0x4e, 0x3f, 0x0e, 0x43, 0x06, 0x05, - 0x90, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, - 0x76, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0xd1, 0x38, 0xe2, 0x00, - 0x00, 0x00, 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe2, - 0x00, 0x00, 0x00, 0xd1, 0xd2, 0x41, 0xd2, 0x01, - 0x00, 0x00, 0x9a, 0xd2, 0x41, 0xd3, 0x01, 0x00, - 0x00, 0x23, 0x02, 0x00, 0xd2, 0x38, 0xe2, 0x00, - 0x00, 0x00, 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe2, - 0x00, 0x00, 0x00, 0xd1, 0x41, 0xd2, 0x01, 0x00, - 0x00, 0xd2, 0x9a, 0xd1, 0x41, 0xd3, 0x01, 0x00, - 0x00, 0x23, 0x02, 0x00, 0xd1, 0x41, 0xd3, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xd3, 0x01, 0x00, 0x00, - 0xaa, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, - 0x04, 0xd4, 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, - 0xe2, 0x00, 0x00, 0x00, 0xd1, 0x41, 0xd2, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xd2, 0x01, 0x00, 0x00, - 0x9a, 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, - 0x02, 0x00, 0xd2, 0x04, 0xed, 0x06, 0x07, 0x03, + 0x96, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, + 0x76, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0xd1, 0x38, 0xe5, 0x00, + 0x00, 0x00, 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe5, + 0x00, 0x00, 0x00, 0xd1, 0xd2, 0x41, 0xd5, 0x01, + 0x00, 0x00, 0x9a, 0xd2, 0x41, 0xd6, 0x01, 0x00, + 0x00, 0x23, 0x02, 0x00, 0xd2, 0x38, 0xe5, 0x00, + 0x00, 0x00, 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe5, + 0x00, 0x00, 0x00, 0xd1, 0x41, 0xd5, 0x01, 0x00, + 0x00, 0xd2, 0x9a, 0xd1, 0x41, 0xd6, 0x01, 0x00, + 0x00, 0x23, 0x02, 0x00, 0xd1, 0x41, 0xd6, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xd6, 0x01, 0x00, 0x00, + 0xaa, 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, + 0x04, 0xd7, 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, + 0xe5, 0x00, 0x00, 0x00, 0xd1, 0x41, 0xd5, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xd5, 0x01, 0x00, 0x00, + 0x9a, 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, + 0x02, 0x00, 0xd8, 0x04, 0xed, 0x06, 0x07, 0x03, 0x35, 0x71, 0x35, 0x72, 0x4e, 0x3f, 0x0e, 0x43, - 0x06, 0x05, 0x92, 0x05, 0x02, 0x00, 0x02, 0x04, - 0x01, 0x00, 0x26, 0x02, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0x90, 0x05, - 0x1e, 0x01, 0xd2, 0x38, 0xe2, 0x00, 0x00, 0x00, - 0xa7, 0x96, 0xea, 0x0f, 0x38, 0xe2, 0x00, 0x00, - 0x00, 0xd2, 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, - 0xf0, 0xd6, 0xdd, 0xd1, 0xd2, 0x42, 0xf9, 0x00, + 0x06, 0x05, 0x98, 0x05, 0x02, 0x00, 0x02, 0x04, + 0x01, 0x00, 0x26, 0x02, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x96, 0x05, + 0x1e, 0x01, 0xd2, 0x38, 0xe5, 0x00, 0x00, 0x00, + 0xa7, 0x96, 0xea, 0x0f, 0x38, 0xe5, 0x00, 0x00, + 0x00, 0xd2, 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, + 0xf0, 0xd6, 0xdd, 0xd1, 0xd2, 0x42, 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x23, 0x02, 0x00, - 0xd2, 0x04, 0xf8, 0x06, 0x03, 0x03, 0x35, 0x49, - 0x0e, 0x43, 0x06, 0x05, 0x94, 0x05, 0x02, 0x00, - 0x02, 0x02, 0x00, 0x00, 0x1f, 0x02, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, - 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, 0xd2, 0x41, - 0xd3, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xea, 0x0f, - 0x0e, 0xd1, 0x41, 0xd2, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xd2, 0x01, 0x00, 0x00, 0xa9, 0x28, 0xd2, + 0xd8, 0x04, 0xf8, 0x06, 0x03, 0x03, 0x35, 0x49, + 0x0e, 0x43, 0x06, 0x05, 0x9a, 0x05, 0x02, 0x00, + 0x02, 0x02, 0x00, 0x00, 0x1f, 0x02, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, 0xd2, 0x41, + 0xd6, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xea, 0x0f, + 0x0e, 0xd1, 0x41, 0xd5, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xd5, 0x01, 0x00, 0x00, 0xa9, 0x28, 0xd8, 0x04, 0xfd, 0x06, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, - 0x02, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, - 0x28, 0xd2, 0x04, 0x89, 0x07, 0x01, 0x03, 0x0e, + 0x02, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, + 0x28, 0xd8, 0x04, 0x89, 0x07, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x03, - 0x00, 0x00, 0x15, 0x01, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0x41, - 0xd2, 0x01, 0x00, 0x00, 0x8c, 0xd1, 0x41, 0xd3, - 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd2, 0x04, + 0x00, 0x00, 0x15, 0x01, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xd1, 0x41, + 0xd5, 0x01, 0x00, 0x00, 0x8c, 0xd1, 0x41, 0xd6, + 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd8, 0x04, 0x8c, 0x07, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x43, - 0x03, 0xb6, 0x06, 0x00, 0x00, 0x00, 0xf0, 0x06, + 0x03, 0xbc, 0x06, 0x00, 0x00, 0x00, 0xf6, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, - 0xcb, 0xc7, 0xcd, 0x41, 0xd3, 0x01, 0x00, 0x00, - 0xca, 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0x74, + 0xcb, 0xc7, 0xcd, 0x41, 0xd6, 0x01, 0x00, 0x00, + 0xca, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, 0xea, - 0x1e, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x38, 0xde, - 0x00, 0x00, 0x00, 0x42, 0xef, 0x00, 0x00, 0x00, - 0xc5, 0x41, 0xd2, 0x01, 0x00, 0x00, 0xc6, 0x24, - 0x02, 0x00, 0xc6, 0x23, 0x02, 0x00, 0x38, 0xcc, - 0x00, 0x00, 0x00, 0x04, 0xd5, 0x01, 0x00, 0x00, - 0xef, 0x2f, 0xd2, 0x04, 0x9b, 0x07, 0x04, 0x0d, + 0x1e, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x38, 0xe1, + 0x00, 0x00, 0x00, 0x42, 0xf2, 0x00, 0x00, 0x00, + 0xc5, 0x41, 0xd5, 0x01, 0x00, 0x00, 0xc6, 0x24, + 0x02, 0x00, 0xc6, 0x23, 0x02, 0x00, 0x38, 0xcf, + 0x00, 0x00, 0x00, 0x04, 0xd8, 0x01, 0x00, 0x00, + 0xef, 0x2f, 0xd8, 0x04, 0x9b, 0x07, 0x04, 0x0d, 0x2b, 0x53, 0x95, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x22, 0x01, - 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x04, 0xd6, - 0x01, 0x00, 0x00, 0xc5, 0x41, 0xd2, 0x01, 0x00, - 0x00, 0x9d, 0x04, 0xd7, 0x01, 0x00, 0x00, 0x9d, - 0xc5, 0x41, 0xd3, 0x01, 0x00, 0x00, 0x9d, 0x04, - 0xd8, 0x01, 0x00, 0x00, 0x9d, 0x28, 0xd2, 0x04, + 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x04, 0xd9, + 0x01, 0x00, 0x00, 0xc5, 0x41, 0xd5, 0x01, 0x00, + 0x00, 0x9d, 0x04, 0xda, 0x01, 0x00, 0x00, 0x9d, + 0xc5, 0x41, 0xd6, 0x01, 0x00, 0x00, 0x9d, 0x04, + 0xdb, 0x01, 0x00, 0x00, 0x9d, 0x28, 0xd8, 0x04, 0xa3, 0x07, 0x01, 0x0d, 0x0e, 0x43, 0x06, 0x05, - 0x96, 0x05, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, - 0x47, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, + 0x9c, 0x05, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, + 0x47, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x97, 0x04, 0x46, 0x00, 0x00, 0x00, 0xab, 0x11, 0xeb, 0x16, 0x0e, 0xd1, 0x97, 0x04, 0x8b, 0x00, 0x00, 0x00, 0xab, 0x11, 0xeb, 0x0a, 0x0e, 0xd1, 0x97, 0x04, 0x8c, 0x00, 0x00, 0x00, 0xab, 0xea, - 0x03, 0x0a, 0x28, 0xd1, 0x38, 0xe0, 0x00, 0x00, + 0x03, 0x0a, 0x28, 0xd1, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xeb, 0x14, 0x0e, 0xd1, 0x38, - 0xe1, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xeb, 0x09, - 0x0e, 0xd1, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xa7, - 0xea, 0x03, 0x0a, 0x28, 0x09, 0x28, 0xd2, 0x04, + 0xe4, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xeb, 0x09, + 0x0e, 0xd1, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, + 0xea, 0x03, 0x0a, 0x28, 0x09, 0x28, 0xd8, 0x04, 0xaa, 0x07, 0x09, 0x04, 0x3f, 0x3f, 0x35, 0x0d, 0x3a, 0x3a, 0x30, 0x0d, 0x0e, 0x43, 0x06, 0x05, - 0xc6, 0x03, 0x01, 0x02, 0x01, 0x04, 0x01, 0x00, - 0x82, 0x01, 0x03, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xe2, 0x01, 0x00, 0x01, 0x00, 0xc6, 0x03, 0x00, - 0x01, 0x14, 0x96, 0x05, 0x21, 0x01, 0x0c, 0x03, + 0xcc, 0x03, 0x01, 0x02, 0x01, 0x04, 0x01, 0x00, + 0x82, 0x01, 0x03, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xe2, 0x01, 0x00, 0x01, 0x00, 0xcc, 0x03, 0x00, + 0x01, 0x14, 0x9c, 0x05, 0x21, 0x01, 0x0c, 0x03, 0xc9, 0x0c, 0x02, 0xca, 0xc5, 0xea, 0x0d, 0x38, - 0xcc, 0x00, 0x00, 0x00, 0x04, 0xbb, 0x01, 0x00, + 0xcf, 0x00, 0x00, 0x00, 0x04, 0xbe, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xc6, 0xa7, 0xea, 0x03, - 0xd1, 0x28, 0x38, 0x93, 0x00, 0x00, 0x00, 0x42, - 0xa0, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, + 0xd1, 0x28, 0x38, 0x96, 0x00, 0x00, 0x00, 0x42, + 0xa3, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xea, 0x2a, 0xd1, 0xe9, 0xb5, 0xa9, 0xea, 0x06, - 0xb5, 0x26, 0x01, 0x00, 0xd5, 0x38, 0x92, 0x00, + 0xb5, 0x26, 0x01, 0x00, 0xd5, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0x60, 0x00, 0x00, 0x00, 0xd1, 0xc6, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x24, 0x02, - 0x00, 0x0e, 0xd1, 0x42, 0x88, 0x01, 0x00, 0x00, + 0x00, 0x0e, 0xd1, 0x42, 0x8b, 0x01, 0x00, 0x00, 0x25, 0x00, 0x00, 0xdd, 0xd1, 0xef, 0xea, 0x1d, - 0xd1, 0x26, 0x01, 0x00, 0xd5, 0x38, 0x92, 0x00, + 0xd1, 0x26, 0x01, 0x00, 0xd5, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0x60, 0x00, 0x00, 0x00, 0xd1, 0xc6, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x24, 0x02, - 0x00, 0x0e, 0xd1, 0x28, 0x38, 0xcc, 0x00, 0x00, - 0x00, 0x04, 0xba, 0x01, 0x00, 0x00, 0xef, 0x2f, - 0xd2, 0x04, 0xb7, 0x07, 0x0f, 0x22, 0x12, 0x3f, + 0x00, 0x0e, 0xd1, 0x28, 0x38, 0xcf, 0x00, 0x00, + 0x00, 0x04, 0xbd, 0x01, 0x00, 0x00, 0xef, 0x2f, + 0xd8, 0x04, 0xb7, 0x07, 0x0f, 0x22, 0x12, 0x3f, 0x1c, 0x08, 0x58, 0x21, 0x1c, 0x6c, 0x30, 0x1c, 0x1c, 0x6c, 0x08, 0x08, 0x0e, 0x43, 0x06, 0x05, - 0x98, 0x05, 0x01, 0x00, 0x01, 0x03, 0x00, 0x00, - 0x44, 0x01, 0xea, 0x06, 0x00, 0x01, 0x00, 0x38, - 0xde, 0x00, 0x00, 0x00, 0x42, 0x74, 0x01, 0x00, + 0x9e, 0x05, 0x01, 0x00, 0x01, 0x03, 0x00, 0x00, + 0x44, 0x01, 0xf0, 0x06, 0x00, 0x01, 0x00, 0x38, + 0xe1, 0x00, 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x11, 0xeb, 0x32, - 0x0e, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0x80, + 0x0e, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x83, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x11, - 0xeb, 0x20, 0x0e, 0xd1, 0x38, 0xe0, 0x00, 0x00, + 0xeb, 0x20, 0x0e, 0xd1, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xeb, 0x15, 0x0e, 0xd1, 0x38, - 0xe1, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xea, 0x0a, - 0x0e, 0xd1, 0x41, 0xcc, 0x01, 0x00, 0x00, 0xb5, - 0xa9, 0x96, 0x28, 0xd2, 0x04, 0xcb, 0x07, 0x04, + 0xe4, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xea, 0x0a, + 0x0e, 0xd1, 0x41, 0xcf, 0x01, 0x00, 0x00, 0xb5, + 0xa9, 0x96, 0x28, 0xd8, 0x04, 0xcb, 0x07, 0x04, 0x04, 0x5d, 0x5d, 0x3a, 0x0e, 0x43, 0x06, 0x05, - 0x9a, 0x05, 0x02, 0x01, 0x02, 0x03, 0x01, 0x00, - 0x63, 0x03, 0xea, 0x06, 0x00, 0x01, 0x00, 0xa4, - 0x06, 0x00, 0x01, 0x00, 0xb2, 0x07, 0x00, 0x00, - 0x00, 0x98, 0x05, 0x22, 0x01, 0xd2, 0xb5, 0xa9, + 0xa0, 0x05, 0x02, 0x01, 0x02, 0x03, 0x01, 0x00, + 0x63, 0x03, 0xf0, 0x06, 0x00, 0x01, 0x00, 0xaa, + 0x06, 0x00, 0x01, 0x00, 0xb8, 0x07, 0x00, 0x00, + 0x00, 0x9e, 0x05, 0x22, 0x01, 0xd2, 0xb5, 0xa9, 0xea, 0x0d, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc9, 0xec, 0x51, 0xd1, 0xb6, 0xa9, 0xea, 0x05, 0xc1, 0xc9, 0xec, 0x32, 0xd1, - 0xb4, 0xa9, 0xea, 0x09, 0x04, 0x76, 0x01, 0x00, + 0xb4, 0xa9, 0xea, 0x09, 0x04, 0x79, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x25, 0xdd, 0xd1, 0xef, 0xea, - 0x11, 0x04, 0xda, 0x01, 0x00, 0x00, 0xd1, 0x9d, - 0x04, 0xd8, 0x01, 0x00, 0x00, 0x9d, 0xc9, 0xec, - 0x09, 0x38, 0x96, 0x00, 0x00, 0x00, 0xd1, 0xef, + 0x11, 0x04, 0xdd, 0x01, 0x00, 0x00, 0xd1, 0x9d, + 0x04, 0xdb, 0x01, 0x00, 0x00, 0x9d, 0xc9, 0xec, + 0x09, 0x38, 0x99, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xc9, 0x04, 0x7d, 0x00, 0x00, 0x00, 0x94, 0x00, - 0x04, 0xe9, 0x00, 0x00, 0x00, 0x94, 0x00, 0xd2, - 0xb6, 0xaa, 0xea, 0x0b, 0xc5, 0x04, 0xdb, 0x01, + 0x04, 0xec, 0x00, 0x00, 0x00, 0x94, 0x00, 0xd2, + 0xb6, 0xaa, 0xea, 0x0b, 0xc5, 0x04, 0xde, 0x01, 0x00, 0x00, 0xd2, 0x9d, 0x9d, 0xc9, 0xc5, 0x28, - 0xd2, 0x04, 0xd4, 0x07, 0x11, 0x05, 0x1c, 0x35, + 0xd8, 0x04, 0xd4, 0x07, 0x11, 0x05, 0x1c, 0x35, 0x0d, 0x1c, 0x0d, 0x26, 0x21, 0x0d, 0x1c, 0x49, 0x0d, 0x2c, 0x27, 0x26, 0x1c, 0x37, 0x0e, 0x43, - 0x06, 0x05, 0x9c, 0x05, 0x03, 0x0e, 0x03, 0x04, - 0x00, 0x06, 0xb2, 0x02, 0x11, 0x8a, 0x07, 0x00, - 0x01, 0x00, 0xb8, 0x07, 0x00, 0x01, 0x00, 0xba, - 0x07, 0x00, 0x01, 0x00, 0xbc, 0x07, 0x00, 0x00, - 0x00, 0xbe, 0x07, 0x00, 0x01, 0x00, 0xa4, 0x06, - 0x00, 0x02, 0x00, 0xc0, 0x07, 0x00, 0x03, 0x00, - 0xc2, 0x07, 0x00, 0x04, 0x00, 0xc4, 0x07, 0x00, - 0x05, 0x00, 0xd8, 0x06, 0x00, 0x06, 0x00, 0xc6, - 0x07, 0x00, 0x07, 0x00, 0xc8, 0x07, 0x00, 0x08, - 0x00, 0xca, 0x07, 0x00, 0x09, 0x00, 0xcc, 0x07, - 0x00, 0x0a, 0x00, 0xce, 0x07, 0x00, 0x0b, 0x00, - 0xd0, 0x07, 0x00, 0x0c, 0x00, 0xd2, 0x07, 0x00, - 0x0d, 0x00, 0xd1, 0x42, 0x89, 0x01, 0x00, 0x00, + 0x06, 0x05, 0xa2, 0x05, 0x03, 0x0e, 0x03, 0x04, + 0x00, 0x06, 0xb2, 0x02, 0x11, 0x90, 0x07, 0x00, + 0x01, 0x00, 0xbe, 0x07, 0x00, 0x01, 0x00, 0xc0, + 0x07, 0x00, 0x01, 0x00, 0xc2, 0x07, 0x00, 0x00, + 0x00, 0xc4, 0x07, 0x00, 0x01, 0x00, 0xaa, 0x06, + 0x00, 0x02, 0x00, 0xc6, 0x07, 0x00, 0x03, 0x00, + 0xc8, 0x07, 0x00, 0x04, 0x00, 0xca, 0x07, 0x00, + 0x05, 0x00, 0xde, 0x06, 0x00, 0x06, 0x00, 0xcc, + 0x07, 0x00, 0x07, 0x00, 0xce, 0x07, 0x00, 0x08, + 0x00, 0xd0, 0x07, 0x00, 0x09, 0x00, 0xd2, 0x07, + 0x00, 0x0a, 0x00, 0xd4, 0x07, 0x00, 0x0b, 0x00, + 0xd6, 0x07, 0x00, 0x0c, 0x00, 0xd8, 0x07, 0x00, + 0x0d, 0x00, 0xd1, 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc4, 0x06, 0xb6, 0xa9, 0xea, 0x0a, 0xd1, 0xb5, 0x47, 0x8c, 0xd1, 0xb6, 0x47, 0x9b, 0x28, 0xd1, 0xb5, 0x47, 0xb5, 0xa9, 0xea, 0x07, 0xbf, 0x00, 0xbd, 0xed, 0xb1, 0x28, 0xd1, - 0x42, 0xf3, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, - 0xcd, 0x42, 0xf3, 0x00, 0x00, 0x00, 0x24, 0x00, + 0x42, 0xf6, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, + 0xcd, 0x42, 0xf6, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xca, 0xbf, 0x01, 0xbd, 0xed, 0xb1, 0xc3, 0x0c, 0xbf, 0x02, 0xbd, 0xed, 0xb1, 0xc3, 0x0d, 0xb5, 0xcb, 0xc7, 0xd3, 0xa3, 0x69, 0xe4, 0x00, 0x00, 0x00, 0xd1, 0x42, 0x5a, 0x00, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xd0, 0xb5, 0xa9, 0xea, - 0x03, 0xd2, 0x28, 0x38, 0xf6, 0x00, 0x00, 0x00, + 0x03, 0xd2, 0x28, 0x38, 0xf9, 0x00, 0x00, 0x00, 0xd2, 0xc2, 0x0d, 0x9e, 0xef, 0xc3, 0x0b, 0xc7, 0xb7, 0xa6, 0xea, 0x3b, 0xc2, 0x0b, 0xc2, 0x0c, - 0xa6, 0xea, 0x34, 0x38, 0xf6, 0x00, 0x00, 0x00, + 0xa6, 0xea, 0x34, 0x38, 0xf9, 0x00, 0x00, 0x00, 0xc2, 0x0d, 0xef, 0xbf, 0x03, 0xbd, 0xea, 0xb1, 0xa3, 0xea, 0x0e, 0xc2, 0x0b, 0xbf, 0x04, 0xbd, 0xe7, 0xb1, 0xa3, 0xea, 0x1a, 0xc2, 0x0d, 0x28, - 0xc2, 0x0b, 0x38, 0xf6, 0x00, 0x00, 0x00, 0xc2, + 0xc2, 0x0b, 0x38, 0xf9, 0x00, 0x00, 0x00, 0xc2, 0x0d, 0xef, 0xbf, 0x05, 0xbd, 0xeb, 0xb1, 0x9a, 0xa3, 0xea, 0x04, 0xc2, 0x0d, 0x28, 0xc2, 0x0b, 0xc3, 0x0c, 0xd2, 0xc3, 0x0d, 0xc5, 0x42, 0x5a, @@ -2217,16 +2217,16 @@ const uint8_t qjsc_qjscalc[31967] = { 0x9e, 0xc2, 0x04, 0x9a, 0xc4, 0x07, 0xc2, 0x07, 0x9a, 0xc3, 0x07, 0xc2, 0x06, 0xc2, 0x06, 0xb6, 0x9e, 0x9a, 0xc8, 0x9a, 0xc2, 0x05, 0x9a, 0xc3, - 0x08, 0x38, 0xfd, 0x00, 0x00, 0x00, 0xc2, 0x07, + 0x08, 0x38, 0x00, 0x01, 0x00, 0x00, 0xc2, 0x07, 0xc2, 0x08, 0x9e, 0xef, 0xc3, 0x07, 0xc2, 0x04, 0xc2, 0x07, 0x9d, 0xc3, 0x09, 0xc2, 0x04, 0xc2, - 0x07, 0x9e, 0xc3, 0x0a, 0x38, 0xf5, 0x00, 0x00, - 0x00, 0xc2, 0x0a, 0xef, 0x38, 0xf5, 0x00, 0x00, + 0x07, 0x9e, 0xc3, 0x0a, 0x38, 0xf8, 0x00, 0x00, + 0x00, 0xc2, 0x0a, 0xef, 0x38, 0xf8, 0x00, 0x00, 0x00, 0xc2, 0x09, 0xef, 0xa5, 0xea, 0x05, 0xc2, 0x0a, 0xc3, 0x09, 0xc2, 0x09, 0xb5, 0xa9, 0xea, 0x03, 0x07, 0x28, 0xd2, 0xc2, 0x06, 0xc8, 0x9a, 0xc2, 0x09, 0x9b, 0x9e, 0xd6, 0x93, 0x02, 0xed, - 0x1a, 0xff, 0x07, 0x28, 0xd2, 0x04, 0xf0, 0x07, + 0x1a, 0xff, 0x07, 0x28, 0xd8, 0x04, 0xf0, 0x07, 0x29, 0x00, 0x00, 0x08, 0x3a, 0x18, 0x2b, 0x09, 0x26, 0x22, 0x35, 0x30, 0x26, 0x26, 0x35, 0x3a, 0x17, 0x0f, 0x40, 0x3f, 0x53, 0x35, 0x0d, 0x08, @@ -2237,35 +2237,35 @@ const uint8_t qjsc_qjscalc[31967] = { 0x0b, 0xde, 0x0b, 0xfc, 0x01, 0x06, 0x40, 0x76, 0x3a, 0x6b, 0x0b, 0xde, 0x0b, 0xfc, 0x01, 0x06, 0x40, 0x76, 0x3a, 0x6b, 0x0b, 0xde, 0x0e, 0x43, - 0x06, 0x05, 0x9e, 0x05, 0x01, 0x07, 0x01, 0x05, - 0x01, 0x04, 0xab, 0x01, 0x08, 0x8a, 0x07, 0x00, - 0x01, 0x00, 0xd8, 0x06, 0x00, 0x00, 0x00, 0xa4, - 0x06, 0x00, 0x01, 0x00, 0xd0, 0x04, 0x00, 0x02, - 0x00, 0xb8, 0x06, 0x00, 0x03, 0x00, 0xb8, 0x07, - 0x00, 0x04, 0x00, 0xd4, 0x07, 0x00, 0x05, 0x00, - 0xd6, 0x07, 0x00, 0x06, 0x00, 0x9c, 0x05, 0x24, + 0x06, 0x05, 0xa4, 0x05, 0x01, 0x07, 0x01, 0x05, + 0x01, 0x04, 0xab, 0x01, 0x08, 0x90, 0x07, 0x00, + 0x01, 0x00, 0xde, 0x06, 0x00, 0x00, 0x00, 0xaa, + 0x06, 0x00, 0x01, 0x00, 0xd6, 0x04, 0x00, 0x02, + 0x00, 0xbe, 0x06, 0x00, 0x03, 0x00, 0xbe, 0x07, + 0x00, 0x04, 0x00, 0xda, 0x07, 0x00, 0x05, 0x00, + 0xdc, 0x07, 0x00, 0x06, 0x00, 0xa2, 0x05, 0x24, 0x01, 0xbf, 0x00, 0xbd, 0xed, 0xb1, 0xbf, 0x01, 0xbd, 0xee, 0xb1, 0x8c, 0xbf, 0x02, 0xbd, 0xee, 0xb1, 0x26, 0x03, 0x00, 0xc3, 0x06, 0xd1, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0xa7, 0x96, 0xea, 0x0d, - 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xec, 0x01, - 0x00, 0x00, 0xef, 0x2f, 0xd1, 0x42, 0x89, 0x01, + 0xe6, 0x00, 0x00, 0x00, 0xa7, 0x96, 0xea, 0x0d, + 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, 0xef, 0x01, + 0x00, 0x00, 0xef, 0x2f, 0xd1, 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xcd, 0xb5, 0xa4, 0xea, 0x05, 0x26, 0x00, 0x00, 0x28, 0xbf, 0x03, - 0xbd, 0xee, 0xb1, 0x38, 0xb1, 0x00, 0x00, 0x00, - 0x41, 0xc6, 0x01, 0x00, 0x00, 0x8c, 0x9f, 0xc3, + 0xbd, 0xee, 0xb1, 0x38, 0xb4, 0x00, 0x00, 0x00, + 0x41, 0xc9, 0x01, 0x00, 0x00, 0x8c, 0x9f, 0xc3, 0x05, 0x26, 0x00, 0x00, 0xcb, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0xea, 0x4f, 0xb5, 0xcc, 0xc8, 0xb8, 0xa3, 0xea, 0x15, 0xdd, 0xd1, 0xc2, 0x06, 0xc8, 0x47, 0xbd, 0x64, 0xf1, 0xc4, 0x04, 0xf3, 0xeb, 0x03, 0xec, 0x05, 0x93, 0x03, 0xec, 0xe8, 0xc8, - 0xb8, 0xa9, 0xea, 0x0d, 0x38, 0xc9, 0x00, 0x00, - 0x00, 0x04, 0xed, 0x01, 0x00, 0x00, 0xef, 0x2f, - 0xc7, 0xc6, 0xc2, 0x04, 0x49, 0x38, 0xe3, 0x00, - 0x00, 0x00, 0x42, 0x8a, 0x01, 0x00, 0x00, 0xd1, - 0x38, 0xe9, 0x00, 0x00, 0x00, 0xc2, 0x04, 0x9e, + 0xb8, 0xa9, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, + 0x00, 0x04, 0xf0, 0x01, 0x00, 0x00, 0xef, 0x2f, + 0xc7, 0xc6, 0xc2, 0x04, 0x49, 0x38, 0xe6, 0x00, + 0x00, 0x00, 0x42, 0x8d, 0x01, 0x00, 0x00, 0xd1, + 0x38, 0xec, 0x00, 0x00, 0x00, 0xc2, 0x04, 0x9e, 0x24, 0x02, 0x00, 0xb5, 0x47, 0xd5, 0x93, 0x01, - 0xec, 0xae, 0xc7, 0x28, 0xd2, 0x04, 0xa6, 0x08, + 0xec, 0xae, 0xc7, 0x28, 0xd8, 0x04, 0xa6, 0x08, 0x14, 0x05, 0x6d, 0x35, 0x3f, 0x35, 0x17, 0x17, 0x62, 0x17, 0x27, 0x26, 0x3a, 0x12, 0x0d, 0x17, 0x1c, 0x3f, 0x1c, 0x80, 0x17, 0x0b, 0xfc, 0x01, @@ -2275,114 +2275,114 @@ const uint8_t qjsc_qjscalc[31967] = { 0xe7, 0xbc, 0xbc, 0x0b, 0x80, 0x02, 0x06, 0x40, 0x76, 0x3a, 0x6b, 0x0b, 0xde, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, - 0x21, 0x03, 0xb6, 0x06, 0x00, 0x00, 0x00, 0xa4, + 0x21, 0x03, 0xbc, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xcb, 0xc7, 0xcd, 0xe9, 0xca, 0xc6, 0xb6, 0xa5, 0xea, 0x0e, 0xc5, 0xc6, 0xb6, 0x9e, 0x47, 0xb5, 0xa9, 0xea, 0x05, 0x92, 0x01, 0xec, 0xef, 0xc5, 0xc6, 0x43, 0x30, 0x00, 0x00, 0x00, 0xc5, - 0x28, 0xd2, 0x04, 0xc2, 0x08, 0x06, 0x0d, 0x08, + 0x28, 0xd8, 0x04, 0xc2, 0x08, 0x06, 0x0d, 0x08, 0x12, 0x49, 0x17, 0x26, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00, 0x00, 0x2f, - 0x05, 0xcc, 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, - 0x00, 0x01, 0x00, 0xd4, 0x06, 0x00, 0x02, 0x00, - 0xb6, 0x06, 0x00, 0x03, 0x00, 0x10, 0x00, 0x01, + 0x05, 0xd2, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, + 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, + 0xbc, 0x06, 0x00, 0x03, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x04, 0xc2, 0x04, 0xd0, 0xe9, 0xcb, 0x26, 0x00, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xc7, 0xa3, 0xea, 0x14, 0xc5, 0xc6, 0x71, 0xc8, - 0xc6, 0x47, 0x42, 0xf7, 0x00, 0x00, 0x00, 0x24, + 0xc6, 0x47, 0x42, 0xfa, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x49, 0x93, 0x01, 0xec, 0xe9, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0xc5, 0x23, 0x01, 0x00, - 0xd2, 0x04, 0xca, 0x08, 0x06, 0x13, 0x12, 0x0d, + 0xe6, 0x00, 0x00, 0x00, 0xc5, 0x23, 0x01, 0x00, + 0xd8, 0x04, 0xca, 0x08, 0x06, 0x13, 0x12, 0x0d, 0x17, 0x26, 0x62, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x15, 0x01, - 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, 0xe5, - 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, + 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, 0xe8, + 0x00, 0x00, 0x00, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xb6, 0x26, 0x01, 0x00, 0xef, 0xc5, 0x23, 0x02, - 0x00, 0xd2, 0x04, 0xd3, 0x08, 0x01, 0x0d, 0x0e, + 0x00, 0xd8, 0x04, 0xd3, 0x08, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x06, 0x00, 0x03, - 0x01, 0x00, 0x67, 0x06, 0xa4, 0x06, 0x00, 0x00, - 0x00, 0xdc, 0x07, 0x00, 0x01, 0x00, 0xb2, 0x07, - 0x00, 0x02, 0x00, 0xea, 0x06, 0x00, 0x03, 0x00, - 0xb6, 0x06, 0x00, 0x04, 0x00, 0x10, 0x00, 0x01, - 0x00, 0x9a, 0x05, 0x23, 0x01, 0x08, 0xc3, 0x05, + 0x01, 0x00, 0x67, 0x06, 0xaa, 0x06, 0x00, 0x00, + 0x00, 0xe2, 0x07, 0x00, 0x01, 0x00, 0xb8, 0x07, + 0x00, 0x02, 0x00, 0xf0, 0x06, 0x00, 0x03, 0x00, + 0xbc, 0x06, 0x00, 0x04, 0x00, 0x10, 0x00, 0x01, + 0x00, 0xa0, 0x05, 0x23, 0x01, 0x08, 0xc3, 0x05, 0xc2, 0x05, 0xc4, 0x04, 0xe9, 0xb6, 0xa9, 0xea, 0x0d, 0xc2, 0x04, 0xb5, 0x47, 0x42, 0x37, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0xc1, 0xca, 0xc2, 0x04, 0xe9, 0xb6, 0x9e, 0xc9, 0xc5, 0xb5, 0xa6, 0xea, 0x41, 0xc2, 0x04, 0xc5, 0x47, 0xd0, 0xb5, - 0xa9, 0x11, 0xeb, 0x13, 0x0e, 0xc8, 0x38, 0xe2, + 0xa9, 0x11, 0xeb, 0x13, 0x0e, 0xc8, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x0b, 0xc8, 0x41, - 0xd2, 0x01, 0x00, 0x00, 0xb5, 0xa9, 0xeb, 0x1f, + 0xd5, 0x01, 0x00, 0x00, 0xb5, 0xa9, 0xeb, 0x1f, 0xdd, 0xc8, 0xc5, 0xf0, 0xcf, 0xb5, 0x47, 0x04, - 0x76, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x0d, 0xc6, - 0xc1, 0xaa, 0xea, 0x08, 0x04, 0x75, 0x01, 0x00, + 0x79, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x0d, 0xc6, + 0xc1, 0xaa, 0xea, 0x08, 0x04, 0x78, 0x01, 0x00, 0x00, 0x94, 0x01, 0xc7, 0x94, 0x01, 0x92, 0x00, - 0xec, 0xbc, 0xc6, 0x28, 0xd2, 0x04, 0xd6, 0x08, + 0xec, 0xbc, 0xc6, 0x28, 0xd8, 0x04, 0xd6, 0x08, 0x10, 0x12, 0x0d, 0x26, 0x40, 0x0d, 0x3a, 0x1c, 0x21, 0x58, 0x0d, 0x1c, 0x35, 0x1c, 0x27, 0x12, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x1b, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0xc5, 0xe9, 0xb6, 0xa9, 0xea, 0x0f, 0xc5, 0xb5, 0x47, 0xb5, 0xa9, 0xea, - 0x08, 0x38, 0xef, 0x01, 0x00, 0x00, 0x8c, 0x28, - 0xc5, 0xe9, 0xb6, 0x9e, 0x28, 0xd2, 0x04, 0xea, + 0x08, 0x38, 0xf2, 0x01, 0x00, 0x00, 0x8c, 0x28, + 0xc5, 0xe9, 0xb6, 0x9e, 0x28, 0xd8, 0x04, 0xea, 0x08, 0x04, 0x0d, 0x44, 0x21, 0x08, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x05, 0x01, 0x03, 0x00, - 0x00, 0x21, 0x06, 0xba, 0x06, 0x00, 0x01, 0x00, - 0xa4, 0x06, 0x00, 0x00, 0x00, 0xd4, 0x06, 0x00, - 0x01, 0x00, 0xcc, 0x06, 0x00, 0x02, 0x00, 0xb6, + 0x00, 0x21, 0x06, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0xaa, 0x06, 0x00, 0x00, 0x00, 0xda, 0x06, 0x00, + 0x01, 0x00, 0xd2, 0x06, 0x00, 0x02, 0x00, 0xbc, 0x06, 0x00, 0x03, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x04, 0xc2, 0x04, 0xd0, 0xe9, 0xb6, 0x9e, 0xca, 0xc8, 0xc6, 0x47, 0xcb, 0xc6, 0xb5, 0xa5, 0xea, 0x0d, 0x92, 0x01, 0xc7, 0xd1, 0x9a, 0xc8, 0xc6, 0x47, 0x9d, 0xcb, 0xec, 0xf0, 0xc7, - 0x28, 0xd2, 0x04, 0xf0, 0x08, 0x08, 0x12, 0x0d, + 0x28, 0xd8, 0x04, 0xf0, 0x08, 0x08, 0x12, 0x0d, 0x1c, 0x17, 0x1c, 0x0d, 0x2b, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00, - 0x00, 0x38, 0x05, 0xb6, 0x06, 0x00, 0x00, 0x00, - 0xd4, 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, - 0x02, 0x00, 0xa4, 0x06, 0x00, 0x03, 0x00, 0x10, + 0x00, 0x38, 0x05, 0xbc, 0x06, 0x00, 0x00, 0x00, + 0xda, 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, + 0x02, 0x00, 0xaa, 0x06, 0x00, 0x03, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x04, 0xc2, 0x04, 0xcd, 0xe9, 0xce, 0xb6, 0xa9, 0xea, 0x0a, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0xb5, 0x23, 0x01, 0x00, + 0xe6, 0x00, 0x00, 0x00, 0xb5, 0x23, 0x01, 0x00, 0x26, 0x00, 0x00, 0xcb, 0xb6, 0xcc, 0xc8, 0xc6, 0xa3, 0xea, 0x10, 0xc7, 0xc8, 0xb6, 0x9e, 0x71, 0xc8, 0xc5, 0xc8, 0x47, 0x9a, 0x49, 0x93, 0x03, - 0xec, 0xed, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xc7, - 0x23, 0x01, 0x00, 0xd2, 0x04, 0xfa, 0x08, 0x09, + 0xec, 0xed, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xc7, + 0x23, 0x01, 0x00, 0xd8, 0x04, 0xfa, 0x08, 0x09, 0x12, 0x0d, 0x12, 0x17, 0x31, 0x17, 0x26, 0x3a, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x05, - 0x00, 0x05, 0x00, 0x00, 0x2e, 0x05, 0xb6, 0x06, - 0x00, 0x00, 0x00, 0xd4, 0x06, 0x00, 0x01, 0x00, - 0xcc, 0x06, 0x00, 0x02, 0x00, 0xa4, 0x06, 0x00, + 0x00, 0x05, 0x00, 0x00, 0x2e, 0x05, 0xbc, 0x06, + 0x00, 0x00, 0x00, 0xda, 0x06, 0x00, 0x01, 0x00, + 0xd2, 0x06, 0x00, 0x02, 0x00, 0xaa, 0x06, 0x00, 0x03, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x04, 0xc2, 0x04, 0xcd, 0xe9, 0xca, 0xb5, 0x26, 0x01, 0x00, 0xcb, 0xb5, 0xcc, 0xc8, 0xc6, 0xa3, 0xea, 0x12, 0xc7, 0xc8, 0xb6, 0x9d, 0x71, 0xc5, 0xc8, 0x47, 0xc8, 0xb6, 0x9d, 0x9b, 0x49, 0x93, - 0x03, 0xec, 0xeb, 0x38, 0xe3, 0x00, 0x00, 0x00, - 0xc7, 0x23, 0x01, 0x00, 0xd2, 0x04, 0x87, 0x09, + 0x03, 0xec, 0xeb, 0x38, 0xe6, 0x00, 0x00, 0x00, + 0xc7, 0x23, 0x01, 0x00, 0xd8, 0x04, 0x87, 0x09, 0x07, 0x12, 0x0d, 0x12, 0x1c, 0x26, 0x44, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x05, 0x00, - 0x03, 0x00, 0x00, 0x25, 0x05, 0xb6, 0x06, 0x00, - 0x00, 0x00, 0xd4, 0x06, 0x00, 0x01, 0x00, 0xcc, - 0x06, 0x00, 0x02, 0x00, 0xa4, 0x06, 0x00, 0x03, + 0x03, 0x00, 0x00, 0x25, 0x05, 0xbc, 0x06, 0x00, + 0x00, 0x00, 0xda, 0x06, 0x00, 0x01, 0x00, 0xd2, + 0x06, 0x00, 0x02, 0x00, 0xaa, 0x06, 0x00, 0x03, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x04, 0xc2, 0x04, 0xcd, 0xe9, 0xca, 0xb5, 0xcb, 0xb5, 0xcc, 0xc8, 0xc6, 0xa3, 0xea, 0x13, 0xc7, 0xc5, - 0xc8, 0x47, 0x42, 0xf5, 0x00, 0x00, 0x00, 0x24, + 0xc8, 0x47, 0x42, 0xf8, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x9d, 0xcb, 0x93, 0x03, 0xec, 0xea, - 0xc7, 0x28, 0xd2, 0x04, 0x90, 0x09, 0x07, 0x12, + 0xc7, 0x28, 0xd8, 0x04, 0x90, 0x09, 0x07, 0x12, 0x0d, 0x12, 0x0d, 0x26, 0x49, 0x17, 0x0e, 0x43, - 0x06, 0x05, 0xa0, 0x05, 0x02, 0x05, 0x02, 0x05, - 0x00, 0x00, 0x5a, 0x07, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0xe0, 0x07, - 0x00, 0x00, 0x00, 0xcc, 0x06, 0x00, 0x01, 0x00, - 0xa4, 0x06, 0x00, 0x02, 0x00, 0xf2, 0x06, 0x00, - 0x03, 0x00, 0xe2, 0x07, 0x00, 0x04, 0x00, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0xd1, + 0x06, 0x05, 0xa6, 0x05, 0x02, 0x05, 0x02, 0x05, + 0x00, 0x00, 0x5a, 0x07, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0xe6, 0x07, + 0x00, 0x00, 0x00, 0xd2, 0x06, 0x00, 0x01, 0x00, + 0xaa, 0x06, 0x00, 0x02, 0x00, 0xf8, 0x06, 0x00, + 0x03, 0x00, 0xe8, 0x07, 0x00, 0x04, 0x00, 0x38, + 0xe6, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, 0x38, + 0xe6, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0xd1, 0xe9, 0xd2, 0xe9, 0xa3, 0xea, 0x07, 0xd1, 0xc9, 0xd2, 0xd5, 0xc5, 0xd6, 0xd2, 0xe9, 0xcc, 0xd1, 0xe9, 0xc3, 0x04, 0x26, 0x00, 0x00, 0xca, 0xb5, @@ -2391,23 +2391,23 @@ const uint8_t qjsc_qjscalc[31967] = { 0x49, 0x93, 0x02, 0xec, 0xed, 0xc8, 0xcb, 0xc7, 0xc2, 0x04, 0xa3, 0xea, 0x0c, 0xc6, 0xc7, 0x71, 0xd1, 0xc7, 0x47, 0x49, 0x93, 0x02, 0xec, 0xf0, - 0x38, 0xe3, 0x00, 0x00, 0x00, 0xc6, 0x23, 0x01, - 0x00, 0xd2, 0x04, 0x9c, 0x09, 0x0e, 0x04, 0x2b, + 0x38, 0xe6, 0x00, 0x00, 0x00, 0xc6, 0x23, 0x01, + 0x00, 0xd8, 0x04, 0x9c, 0x09, 0x0e, 0x04, 0x2b, 0x2b, 0x26, 0x0d, 0x0d, 0x0e, 0x12, 0x17, 0x17, 0x26, 0x4e, 0x2b, 0x3a, 0x0e, 0x43, 0x06, 0x05, - 0xa2, 0x05, 0x02, 0x00, 0x02, 0x03, 0x01, 0x00, - 0x07, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0xa0, 0x05, 0x26, 0x01, - 0xdd, 0xd1, 0xd2, 0x8c, 0x23, 0x02, 0x00, 0xd2, + 0xa8, 0x05, 0x02, 0x00, 0x02, 0x03, 0x01, 0x00, + 0x07, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0xa6, 0x05, 0x26, 0x01, + 0xdd, 0xd1, 0xd2, 0x8c, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xae, 0x09, 0x01, 0x03, 0x0e, 0x43, 0x06, - 0x05, 0xa4, 0x05, 0x02, 0x06, 0x02, 0x06, 0x00, - 0x00, 0x64, 0x08, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xba, 0x06, 0x00, 0x01, 0x00, 0xa4, 0x06, 0x00, - 0x00, 0x00, 0xb8, 0x06, 0x00, 0x01, 0x00, 0xf2, - 0x06, 0x00, 0x02, 0x00, 0xe2, 0x07, 0x00, 0x03, - 0x00, 0xd4, 0x06, 0x00, 0x04, 0x00, 0xcc, 0x06, - 0x00, 0x05, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, - 0xd1, 0xef, 0xd5, 0x38, 0xe3, 0x00, 0x00, 0x00, + 0x05, 0xaa, 0x05, 0x02, 0x06, 0x02, 0x06, 0x00, + 0x00, 0x64, 0x08, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xc0, 0x06, 0x00, 0x01, 0x00, 0xaa, 0x06, 0x00, + 0x00, 0x00, 0xbe, 0x06, 0x00, 0x01, 0x00, 0xf8, + 0x06, 0x00, 0x02, 0x00, 0xe8, 0x07, 0x00, 0x03, + 0x00, 0xda, 0x06, 0x00, 0x04, 0x00, 0xd2, 0x06, + 0x00, 0x05, 0x00, 0x38, 0xe6, 0x00, 0x00, 0x00, + 0xd1, 0xef, 0xd5, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0xd1, 0xe9, 0xcb, 0xd2, 0xe9, 0xcc, 0xc7, 0xc8, 0x9d, 0xb6, 0x9e, 0xc3, 0x04, 0x26, 0x00, 0x00, 0xc3, 0x05, 0xb5, 0xc9, 0xc5, @@ -2417,67 +2417,67 @@ const uint8_t qjsc_qjscalc[31967] = { 0xc8, 0xa3, 0xea, 0x16, 0xc2, 0x05, 0xc5, 0xc6, 0x9d, 0x71, 0x13, 0x47, 0xd1, 0xc5, 0x47, 0xd2, 0xc6, 0x47, 0x9a, 0x9d, 0x49, 0x93, 0x01, 0xec, - 0xe7, 0x93, 0x00, 0xec, 0xdc, 0x38, 0xe3, 0x00, - 0x00, 0x00, 0xc2, 0x05, 0x23, 0x01, 0x00, 0xd2, + 0xe7, 0x93, 0x00, 0xec, 0xdc, 0x38, 0xe6, 0x00, + 0x00, 0x00, 0xc2, 0x05, 0x23, 0x01, 0x00, 0xd8, 0x04, 0xb1, 0x09, 0x0e, 0x04, 0x2b, 0x2b, 0x12, 0x12, 0x26, 0x1c, 0x2b, 0x30, 0x26, 0x26, 0x58, - 0x17, 0x17, 0x0e, 0x43, 0x06, 0x05, 0xa6, 0x05, + 0x17, 0x17, 0x0e, 0x43, 0x06, 0x05, 0xac, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, 0x06, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0xd1, 0xb6, 0xd2, 0x9b, 0x9a, 0x28, - 0xd2, 0x04, 0xc2, 0x09, 0x01, 0x03, 0x0e, 0x43, - 0x06, 0x05, 0xa8, 0x05, 0x02, 0x00, 0x02, 0x04, - 0x00, 0x00, 0x16, 0x02, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe5, - 0x00, 0x00, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, - 0xd1, 0xef, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xd2, - 0xef, 0x23, 0x02, 0x00, 0xd2, 0x04, 0xc5, 0x09, - 0x02, 0x04, 0x3f, 0x0e, 0x43, 0x06, 0x05, 0xaa, + 0xd8, 0x04, 0xc2, 0x09, 0x01, 0x03, 0x0e, 0x43, + 0x06, 0x05, 0xae, 0x05, 0x02, 0x00, 0x02, 0x04, + 0x00, 0x00, 0x16, 0x02, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe8, + 0x00, 0x00, 0x00, 0x38, 0xe6, 0x00, 0x00, 0x00, + 0xd1, 0xef, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xd2, + 0xef, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xc5, 0x09, + 0x02, 0x04, 0x3f, 0x0e, 0x43, 0x06, 0x05, 0xb0, 0x05, 0x02, 0x00, 0x02, 0x04, 0x00, 0x00, 0x12, - 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, - 0x00, 0x01, 0x00, 0x38, 0xe3, 0x00, 0x00, 0x00, - 0x42, 0x8a, 0x01, 0x00, 0x00, 0xd1, 0xd2, 0x24, - 0x02, 0x00, 0xb6, 0x47, 0x28, 0xd2, 0x04, 0xca, - 0x09, 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, 0xac, + 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0x38, 0xe6, 0x00, 0x00, 0x00, + 0x42, 0x8d, 0x01, 0x00, 0x00, 0xd1, 0xd2, 0x24, + 0x02, 0x00, 0xb6, 0x47, 0x28, 0xd8, 0x04, 0xca, + 0x09, 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, 0xb2, 0x05, 0x02, 0x02, 0x02, 0x03, 0x00, 0x00, 0x22, - 0x04, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, - 0x00, 0x01, 0x00, 0xd4, 0x06, 0x00, 0x00, 0x00, - 0xa4, 0x06, 0x00, 0x01, 0x00, 0xd1, 0xe9, 0xcd, + 0x04, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, 0x00, 0x00, + 0xaa, 0x06, 0x00, 0x01, 0x00, 0xd1, 0xe9, 0xcd, 0xd2, 0xe9, 0xaa, 0xea, 0x03, 0x09, 0x28, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0xea, 0x10, 0xd1, 0xc6, 0x47, 0xd2, 0xc6, 0x47, 0xaa, 0xea, 0x03, 0x09, - 0x28, 0x93, 0x01, 0xec, 0xed, 0x0a, 0x28, 0xd2, + 0x28, 0x93, 0x01, 0xec, 0xed, 0x0a, 0x28, 0xd8, 0x04, 0xcd, 0x09, 0x08, 0x04, 0x12, 0x1c, 0x0d, 0x26, 0x30, 0x0d, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x02, - 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x28, - 0xd2, 0x04, 0xe1, 0x09, 0x01, 0x03, 0x0e, 0x42, + 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x28, + 0xd8, 0x04, 0xe1, 0x09, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x03, 0x01, 0x04, 0x00, - 0x00, 0x23, 0x04, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xcc, 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, 0x00, - 0x01, 0x00, 0xd4, 0x06, 0x00, 0x02, 0x00, 0xd1, + 0x00, 0x23, 0x04, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xd2, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, 0x00, + 0x01, 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, 0xcb, 0x26, 0x00, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xc7, 0xa3, 0xea, 0x0d, 0xc5, 0xc6, 0x71, 0xd1, 0xc6, 0x47, 0x8c, 0x49, 0x93, 0x01, 0xec, - 0xf0, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xc5, 0x23, - 0x01, 0x00, 0xd2, 0x04, 0xe4, 0x09, 0x05, 0x04, + 0xf0, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xc5, 0x23, + 0x01, 0x00, 0xd8, 0x04, 0xe4, 0x09, 0x05, 0x04, 0x12, 0x17, 0x26, 0x3f, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x08, 0x02, 0x05, 0x00, 0x00, 0xc8, - 0x01, 0x0a, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0xf2, 0x06, 0x00, 0x00, - 0x00, 0xe2, 0x07, 0x00, 0x01, 0x00, 0xa4, 0x06, - 0x00, 0x02, 0x00, 0xb8, 0x06, 0x00, 0x03, 0x00, - 0xe4, 0x06, 0x00, 0x04, 0x00, 0xcc, 0x06, 0x00, - 0x05, 0x00, 0xd4, 0x06, 0x00, 0x06, 0x00, 0xea, - 0x06, 0x00, 0x07, 0x00, 0xd2, 0x42, 0x89, 0x01, + 0x01, 0x0a, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0xf8, 0x06, 0x00, 0x00, + 0x00, 0xe8, 0x07, 0x00, 0x01, 0x00, 0xaa, 0x06, + 0x00, 0x02, 0x00, 0xbe, 0x06, 0x00, 0x03, 0x00, + 0xea, 0x06, 0x00, 0x04, 0x00, 0xd2, 0x06, 0x00, + 0x05, 0x00, 0xda, 0x06, 0x00, 0x06, 0x00, 0xf0, + 0x06, 0x00, 0x07, 0x00, 0xd2, 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, 0xa3, 0xea, - 0x0d, 0x38, 0xc9, 0x00, 0x00, 0x00, 0x04, 0xbd, + 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xe9, 0xc9, 0xd2, 0xe9, 0xca, 0xc5, 0xc6, 0xa3, 0xea, 0x10, - 0x38, 0xe3, 0x00, 0x00, 0x00, 0xb5, 0x26, 0x01, + 0x38, 0xe6, 0x00, 0x00, 0x00, 0xb5, 0x26, 0x01, 0x00, 0xef, 0xd1, 0x26, 0x02, 0x00, 0x28, 0x38, - 0x93, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x41, 0x8f, 0x01, 0x00, 0x00, 0x42, 0xa5, + 0x96, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, + 0x00, 0x41, 0x92, 0x01, 0x00, 0x00, 0x42, 0xa8, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xc3, 0x05, 0x26, 0x00, 0x00, 0xc3, 0x04, 0x92, 0x01, 0xc5, 0xc6, 0x9e, 0xc3, 0x06, 0xb5, 0xcb, 0xc7, @@ -2492,411 +2492,411 @@ const uint8_t qjsc_qjscalc[31967] = { 0x13, 0x47, 0xd2, 0xc8, 0x47, 0xc2, 0x07, 0x9a, 0x9e, 0x49, 0x93, 0x03, 0xec, 0xe8, 0xc2, 0x04, 0xc7, 0xc2, 0x07, 0x49, 0x92, 0x02, 0xec, 0xbc, - 0x38, 0xe3, 0x00, 0x00, 0x00, 0xc2, 0x04, 0xef, - 0x38, 0xe3, 0x00, 0x00, 0x00, 0xc2, 0x05, 0xef, - 0x26, 0x02, 0x00, 0x28, 0xd2, 0x04, 0xff, 0x09, + 0x38, 0xe6, 0x00, 0x00, 0x00, 0xc2, 0x04, 0xef, + 0x38, 0xe6, 0x00, 0x00, 0x00, 0xc2, 0x05, 0xef, + 0x26, 0x02, 0x00, 0x28, 0xd8, 0x04, 0xff, 0x09, 0x17, 0x04, 0x44, 0x3f, 0x12, 0x12, 0x1c, 0x4e, 0x85, 0x1c, 0x0d, 0x1c, 0x2b, 0x30, 0x35, 0x2b, 0x17, 0x2b, 0x26, 0x26, 0x53, 0x17, 0x22, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x01, 0x02, - 0x04, 0x00, 0x00, 0x2e, 0x03, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0xd6, - 0x06, 0x00, 0x00, 0x00, 0xd2, 0x42, 0x89, 0x01, + 0x04, 0x00, 0x00, 0x2e, 0x03, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0xdc, + 0x06, 0x00, 0x00, 0x00, 0xd2, 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, 0xa6, 0xea, - 0x19, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x42, 0x8a, + 0x19, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, 0x8d, 0x01, 0x00, 0x00, 0xd1, 0xd2, 0x24, 0x02, 0x00, 0xc9, 0xd2, 0xd5, 0xc5, 0xb6, 0x47, 0xd6, 0xec, 0xdc, 0xd1, 0xd1, 0xd1, 0xe9, 0xb6, 0x9e, 0x47, - 0x9b, 0x28, 0xd2, 0x04, 0x9a, 0x0a, 0x06, 0x04, + 0x9b, 0x28, 0xd8, 0x04, 0x9a, 0x0a, 0x06, 0x04, 0x44, 0x53, 0x0d, 0x17, 0x0e, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x06, 0x02, 0x04, 0x00, 0x00, - 0x7f, 0x08, 0xe0, 0x06, 0x00, 0x01, 0x00, 0xe2, - 0x06, 0x00, 0x01, 0x00, 0xe4, 0x06, 0x00, 0x00, - 0x00, 0xe6, 0x06, 0x00, 0x01, 0x00, 0xe8, 0x06, - 0x00, 0x02, 0x00, 0xb6, 0x06, 0x00, 0x03, 0x00, - 0xea, 0x06, 0x00, 0x04, 0x00, 0xd6, 0x06, 0x00, - 0x05, 0x00, 0xd1, 0xca, 0xd2, 0xcb, 0x38, 0xe3, + 0x7f, 0x08, 0xe6, 0x06, 0x00, 0x01, 0x00, 0xe8, + 0x06, 0x00, 0x01, 0x00, 0xea, 0x06, 0x00, 0x00, + 0x00, 0xec, 0x06, 0x00, 0x01, 0x00, 0xee, 0x06, + 0x00, 0x02, 0x00, 0xbc, 0x06, 0x00, 0x03, 0x00, + 0xf0, 0x06, 0x00, 0x04, 0x00, 0xdc, 0x06, 0x00, + 0x05, 0x00, 0xd1, 0xca, 0xd2, 0xcb, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xb6, 0x26, 0x01, 0x00, 0xef, - 0xc3, 0x04, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xb5, - 0x26, 0x01, 0x00, 0xef, 0xcc, 0xc6, 0x42, 0x89, + 0xc3, 0x04, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xb5, + 0x26, 0x01, 0x00, 0xef, 0xcc, 0xc6, 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, 0xa6, - 0xea, 0x2d, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x42, - 0x8a, 0x01, 0x00, 0x00, 0xc7, 0xc6, 0x24, 0x02, + 0xea, 0x2d, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, + 0x8d, 0x01, 0x00, 0x00, 0xc7, 0xc6, 0x24, 0x02, 0x00, 0xc4, 0x05, 0xb5, 0x47, 0xc9, 0xc6, 0xcb, 0xc2, 0x05, 0xb6, 0x47, 0xca, 0xc2, 0x04, 0xc3, 0x05, 0xc8, 0xc5, 0xc2, 0x04, 0x9a, 0x9e, 0xc3, 0x04, 0xc2, 0x05, 0xcc, 0xec, 0xc8, 0xc7, 0x42, - 0x89, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, - 0xa5, 0xea, 0x0d, 0x38, 0xc9, 0x00, 0x00, 0x00, - 0x04, 0xb7, 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0x42, 0x8a, 0x01, 0x00, + 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, + 0xa5, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, + 0x04, 0xba, 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, + 0xe6, 0x00, 0x00, 0x00, 0x42, 0x8d, 0x01, 0x00, 0x00, 0xc8, 0xd2, 0x24, 0x02, 0x00, 0xb6, 0x47, - 0x28, 0xd2, 0x04, 0xa4, 0x0a, 0x10, 0x04, 0x0d, + 0x28, 0xd8, 0x04, 0xa4, 0x0a, 0x10, 0x04, 0x0d, 0x0d, 0x3f, 0x3a, 0x44, 0x58, 0x12, 0x0d, 0x1c, 0x17, 0x2b, 0x12, 0x0e, 0x44, 0x3f, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x02, 0x01, - 0x00, 0x05, 0x01, 0x8a, 0x07, 0x00, 0x01, 0x00, - 0x9e, 0x05, 0x25, 0x01, 0xdd, 0xd1, 0x23, 0x01, - 0x00, 0xd2, 0x04, 0xb8, 0x0a, 0x01, 0x03, 0x0e, - 0x43, 0x06, 0x05, 0xc8, 0x03, 0x02, 0x04, 0x02, - 0x04, 0x00, 0x00, 0x9e, 0x01, 0x06, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xf0, 0x06, 0x00, 0x01, 0x00, - 0xa0, 0x06, 0x00, 0x00, 0x00, 0xd6, 0x06, 0x00, - 0x01, 0x00, 0xe2, 0x01, 0x00, 0x01, 0x00, 0xc8, + 0x00, 0x05, 0x01, 0x90, 0x07, 0x00, 0x01, 0x00, + 0xa4, 0x05, 0x25, 0x01, 0xdd, 0xd1, 0x23, 0x01, + 0x00, 0xd8, 0x04, 0xb8, 0x0a, 0x01, 0x03, 0x0e, + 0x43, 0x06, 0x05, 0xce, 0x03, 0x02, 0x04, 0x02, + 0x04, 0x00, 0x00, 0x9e, 0x01, 0x06, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xf6, 0x06, 0x00, 0x01, 0x00, + 0xa6, 0x06, 0x00, 0x00, 0x00, 0xdc, 0x06, 0x00, + 0x01, 0x00, 0xe2, 0x01, 0x00, 0x01, 0x00, 0xce, 0x03, 0x00, 0x01, 0x14, 0x0c, 0x03, 0xcb, 0x0c, - 0x02, 0xcc, 0xc7, 0xea, 0x0d, 0x38, 0xcc, 0x00, - 0x00, 0x00, 0x04, 0xbb, 0x01, 0x00, 0x00, 0xef, - 0x2f, 0x38, 0x92, 0x00, 0x00, 0x00, 0x42, 0xa4, + 0x02, 0xcc, 0xc7, 0xea, 0x0d, 0x38, 0xcf, 0x00, + 0x00, 0x00, 0x04, 0xbe, 0x01, 0x00, 0x00, 0xef, + 0x2f, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0xa7, 0x01, 0x00, 0x00, 0xc8, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x24, 0x01, 0x00, 0xc9, 0xd2, 0x38, 0xe3, + 0x00, 0x24, 0x01, 0x00, 0xc9, 0xd2, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x51, 0xd2, 0x42, - 0x89, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, - 0xa4, 0xea, 0x0d, 0x38, 0xc9, 0x00, 0x00, 0x00, - 0x04, 0xf2, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, - 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x12, - 0xc8, 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd2, - 0xf0, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9b, - 0x28, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xd1, 0xef, - 0xd5, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x42, 0x8a, + 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, + 0xa4, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, + 0x04, 0xf5, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd1, + 0x38, 0xe8, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x12, + 0xc8, 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd2, + 0xf0, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9b, + 0x28, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xd1, 0xef, + 0xd5, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, 0x8d, 0x01, 0x00, 0x00, 0xd1, 0xd2, 0x24, 0x02, 0x00, - 0xce, 0xb6, 0x47, 0xd5, 0xec, 0x0d, 0x38, 0xcc, - 0x00, 0x00, 0x00, 0x04, 0xd1, 0x01, 0x00, 0x00, - 0xef, 0x2f, 0xc5, 0xd1, 0x43, 0xd2, 0x01, 0x00, - 0x00, 0xc5, 0xd2, 0x43, 0xd3, 0x01, 0x00, 0x00, - 0xc5, 0x28, 0xd2, 0x04, 0xbf, 0x0a, 0x12, 0x22, + 0xce, 0xb6, 0x47, 0xd5, 0xec, 0x0d, 0x38, 0xcf, + 0x00, 0x00, 0x00, 0x04, 0xd4, 0x01, 0x00, 0x00, + 0xef, 0x2f, 0xc5, 0xd1, 0x43, 0xd5, 0x01, 0x00, + 0x00, 0xc5, 0xd2, 0x43, 0xd6, 0x01, 0x00, 0x00, + 0xc5, 0x28, 0xd8, 0x04, 0xbf, 0x0a, 0x12, 0x22, 0x12, 0x3f, 0x67, 0x30, 0x44, 0x3f, 0x30, 0x53, 0x08, 0x2b, 0x53, 0x13, 0x0d, 0x3a, 0x08, 0x26, - 0x26, 0x0e, 0x43, 0x06, 0x05, 0xae, 0x05, 0x02, - 0x00, 0x02, 0x03, 0x00, 0x00, 0x76, 0x02, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0xd1, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xa7, - 0x96, 0xea, 0x17, 0x38, 0xe4, 0x00, 0x00, 0x00, - 0xd1, 0xd2, 0x41, 0xd2, 0x01, 0x00, 0x00, 0x9d, - 0xd2, 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, 0x02, - 0x00, 0xd2, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xa7, - 0x96, 0xea, 0x17, 0x38, 0xe4, 0x00, 0x00, 0x00, - 0xd1, 0x41, 0xd2, 0x01, 0x00, 0x00, 0xd2, 0x9d, - 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, 0x02, - 0x00, 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xd3, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x0d, - 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xd4, 0x01, - 0x00, 0x00, 0xef, 0x2f, 0x38, 0xe4, 0x00, 0x00, - 0x00, 0xd1, 0x41, 0xd2, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xd2, 0x01, 0x00, 0x00, 0x9d, 0xd1, 0x41, - 0xd3, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd2, + 0x26, 0x0e, 0x43, 0x06, 0x05, 0xb4, 0x05, 0x02, + 0x00, 0x02, 0x03, 0x00, 0x00, 0x76, 0x02, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0xd1, 0x38, 0xe7, 0x00, 0x00, 0x00, 0xa7, + 0x96, 0xea, 0x17, 0x38, 0xe7, 0x00, 0x00, 0x00, + 0xd1, 0xd2, 0x41, 0xd5, 0x01, 0x00, 0x00, 0x9d, + 0xd2, 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, 0x02, + 0x00, 0xd2, 0x38, 0xe7, 0x00, 0x00, 0x00, 0xa7, + 0x96, 0xea, 0x17, 0x38, 0xe7, 0x00, 0x00, 0x00, + 0xd1, 0x41, 0xd5, 0x01, 0x00, 0x00, 0xd2, 0x9d, + 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, 0x02, + 0x00, 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xd6, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x0d, + 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, 0xd7, 0x01, + 0x00, 0x00, 0xef, 0x2f, 0x38, 0xe7, 0x00, 0x00, + 0x00, 0xd1, 0x41, 0xd5, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xd5, 0x01, 0x00, 0x00, 0x9d, 0xd1, 0x41, + 0xd6, 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xd6, 0x0a, 0x07, 0x03, 0x35, 0x71, 0x35, - 0x72, 0x4e, 0x3f, 0x0e, 0x43, 0x06, 0x05, 0xb0, + 0x72, 0x4e, 0x3f, 0x0e, 0x43, 0x06, 0x05, 0xb6, 0x05, 0x02, 0x00, 0x02, 0x03, 0x01, 0x00, 0x07, - 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, - 0x00, 0x01, 0x00, 0xae, 0x05, 0x2d, 0x01, 0xdd, - 0xd1, 0xd2, 0x8c, 0x23, 0x02, 0x00, 0xd2, 0x04, + 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0xb4, 0x05, 0x2d, 0x01, 0xdd, + 0xd1, 0xd2, 0x8c, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xe1, 0x0a, 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, - 0xb2, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, - 0x76, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0xd1, 0x38, 0xe4, 0x00, - 0x00, 0x00, 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe4, - 0x00, 0x00, 0x00, 0xd1, 0xd2, 0x41, 0xd2, 0x01, - 0x00, 0x00, 0x9a, 0xd2, 0x41, 0xd3, 0x01, 0x00, - 0x00, 0x23, 0x02, 0x00, 0xd2, 0x38, 0xe4, 0x00, - 0x00, 0x00, 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe4, - 0x00, 0x00, 0x00, 0xd1, 0x41, 0xd2, 0x01, 0x00, - 0x00, 0xd2, 0x9a, 0xd1, 0x41, 0xd3, 0x01, 0x00, - 0x00, 0x23, 0x02, 0x00, 0xd1, 0x41, 0xd3, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xd3, 0x01, 0x00, 0x00, - 0xaa, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, - 0x04, 0xd4, 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, - 0xe4, 0x00, 0x00, 0x00, 0xd1, 0x41, 0xd2, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xd2, 0x01, 0x00, 0x00, - 0x9a, 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, 0x23, - 0x02, 0x00, 0xd2, 0x04, 0xe4, 0x0a, 0x07, 0x03, + 0xb8, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, + 0x76, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0xd1, 0x38, 0xe7, 0x00, + 0x00, 0x00, 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe7, + 0x00, 0x00, 0x00, 0xd1, 0xd2, 0x41, 0xd5, 0x01, + 0x00, 0x00, 0x9a, 0xd2, 0x41, 0xd6, 0x01, 0x00, + 0x00, 0x23, 0x02, 0x00, 0xd2, 0x38, 0xe7, 0x00, + 0x00, 0x00, 0xa7, 0x96, 0xea, 0x17, 0x38, 0xe7, + 0x00, 0x00, 0x00, 0xd1, 0x41, 0xd5, 0x01, 0x00, + 0x00, 0xd2, 0x9a, 0xd1, 0x41, 0xd6, 0x01, 0x00, + 0x00, 0x23, 0x02, 0x00, 0xd1, 0x41, 0xd6, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xd6, 0x01, 0x00, 0x00, + 0xaa, 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, + 0x04, 0xd7, 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, + 0xe7, 0x00, 0x00, 0x00, 0xd1, 0x41, 0xd5, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xd5, 0x01, 0x00, 0x00, + 0x9a, 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, 0x23, + 0x02, 0x00, 0xd8, 0x04, 0xe4, 0x0a, 0x07, 0x03, 0x35, 0x71, 0x35, 0x72, 0x4e, 0x3f, 0x0e, 0x43, - 0x06, 0x05, 0xb4, 0x05, 0x02, 0x00, 0x02, 0x04, - 0x01, 0x00, 0x26, 0x02, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0xb2, 0x05, - 0x2f, 0x01, 0xd2, 0x38, 0xe4, 0x00, 0x00, 0x00, - 0xa7, 0x96, 0xea, 0x0f, 0x38, 0xe4, 0x00, 0x00, - 0x00, 0xd2, 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, - 0xf0, 0xd6, 0xdd, 0xd1, 0xd2, 0x42, 0xf9, 0x00, + 0x06, 0x05, 0xba, 0x05, 0x02, 0x00, 0x02, 0x04, + 0x01, 0x00, 0x26, 0x02, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0xb8, 0x05, + 0x2f, 0x01, 0xd2, 0x38, 0xe7, 0x00, 0x00, 0x00, + 0xa7, 0x96, 0xea, 0x0f, 0x38, 0xe7, 0x00, 0x00, + 0x00, 0xd2, 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, + 0xf0, 0xd6, 0xdd, 0xd1, 0xd2, 0x42, 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x23, 0x02, 0x00, - 0xd2, 0x04, 0xef, 0x0a, 0x03, 0x03, 0x35, 0x49, - 0x0e, 0x43, 0x06, 0x05, 0xb6, 0x05, 0x02, 0x00, - 0x02, 0x02, 0x00, 0x00, 0x1f, 0x02, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, - 0xd1, 0x41, 0xd3, 0x01, 0x00, 0x00, 0xd2, 0x41, - 0xd3, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xea, 0x0f, - 0x0e, 0xd1, 0x41, 0xd2, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xd2, 0x01, 0x00, 0x00, 0xa9, 0x28, 0xd2, + 0xd8, 0x04, 0xef, 0x0a, 0x03, 0x03, 0x35, 0x49, + 0x0e, 0x43, 0x06, 0x05, 0xbc, 0x05, 0x02, 0x00, + 0x02, 0x02, 0x00, 0x00, 0x1f, 0x02, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0xd1, 0x41, 0xd6, 0x01, 0x00, 0x00, 0xd2, 0x41, + 0xd6, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xea, 0x0f, + 0x0e, 0xd1, 0x41, 0xd5, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xd5, 0x01, 0x00, 0x00, 0xa9, 0x28, 0xd8, 0x04, 0xf4, 0x0a, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, - 0x02, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, - 0x28, 0xd2, 0x04, 0x80, 0x0b, 0x01, 0x03, 0x0e, + 0x02, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, + 0x28, 0xd8, 0x04, 0x80, 0x0b, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x03, - 0x00, 0x00, 0x15, 0x01, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xd1, 0x41, - 0xd2, 0x01, 0x00, 0x00, 0x8c, 0xd1, 0x41, 0xd3, - 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd2, 0x04, + 0x00, 0x00, 0x15, 0x01, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, 0xd1, 0x41, + 0xd5, 0x01, 0x00, 0x00, 0x8c, 0xd1, 0x41, 0xd6, + 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd8, 0x04, 0x83, 0x0b, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x3b, - 0x03, 0xb6, 0x06, 0x00, 0x00, 0x00, 0xf0, 0x06, + 0x03, 0xbc, 0x06, 0x00, 0x00, 0x00, 0xf6, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, - 0xcb, 0xc7, 0xcd, 0x41, 0xd3, 0x01, 0x00, 0x00, - 0xce, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xa7, 0xea, - 0x1e, 0x38, 0xe4, 0x00, 0x00, 0x00, 0x38, 0xe3, - 0x00, 0x00, 0x00, 0x42, 0xef, 0x00, 0x00, 0x00, - 0xc5, 0x41, 0xd2, 0x01, 0x00, 0x00, 0xc6, 0x24, - 0x02, 0x00, 0xc6, 0x23, 0x02, 0x00, 0x38, 0xcc, - 0x00, 0x00, 0x00, 0x04, 0xd5, 0x01, 0x00, 0x00, - 0xef, 0x2f, 0xd2, 0x04, 0x92, 0x0b, 0x04, 0x0d, + 0xcb, 0xc7, 0xcd, 0x41, 0xd6, 0x01, 0x00, 0x00, + 0xce, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xa7, 0xea, + 0x1e, 0x38, 0xe7, 0x00, 0x00, 0x00, 0x38, 0xe6, + 0x00, 0x00, 0x00, 0x42, 0xf2, 0x00, 0x00, 0x00, + 0xc5, 0x41, 0xd5, 0x01, 0x00, 0x00, 0xc6, 0x24, + 0x02, 0x00, 0xc6, 0x23, 0x02, 0x00, 0x38, 0xcf, + 0x00, 0x00, 0x00, 0x04, 0xd8, 0x01, 0x00, 0x00, + 0xef, 0x2f, 0xd8, 0x04, 0x92, 0x0b, 0x04, 0x0d, 0x26, 0x30, 0x95, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x22, 0x01, - 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x04, 0xf3, - 0x01, 0x00, 0x00, 0xc5, 0x41, 0xd2, 0x01, 0x00, - 0x00, 0x9d, 0x04, 0xd7, 0x01, 0x00, 0x00, 0x9d, - 0xc5, 0x41, 0xd3, 0x01, 0x00, 0x00, 0x9d, 0x04, - 0xd8, 0x01, 0x00, 0x00, 0x9d, 0x28, 0xd2, 0x04, + 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, 0x04, 0xf6, + 0x01, 0x00, 0x00, 0xc5, 0x41, 0xd5, 0x01, 0x00, + 0x00, 0x9d, 0x04, 0xda, 0x01, 0x00, 0x00, 0x9d, + 0xc5, 0x41, 0xd6, 0x01, 0x00, 0x00, 0x9d, 0x04, + 0xdb, 0x01, 0x00, 0x00, 0x9d, 0x28, 0xd8, 0x04, 0x9a, 0x0b, 0x01, 0x0d, 0x0e, 0x43, 0x06, 0x05, - 0xca, 0x03, 0x02, 0x06, 0x02, 0x04, 0x00, 0x00, - 0xc1, 0x01, 0x08, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xba, 0x06, 0x00, 0x01, 0x00, 0xd6, 0x06, 0x00, - 0x00, 0x00, 0xcc, 0x06, 0x00, 0x01, 0x00, 0xd8, - 0x06, 0x00, 0x02, 0x00, 0xa0, 0x06, 0x00, 0x03, - 0x00, 0xe2, 0x01, 0x00, 0x01, 0x00, 0xca, 0x03, + 0xd0, 0x03, 0x02, 0x06, 0x02, 0x04, 0x00, 0x00, + 0xc1, 0x01, 0x08, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xc0, 0x06, 0x00, 0x01, 0x00, 0xdc, 0x06, 0x00, + 0x00, 0x00, 0xd2, 0x06, 0x00, 0x01, 0x00, 0xde, + 0x06, 0x00, 0x02, 0x00, 0xa6, 0x06, 0x00, 0x03, + 0x00, 0xe2, 0x01, 0x00, 0x01, 0x00, 0xd0, 0x03, 0x00, 0x01, 0x14, 0x0c, 0x03, 0xc3, 0x04, 0x0c, 0x02, 0xc3, 0x05, 0xc2, 0x04, 0xea, 0x0d, 0x38, - 0xcc, 0x00, 0x00, 0x00, 0x04, 0xbb, 0x01, 0x00, - 0x00, 0xef, 0x2f, 0xd1, 0x38, 0xe3, 0x00, 0x00, + 0xcf, 0x00, 0x00, 0x00, 0x04, 0xbe, 0x01, 0x00, + 0x00, 0xef, 0x2f, 0xd1, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xa7, 0x96, 0x11, 0xeb, 0x0a, 0x0e, 0xd2, - 0x38, 0xe3, 0x00, 0x00, 0x00, 0xa7, 0x96, 0xea, - 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, 0xec, - 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, 0xe3, 0x00, - 0x00, 0x00, 0x42, 0x8a, 0x01, 0x00, 0x00, 0xd1, + 0x38, 0xe6, 0x00, 0x00, 0x00, 0xa7, 0x96, 0xea, + 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, 0xef, + 0x01, 0x00, 0x00, 0xef, 0x2f, 0x38, 0xe6, 0x00, + 0x00, 0x00, 0x42, 0x8d, 0x01, 0x00, 0x00, 0xd1, 0xd2, 0x24, 0x02, 0x00, 0xcd, 0xb6, 0x47, 0xce, - 0x42, 0x89, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, + 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, 0xa3, 0xea, 0x05, 0xc5, 0xb5, 0x47, 0x28, - 0x38, 0xe3, 0x00, 0x00, 0x00, 0x42, 0xeb, 0x00, + 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, 0xee, 0x00, 0x00, 0x00, 0xd2, 0xc6, 0x24, 0x02, 0x00, 0xcf, - 0x42, 0x89, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, - 0xb5, 0xa5, 0xea, 0x25, 0x38, 0xe3, 0x00, 0x00, - 0x00, 0x42, 0x8a, 0x01, 0x00, 0x00, 0xd1, 0xc7, - 0x24, 0x02, 0x00, 0xb5, 0x47, 0xd5, 0x38, 0xe3, - 0x00, 0x00, 0x00, 0x42, 0x8a, 0x01, 0x00, 0x00, + 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, + 0xb5, 0xa5, 0xea, 0x25, 0x38, 0xe6, 0x00, 0x00, + 0x00, 0x42, 0x8d, 0x01, 0x00, 0x00, 0xd1, 0xc7, + 0x24, 0x02, 0x00, 0xb5, 0x47, 0xd5, 0x38, 0xe6, + 0x00, 0x00, 0x00, 0x42, 0x8d, 0x01, 0x00, 0x00, 0xd2, 0xc7, 0x24, 0x02, 0x00, 0xb5, 0x47, 0xd6, - 0x38, 0x92, 0x00, 0x00, 0x00, 0x42, 0xa4, 0x01, + 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0xa7, 0x01, 0x00, 0x00, 0xc2, 0x05, 0x41, 0x3b, 0x00, 0x00, - 0x00, 0x24, 0x01, 0x00, 0xd0, 0xd1, 0x43, 0xbe, - 0x01, 0x00, 0x00, 0xc8, 0xd2, 0x43, 0xbf, 0x01, - 0x00, 0x00, 0xc8, 0x28, 0xd2, 0x04, 0xa1, 0x0b, + 0x00, 0x24, 0x01, 0x00, 0xd0, 0xd1, 0x43, 0xc1, + 0x01, 0x00, 0x00, 0xc8, 0xd2, 0x43, 0xc2, 0x01, + 0x00, 0x00, 0xc8, 0x28, 0xd8, 0x04, 0xa1, 0x0b, 0x11, 0x2d, 0x17, 0x3f, 0x3f, 0x35, 0x3f, 0x53, 0x12, 0x3f, 0x17, 0x53, 0x3f, 0x5d, 0x5e, 0x6c, 0x21, 0x26, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x16, 0x01, 0x10, - 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, 0xe5, 0x00, - 0x00, 0x00, 0xc5, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0xc5, 0x41, 0xbe, 0x01, 0x00, 0x00, 0x23, 0x02, - 0x00, 0xd2, 0x04, 0xb9, 0x0b, 0x01, 0x0d, 0x0e, + 0x00, 0x01, 0x00, 0x08, 0xc9, 0x38, 0xe8, 0x00, + 0x00, 0x00, 0xc5, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0xc5, 0x41, 0xc1, 0x01, 0x00, 0x00, 0x23, 0x02, + 0x00, 0xd8, 0x04, 0xb9, 0x0b, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x00, 0x26, 0x01, 0x10, 0x00, 0x01, 0x00, - 0x08, 0xc9, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xc5, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0x42, 0xf7, 0x00, - 0x00, 0x00, 0x24, 0x00, 0x00, 0xc5, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0x42, 0xf7, 0x00, 0x00, 0x00, - 0x24, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd2, 0x04, + 0x08, 0xc9, 0x38, 0xe8, 0x00, 0x00, 0x00, 0xc5, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0x42, 0xfa, 0x00, + 0x00, 0x00, 0x24, 0x00, 0x00, 0xc5, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0x42, 0xfa, 0x00, 0x00, 0x00, + 0x24, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xbc, 0x0b, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x02, 0x00, 0x04, 0x01, 0x00, 0x6b, - 0x02, 0xdc, 0x07, 0x00, 0x00, 0x00, 0x10, 0x00, - 0x01, 0x00, 0x98, 0x05, 0x22, 0x01, 0x08, 0xca, - 0xc6, 0x41, 0xbe, 0x01, 0x00, 0x00, 0x42, 0x89, + 0x02, 0xe2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x00, + 0x01, 0x00, 0x9e, 0x05, 0x22, 0x01, 0x08, 0xca, + 0xc6, 0x41, 0xc1, 0x01, 0x00, 0x00, 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, 0xa4, - 0xea, 0x1f, 0xdd, 0xc6, 0x41, 0xbe, 0x01, 0x00, + 0xea, 0x1f, 0xdd, 0xc6, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xb5, 0x47, 0xef, 0x96, 0xea, 0x12, 0xc6, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0x42, 0x37, 0x00, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc9, 0xec, 0x1c, - 0x04, 0xda, 0x01, 0x00, 0x00, 0xc6, 0x41, 0xbe, + 0x04, 0xdd, 0x01, 0x00, 0x00, 0xc6, 0x41, 0xc1, 0x01, 0x00, 0x00, 0x42, 0x37, 0x00, 0x00, 0x00, - 0x24, 0x00, 0x00, 0x9d, 0x04, 0xd8, 0x01, 0x00, - 0x00, 0x9d, 0xc9, 0xc5, 0x04, 0xf4, 0x01, 0x00, - 0x00, 0xc6, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x42, + 0x24, 0x00, 0x00, 0x9d, 0x04, 0xdb, 0x01, 0x00, + 0x00, 0x9d, 0xc9, 0xc5, 0x04, 0xf7, 0x01, 0x00, + 0x00, 0xc6, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x9d, - 0x04, 0xd8, 0x01, 0x00, 0x00, 0x9d, 0x9d, 0xcd, - 0x28, 0xd2, 0x04, 0xbf, 0x0b, 0x06, 0x0e, 0x5d, + 0x04, 0xdb, 0x01, 0x00, 0x00, 0x9d, 0x9d, 0xcd, + 0x28, 0xd8, 0x04, 0xbf, 0x0b, 0x06, 0x0e, 0x5d, 0x44, 0x59, 0x8a, 0x94, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x01, 0x01, 0x04, 0x00, 0x00, 0x22, - 0x02, 0xba, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, - 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x41, 0xbe, 0x01, + 0x02, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, + 0x01, 0x00, 0x08, 0xc9, 0xc5, 0x41, 0xc1, 0x01, 0x00, 0x00, 0x42, 0x5a, 0x00, 0x00, 0x00, 0xd1, - 0x24, 0x01, 0x00, 0xc5, 0x41, 0xbf, 0x01, 0x00, + 0x24, 0x01, 0x00, 0xc5, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x42, 0x5a, 0x00, 0x00, 0x00, 0xd1, 0x24, - 0x01, 0x00, 0x9b, 0x28, 0xd2, 0x04, 0xc9, 0x0b, + 0x01, 0x00, 0x9b, 0x28, 0xd8, 0x04, 0xc9, 0x0b, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, - 0x03, 0x00, 0x05, 0x00, 0x00, 0x32, 0x03, 0xd4, - 0x06, 0x00, 0x00, 0x00, 0xd8, 0x06, 0x00, 0x01, + 0x03, 0x00, 0x05, 0x00, 0x00, 0x32, 0x03, 0xda, + 0x06, 0x00, 0x00, 0x00, 0xde, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xcb, 0xc7, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0xc9, 0xc7, 0x41, - 0xbf, 0x01, 0x00, 0x00, 0xca, 0x38, 0xe5, 0x00, - 0x00, 0x00, 0xc5, 0x42, 0xf3, 0x00, 0x00, 0x00, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0xc9, 0xc7, 0x41, + 0xc2, 0x01, 0x00, 0x00, 0xca, 0x38, 0xe8, 0x00, + 0x00, 0x00, 0xc5, 0x42, 0xf6, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc6, 0x9a, 0xc5, 0xc6, 0x42, - 0xf3, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x9a, - 0x9e, 0xc6, 0xc6, 0x9a, 0x23, 0x02, 0x00, 0xd2, + 0xf6, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x9a, + 0x9e, 0xc6, 0xc6, 0x9a, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xcc, 0x0b, 0x02, 0x0d, 0x49, 0x0e, 0x43, - 0x06, 0x05, 0xb8, 0x05, 0x02, 0x00, 0x02, 0x04, - 0x00, 0x00, 0x4e, 0x02, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe5, - 0x00, 0x00, 0x00, 0x42, 0x8b, 0x01, 0x00, 0x00, - 0xd1, 0x24, 0x01, 0x00, 0xd5, 0x38, 0xe5, 0x00, - 0x00, 0x00, 0x42, 0x8b, 0x01, 0x00, 0x00, 0xd2, - 0x24, 0x01, 0x00, 0xd6, 0x38, 0xe5, 0x00, 0x00, - 0x00, 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, - 0xbf, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xbe, 0x01, - 0x00, 0x00, 0x9a, 0x9d, 0xd1, 0x41, 0xbf, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0x9a, 0x23, 0x02, 0x00, 0xd2, 0x04, 0xd2, 0x0b, + 0x06, 0x05, 0xbe, 0x05, 0x02, 0x00, 0x02, 0x04, + 0x00, 0x00, 0x4e, 0x02, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe8, + 0x00, 0x00, 0x00, 0x42, 0x8e, 0x01, 0x00, 0x00, + 0xd1, 0x24, 0x01, 0x00, 0xd5, 0x38, 0xe8, 0x00, + 0x00, 0x00, 0x42, 0x8e, 0x01, 0x00, 0x00, 0xd2, + 0x24, 0x01, 0x00, 0xd6, 0x38, 0xe8, 0x00, 0x00, + 0x00, 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, + 0xc2, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xc1, 0x01, + 0x00, 0x00, 0x9a, 0x9d, 0xd1, 0x41, 0xc2, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0x9a, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xd2, 0x0b, 0x03, 0x03, 0x4e, 0x4e, 0x0e, 0x43, 0x06, 0x05, - 0xba, 0x05, 0x02, 0x00, 0x02, 0x04, 0x00, 0x00, - 0x4e, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0x38, 0xe5, 0x00, 0x00, - 0x00, 0x42, 0x8b, 0x01, 0x00, 0x00, 0xd1, 0x24, - 0x01, 0x00, 0xd5, 0x38, 0xe5, 0x00, 0x00, 0x00, - 0x42, 0x8b, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, - 0x00, 0xd6, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xd1, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, 0xbf, 0x01, - 0x00, 0x00, 0xd2, 0x41, 0xbe, 0x01, 0x00, 0x00, - 0x9a, 0x9e, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9a, 0x23, - 0x02, 0x00, 0xd2, 0x04, 0xd7, 0x0b, 0x03, 0x03, - 0x4e, 0x4e, 0x0e, 0x43, 0x06, 0x05, 0xbc, 0x05, + 0xc0, 0x05, 0x02, 0x00, 0x02, 0x04, 0x00, 0x00, + 0x4e, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0x38, 0xe8, 0x00, 0x00, + 0x00, 0x42, 0x8e, 0x01, 0x00, 0x00, 0xd1, 0x24, + 0x01, 0x00, 0xd5, 0x38, 0xe8, 0x00, 0x00, 0x00, + 0x42, 0x8e, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, + 0x00, 0xd6, 0x38, 0xe8, 0x00, 0x00, 0x00, 0xd1, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0x9a, 0xd1, 0x41, 0xc2, 0x01, + 0x00, 0x00, 0xd2, 0x41, 0xc1, 0x01, 0x00, 0x00, + 0x9a, 0x9e, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9a, 0x23, + 0x02, 0x00, 0xd8, 0x04, 0xd7, 0x0b, 0x03, 0x03, + 0x4e, 0x4e, 0x0e, 0x43, 0x06, 0x05, 0xc2, 0x05, 0x02, 0x00, 0x02, 0x04, 0x00, 0x00, 0x40, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x42, - 0x8b, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, - 0xd5, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x42, 0x8b, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x42, + 0x8e, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, + 0xd5, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x42, 0x8e, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xd6, - 0x38, 0xe5, 0x00, 0x00, 0x00, 0xd1, 0x41, 0xbe, - 0x01, 0x00, 0x00, 0xd2, 0x41, 0xbe, 0x01, 0x00, - 0x00, 0x9a, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x9a, 0x23, - 0x02, 0x00, 0xd2, 0x04, 0xdc, 0x0b, 0x03, 0x03, - 0x4e, 0x4e, 0x0e, 0x43, 0x06, 0x05, 0xbe, 0x05, + 0x38, 0xe8, 0x00, 0x00, 0x00, 0xd1, 0x41, 0xc1, + 0x01, 0x00, 0x00, 0xd2, 0x41, 0xc1, 0x01, 0x00, + 0x00, 0x9a, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x9a, 0x23, + 0x02, 0x00, 0xd8, 0x04, 0xdc, 0x0b, 0x03, 0x03, + 0x4e, 0x4e, 0x0e, 0x43, 0x06, 0x05, 0xc4, 0x05, 0x02, 0x00, 0x02, 0x04, 0x00, 0x00, 0x40, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x42, - 0x8b, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, - 0xd5, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x42, 0x8b, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x42, + 0x8e, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, + 0xd5, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x42, 0x8e, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xd6, - 0x38, 0xe5, 0x00, 0x00, 0x00, 0xd1, 0x41, 0xbe, - 0x01, 0x00, 0x00, 0xd2, 0x41, 0xbf, 0x01, 0x00, - 0x00, 0x9a, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0xd2, 0x41, 0xbe, 0x01, 0x00, 0x00, 0x9a, 0x23, - 0x02, 0x00, 0xd2, 0x04, 0xe1, 0x0b, 0x03, 0x03, - 0x4e, 0x4e, 0x0e, 0x43, 0x06, 0x05, 0xc0, 0x05, + 0x38, 0xe8, 0x00, 0x00, 0x00, 0xd1, 0x41, 0xc1, + 0x01, 0x00, 0x00, 0xd2, 0x41, 0xc2, 0x01, 0x00, + 0x00, 0x9a, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0xd2, 0x41, 0xc1, 0x01, 0x00, 0x00, 0x9a, 0x23, + 0x02, 0x00, 0xd8, 0x04, 0xe1, 0x0b, 0x03, 0x03, + 0x4e, 0x4e, 0x0e, 0x43, 0x06, 0x05, 0xc6, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, 0x3d, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x42, - 0x8b, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, - 0xd5, 0x38, 0xe5, 0x00, 0x00, 0x00, 0x42, 0x8b, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x42, + 0x8e, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, + 0xd5, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x42, 0x8e, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xd6, - 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd2, 0x41, - 0xbe, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xea, 0x0f, - 0x0e, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, 0xd2, - 0x41, 0xbf, 0x01, 0x00, 0x00, 0xa9, 0x28, 0xd2, + 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd2, 0x41, + 0xc1, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xea, 0x0f, + 0x0e, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, 0xd2, + 0x41, 0xc2, 0x01, 0x00, 0x00, 0xa9, 0x28, 0xd8, 0x04, 0xe6, 0x0b, 0x03, 0x03, 0x4e, 0x4f, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x01, - 0x00, 0x00, 0x02, 0x01, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xd1, 0x28, 0xd2, 0x04, 0xf5, 0x0b, 0x01, + 0x00, 0x00, 0x02, 0x01, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xd1, 0x28, 0xd8, 0x04, 0xf5, 0x0b, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x01, - 0x01, 0x03, 0x00, 0x00, 0x17, 0x02, 0xb6, 0x06, + 0x01, 0x03, 0x00, 0x00, 0x17, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, - 0xc9, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xc5, 0x41, - 0xbe, 0x01, 0x00, 0x00, 0x8c, 0xc5, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd2, 0x04, + 0xc9, 0x38, 0xe8, 0x00, 0x00, 0x00, 0xc5, 0x41, + 0xc1, 0x01, 0x00, 0x00, 0x8c, 0xc5, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xf8, 0x0b, 0x01, 0x0d, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x01, 0x01, 0x03, 0x00, 0x00, 0x3e, - 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xa0, 0x06, - 0x00, 0x00, 0x00, 0xd1, 0x38, 0xe5, 0x00, 0x00, - 0x00, 0xa7, 0xea, 0x03, 0xd1, 0x28, 0x38, 0x92, - 0x00, 0x00, 0x00, 0x42, 0xa4, 0x01, 0x00, 0x00, - 0x38, 0xe5, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, - 0x00, 0x00, 0x24, 0x01, 0x00, 0xcd, 0x38, 0xe3, - 0x00, 0x00, 0x00, 0xd1, 0xef, 0x43, 0xbe, 0x01, - 0x00, 0x00, 0xc5, 0x38, 0xe3, 0x00, 0x00, 0x00, - 0xb6, 0xef, 0x43, 0xbf, 0x01, 0x00, 0x00, 0xc5, - 0x28, 0xd2, 0x04, 0x8a, 0x0c, 0x07, 0x04, 0x30, + 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xa6, 0x06, + 0x00, 0x00, 0x00, 0xd1, 0x38, 0xe8, 0x00, 0x00, + 0x00, 0xa7, 0xea, 0x03, 0xd1, 0x28, 0x38, 0x95, + 0x00, 0x00, 0x00, 0x42, 0xa7, 0x01, 0x00, 0x00, + 0x38, 0xe8, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, + 0x00, 0x00, 0x24, 0x01, 0x00, 0xcd, 0x38, 0xe6, + 0x00, 0x00, 0x00, 0xd1, 0xef, 0x43, 0xc1, 0x01, + 0x00, 0x00, 0xc5, 0x38, 0xe6, 0x00, 0x00, 0x00, + 0xb6, 0xef, 0x43, 0xc2, 0x01, 0x00, 0x00, 0xc5, + 0x28, 0xd8, 0x04, 0x8a, 0x0c, 0x07, 0x04, 0x30, 0x08, 0x08, 0x7b, 0x3f, 0x44, 0x0e, 0x43, 0x06, - 0x05, 0xc2, 0x05, 0x01, 0x02, 0x01, 0x02, 0x00, - 0x00, 0x19, 0x03, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xa4, 0x06, 0x00, 0x00, 0x00, 0xd4, 0x06, 0x00, + 0x05, 0xc8, 0x05, 0x01, 0x02, 0x01, 0x02, 0x00, + 0x00, 0x19, 0x03, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xaa, 0x06, 0x00, 0x00, 0x00, 0xda, 0x06, 0x00, 0x01, 0x00, 0xd1, 0xe9, 0xca, 0xb5, 0xc9, 0xc5, 0xc6, 0xa3, 0xea, 0x0e, 0xd1, 0xc5, 0x47, 0xb5, 0xaa, 0xea, 0x03, 0xc5, 0x28, 0x93, 0x00, 0xec, - 0xef, 0xc6, 0x28, 0xd2, 0x04, 0x9a, 0x0c, 0x06, + 0xef, 0xc6, 0x28, 0xd8, 0x04, 0x9a, 0x0c, 0x06, 0x04, 0x12, 0x26, 0x26, 0x0d, 0x17, 0x0e, 0x43, - 0x06, 0x05, 0xc4, 0x05, 0x01, 0x00, 0x01, 0x02, - 0x01, 0x00, 0x0f, 0x01, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0x96, 0x05, 0x21, 0x01, 0xdd, 0xd1, 0xef, - 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, 0xe3, 0x00, - 0x00, 0x00, 0xa7, 0x28, 0xd2, 0x04, 0xa4, 0x0c, - 0x02, 0x04, 0x26, 0x0e, 0x43, 0x06, 0x05, 0xcc, + 0x06, 0x05, 0xca, 0x05, 0x01, 0x00, 0x01, 0x02, + 0x01, 0x00, 0x0f, 0x01, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0x9c, 0x05, 0x21, 0x01, 0xdd, 0xd1, 0xef, + 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, 0xe6, 0x00, + 0x00, 0x00, 0xa7, 0x28, 0xd8, 0x04, 0xa4, 0x0c, + 0x02, 0x04, 0x26, 0x0e, 0x43, 0x06, 0x05, 0xd2, 0x03, 0x02, 0x04, 0x02, 0x05, 0x02, 0x00, 0x86, - 0x01, 0x06, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd4, - 0x06, 0x00, 0x01, 0x00, 0xea, 0x07, 0x00, 0x00, - 0x00, 0xcc, 0x06, 0x00, 0x01, 0x00, 0xa4, 0x06, - 0x00, 0x02, 0x00, 0xcc, 0x03, 0x00, 0x01, 0x14, - 0xc4, 0x05, 0x38, 0x01, 0xc2, 0x05, 0x37, 0x01, + 0x01, 0x06, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xda, + 0x06, 0x00, 0x01, 0x00, 0xf0, 0x07, 0x00, 0x00, + 0x00, 0xd2, 0x06, 0x00, 0x01, 0x00, 0xaa, 0x06, + 0x00, 0x02, 0x00, 0xd2, 0x03, 0x00, 0x01, 0x14, + 0xca, 0x05, 0x38, 0x01, 0xc8, 0x05, 0x37, 0x01, 0x0c, 0x02, 0xcc, 0xd1, 0xc8, 0xa7, 0xea, 0x03, 0xd1, 0x28, 0xdd, 0xd1, 0xef, 0xea, 0x52, 0xd2, - 0xb5, 0xa4, 0xea, 0x0c, 0xc8, 0x42, 0x8c, 0x01, + 0xb5, 0xa4, 0xea, 0x0c, 0xc8, 0x42, 0x8f, 0x01, 0x00, 0x00, 0xb5, 0xb5, 0x25, 0x02, 0x00, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, 0xde, - 0xd1, 0xef, 0xc9, 0xc8, 0x42, 0x8c, 0x01, 0x00, + 0xe6, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, 0xde, + 0xd1, 0xef, 0xc9, 0xc8, 0x42, 0x8f, 0x01, 0x00, 0x00, 0xd2, 0xc5, 0x24, 0x02, 0x00, 0xca, 0x38, - 0x9a, 0x00, 0x00, 0x00, 0x42, 0xf6, 0x01, 0x00, + 0x9d, 0x00, 0x00, 0x00, 0x42, 0xf9, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0xc5, 0x9e, 0xd2, 0x24, 0x02, 0x00, 0xd6, 0xb5, 0xcb, 0xc7, 0xd2, 0xa3, 0xea, 0x0e, 0xc6, 0xc7, 0x71, 0xd1, 0xc7, 0xc5, 0x9d, 0x47, 0x49, 0x93, 0x02, 0xec, 0xef, 0xc6, 0x28, - 0xd1, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, 0xea, - 0x12, 0xc8, 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, - 0xd2, 0xf0, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0x9b, 0x28, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, - 0xba, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd2, 0x04, + 0xd1, 0x38, 0xe8, 0x00, 0x00, 0x00, 0xa7, 0xea, + 0x12, 0xc8, 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, + 0xd2, 0xf0, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0x9b, 0x28, 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, + 0xbd, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xd8, 0x04, 0xab, 0x0c, 0x10, 0x14, 0x1c, 0x08, 0x21, 0x1d, 0x3b, 0x2b, 0x17, 0x3f, 0x62, 0x26, 0x44, 0x09, - 0x35, 0x53, 0x08, 0x0e, 0x43, 0x06, 0x05, 0xc6, + 0x35, 0x53, 0x08, 0x0e, 0x43, 0x06, 0x05, 0xcc, 0x05, 0x02, 0x0a, 0x02, 0x05, 0x02, 0x00, 0x95, - 0x02, 0x0c, 0xee, 0x07, 0x00, 0x01, 0x00, 0xf0, - 0x07, 0x00, 0x01, 0x00, 0xe0, 0x07, 0x00, 0x00, - 0x00, 0xd8, 0x06, 0x00, 0x01, 0x00, 0xea, 0x07, - 0x00, 0x02, 0x00, 0xd4, 0x06, 0x00, 0x03, 0x00, - 0xcc, 0x06, 0x00, 0x04, 0x00, 0xa4, 0x06, 0x00, - 0x05, 0x00, 0xb8, 0x06, 0x00, 0x06, 0x00, 0xf2, - 0x07, 0x00, 0x07, 0x00, 0xf4, 0x07, 0x00, 0x08, - 0x00, 0xf6, 0x07, 0x00, 0x09, 0x00, 0xc4, 0x05, - 0x38, 0x01, 0xc2, 0x05, 0x37, 0x01, 0xd1, 0x38, - 0xe6, 0x00, 0x00, 0x00, 0xa7, 0x96, 0xea, 0x07, + 0x02, 0x0c, 0xf4, 0x07, 0x00, 0x01, 0x00, 0xf6, + 0x07, 0x00, 0x01, 0x00, 0xe6, 0x07, 0x00, 0x00, + 0x00, 0xde, 0x06, 0x00, 0x01, 0x00, 0xf0, 0x07, + 0x00, 0x02, 0x00, 0xda, 0x06, 0x00, 0x03, 0x00, + 0xd2, 0x06, 0x00, 0x04, 0x00, 0xaa, 0x06, 0x00, + 0x05, 0x00, 0xbe, 0x06, 0x00, 0x06, 0x00, 0xf8, + 0x07, 0x00, 0x07, 0x00, 0xfa, 0x07, 0x00, 0x08, + 0x00, 0xfc, 0x07, 0x00, 0x09, 0x00, 0xca, 0x05, + 0x38, 0x01, 0xc8, 0x05, 0x37, 0x01, 0xd1, 0x38, + 0xe9, 0x00, 0x00, 0x00, 0xa7, 0x96, 0xea, 0x07, 0xd1, 0xc9, 0xd2, 0xd5, 0xc5, 0xd6, 0xd1, 0x41, - 0xf5, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0x9d, 0xca, - 0xdd, 0xd2, 0xef, 0xea, 0x15, 0x38, 0xe3, 0x00, + 0xf8, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0x9d, 0xca, + 0xdd, 0xd2, 0xef, 0xea, 0x15, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xd2, 0xef, 0xd6, 0xc6, 0xb5, 0xa4, 0xea, 0x03, 0xd1, 0x28, 0xb5, 0xc3, 0x07, 0xec, - 0x56, 0xd2, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, - 0xea, 0x31, 0xde, 0xd2, 0x41, 0xbe, 0x01, 0x00, - 0x00, 0xef, 0xde, 0xd2, 0x41, 0xbf, 0x01, 0x00, + 0x56, 0xd2, 0x38, 0xe8, 0x00, 0x00, 0x00, 0xa7, + 0xea, 0x31, 0xde, 0xd2, 0x41, 0xc1, 0x01, 0x00, + 0x00, 0xef, 0xde, 0xd2, 0x41, 0xc2, 0x01, 0x00, 0x00, 0xef, 0x9e, 0xc3, 0x05, 0xc6, 0xc2, 0x05, - 0xa4, 0xea, 0x03, 0xd1, 0x28, 0x38, 0xe6, 0x00, + 0xa4, 0xea, 0x03, 0xd1, 0x28, 0x38, 0xe9, 0x00, 0x00, 0x00, 0xd2, 0xc6, 0xc2, 0x05, 0x9e, 0xf0, - 0xda, 0x41, 0xf5, 0x01, 0x00, 0x00, 0xc3, 0x07, - 0xec, 0x1d, 0xd2, 0x41, 0xf5, 0x01, 0x00, 0x00, - 0xc3, 0x07, 0x38, 0x9a, 0x00, 0x00, 0x00, 0x42, - 0xf6, 0x01, 0x00, 0x00, 0xc6, 0xc2, 0x07, 0xd2, - 0xe9, 0x9d, 0x24, 0x02, 0x00, 0xca, 0x38, 0x9a, - 0x00, 0x00, 0x00, 0x42, 0xf6, 0x01, 0x00, 0x00, - 0xd1, 0x41, 0xf5, 0x01, 0x00, 0x00, 0xc2, 0x07, + 0xda, 0x41, 0xf8, 0x01, 0x00, 0x00, 0xc3, 0x07, + 0xec, 0x1d, 0xd2, 0x41, 0xf8, 0x01, 0x00, 0x00, + 0xc3, 0x07, 0x38, 0x9d, 0x00, 0x00, 0x00, 0x42, + 0xf9, 0x01, 0x00, 0x00, 0xc6, 0xc2, 0x07, 0xd2, + 0xe9, 0x9d, 0x24, 0x02, 0x00, 0xca, 0x38, 0x9d, + 0x00, 0x00, 0x00, 0x42, 0xf9, 0x01, 0x00, 0x00, + 0xd1, 0x41, 0xf8, 0x01, 0x00, 0x00, 0xc2, 0x07, 0x24, 0x02, 0x00, 0xcb, 0xc6, 0xc7, 0x9e, 0xcc, - 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, 0x8c, 0x01, + 0x38, 0xe9, 0x00, 0x00, 0x00, 0x42, 0x8f, 0x01, 0x00, 0x00, 0xc8, 0xc7, 0x24, 0x02, 0x00, 0xc3, 0x04, 0xc7, 0xc3, 0x05, 0xc2, 0x05, 0xc6, 0xa3, - 0xea, 0x50, 0xc2, 0x05, 0xd1, 0x41, 0xf5, 0x01, + 0xea, 0x50, 0xc2, 0x05, 0xd1, 0x41, 0xf8, 0x01, 0x00, 0x00, 0x9e, 0xc4, 0x06, 0xb5, 0xa6, 0xea, 0x10, 0xc2, 0x06, 0xd1, 0xe9, 0xa3, 0xea, 0x09, 0xd1, 0xc2, 0x06, 0x47, 0xc3, 0x08, 0xec, 0x04, @@ -2906,121 +2906,121 @@ const uint8_t qjsc_qjscalc[31967] = { 0x47, 0xc3, 0x09, 0xec, 0x04, 0xb5, 0xc3, 0x09, 0xc2, 0x04, 0xc2, 0x05, 0xc7, 0x9e, 0x71, 0xc2, 0x08, 0xc2, 0x09, 0x9d, 0x49, 0x93, 0x05, 0xec, - 0xac, 0xc2, 0x04, 0x42, 0x88, 0x01, 0x00, 0x00, - 0x25, 0x00, 0x00, 0xd2, 0x04, 0xc4, 0x0c, 0x22, + 0xac, 0xc2, 0x04, 0x42, 0x8b, 0x01, 0x00, 0x00, + 0x25, 0x00, 0x00, 0xd8, 0x04, 0xc4, 0x0c, 0x22, 0x04, 0x35, 0x0d, 0x0d, 0x0e, 0x35, 0x1c, 0x2b, 0x1c, 0x0d, 0x12, 0x3b, 0x62, 0x21, 0x0e, 0x3f, 0x26, 0x0d, 0x2b, 0x68, 0x71, 0x17, 0x59, 0x30, 0x3a, 0x3a, 0x2c, 0x12, 0x26, 0x3a, 0x2c, 0x12, - 0x44, 0x17, 0x0e, 0x43, 0x06, 0x05, 0xc8, 0x05, + 0x44, 0x17, 0x0e, 0x43, 0x06, 0x05, 0xce, 0x05, 0x02, 0x00, 0x02, 0x03, 0x01, 0x00, 0x07, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0xc6, 0x05, 0x39, 0x01, 0xdd, 0xd1, - 0xd2, 0x8c, 0x23, 0x02, 0x00, 0xd2, 0x04, 0xf0, - 0x0c, 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, 0xca, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0xcc, 0x05, 0x39, 0x01, 0xdd, 0xd1, + 0xd2, 0x8c, 0x23, 0x02, 0x00, 0xd8, 0x04, 0xf0, + 0x0c, 0x01, 0x03, 0x0e, 0x43, 0x06, 0x05, 0xd0, 0x05, 0x02, 0x08, 0x02, 0x06, 0x00, 0x00, 0xa9, - 0x01, 0x0a, 0xee, 0x07, 0x00, 0x01, 0x00, 0xf0, - 0x07, 0x00, 0x01, 0x00, 0xd4, 0x06, 0x00, 0x00, - 0x00, 0xa4, 0x06, 0x00, 0x01, 0x00, 0xb8, 0x06, - 0x00, 0x02, 0x00, 0xcc, 0x06, 0x00, 0x03, 0x00, - 0xea, 0x07, 0x00, 0x04, 0x00, 0xf2, 0x06, 0x00, - 0x05, 0x00, 0xe2, 0x07, 0x00, 0x06, 0x00, 0xbc, - 0x06, 0x00, 0x07, 0x00, 0xd1, 0x38, 0xe6, 0x00, - 0x00, 0x00, 0xa7, 0x96, 0xea, 0x0d, 0x38, 0xe6, + 0x01, 0x0a, 0xf4, 0x07, 0x00, 0x01, 0x00, 0xf6, + 0x07, 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, 0x00, + 0x00, 0xaa, 0x06, 0x00, 0x01, 0x00, 0xbe, 0x06, + 0x00, 0x02, 0x00, 0xd2, 0x06, 0x00, 0x03, 0x00, + 0xf0, 0x07, 0x00, 0x04, 0x00, 0xf8, 0x06, 0x00, + 0x05, 0x00, 0xe8, 0x07, 0x00, 0x06, 0x00, 0xc2, + 0x06, 0x00, 0x07, 0x00, 0xd1, 0x38, 0xe9, 0x00, + 0x00, 0x00, 0xa7, 0x96, 0xea, 0x0d, 0x38, 0xe9, 0x00, 0x00, 0x00, 0xd1, 0xd2, 0xe9, 0xf0, 0xd5, - 0xec, 0x15, 0xd2, 0x38, 0xe6, 0x00, 0x00, 0x00, - 0xa7, 0x96, 0xea, 0x0b, 0x38, 0xe6, 0x00, 0x00, + 0xec, 0x15, 0xd2, 0x38, 0xe9, 0x00, 0x00, 0x00, + 0xa7, 0x96, 0xea, 0x0b, 0x38, 0xe9, 0x00, 0x00, 0x00, 0xd2, 0xd1, 0xe9, 0xf0, 0xd6, 0xd1, 0x41, - 0xf5, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xf5, 0x01, - 0x00, 0x00, 0x9d, 0xc3, 0x04, 0x38, 0x9a, 0x00, - 0x00, 0x00, 0x42, 0xf6, 0x01, 0x00, 0x00, 0xd1, + 0xf8, 0x01, 0x00, 0x00, 0xd2, 0x41, 0xf8, 0x01, + 0x00, 0x00, 0x9d, 0xc3, 0x04, 0x38, 0x9d, 0x00, + 0x00, 0x00, 0x42, 0xf9, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0xd2, 0xe9, 0x24, 0x02, 0x00, 0xc9, 0xd1, 0xe9, 0xc3, 0x05, 0xd2, 0xe9, 0xc3, 0x06, 0x38, - 0xe6, 0x00, 0x00, 0x00, 0x42, 0x8c, 0x01, 0x00, + 0xe9, 0x00, 0x00, 0x00, 0x42, 0x8f, 0x01, 0x00, 0x00, 0xc5, 0xc2, 0x04, 0x24, 0x02, 0x00, 0xcc, 0xb5, 0xca, 0xc6, 0xc2, 0x05, 0xa3, 0xea, 0x35, - 0x38, 0x9a, 0x00, 0x00, 0x00, 0x42, 0xf6, 0x01, + 0x38, 0x9d, 0x00, 0x00, 0x00, 0x42, 0xf9, 0x01, 0x00, 0x00, 0xc2, 0x06, 0xc5, 0xc6, 0x9e, 0x24, 0x02, 0x00, 0xc3, 0x07, 0xb5, 0xcb, 0xc7, 0xc2, 0x07, 0xa3, 0xea, 0x15, 0xc8, 0xc6, 0xc7, 0x9d, 0x71, 0x13, 0x47, 0xd1, 0xc6, 0x47, 0xd2, 0xc7, 0x47, 0x9a, 0x9d, 0x49, 0x93, 0x02, 0xec, 0xe7, - 0x93, 0x01, 0xec, 0xc7, 0xc8, 0x42, 0x88, 0x01, - 0x00, 0x00, 0x25, 0x00, 0x00, 0xd2, 0x04, 0xf3, + 0x93, 0x01, 0xec, 0xc7, 0xc8, 0x42, 0x8b, 0x01, + 0x00, 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xf3, 0x0c, 0x10, 0x04, 0x35, 0x3f, 0x35, 0x35, 0x4e, 0x5d, 0x17, 0x17, 0x58, 0x2b, 0x67, 0x2b, 0x53, - 0x17, 0x17, 0x0e, 0x43, 0x06, 0x05, 0xcc, 0x05, + 0x17, 0x17, 0x0e, 0x43, 0x06, 0x05, 0xd2, 0x05, 0x02, 0x00, 0x02, 0x04, 0x01, 0x00, 0x22, 0x02, - 0xee, 0x07, 0x00, 0x01, 0x00, 0xf0, 0x07, 0x00, - 0x01, 0x00, 0xca, 0x05, 0x3b, 0x01, 0xd2, 0x38, - 0xe6, 0x00, 0x00, 0x00, 0xa7, 0x96, 0xea, 0x0b, - 0x38, 0xe6, 0x00, 0x00, 0x00, 0xd2, 0xd1, 0xe9, - 0xf0, 0xd6, 0xdd, 0xd1, 0xd2, 0x42, 0xf9, 0x00, + 0xf4, 0x07, 0x00, 0x01, 0x00, 0xf6, 0x07, 0x00, + 0x01, 0x00, 0xd0, 0x05, 0x3b, 0x01, 0xd2, 0x38, + 0xe9, 0x00, 0x00, 0x00, 0xa7, 0x96, 0xea, 0x0b, + 0x38, 0xe9, 0x00, 0x00, 0x00, 0xd2, 0xd1, 0xe9, + 0xf0, 0xd6, 0xdd, 0xd1, 0xd2, 0x42, 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x23, 0x02, 0x00, - 0xd2, 0x04, 0x86, 0x0d, 0x03, 0x03, 0x35, 0x35, - 0x0e, 0x43, 0x06, 0x05, 0xce, 0x05, 0x02, 0x00, - 0x02, 0x03, 0x01, 0x00, 0x3b, 0x02, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, - 0xd8, 0x04, 0x02, 0x01, 0x38, 0xde, 0x00, 0x00, - 0x00, 0x42, 0x74, 0x01, 0x00, 0x00, 0xd2, 0x24, + 0xd8, 0x04, 0x86, 0x0d, 0x03, 0x03, 0x35, 0x35, + 0x0e, 0x43, 0x06, 0x05, 0xd4, 0x05, 0x02, 0x00, + 0x02, 0x03, 0x01, 0x00, 0x3b, 0x02, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0xde, 0x04, 0x02, 0x01, 0x38, 0xe1, 0x00, 0x00, + 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0xea, 0x07, 0xdd, 0xd1, 0xd2, 0x23, - 0x02, 0x00, 0xd1, 0x38, 0xe6, 0x00, 0x00, 0x00, - 0xa7, 0x96, 0xea, 0x0b, 0x38, 0xe6, 0x00, 0x00, - 0x00, 0xd1, 0xd2, 0xe9, 0xf0, 0xd5, 0x38, 0xfe, - 0x00, 0x00, 0x00, 0x38, 0xff, 0x00, 0x00, 0x00, - 0xd1, 0xef, 0xd2, 0x9a, 0x23, 0x01, 0x00, 0xd2, + 0x02, 0x00, 0xd1, 0x38, 0xe9, 0x00, 0x00, 0x00, + 0xa7, 0x96, 0xea, 0x0b, 0x38, 0xe9, 0x00, 0x00, + 0x00, 0xd1, 0xd2, 0xe9, 0xf0, 0xd5, 0x38, 0x01, + 0x01, 0x00, 0x00, 0x38, 0x02, 0x01, 0x00, 0x00, + 0xd1, 0xef, 0xd2, 0x9a, 0x23, 0x01, 0x00, 0xd8, 0x04, 0x8b, 0x0d, 0x05, 0x03, 0x53, 0x22, 0x35, - 0x35, 0x0e, 0x43, 0x06, 0x05, 0xd0, 0x05, 0x02, - 0x02, 0x02, 0x03, 0x00, 0x00, 0x33, 0x04, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0xd4, 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, - 0x00, 0x01, 0x00, 0xd1, 0x41, 0xf5, 0x01, 0x00, - 0x00, 0xd2, 0x41, 0xf5, 0x01, 0x00, 0x00, 0xaa, + 0x35, 0x0e, 0x43, 0x06, 0x05, 0xd6, 0x05, 0x02, + 0x02, 0x02, 0x03, 0x00, 0x00, 0x33, 0x04, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0xda, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, + 0x00, 0x01, 0x00, 0xd1, 0x41, 0xf8, 0x01, 0x00, + 0x00, 0xd2, 0x41, 0xf8, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x03, 0x09, 0x28, 0xd1, 0xe9, 0xcd, 0xd2, 0xe9, 0xaa, 0xea, 0x03, 0x09, 0x28, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0xea, 0x10, 0xd1, 0xc6, 0x47, 0xd2, 0xc6, 0x47, 0xaa, 0xea, 0x03, 0x09, 0x28, - 0x93, 0x01, 0xec, 0xed, 0x0a, 0x28, 0xd2, 0x04, + 0x93, 0x01, 0xec, 0xed, 0x0a, 0x28, 0xd8, 0x04, 0x94, 0x0d, 0x0a, 0x04, 0x4e, 0x0d, 0x12, 0x1c, 0x0d, 0x26, 0x30, 0x0d, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, - 0x02, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, - 0x28, 0xd2, 0x04, 0xaa, 0x0d, 0x01, 0x03, 0x0e, + 0x02, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, + 0x28, 0xd8, 0x04, 0xaa, 0x0d, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x03, 0x01, 0x04, - 0x00, 0x00, 0x2e, 0x04, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xa0, 0x06, 0x00, 0x00, 0x00, 0xd4, 0x06, - 0x00, 0x01, 0x00, 0xa4, 0x06, 0x00, 0x02, 0x00, - 0xd1, 0xe9, 0xca, 0x38, 0xe6, 0x00, 0x00, 0x00, - 0x42, 0x8c, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0xd1, - 0x41, 0xf5, 0x01, 0x00, 0x00, 0x24, 0x02, 0x00, + 0x00, 0x00, 0x2e, 0x04, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xa6, 0x06, 0x00, 0x00, 0x00, 0xda, 0x06, + 0x00, 0x01, 0x00, 0xaa, 0x06, 0x00, 0x02, 0x00, + 0xd1, 0xe9, 0xca, 0x38, 0xe9, 0x00, 0x00, 0x00, + 0x42, 0x8f, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0xd1, + 0x41, 0xf8, 0x01, 0x00, 0x00, 0x24, 0x02, 0x00, 0xc9, 0xb5, 0xcb, 0xc7, 0xc6, 0xa3, 0xea, 0x0d, 0xc5, 0xc7, 0x71, 0xd1, 0xc7, 0x47, 0x8c, 0x49, - 0x93, 0x02, 0xec, 0xf0, 0xc5, 0x28, 0xd2, 0x04, + 0x93, 0x02, 0xec, 0xf0, 0xc5, 0x28, 0xd8, 0x04, 0xad, 0x0d, 0x06, 0x04, 0x12, 0x71, 0x26, 0x2b, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x04, - 0x00, 0x04, 0x00, 0x00, 0x37, 0x04, 0xa0, 0x06, - 0x00, 0x00, 0x00, 0xd4, 0x06, 0x00, 0x01, 0x00, - 0xa4, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x01, - 0x00, 0x08, 0xcc, 0xc8, 0xe9, 0xca, 0x38, 0xe6, - 0x00, 0x00, 0x00, 0x42, 0x8c, 0x01, 0x00, 0x00, - 0xc8, 0xe9, 0xc8, 0x41, 0xf5, 0x01, 0x00, 0x00, + 0x00, 0x04, 0x00, 0x00, 0x37, 0x04, 0xa6, 0x06, + 0x00, 0x00, 0x00, 0xda, 0x06, 0x00, 0x01, 0x00, + 0xaa, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x01, + 0x00, 0x08, 0xcc, 0xc8, 0xe9, 0xca, 0x38, 0xe9, + 0x00, 0x00, 0x00, 0x42, 0x8f, 0x01, 0x00, 0x00, + 0xc8, 0xe9, 0xc8, 0x41, 0xf8, 0x01, 0x00, 0x00, 0x24, 0x02, 0x00, 0xc9, 0xb5, 0xcb, 0xc7, 0xc6, 0xa3, 0xea, 0x14, 0xc5, 0xc7, 0x71, 0xc8, 0xc7, - 0x47, 0x42, 0xf7, 0x00, 0x00, 0x00, 0x24, 0x00, + 0x47, 0x42, 0xfa, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x49, 0x93, 0x02, 0xec, 0xe9, 0xc5, 0x28, - 0xd2, 0x04, 0xc2, 0x0d, 0x06, 0x0e, 0x12, 0x71, + 0xd8, 0x04, 0xc2, 0x0d, 0x06, 0x0e, 0x12, 0x71, 0x26, 0x4e, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x07, 0x00, 0x05, 0x00, 0x00, 0x6e, 0x07, - 0xcc, 0x06, 0x00, 0x00, 0x00, 0xd4, 0x06, 0x00, - 0x01, 0x00, 0xa4, 0x06, 0x00, 0x02, 0x00, 0xb8, - 0x06, 0x00, 0x03, 0x00, 0xf8, 0x07, 0x00, 0x04, - 0x00, 0xee, 0x07, 0x00, 0x05, 0x00, 0x10, 0x00, + 0xd2, 0x06, 0x00, 0x00, 0x00, 0xda, 0x06, 0x00, + 0x01, 0x00, 0xaa, 0x06, 0x00, 0x02, 0x00, 0xbe, + 0x06, 0x00, 0x03, 0x00, 0xfe, 0x07, 0x00, 0x04, + 0x00, 0xf4, 0x07, 0x00, 0x05, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x06, 0xc2, 0x06, 0xc4, 0x05, 0xe9, 0xce, 0xb5, 0xa9, 0xea, 0x0d, 0x38, - 0xc9, 0x00, 0x00, 0x00, 0x04, 0xbd, 0x01, 0x00, - 0x00, 0xef, 0x2f, 0x38, 0xe6, 0x00, 0x00, 0x00, - 0x42, 0x8c, 0x01, 0x00, 0x00, 0xc6, 0xc2, 0x05, - 0x41, 0xf5, 0x01, 0x00, 0x00, 0x8c, 0x24, 0x02, + 0xcc, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x01, 0x00, + 0x00, 0xef, 0x2f, 0x38, 0xe9, 0x00, 0x00, 0x00, + 0x42, 0x8f, 0x01, 0x00, 0x00, 0xc6, 0xc2, 0x05, + 0x41, 0xf8, 0x01, 0x00, 0x00, 0x8c, 0x24, 0x02, 0x00, 0xcd, 0xb5, 0x71, 0xb6, 0xc2, 0x05, 0xb5, 0x47, 0x9b, 0x49, 0xb6, 0xcb, 0xc7, 0xc6, 0xa3, 0xea, 0x2d, 0xb5, 0xc3, 0x04, 0xb6, 0xcc, 0xc8, @@ -3029,13 +3029,13 @@ const uint8_t qjsc_qjscalc[31967] = { 0x9d, 0xc3, 0x04, 0x93, 0x03, 0xec, 0xe9, 0xc5, 0xc7, 0x71, 0xc2, 0x04, 0x8c, 0xc5, 0xb5, 0x47, 0x9a, 0x49, 0x93, 0x02, 0xec, 0xd0, 0xc5, 0x28, - 0xd2, 0x04, 0xcb, 0x0d, 0x0e, 0x12, 0x0d, 0x17, + 0xd8, 0x04, 0xcb, 0x0d, 0x0e, 0x12, 0x0d, 0x17, 0x17, 0x3f, 0x76, 0x30, 0x26, 0x12, 0x26, 0x4e, 0x17, 0x3a, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x06, 0x00, 0x04, 0x00, 0x00, 0x5a, 0x06, - 0xa4, 0x06, 0x00, 0x00, 0x00, 0xb8, 0x06, 0x00, - 0x01, 0x00, 0xd4, 0x06, 0x00, 0x02, 0x00, 0xcc, - 0x06, 0x00, 0x03, 0x00, 0xee, 0x07, 0x00, 0x04, + 0xaa, 0x06, 0x00, 0x00, 0x00, 0xbe, 0x06, 0x00, + 0x01, 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, 0xd2, + 0x06, 0x00, 0x03, 0x00, 0xf4, 0x07, 0x00, 0x04, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x05, 0xc2, 0x05, 0xc4, 0x04, 0xe9, 0xcb, 0xb5, 0xc9, 0xc5, 0xc7, 0xa3, 0xea, 0x0d, 0xc2, 0x04, 0xc5, @@ -3046,301 +3046,301 @@ const uint8_t qjsc_qjscalc[31967] = { 0xc6, 0x47, 0x49, 0x93, 0x01, 0xec, 0xed, 0xc2, 0x04, 0xc7, 0xc5, 0x9e, 0x43, 0x30, 0x00, 0x00, 0x00, 0xc2, 0x04, 0x41, 0x44, 0x00, 0x00, 0x00, - 0x42, 0xf5, 0x01, 0x00, 0x00, 0xc5, 0x9d, 0x43, - 0xf5, 0x01, 0x00, 0x00, 0xc2, 0x04, 0x28, 0xd2, + 0x42, 0xf8, 0x01, 0x00, 0x00, 0xc5, 0x9d, 0x43, + 0xf8, 0x01, 0x00, 0x00, 0xc2, 0x04, 0x28, 0xd8, 0x04, 0xdc, 0x0d, 0x0c, 0x12, 0x0d, 0x17, 0x0d, 0x44, 0x17, 0x1c, 0x12, 0x26, 0x4e, 0x35, 0x62, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x09, 0x00, - 0x06, 0x01, 0x00, 0x75, 0x09, 0xa4, 0x06, 0x00, - 0x00, 0x00, 0xb8, 0x06, 0x00, 0x01, 0x00, 0xdc, - 0x07, 0x00, 0x02, 0x00, 0xb2, 0x07, 0x00, 0x03, - 0x00, 0xea, 0x06, 0x00, 0x04, 0x00, 0xb6, 0x06, - 0x00, 0x05, 0x00, 0xea, 0x07, 0x00, 0x06, 0x00, - 0xd4, 0x06, 0x00, 0x07, 0x00, 0x10, 0x00, 0x01, - 0x00, 0x9a, 0x05, 0x23, 0x01, 0x08, 0xc3, 0x08, + 0x06, 0x01, 0x00, 0x75, 0x09, 0xaa, 0x06, 0x00, + 0x00, 0x00, 0xbe, 0x06, 0x00, 0x01, 0x00, 0xe2, + 0x07, 0x00, 0x02, 0x00, 0xb8, 0x07, 0x00, 0x03, + 0x00, 0xf0, 0x06, 0x00, 0x04, 0x00, 0xbc, 0x06, + 0x00, 0x05, 0x00, 0xf0, 0x07, 0x00, 0x06, 0x00, + 0xda, 0x06, 0x00, 0x07, 0x00, 0x10, 0x00, 0x01, + 0x00, 0xa0, 0x05, 0x23, 0x01, 0x08, 0xc3, 0x08, 0xc2, 0x08, 0xc3, 0x05, 0xc1, 0xcb, 0xc2, 0x08, - 0x41, 0xf5, 0x01, 0x00, 0x00, 0xc3, 0x06, 0xc2, + 0x41, 0xf8, 0x01, 0x00, 0x00, 0xc3, 0x06, 0xc2, 0x08, 0xe9, 0xc3, 0x07, 0xb5, 0xca, 0xc6, 0xc2, 0x07, 0xa3, 0xea, 0x33, 0xc6, 0xc2, 0x06, 0x9d, 0xc9, 0xc2, 0x05, 0xc6, 0x47, 0xc4, 0x04, 0xb5, 0xaa, 0xea, 0x20, 0xdd, 0xc2, 0x04, 0xc5, 0xf0, - 0xd0, 0xb5, 0x47, 0x04, 0x76, 0x01, 0x00, 0x00, + 0xd0, 0xb5, 0x47, 0x04, 0x79, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x0d, 0xc7, 0xc1, 0xaa, 0xea, 0x08, - 0x04, 0x75, 0x01, 0x00, 0x00, 0x94, 0x02, 0xc8, + 0x04, 0x78, 0x01, 0x00, 0x00, 0x94, 0x02, 0xc8, 0x94, 0x02, 0x93, 0x01, 0xec, 0xc9, 0xc7, 0xc1, - 0xaa, 0xea, 0x08, 0x04, 0x75, 0x01, 0x00, 0x00, - 0x94, 0x02, 0xc7, 0x04, 0xfd, 0x01, 0x00, 0x00, + 0xaa, 0xea, 0x08, 0x04, 0x78, 0x01, 0x00, 0x00, + 0x94, 0x02, 0xc7, 0x04, 0x00, 0x02, 0x00, 0x00, 0xdd, 0xb6, 0xc2, 0x07, 0xc2, 0x06, 0x9d, 0xf0, - 0x9d, 0x04, 0xd8, 0x01, 0x00, 0x00, 0x9d, 0x9d, - 0xcf, 0x28, 0xd2, 0x04, 0xea, 0x0d, 0x12, 0x12, + 0x9d, 0x04, 0xdb, 0x01, 0x00, 0x00, 0x9d, 0x9d, + 0xcf, 0x28, 0xd8, 0x04, 0xea, 0x0d, 0x12, 0x12, 0x17, 0x0d, 0x30, 0x1c, 0x2b, 0x1c, 0x21, 0x17, 0x21, 0x35, 0x1c, 0x27, 0x13, 0x17, 0x1c, 0x26, 0x76, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x05, - 0x01, 0x03, 0x00, 0x00, 0x3c, 0x06, 0xba, 0x06, - 0x00, 0x01, 0x00, 0xa4, 0x06, 0x00, 0x00, 0x00, - 0xd4, 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, - 0x02, 0x00, 0xb6, 0x06, 0x00, 0x03, 0x00, 0x10, + 0x01, 0x03, 0x00, 0x00, 0x3c, 0x06, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0xaa, 0x06, 0x00, 0x00, 0x00, + 0xda, 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, + 0x02, 0x00, 0xbc, 0x06, 0x00, 0x03, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x04, 0xc2, 0x04, 0xd0, 0xe9, 0xce, 0xb5, 0xa9, 0xea, 0x03, 0xb5, 0x28, 0xc8, 0xc6, 0x8e, 0xce, 0x47, 0xcb, 0xc6, 0xb5, 0xa5, 0xea, 0x0d, 0x92, 0x01, 0xc7, 0xd1, 0x9a, 0xc8, 0xc6, 0x47, 0x9d, 0xcb, 0xec, 0xf0, - 0xc8, 0x41, 0xf5, 0x01, 0x00, 0x00, 0xb5, 0xaa, - 0xea, 0x0c, 0xc7, 0xd1, 0xc8, 0x41, 0xf5, 0x01, - 0x00, 0x00, 0x9f, 0x9a, 0xcb, 0xc7, 0x28, 0xd2, + 0xc8, 0x41, 0xf8, 0x01, 0x00, 0x00, 0xb5, 0xaa, + 0xea, 0x0c, 0xc7, 0xd1, 0xc8, 0x41, 0xf8, 0x01, + 0x00, 0x00, 0x9f, 0x9a, 0xcb, 0xc7, 0x28, 0xd8, 0x04, 0x80, 0x0e, 0x0c, 0x12, 0x0d, 0x12, 0x17, 0x0d, 0x21, 0x1c, 0x0d, 0x2b, 0x0d, 0x35, 0x3a, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x07, 0x00, - 0x05, 0x00, 0x00, 0x6d, 0x07, 0xb6, 0x06, 0x00, - 0x00, 0x00, 0xd4, 0x06, 0x00, 0x01, 0x00, 0xea, - 0x07, 0x00, 0x02, 0x00, 0xcc, 0x06, 0x00, 0x03, - 0x00, 0xa4, 0x06, 0x00, 0x04, 0x00, 0xb8, 0x06, + 0x05, 0x00, 0x00, 0x6d, 0x07, 0xbc, 0x06, 0x00, + 0x00, 0x00, 0xda, 0x06, 0x00, 0x01, 0x00, 0xf0, + 0x07, 0x00, 0x02, 0x00, 0xd2, 0x06, 0x00, 0x03, + 0x00, 0xaa, 0x06, 0x00, 0x04, 0x00, 0xbe, 0x06, 0x00, 0x05, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x06, 0xc2, 0x06, 0xcd, 0xe9, 0xca, 0xc5, - 0x41, 0xf5, 0x01, 0x00, 0x00, 0xcb, 0xc6, 0xb5, + 0x41, 0xf8, 0x01, 0x00, 0x00, 0xcb, 0xc6, 0xb5, 0xa9, 0xea, 0x15, 0xc7, 0xb5, 0xa9, 0xea, 0x10, - 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, 0x8c, 0x01, + 0x38, 0xe9, 0x00, 0x00, 0x00, 0x42, 0x8f, 0x01, 0x00, 0x00, 0xb5, 0xb5, 0x25, 0x02, 0x00, 0x38, - 0xe6, 0x00, 0x00, 0x00, 0x42, 0x8c, 0x01, 0x00, + 0xe9, 0x00, 0x00, 0x00, 0x42, 0x8f, 0x01, 0x00, 0x00, 0xc6, 0xc7, 0xb6, 0x9e, 0x24, 0x02, 0x00, 0xcc, 0xb5, 0xc3, 0x04, 0xc2, 0x04, 0xc6, 0xa3, 0xea, 0x22, 0xc7, 0xc2, 0x04, 0x9d, 0xc4, 0x05, 0xb5, 0xa9, 0xea, 0x08, 0xc8, 0xc2, 0x04, 0xb5, 0x49, 0xec, 0x0d, 0xc8, 0xc2, 0x04, 0x71, 0xc2, 0x05, 0xc5, 0xc2, 0x04, 0x47, 0x9a, 0x49, 0x93, - 0x04, 0xec, 0xda, 0xc8, 0x42, 0x88, 0x01, 0x00, - 0x00, 0x25, 0x00, 0x00, 0xd2, 0x04, 0x8e, 0x0e, + 0x04, 0xec, 0xda, 0xc8, 0x42, 0x8b, 0x01, 0x00, + 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0x8e, 0x0e, 0x0b, 0x12, 0x3f, 0x35, 0x4f, 0x5d, 0x30, 0x21, 0x17, 0x27, 0x3f, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x07, 0x00, 0x05, 0x00, 0x00, 0x60, - 0x07, 0xb6, 0x06, 0x00, 0x00, 0x00, 0xd4, 0x06, - 0x00, 0x01, 0x00, 0xea, 0x07, 0x00, 0x02, 0x00, - 0xa4, 0x06, 0x00, 0x03, 0x00, 0xb8, 0x06, 0x00, - 0x04, 0x00, 0xcc, 0x06, 0x00, 0x05, 0x00, 0x10, + 0x07, 0xbc, 0x06, 0x00, 0x00, 0x00, 0xda, 0x06, + 0x00, 0x01, 0x00, 0xf0, 0x07, 0x00, 0x02, 0x00, + 0xaa, 0x06, 0x00, 0x03, 0x00, 0xbe, 0x06, 0x00, + 0x04, 0x00, 0xd2, 0x06, 0x00, 0x05, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x06, 0xc2, 0x06, - 0xcd, 0xe9, 0xca, 0xc5, 0x41, 0xf5, 0x01, 0x00, - 0x00, 0xcb, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, - 0x8c, 0x01, 0x00, 0x00, 0xc6, 0xc7, 0xb6, 0x9d, + 0xcd, 0xe9, 0xca, 0xc5, 0x41, 0xf8, 0x01, 0x00, + 0x00, 0xcb, 0x38, 0xe9, 0x00, 0x00, 0x00, 0x42, + 0x8f, 0x01, 0x00, 0x00, 0xc6, 0xc7, 0xb6, 0x9d, 0x24, 0x02, 0x00, 0xc3, 0x05, 0xb5, 0xcc, 0xc8, 0xc6, 0xa3, 0xea, 0x2e, 0xc7, 0xc8, 0x9d, 0xc4, 0x04, 0xb4, 0xa9, 0xea, 0x14, 0xc5, 0xc8, 0x47, - 0xb5, 0xaa, 0xea, 0x1a, 0x38, 0xc9, 0x00, 0x00, - 0x00, 0x04, 0xfe, 0x01, 0x00, 0x00, 0xef, 0x2f, + 0xb5, 0xaa, 0xea, 0x1a, 0x38, 0xcc, 0x00, 0x00, + 0x00, 0x04, 0x01, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xc2, 0x05, 0xc8, 0x71, 0xc5, 0xc8, 0x47, 0xc2, 0x04, 0xb6, 0x9d, 0x9b, 0x49, 0x93, 0x03, 0xec, - 0xcf, 0xc2, 0x05, 0x42, 0x88, 0x01, 0x00, 0x00, - 0x25, 0x00, 0x00, 0xd2, 0x04, 0x9e, 0x0e, 0x0b, + 0xcf, 0xc2, 0x05, 0x42, 0x8b, 0x01, 0x00, 0x00, + 0x25, 0x00, 0x00, 0xd8, 0x04, 0x9e, 0x0e, 0x0b, 0x12, 0x3f, 0x62, 0x26, 0x1c, 0x17, 0x26, 0x3a, 0x08, 0x45, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x06, 0x00, 0x05, 0x01, 0x00, 0x8b, 0x01, - 0x06, 0xea, 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, - 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, 0x02, 0x00, - 0xd4, 0x06, 0x00, 0x03, 0x00, 0xb6, 0x06, 0x00, + 0x06, 0xf0, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, + 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x02, 0x00, + 0xda, 0x06, 0x00, 0x03, 0x00, 0xbc, 0x06, 0x00, 0x04, 0x00, 0x10, 0x00, 0x01, 0x00, 0xdc, 0x01, 0x00, 0x03, 0x08, 0xc3, 0x05, 0xc2, 0x05, 0xc4, - 0x04, 0x41, 0xf5, 0x01, 0x00, 0x00, 0xb5, 0xa3, - 0xea, 0x0d, 0x38, 0xc9, 0x00, 0x00, 0x00, 0x04, - 0xff, 0x01, 0x00, 0x00, 0xef, 0x2f, 0xc2, 0x04, - 0x41, 0xf5, 0x01, 0x00, 0x00, 0xc2, 0x04, 0xe9, - 0x9d, 0xcc, 0xc2, 0x04, 0x41, 0xf5, 0x01, 0x00, + 0x04, 0x41, 0xf8, 0x01, 0x00, 0x00, 0xb5, 0xa3, + 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, + 0x02, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xc2, 0x04, + 0x41, 0xf8, 0x01, 0x00, 0x00, 0xc2, 0x04, 0xe9, + 0x9d, 0xcc, 0xc2, 0x04, 0x41, 0xf8, 0x01, 0x00, 0x00, 0xb5, 0xa5, 0x11, 0xeb, 0x08, 0x0e, 0xc2, 0x04, 0xb5, 0x47, 0xb5, 0xa9, 0xea, 0x05, 0xb6, - 0xc9, 0xec, 0x18, 0xdd, 0x42, 0xfe, 0x00, 0x00, + 0xc9, 0xec, 0x18, 0xdd, 0x42, 0x01, 0x01, 0x00, 0x00, 0xc2, 0x04, 0xb5, 0x47, 0x24, 0x01, 0x00, 0xc9, 0xc2, 0x04, 0xc2, 0x04, 0xb5, 0x47, 0x9e, - 0xc3, 0x04, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, - 0x8c, 0x01, 0x00, 0x00, 0xc8, 0xb5, 0x24, 0x02, + 0xc3, 0x04, 0x38, 0xe9, 0x00, 0x00, 0x00, 0x42, + 0x8f, 0x01, 0x00, 0x00, 0xc8, 0xb5, 0x24, 0x02, 0x00, 0xcb, 0xb5, 0xca, 0xc6, 0xc8, 0xa3, 0xea, - 0x12, 0xc7, 0xc6, 0x71, 0xc5, 0x38, 0xec, 0x00, + 0x12, 0xc7, 0xc6, 0x71, 0xc5, 0x38, 0xef, 0x00, 0x00, 0x00, 0xc6, 0xef, 0x9b, 0x49, 0x93, 0x01, 0xec, 0xeb, 0xc7, 0x42, 0x5a, 0x00, 0x00, 0x00, - 0xc2, 0x04, 0x25, 0x01, 0x00, 0xd2, 0x04, 0xac, + 0xc2, 0x04, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xac, 0x0e, 0x0e, 0x12, 0x0d, 0x3a, 0x3f, 0x3f, 0x6c, 0x0d, 0x0d, 0x49, 0x31, 0x53, 0x26, 0x44, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x03, 0x00, - 0x05, 0x01, 0x00, 0x38, 0x03, 0xb6, 0x06, 0x00, - 0x00, 0x00, 0xcc, 0x06, 0x00, 0x01, 0x00, 0x10, + 0x05, 0x01, 0x00, 0x38, 0x03, 0xbc, 0x06, 0x00, + 0x00, 0x00, 0xd2, 0x06, 0x00, 0x01, 0x00, 0x10, 0x00, 0x01, 0x00, 0xdc, 0x01, 0x00, 0x03, 0x08, - 0xcb, 0xc7, 0xcd, 0x41, 0xf5, 0x01, 0x00, 0x00, - 0xb5, 0xaa, 0xea, 0x0d, 0x38, 0xc9, 0x00, 0x00, - 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0xef, 0x2f, - 0x38, 0xf4, 0x00, 0x00, 0x00, 0x38, 0xf3, 0x00, + 0xcb, 0xc7, 0xcd, 0x41, 0xf8, 0x01, 0x00, 0x00, + 0xb5, 0xaa, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, + 0x00, 0x04, 0x03, 0x02, 0x00, 0x00, 0xef, 0x2f, + 0x38, 0xf7, 0x00, 0x00, 0x00, 0x38, 0xf6, 0x00, 0x00, 0x00, 0xc5, 0xef, 0xc5, 0x9b, 0xef, 0xce, - 0xdd, 0x42, 0xff, 0x00, 0x00, 0x00, 0xc5, 0xb5, - 0x47, 0x24, 0x01, 0x00, 0x9d, 0xce, 0x28, 0xd2, + 0xdd, 0x42, 0x02, 0x01, 0x00, 0x00, 0xc5, 0xb5, + 0x47, 0x24, 0x01, 0x00, 0x9d, 0xce, 0x28, 0xd8, 0x04, 0xbd, 0x0e, 0x06, 0x0d, 0x08, 0x35, 0x3f, 0x54, 0x49, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, - 0x03, 0x02, 0x04, 0x00, 0x00, 0x43, 0x05, 0xd4, - 0x06, 0x00, 0x01, 0x00, 0xea, 0x07, 0x00, 0x01, - 0x00, 0xcc, 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, - 0x00, 0x01, 0x00, 0xa0, 0x06, 0x00, 0x02, 0x00, + 0x03, 0x02, 0x04, 0x00, 0x00, 0x43, 0x05, 0xda, + 0x06, 0x00, 0x01, 0x00, 0xf0, 0x07, 0x00, 0x01, + 0x00, 0xd2, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, + 0x00, 0x01, 0x00, 0xa6, 0x06, 0x00, 0x02, 0x00, 0x26, 0x00, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xd1, 0xa3, 0xea, 0x09, 0xc5, 0xc6, 0xb5, 0x49, 0x93, - 0x01, 0xec, 0xf4, 0x38, 0x92, 0x00, 0x00, 0x00, - 0x42, 0xa4, 0x01, 0x00, 0x00, 0x38, 0xe6, 0x00, + 0x01, 0xec, 0xf4, 0x38, 0x95, 0x00, 0x00, 0x00, + 0x42, 0xa7, 0x01, 0x00, 0x00, 0x38, 0xe9, 0x00, 0x00, 0x00, 0x41, 0x3b, 0x00, 0x00, 0x00, 0x24, - 0x01, 0x00, 0xcf, 0xd2, 0x43, 0xf5, 0x01, 0x00, - 0x00, 0x38, 0x92, 0x00, 0x00, 0x00, 0x42, 0x60, + 0x01, 0x00, 0xcf, 0xd2, 0x43, 0xf8, 0x01, 0x00, + 0x00, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, 0x60, 0x00, 0x00, 0x00, 0xc5, 0xc7, 0x24, 0x02, 0x00, - 0x0e, 0xc5, 0x28, 0xd2, 0x04, 0xca, 0x0e, 0x07, + 0x0e, 0xc5, 0x28, 0xd8, 0x04, 0xca, 0x0e, 0x07, 0x05, 0x17, 0x26, 0x2c, 0x7b, 0x21, 0x53, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x02, 0x01, 0x04, - 0x01, 0x01, 0x6b, 0x03, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0x82, 0x08, 0x00, 0x00, 0x00, 0xd4, 0x06, - 0x00, 0x01, 0x00, 0xc4, 0x05, 0x38, 0x01, 0xc0, + 0x01, 0x01, 0x6b, 0x03, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0x88, 0x08, 0x00, 0x00, 0x00, 0xda, 0x06, + 0x00, 0x01, 0x00, 0xca, 0x05, 0x38, 0x01, 0xc0, 0x00, 0xc9, 0xdd, 0xd1, 0xef, 0xea, 0x19, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd9, 0x42, - 0x89, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xce, + 0xe6, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd9, 0x42, + 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xce, 0xb5, 0xa3, 0xea, 0x40, 0xc5, 0xee, 0x2f, 0xd1, - 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x31, - 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, 0x42, 0x89, + 0x38, 0xe8, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x31, + 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xb5, 0xaa, - 0xea, 0x04, 0xc5, 0xee, 0x2f, 0xd1, 0x41, 0xbf, - 0x01, 0x00, 0x00, 0x42, 0x89, 0x01, 0x00, 0x00, + 0xea, 0x04, 0xc5, 0xee, 0x2f, 0xd1, 0x41, 0xc2, + 0x01, 0x00, 0x00, 0x42, 0x8c, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xce, 0xb5, 0xa3, 0xea, 0x04, 0xc5, 0xee, 0x2f, 0xc6, 0x8c, 0xca, 0xec, 0x04, - 0xc5, 0xee, 0x2f, 0x38, 0xe6, 0x00, 0x00, 0x00, - 0x42, 0x8c, 0x01, 0x00, 0x00, 0xb5, 0xc6, 0x25, - 0x02, 0x00, 0xd2, 0x04, 0xd6, 0x0e, 0x11, 0x00, + 0xc5, 0xee, 0x2f, 0x38, 0xe9, 0x00, 0x00, 0x00, + 0x42, 0x8f, 0x01, 0x00, 0x00, 0xb5, 0xc6, 0x25, + 0x02, 0x00, 0xd8, 0x04, 0xd6, 0x0e, 0x11, 0x00, 0x03, 0x0a, 0x1c, 0x2b, 0x30, 0x17, 0x0d, 0x35, 0x5d, 0x12, 0x4e, 0x17, 0x12, 0x12, 0x0d, 0x12, - 0x0e, 0x43, 0x06, 0x05, 0x82, 0x08, 0x00, 0x00, - 0x00, 0x02, 0x00, 0x00, 0x0d, 0x00, 0x38, 0xcc, - 0x00, 0x00, 0x00, 0x04, 0x02, 0x02, 0x00, 0x00, - 0x23, 0x01, 0x00, 0xd2, 0x04, 0xd7, 0x0e, 0x01, - 0x03, 0x0e, 0x43, 0x06, 0x05, 0xce, 0x03, 0x02, - 0x04, 0x02, 0x03, 0x00, 0x00, 0x2e, 0x06, 0x86, - 0x08, 0x00, 0x01, 0x00, 0x88, 0x08, 0x00, 0x01, - 0x00, 0xa4, 0x06, 0x00, 0x00, 0x00, 0xb8, 0x06, - 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, 0x02, 0x00, - 0x8a, 0x08, 0x00, 0x03, 0x00, 0xd2, 0xf4, 0xea, + 0x0e, 0x43, 0x06, 0x05, 0x88, 0x08, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x00, 0x0d, 0x00, 0x38, 0xcf, + 0x00, 0x00, 0x00, 0x04, 0x05, 0x02, 0x00, 0x00, + 0x23, 0x01, 0x00, 0xd8, 0x04, 0xd7, 0x0e, 0x01, + 0x03, 0x0e, 0x43, 0x06, 0x05, 0xd4, 0x03, 0x02, + 0x04, 0x02, 0x03, 0x00, 0x00, 0x2e, 0x06, 0x8c, + 0x08, 0x00, 0x01, 0x00, 0x8e, 0x08, 0x00, 0x01, + 0x00, 0xaa, 0x06, 0x00, 0x00, 0x00, 0xbe, 0x06, + 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x02, 0x00, + 0x90, 0x08, 0x00, 0x03, 0x00, 0xd2, 0xf4, 0xea, 0x03, 0xd1, 0xd6, 0x26, 0x00, 0x00, 0xcb, 0xb5, 0xc9, 0xc5, 0xd1, 0xa3, 0xea, 0x1c, 0x26, 0x00, 0x00, 0xcc, 0xb5, 0xca, 0xc6, 0xd2, 0xa3, 0xea, 0x09, 0xc8, 0xc6, 0xb5, 0x49, 0x93, 0x01, 0xec, 0xf4, 0xc7, 0xc5, 0xc8, 0x49, 0x93, 0x00, 0xec, - 0xe1, 0xc7, 0x28, 0xd2, 0x04, 0xef, 0x0e, 0x0a, + 0xe1, 0xc7, 0x28, 0xd8, 0x04, 0xef, 0x0e, 0x0a, 0x04, 0x17, 0x0d, 0x17, 0x26, 0x17, 0x26, 0x2b, 0x17, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, - 0x02, 0x01, 0x03, 0x00, 0x00, 0x1c, 0x03, 0xd4, - 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, 0x00, - 0x00, 0xa4, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe7, + 0x02, 0x01, 0x03, 0x00, 0x00, 0x1c, 0x03, 0xda, + 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x00, + 0x00, 0xaa, 0x06, 0x00, 0x01, 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, 0xd1, 0xd1, 0xf0, 0xc9, 0xb5, 0xca, 0xc6, 0xd1, 0xa3, 0xea, 0x0b, 0xc5, 0xc6, 0x47, 0xc6, 0xb6, 0x49, 0x93, 0x01, 0xec, 0xf2, - 0xc5, 0x28, 0xd2, 0x04, 0xfe, 0x0e, 0x04, 0x04, + 0xc5, 0x28, 0xd8, 0x04, 0xfe, 0x0e, 0x04, 0x04, 0x30, 0x26, 0x35, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x03, 0x01, 0x04, 0x00, 0x00, 0x22, 0x04, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, - 0x00, 0x00, 0xa4, 0x06, 0x00, 0x01, 0x00, 0xd4, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, + 0x00, 0x00, 0xaa, 0x06, 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, 0xcb, 0x38, - 0xe7, 0x00, 0x00, 0x00, 0xc7, 0xc7, 0xf0, 0xc9, + 0xea, 0x00, 0x00, 0x00, 0xc7, 0xc7, 0xf0, 0xc9, 0xb5, 0xca, 0xc6, 0xc7, 0xa3, 0xea, 0x0e, 0xc5, 0xc6, 0x47, 0xc6, 0x71, 0xd1, 0xc6, 0x47, 0x49, - 0x93, 0x01, 0xec, 0xef, 0xc5, 0x28, 0xd2, 0x04, + 0x93, 0x01, 0xec, 0xef, 0xc5, 0x28, 0xd8, 0x04, 0x85, 0x0f, 0x05, 0x04, 0x12, 0x30, 0x26, 0x44, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x03, 0x01, - 0x05, 0x00, 0x00, 0x2d, 0x04, 0xd4, 0x06, 0x00, - 0x01, 0x00, 0xa4, 0x06, 0x00, 0x00, 0x00, 0xb8, - 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, 0x02, - 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, 0xd1, 0xef, + 0x05, 0x00, 0x00, 0x2d, 0x04, 0xda, 0x06, 0x00, + 0x01, 0x00, 0xaa, 0x06, 0x00, 0x00, 0x00, 0xbe, + 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x02, + 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xcb, 0xb5, 0xc9, 0xc5, 0xd1, 0xa3, 0xea, 0x1d, 0xb5, 0xca, 0xc6, 0xd1, 0xa3, 0xea, 0x12, 0xc7, 0xc5, 0x47, 0xc6, 0x71, 0xb6, 0xb6, 0xc5, 0x9d, 0xc6, 0x9d, 0x9b, 0x49, 0x93, 0x01, 0xec, 0xeb, - 0x93, 0x00, 0xec, 0xe0, 0xc7, 0x28, 0xd2, 0x04, + 0x93, 0x00, 0xec, 0xe0, 0xc7, 0x28, 0xd8, 0x04, 0x8d, 0x0f, 0x07, 0x04, 0x2b, 0x26, 0x26, 0x44, 0x17, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x05, 0x01, 0x04, 0x00, 0x00, 0x87, 0x01, 0x06, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0x86, 0x08, 0x00, - 0x00, 0x00, 0x88, 0x08, 0x00, 0x01, 0x00, 0xcc, - 0x06, 0x00, 0x02, 0x00, 0xa4, 0x06, 0x00, 0x03, - 0x00, 0xb8, 0x06, 0x00, 0x04, 0x00, 0x38, 0x93, - 0x00, 0x00, 0x00, 0x42, 0xa0, 0x01, 0x00, 0x00, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0x8c, 0x08, 0x00, + 0x00, 0x00, 0x8e, 0x08, 0x00, 0x01, 0x00, 0xd2, + 0x06, 0x00, 0x02, 0x00, 0xaa, 0x06, 0x00, 0x03, + 0x00, 0xbe, 0x06, 0x00, 0x04, 0x00, 0x38, 0x96, + 0x00, 0x00, 0x00, 0x42, 0xa3, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x96, 0xea, 0x0d, 0x38, - 0xcc, 0x00, 0x00, 0x00, 0x04, 0x06, 0x02, 0x00, - 0x00, 0xef, 0x2f, 0xd1, 0xe9, 0xc9, 0x38, 0x93, - 0x00, 0x00, 0x00, 0x42, 0xa0, 0x01, 0x00, 0x00, + 0xcf, 0x00, 0x00, 0x00, 0x04, 0x09, 0x02, 0x00, + 0x00, 0xef, 0x2f, 0xd1, 0xe9, 0xc9, 0x38, 0x96, + 0x00, 0x00, 0x00, 0x42, 0xa3, 0x01, 0x00, 0x00, 0xd1, 0xb5, 0x47, 0x24, 0x01, 0x00, 0x96, 0xea, - 0x20, 0xb6, 0xca, 0x38, 0xe7, 0x00, 0x00, 0x00, + 0x20, 0xb6, 0xca, 0x38, 0xea, 0x00, 0x00, 0x00, 0xc6, 0xc5, 0xf0, 0xcb, 0xb5, 0xcc, 0xc8, 0xc5, 0xa3, 0xea, 0x41, 0xc7, 0xb5, 0x47, 0xc8, 0x71, 0xd1, 0xc8, 0x47, 0x49, 0x93, 0x03, 0xec, 0xef, - 0xd1, 0xb5, 0x47, 0xe9, 0xca, 0x38, 0xe7, 0x00, + 0xd1, 0xb5, 0x47, 0xe9, 0xca, 0x38, 0xea, 0x00, 0x00, 0x00, 0xc6, 0xc5, 0xf0, 0xcb, 0xb5, 0xcc, 0xc8, 0xc5, 0xa3, 0xea, 0x1f, 0xb5, 0xc3, 0x04, 0xc2, 0x04, 0xc6, 0xa3, 0xea, 0x12, 0xc7, 0xc2, 0x04, 0x47, 0xc8, 0x71, 0xd1, 0xc8, 0x47, 0xc2, 0x04, 0x47, 0x49, 0x93, 0x04, 0xec, 0xea, 0x93, - 0x03, 0xec, 0xde, 0xc7, 0x28, 0xd2, 0x04, 0x97, + 0x03, 0xec, 0xde, 0xc7, 0x28, 0xd8, 0x04, 0x97, 0x0f, 0x11, 0x04, 0x58, 0x3f, 0x12, 0x62, 0x0d, 0x30, 0x26, 0x30, 0x18, 0x1c, 0x30, 0x26, 0x30, 0x44, 0x17, 0x18, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x01, 0x01, 0x04, 0x00, 0x00, 0x4b, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd4, 0x06, 0x00, - 0x00, 0x00, 0x38, 0x93, 0x00, 0x00, 0x00, 0x42, - 0xa0, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, - 0x96, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, - 0x04, 0x07, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xd1, - 0xe9, 0xc9, 0x38, 0x93, 0x00, 0x00, 0x00, 0x42, - 0xa0, 0x01, 0x00, 0x00, 0xd1, 0xb5, 0x47, 0x24, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, + 0x00, 0x00, 0x38, 0x96, 0x00, 0x00, 0x00, 0x42, + 0xa3, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, + 0x96, 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, + 0x04, 0x0a, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xd1, + 0xe9, 0xc9, 0x38, 0x96, 0x00, 0x00, 0x00, 0x42, + 0xa3, 0x01, 0x00, 0x00, 0xd1, 0xb5, 0x47, 0x24, 0x01, 0x00, 0x96, 0x11, 0xeb, 0x08, 0x0e, 0xc5, 0xd1, 0xb5, 0x47, 0xe9, 0xaa, 0xea, 0x0d, 0x38, - 0xcc, 0x00, 0x00, 0x00, 0x04, 0x08, 0x02, 0x00, - 0x00, 0xef, 0x2f, 0xc5, 0x28, 0xd2, 0x04, 0xad, + 0xcf, 0x00, 0x00, 0x00, 0x04, 0x0b, 0x02, 0x00, + 0x00, 0xef, 0x2f, 0xc5, 0x28, 0xd8, 0x04, 0xad, 0x0f, 0x06, 0x04, 0x58, 0x3f, 0x12, 0x94, 0x3f, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x03, 0x01, - 0x03, 0x00, 0x00, 0x2a, 0x04, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xd4, 0x06, 0x00, 0x00, 0x00, 0xcc, - 0x06, 0x00, 0x01, 0x00, 0xa4, 0x06, 0x00, 0x02, - 0x00, 0x38, 0xe7, 0x00, 0x00, 0x00, 0x42, 0x8e, + 0x03, 0x00, 0x00, 0x2a, 0x04, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xda, 0x06, 0x00, 0x00, 0x00, 0xd2, + 0x06, 0x00, 0x01, 0x00, 0xaa, 0x06, 0x00, 0x02, + 0x00, 0x38, 0xea, 0x00, 0x00, 0x00, 0x42, 0x91, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xc9, 0xd1, 0xb5, 0x47, 0xb5, 0x47, 0xca, 0xb6, 0xcb, 0xc7, 0xc5, 0xa3, 0xea, 0x0d, 0xc6, 0xd1, 0xc7, 0x47, 0xc7, 0x47, 0x9d, 0xca, 0x93, 0x02, 0xec, - 0xf0, 0xc6, 0x28, 0xd2, 0x04, 0xb6, 0x0f, 0x06, + 0xf0, 0xc6, 0x28, 0xd8, 0x04, 0xb6, 0x0f, 0x06, 0x04, 0x4e, 0x21, 0x26, 0x2b, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x06, 0x01, 0x04, 0x00, - 0x00, 0x80, 0x01, 0x07, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xd4, 0x06, 0x00, 0x00, 0x00, 0x8a, 0x07, - 0x00, 0x01, 0x00, 0xea, 0x06, 0x00, 0x02, 0x00, - 0xa4, 0x06, 0x00, 0x03, 0x00, 0xb8, 0x06, 0x00, - 0x04, 0x00, 0x92, 0x08, 0x00, 0x05, 0x00, 0x38, - 0xe7, 0x00, 0x00, 0x00, 0x42, 0x8e, 0x01, 0x00, + 0x00, 0x80, 0x01, 0x07, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xda, 0x06, 0x00, 0x00, 0x00, 0x90, 0x07, + 0x00, 0x01, 0x00, 0xf0, 0x06, 0x00, 0x02, 0x00, + 0xaa, 0x06, 0x00, 0x03, 0x00, 0xbe, 0x06, 0x00, + 0x04, 0x00, 0x98, 0x08, 0x00, 0x05, 0x00, 0x38, + 0xea, 0x00, 0x00, 0x00, 0x42, 0x91, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xc9, 0x26, 0x00, 0x00, 0xca, 0xb5, 0xcc, 0xc8, 0xc5, 0xb6, 0x9d, 0xa3, 0xea, 0x09, 0xc6, 0xc8, 0xb5, 0x49, 0x93, 0x03, 0xec, 0xf2, 0xc6, 0xc5, 0xb6, 0x49, 0x38, - 0xe7, 0x00, 0x00, 0x00, 0x42, 0x16, 0x01, 0x00, + 0xea, 0x00, 0x00, 0x00, 0x42, 0x19, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, 0x00, 0xcb, 0xb5, 0xcc, 0xc8, 0xc5, 0xa3, 0xea, 0x3a, 0xc7, 0xd1, 0x9a, - 0xcb, 0x38, 0x19, 0x01, 0x00, 0x00, 0xc7, 0xef, + 0xcb, 0x38, 0x1c, 0x01, 0x00, 0x00, 0xc7, 0xef, 0x8c, 0xc8, 0xb6, 0x9d, 0x9b, 0xc3, 0x05, 0xc6, 0xc5, 0xc8, 0x9e, 0xb6, 0x9e, 0xc2, 0x05, 0x49, 0xb5, 0xc3, 0x04, 0xc2, 0x04, 0xc5, 0xa3, 0xea, 0x12, 0xc7, 0xc2, 0x04, 0x47, 0xc2, 0x04, 0x71, 0x13, 0x47, 0xc2, 0x05, 0x9d, 0x49, 0x93, 0x04, - 0xec, 0xea, 0x93, 0x03, 0xec, 0xc3, 0x38, 0xe3, - 0x00, 0x00, 0x00, 0xc6, 0x23, 0x01, 0x00, 0xd2, + 0xec, 0xea, 0x93, 0x03, 0xec, 0xc3, 0x38, 0xe6, + 0x00, 0x00, 0x00, 0xc6, 0x23, 0x01, 0x00, 0xd8, 0x04, 0xbf, 0x0f, 0x0e, 0x04, 0x4e, 0x17, 0x30, 0x2b, 0x17, 0x4e, 0x26, 0x17, 0x49, 0x30, 0x30, 0x58, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, - 0x00, 0x01, 0x05, 0x00, 0x00, 0x1b, 0x01, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0x38, 0xe3, 0x00, 0x00, - 0x00, 0x42, 0x28, 0x01, 0x00, 0x00, 0x38, 0xe7, - 0x00, 0x00, 0x00, 0x42, 0x1a, 0x01, 0x00, 0x00, - 0xd1, 0x24, 0x01, 0x00, 0x25, 0x01, 0x00, 0xd2, + 0x00, 0x01, 0x05, 0x00, 0x00, 0x1b, 0x01, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0x38, 0xe6, 0x00, 0x00, + 0x00, 0x42, 0x2b, 0x01, 0x00, 0x00, 0x38, 0xea, + 0x00, 0x00, 0x00, 0x42, 0x1d, 0x01, 0x00, 0x00, + 0xd1, 0x24, 0x01, 0x00, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xd0, 0x0f, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x08, 0x01, 0x05, 0x00, 0x00, - 0xdd, 0x01, 0x09, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xd4, 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, 0x00, - 0x01, 0x00, 0xb8, 0x06, 0x00, 0x02, 0x00, 0xbc, - 0x06, 0x00, 0x03, 0x00, 0xda, 0x06, 0x00, 0x04, - 0x00, 0x94, 0x08, 0x00, 0x05, 0x00, 0xe8, 0x06, - 0x00, 0x06, 0x00, 0xea, 0x06, 0x00, 0x07, 0x00, - 0x38, 0xe7, 0x00, 0x00, 0x00, 0x42, 0x8e, 0x01, + 0xdd, 0x01, 0x09, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xda, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, 0x00, + 0x01, 0x00, 0xbe, 0x06, 0x00, 0x02, 0x00, 0xc2, + 0x06, 0x00, 0x03, 0x00, 0xe0, 0x06, 0x00, 0x04, + 0x00, 0x9a, 0x08, 0x00, 0x05, 0x00, 0xee, 0x06, + 0x00, 0x06, 0x00, 0xf0, 0x06, 0x00, 0x07, 0x00, + 0x38, 0xea, 0x00, 0x00, 0x00, 0x42, 0x91, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xc9, 0xb6, - 0xc3, 0x04, 0xd1, 0x42, 0x8f, 0x01, 0x00, 0x00, + 0xc3, 0x04, 0xd1, 0x42, 0x92, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc3, 0x05, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0x69, 0x9d, 0x00, 0x00, 0x00, 0xc6, 0xcb, 0xc7, 0xc5, 0xa3, 0xea, 0x0f, 0xc2, 0x05, @@ -3353,7 +3353,7 @@ const uint8_t qjsc_qjscalc[31967] = { 0x47, 0xc8, 0x47, 0x49, 0xc2, 0x05, 0xc6, 0x47, 0xc8, 0xc2, 0x06, 0x49, 0x93, 0x03, 0xec, 0xdb, 0xc2, 0x04, 0x8c, 0xc3, 0x04, 0xc2, 0x05, 0xc6, - 0x47, 0xc6, 0x47, 0x42, 0xf9, 0x00, 0x00, 0x00, + 0x47, 0xc6, 0x47, 0x42, 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc3, 0x07, 0xc6, 0xb6, 0x9d, 0xcb, 0xc7, 0xc5, 0xa3, 0xea, 0x2e, 0xc2, 0x07, 0xc2, 0x05, 0xc7, 0x47, 0xc6, 0x47, 0x9a, 0xc3, @@ -3365,38 +3365,38 @@ const uint8_t qjsc_qjscalc[31967] = { 0xc2, 0x04, 0xc3, 0x07, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0xea, 0x10, 0xc2, 0x07, 0xc2, 0x05, 0xc6, 0x47, 0xc6, 0x47, 0x9a, 0xc3, 0x07, 0x93, 0x01, - 0xec, 0xed, 0xc2, 0x07, 0x28, 0xd2, 0x04, 0xd3, + 0xec, 0xed, 0xc2, 0x07, 0x28, 0xd8, 0x04, 0xd3, 0x0f, 0x1d, 0x05, 0x4e, 0x12, 0x3a, 0x35, 0x26, 0x2b, 0x0d, 0x17, 0x1c, 0x0d, 0x1c, 0x26, 0x2b, 0x44, 0x2b, 0x17, 0x1d, 0x53, 0x30, 0x3a, 0x26, 0x62, 0x17, 0x17, 0x1c, 0x17, 0x26, 0x4e, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x0a, 0x01, 0x05, - 0x00, 0x00, 0x9f, 0x02, 0x0b, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xd4, 0x06, 0x00, 0x00, 0x00, 0x96, - 0x08, 0x00, 0x01, 0x00, 0x94, 0x08, 0x00, 0x02, - 0x00, 0xa4, 0x06, 0x00, 0x03, 0x00, 0xb8, 0x06, - 0x00, 0x04, 0x00, 0xbc, 0x06, 0x00, 0x05, 0x00, - 0xe2, 0x07, 0x00, 0x06, 0x00, 0xcc, 0x06, 0x00, - 0x07, 0x00, 0xea, 0x06, 0x00, 0x08, 0x00, 0xe8, - 0x06, 0x00, 0x09, 0x00, 0x38, 0xe7, 0x00, 0x00, - 0x00, 0x42, 0x8e, 0x01, 0x00, 0x00, 0xd1, 0x24, - 0x01, 0x00, 0xc9, 0xd1, 0x42, 0x8f, 0x01, 0x00, - 0x00, 0x24, 0x00, 0x00, 0xcb, 0x38, 0xe7, 0x00, - 0x00, 0x00, 0x42, 0x16, 0x01, 0x00, 0x00, 0xc5, + 0x00, 0x00, 0x9f, 0x02, 0x0b, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xda, 0x06, 0x00, 0x00, 0x00, 0x9c, + 0x08, 0x00, 0x01, 0x00, 0x9a, 0x08, 0x00, 0x02, + 0x00, 0xaa, 0x06, 0x00, 0x03, 0x00, 0xbe, 0x06, + 0x00, 0x04, 0x00, 0xc2, 0x06, 0x00, 0x05, 0x00, + 0xe8, 0x07, 0x00, 0x06, 0x00, 0xd2, 0x06, 0x00, + 0x07, 0x00, 0xf0, 0x06, 0x00, 0x08, 0x00, 0xee, + 0x06, 0x00, 0x09, 0x00, 0x38, 0xea, 0x00, 0x00, + 0x00, 0x42, 0x91, 0x01, 0x00, 0x00, 0xd1, 0x24, + 0x01, 0x00, 0xc9, 0xd1, 0x42, 0x92, 0x01, 0x00, + 0x00, 0x24, 0x00, 0x00, 0xcb, 0x38, 0xea, 0x00, + 0x00, 0x00, 0x42, 0x19, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, 0x00, 0xca, 0xb5, 0xcc, 0xc8, 0xc5, 0xa3, 0x69, 0xef, 0x00, 0x00, 0x00, 0xc8, 0xc3, 0x04, 0xc2, 0x04, 0xc5, 0xa3, 0xea, 0x0f, 0xc7, 0xc2, 0x04, 0x47, 0xc8, 0x47, 0xb5, 0xaa, 0xeb, 0x05, 0x93, 0x04, 0xec, 0xed, 0xc2, 0x04, 0xc5, - 0xa9, 0xea, 0x0d, 0x38, 0xc9, 0x00, 0x00, 0x00, - 0x04, 0x0c, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xc2, + 0xa9, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, + 0x04, 0x0f, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xc2, 0x04, 0xc8, 0xaa, 0xea, 0x27, 0xc7, 0xc2, 0x04, 0x47, 0xc3, 0x09, 0xc7, 0xc2, 0x04, 0x71, 0xc7, 0xc8, 0x47, 0x49, 0xc7, 0xc8, 0xc2, 0x09, 0x49, 0xc6, 0xc2, 0x04, 0x47, 0xc3, 0x09, 0xc6, 0xc2, 0x04, 0x71, 0xc6, 0xc8, 0x47, 0x49, 0xc6, 0xc8, 0xc2, 0x09, 0x49, 0xc7, 0xc8, 0x47, 0xc8, 0x47, - 0x42, 0xf9, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, + 0x42, 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc3, 0x08, 0xb5, 0xc3, 0x05, 0xc2, 0x05, 0xc5, 0xa3, 0xea, 0x1d, 0xc7, 0xc8, 0x47, 0xc2, 0x05, 0x71, 0x13, 0x47, 0xc2, 0x08, 0x9a, 0x49, 0xc6, @@ -3414,27 +3414,27 @@ const uint8_t qjsc_qjscalc[31967] = { 0x47, 0xc6, 0xc8, 0x47, 0xc2, 0x05, 0x47, 0xc2, 0x08, 0x9a, 0x9e, 0x49, 0x93, 0x05, 0xec, 0xe3, 0x93, 0x04, 0xec, 0xa7, 0x93, 0x03, 0xed, 0x0f, - 0xff, 0xc6, 0x28, 0xd2, 0x04, 0xf5, 0x0f, 0x22, + 0xff, 0xc6, 0x28, 0xd8, 0x04, 0xf5, 0x0f, 0x22, 0x04, 0x4e, 0x35, 0x4e, 0x35, 0x30, 0x2b, 0x0d, 0x17, 0x21, 0x3f, 0x22, 0x21, 0x2b, 0x1c, 0x21, 0x2b, 0x1e, 0x4e, 0x30, 0x3f, 0x3f, 0x18, 0x30, 0x21, 0x2b, 0x30, 0x67, 0x17, 0x30, 0x67, 0x18, 0x17, 0x1c, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x08, 0x01, 0x05, 0x00, 0x00, 0x92, 0x02, 0x09, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0x94, 0x08, 0x00, - 0x00, 0x00, 0xa4, 0x06, 0x00, 0x01, 0x00, 0xb8, - 0x06, 0x00, 0x02, 0x00, 0xbc, 0x06, 0x00, 0x03, - 0x00, 0x88, 0x08, 0x00, 0x04, 0x00, 0x86, 0x08, - 0x00, 0x05, 0x00, 0x9a, 0x08, 0x00, 0x06, 0x00, - 0xea, 0x06, 0x00, 0x07, 0x00, 0x38, 0x93, 0x00, - 0x00, 0x00, 0x42, 0xa0, 0x01, 0x00, 0x00, 0xd1, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0x9a, 0x08, 0x00, + 0x00, 0x00, 0xaa, 0x06, 0x00, 0x01, 0x00, 0xbe, + 0x06, 0x00, 0x02, 0x00, 0xc2, 0x06, 0x00, 0x03, + 0x00, 0x8e, 0x08, 0x00, 0x04, 0x00, 0x8c, 0x08, + 0x00, 0x05, 0x00, 0xa0, 0x08, 0x00, 0x06, 0x00, + 0xf0, 0x06, 0x00, 0x07, 0x00, 0x38, 0x96, 0x00, + 0x00, 0x00, 0x42, 0xa3, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x96, 0x11, 0xeb, 0x13, 0x0e, - 0x38, 0x93, 0x00, 0x00, 0x00, 0x42, 0xa0, 0x01, + 0x38, 0x96, 0x00, 0x00, 0x00, 0x42, 0xa3, 0x01, 0x00, 0x00, 0xd1, 0xb5, 0x47, 0x24, 0x01, 0x00, - 0x96, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, - 0x04, 0x06, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xd1, + 0x96, 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, + 0x04, 0x09, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xe9, 0xc3, 0x05, 0xd1, 0xb5, 0x47, 0xe9, 0xc3, - 0x04, 0xd1, 0x42, 0x8f, 0x01, 0x00, 0x00, 0x24, + 0x04, 0xd1, 0x42, 0x92, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc9, 0xb5, 0xc3, 0x06, 0xb5, 0xca, 0xc6, 0xc2, 0x04, 0xa3, 0x69, 0xbf, 0x00, 0x00, 0x00, 0xc2, 0x06, 0xcb, 0xc7, 0xc2, 0x05, 0xa3, @@ -3442,14 +3442,14 @@ const uint8_t qjsc_qjscalc[31967] = { 0xaa, 0xeb, 0x05, 0x93, 0x02, 0xec, 0xee, 0xc7, 0xc2, 0x05, 0xa9, 0x6a, 0x9b, 0x00, 0x00, 0x00, 0xc7, 0xc2, 0x06, 0xaa, 0xea, 0x34, 0xb5, 0xcc, - 0xc8, 0xc2, 0x04, 0xa3, 0xea, 0x2c, 0x36, 0xb4, + 0xc8, 0xc2, 0x04, 0xa3, 0xea, 0x2c, 0x36, 0xb7, 0x01, 0x00, 0x00, 0xc5, 0xc7, 0x47, 0xc8, 0x47, - 0x3b, 0xb4, 0x01, 0x00, 0x00, 0xc5, 0xc7, 0x47, + 0x3b, 0xb7, 0x01, 0x00, 0x00, 0xc5, 0xc7, 0x47, 0xc8, 0x71, 0xc5, 0xc2, 0x06, 0x47, 0xc8, 0x47, 0x49, 0xc5, 0xc2, 0x06, 0x47, 0xc8, 0x71, 0x38, - 0xb4, 0x01, 0x00, 0x00, 0x49, 0x93, 0x03, 0xec, + 0xb7, 0x01, 0x00, 0x00, 0x49, 0x93, 0x03, 0xec, 0xd0, 0xc5, 0xc2, 0x06, 0x47, 0xc6, 0x47, 0x42, - 0xf9, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc3, + 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc3, 0x07, 0xb5, 0xcc, 0xc8, 0xc2, 0x04, 0xa3, 0xea, 0x11, 0xc5, 0xc2, 0x06, 0x47, 0xc8, 0x71, 0x13, 0x47, 0xc2, 0x07, 0x9a, 0x49, 0x93, 0x03, 0xec, @@ -3460,30 +3460,30 @@ const uint8_t qjsc_qjscalc[31967] = { 0x13, 0x47, 0xc5, 0xc2, 0x06, 0x47, 0xc8, 0x47, 0xc2, 0x07, 0x9a, 0x9e, 0x49, 0x93, 0x03, 0xec, 0xe5, 0x93, 0x02, 0xec, 0xd2, 0x93, 0x06, 0x93, - 0x01, 0xed, 0x3e, 0xff, 0xc2, 0x06, 0x28, 0xd2, + 0x01, 0xed, 0x3e, 0xff, 0xc2, 0x06, 0x28, 0xd8, 0x04, 0x9f, 0x10, 0x21, 0x05, 0x62, 0x62, 0x3f, 0x17, 0x21, 0x35, 0x12, 0x3a, 0x30, 0x26, 0x0d, 0x17, 0x17, 0x1c, 0x22, 0x2b, 0x4e, 0x3f, 0x3f, 0x19, 0x53, 0x2b, 0x3f, 0x18, 0x3a, 0x26, 0x2b, 0x5d, 0x17, 0x17, 0x0d, 0x1c, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x0c, 0x01, 0x05, 0x00, 0x00, - 0x90, 0x03, 0x0d, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0x94, 0x08, 0x00, 0x00, 0x00, 0xa4, 0x06, 0x00, - 0x01, 0x00, 0xb8, 0x06, 0x00, 0x02, 0x00, 0xbc, - 0x06, 0x00, 0x03, 0x00, 0x88, 0x08, 0x00, 0x04, - 0x00, 0x86, 0x08, 0x00, 0x05, 0x00, 0x9a, 0x08, - 0x00, 0x06, 0x00, 0xf0, 0x06, 0x00, 0x07, 0x00, - 0xcc, 0x06, 0x00, 0x08, 0x00, 0x9c, 0x08, 0x00, - 0x09, 0x00, 0x9e, 0x08, 0x00, 0x0a, 0x00, 0xea, - 0x06, 0x00, 0x0b, 0x00, 0x38, 0x93, 0x00, 0x00, - 0x00, 0x42, 0xa0, 0x01, 0x00, 0x00, 0xd1, 0x24, + 0x90, 0x03, 0x0d, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0x9a, 0x08, 0x00, 0x00, 0x00, 0xaa, 0x06, 0x00, + 0x01, 0x00, 0xbe, 0x06, 0x00, 0x02, 0x00, 0xc2, + 0x06, 0x00, 0x03, 0x00, 0x8e, 0x08, 0x00, 0x04, + 0x00, 0x8c, 0x08, 0x00, 0x05, 0x00, 0xa0, 0x08, + 0x00, 0x06, 0x00, 0xf6, 0x06, 0x00, 0x07, 0x00, + 0xd2, 0x06, 0x00, 0x08, 0x00, 0xa2, 0x08, 0x00, + 0x09, 0x00, 0xa4, 0x08, 0x00, 0x0a, 0x00, 0xf0, + 0x06, 0x00, 0x0b, 0x00, 0x38, 0x96, 0x00, 0x00, + 0x00, 0x42, 0xa3, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x96, 0x11, 0xeb, 0x13, 0x0e, 0x38, - 0x93, 0x00, 0x00, 0x00, 0x42, 0xa0, 0x01, 0x00, + 0x96, 0x00, 0x00, 0x00, 0x42, 0xa3, 0x01, 0x00, 0x00, 0xd1, 0xb5, 0x47, 0x24, 0x01, 0x00, 0x96, - 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, - 0x06, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xe9, + 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, + 0x09, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xd1, 0xe9, 0xc3, 0x05, 0xd1, 0xb5, 0x47, 0xe9, 0xc3, 0x04, - 0xd1, 0x42, 0x8f, 0x01, 0x00, 0x00, 0x24, 0x00, + 0xd1, 0x42, 0x92, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc9, 0x26, 0x00, 0x00, 0xc3, 0x09, 0xb5, 0xc3, 0x06, 0xb5, 0xca, 0xc6, 0xc2, 0x04, 0xa3, 0x69, 0xcc, 0x00, 0x00, 0x00, 0xc2, 0x09, 0xc6, @@ -3493,13 +3493,13 @@ const uint8_t qjsc_qjscalc[31967] = { 0xc7, 0xc2, 0x05, 0xa9, 0x6a, 0xa3, 0x00, 0x00, 0x00, 0xc2, 0x09, 0xc6, 0x0a, 0x49, 0xc7, 0xc2, 0x06, 0xaa, 0xea, 0x34, 0xb5, 0xcc, 0xc8, 0xc2, - 0x04, 0xa3, 0xea, 0x2c, 0x36, 0xb4, 0x01, 0x00, - 0x00, 0xc5, 0xc7, 0x47, 0xc8, 0x47, 0x3b, 0xb4, + 0x04, 0xa3, 0xea, 0x2c, 0x36, 0xb7, 0x01, 0x00, + 0x00, 0xc5, 0xc7, 0x47, 0xc8, 0x47, 0x3b, 0xb7, 0x01, 0x00, 0x00, 0xc5, 0xc7, 0x47, 0xc8, 0x71, 0xc5, 0xc2, 0x06, 0x47, 0xc8, 0x47, 0x49, 0xc5, - 0xc2, 0x06, 0x47, 0xc8, 0x71, 0x38, 0xb4, 0x01, + 0xc2, 0x06, 0x47, 0xc8, 0x71, 0x38, 0xb7, 0x01, 0x00, 0x00, 0x49, 0x93, 0x03, 0xec, 0xd0, 0xc5, - 0xc2, 0x06, 0x47, 0xc6, 0x47, 0x42, 0xf9, 0x00, + 0xc2, 0x06, 0x47, 0xc6, 0x47, 0x42, 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc3, 0x0b, 0xb5, 0xcc, 0xc8, 0xc2, 0x04, 0xa3, 0xea, 0x11, 0xc5, 0xc2, 0x06, 0x47, 0xc8, 0x71, 0x13, 0x47, 0xc2, @@ -3512,7 +3512,7 @@ const uint8_t qjsc_qjscalc[31967] = { 0x47, 0xc2, 0x0b, 0x9a, 0x9e, 0x49, 0x93, 0x03, 0xec, 0xe5, 0x93, 0x02, 0xec, 0xcc, 0x93, 0x06, 0x93, 0x01, 0xed, 0x31, 0xff, 0xc2, 0x04, 0xc2, - 0x06, 0x9e, 0xc3, 0x0a, 0x38, 0xe7, 0x00, 0x00, + 0x06, 0x9e, 0xc3, 0x0a, 0x38, 0xea, 0x00, 0x00, 0x00, 0xc2, 0x04, 0xc2, 0x0a, 0xf0, 0xc3, 0x08, 0xb5, 0xcc, 0xb5, 0xca, 0xc6, 0xc2, 0x04, 0xa3, 0xea, 0x50, 0xc2, 0x09, 0xc6, 0x47, 0x96, 0xea, @@ -3525,7 +3525,7 @@ const uint8_t qjsc_qjscalc[31967] = { 0x47, 0xc8, 0xb6, 0x49, 0xec, 0x08, 0xc2, 0x08, 0xc7, 0x47, 0xc8, 0xb5, 0x49, 0x93, 0x06, 0x93, 0x02, 0xec, 0xc7, 0x93, 0x03, 0x93, 0x01, 0xec, - 0xac, 0xc2, 0x08, 0x28, 0xd2, 0x04, 0xc8, 0x10, + 0xac, 0xc2, 0x08, 0x28, 0xd8, 0x04, 0xc8, 0x10, 0x3b, 0x05, 0x62, 0x62, 0x3f, 0x17, 0x21, 0x35, 0x1c, 0x12, 0x3a, 0x1c, 0x30, 0x26, 0x0d, 0x17, 0x17, 0x1c, 0x1c, 0x22, 0x2b, 0x4e, 0x3f, 0x3f, @@ -3535,23 +3535,23 @@ const uint8_t qjsc_qjscalc[31967] = { 0x21, 0x49, 0x0d, 0x0d, 0x21, 0x26, 0x0d, 0x27, 0x0e, 0x17, 0x0e, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x03, 0x02, 0x04, 0x00, 0x00, 0x2d, - 0x05, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, - 0x00, 0x01, 0x00, 0xa4, 0x06, 0x00, 0x00, 0x00, - 0xd4, 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, + 0x05, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, + 0x00, 0x01, 0x00, 0xaa, 0x06, 0x00, 0x00, 0x00, + 0xda, 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, 0xce, 0xd2, 0xe9, 0xaa, - 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, 0x04, - 0x10, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xb5, 0xcb, + 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, 0x04, + 0x13, 0x02, 0x00, 0x00, 0xef, 0x2f, 0xb5, 0xcb, 0xb5, 0xc9, 0xc5, 0xc6, 0xa3, 0xea, 0x0f, 0xc7, 0xd1, 0xc5, 0x47, 0xd2, 0xc5, 0x47, 0x9a, 0x9d, - 0xcb, 0x93, 0x00, 0xec, 0xee, 0xc7, 0x28, 0xd2, + 0xcb, 0x93, 0x00, 0xec, 0xee, 0xc7, 0x28, 0xd8, 0x04, 0x92, 0x11, 0x08, 0x04, 0x12, 0x1c, 0x40, 0x0d, 0x26, 0x35, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x01, 0x02, 0x06, 0x00, 0x00, 0x58, - 0x03, 0xee, 0x07, 0x00, 0x01, 0x00, 0xf0, 0x07, - 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, 0x00, 0x00, + 0x03, 0xf4, 0x07, 0x00, 0x01, 0x00, 0xf6, 0x07, + 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x00, 0x00, 0xd1, 0xe9, 0xb8, 0xaa, 0x11, 0xeb, 0x06, 0x0e, - 0xd2, 0xe9, 0xb8, 0xaa, 0xea, 0x0d, 0x38, 0xcc, - 0x00, 0x00, 0x00, 0x04, 0x11, 0x02, 0x00, 0x00, + 0xd2, 0xe9, 0xb8, 0xaa, 0xea, 0x0d, 0x38, 0xcf, + 0x00, 0x00, 0x00, 0x04, 0x14, 0x02, 0x00, 0x00, 0xef, 0x2f, 0x26, 0x00, 0x00, 0xcd, 0xb5, 0x71, 0xd1, 0xb6, 0x47, 0xd2, 0xb7, 0x47, 0x9a, 0xd1, 0xb7, 0x47, 0xd2, 0xb6, 0x47, 0x9a, 0x9e, 0x49, @@ -3560,60 +3560,60 @@ const uint8_t qjsc_qjscalc[31967] = { 0x9a, 0x9e, 0x49, 0xc5, 0xb7, 0x71, 0xd1, 0xb5, 0x47, 0xd2, 0xb6, 0x47, 0x9a, 0xd1, 0xb6, 0x47, 0xd2, 0xb5, 0x47, 0x9a, 0x9e, 0x49, 0xc5, 0x28, - 0xd2, 0x04, 0x9f, 0x11, 0x07, 0x04, 0x49, 0x3f, + 0xd8, 0x04, 0x9f, 0x11, 0x07, 0x04, 0x49, 0x3f, 0x17, 0x5d, 0x62, 0x62, 0x0e, 0x43, 0x06, 0x05, - 0xd2, 0x05, 0x02, 0x03, 0x02, 0x05, 0x00, 0x00, - 0x30, 0x05, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, 0x00, - 0x00, 0xa4, 0x06, 0x00, 0x01, 0x00, 0xd4, 0x06, + 0xd8, 0x05, 0x02, 0x03, 0x02, 0x05, 0x00, 0x00, + 0x30, 0x05, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x00, + 0x00, 0xaa, 0x06, 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, 0xcf, 0xd2, 0xe9, - 0xaa, 0xea, 0x0d, 0x38, 0xcc, 0x00, 0x00, 0x00, - 0x04, 0x12, 0x02, 0x00, 0x00, 0xef, 0x2f, 0x26, + 0xaa, 0xea, 0x0d, 0x38, 0xcf, 0x00, 0x00, 0x00, + 0x04, 0x15, 0x02, 0x00, 0x00, 0xef, 0x2f, 0x26, 0x00, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xc7, 0xa3, 0xea, 0x10, 0xc5, 0xc6, 0x71, 0xd1, 0xc6, 0x47, 0xd2, 0xc6, 0x47, 0x9d, 0x49, 0x93, 0x01, 0xec, - 0xed, 0xc5, 0x28, 0xd2, 0x04, 0xab, 0x11, 0x07, + 0xed, 0xc5, 0x28, 0xd8, 0x04, 0xab, 0x11, 0x07, 0x04, 0x12, 0x1c, 0x3f, 0x17, 0x26, 0x4e, 0x0e, - 0x43, 0x06, 0x05, 0xd4, 0x05, 0x02, 0x03, 0x02, - 0x05, 0x00, 0x00, 0x30, 0x05, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0xcc, - 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, 0x00, 0x01, - 0x00, 0xd4, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, - 0xcf, 0xd2, 0xe9, 0xaa, 0xea, 0x0d, 0x38, 0xcc, - 0x00, 0x00, 0x00, 0x04, 0x12, 0x02, 0x00, 0x00, + 0x43, 0x06, 0x05, 0xda, 0x05, 0x02, 0x03, 0x02, + 0x05, 0x00, 0x00, 0x30, 0x05, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0xd2, + 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, 0x00, 0x01, + 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, + 0xcf, 0xd2, 0xe9, 0xaa, 0xea, 0x0d, 0x38, 0xcf, + 0x00, 0x00, 0x00, 0x04, 0x15, 0x02, 0x00, 0x00, 0xef, 0x2f, 0x26, 0x00, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xc7, 0xa3, 0xea, 0x10, 0xc5, 0xc6, 0x71, 0xd1, 0xc6, 0x47, 0xd2, 0xc6, 0x47, 0x9e, 0x49, - 0x93, 0x01, 0xec, 0xed, 0xc5, 0x28, 0xd2, 0x04, + 0x93, 0x01, 0xec, 0xed, 0xc5, 0x28, 0xd8, 0x04, 0xb5, 0x11, 0x07, 0x04, 0x12, 0x1c, 0x3f, 0x17, - 0x26, 0x4e, 0x0e, 0x43, 0x06, 0x05, 0xd6, 0x05, + 0x26, 0x4e, 0x0e, 0x43, 0x06, 0x05, 0xdc, 0x05, 0x02, 0x03, 0x02, 0x04, 0x00, 0x00, 0x1d, 0x05, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, - 0x01, 0x00, 0xcc, 0x06, 0x00, 0x00, 0x00, 0xa4, - 0x06, 0x00, 0x01, 0x00, 0xd4, 0x06, 0x00, 0x02, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, + 0x01, 0x00, 0xd2, 0x06, 0x00, 0x00, 0x00, 0xaa, + 0x06, 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, 0xcb, 0x26, 0x00, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xc7, 0xa3, 0xea, 0x0e, 0xc5, 0xc6, 0x71, 0xd1, 0xc6, 0x47, 0xd2, 0x9a, 0x49, - 0x93, 0x01, 0xec, 0xef, 0xc5, 0x28, 0xd2, 0x04, + 0x93, 0x01, 0xec, 0xef, 0xc5, 0x28, 0xd8, 0x04, 0xbf, 0x11, 0x05, 0x04, 0x12, 0x17, 0x26, 0x44, - 0x0e, 0x43, 0x06, 0x05, 0xd8, 0x05, 0x02, 0x0b, - 0x02, 0x05, 0x00, 0x00, 0xbf, 0x02, 0x0d, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0x86, 0x08, 0x00, 0x00, 0x00, 0x88, 0x08, - 0x00, 0x01, 0x00, 0x9a, 0x08, 0x00, 0x02, 0x00, - 0xa4, 0x06, 0x00, 0x03, 0x00, 0xb8, 0x06, 0x00, - 0x04, 0x00, 0xbc, 0x06, 0x00, 0x05, 0x00, 0xcc, - 0x06, 0x00, 0x06, 0x00, 0x8a, 0x08, 0x00, 0x07, - 0x00, 0xf8, 0x07, 0x00, 0x08, 0x00, 0xa6, 0x08, - 0x00, 0x09, 0x00, 0xa8, 0x08, 0x00, 0x0a, 0x00, - 0xd1, 0xe9, 0xc9, 0x38, 0x93, 0x00, 0x00, 0x00, - 0x42, 0xa0, 0x01, 0x00, 0x00, 0xd1, 0xb5, 0x47, + 0x0e, 0x43, 0x06, 0x05, 0xde, 0x05, 0x02, 0x0b, + 0x02, 0x05, 0x00, 0x00, 0xbf, 0x02, 0x0d, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0x8c, 0x08, 0x00, 0x00, 0x00, 0x8e, 0x08, + 0x00, 0x01, 0x00, 0xa0, 0x08, 0x00, 0x02, 0x00, + 0xaa, 0x06, 0x00, 0x03, 0x00, 0xbe, 0x06, 0x00, + 0x04, 0x00, 0xc2, 0x06, 0x00, 0x05, 0x00, 0xd2, + 0x06, 0x00, 0x06, 0x00, 0x90, 0x08, 0x00, 0x07, + 0x00, 0xfe, 0x07, 0x00, 0x08, 0x00, 0xac, 0x08, + 0x00, 0x09, 0x00, 0xae, 0x08, 0x00, 0x0a, 0x00, + 0xd1, 0xe9, 0xc9, 0x38, 0x96, 0x00, 0x00, 0x00, + 0x42, 0xa3, 0x01, 0x00, 0x00, 0xd1, 0xb5, 0x47, 0x24, 0x01, 0x00, 0xc4, 0x09, 0xea, 0x08, 0xd1, 0xb5, 0x47, 0xe9, 0xcb, 0xec, 0x03, 0xb6, 0xcb, - 0xc7, 0xd2, 0xe9, 0xaa, 0xea, 0x0d, 0x38, 0xc9, - 0x00, 0x00, 0x00, 0x04, 0x15, 0x02, 0x00, 0x00, - 0xef, 0x2f, 0x38, 0x93, 0x00, 0x00, 0x00, 0x42, - 0xa0, 0x01, 0x00, 0x00, 0xd2, 0xb5, 0x47, 0x24, + 0xc7, 0xd2, 0xe9, 0xaa, 0xea, 0x0d, 0x38, 0xcc, + 0x00, 0x00, 0x00, 0x04, 0x18, 0x02, 0x00, 0x00, + 0xef, 0x2f, 0x38, 0x96, 0x00, 0x00, 0x00, 0x42, + 0xa3, 0x01, 0x00, 0x00, 0xd2, 0xb5, 0x47, 0x24, 0x01, 0x00, 0xc4, 0x0a, 0xea, 0x08, 0xd2, 0xb5, 0x47, 0xe9, 0xca, 0xec, 0x03, 0xb6, 0xca, 0x26, 0x00, 0x00, 0xc3, 0x06, 0xc2, 0x09, 0xea, 0x55, @@ -3645,361 +3645,361 @@ const uint8_t qjsc_qjscalc[31967] = { 0x49, 0x93, 0x03, 0xec, 0xd0, 0xb5, 0xcc, 0xc8, 0xc5, 0xa3, 0xea, 0x11, 0xc2, 0x06, 0xc8, 0x71, 0xd1, 0xc8, 0x47, 0xd2, 0xb5, 0x47, 0x9a, 0x49, - 0x93, 0x03, 0xec, 0xec, 0xc2, 0x06, 0x28, 0xd2, + 0x93, 0x03, 0xec, 0xec, 0xc2, 0x06, 0x28, 0xd8, 0x04, 0xc7, 0x11, 0x2d, 0x04, 0x12, 0x5d, 0x0d, 0x1c, 0x0d, 0x0e, 0x21, 0x3f, 0x5d, 0x0d, 0x27, 0x0d, 0x1c, 0x2b, 0x35, 0x1c, 0x30, 0x12, 0x30, 0x62, 0x17, 0x26, 0x17, 0x21, 0x17, 0x30, 0x35, 0x12, 0x30, 0x53, 0x17, 0x21, 0x17, 0x30, 0x26, 0x1c, 0x30, 0x53, 0x17, 0x21, 0x18, 0x26, 0x3f, - 0x18, 0x0e, 0x43, 0x06, 0x05, 0xda, 0x05, 0x02, - 0x00, 0x02, 0x04, 0x01, 0x00, 0x0e, 0x02, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0xd8, 0x05, 0x42, 0x01, 0xdd, 0xd1, 0xd2, - 0x42, 0xf9, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, - 0x23, 0x02, 0x00, 0xd2, 0x04, 0xfb, 0x11, 0x01, - 0x03, 0x0e, 0x43, 0x06, 0x05, 0xdc, 0x05, 0x01, - 0x03, 0x01, 0x04, 0x00, 0x00, 0x23, 0x04, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, 0x00, - 0x00, 0xa4, 0x06, 0x00, 0x01, 0x00, 0xd4, 0x06, + 0x18, 0x0e, 0x43, 0x06, 0x05, 0xe0, 0x05, 0x02, + 0x00, 0x02, 0x04, 0x01, 0x00, 0x0e, 0x02, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0xde, 0x05, 0x42, 0x01, 0xdd, 0xd1, 0xd2, + 0x42, 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, + 0x23, 0x02, 0x00, 0xd8, 0x04, 0xfb, 0x11, 0x01, + 0x03, 0x0e, 0x43, 0x06, 0x05, 0xe2, 0x05, 0x01, + 0x03, 0x01, 0x04, 0x00, 0x00, 0x23, 0x04, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x00, + 0x00, 0xaa, 0x06, 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, 0xcb, 0x26, 0x00, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xc7, 0xa3, 0xea, 0x14, 0xc5, 0xc6, 0x71, 0xd1, 0xc6, 0x47, 0x42, - 0xf9, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x49, - 0x93, 0x01, 0xec, 0xe9, 0xc5, 0x28, 0xd2, 0x04, + 0xfc, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x49, + 0x93, 0x01, 0xec, 0xe9, 0xc5, 0x28, 0xd8, 0x04, 0xfe, 0x11, 0x05, 0x04, 0x12, 0x17, 0x26, 0x62, - 0x0e, 0x43, 0x06, 0x05, 0xde, 0x05, 0x02, 0x02, - 0x02, 0x03, 0x00, 0x00, 0x22, 0x04, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, - 0xd4, 0x06, 0x00, 0x00, 0x00, 0xa4, 0x06, 0x00, + 0x0e, 0x43, 0x06, 0x05, 0xe4, 0x05, 0x02, 0x02, + 0x02, 0x03, 0x00, 0x00, 0x22, 0x04, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, + 0xda, 0x06, 0x00, 0x00, 0x00, 0xaa, 0x06, 0x00, 0x01, 0x00, 0xd1, 0xe9, 0xcd, 0xd2, 0xe9, 0xaa, 0xea, 0x03, 0x09, 0x28, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0xea, 0x10, 0xd1, 0xc6, 0x47, 0xd2, 0xc6, 0x47, 0xaa, 0xea, 0x03, 0x09, 0x28, 0x93, 0x01, - 0xec, 0xed, 0x0a, 0x28, 0xd2, 0x04, 0x86, 0x12, + 0xec, 0xed, 0x0a, 0x28, 0xd8, 0x04, 0x86, 0x12, 0x08, 0x04, 0x12, 0x1c, 0x0d, 0x26, 0x30, 0x0d, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x00, - 0x01, 0x01, 0x00, 0x00, 0x02, 0x01, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xd1, 0x28, 0xd2, 0x04, 0x99, + 0x01, 0x01, 0x00, 0x00, 0x02, 0x01, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xd1, 0x28, 0xd8, 0x04, 0x99, 0x12, 0x01, 0x03, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x01, 0x03, 0x01, 0x04, 0x00, 0x00, 0x1c, 0x04, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xa4, 0x06, 0x00, - 0x00, 0x00, 0xd4, 0x06, 0x00, 0x01, 0x00, 0xcc, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xaa, 0x06, 0x00, + 0x00, 0x00, 0xda, 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x02, 0x00, 0xd1, 0xe9, 0xca, 0x26, 0x00, 0x00, 0xcb, 0xb5, 0xc9, 0xc5, 0xc6, 0xa3, 0xea, 0x0d, 0xc7, 0xc5, 0x71, 0xd1, 0xc5, 0x47, 0x8c, 0x49, 0x93, 0x00, 0xec, 0xf0, 0xc7, 0x28, - 0xd2, 0x04, 0x9c, 0x12, 0x05, 0x04, 0x12, 0x17, + 0xd8, 0x04, 0x9c, 0x12, 0x05, 0x04, 0x12, 0x17, 0x26, 0x3f, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, - 0x00, 0x02, 0x03, 0x00, 0x00, 0x0c, 0x02, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0xd1, 0xd2, 0x42, 0xf9, 0x00, 0x00, 0x00, - 0x24, 0x00, 0x00, 0x9a, 0x28, 0xd2, 0x04, 0xa9, + 0x00, 0x02, 0x03, 0x00, 0x00, 0x0c, 0x02, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0xd1, 0xd2, 0x42, 0xfc, 0x00, 0x00, 0x00, + 0x24, 0x00, 0x00, 0x9a, 0x28, 0xd8, 0x04, 0xa9, 0x12, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, - 0x00, 0x02, 0x03, 0x01, 0x00, 0x06, 0x02, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0xd6, 0x05, 0x41, 0x01, 0xdd, 0xd2, 0xd1, - 0x23, 0x02, 0x00, 0xd2, 0x04, 0xaf, 0x12, 0x00, + 0x00, 0x02, 0x03, 0x01, 0x00, 0x06, 0x02, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0xdc, 0x05, 0x41, 0x01, 0xdd, 0xd2, 0xd1, + 0x23, 0x02, 0x00, 0xd8, 0x04, 0xaf, 0x12, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x02, 0x00, 0x02, - 0x03, 0x01, 0x00, 0x06, 0x02, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, 0x00, 0xdc, + 0x03, 0x01, 0x00, 0x06, 0x02, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, 0x00, 0xe2, 0x05, 0x44, 0x01, 0xd1, 0xdd, 0xd2, 0xef, 0x9a, - 0x28, 0xd2, 0x04, 0xb0, 0x12, 0x00, 0x0e, 0x42, + 0x28, 0xd8, 0x04, 0xb0, 0x12, 0x00, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x04, 0x00, 0x04, 0x00, - 0x00, 0x25, 0x04, 0xa4, 0x06, 0x00, 0x00, 0x00, - 0xd4, 0x06, 0x00, 0x01, 0x00, 0xcc, 0x06, 0x00, + 0x00, 0x25, 0x04, 0xaa, 0x06, 0x00, 0x00, 0x00, + 0xda, 0x06, 0x00, 0x01, 0x00, 0xd2, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xcc, 0xc8, 0xe9, 0xca, 0x26, 0x00, 0x00, 0xcb, 0xb5, 0xc9, 0xc5, 0xc6, 0xa3, 0xea, 0x14, 0xc7, 0xc5, - 0x71, 0xc8, 0xc5, 0x47, 0x42, 0xf7, 0x00, 0x00, + 0x71, 0xc8, 0xc5, 0x47, 0x42, 0xfa, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x49, 0x93, 0x00, 0xec, - 0xe9, 0xc7, 0x28, 0xd2, 0x04, 0xb4, 0x12, 0x05, + 0xe9, 0xc7, 0x28, 0xd8, 0x04, 0xb4, 0x12, 0x05, 0x0e, 0x12, 0x17, 0x26, 0x62, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x06, 0x00, 0x03, 0x00, 0x00, - 0x3f, 0x06, 0xcc, 0x06, 0x00, 0x00, 0x00, 0xa4, - 0x06, 0x00, 0x01, 0x00, 0xd4, 0x06, 0x00, 0x02, - 0x00, 0xd0, 0x07, 0x00, 0x03, 0x00, 0xb6, 0x06, + 0x3f, 0x06, 0xd2, 0x06, 0x00, 0x00, 0x00, 0xaa, + 0x06, 0x00, 0x01, 0x00, 0xda, 0x06, 0x00, 0x02, + 0x00, 0xd6, 0x07, 0x00, 0x03, 0x00, 0xbc, 0x06, 0x00, 0x04, 0x00, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc3, 0x05, 0xc2, 0x05, 0xc3, 0x04, 0x26, 0x00, 0x00, 0xc9, 0xc2, 0x04, 0xe9, 0xcb, 0xb5, 0xca, 0xc6, 0xc7, 0xa3, 0xea, 0x28, 0xc2, 0x04, 0xc6, - 0x47, 0xcc, 0x38, 0x93, 0x00, 0x00, 0x00, 0x42, - 0xa0, 0x01, 0x00, 0x00, 0xc8, 0x24, 0x01, 0x00, - 0xea, 0x0b, 0xc8, 0x42, 0x8f, 0x01, 0x00, 0x00, + 0x47, 0xcc, 0x38, 0x96, 0x00, 0x00, 0x00, 0x42, + 0xa3, 0x01, 0x00, 0x00, 0xc8, 0x24, 0x01, 0x00, + 0xea, 0x0b, 0xc8, 0x42, 0x92, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xcc, 0xc5, 0xc6, 0xc8, 0x49, - 0x93, 0x01, 0xec, 0xd5, 0xc5, 0x28, 0xd2, 0x04, + 0x93, 0x01, 0xec, 0xd5, 0xc5, 0x28, 0xd8, 0x04, 0xbc, 0x12, 0x0a, 0x12, 0x17, 0x17, 0x17, 0x26, 0x1c, 0x53, 0x35, 0x17, 0x17, 0x0e, 0x42, 0x07, 0x05, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x00, 0x10, 0x01, 0x10, 0x00, 0x01, 0x00, 0x08, 0xc9, - 0x38, 0xe7, 0x00, 0x00, 0x00, 0x42, 0xf9, 0x00, - 0x00, 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd2, 0x04, + 0x38, 0xea, 0x00, 0x00, 0x00, 0x42, 0xfc, 0x00, + 0x00, 0x00, 0xc5, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xc8, 0x12, 0x01, 0x0d, 0x0e, 0x43, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x0b, - 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x41, 0x25, - 0x01, 0x00, 0x00, 0x28, 0xd2, 0x04, 0xd5, 0x12, - 0x00, 0x0e, 0x43, 0x06, 0x05, 0xe6, 0x03, 0x01, - 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, 0x01, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, 0xf3, 0x00, - 0x00, 0x00, 0x25, 0x00, 0x00, 0xd2, 0x04, 0xe1, - 0x12, 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0xe8, + 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x41, 0x28, + 0x01, 0x00, 0x00, 0x28, 0xd8, 0x04, 0xd5, 0x12, + 0x00, 0x0e, 0x43, 0x06, 0x05, 0xec, 0x03, 0x01, + 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, 0x01, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, 0xf6, 0x00, + 0x00, 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xe1, + 0x12, 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0xee, 0x03, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, - 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, - 0xf4, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0xd2, + 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, + 0xf7, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xe6, 0x12, 0x01, 0x04, 0x0e, 0x43, 0x06, - 0x05, 0xea, 0x03, 0x01, 0x00, 0x01, 0x02, 0x00, - 0x00, 0x09, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xd1, 0x42, 0xf5, 0x00, 0x00, 0x00, 0x25, 0x00, - 0x00, 0xd2, 0x04, 0xeb, 0x12, 0x01, 0x04, 0x0e, - 0x43, 0x06, 0x05, 0xec, 0x03, 0x01, 0x00, 0x01, - 0x02, 0x00, 0x00, 0x09, 0x01, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xd1, 0x42, 0xf6, 0x00, 0x00, 0x00, - 0x25, 0x00, 0x00, 0xd2, 0x04, 0xf0, 0x12, 0x01, - 0x04, 0x0e, 0x43, 0x06, 0x05, 0xee, 0x03, 0x01, - 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, 0x01, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, 0xf7, 0x00, - 0x00, 0x00, 0x25, 0x00, 0x00, 0xd2, 0x04, 0xf5, - 0x12, 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0xf0, + 0x05, 0xf0, 0x03, 0x01, 0x00, 0x01, 0x02, 0x00, + 0x00, 0x09, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xd1, 0x42, 0xf8, 0x00, 0x00, 0x00, 0x25, 0x00, + 0x00, 0xd8, 0x04, 0xeb, 0x12, 0x01, 0x04, 0x0e, + 0x43, 0x06, 0x05, 0xf2, 0x03, 0x01, 0x00, 0x01, + 0x02, 0x00, 0x00, 0x09, 0x01, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xd1, 0x42, 0xf9, 0x00, 0x00, 0x00, + 0x25, 0x00, 0x00, 0xd8, 0x04, 0xf0, 0x12, 0x01, + 0x04, 0x0e, 0x43, 0x06, 0x05, 0xf4, 0x03, 0x01, + 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, 0x01, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, 0xfa, 0x00, + 0x00, 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xf5, + 0x12, 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0xf6, 0x03, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, - 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, - 0xf8, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0xd2, + 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, + 0xfb, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xfa, 0x12, 0x01, 0x04, 0x0e, 0x43, 0x06, - 0x05, 0xf2, 0x03, 0x01, 0x00, 0x01, 0x02, 0x00, - 0x00, 0x09, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xd1, 0x42, 0xf9, 0x00, 0x00, 0x00, 0x25, 0x00, - 0x00, 0xd2, 0x04, 0xff, 0x12, 0x01, 0x04, 0x0e, - 0x43, 0x06, 0x05, 0xf4, 0x03, 0x01, 0x00, 0x01, - 0x04, 0x00, 0x00, 0x72, 0x01, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, - 0x74, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, - 0xea, 0x03, 0xd1, 0x28, 0xd1, 0x38, 0xe0, 0x00, - 0x00, 0x00, 0xa7, 0xea, 0x1a, 0x38, 0xde, 0x00, - 0x00, 0x00, 0x42, 0xaf, 0x01, 0x00, 0x00, 0xd1, - 0x41, 0xbe, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xbf, + 0x05, 0xf8, 0x03, 0x01, 0x00, 0x01, 0x02, 0x00, + 0x00, 0x09, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xd1, 0x42, 0xfc, 0x00, 0x00, 0x00, 0x25, 0x00, + 0x00, 0xd8, 0x04, 0xff, 0x12, 0x01, 0x04, 0x0e, + 0x43, 0x06, 0x05, 0xfa, 0x03, 0x01, 0x00, 0x01, + 0x04, 0x00, 0x00, 0x72, 0x01, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, + 0x77, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, + 0xea, 0x03, 0xd1, 0x28, 0xd1, 0x38, 0xe3, 0x00, + 0x00, 0x00, 0xa7, 0xea, 0x1a, 0x38, 0xe1, 0x00, + 0x00, 0x00, 0x42, 0xb2, 0x01, 0x00, 0x00, 0xd1, + 0x41, 0xc1, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x25, 0x02, 0x00, 0xd1, 0x38, - 0xe3, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x03, 0xd1, - 0x28, 0xd1, 0x38, 0xe5, 0x00, 0x00, 0x00, 0xa7, - 0xea, 0x1d, 0x38, 0xe3, 0x00, 0x00, 0x00, 0x42, - 0x8a, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xbe, 0x01, - 0x00, 0x00, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, - 0x24, 0x02, 0x00, 0xb5, 0x47, 0x28, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x42, 0xfc, 0x00, 0x00, 0x00, - 0xd1, 0x25, 0x01, 0x00, 0xd2, 0x04, 0x84, 0x13, + 0xe6, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x03, 0xd1, + 0x28, 0xd1, 0x38, 0xe8, 0x00, 0x00, 0x00, 0xa7, + 0xea, 0x1d, 0x38, 0xe6, 0x00, 0x00, 0x00, 0x42, + 0x8d, 0x01, 0x00, 0x00, 0xd1, 0x41, 0xc1, 0x01, + 0x00, 0x00, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, + 0x24, 0x02, 0x00, 0xb5, 0x47, 0x28, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x42, 0xff, 0x00, 0x00, 0x00, + 0xd1, 0x25, 0x01, 0x00, 0xd8, 0x04, 0x84, 0x13, 0x0a, 0x04, 0x53, 0x08, 0x35, 0x80, 0x30, 0x08, - 0x35, 0x8a, 0x08, 0x0e, 0x43, 0x06, 0x05, 0xf6, + 0x35, 0x8a, 0x08, 0x0e, 0x43, 0x06, 0x05, 0xfc, 0x03, 0x01, 0x00, 0x01, 0x04, 0x00, 0x00, 0x42, - 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0x38, 0xde, - 0x00, 0x00, 0x00, 0x42, 0x74, 0x01, 0x00, 0x00, + 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe1, + 0x00, 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xea, 0x03, 0xd1, 0x28, - 0xd1, 0x38, 0xe0, 0x00, 0x00, 0x00, 0xa7, 0xea, - 0x1a, 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0x16, - 0x02, 0x00, 0x00, 0xd1, 0x41, 0xbe, 0x01, 0x00, - 0x00, 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x25, - 0x02, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, - 0xfb, 0x00, 0x00, 0x00, 0xd1, 0x25, 0x01, 0x00, - 0xd2, 0x04, 0x93, 0x13, 0x05, 0x04, 0x53, 0x08, - 0x35, 0x81, 0x0e, 0x43, 0x06, 0x05, 0xf8, 0x03, + 0xd1, 0x38, 0xe3, 0x00, 0x00, 0x00, 0xa7, 0xea, + 0x1a, 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0x19, + 0x02, 0x00, 0x00, 0xd1, 0x41, 0xc1, 0x01, 0x00, + 0x00, 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x25, + 0x02, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, + 0xfe, 0x00, 0x00, 0x00, 0xd1, 0x25, 0x01, 0x00, + 0xd8, 0x04, 0x93, 0x13, 0x05, 0x04, 0x53, 0x08, + 0x35, 0x81, 0x0e, 0x43, 0x06, 0x05, 0xfe, 0x03, 0x01, 0x00, 0x01, 0x04, 0x00, 0x00, 0x42, 0x01, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0x38, 0xde, 0x00, - 0x00, 0x00, 0x42, 0x74, 0x01, 0x00, 0x00, 0xd1, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe1, 0x00, + 0x00, 0x00, 0x42, 0x77, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xea, 0x03, 0xd1, 0x28, 0xd1, - 0x38, 0xe0, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x1a, - 0x38, 0xde, 0x00, 0x00, 0x00, 0x42, 0x17, 0x02, - 0x00, 0x00, 0xd1, 0x41, 0xbe, 0x01, 0x00, 0x00, - 0xd1, 0x41, 0xbf, 0x01, 0x00, 0x00, 0x25, 0x02, - 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0xfc, - 0x00, 0x00, 0x00, 0xd1, 0x25, 0x01, 0x00, 0xd2, + 0x38, 0xe3, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x1a, + 0x38, 0xe1, 0x00, 0x00, 0x00, 0x42, 0x1a, 0x02, + 0x00, 0x00, 0xd1, 0x41, 0xc1, 0x01, 0x00, 0x00, + 0xd1, 0x41, 0xc2, 0x01, 0x00, 0x00, 0x25, 0x02, + 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0xff, + 0x00, 0x00, 0x00, 0xd1, 0x25, 0x01, 0x00, 0xd8, 0x04, 0x9e, 0x13, 0x05, 0x04, 0x53, 0x08, 0x35, - 0x81, 0x0e, 0x43, 0x06, 0x05, 0xfa, 0x03, 0x01, + 0x81, 0x0e, 0x43, 0x06, 0x05, 0x80, 0x04, 0x01, 0x04, 0x01, 0x05, 0x00, 0x00, 0x8d, 0x01, 0x05, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd6, 0x06, 0x00, - 0x00, 0x00, 0xe6, 0x06, 0x00, 0x01, 0x00, 0x98, - 0x07, 0x00, 0x02, 0x00, 0x9a, 0x07, 0x00, 0x03, - 0x00, 0xd1, 0x38, 0xe6, 0x00, 0x00, 0x00, 0xa7, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xdc, 0x06, 0x00, + 0x00, 0x00, 0xec, 0x06, 0x00, 0x01, 0x00, 0x9e, + 0x07, 0x00, 0x02, 0x00, 0xa0, 0x07, 0x00, 0x03, + 0x00, 0xd1, 0x38, 0xe9, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x07, 0xd1, 0xb6, 0xb7, 0x9b, 0x9f, 0x28, - 0xd1, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xa7, 0xea, - 0x44, 0x38, 0xf6, 0x00, 0x00, 0x00, 0xd1, 0xef, - 0xc9, 0xd1, 0x41, 0xcc, 0x01, 0x00, 0x00, 0xca, - 0x38, 0xfd, 0x00, 0x00, 0x00, 0xc5, 0xc6, 0x9d, - 0xb7, 0x9b, 0xef, 0xcb, 0x38, 0xfd, 0x00, 0x00, + 0xd1, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xa7, 0xea, + 0x44, 0x38, 0xf9, 0x00, 0x00, 0x00, 0xd1, 0xef, + 0xc9, 0xd1, 0x41, 0xcf, 0x01, 0x00, 0x00, 0xca, + 0x38, 0x00, 0x01, 0x00, 0x00, 0xc5, 0xc6, 0x9d, + 0xb7, 0x9b, 0xef, 0xcb, 0x38, 0x00, 0x01, 0x00, 0x00, 0xc5, 0xc6, 0x9e, 0xb7, 0x9b, 0xef, 0xcc, - 0xd1, 0x41, 0xcd, 0x01, 0x00, 0x00, 0xb5, 0xa3, - 0xea, 0x04, 0xc8, 0x8c, 0xcc, 0x38, 0xe1, 0x00, - 0x00, 0x00, 0x42, 0x87, 0x01, 0x00, 0x00, 0xc7, - 0xc8, 0x25, 0x02, 0x00, 0x38, 0xdf, 0x00, 0x00, + 0xd1, 0x41, 0xd0, 0x01, 0x00, 0x00, 0xb5, 0xa3, + 0xea, 0x04, 0xc8, 0x8c, 0xcc, 0x38, 0xe4, 0x00, + 0x00, 0x00, 0x42, 0x8a, 0x01, 0x00, 0x00, 0xc7, + 0xc8, 0x25, 0x02, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd9, 0xb5, 0xa3, 0xea, 0x19, - 0x38, 0xe1, 0x00, 0x00, 0x00, 0xb5, 0x38, 0xdf, - 0x00, 0x00, 0x00, 0x42, 0xfd, 0x00, 0x00, 0x00, + 0x38, 0xe4, 0x00, 0x00, 0x00, 0xb5, 0x38, 0xe2, + 0x00, 0x00, 0x00, 0x42, 0x00, 0x01, 0x00, 0x00, 0xd1, 0x8c, 0x24, 0x01, 0x00, 0x23, 0x02, 0x00, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0xfd, 0x00, - 0x00, 0x00, 0xd1, 0x25, 0x01, 0x00, 0xd2, 0x04, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x00, 0x01, + 0x00, 0x00, 0xd1, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xa9, 0x13, 0x0e, 0x05, 0x30, 0x1c, 0x35, 0x2b, 0x26, 0x3f, 0x3f, 0x35, 0x12, 0x4f, 0x2b, 0x17, - 0x7c, 0x0e, 0x43, 0x06, 0x05, 0xfc, 0x03, 0x01, - 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, 0x01, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, 0xfe, 0x00, - 0x00, 0x00, 0x25, 0x00, 0x00, 0xd2, 0x04, 0xc0, - 0x13, 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0xfe, - 0x03, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, - 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, - 0xff, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0xd2, + 0x7c, 0x0e, 0x43, 0x06, 0x05, 0x82, 0x04, 0x01, + 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, 0x01, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, 0x01, 0x01, + 0x00, 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xc0, + 0x13, 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0x84, + 0x04, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, 0x09, + 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0x42, + 0x02, 0x01, 0x00, 0x00, 0x25, 0x00, 0x00, 0xd8, 0x04, 0xc5, 0x13, 0x01, 0x04, 0x0e, 0x43, 0x06, - 0x05, 0x80, 0x04, 0x01, 0x00, 0x01, 0x02, 0x00, - 0x00, 0x13, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0x38, 0xff, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x41, 0x83, 0x01, 0x00, - 0x00, 0x9a, 0x28, 0xd2, 0x04, 0xca, 0x13, 0x01, - 0x04, 0x0e, 0x43, 0x06, 0x05, 0x82, 0x04, 0x01, - 0x00, 0x01, 0x02, 0x00, 0x00, 0x13, 0x01, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0x38, 0xff, 0x00, 0x00, - 0x00, 0xd1, 0xef, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0x41, 0x84, 0x01, 0x00, 0x00, 0x9a, 0x28, 0xd2, + 0x05, 0x86, 0x04, 0x01, 0x00, 0x01, 0x02, 0x00, + 0x00, 0x13, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0x38, 0x02, 0x01, 0x00, 0x00, 0xd1, 0xef, 0x38, + 0xe2, 0x00, 0x00, 0x00, 0x41, 0x86, 0x01, 0x00, + 0x00, 0x9a, 0x28, 0xd8, 0x04, 0xca, 0x13, 0x01, + 0x04, 0x0e, 0x43, 0x06, 0x05, 0x88, 0x04, 0x01, + 0x00, 0x01, 0x02, 0x00, 0x00, 0x13, 0x01, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0x38, 0x02, 0x01, 0x00, + 0x00, 0xd1, 0xef, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0x41, 0x87, 0x01, 0x00, 0x00, 0x9a, 0x28, 0xd8, 0x04, 0xcf, 0x13, 0x01, 0x04, 0x0e, 0x43, 0x06, - 0x05, 0x84, 0x04, 0x01, 0x00, 0x01, 0x02, 0x00, - 0x00, 0x0b, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0x38, 0x01, 0x01, 0x00, 0x00, 0xd1, 0xef, 0xbd, - 0x0a, 0x9a, 0x28, 0xd2, 0x04, 0xd4, 0x13, 0x01, - 0x04, 0x0e, 0x43, 0x06, 0x05, 0x86, 0x04, 0x01, - 0x00, 0x01, 0x03, 0x00, 0x00, 0x08, 0x01, 0xb6, + 0x05, 0x8a, 0x04, 0x01, 0x00, 0x01, 0x02, 0x00, + 0x00, 0x0b, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0x38, 0x04, 0x01, 0x00, 0x00, 0xd1, 0xef, 0xbd, + 0x0a, 0x9a, 0x28, 0xd8, 0x04, 0xd4, 0x13, 0x01, + 0x04, 0x0e, 0x43, 0x06, 0x05, 0x8c, 0x04, 0x01, + 0x00, 0x01, 0x03, 0x00, 0x00, 0x08, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xbd, 0x0a, 0xd1, 0xbd, - 0x0a, 0x9b, 0x9f, 0x28, 0xd2, 0x04, 0xd9, 0x13, - 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0x88, 0x04, + 0x0a, 0x9b, 0x9f, 0x28, 0xd8, 0x04, 0xd9, 0x13, + 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0x8e, 0x04, 0x01, 0x01, 0x01, 0x04, 0x00, 0x00, 0x43, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd6, 0x06, 0x00, - 0x00, 0x00, 0xd1, 0x38, 0xe1, 0x00, 0x00, 0x00, - 0xa7, 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, 0xe6, - 0x00, 0x00, 0x00, 0xa7, 0xea, 0x1c, 0x38, 0xfe, - 0x00, 0x00, 0x00, 0xd1, 0x38, 0xe8, 0x00, 0x00, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xdc, 0x06, 0x00, + 0x00, 0x00, 0xd1, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0xa7, 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, 0xe9, + 0x00, 0x00, 0x00, 0xa7, 0xea, 0x1c, 0x38, 0x01, + 0x01, 0x00, 0x00, 0xd1, 0x38, 0xeb, 0x00, 0x00, 0x00, 0x9a, 0xef, 0xcd, 0xb6, 0xc5, 0x9b, 0x9e, - 0xb7, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x9a, 0x9b, - 0x28, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0x04, - 0x01, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0xd1, 0xef, 0x25, 0x01, 0x00, 0xd2, 0x04, 0xde, + 0xb7, 0x38, 0xeb, 0x00, 0x00, 0x00, 0x9a, 0x9b, + 0x28, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x07, + 0x01, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0xd1, 0xef, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xde, 0x13, 0x05, 0x05, 0x67, 0x49, 0x3f, 0x08, 0x0e, - 0x43, 0x06, 0x05, 0x8a, 0x04, 0x01, 0x01, 0x01, - 0x04, 0x00, 0x00, 0x3d, 0x02, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xd6, 0x06, 0x00, 0x00, 0x00, 0xd1, - 0x38, 0xe1, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xeb, - 0x09, 0x0e, 0xd1, 0x38, 0xe6, 0x00, 0x00, 0x00, - 0xa7, 0xea, 0x16, 0x38, 0xfe, 0x00, 0x00, 0x00, - 0xd1, 0x38, 0xe8, 0x00, 0x00, 0x00, 0x9a, 0xef, + 0x43, 0x06, 0x05, 0x90, 0x04, 0x01, 0x01, 0x01, + 0x04, 0x00, 0x00, 0x3d, 0x02, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xdc, 0x06, 0x00, 0x00, 0x00, 0xd1, + 0x38, 0xe4, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xeb, + 0x09, 0x0e, 0xd1, 0x38, 0xe9, 0x00, 0x00, 0x00, + 0xa7, 0xea, 0x16, 0x38, 0x01, 0x01, 0x00, 0x00, + 0xd1, 0x38, 0xeb, 0x00, 0x00, 0x00, 0x9a, 0xef, 0xcd, 0xb6, 0xc5, 0x9b, 0x9d, 0xb7, 0x9b, 0x28, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0x05, 0x01, - 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, - 0xef, 0x25, 0x01, 0x00, 0xd2, 0x04, 0xe9, 0x13, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x08, 0x01, + 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, + 0xef, 0x25, 0x01, 0x00, 0xd8, 0x04, 0xe9, 0x13, 0x05, 0x05, 0x67, 0x49, 0x21, 0x08, 0x0e, 0x43, - 0x06, 0x05, 0x8c, 0x04, 0x01, 0x00, 0x01, 0x04, - 0x00, 0x00, 0x38, 0x01, 0xb6, 0x06, 0x00, 0x01, - 0x00, 0xd1, 0x38, 0xe1, 0x00, 0x00, 0x00, 0xa7, - 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, 0xe6, 0x00, - 0x00, 0x00, 0xa7, 0xea, 0x11, 0x38, 0x04, 0x01, - 0x00, 0x00, 0xd1, 0xef, 0x38, 0x05, 0x01, 0x00, - 0x00, 0xd1, 0xef, 0x9b, 0x28, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0x42, 0x06, 0x01, 0x00, 0x00, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x25, 0x01, - 0x00, 0xd2, 0x04, 0xf4, 0x13, 0x04, 0x04, 0x67, - 0x4e, 0x08, 0x0e, 0x43, 0x06, 0x05, 0x8e, 0x04, + 0x06, 0x05, 0x92, 0x04, 0x01, 0x00, 0x01, 0x04, + 0x00, 0x00, 0x38, 0x01, 0xbc, 0x06, 0x00, 0x01, + 0x00, 0xd1, 0x38, 0xe4, 0x00, 0x00, 0x00, 0xa7, + 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, 0xe9, 0x00, + 0x00, 0x00, 0xa7, 0xea, 0x11, 0x38, 0x07, 0x01, + 0x00, 0x00, 0xd1, 0xef, 0x38, 0x08, 0x01, 0x00, + 0x00, 0xd1, 0xef, 0x9b, 0x28, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0x42, 0x09, 0x01, 0x00, 0x00, 0x38, + 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x25, 0x01, + 0x00, 0xd8, 0x04, 0xf4, 0x13, 0x04, 0x04, 0x67, + 0x4e, 0x08, 0x0e, 0x43, 0x06, 0x05, 0x94, 0x04, 0x01, 0x00, 0x01, 0x04, 0x00, 0x00, 0x14, 0x01, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0x42, 0x07, 0x01, 0x00, 0x00, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x25, 0x01, - 0x00, 0xd2, 0x04, 0xfd, 0x13, 0x01, 0x04, 0x0e, - 0x43, 0x06, 0x05, 0x90, 0x04, 0x01, 0x00, 0x01, - 0x04, 0x00, 0x00, 0x14, 0x01, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, - 0x08, 0x01, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0xd1, 0xef, 0x25, 0x01, 0x00, 0xd2, 0x04, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0x42, 0x0a, 0x01, 0x00, 0x00, 0x38, + 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x25, 0x01, + 0x00, 0xd8, 0x04, 0xfd, 0x13, 0x01, 0x04, 0x0e, + 0x43, 0x06, 0x05, 0x96, 0x04, 0x01, 0x00, 0x01, + 0x04, 0x00, 0x00, 0x14, 0x01, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, + 0x0b, 0x01, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0xd1, 0xef, 0x25, 0x01, 0x00, 0xd8, 0x04, 0x82, 0x14, 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, - 0x92, 0x04, 0x01, 0x00, 0x01, 0x04, 0x00, 0x00, - 0x14, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, 0x38, - 0xdf, 0x00, 0x00, 0x00, 0x42, 0x09, 0x01, 0x00, - 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, 0xef, - 0x25, 0x01, 0x00, 0xd2, 0x04, 0x87, 0x14, 0x01, - 0x04, 0x0e, 0x43, 0x06, 0x05, 0x94, 0x04, 0x02, - 0x00, 0x02, 0x05, 0x00, 0x00, 0x1b, 0x02, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xba, 0x06, 0x00, 0x01, - 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0x0a, - 0x01, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0xd1, 0xef, 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd2, - 0xef, 0x25, 0x02, 0x00, 0xd2, 0x04, 0x8c, 0x14, - 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0x96, 0x04, + 0x98, 0x04, 0x01, 0x00, 0x01, 0x04, 0x00, 0x00, + 0x14, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, 0x38, + 0xe2, 0x00, 0x00, 0x00, 0x42, 0x0c, 0x01, 0x00, + 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, + 0x25, 0x01, 0x00, 0xd8, 0x04, 0x87, 0x14, 0x01, + 0x04, 0x0e, 0x43, 0x06, 0x05, 0x9a, 0x04, 0x02, + 0x00, 0x02, 0x05, 0x00, 0x00, 0x1b, 0x02, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xc0, 0x06, 0x00, 0x01, + 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x0d, + 0x01, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0xd1, 0xef, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd2, + 0xef, 0x25, 0x02, 0x00, 0xd8, 0x04, 0x8c, 0x14, + 0x01, 0x04, 0x0e, 0x43, 0x06, 0x05, 0x9c, 0x04, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, 0x1e, 0x01, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xd1, 0xb5, 0xa9, - 0xea, 0x03, 0xb6, 0x28, 0xd1, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0x41, 0x25, 0x01, 0x00, 0x00, 0x9a, - 0xd5, 0x38, 0x04, 0x01, 0x00, 0x00, 0xd1, 0xef, - 0xd1, 0x9b, 0x28, 0xd2, 0x04, 0x91, 0x14, 0x05, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0xb5, 0xa9, + 0xea, 0x03, 0xb6, 0x28, 0xd1, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0x41, 0x28, 0x01, 0x00, 0x00, 0x9a, + 0xd5, 0x38, 0x07, 0x01, 0x00, 0x00, 0xd1, 0xef, + 0xd1, 0x9b, 0x28, 0xd8, 0x04, 0x91, 0x14, 0x05, 0x04, 0x1c, 0x08, 0x08, 0x44, 0x0e, 0x43, 0x06, - 0x05, 0x98, 0x04, 0x01, 0x00, 0x01, 0x02, 0x00, - 0x00, 0x11, 0x01, 0xb6, 0x06, 0x00, 0x01, 0x00, - 0xd1, 0xbe, 0xb4, 0x00, 0x9a, 0x38, 0xdf, 0x00, - 0x00, 0x00, 0x41, 0x25, 0x01, 0x00, 0x00, 0x9b, - 0x28, 0xd2, 0x04, 0x9b, 0x14, 0x01, 0x04, 0x0e, - 0x43, 0x06, 0x05, 0x9a, 0x04, 0x01, 0x00, 0x01, - 0x02, 0x00, 0x00, 0x11, 0x01, 0xb6, 0x06, 0x00, - 0x01, 0x00, 0xd1, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0x41, 0x25, 0x01, 0x00, 0x00, 0x9a, 0xbe, 0xb4, - 0x00, 0x9b, 0x28, 0xd2, 0x04, 0xa0, 0x14, 0x01, - 0x04, 0x0e, 0x43, 0x06, 0x05, 0x9c, 0x04, 0x01, - 0x01, 0x01, 0x04, 0x00, 0x01, 0x20, 0x02, 0xb6, - 0x06, 0x00, 0x01, 0x00, 0xce, 0x07, 0x00, 0x00, - 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, 0xfe, - 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, + 0x05, 0x9e, 0x04, 0x01, 0x00, 0x01, 0x02, 0x00, + 0x00, 0x11, 0x01, 0xbc, 0x06, 0x00, 0x01, 0x00, + 0xd1, 0xbe, 0xb4, 0x00, 0x9a, 0x38, 0xe2, 0x00, + 0x00, 0x00, 0x41, 0x28, 0x01, 0x00, 0x00, 0x9b, + 0x28, 0xd8, 0x04, 0x9b, 0x14, 0x01, 0x04, 0x0e, + 0x43, 0x06, 0x05, 0xa0, 0x04, 0x01, 0x00, 0x01, + 0x02, 0x00, 0x00, 0x11, 0x01, 0xbc, 0x06, 0x00, + 0x01, 0x00, 0xd1, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0x41, 0x28, 0x01, 0x00, 0x00, 0x9a, 0xbe, 0xb4, + 0x00, 0x9b, 0x28, 0xd8, 0x04, 0xa0, 0x14, 0x01, + 0x04, 0x0e, 0x43, 0x06, 0x05, 0xa2, 0x04, 0x01, + 0x01, 0x01, 0x04, 0x00, 0x01, 0x20, 0x02, 0xbc, + 0x06, 0x00, 0x01, 0x00, 0xd4, 0x07, 0x00, 0x00, + 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, 0x01, + 0x01, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x24, 0x01, 0x00, 0xcd, 0xb6, 0xc5, 0x9b, 0x9e, 0xbf, 0x00, 0xbd, 0xed, 0xb1, 0x9a, - 0x28, 0xd2, 0x04, 0xa5, 0x14, 0x02, 0x04, 0x67, + 0x28, 0xd8, 0x04, 0xa5, 0x14, 0x02, 0x04, 0x67, 0x0b, 0x88, 0x02, 0x06, 0xe8, 0x89, 0x04, 0x23, - 0xc7, 0x8a, 0x0e, 0x43, 0x06, 0x05, 0x9e, 0x04, + 0xc7, 0x8a, 0x0e, 0x43, 0x06, 0x05, 0xa4, 0x04, 0x01, 0x01, 0x01, 0x04, 0x00, 0x01, 0x20, 0x02, - 0xb6, 0x06, 0x00, 0x01, 0x00, 0xce, 0x07, 0x00, - 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, 0x42, - 0xfe, 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, + 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd4, 0x07, 0x00, + 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0x42, + 0x01, 0x01, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0x24, 0x01, 0x00, 0xcd, 0xb6, 0xc5, 0x9b, 0x9d, 0xbf, 0x00, 0xbd, 0xed, 0xb1, - 0x9a, 0x28, 0xd2, 0x04, 0xab, 0x14, 0x02, 0x04, + 0x9a, 0x28, 0xd8, 0x04, 0xab, 0x14, 0x02, 0x04, 0x67, 0x0b, 0x88, 0x02, 0x06, 0xe8, 0x89, 0x04, - 0x23, 0xc7, 0x8a, 0x0e, 0x43, 0x06, 0x05, 0xa0, + 0x23, 0xc7, 0x8a, 0x0e, 0x43, 0x06, 0x05, 0xa6, 0x04, 0x01, 0x01, 0x01, 0x04, 0x00, 0x00, 0x1e, - 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xce, 0x07, - 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, 0x00, - 0x42, 0xfe, 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, + 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xd4, 0x07, + 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, + 0x42, 0x01, 0x01, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xb7, 0x9a, 0x24, 0x01, 0x00, 0xcd, 0xb6, 0x9e, 0xc5, 0xb6, 0x9d, 0x9b, - 0x28, 0xd2, 0x04, 0xb1, 0x14, 0x02, 0x04, 0x71, - 0x0e, 0x43, 0x06, 0x05, 0xa2, 0x04, 0x01, 0x01, - 0x01, 0x04, 0x00, 0x00, 0x1d, 0x02, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x00, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xc9, - 0x38, 0xff, 0x00, 0x00, 0x00, 0x38, 0xfd, 0x00, + 0x28, 0xd8, 0x04, 0xb1, 0x14, 0x02, 0x04, 0x71, + 0x0e, 0x43, 0x06, 0x05, 0xa8, 0x04, 0x01, 0x01, + 0x01, 0x04, 0x00, 0x00, 0x1d, 0x02, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xe6, 0x06, 0x00, 0x00, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xc9, + 0x38, 0x02, 0x01, 0x00, 0x00, 0x38, 0x00, 0x01, 0x00, 0x00, 0xc5, 0xc5, 0x9a, 0xb6, 0x9d, 0xef, - 0xc5, 0x9d, 0x23, 0x01, 0x00, 0xd2, 0x04, 0xb7, + 0xc5, 0x9d, 0x23, 0x01, 0x00, 0xd8, 0x04, 0xb7, 0x14, 0x02, 0x04, 0x2b, 0x0e, 0x43, 0x06, 0x05, - 0xa4, 0x04, 0x01, 0x01, 0x01, 0x04, 0x00, 0x00, - 0x1d, 0x02, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xe0, - 0x06, 0x00, 0x00, 0x00, 0x38, 0xdf, 0x00, 0x00, - 0x00, 0xd1, 0xef, 0xc9, 0x38, 0xff, 0x00, 0x00, - 0x00, 0x38, 0xfd, 0x00, 0x00, 0x00, 0xc5, 0xc5, + 0xaa, 0x04, 0x01, 0x01, 0x01, 0x04, 0x00, 0x00, + 0x1d, 0x02, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xe6, + 0x06, 0x00, 0x00, 0x00, 0x38, 0xe2, 0x00, 0x00, + 0x00, 0xd1, 0xef, 0xc9, 0x38, 0x02, 0x01, 0x00, + 0x00, 0x38, 0x00, 0x01, 0x00, 0x00, 0xc5, 0xc5, 0x9a, 0xb6, 0x9e, 0xef, 0xc5, 0x9d, 0x23, 0x01, - 0x00, 0xd2, 0x04, 0xbd, 0x14, 0x02, 0x04, 0x2b, - 0x0e, 0x43, 0x06, 0x05, 0xa6, 0x04, 0x01, 0x01, - 0x01, 0x05, 0x00, 0x01, 0x1c, 0x02, 0xb6, 0x06, - 0x00, 0x01, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x00, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xc9, - 0xbf, 0x00, 0xbd, 0xed, 0xb1, 0x38, 0xff, 0x00, + 0x00, 0xd8, 0x04, 0xbd, 0x14, 0x02, 0x04, 0x2b, + 0x0e, 0x43, 0x06, 0x05, 0xac, 0x04, 0x01, 0x01, + 0x01, 0x05, 0x00, 0x01, 0x1c, 0x02, 0xbc, 0x06, + 0x00, 0x01, 0x00, 0xe6, 0x06, 0x00, 0x00, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xc9, + 0xbf, 0x00, 0xbd, 0xed, 0xb1, 0x38, 0x02, 0x01, 0x00, 0x00, 0xb6, 0xc5, 0x9d, 0xb6, 0xc5, 0x9e, - 0x9b, 0xef, 0x9a, 0x28, 0xd2, 0x04, 0xc3, 0x14, + 0x9b, 0xef, 0x9a, 0x28, 0xd8, 0x04, 0xc3, 0x14, 0x02, 0x04, 0x2b, 0x0b, 0x88, 0x02, 0x06, 0xe8, 0x89, 0x04, 0x23, 0xc7, 0x8a, 0x0e, 0x43, 0x06, - 0x05, 0xa8, 0x04, 0x01, 0x00, 0x01, 0x04, 0x00, - 0x00, 0x15, 0x01, 0xe0, 0x06, 0x00, 0x01, 0x00, - 0x38, 0xdf, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, - 0xb6, 0xb6, 0x38, 0xfe, 0x00, 0x00, 0x00, 0xd1, - 0x8c, 0xef, 0x9d, 0x9b, 0x28, 0xd2, 0x04, 0xc9, + 0x05, 0xae, 0x04, 0x01, 0x00, 0x01, 0x04, 0x00, + 0x00, 0x15, 0x01, 0xe6, 0x06, 0x00, 0x01, 0x00, + 0x38, 0xe2, 0x00, 0x00, 0x00, 0xd1, 0xef, 0xd5, + 0xb6, 0xb6, 0x38, 0x01, 0x01, 0x00, 0x00, 0xd1, + 0x8c, 0xef, 0x9d, 0x9b, 0x28, 0xd8, 0x04, 0xc9, 0x14, 0x02, 0x04, 0x2b, 0x0e, 0x43, 0x06, 0x05, - 0xaa, 0x04, 0x03, 0x00, 0x03, 0x03, 0x00, 0x00, - 0x08, 0x03, 0xb6, 0x06, 0x00, 0x01, 0x00, 0xba, - 0x06, 0x00, 0x01, 0x00, 0xd6, 0x06, 0x00, 0x01, + 0xb0, 0x04, 0x03, 0x00, 0x03, 0x03, 0x00, 0x00, + 0x08, 0x03, 0xbc, 0x06, 0x00, 0x01, 0x00, 0xc0, + 0x06, 0x00, 0x01, 0x00, 0xdc, 0x06, 0x00, 0x01, 0x00, 0xd1, 0xd2, 0xd1, 0x9e, 0xd3, 0x9a, 0x9d, - 0x28, 0xd2, 0x04, 0xcf, 0x14, 0x01, 0x04, + 0x28, 0xd8, 0x04, 0xcf, 0x14, 0x01, 0x04, }; diff --git a/crates/quickjs-wasm-sys/quickjs/quickjs-atom.h b/crates/quickjs-wasm-sys/quickjs/quickjs-atom.h index 4c227945..81c65b99 100644 --- a/crates/quickjs-wasm-sys/quickjs/quickjs-atom.h +++ b/crates/quickjs-wasm-sys/quickjs/quickjs-atom.h @@ -169,8 +169,8 @@ DEF(groups, "groups") DEF(status, "status") DEF(reason, "reason") DEF(globalThis, "globalThis") -#ifdef CONFIG_BIGNUM DEF(bigint, "bigint") +#ifdef CONFIG_BIGNUM DEF(bigfloat, "bigfloat") DEF(bigdecimal, "bigdecimal") DEF(roundingMode, "roundingMode") @@ -209,15 +209,13 @@ DEF(Int16Array, "Int16Array") DEF(Uint16Array, "Uint16Array") DEF(Int32Array, "Int32Array") DEF(Uint32Array, "Uint32Array") -#ifdef CONFIG_BIGNUM DEF(BigInt64Array, "BigInt64Array") DEF(BigUint64Array, "BigUint64Array") -#endif DEF(Float32Array, "Float32Array") DEF(Float64Array, "Float64Array") DEF(DataView, "DataView") -#ifdef CONFIG_BIGNUM DEF(BigInt, "BigInt") +#ifdef CONFIG_BIGNUM DEF(BigFloat, "BigFloat") DEF(BigFloatEnv, "BigFloatEnv") DEF(BigDecimal, "BigDecimal") diff --git a/crates/quickjs-wasm-sys/quickjs/quickjs-opcode.h b/crates/quickjs-wasm-sys/quickjs/quickjs-opcode.h index c731a14a..15a9fce6 100644 --- a/crates/quickjs-wasm-sys/quickjs/quickjs-opcode.h +++ b/crates/quickjs-wasm-sys/quickjs/quickjs-opcode.h @@ -279,7 +279,7 @@ def( scope_get_ref, 7, 0, 2, atom_u16) /* emitted in phase 1, removed in phase def(scope_put_var_init, 7, 0, 2, atom_u16) /* emitted in phase 1, removed in phase 2 */ def(scope_get_private_field, 7, 1, 1, atom_u16) /* obj -> value, emitted in phase 1, removed in phase 2 */ def(scope_get_private_field2, 7, 1, 2, atom_u16) /* obj -> obj value, emitted in phase 1, removed in phase 2 */ -def(scope_put_private_field, 7, 1, 1, atom_u16) /* obj value ->, emitted in phase 1, removed in phase 2 */ +def(scope_put_private_field, 7, 2, 0, atom_u16) /* obj value ->, emitted in phase 1, removed in phase 2 */ def( set_class_name, 5, 1, 1, u32) /* emitted in phase 1, removed in phase 2 */ diff --git a/crates/quickjs-wasm-sys/quickjs/quickjs.c b/crates/quickjs-wasm-sys/quickjs/quickjs.c index 94d93633..e08f52db 100644 --- a/crates/quickjs-wasm-sys/quickjs/quickjs.c +++ b/crates/quickjs-wasm-sys/quickjs/quickjs.c @@ -44,17 +44,16 @@ #include "list.h" #include "quickjs.h" #include "libregexp.h" -#ifdef CONFIG_BIGNUM #include "libbf.h" -#endif #define OPTIMIZE 1 #define SHORT_OPCODES 1 -#if defined(EMSCRIPTEN) -#define DIRECT_DISPATCH 0 -#else -#define DIRECT_DISPATCH 1 -#endif +// #if defined(EMSCRIPTEN) +// #define DIRECT_DISPATCH 0 +// #else +// #define DIRECT_DISPATCH 1 +// #endif +#define DIRECT_DISPATCH 0 #if defined(__APPLE__) #define MALLOC_OVERHEAD 0 @@ -62,21 +61,21 @@ #define MALLOC_OVERHEAD 8 #endif -/* #if !defined(_WIN32) */ -/* /1* define it if printf uses the RNDN rounding mode instead of RNDNA *1/ */ -/* #define CONFIG_PRINTF_RNDN */ -/* #endif */ +// #if !defined(_WIN32) +// /* define it if printf uses the RNDN rounding mode instead of RNDNA */ +// #define CONFIG_PRINTF_RNDN +// #endif /* define to include Atomics.* operations which depend on the OS threads */ -/* #if !defined(EMSCRIPTEN) */ -/* #define CONFIG_ATOMICS */ -/* #endif */ +// #if !defined(EMSCRIPTEN) +// #define CONFIG_ATOMICS +// #endif -#if !defined(EMSCRIPTEN) +// #if !defined(EMSCRIPTEN) /* enable stack limitation */ -#define CONFIG_STACK_CHECK -#endif +// #define CONFIG_STACK_CHECK +// #endif /* dump object free */ @@ -144,15 +143,13 @@ enum { JS_CLASS_UINT16_ARRAY, /* u.array (typed_array) */ JS_CLASS_INT32_ARRAY, /* u.array (typed_array) */ JS_CLASS_UINT32_ARRAY, /* u.array (typed_array) */ -#ifdef CONFIG_BIGNUM JS_CLASS_BIG_INT64_ARRAY, /* u.array (typed_array) */ JS_CLASS_BIG_UINT64_ARRAY, /* u.array (typed_array) */ -#endif JS_CLASS_FLOAT32_ARRAY, /* u.array (typed_array) */ JS_CLASS_FLOAT64_ARRAY, /* u.array (typed_array) */ JS_CLASS_DATAVIEW, /* u.typed_array */ -#ifdef CONFIG_BIGNUM JS_CLASS_BIG_INT, /* u.object_data */ +#ifdef CONFIG_BIGNUM JS_CLASS_BIG_FLOAT, /* u.object_data */ JS_CLASS_FLOAT_ENV, /* u.float_env */ JS_CLASS_BIG_DECIMAL, /* u.object_data */ @@ -218,7 +215,6 @@ typedef enum { typedef enum OPCodeEnum OPCodeEnum; -#ifdef CONFIG_BIGNUM /* function pointers are used for numeric operations so that it is possible to remove some numeric types */ typedef struct { @@ -236,7 +232,6 @@ typedef struct { int64_t exponent); int (*mul_pow10)(JSContext *ctx, JSValue *sp); } JSNumericOperations; -#endif struct JSRuntime { JSMallocFunctions mf; @@ -298,9 +293,9 @@ struct JSRuntime { int shape_hash_size; int shape_hash_count; /* number of hashed shapes */ JSShape **shape_hash; -#ifdef CONFIG_BIGNUM bf_context_t bf_ctx; JSNumericOperations bigint_ops; +#ifdef CONFIG_BIGNUM JSNumericOperations bigfloat_ops; JSNumericOperations bigdecimal_ops; uint32_t operator_count; @@ -380,13 +375,6 @@ typedef struct JSVarRef { JSValue value; /* used when the variable is no longer on the stack */ } JSVarRef; -#ifdef CONFIG_BIGNUM -typedef struct JSFloatEnv { - limb_t prec; - bf_flags_t flags; - unsigned int status; -} JSFloatEnv; - /* the same structure is used for big integers and big floats. Big integers are never infinite or NaNs */ typedef struct JSBigFloat { @@ -394,6 +382,13 @@ typedef struct JSBigFloat { bf_t num; } JSBigFloat; +#ifdef CONFIG_BIGNUM +typedef struct JSFloatEnv { + limb_t prec; + bf_flags_t flags; + unsigned int status; +} JSFloatEnv; + typedef struct JSBigDecimal { JSRefCountHeader header; /* must come first, 32-bit */ bfdec_t num; @@ -437,8 +432,8 @@ struct JSContext { JSValue global_var_obj; /* contains the global let/const definitions */ uint64_t random_state; -#ifdef CONFIG_BIGNUM bf_context_t *bf_ctx; /* points to rt->bf_ctx, shared by all contexts */ +#ifdef CONFIG_BIGNUM JSFloatEnv fp_env; /* global FP environment */ BOOL bignum_ext : 8; /* enable math mode */ BOOL allow_operator_overloading : 8; @@ -558,6 +553,7 @@ typedef struct JSVarDef { uint8_t is_const : 1; uint8_t is_lexical : 1; uint8_t is_captured : 1; + uint8_t is_static_private : 1; /* only used during private class field parsing */ uint8_t var_kind : 4; /* see JSVarKindEnum */ /* only used during compilation: function pool index for lexical variables with var_kind = @@ -1117,6 +1113,18 @@ static JSValue JS_ToObject(JSContext *ctx, JSValueConst val); static JSValue JS_ToObjectFree(JSContext *ctx, JSValue val); static JSProperty *add_property(JSContext *ctx, JSObject *p, JSAtom prop, int prop_flags); +static JSValue JS_NewBigInt(JSContext *ctx); +static inline bf_t *JS_GetBigInt(JSValueConst val) +{ + JSBigFloat *p = JS_VALUE_GET_PTR(val); + return &p->num; +} +static JSValue JS_CompactBigInt1(JSContext *ctx, JSValue val, + BOOL convert_to_safe_integer); +static JSValue JS_CompactBigInt(JSContext *ctx, JSValue val); +static int JS_ToBigInt64Free(JSContext *ctx, int64_t *pres, JSValue val); +static bf_t *JS_ToBigInt(JSContext *ctx, bf_t *buf, JSValueConst val); +static void JS_FreeBigInt(JSContext *ctx, bf_t *a, bf_t *buf); #ifdef CONFIG_BIGNUM static void js_float_env_finalizer(JSRuntime *rt, JSValue val); static JSValue JS_NewBigFloat(JSContext *ctx); @@ -1131,18 +1139,6 @@ static inline bfdec_t *JS_GetBigDecimal(JSValueConst val) JSBigDecimal *p = JS_VALUE_GET_PTR(val); return &p->num; } -static JSValue JS_NewBigInt(JSContext *ctx); -static inline bf_t *JS_GetBigInt(JSValueConst val) -{ - JSBigFloat *p = JS_VALUE_GET_PTR(val); - return &p->num; -} -static JSValue JS_CompactBigInt1(JSContext *ctx, JSValue val, - BOOL convert_to_safe_integer); -static JSValue JS_CompactBigInt(JSContext *ctx, JSValue val); -static int JS_ToBigInt64Free(JSContext *ctx, int64_t *pres, JSValue val); -static bf_t *JS_ToBigInt(JSContext *ctx, bf_t *buf, JSValueConst val); -static void JS_FreeBigInt(JSContext *ctx, bf_t *a, bf_t *buf); static bf_t *JS_ToBigFloat(JSContext *ctx, bf_t *buf, JSValueConst val); static JSValue JS_ToBigDecimalFree(JSContext *ctx, JSValue val, BOOL allow_null_or_undefined); @@ -1311,14 +1307,12 @@ void *js_mallocz_rt(JSRuntime *rt, size_t size) return memset(ptr, 0, size); } -#ifdef CONFIG_BIGNUM /* called by libbf */ static void *js_bf_realloc(void *opaque, void *ptr, size_t size) { JSRuntime *rt = opaque; return js_realloc_rt(rt, ptr, size); } -#endif /* CONFIG_BIGNUM */ /* Throw out of memory in case of error */ void *js_malloc(JSContext *ctx, size_t size) @@ -1469,15 +1463,13 @@ static JSClassShortDef const js_std_class_def[] = { { JS_ATOM_Uint16Array, js_typed_array_finalizer, js_typed_array_mark }, /* JS_CLASS_UINT16_ARRAY */ { JS_ATOM_Int32Array, js_typed_array_finalizer, js_typed_array_mark }, /* JS_CLASS_INT32_ARRAY */ { JS_ATOM_Uint32Array, js_typed_array_finalizer, js_typed_array_mark }, /* JS_CLASS_UINT32_ARRAY */ -#ifdef CONFIG_BIGNUM { JS_ATOM_BigInt64Array, js_typed_array_finalizer, js_typed_array_mark }, /* JS_CLASS_BIG_INT64_ARRAY */ { JS_ATOM_BigUint64Array, js_typed_array_finalizer, js_typed_array_mark }, /* JS_CLASS_BIG_UINT64_ARRAY */ -#endif { JS_ATOM_Float32Array, js_typed_array_finalizer, js_typed_array_mark }, /* JS_CLASS_FLOAT32_ARRAY */ { JS_ATOM_Float64Array, js_typed_array_finalizer, js_typed_array_mark }, /* JS_CLASS_FLOAT64_ARRAY */ { JS_ATOM_DataView, js_typed_array_finalizer, js_typed_array_mark }, /* JS_CLASS_DATAVIEW */ -#ifdef CONFIG_BIGNUM { JS_ATOM_BigInt, js_object_data_finalizer, js_object_data_mark }, /* JS_CLASS_BIG_INT */ +#ifdef CONFIG_BIGNUM { JS_ATOM_BigFloat, js_object_data_finalizer, js_object_data_mark }, /* JS_CLASS_BIG_FLOAT */ { JS_ATOM_BigFloatEnv, js_float_env_finalizer, NULL }, /* JS_CLASS_FLOAT_ENV */ { JS_ATOM_BigDecimal, js_object_data_finalizer, js_object_data_mark }, /* JS_CLASS_BIG_DECIMAL */ @@ -1512,7 +1504,6 @@ static int init_class_range(JSRuntime *rt, JSClassShortDef const *tab, return 0; } -#ifdef CONFIG_BIGNUM static JSValue JS_ThrowUnsupportedOperation(JSContext *ctx) { return JS_ThrowTypeError(ctx, "unsupported operation"); @@ -1568,8 +1559,6 @@ static void set_dummy_numeric_ops(JSNumericOperations *ops) ops->mul_pow10 = invalid_mul_pow10; } -#endif /* CONFIG_BIGNUM */ - #if !defined(CONFIG_STACK_CHECK) /* no stack limitation */ static inline uintptr_t js_get_stack_pointer(void) @@ -1617,9 +1606,9 @@ JSRuntime *JS_NewRuntime2(const JSMallocFunctions *mf, void *opaque) rt->malloc_state = ms; rt->malloc_gc_threshold = 256 * 1024; -#ifdef CONFIG_BIGNUM bf_context_init(&rt->bf_ctx, js_bf_realloc, rt); set_dummy_numeric_ops(&rt->bigint_ops); +#ifdef CONFIG_BIGNUM set_dummy_numeric_ops(&rt->bigfloat_ops); set_dummy_numeric_ops(&rt->bigdecimal_ops); #endif @@ -1676,18 +1665,19 @@ void JS_SetRuntimeOpaque(JSRuntime *rt, void *opaque) /* default memory allocation functions with memory limitation */ static inline size_t js_def_malloc_usable_size(void *ptr) { -#if defined(__APPLE__) - return malloc_size(ptr); -#elif defined(_WIN32) - return _msize(ptr); -#elif defined(EMSCRIPTEN) +// #if defined(__APPLE__) +// return malloc_size(ptr); +// #elif defined(_WIN32) +// return _msize(ptr); +// #elif defined(EMSCRIPTEN) +// return 0; +// #elif defined(__linux__) +// return malloc_usable_size(ptr); +// #else +// /* change this to `return 0;` if compilation fails */ +// return malloc_usable_size(ptr); +// #endif return 0; -#elif defined(__linux__) - return malloc_usable_size(ptr); -#else - /* change this to `return 0;` if compilation fails */ - return malloc_usable_size(ptr); -#endif } static void *js_def_malloc(JSMallocState *s, size_t size) @@ -1750,19 +1740,19 @@ static const JSMallocFunctions def_malloc_funcs = { js_def_malloc, js_def_free, js_def_realloc, -#if defined(__APPLE__) - malloc_size, -#elif defined(_WIN32) - (size_t (*)(const void *))_msize, -#elif defined(EMSCRIPTEN) +// #if defined(__APPLE__) +// malloc_size, +// #elif defined(_WIN32) +// (size_t (*)(const void *))_msize, +// #elif defined(EMSCRIPTEN) +// NULL, +// #elif defined(__linux__) +// (size_t (*)(const void *))malloc_usable_size, +// #else +// /* change this to `NULL,` if compilation fails */ +// malloc_usable_size, +// #endif NULL, -#elif defined(__linux__) - (size_t (*)(const void *))malloc_usable_size, -#else - /* change this to `NULL,` if compilation fails */ - NULL, - /* malloc_usable_size, */ -#endif }; JSRuntime *JS_NewRuntime(void) @@ -1992,9 +1982,7 @@ void JS_FreeRuntime(JSRuntime *rt) } js_free_rt(rt, rt->class_array); -#ifdef CONFIG_BIGNUM bf_context_end(&rt->bf_ctx); -#endif #ifdef DUMP_LEAKS /* only the atoms defined in JS_InitAtoms() should be left */ @@ -2132,8 +2120,8 @@ JSContext *JS_NewContextRaw(JSRuntime *rt) } ctx->rt = rt; list_add_tail(&ctx->link, &rt->context_list); -#ifdef CONFIG_BIGNUM ctx->bf_ctx = &rt->bf_ctx; +#ifdef CONFIG_BIGNUM ctx->fp_env.prec = 113; ctx->fp_env.flags = bf_set_exp_bits(15) | BF_RNDN | BF_FLAG_SUBNORMAL; #endif @@ -2166,9 +2154,7 @@ JSContext *JS_NewContext(JSRuntime *rt) JS_AddIntrinsicMapSet(ctx); JS_AddIntrinsicTypedArrays(ctx); JS_AddIntrinsicPromise(ctx); -#ifdef CONFIG_BIGNUM JS_AddIntrinsicBigInt(ctx); -#endif return ctx; } @@ -2376,6 +2362,11 @@ static inline BOOL is_math_mode(JSContext *ctx) JSStackFrame *sf = ctx->rt->current_stack_frame; return (sf && (sf->js_mode & JS_MODE_MATH)); } +#else +static inline BOOL is_math_mode(JSContext *ctx) +{ + return FALSE; +} #endif /* JSAtom support */ @@ -4783,10 +4774,8 @@ static JSValue JS_NewObjectFromShape(JSContext *ctx, JSShape *sh, JSClassID clas case JS_CLASS_UINT16_ARRAY: case JS_CLASS_INT32_ARRAY: case JS_CLASS_UINT32_ARRAY: -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: case JS_CLASS_BIG_UINT64_ARRAY: -#endif case JS_CLASS_FLOAT32_ARRAY: case JS_CLASS_FLOAT64_ARRAY: p->is_exotic = 1; @@ -4803,8 +4792,8 @@ static JSValue JS_NewObjectFromShape(JSContext *ctx, JSShape *sh, JSClassID clas case JS_CLASS_BOOLEAN: case JS_CLASS_SYMBOL: case JS_CLASS_DATE: -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_FLOAT: case JS_CLASS_BIG_DECIMAL: #endif @@ -4866,8 +4855,8 @@ static JSValue JS_GetObjectData(JSContext *ctx, JSValueConst obj) case JS_CLASS_BOOLEAN: case JS_CLASS_SYMBOL: case JS_CLASS_DATE: -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_FLOAT: case JS_CLASS_BIG_DECIMAL: #endif @@ -4890,8 +4879,8 @@ static int JS_SetObjectData(JSContext *ctx, JSValueConst obj, JSValue val) case JS_CLASS_BOOLEAN: case JS_CLASS_SYMBOL: case JS_CLASS_DATE: -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_FLOAT: case JS_CLASS_BIG_DECIMAL: #endif @@ -5518,15 +5507,17 @@ void __JS_FreeValueRT(JSRuntime *rt, JSValue v) case JS_TAG_MODULE: abort(); /* never freed here */ break; -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: +#endif { JSBigFloat *bf = JS_VALUE_GET_PTR(v); bf_delete(&bf->num); js_free_rt(rt, bf); } break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_DECIMAL: { JSBigDecimal *bf = JS_VALUE_GET_PTR(v); @@ -5889,13 +5880,13 @@ static void compute_value_size(JSValueConst val, JSMemoryUsage_helper *hp) case JS_TAG_STRING: compute_jsstring_size(JS_VALUE_GET_STRING(val), hp); break; -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: case JS_TAG_BIG_DECIMAL: +#endif /* should track JSBigFloat usage */ break; -#endif } } @@ -6019,8 +6010,8 @@ void JS_ComputeMemoryUsage(JSRuntime *rt, JSMemoryUsage *s) case JS_CLASS_BOOLEAN: /* u.object_data */ case JS_CLASS_SYMBOL: /* u.object_data */ case JS_CLASS_DATE: /* u.object_data */ -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT: /* u.object_data */ +#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_FLOAT: /* u.object_data */ case JS_CLASS_BIG_DECIMAL: /* u.object_data */ #endif @@ -6112,10 +6103,8 @@ void JS_ComputeMemoryUsage(JSRuntime *rt, JSMemoryUsage *s) case JS_CLASS_UINT16_ARRAY: /* u.typed_array / u.array */ case JS_CLASS_INT32_ARRAY: /* u.typed_array / u.array */ case JS_CLASS_UINT32_ARRAY: /* u.typed_array / u.array */ -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: /* u.typed_array / u.array */ case JS_CLASS_BIG_UINT64_ARRAY: /* u.typed_array / u.array */ -#endif case JS_CLASS_FLOAT32_ARRAY: /* u.typed_array / u.array */ case JS_CLASS_FLOAT64_ARRAY: /* u.typed_array / u.array */ case JS_CLASS_DATAVIEW: /* u.typed_array */ @@ -6876,10 +6865,10 @@ int JS_SetPrototype(JSContext *ctx, JSValueConst obj, JSValueConst proto_val) static JSValueConst JS_GetPrototypePrimitive(JSContext *ctx, JSValueConst val) { switch(JS_VALUE_GET_NORM_TAG(val)) { -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: val = ctx->class_proto[JS_CLASS_BIG_INT]; break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: val = ctx->class_proto[JS_CLASS_BIG_FLOAT]; break; @@ -7877,12 +7866,10 @@ static JSValue JS_GetPropertyValue(JSContext *ctx, JSValueConst this_obj, return JS_NewInt32(ctx, p->u.array.u.int32_ptr[idx]); case JS_CLASS_UINT32_ARRAY: return JS_NewUint32(ctx, p->u.array.u.uint32_ptr[idx]); -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: return JS_NewBigInt64(ctx, p->u.array.u.int64_ptr[idx]); case JS_CLASS_BIG_UINT64_ARRAY: return JS_NewBigUint64(ctx, p->u.array.u.uint64_ptr[idx]); -#endif case JS_CLASS_FLOAT32_ARRAY: return __JS_NewFloat64(ctx, p->u.array.u.float_ptr[idx]); case JS_CLASS_FLOAT64_ARRAY: @@ -8310,119 +8297,14 @@ static void js_free_desc(JSContext *ctx, JSPropertyDescriptor *desc) JS_FreeValue(ctx, desc->value); } -/* generic (and slower) version of JS_SetProperty() for - * Reflect.set(). 'obj' must be an object. */ -static int JS_SetPropertyGeneric(JSContext *ctx, - JSValueConst obj, JSAtom prop, - JSValue val, JSValueConst this_obj, - int flags) -{ - int ret; - JSPropertyDescriptor desc; - JSValue obj1; - JSObject *p; - - obj1 = JS_DupValue(ctx, obj); - for(;;) { - p = JS_VALUE_GET_OBJ(obj1); - if (p->is_exotic) { - const JSClassExoticMethods *em = ctx->rt->class_array[p->class_id].exotic; - if (em && em->set_property) { - ret = em->set_property(ctx, obj1, prop, - val, this_obj, flags); - JS_FreeValue(ctx, obj1); - JS_FreeValue(ctx, val); - return ret; - } - } - - ret = JS_GetOwnPropertyInternal(ctx, &desc, p, prop); - if (ret < 0) { - JS_FreeValue(ctx, obj1); - JS_FreeValue(ctx, val); - return ret; - } - if (ret) { - if (desc.flags & JS_PROP_GETSET) { - JSObject *setter; - if (JS_IsUndefined(desc.setter)) - setter = NULL; - else - setter = JS_VALUE_GET_OBJ(desc.setter); - ret = call_setter(ctx, setter, this_obj, val, flags); - JS_FreeValue(ctx, desc.getter); - JS_FreeValue(ctx, desc.setter); - JS_FreeValue(ctx, obj1); - return ret; - } else { - JS_FreeValue(ctx, desc.value); - if (!(desc.flags & JS_PROP_WRITABLE)) { - JS_FreeValue(ctx, obj1); - goto read_only_error; - } - } - break; - } - /* Note: at this point 'obj1' cannot be a proxy. XXX: may have - to check recursion */ - obj1 = JS_GetPrototypeFree(ctx, obj1); - if (JS_IsNull(obj1)) - break; - } - JS_FreeValue(ctx, obj1); - - if (!JS_IsObject(this_obj)) { - JS_FreeValue(ctx, val); - return JS_ThrowTypeErrorOrFalse(ctx, flags, "receiver is not an object"); - } - - p = JS_VALUE_GET_OBJ(this_obj); - - /* modify the property in this_obj if it already exists */ - ret = JS_GetOwnPropertyInternal(ctx, &desc, p, prop); - if (ret < 0) { - JS_FreeValue(ctx, val); - return ret; - } - if (ret) { - if (desc.flags & JS_PROP_GETSET) { - JS_FreeValue(ctx, desc.getter); - JS_FreeValue(ctx, desc.setter); - JS_FreeValue(ctx, val); - return JS_ThrowTypeErrorOrFalse(ctx, flags, "setter is forbidden"); - } else { - JS_FreeValue(ctx, desc.value); - if (!(desc.flags & JS_PROP_WRITABLE) || - p->class_id == JS_CLASS_MODULE_NS) { - read_only_error: - JS_FreeValue(ctx, val); - return JS_ThrowTypeErrorReadOnly(ctx, flags, prop); - } - } - ret = JS_DefineProperty(ctx, this_obj, prop, val, - JS_UNDEFINED, JS_UNDEFINED, - JS_PROP_HAS_VALUE); - JS_FreeValue(ctx, val); - return ret; - } - - ret = JS_CreateProperty(ctx, p, prop, val, JS_UNDEFINED, JS_UNDEFINED, - flags | - JS_PROP_HAS_VALUE | - JS_PROP_HAS_ENUMERABLE | - JS_PROP_HAS_WRITABLE | - JS_PROP_HAS_CONFIGURABLE | - JS_PROP_C_W_E); - JS_FreeValue(ctx, val); - return ret; -} - /* return -1 in case of exception or TRUE or FALSE. Warning: 'val' is freed by the function. 'flags' is a bitmask of JS_PROP_NO_ADD, JS_PROP_THROW or JS_PROP_THROW_STRICT. If JS_PROP_NO_ADD is set, - the new property is not added and an error is raised. */ -int JS_SetPropertyInternal(JSContext *ctx, JSValueConst this_obj, - JSAtom prop, JSValue val, int flags) + the new property is not added and an error is raised. 'this_obj' is + the receiver. If obj != this_obj, then obj must be an object + (Reflect.set case). */ +int JS_SetPropertyInternal(JSContext *ctx, JSValueConst obj, + JSAtom prop, JSValue val, JSValueConst this_obj, int flags) { JSObject *p, *p1; JSShapeProperty *prs; @@ -8435,25 +8317,37 @@ int JS_SetPropertyInternal(JSContext *ctx, JSValueConst this_obj, #endif tag = JS_VALUE_GET_TAG(this_obj); if (unlikely(tag != JS_TAG_OBJECT)) { - switch(tag) { - case JS_TAG_NULL: - JS_FreeValue(ctx, val); - JS_ThrowTypeErrorAtom(ctx, "cannot set property '%s' of null", prop); - return -1; - case JS_TAG_UNDEFINED: - JS_FreeValue(ctx, val); - JS_ThrowTypeErrorAtom(ctx, "cannot set property '%s' of undefined", prop); - return -1; - default: - /* even on a primitive type we can have setters on the prototype */ + if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { p = NULL; - p1 = JS_VALUE_GET_OBJ(JS_GetPrototypePrimitive(ctx, this_obj)); + p1 = JS_VALUE_GET_OBJ(obj); goto prototype_lookup; + } else { + switch(tag) { + case JS_TAG_NULL: + JS_FreeValue(ctx, val); + JS_ThrowTypeErrorAtom(ctx, "cannot set property '%s' of null", prop); + return -1; + case JS_TAG_UNDEFINED: + JS_FreeValue(ctx, val); + JS_ThrowTypeErrorAtom(ctx, "cannot set property '%s' of undefined", prop); + return -1; + default: + /* even on a primitive type we can have setters on the prototype */ + p = NULL; + p1 = JS_VALUE_GET_OBJ(JS_GetPrototypePrimitive(ctx, obj)); + goto prototype_lookup; + } } + } else { + p = JS_VALUE_GET_OBJ(this_obj); + p1 = JS_VALUE_GET_OBJ(obj); + if (unlikely(p != p1)) + goto retry2; } - p = JS_VALUE_GET_OBJ(this_obj); -retry: - prs = find_own_property(&pr, p, prop); + + /* fast path if obj == this_obj */ + retry: + prs = find_own_property(&pr, p1, prop); if (prs) { if (likely((prs->flags & (JS_PROP_TMASK | JS_PROP_WRITABLE | JS_PROP_LENGTH)) == JS_PROP_WRITABLE)) { @@ -8485,8 +8379,7 @@ int JS_SetPropertyInternal(JSContext *ctx, JSValueConst this_obj, goto read_only_prop; } } - - p1 = p; + for(;;) { if (p1->is_exotic) { if (p1->fast_array) { @@ -8510,11 +8403,19 @@ int JS_SetPropertyInternal(JSContext *ctx, JSValueConst this_obj, return -1; } typed_array_oob: - val = JS_ToNumberFree(ctx, val); - JS_FreeValue(ctx, val); - if (JS_IsException(val)) - return -1; - return JS_ThrowTypeErrorOrFalse(ctx, flags, "out-of-bound numeric index"); + /* must convert the argument even if out of bound access */ + if (p1->class_id == JS_CLASS_BIG_INT64_ARRAY || + p1->class_id == JS_CLASS_BIG_UINT64_ARRAY) { + int64_t v; + if (JS_ToBigInt64Free(ctx, &v, val)) + return -1; + } else { + val = JS_ToNumberFree(ctx, val); + JS_FreeValue(ctx, val); + if (JS_IsException(val)) + return -1; + } + return TRUE; } } } else { @@ -8586,9 +8487,7 @@ int JS_SetPropertyInternal(JSContext *ctx, JSValueConst this_obj, return -1; goto retry2; } else if (!(prs->flags & JS_PROP_WRITABLE)) { - read_only_prop: - JS_FreeValue(ctx, val); - return JS_ThrowTypeErrorReadOnly(ctx, flags, prop); + goto read_only_prop; } } } @@ -8609,16 +8508,56 @@ int JS_SetPropertyInternal(JSContext *ctx, JSValueConst this_obj, return JS_ThrowTypeErrorOrFalse(ctx, flags, "object is not extensible"); } - if (p->is_exotic) { - if (p->class_id == JS_CLASS_ARRAY && p->fast_array && - __JS_AtomIsTaggedInt(prop)) { - uint32_t idx = __JS_AtomToUInt32(prop); - if (idx == p->u.array.count) { - /* fast case */ - return add_fast_array_element(ctx, p, val, flags); + if (likely(p == JS_VALUE_GET_OBJ(obj))) { + if (p->is_exotic) { + if (p->class_id == JS_CLASS_ARRAY && p->fast_array && + __JS_AtomIsTaggedInt(prop)) { + uint32_t idx = __JS_AtomToUInt32(prop); + if (idx == p->u.array.count) { + /* fast case */ + return add_fast_array_element(ctx, p, val, flags); + } else { + goto generic_create_prop; + } } else { goto generic_create_prop; } + } else { + pr = add_property(ctx, p, prop, JS_PROP_C_W_E); + if (unlikely(!pr)) { + JS_FreeValue(ctx, val); + return -1; + } + pr->u.value = val; + return TRUE; + } + } else { + /* generic case: modify the property in this_obj if it already exists */ + ret = JS_GetOwnPropertyInternal(ctx, &desc, p, prop); + if (ret < 0) { + JS_FreeValue(ctx, val); + return ret; + } + if (ret) { + if (desc.flags & JS_PROP_GETSET) { + JS_FreeValue(ctx, desc.getter); + JS_FreeValue(ctx, desc.setter); + JS_FreeValue(ctx, val); + return JS_ThrowTypeErrorOrFalse(ctx, flags, "setter is forbidden"); + } else { + JS_FreeValue(ctx, desc.value); + if (!(desc.flags & JS_PROP_WRITABLE) || + p->class_id == JS_CLASS_MODULE_NS) { + read_only_prop: + JS_FreeValue(ctx, val); + return JS_ThrowTypeErrorReadOnly(ctx, flags, prop); + } + } + ret = JS_DefineProperty(ctx, this_obj, prop, val, + JS_UNDEFINED, JS_UNDEFINED, + JS_PROP_HAS_VALUE); + JS_FreeValue(ctx, val); + return ret; } else { generic_create_prop: ret = JS_CreateProperty(ctx, p, prop, val, JS_UNDEFINED, JS_UNDEFINED, @@ -8632,14 +8571,6 @@ int JS_SetPropertyInternal(JSContext *ctx, JSValueConst this_obj, return ret; } } - - pr = add_property(ctx, p, prop, JS_PROP_C_W_E); - if (unlikely(!pr)) { - JS_FreeValue(ctx, val); - return -1; - } - pr->u.value = val; - return TRUE; } /* flags can be JS_PROP_THROW or JS_PROP_THROW_STRICT */ @@ -8724,7 +8655,6 @@ static int JS_SetPropertyValue(JSContext *ctx, JSValueConst this_obj, goto ta_out_of_bound; p->u.array.u.uint32_ptr[idx] = v; break; -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: case JS_CLASS_BIG_UINT64_ARRAY: /* XXX: need specific conversion function */ @@ -8737,7 +8667,6 @@ static int JS_SetPropertyValue(JSContext *ctx, JSValueConst this_obj, p->u.array.u.uint64_ptr[idx] = v; } break; -#endif case JS_CLASS_FLOAT32_ARRAY: if (JS_ToFloat64Free(ctx, &d, val)) return -1; @@ -8750,7 +8679,7 @@ static int JS_SetPropertyValue(JSContext *ctx, JSValueConst this_obj, return -1; if (unlikely(idx >= (uint32_t)p->u.array.count)) { ta_out_of_bound: - return JS_ThrowTypeErrorOrFalse(ctx, flags, "out-of-bound numeric index"); + return TRUE; } p->u.array.u.double_ptr[idx] = d; break; @@ -8768,7 +8697,7 @@ static int JS_SetPropertyValue(JSContext *ctx, JSValueConst this_obj, JS_FreeValue(ctx, val); return -1; } - ret = JS_SetPropertyInternal(ctx, this_obj, atom, val, flags); + ret = JS_SetPropertyInternal(ctx, this_obj, atom, val, this_obj, flags); JS_FreeAtom(ctx, atom); return ret; } @@ -8808,7 +8737,7 @@ int JS_SetPropertyStr(JSContext *ctx, JSValueConst this_obj, JSAtom atom; int ret; atom = JS_NewAtom(ctx, prop); - ret = JS_SetPropertyInternal(ctx, this_obj, atom, val, JS_PROP_THROW); + ret = JS_SetPropertyInternal(ctx, this_obj, atom, val, this_obj, JS_PROP_THROW); JS_FreeAtom(ctx, atom); return ret; } @@ -9265,7 +9194,7 @@ int JS_DefineProperty(JSContext *ctx, JSValueConst this_obj, } idx = __JS_AtomToUInt32(prop); /* if the typed array is detached, p->u.array.count = 0 */ - if (idx >= typed_array_get_length(ctx, p)) { + if (idx >= p->u.array.count) { typed_array_oob: return JS_ThrowTypeErrorOrFalse(ctx, flags, "out-of-bound index in typed array"); } @@ -9659,7 +9588,7 @@ static int JS_SetGlobalVar(JSContext *ctx, JSAtom prop, JSValue val, flags = JS_PROP_THROW_STRICT; if (is_strict_mode(ctx)) flags |= JS_PROP_NO_ADD; - return JS_SetPropertyInternal(ctx, ctx->global_obj, prop, val, flags); + return JS_SetPropertyInternal(ctx, ctx->global_obj, prop, val, ctx->global_obj, flags); } /* return -1, FALSE or TRUE. return FALSE if not configurable or @@ -9936,9 +9865,10 @@ static int JS_ToBoolFree(JSContext *ctx, JSValue val) JS_FreeValue(ctx, val); return ret; } -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: +#endif { JSBigFloat *p = JS_VALUE_GET_PTR(val); BOOL ret; @@ -9946,6 +9876,7 @@ static int JS_ToBoolFree(JSContext *ctx, JSValue val) JS_FreeValue(ctx, val); return ret; } +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_DECIMAL: { JSBigDecimal *p = JS_VALUE_GET_PTR(val); @@ -10076,15 +10007,16 @@ static double js_strtod(const char *p, int radix, BOOL is_float) #define ATOD_TYPE_MASK (3 << 7) #define ATOD_TYPE_FLOAT64 (0 << 7) #define ATOD_TYPE_BIG_INT (1 << 7) +#ifdef CONFIG_BIGNUM #define ATOD_TYPE_BIG_FLOAT (2 << 7) #define ATOD_TYPE_BIG_DECIMAL (3 << 7) /* assume bigint mode: floats are parsed as integers if no decimal point nor exponent */ #define ATOD_MODE_BIGINT (1 << 9) +#endif /* accept -0x1 */ #define ATOD_ACCEPT_PREFIX_AFTER_SIGN (1 << 10) -#ifdef CONFIG_BIGNUM static JSValue js_string_to_bigint(JSContext *ctx, const char *buf, int radix, int flags, slimb_t *pexponent) { @@ -10100,10 +10032,15 @@ static JSValue js_string_to_bigint(JSContext *ctx, const char *buf, JS_FreeValue(ctx, val); return JS_ThrowOutOfMemory(ctx); } +#ifdef CONFIG_BIGNUM val = JS_CompactBigInt1(ctx, val, (flags & ATOD_MODE_BIGINT) != 0); +#else + val = JS_CompactBigInt1(ctx, val, FALSE); +#endif return val; } +#ifdef CONFIG_BIGNUM static JSValue js_string_to_bigfloat(JSContext *ctx, const char *buf, int radix, int flags, slimb_t *pexponent) { @@ -10149,7 +10086,6 @@ static JSValue js_string_to_bigdecimal(JSContext *ctx, const char *buf, } return val; } - #endif /* return an exception in case of memory error. Return JS_NAN if @@ -10224,8 +10160,11 @@ static JSValue js_atof(JSContext *ctx, const char *str, const char **pp, } else { no_radix_prefix: if (!(flags & ATOD_INT_ONLY) && - (atod_type == ATOD_TYPE_FLOAT64 || - atod_type == ATOD_TYPE_BIG_FLOAT) && + (atod_type == ATOD_TYPE_FLOAT64 +#ifdef CONFIG_BIGNUM + || atod_type == ATOD_TYPE_BIG_FLOAT +#endif + ) && strstart(p, "Infinity", &p)) { #ifdef CONFIG_BIGNUM if (atod_type == ATOD_TYPE_BIG_FLOAT) { @@ -10305,36 +10244,40 @@ static JSValue js_atof(JSContext *ctx, const char *str, const char **pp, } buf[j] = '\0'; -#ifdef CONFIG_BIGNUM if (flags & ATOD_ACCEPT_SUFFIX) { if (*p == 'n') { p++; atod_type = ATOD_TYPE_BIG_INT; - } else if (*p == 'l') { + } else +#ifdef CONFIG_BIGNUM + if (*p == 'l') { p++; atod_type = ATOD_TYPE_BIG_FLOAT; } else if (*p == 'm') { p++; atod_type = ATOD_TYPE_BIG_DECIMAL; - } else { - if (flags & ATOD_MODE_BIGINT) { - if (!is_float) - atod_type = ATOD_TYPE_BIG_INT; - if (has_legacy_octal) - goto fail; - } else { - if (is_float && radix != 10) - goto fail; - } + } else if (flags & ATOD_MODE_BIGINT) { + if (!is_float) + atod_type = ATOD_TYPE_BIG_INT; + if (has_legacy_octal) + goto fail; + } else +#endif + { + if (is_float && radix != 10) + goto fail; } } else { if (atod_type == ATOD_TYPE_FLOAT64) { +#ifdef CONFIG_BIGNUM if (flags & ATOD_MODE_BIGINT) { if (!is_float) atod_type = ATOD_TYPE_BIG_INT; if (has_legacy_octal) goto fail; - } else { + } else +#endif + { if (is_float && radix != 10) goto fail; } @@ -10355,6 +10298,7 @@ static JSValue js_atof(JSContext *ctx, const char *str, const char **pp, goto fail; val = ctx->rt->bigint_ops.from_string(ctx, buf, radix, flags, NULL); break; +#ifdef CONFIG_BIGNUM case ATOD_TYPE_BIG_FLOAT: if (has_legacy_octal) goto fail; @@ -10366,19 +10310,10 @@ static JSValue js_atof(JSContext *ctx, const char *str, const char **pp, goto fail; val = ctx->rt->bigdecimal_ops.from_string(ctx, buf, radix, flags, NULL); break; +#endif default: abort(); } -#else - { - double d; - (void)has_legacy_octal; - if (is_float && radix != 10) - goto fail; - d = js_strtod(buf, radix, is_float); - val = JS_NewFloat64(ctx, d); - } -#endif done: if (buf_allocated) @@ -10416,18 +10351,18 @@ static JSValue JS_ToNumberHintFree(JSContext *ctx, JSValue val, redo: tag = JS_VALUE_GET_NORM_TAG(val); switch(tag) { -#ifdef CONFIG_BIGNUM - case JS_TAG_BIG_DECIMAL: + case JS_TAG_BIG_INT: if (flag != TON_FLAG_NUMERIC) { JS_FreeValue(ctx, val); - return JS_ThrowTypeError(ctx, "cannot convert bigdecimal to number"); + return JS_ThrowTypeError(ctx, "cannot convert bigint to number"); } ret = val; break; - case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM + case JS_TAG_BIG_DECIMAL: if (flag != TON_FLAG_NUMERIC) { JS_FreeValue(ctx, val); - return JS_ThrowTypeError(ctx, "cannot convert bigint to number"); + return JS_ThrowTypeError(ctx, "cannot convert bigdecimal to number"); } ret = val; break; @@ -10529,9 +10464,10 @@ static __exception int __JS_ToFloat64Free(JSContext *ctx, double *pres, case JS_TAG_FLOAT64: d = JS_VALUE_GET_FLOAT64(val); break; -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: +#endif { JSBigFloat *p = JS_VALUE_GET_PTR(val); /* XXX: there can be a double rounding issue with some @@ -10541,7 +10477,6 @@ static __exception int __JS_ToFloat64Free(JSContext *ctx, double *pres, JS_FreeValue(ctx, val); } break; -#endif default: abort(); } @@ -10609,6 +10544,10 @@ static __maybe_unused JSValue JS_ToIntegerFree(JSContext *ctx, JSValue val) BOOL is_nan; a = JS_ToBigFloat(ctx, &a_s, val); + if (!a) { + JS_FreeValue(ctx, val); + return JS_EXCEPTION; + } if (!bf_is_finite(a)) { is_nan = bf_is_nan(a); if (is_nan) @@ -11009,9 +10948,10 @@ static __exception int JS_ToArrayLengthFree(JSContext *ctx, uint32_t *plen, len = v; } break; -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: +#endif { JSBigFloat *p = JS_VALUE_GET_PTR(val); bf_t a; @@ -11026,7 +10966,6 @@ static __exception int JS_ToArrayLengthFree(JSContext *ctx, uint32_t *plen, goto fail; } break; -#endif default: if (JS_TAG_IS_FLOAT64(tag)) { double d; @@ -11130,13 +11069,13 @@ static BOOL JS_NumberIsNegativeOrMinusZero(JSContext *ctx, JSValueConst val) u.d = JS_VALUE_GET_FLOAT64(val); return (u.u64 >> 63); } -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: { JSBigFloat *p = JS_VALUE_GET_PTR(val); /* Note: integer zeros are not necessarily positive */ return p->num.sign && !bf_is_zero(&p->num); } +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: { JSBigFloat *p = JS_VALUE_GET_PTR(val); @@ -11155,8 +11094,6 @@ static BOOL JS_NumberIsNegativeOrMinusZero(JSContext *ctx, JSValueConst val) } } -#ifdef CONFIG_BIGNUM - static JSValue js_bigint_to_string1(JSContext *ctx, JSValueConst val, int radix) { JSValue ret; @@ -11186,6 +11123,8 @@ static JSValue js_bigint_to_string(JSContext *ctx, JSValueConst val) return js_bigint_to_string1(ctx, val, 10); } +#ifdef CONFIG_BIGNUM + static JSValue js_ftoa(JSContext *ctx, JSValueConst val1, int radix, limb_t prec, bf_flags_t flags) { @@ -11198,6 +11137,10 @@ static JSValue js_ftoa(JSContext *ctx, JSValueConst val1, int radix, if (JS_IsException(val)) return val; a = JS_ToBigFloat(ctx, &a_s, val); + if (!a) { + JS_FreeValue(ctx, val); + return JS_EXCEPTION; + } saved_sign = a->sign; if (a->expn == BF_EXP_ZERO) a->sign = 0; @@ -11254,6 +11197,8 @@ static JSValue js_bigdecimal_to_string1(JSContext *ctx, JSValueConst val, int saved_sign; a = JS_ToBigDecimal(ctx, val); + if (!a) + return JS_EXCEPTION; saved_sign = a->sign; if (a->expn == BF_EXP_ZERO) a->sign = 0; @@ -11586,9 +11531,9 @@ JSValue JS_ToStringInternal(JSContext *ctx, JSValueConst val, BOOL is_ToProperty case JS_TAG_FLOAT64: return js_dtoa(ctx, JS_VALUE_GET_FLOAT64(val), 10, 0, JS_DTOA_VAR_FORMAT); -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: return ctx->rt->bigint_ops.to_string(ctx, val); +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: return ctx->rt->bigfloat_ops.to_string(ctx, val); case JS_TAG_BIG_DECIMAL: @@ -11749,10 +11694,8 @@ static __maybe_unused void JS_DumpObject(JSRuntime *rt, JSObject *p) case JS_CLASS_UINT16_ARRAY: case JS_CLASS_INT32_ARRAY: case JS_CLASS_UINT32_ARRAY: -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: case JS_CLASS_BIG_UINT64_ARRAY: -#endif case JS_CLASS_FLOAT32_ARRAY: case JS_CLASS_FLOAT64_ARRAY: { @@ -11879,7 +11822,6 @@ static __maybe_unused void JS_DumpValueShort(JSRuntime *rt, case JS_TAG_FLOAT64: printf("%.14g", JS_VALUE_GET_FLOAT64(val)); break; -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: { JSBigFloat *p = JS_VALUE_GET_PTR(val); @@ -11890,6 +11832,7 @@ static __maybe_unused void JS_DumpValueShort(JSRuntime *rt, bf_realloc(&rt->bf_ctx, str, 0); } break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: { JSBigFloat *p = JS_VALUE_GET_PTR(val); @@ -11991,8 +11934,6 @@ static double js_pow(double a, double b) } } -#ifdef CONFIG_BIGNUM - JSValue JS_NewBigInt64_1(JSContext *ctx, int64_t v) { JSValue val; @@ -12037,70 +11978,6 @@ JSValue JS_NewBigUint64(JSContext *ctx, uint64_t v) return val; } -/* if the returned bigfloat is allocated it is equal to - 'buf'. Otherwise it is a pointer to the bigfloat in 'val'. Return - NULL in case of error. */ -static bf_t *JS_ToBigFloat(JSContext *ctx, bf_t *buf, JSValueConst val) -{ - uint32_t tag; - bf_t *r; - JSBigFloat *p; - - tag = JS_VALUE_GET_NORM_TAG(val); - switch(tag) { - case JS_TAG_INT: - case JS_TAG_BOOL: - case JS_TAG_NULL: - r = buf; - bf_init(ctx->bf_ctx, r); - if (bf_set_si(r, JS_VALUE_GET_INT(val))) - goto fail; - break; - case JS_TAG_FLOAT64: - r = buf; - bf_init(ctx->bf_ctx, r); - if (bf_set_float64(r, JS_VALUE_GET_FLOAT64(val))) { - fail: - bf_delete(r); - return NULL; - } - break; - case JS_TAG_BIG_INT: - case JS_TAG_BIG_FLOAT: - p = JS_VALUE_GET_PTR(val); - r = &p->num; - break; - case JS_TAG_UNDEFINED: - default: - r = buf; - bf_init(ctx->bf_ctx, r); - bf_set_nan(r); - break; - } - return r; -} - -/* return NULL if invalid type */ -static bfdec_t *JS_ToBigDecimal(JSContext *ctx, JSValueConst val) -{ - uint32_t tag; - JSBigDecimal *p; - bfdec_t *r; - - tag = JS_VALUE_GET_NORM_TAG(val); - switch(tag) { - case JS_TAG_BIG_DECIMAL: - p = JS_VALUE_GET_PTR(val); - r = &p->num; - break; - default: - JS_ThrowTypeError(ctx, "bigdecimal expected"); - r = NULL; - break; - } - return r; -} - /* return NaN if bad bigint literal */ static JSValue JS_StringToBigInt(JSContext *ctx, JSValue val) { @@ -12118,8 +11995,10 @@ static JSValue JS_StringToBigInt(JSContext *ctx, JSValue val) val = JS_NewBigInt64(ctx, 0); } else { flags = ATOD_INT_ONLY | ATOD_ACCEPT_BIN_OCT | ATOD_TYPE_BIG_INT; +#ifdef CONFIG_BIGNUM if (is_math_mode(ctx)) flags |= ATOD_MODE_BIGINT; +#endif val = js_atof(ctx, p, &p, 0, flags); p += skip_spaces(p); if (!JS_IsException(val)) { @@ -12180,6 +12059,7 @@ static bf_t *JS_ToBigIntFree(JSContext *ctx, bf_t *buf, JSValue val) p = JS_VALUE_GET_PTR(val); r = &p->num; break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: if (!is_math_mode(ctx)) goto fail; @@ -12192,6 +12072,7 @@ static bf_t *JS_ToBigIntFree(JSContext *ctx, bf_t *buf, JSValue val) bf_rint(r, BF_RNDZ); JS_FreeValue(ctx, val); break; +#endif case JS_TAG_STRING: val = JS_StringToBigIntErr(ctx, val); if (JS_IsException(val)) @@ -12252,7 +12133,7 @@ static void JS_FreeBigInt(JSContext *ctx, bf_t *a, bf_t *buf) } else { JSBigFloat *p = (JSBigFloat *)((uint8_t *)a - offsetof(JSBigFloat, num)); - JS_FreeValue(ctx, JS_MKPTR(JS_TAG_BIG_FLOAT, p)); + JS_FreeValue(ctx, JS_MKPTR(JS_TAG_BIG_INT, p)); } } @@ -12287,6 +12168,129 @@ static JSBigFloat *js_new_bf(JSContext *ctx) return p; } +static JSValue JS_NewBigInt(JSContext *ctx) +{ + JSBigFloat *p; + p = js_malloc(ctx, sizeof(*p)); + if (!p) + return JS_EXCEPTION; + p->header.ref_count = 1; + bf_init(ctx->bf_ctx, &p->num); + return JS_MKPTR(JS_TAG_BIG_INT, p); +} + +static JSValue JS_CompactBigInt1(JSContext *ctx, JSValue val, + BOOL convert_to_safe_integer) +{ + int64_t v; + bf_t *a; + + if (JS_VALUE_GET_TAG(val) != JS_TAG_BIG_INT) + return val; /* fail safe */ + a = JS_GetBigInt(val); + if (convert_to_safe_integer && bf_get_int64(&v, a, 0) == 0 && + v >= -MAX_SAFE_INTEGER && v <= MAX_SAFE_INTEGER) { + JS_FreeValue(ctx, val); + return JS_NewInt64(ctx, v); + } else if (a->expn == BF_EXP_ZERO && a->sign) { + JSBigFloat *p = JS_VALUE_GET_PTR(val); + assert(p->header.ref_count == 1); + a->sign = 0; + } + return val; +} + +/* Convert the big int to a safe integer if in math mode. normalize + the zero representation. Could also be used to convert the bigint + to a short bigint value. The reference count of the value must be + 1. Cannot fail */ +static JSValue JS_CompactBigInt(JSContext *ctx, JSValue val) +{ + return JS_CompactBigInt1(ctx, val, is_math_mode(ctx)); +} + +static JSValue throw_bf_exception(JSContext *ctx, int status) +{ + const char *str; + if (status & BF_ST_MEM_ERROR) + return JS_ThrowOutOfMemory(ctx); + if (status & BF_ST_DIVIDE_ZERO) { + str = "division by zero"; + } else if (status & BF_ST_INVALID_OP) { + str = "invalid operation"; + } else { + str = "integer overflow"; + } + return JS_ThrowRangeError(ctx, "%s", str); +} + +/* if the returned bigfloat is allocated it is equal to + 'buf'. Otherwise it is a pointer to the bigfloat in 'val'. Return + NULL in case of error. */ +static bf_t *JS_ToBigFloat(JSContext *ctx, bf_t *buf, JSValueConst val) +{ + uint32_t tag; + bf_t *r; + JSBigFloat *p; + + tag = JS_VALUE_GET_NORM_TAG(val); + switch(tag) { + case JS_TAG_INT: + case JS_TAG_BOOL: + case JS_TAG_NULL: + r = buf; + bf_init(ctx->bf_ctx, r); + if (bf_set_si(r, JS_VALUE_GET_INT(val))) + goto fail; + break; + case JS_TAG_FLOAT64: + r = buf; + bf_init(ctx->bf_ctx, r); + if (bf_set_float64(r, JS_VALUE_GET_FLOAT64(val))) { + fail: + bf_delete(r); + return NULL; + } + break; + case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM + case JS_TAG_BIG_FLOAT: +#endif + p = JS_VALUE_GET_PTR(val); + r = &p->num; + break; + case JS_TAG_UNDEFINED: + default: + r = buf; + bf_init(ctx->bf_ctx, r); + bf_set_nan(r); + break; + } + return r; +} + +#ifdef CONFIG_BIGNUM +/* return NULL if invalid type */ +static bfdec_t *JS_ToBigDecimal(JSContext *ctx, JSValueConst val) +{ + uint32_t tag; + JSBigDecimal *p; + bfdec_t *r; + + tag = JS_VALUE_GET_NORM_TAG(val); + switch(tag) { + case JS_TAG_BIG_DECIMAL: + p = JS_VALUE_GET_PTR(val); + r = &p->num; + break; + default: + JS_ThrowTypeError(ctx, "bigdecimal expected"); + r = NULL; + break; + } + return r; +} + static JSValue JS_NewBigFloat(JSContext *ctx) { JSBigFloat *p; @@ -12309,47 +12313,6 @@ static JSValue JS_NewBigDecimal(JSContext *ctx) return JS_MKPTR(JS_TAG_BIG_DECIMAL, p); } -static JSValue JS_NewBigInt(JSContext *ctx) -{ - JSBigFloat *p; - p = js_malloc(ctx, sizeof(*p)); - if (!p) - return JS_EXCEPTION; - p->header.ref_count = 1; - bf_init(ctx->bf_ctx, &p->num); - return JS_MKPTR(JS_TAG_BIG_INT, p); -} - -static JSValue JS_CompactBigInt1(JSContext *ctx, JSValue val, - BOOL convert_to_safe_integer) -{ - int64_t v; - bf_t *a; - - if (JS_VALUE_GET_TAG(val) != JS_TAG_BIG_INT) - return val; /* fail safe */ - a = JS_GetBigInt(val); - if (convert_to_safe_integer && bf_get_int64(&v, a, 0) == 0 && - v >= -MAX_SAFE_INTEGER && v <= MAX_SAFE_INTEGER) { - JS_FreeValue(ctx, val); - return JS_NewInt64(ctx, v); - } else if (a->expn == BF_EXP_ZERO && a->sign) { - JSBigFloat *p = JS_VALUE_GET_PTR(val); - assert(p->header.ref_count == 1); - a->sign = 0; - } - return val; -} - -/* Convert the big int to a safe integer if in math mode. normalize - the zero representation. Could also be used to convert the bigint - to a short bigint value. The reference count of the value must be - 1. Cannot fail */ -static JSValue JS_CompactBigInt(JSContext *ctx, JSValue val) -{ - return JS_CompactBigInt1(ctx, val, is_math_mode(ctx)); -} - /* must be kept in sync with JSOverloadableOperatorEnum */ /* XXX: use atoms ? */ static const char js_overloadable_operator_names[JS_OVOP_COUNT][4] = { @@ -12673,46 +12636,37 @@ static __exception int js_call_unary_op_fallback(JSContext *ctx, return -1; } -static JSValue throw_bf_exception(JSContext *ctx, int status) -{ - const char *str; - if (status & BF_ST_MEM_ERROR) - return JS_ThrowOutOfMemory(ctx); - if (status & BF_ST_DIVIDE_ZERO) { - str = "division by zero"; - } else if (status & BF_ST_INVALID_OP) { - str = "invalid operation"; - } else { - str = "integer overflow"; - } - return JS_ThrowRangeError(ctx, "%s", str); -} - -static int js_unary_arith_bigint(JSContext *ctx, - JSValue *pres, OPCodeEnum op, JSValue op1) +static int js_unary_arith_bigfloat(JSContext *ctx, + JSValue *pres, OPCodeEnum op, JSValue op1) { bf_t a_s, *r, *a; int ret, v; JSValue res; if (op == OP_plus && !is_math_mode(ctx)) { - JS_ThrowTypeError(ctx, "bigint argument with unary +"); + JS_ThrowTypeError(ctx, "bigfloat argument with unary +"); JS_FreeValue(ctx, op1); return -1; } - res = JS_NewBigInt(ctx); + + res = JS_NewBigFloat(ctx); if (JS_IsException(res)) { JS_FreeValue(ctx, op1); return -1; } - r = JS_GetBigInt(res); - a = JS_ToBigInt(ctx, &a_s, op1); + r = JS_GetBigFloat(res); + a = JS_ToBigFloat(ctx, &a_s, op1); + if (!a) { + JS_FreeValue(ctx, res); + JS_FreeValue(ctx, op1); + return -1; + } ret = 0; switch(op) { case OP_inc: case OP_dec: v = 2 * (op - OP_dec) - 1; - ret = bf_add_si(r, a, v, BF_PREC_INF, BF_RNDZ); + ret = bf_add_si(r, a, v, ctx->fp_env.prec, ctx->fp_env.flags); break; case OP_plus: ret = bf_set(r, a); @@ -12721,66 +12675,65 @@ static int js_unary_arith_bigint(JSContext *ctx, ret = bf_set(r, a); bf_neg(r); break; - case OP_not: - ret = bf_add_si(r, a, 1, BF_PREC_INF, BF_RNDZ); - bf_neg(r); - break; default: abort(); } - JS_FreeBigInt(ctx, a, &a_s); + if (a == &a_s) + bf_delete(a); JS_FreeValue(ctx, op1); - if (unlikely(ret)) { + if (unlikely(ret & BF_ST_MEM_ERROR)) { JS_FreeValue(ctx, res); throw_bf_exception(ctx, ret); return -1; } - res = JS_CompactBigInt(ctx, res); *pres = res; return 0; } -static int js_unary_arith_bigfloat(JSContext *ctx, - JSValue *pres, OPCodeEnum op, JSValue op1) +static int js_unary_arith_bigdecimal(JSContext *ctx, + JSValue *pres, OPCodeEnum op, JSValue op1) { - bf_t a_s, *r, *a; + bfdec_t *r, *a; int ret, v; JSValue res; if (op == OP_plus && !is_math_mode(ctx)) { - JS_ThrowTypeError(ctx, "bigfloat argument with unary +"); + JS_ThrowTypeError(ctx, "bigdecimal argument with unary +"); JS_FreeValue(ctx, op1); return -1; } - res = JS_NewBigFloat(ctx); + res = JS_NewBigDecimal(ctx); if (JS_IsException(res)) { JS_FreeValue(ctx, op1); return -1; } - r = JS_GetBigFloat(res); - a = JS_ToBigFloat(ctx, &a_s, op1); + r = JS_GetBigDecimal(res); + a = JS_ToBigDecimal(ctx, op1); + if (!a) { + JS_FreeValue(ctx, res); + JS_FreeValue(ctx, op1); + return -1; + } ret = 0; switch(op) { case OP_inc: case OP_dec: v = 2 * (op - OP_dec) - 1; - ret = bf_add_si(r, a, v, ctx->fp_env.prec, ctx->fp_env.flags); + ret = bfdec_add_si(r, a, v, BF_PREC_INF, BF_RNDZ); break; case OP_plus: - ret = bf_set(r, a); + ret = bfdec_set(r, a); break; case OP_neg: - ret = bf_set(r, a); - bf_neg(r); + ret = bfdec_set(r, a); + bfdec_neg(r); break; default: abort(); } - if (a == &a_s) - bf_delete(a); JS_FreeValue(ctx, op1); - if (unlikely(ret & BF_ST_MEM_ERROR)) { + if (unlikely(ret)) { JS_FreeValue(ctx, res); throw_bf_exception(ctx, ret); return -1; @@ -12789,49 +12742,61 @@ static int js_unary_arith_bigfloat(JSContext *ctx, return 0; } -static int js_unary_arith_bigdecimal(JSContext *ctx, - JSValue *pres, OPCodeEnum op, JSValue op1) +#endif /* CONFIG_BIGNUM */ + +static int js_unary_arith_bigint(JSContext *ctx, + JSValue *pres, OPCodeEnum op, JSValue op1) { - bfdec_t *r, *a; + bf_t a_s, *r, *a; int ret, v; JSValue res; if (op == OP_plus && !is_math_mode(ctx)) { - JS_ThrowTypeError(ctx, "bigdecimal argument with unary +"); + JS_ThrowTypeError(ctx, "bigint argument with unary +"); JS_FreeValue(ctx, op1); return -1; } - - res = JS_NewBigDecimal(ctx); + res = JS_NewBigInt(ctx); if (JS_IsException(res)) { JS_FreeValue(ctx, op1); return -1; } - r = JS_GetBigDecimal(res); - a = JS_ToBigDecimal(ctx, op1); + r = JS_GetBigInt(res); + a = JS_ToBigInt(ctx, &a_s, op1); + if (!a) { + JS_FreeValue(ctx, res); + JS_FreeValue(ctx, op1); + return -1; + } ret = 0; switch(op) { case OP_inc: case OP_dec: v = 2 * (op - OP_dec) - 1; - ret = bfdec_add_si(r, a, v, BF_PREC_INF, BF_RNDZ); + ret = bf_add_si(r, a, v, BF_PREC_INF, BF_RNDZ); break; case OP_plus: - ret = bfdec_set(r, a); + ret = bf_set(r, a); break; case OP_neg: - ret = bfdec_set(r, a); - bfdec_neg(r); + ret = bf_set(r, a); + bf_neg(r); + break; + case OP_not: + ret = bf_add_si(r, a, 1, BF_PREC_INF, BF_RNDZ); + bf_neg(r); break; default: abort(); } + JS_FreeBigInt(ctx, a, &a_s); JS_FreeValue(ctx, op1); if (unlikely(ret)) { JS_FreeValue(ctx, res); throw_bf_exception(ctx, ret); return -1; } + res = JS_CompactBigInt(ctx, res); *pres = res; return 0; } @@ -12840,16 +12805,18 @@ static no_inline __exception int js_unary_arith_slow(JSContext *ctx, JSValue *sp, OPCodeEnum op) { - JSValue op1, val; - int v, ret; + JSValue op1; + int v; uint32_t tag; op1 = sp[-1]; /* fast path for float64 */ if (JS_TAG_IS_FLOAT64(JS_VALUE_GET_TAG(op1))) goto handle_float64; +#ifdef CONFIG_BIGNUM if (JS_IsObject(op1)) { - ret = js_call_unary_op_fallback(ctx, &val, op1, op); + JSValue val; + int ret = js_call_unary_op_fallback(ctx, &val, op1, op); if (ret < 0) return -1; if (ret) { @@ -12858,7 +12825,7 @@ static no_inline __exception int js_unary_arith_slow(JSContext *ctx, return 0; } } - +#endif op1 = JS_ToNumericFree(ctx, op1); if (JS_IsException(op1)) goto exception; @@ -12895,6 +12862,7 @@ static no_inline __exception int js_unary_arith_slow(JSContext *ctx, if (ctx->rt->bigint_ops.unary_arith(ctx, sp - 1, op, op1)) goto exception; break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: if (ctx->rt->bigfloat_ops.unary_arith(ctx, sp - 1, op, op1)) goto exception; @@ -12903,6 +12871,7 @@ static no_inline __exception int js_unary_arith_slow(JSContext *ctx, if (ctx->rt->bigdecimal_ops.unary_arith(ctx, sp - 1, op, op1)) goto exception; break; +#endif default: handle_float64: { @@ -12953,12 +12922,13 @@ static __exception int js_post_inc_slow(JSContext *ctx, static no_inline int js_not_slow(JSContext *ctx, JSValue *sp) { - JSValue op1, val; - int ret; + JSValue op1; op1 = sp[-1]; +#ifdef CONFIG_BIGNUM if (JS_IsObject(op1)) { - ret = js_call_unary_op_fallback(ctx, &val, op1, OP_not); + JSValue val; + int ret = js_call_unary_op_fallback(ctx, &val, op1, OP_not); if (ret < 0) return -1; if (ret) { @@ -12967,7 +12937,7 @@ static no_inline int js_not_slow(JSContext *ctx, JSValue *sp) return 0; } } - +#endif op1 = JS_ToNumericFree(ctx, op1); if (JS_IsException(op1)) goto exception; @@ -12986,67 +12956,6 @@ static no_inline int js_not_slow(JSContext *ctx, JSValue *sp) return -1; } -static int js_binary_arith_bigfloat(JSContext *ctx, OPCodeEnum op, - JSValue *pres, JSValue op1, JSValue op2) -{ - bf_t a_s, b_s, *r, *a, *b; - int ret; - JSValue res; - - res = JS_NewBigFloat(ctx); - if (JS_IsException(res)) { - JS_FreeValue(ctx, op1); - JS_FreeValue(ctx, op2); - return -1; - } - r = JS_GetBigFloat(res); - a = JS_ToBigFloat(ctx, &a_s, op1); - b = JS_ToBigFloat(ctx, &b_s, op2); - bf_init(ctx->bf_ctx, r); - switch(op) { - case OP_add: - ret = bf_add(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags); - break; - case OP_sub: - ret = bf_sub(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags); - break; - case OP_mul: - ret = bf_mul(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags); - break; - case OP_div: - ret = bf_div(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags); - break; - case OP_math_mod: - /* Euclidian remainder */ - ret = bf_rem(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags, - BF_DIVREM_EUCLIDIAN); - break; - case OP_mod: - ret = bf_rem(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags, - BF_RNDZ); - break; - case OP_pow: - ret = bf_pow(r, a, b, ctx->fp_env.prec, - ctx->fp_env.flags | BF_POW_JS_QUIRKS); - break; - default: - abort(); - } - if (a == &a_s) - bf_delete(a); - if (b == &b_s) - bf_delete(b); - JS_FreeValue(ctx, op1); - JS_FreeValue(ctx, op2); - if (unlikely(ret & BF_ST_MEM_ERROR)) { - JS_FreeValue(ctx, res); - throw_bf_exception(ctx, ret); - return -1; - } - *pres = res; - return 0; -} - static int js_binary_arith_bigint(JSContext *ctx, OPCodeEnum op, JSValue *pres, JSValue op1, JSValue op2) { @@ -13088,11 +12997,13 @@ static int js_binary_arith_bigint(JSContext *ctx, OPCodeEnum op, goto math_mode_div_pow; } break; +#ifdef CONFIG_BIGNUM case OP_math_mod: /* Euclidian remainder */ ret = bf_rem(r, a, b, BF_PREC_INF, BF_RNDZ, BF_DIVREM_EUCLIDIAN) & BF_ST_INVALID_OP; break; +#endif case OP_mod: ret = bf_rem(r, a, b, BF_PREC_INF, BF_RNDZ, BF_RNDZ) & BF_ST_INVALID_OP; @@ -13103,6 +13014,7 @@ static int js_binary_arith_bigint(JSContext *ctx, OPCodeEnum op, ret = BF_ST_INVALID_OP; } else { math_mode_div_pow: +#ifdef CONFIG_BIGNUM JS_FreeValue(ctx, res); ret = js_call_binary_op_simple(ctx, &res, ctx->class_proto[JS_CLASS_BIG_INT], op1, op2, op); if (ret != 0) { @@ -13143,6 +13055,9 @@ static int js_binary_arith_bigint(JSContext *ctx, OPCodeEnum op, } *pres = res; return 0; +#else + abort(); +#endif } } else { ret = bf_pow(r, a, b, BF_PREC_INF, BF_RNDZ | BF_POW_JS_QUIRKS); @@ -13202,6 +13117,79 @@ static int js_binary_arith_bigint(JSContext *ctx, OPCodeEnum op, return -1; } +#ifdef CONFIG_BIGNUM +static int js_binary_arith_bigfloat(JSContext *ctx, OPCodeEnum op, + JSValue *pres, JSValue op1, JSValue op2) +{ + bf_t a_s, b_s, *r, *a, *b; + int ret; + JSValue res; + + res = JS_NewBigFloat(ctx); + if (JS_IsException(res)) + goto fail; + r = JS_GetBigFloat(res); + a = JS_ToBigFloat(ctx, &a_s, op1); + if (!a) { + JS_FreeValue(ctx, res); + goto fail; + } + b = JS_ToBigFloat(ctx, &b_s, op2); + if (!b) { + if (a == &a_s) + bf_delete(a); + JS_FreeValue(ctx, res); + goto fail; + } + bf_init(ctx->bf_ctx, r); + switch(op) { + case OP_add: + ret = bf_add(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags); + break; + case OP_sub: + ret = bf_sub(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags); + break; + case OP_mul: + ret = bf_mul(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags); + break; + case OP_div: + ret = bf_div(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags); + break; + case OP_math_mod: + /* Euclidian remainder */ + ret = bf_rem(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags, + BF_DIVREM_EUCLIDIAN); + break; + case OP_mod: + ret = bf_rem(r, a, b, ctx->fp_env.prec, ctx->fp_env.flags, + BF_RNDZ); + break; + case OP_pow: + ret = bf_pow(r, a, b, ctx->fp_env.prec, + ctx->fp_env.flags | BF_POW_JS_QUIRKS); + break; + default: + abort(); + } + if (a == &a_s) + bf_delete(a); + if (b == &b_s) + bf_delete(b); + JS_FreeValue(ctx, op1); + JS_FreeValue(ctx, op2); + if (unlikely(ret & BF_ST_MEM_ERROR)) { + JS_FreeValue(ctx, res); + throw_bf_exception(ctx, ret); + return -1; + } + *pres = res; + return 0; + fail: + JS_FreeValue(ctx, op1); + JS_FreeValue(ctx, op2); + return -1; +} + /* b must be a positive integer */ static int js_bfdec_pow(bfdec_t *r, const bfdec_t *a, const bfdec_t *b) { @@ -13288,13 +13276,13 @@ static int js_binary_arith_bigdecimal(JSContext *ctx, OPCodeEnum op, JS_FreeValue(ctx, op2); return -1; } +#endif /* CONFIG_BIGNUM */ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *sp, OPCodeEnum op) { - JSValue op1, op2, res; + JSValue op1, op2; uint32_t tag1, tag2; - int ret; double d1, d2; op1 = sp[-2]; @@ -13308,12 +13296,14 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s goto handle_float64; } +#ifdef CONFIG_BIGNUM /* try to call an overloaded operator */ if ((tag1 == JS_TAG_OBJECT && (tag2 != JS_TAG_NULL && tag2 != JS_TAG_UNDEFINED)) || (tag2 == JS_TAG_OBJECT && (tag1 != JS_TAG_NULL && tag1 != JS_TAG_UNDEFINED))) { - ret = js_call_binary_op_fallback(ctx, &res, op1, op2, op, TRUE, 0); + JSValue res; + int ret = js_call_binary_op_fallback(ctx, &res, op1, op2, op, TRUE, 0); if (ret != 0) { JS_FreeValue(ctx, op1); JS_FreeValue(ctx, op2); @@ -13325,6 +13315,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s } } } +#endif op1 = JS_ToNumericFree(ctx, op1); if (JS_IsException(op1)) { @@ -13363,6 +13354,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s goto handle_bigint; sp[-2] = __JS_NewFloat64(ctx, (double)v1 / (double)v2); return 0; +#ifdef CONFIG_BIGNUM case OP_math_mod: if (unlikely(v2 == 0)) { throw_bf_exception(ctx, BF_ST_DIVIDE_ZERO); @@ -13376,6 +13368,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s v += v2; } break; +#endif case OP_mod: if (v1 < 0 || v2 <= 0) { sp[-2] = JS_NewFloat64(ctx, fmod(v1, v2)); @@ -13396,13 +13389,17 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s abort(); } sp[-2] = JS_NewInt64(ctx, v); - } else if (tag1 == JS_TAG_BIG_DECIMAL || tag2 == JS_TAG_BIG_DECIMAL) { + } else +#ifdef CONFIG_BIGNUM + if (tag1 == JS_TAG_BIG_DECIMAL || tag2 == JS_TAG_BIG_DECIMAL) { if (ctx->rt->bigdecimal_ops.binary_arith(ctx, op, sp - 2, op1, op2)) goto exception; } else if (tag1 == JS_TAG_BIG_FLOAT || tag2 == JS_TAG_BIG_FLOAT) { if (ctx->rt->bigfloat_ops.binary_arith(ctx, op, sp - 2, op1, op2)) goto exception; - } else if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { + } else +#endif + if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { handle_bigint: if (ctx->rt->bigint_ops.binary_arith(ctx, op, sp - 2, op1, op2)) goto exception; @@ -13431,6 +13428,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s case OP_mod: dr = fmod(d1, d2); break; +#ifdef CONFIG_BIGNUM case OP_math_mod: d2 = fabs(d2); dr = fmod(d1, d2); @@ -13438,6 +13436,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s if (dr < 0) dr += d2; break; +#endif case OP_pow: dr = js_pow(d1, d2); break; @@ -13455,9 +13454,8 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s static no_inline __exception int js_add_slow(JSContext *ctx, JSValue *sp) { - JSValue op1, op2, res; + JSValue op1, op2; uint32_t tag1, tag2; - int ret; op1 = sp[-2]; op2 = sp[-1]; @@ -13474,6 +13472,7 @@ static no_inline __exception int js_add_slow(JSContext *ctx, JSValue *sp) } if (tag1 == JS_TAG_OBJECT || tag2 == JS_TAG_OBJECT) { +#ifdef CONFIG_BIGNUM /* try to call an overloaded operator */ if ((tag1 == JS_TAG_OBJECT && (tag2 != JS_TAG_NULL && tag2 != JS_TAG_UNDEFINED && @@ -13481,8 +13480,9 @@ static no_inline __exception int js_add_slow(JSContext *ctx, JSValue *sp) (tag2 == JS_TAG_OBJECT && (tag1 != JS_TAG_NULL && tag1 != JS_TAG_UNDEFINED && tag1 != JS_TAG_STRING))) { - ret = js_call_binary_op_fallback(ctx, &res, op1, op2, OP_add, - FALSE, HINT_NONE); + JSValue res; + int ret = js_call_binary_op_fallback(ctx, &res, op1, op2, OP_add, + FALSE, HINT_NONE); if (ret != 0) { JS_FreeValue(ctx, op1); JS_FreeValue(ctx, op2); @@ -13494,7 +13494,7 @@ static no_inline __exception int js_add_slow(JSContext *ctx, JSValue *sp) } } } - +#endif op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); if (JS_IsException(op1)) { JS_FreeValue(ctx, op2); @@ -13537,13 +13537,17 @@ static no_inline __exception int js_add_slow(JSContext *ctx, JSValue *sp) v2 = JS_VALUE_GET_INT(op2); v = (int64_t)v1 + (int64_t)v2; sp[-2] = JS_NewInt64(ctx, v); - } else if (tag1 == JS_TAG_BIG_DECIMAL || tag2 == JS_TAG_BIG_DECIMAL) { + } else +#ifdef CONFIG_BIGNUM + if (tag1 == JS_TAG_BIG_DECIMAL || tag2 == JS_TAG_BIG_DECIMAL) { if (ctx->rt->bigdecimal_ops.binary_arith(ctx, OP_add, sp - 2, op1, op2)) goto exception; } else if (tag1 == JS_TAG_BIG_FLOAT || tag2 == JS_TAG_BIG_FLOAT) { if (ctx->rt->bigfloat_ops.binary_arith(ctx, OP_add, sp - 2, op1, op2)) goto exception; - } else if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { + } else +#endif + if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { handle_bigint: if (ctx->rt->bigint_ops.binary_arith(ctx, OP_add, sp - 2, op1, op2)) goto exception; @@ -13571,8 +13575,7 @@ static no_inline __exception int js_binary_logic_slow(JSContext *ctx, JSValue *sp, OPCodeEnum op) { - JSValue op1, op2, res; - int ret; + JSValue op1, op2; uint32_t tag1, tag2; uint32_t v1, v2, r; @@ -13581,12 +13584,14 @@ static no_inline __exception int js_binary_logic_slow(JSContext *ctx, tag1 = JS_VALUE_GET_NORM_TAG(op1); tag2 = JS_VALUE_GET_NORM_TAG(op2); +#ifdef CONFIG_BIGNUM /* try to call an overloaded operator */ if ((tag1 == JS_TAG_OBJECT && (tag2 != JS_TAG_NULL && tag2 != JS_TAG_UNDEFINED)) || (tag2 == JS_TAG_OBJECT && (tag1 != JS_TAG_NULL && tag1 != JS_TAG_UNDEFINED))) { - ret = js_call_binary_op_fallback(ctx, &res, op1, op2, op, TRUE, 0); + JSValue res; + int ret = js_call_binary_op_fallback(ctx, &res, op1, op2, op, TRUE, 0); if (ret != 0) { JS_FreeValue(ctx, op1); JS_FreeValue(ctx, op2); @@ -13598,6 +13603,7 @@ static no_inline __exception int js_binary_logic_slow(JSContext *ctx, } } } +#endif op1 = JS_ToNumericFree(ctx, op1); if (JS_IsException(op1)) { @@ -13708,6 +13714,7 @@ static int js_compare_bigfloat(JSContext *ctx, OPCodeEnum op, return res; } +#ifdef CONFIG_BIGNUM static int js_compare_bigdecimal(JSContext *ctx, OPCodeEnum op, JSValue op1, JSValue op2) { @@ -13727,8 +13734,8 @@ static int js_compare_bigdecimal(JSContext *ctx, OPCodeEnum op, JS_FreeValue(ctx, op1); return -1; } - a = JS_ToBigDecimal(ctx, op1); - b = JS_ToBigDecimal(ctx, op2); + a = JS_ToBigDecimal(ctx, op1); /* cannot fail */ + b = JS_ToBigDecimal(ctx, op2); /* cannot fail */ switch(op) { case OP_lt: @@ -13753,11 +13760,12 @@ static int js_compare_bigdecimal(JSContext *ctx, OPCodeEnum op, JS_FreeValue(ctx, op2); return res; } +#endif /* !CONFIG_BIGNUM */ static no_inline int js_relational_slow(JSContext *ctx, JSValue *sp, OPCodeEnum op) { - JSValue op1, op2, ret; + JSValue op1, op2; int res; uint32_t tag1, tag2; @@ -13765,11 +13773,13 @@ static no_inline int js_relational_slow(JSContext *ctx, JSValue *sp, op2 = sp[-1]; tag1 = JS_VALUE_GET_NORM_TAG(op1); tag2 = JS_VALUE_GET_NORM_TAG(op2); +#ifdef CONFIG_BIGNUM /* try to call an overloaded operator */ if ((tag1 == JS_TAG_OBJECT && (tag2 != JS_TAG_NULL && tag2 != JS_TAG_UNDEFINED)) || (tag2 == JS_TAG_OBJECT && (tag1 != JS_TAG_NULL && tag1 != JS_TAG_UNDEFINED))) { + JSValue ret; res = js_call_binary_op_fallback(ctx, &ret, op1, op2, op, FALSE, HINT_NUMBER); if (res != 0) { @@ -13783,6 +13793,7 @@ static no_inline int js_relational_slow(JSContext *ctx, JSValue *sp, } } } +#endif op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NUMBER); if (JS_IsException(op1)) { JS_FreeValue(ctx, op2); @@ -13857,6 +13868,7 @@ static no_inline int js_relational_slow(JSContext *ctx, JSValue *sp, tag1 = JS_VALUE_GET_NORM_TAG(op1); tag2 = JS_VALUE_GET_NORM_TAG(op2); +#ifdef CONFIG_BIGNUM if (tag1 == JS_TAG_BIG_DECIMAL || tag2 == JS_TAG_BIG_DECIMAL) { res = ctx->rt->bigdecimal_ops.compare(ctx, op, op1, op2); if (res < 0) @@ -13865,7 +13877,9 @@ static no_inline int js_relational_slow(JSContext *ctx, JSValue *sp, res = ctx->rt->bigfloat_ops.compare(ctx, op, op1, op2); if (res < 0) goto exception; - } else if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { + } else +#endif + if (tag1 == JS_TAG_BIG_INT || tag2 == JS_TAG_BIG_INT) { res = ctx->rt->bigint_ops.compare(ctx, op, op1, op2); if (res < 0) goto exception; @@ -13913,14 +13927,20 @@ static no_inline int js_relational_slow(JSContext *ctx, JSValue *sp, static BOOL tag_is_number(uint32_t tag) { return (tag == JS_TAG_INT || tag == JS_TAG_BIG_INT || - tag == JS_TAG_FLOAT64 || tag == JS_TAG_BIG_FLOAT || - tag == JS_TAG_BIG_DECIMAL); + tag == JS_TAG_FLOAT64 +#ifdef CONFIG_BIGNUM + || tag == JS_TAG_BIG_FLOAT || tag == JS_TAG_BIG_DECIMAL +#endif + ); } static no_inline __exception int js_eq_slow(JSContext *ctx, JSValue *sp, BOOL is_neq) { - JSValue op1, op2, ret; + JSValue op1, op2; +#ifdef CONFIG_BIGNUM + JSValue ret; +#endif int res; uint32_t tag1, tag2; @@ -13948,7 +13968,9 @@ static no_inline __exception int js_eq_slow(JSContext *ctx, JSValue *sp, d2 = JS_VALUE_GET_INT(op2); } res = (d1 == d2); - } else if (tag1 == JS_TAG_BIG_DECIMAL || tag2 == JS_TAG_BIG_DECIMAL) { + } else +#ifdef CONFIG_BIGNUM + if (tag1 == JS_TAG_BIG_DECIMAL || tag2 == JS_TAG_BIG_DECIMAL) { res = ctx->rt->bigdecimal_ops.compare(ctx, OP_eq, op1, op2); if (res < 0) goto exception; @@ -13956,12 +13978,15 @@ static no_inline __exception int js_eq_slow(JSContext *ctx, JSValue *sp, res = ctx->rt->bigfloat_ops.compare(ctx, OP_eq, op1, op2); if (res < 0) goto exception; - } else { + } else +#endif + { res = ctx->rt->bigint_ops.compare(ctx, OP_eq, op1, op2); if (res < 0) goto exception; } } else if (tag1 == tag2) { +#ifdef CONFIG_BIGNUM if (tag1 == JS_TAG_OBJECT) { /* try the fallback operator */ res = js_call_binary_op_fallback(ctx, &ret, op1, op2, @@ -13978,6 +14003,7 @@ static no_inline __exception int js_eq_slow(JSContext *ctx, JSValue *sp, } } } +#endif res = js_strict_eq2(ctx, op1, op2, JS_EQ_STRICT); } else if ((tag1 == JS_TAG_NULL && tag2 == JS_TAG_UNDEFINED) || (tag2 == JS_TAG_NULL && tag1 == JS_TAG_UNDEFINED)) { @@ -14025,7 +14051,7 @@ static no_inline __exception int js_eq_slow(JSContext *ctx, JSValue *sp, (tag_is_number(tag2) || tag2 == JS_TAG_STRING || tag2 == JS_TAG_SYMBOL)) || (tag2 == JS_TAG_OBJECT && (tag_is_number(tag1) || tag1 == JS_TAG_STRING || tag1 == JS_TAG_SYMBOL))) { - +#ifdef CONFIG_BIGNUM /* try the fallback operator */ res = js_call_binary_op_fallback(ctx, &ret, op1, op2, is_neq ? OP_neq : OP_eq, @@ -14040,7 +14066,7 @@ static no_inline __exception int js_eq_slow(JSContext *ctx, JSValue *sp, return 0; } } - +#endif op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); if (JS_IsException(op1)) { JS_FreeValue(ctx, op2); @@ -14112,6 +14138,7 @@ static no_inline int js_shr_slow(JSContext *ctx, JSValue *sp) return -1; } +#ifdef CONFIG_BIGNUM static JSValue js_mul_pow10_to_float64(JSContext *ctx, const bf_t *a, int64_t exponent) { @@ -14146,8 +14173,10 @@ static no_inline int js_mul_pow10(JSContext *ctx, JSValue *sp) op1 = sp[-2]; op2 = sp[-1]; a = JS_ToBigFloat(ctx, &a_s, op1); - if (!a) + if (!a) { + JS_FreeValue(ctx, res); return -1; + } if (JS_IsBigInt(ctx, op2)) { ret = JS_ToBigInt64(ctx, &e, op2); } else { @@ -14168,395 +14197,7 @@ static no_inline int js_mul_pow10(JSContext *ctx, JSValue *sp) sp[-2] = res; return 0; } - -#else /* !CONFIG_BIGNUM */ - -static JSValue JS_ThrowUnsupportedBigint(JSContext *ctx) -{ - return JS_ThrowTypeError(ctx, "bigint is not supported"); -} - -JSValue JS_NewBigInt64(JSContext *ctx, int64_t v) -{ - return JS_ThrowUnsupportedBigint(ctx); -} - -JSValue JS_NewBigUint64(JSContext *ctx, uint64_t v) -{ - return JS_ThrowUnsupportedBigint(ctx); -} - -int JS_ToBigInt64(JSContext *ctx, int64_t *pres, JSValueConst val) -{ - JS_ThrowUnsupportedBigint(ctx); - *pres = 0; - return -1; -} - -static no_inline __exception int js_unary_arith_slow(JSContext *ctx, - JSValue *sp, - OPCodeEnum op) -{ - JSValue op1; - double d; - - op1 = sp[-1]; - if (unlikely(JS_ToFloat64Free(ctx, &d, op1))) { - sp[-1] = JS_UNDEFINED; - return -1; - } - switch(op) { - case OP_inc: - d++; - break; - case OP_dec: - d--; - break; - case OP_plus: - break; - case OP_neg: - d = -d; - break; - default: - abort(); - } - sp[-1] = JS_NewFloat64(ctx, d); - return 0; -} - -/* specific case necessary for correct return value semantics */ -static __exception int js_post_inc_slow(JSContext *ctx, - JSValue *sp, OPCodeEnum op) -{ - JSValue op1; - double d, r; - - op1 = sp[-1]; - if (unlikely(JS_ToFloat64Free(ctx, &d, op1))) { - sp[-1] = JS_UNDEFINED; - return -1; - } - r = d + 2 * (op - OP_post_dec) - 1; - sp[0] = JS_NewFloat64(ctx, r); - sp[-1] = JS_NewFloat64(ctx, d); - return 0; -} - -static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *sp, - OPCodeEnum op) -{ - JSValue op1, op2; - double d1, d2, r; - - op1 = sp[-2]; - op2 = sp[-1]; - if (unlikely(JS_ToFloat64Free(ctx, &d1, op1))) { - JS_FreeValue(ctx, op2); - goto exception; - } - if (unlikely(JS_ToFloat64Free(ctx, &d2, op2))) { - goto exception; - } - switch(op) { - case OP_sub: - r = d1 - d2; - break; - case OP_mul: - r = d1 * d2; - break; - case OP_div: - r = d1 / d2; - break; - case OP_mod: - r = fmod(d1, d2); - break; - case OP_pow: - r = js_pow(d1, d2); - break; - default: - abort(); - } - sp[-2] = JS_NewFloat64(ctx, r); - return 0; - exception: - sp[-2] = JS_UNDEFINED; - sp[-1] = JS_UNDEFINED; - return -1; -} - -static no_inline __exception int js_add_slow(JSContext *ctx, JSValue *sp) -{ - JSValue op1, op2; - uint32_t tag1, tag2; - - op1 = sp[-2]; - op2 = sp[-1]; - tag1 = JS_VALUE_GET_TAG(op1); - tag2 = JS_VALUE_GET_TAG(op2); - if ((tag1 == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag1)) && - (tag2 == JS_TAG_INT || JS_TAG_IS_FLOAT64(tag2))) { - goto add_numbers; - } else { - op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); - if (JS_IsException(op1)) { - JS_FreeValue(ctx, op2); - goto exception; - } - op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NONE); - if (JS_IsException(op2)) { - JS_FreeValue(ctx, op1); - goto exception; - } - tag1 = JS_VALUE_GET_TAG(op1); - tag2 = JS_VALUE_GET_TAG(op2); - if (tag1 == JS_TAG_STRING || tag2 == JS_TAG_STRING) { - sp[-2] = JS_ConcatString(ctx, op1, op2); - if (JS_IsException(sp[-2])) - goto exception; - } else { - double d1, d2; - add_numbers: - if (JS_ToFloat64Free(ctx, &d1, op1)) { - JS_FreeValue(ctx, op2); - goto exception; - } - if (JS_ToFloat64Free(ctx, &d2, op2)) - goto exception; - sp[-2] = JS_NewFloat64(ctx, d1 + d2); - } - } - return 0; - exception: - sp[-2] = JS_UNDEFINED; - sp[-1] = JS_UNDEFINED; - return -1; -} - -static no_inline __exception int js_binary_logic_slow(JSContext *ctx, - JSValue *sp, - OPCodeEnum op) -{ - JSValue op1, op2; - uint32_t v1, v2, r; - - op1 = sp[-2]; - op2 = sp[-1]; - if (unlikely(JS_ToInt32Free(ctx, (int32_t *)&v1, op1))) { - JS_FreeValue(ctx, op2); - goto exception; - } - if (unlikely(JS_ToInt32Free(ctx, (int32_t *)&v2, op2))) - goto exception; - switch(op) { - case OP_shl: - r = v1 << (v2 & 0x1f); - break; - case OP_sar: - r = (int)v1 >> (v2 & 0x1f); - break; - case OP_and: - r = v1 & v2; - break; - case OP_or: - r = v1 | v2; - break; - case OP_xor: - r = v1 ^ v2; - break; - default: - abort(); - } - sp[-2] = JS_NewInt32(ctx, r); - return 0; - exception: - sp[-2] = JS_UNDEFINED; - sp[-1] = JS_UNDEFINED; - return -1; -} - -static no_inline int js_not_slow(JSContext *ctx, JSValue *sp) -{ - int32_t v1; - - if (unlikely(JS_ToInt32Free(ctx, &v1, sp[-1]))) { - sp[-1] = JS_UNDEFINED; - return -1; - } - sp[-1] = JS_NewInt32(ctx, ~v1); - return 0; -} - -static no_inline int js_relational_slow(JSContext *ctx, JSValue *sp, - OPCodeEnum op) -{ - JSValue op1, op2; - int res; - - op1 = sp[-2]; - op2 = sp[-1]; - op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NUMBER); - if (JS_IsException(op1)) { - JS_FreeValue(ctx, op2); - goto exception; - } - op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NUMBER); - if (JS_IsException(op2)) { - JS_FreeValue(ctx, op1); - goto exception; - } - if (JS_VALUE_GET_TAG(op1) == JS_TAG_STRING && - JS_VALUE_GET_TAG(op2) == JS_TAG_STRING) { - JSString *p1, *p2; - p1 = JS_VALUE_GET_STRING(op1); - p2 = JS_VALUE_GET_STRING(op2); - res = js_string_compare(ctx, p1, p2); - JS_FreeValue(ctx, op1); - JS_FreeValue(ctx, op2); - switch(op) { - case OP_lt: - res = (res < 0); - break; - case OP_lte: - res = (res <= 0); - break; - case OP_gt: - res = (res > 0); - break; - default: - case OP_gte: - res = (res >= 0); - break; - } - } else { - double d1, d2; - if (JS_ToFloat64Free(ctx, &d1, op1)) { - JS_FreeValue(ctx, op2); - goto exception; - } - if (JS_ToFloat64Free(ctx, &d2, op2)) - goto exception; - switch(op) { - case OP_lt: - res = (d1 < d2); /* if NaN return false */ - break; - case OP_lte: - res = (d1 <= d2); /* if NaN return false */ - break; - case OP_gt: - res = (d1 > d2); /* if NaN return false */ - break; - default: - case OP_gte: - res = (d1 >= d2); /* if NaN return false */ - break; - } - } - sp[-2] = JS_NewBool(ctx, res); - return 0; - exception: - sp[-2] = JS_UNDEFINED; - sp[-1] = JS_UNDEFINED; - return -1; -} - -static no_inline __exception int js_eq_slow(JSContext *ctx, JSValue *sp, - BOOL is_neq) -{ - JSValue op1, op2; - int tag1, tag2; - BOOL res; - - op1 = sp[-2]; - op2 = sp[-1]; - redo: - tag1 = JS_VALUE_GET_NORM_TAG(op1); - tag2 = JS_VALUE_GET_NORM_TAG(op2); - if (tag1 == tag2 || - (tag1 == JS_TAG_INT && tag2 == JS_TAG_FLOAT64) || - (tag2 == JS_TAG_INT && tag1 == JS_TAG_FLOAT64)) { - res = js_strict_eq(ctx, op1, op2); - } else if ((tag1 == JS_TAG_NULL && tag2 == JS_TAG_UNDEFINED) || - (tag2 == JS_TAG_NULL && tag1 == JS_TAG_UNDEFINED)) { - res = TRUE; - } else if ((tag1 == JS_TAG_STRING && (tag2 == JS_TAG_INT || - tag2 == JS_TAG_FLOAT64)) || - (tag2 == JS_TAG_STRING && (tag1 == JS_TAG_INT || - tag1 == JS_TAG_FLOAT64))) { - double d1; - double d2; - if (JS_ToFloat64Free(ctx, &d1, op1)) { - JS_FreeValue(ctx, op2); - goto exception; - } - if (JS_ToFloat64Free(ctx, &d2, op2)) - goto exception; - res = (d1 == d2); - } else if (tag1 == JS_TAG_BOOL) { - op1 = JS_NewInt32(ctx, JS_VALUE_GET_INT(op1)); - goto redo; - } else if (tag2 == JS_TAG_BOOL) { - op2 = JS_NewInt32(ctx, JS_VALUE_GET_INT(op2)); - goto redo; - } else if (tag1 == JS_TAG_OBJECT && - (tag2 == JS_TAG_INT || tag2 == JS_TAG_FLOAT64 || tag2 == JS_TAG_STRING || tag2 == JS_TAG_SYMBOL)) { - op1 = JS_ToPrimitiveFree(ctx, op1, HINT_NONE); - if (JS_IsException(op1)) { - JS_FreeValue(ctx, op2); - goto exception; - } - goto redo; - } else if (tag2 == JS_TAG_OBJECT && - (tag1 == JS_TAG_INT || tag1 == JS_TAG_FLOAT64 || tag1 == JS_TAG_STRING || tag1 == JS_TAG_SYMBOL)) { - op2 = JS_ToPrimitiveFree(ctx, op2, HINT_NONE); - if (JS_IsException(op2)) { - JS_FreeValue(ctx, op1); - goto exception; - } - goto redo; - } else { - /* IsHTMLDDA object is equivalent to undefined for '==' and '!=' */ - if ((JS_IsHTMLDDA(ctx, op1) && - (tag2 == JS_TAG_NULL || tag2 == JS_TAG_UNDEFINED)) || - (JS_IsHTMLDDA(ctx, op2) && - (tag1 == JS_TAG_NULL || tag1 == JS_TAG_UNDEFINED))) { - res = TRUE; - } else { - res = FALSE; - } - JS_FreeValue(ctx, op1); - JS_FreeValue(ctx, op2); - } - sp[-2] = JS_NewBool(ctx, res ^ is_neq); - return 0; - exception: - sp[-2] = JS_UNDEFINED; - sp[-1] = JS_UNDEFINED; - return -1; -} - -static no_inline int js_shr_slow(JSContext *ctx, JSValue *sp) -{ - JSValue op1, op2; - uint32_t v1, v2, r; - - op1 = sp[-2]; - op2 = sp[-1]; - if (unlikely(JS_ToUint32Free(ctx, &v1, op1))) { - JS_FreeValue(ctx, op2); - goto exception; - } - if (unlikely(JS_ToUint32Free(ctx, &v2, op2))) - goto exception; - r = v1 >> (v2 & 0x1f); - sp[-2] = JS_NewUint32(ctx, r); - return 0; - exception: - sp[-2] = JS_UNDEFINED; - sp[-1] = JS_UNDEFINED; - return -1; -} - -#endif /* !CONFIG_BIGNUM */ +#endif /* XXX: Should take JSValueConst arguments */ static BOOL js_strict_eq2(JSContext *ctx, JSValue op1, JSValue op2, @@ -14650,7 +14291,6 @@ static BOOL js_strict_eq2(JSContext *ctx, JSValue op1, JSValue op2, res = (d1 == d2); /* if NaN return false and +0 == -0 */ } goto done_no_free; -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: { bf_t a_s, *a, b_s, *b; @@ -14658,8 +14298,8 @@ static BOOL js_strict_eq2(JSContext *ctx, JSValue op1, JSValue op2, res = FALSE; break; } - a = JS_ToBigFloat(ctx, &a_s, op1); - b = JS_ToBigFloat(ctx, &b_s, op2); + a = JS_ToBigFloat(ctx, &a_s, op1); /* cannot fail */ + b = JS_ToBigFloat(ctx, &b_s, op2); /* cannot fail */ res = bf_cmp_eq(a, b); if (a == &a_s) bf_delete(a); @@ -14667,6 +14307,7 @@ static BOOL js_strict_eq2(JSContext *ctx, JSValue op1, JSValue op2, bf_delete(b); } break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: { JSBigFloat *p1, *p2; @@ -14812,10 +14453,10 @@ static __exception int js_operator_typeof(JSContext *ctx, JSValueConst op1) tag = JS_VALUE_GET_NORM_TAG(op1); switch(tag) { -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: atom = JS_ATOM_bigint; break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: atom = JS_ATOM_bigfloat; break; @@ -15147,7 +14788,7 @@ static JSValue build_for_in_iterator(JSContext *ctx, JSValue obj) JS_GPN_STRING_MASK | JS_GPN_ENUM_ONLY)) goto fail; for(i = 0; i < tab_atom_count; i++) { - JS_SetPropertyInternal(ctx, enum_obj, tab_atom[i].atom, JS_NULL, 0); + JS_SetPropertyInternal(ctx, enum_obj, tab_atom[i].atom, JS_NULL, enum_obj, 0); } js_free_prop_enum(ctx, tab_atom, tab_atom_count); } @@ -17567,7 +17208,7 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj, atom = get_u32(pc); pc += 4; - ret = JS_SetPropertyInternal(ctx, sp[-2], atom, sp[-1], + ret = JS_SetPropertyInternal(ctx, sp[-2], atom, sp[-1], sp[-2], JS_PROP_THROW_STRICT); JS_FreeValue(ctx, sp[-2]); sp -= 2; @@ -17866,8 +17507,8 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj, atom = JS_ValueToAtom(ctx, sp[-2]); if (unlikely(atom == JS_ATOM_NULL)) goto exception; - ret = JS_SetPropertyGeneric(ctx, sp[-3], atom, sp[-1], sp[-4], - JS_PROP_THROW_STRICT); + ret = JS_SetPropertyInternal(ctx, sp[-3], atom, sp[-1], sp[-4], + JS_PROP_THROW_STRICT); JS_FreeAtom(ctx, atom); JS_FreeValue(ctx, sp[-4]); JS_FreeValue(ctx, sp[-3]); @@ -18546,7 +18187,7 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj, break; case OP_with_put_var: /* XXX: check if strict mode */ - ret = JS_SetPropertyInternal(ctx, obj, atom, sp[-2], + ret = JS_SetPropertyInternal(ctx, obj, atom, sp[-2], obj, JS_PROP_THROW_STRICT); JS_FreeValue(ctx, sp[-1]); sp -= 2; @@ -20144,11 +19785,9 @@ static __exception int next_token(JSParseState *s); static void free_token(JSParseState *s, JSToken *token) { switch(token->val) { -#ifdef CONFIG_BIGNUM case TOK_NUMBER: JS_FreeValue(s->ctx, token->u.num.val); break; -#endif case TOK_STRING: case TOK_TEMPLATE: JS_FreeValue(s->ctx, token->u.str.str); @@ -20894,8 +20533,8 @@ static __exception int next_token(JSParseState *s) int flags, radix; flags = ATOD_ACCEPT_BIN_OCT | ATOD_ACCEPT_LEGACY_OCTAL | ATOD_ACCEPT_UNDERSCORES; -#ifdef CONFIG_BIGNUM flags |= ATOD_ACCEPT_SUFFIX; +#ifdef CONFIG_BIGNUM if (s->cur_func->js_mode & JS_MODE_MATH) { flags |= ATOD_MODE_BIGINT; if (s->cur_func->js_mode & JS_MODE_MATH) @@ -22104,7 +21743,7 @@ static int define_var(JSParseState *s, JSFunctionDef *fd, JSAtom name, /* add a private field variable in the current scope */ static int add_private_class_field(JSParseState *s, JSFunctionDef *fd, - JSAtom name, JSVarKindEnum var_kind) + JSAtom name, JSVarKindEnum var_kind, BOOL is_static) { JSContext *ctx = s->ctx; JSVarDef *vd; @@ -22116,6 +21755,7 @@ static int add_private_class_field(JSParseState *s, JSFunctionDef *fd, vd = &fd->vars[idx]; vd->is_lexical = 1; vd->is_const = 1; + vd->is_static_private = is_static; return idx; } @@ -23062,20 +22702,23 @@ static __exception int js_parse_class(JSParseState *s, BOOL is_class_expr, JSFunctionDef *method_fd; if (is_private) { - int idx, var_kind; + int idx, var_kind, is_static1; idx = find_private_class_field(ctx, fd, name, fd->scope_level); if (idx >= 0) { var_kind = fd->vars[idx].var_kind; + is_static1 = fd->vars[idx].is_static_private; if (var_kind == JS_VAR_PRIVATE_FIELD || var_kind == JS_VAR_PRIVATE_METHOD || var_kind == JS_VAR_PRIVATE_GETTER_SETTER || - var_kind == (JS_VAR_PRIVATE_GETTER + is_set)) { + var_kind == (JS_VAR_PRIVATE_GETTER + is_set) || + (var_kind == (JS_VAR_PRIVATE_GETTER + 1 - is_set) && + is_static != is_static1)) { goto private_field_already_defined; } fd->vars[idx].var_kind = JS_VAR_PRIVATE_GETTER_SETTER; } else { if (add_private_class_field(s, fd, name, - JS_VAR_PRIVATE_GETTER + is_set) < 0) + JS_VAR_PRIVATE_GETTER + is_set, is_static) < 0) goto fail; } if (add_brand(s, &class_fields[is_static]) < 0) @@ -23101,7 +22744,7 @@ static __exception int js_parse_class(JSParseState *s, BOOL is_class_expr, goto fail; emit_atom(s, setter_name); ret = add_private_class_field(s, fd, setter_name, - JS_VAR_PRIVATE_SETTER); + JS_VAR_PRIVATE_SETTER, is_static); JS_FreeAtom(ctx, setter_name); if (ret < 0) goto fail; @@ -23136,7 +22779,7 @@ static __exception int js_parse_class(JSParseState *s, BOOL is_class_expr, goto private_field_already_defined; } if (add_private_class_field(s, fd, name, - JS_VAR_PRIVATE_FIELD) < 0) + JS_VAR_PRIVATE_FIELD, is_static) < 0) goto fail; emit_op(s, OP_private_symbol); emit_atom(s, name); @@ -23243,7 +22886,7 @@ static __exception int js_parse_class(JSParseState *s, BOOL is_class_expr, goto fail; } if (add_private_class_field(s, fd, name, - JS_VAR_PRIVATE_METHOD) < 0) + JS_VAR_PRIVATE_METHOD, is_static) < 0) goto fail; emit_op(s, OP_set_home_object); emit_op(s, OP_set_name); @@ -25011,6 +24654,8 @@ static __exception int js_parse_delete(JSParseState *s) case OP_scope_get_private_field: return js_parse_error(s, "cannot delete a private class field"); case OP_get_super_value: + fd->byte_code.size = fd->last_opcode_pos; + fd->last_opcode_pos = -1; emit_op(s, OP_throw_error); emit_atom(s, JS_ATOM_NULL); emit_u8(s, JS_THROW_ERROR_DELETE_SUPER); @@ -30177,6 +29822,7 @@ static int resolve_scope_private_field(JSContext *ctx, JSFunctionDef *s, /* obj func value */ dbuf_putc(bc, OP_call_method); dbuf_put_u16(bc, 1); + dbuf_putc(bc, OP_drop); } break; default: @@ -30301,12 +29947,13 @@ static void add_eval_variables(JSContext *ctx, JSFunctionDef *s) is_arg_scope = (scope_idx == ARG_SCOPE_END); if (!is_arg_scope) { /* add unscoped variables */ + /* XXX: propagate is_const and var_kind too ? */ for(i = 0; i < fd->arg_count; i++) { vd = &fd->args[i]; if (vd->var_name != JS_ATOM_NULL) { get_closure_var(ctx, s, fd, - TRUE, i, vd->var_name, FALSE, FALSE, - JS_VAR_NORMAL); + TRUE, i, vd->var_name, FALSE, + vd->is_lexical, JS_VAR_NORMAL); } } for(i = 0; i < fd->var_count; i++) { @@ -30316,8 +29963,8 @@ static void add_eval_variables(JSContext *ctx, JSFunctionDef *s) vd->var_name != JS_ATOM__ret_ && vd->var_name != JS_ATOM_NULL) { get_closure_var(ctx, s, fd, - FALSE, i, vd->var_name, FALSE, FALSE, - JS_VAR_NORMAL); + FALSE, i, vd->var_name, FALSE, + vd->is_lexical, JS_VAR_NORMAL); } } } else { @@ -30326,8 +29973,8 @@ static void add_eval_variables(JSContext *ctx, JSFunctionDef *s) /* do not close top level last result */ if (vd->scope_level == 0 && is_var_in_arg_scope(vd)) { get_closure_var(ctx, s, fd, - FALSE, i, vd->var_name, FALSE, FALSE, - JS_VAR_NORMAL); + FALSE, i, vd->var_name, FALSE, + vd->is_lexical, JS_VAR_NORMAL); } } } @@ -32254,7 +31901,7 @@ static __exception int ss_check(JSContext *ctx, StackSizeState *s, if (s->stack_level_tab[pos] != 0xffff) { /* already explored: check that the stack size is consistent */ if (s->stack_level_tab[pos] != stack_len) { - JS_ThrowInternalError(ctx, "unconsistent stack size: %d %d (pc=%d)", + JS_ThrowInternalError(ctx, "inconsistent stack size: %d %d (pc=%d)", s->stack_level_tab[pos], stack_len, pos); return -1; } else { @@ -34152,7 +33799,6 @@ static void JS_WriteString(BCWriterState *s, JSString *p) } } -#ifdef CONFIG_BIGNUM static int JS_WriteBigNum(BCWriterState *s, JSValueConst obj) { uint32_t tag, tag1; @@ -34167,12 +33813,14 @@ static int JS_WriteBigNum(BCWriterState *s, JSValueConst obj) case JS_TAG_BIG_INT: tag1 = BC_TAG_BIG_INT; break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: tag1 = BC_TAG_BIG_FLOAT; break; case JS_TAG_BIG_DECIMAL: tag1 = BC_TAG_BIG_DECIMAL; break; +#endif default: abort(); } @@ -34287,7 +33935,6 @@ static int JS_WriteBigNum(BCWriterState *s, JSValueConst obj) } return 0; } -#endif /* CONFIG_BIGNUM */ static int JS_WriteObjectRec(BCWriterState *s, JSValueConst obj); @@ -34644,8 +34291,8 @@ static int JS_WriteObjectRec(BCWriterState *s, JSValueConst obj) case JS_CLASS_NUMBER: case JS_CLASS_STRING: case JS_CLASS_BOOLEAN: -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_FLOAT: case JS_CLASS_BIG_DECIMAL: #endif @@ -34667,14 +34314,14 @@ static int JS_WriteObjectRec(BCWriterState *s, JSValueConst obj) goto fail; } break; -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: case JS_TAG_BIG_DECIMAL: +#endif if (JS_WriteBigNum(s, obj)) goto fail; break; -#endif default: invalid_tag: JS_ThrowInternalError(s->ctx, "unsupported tag (%d)", tag); @@ -35066,7 +34713,6 @@ static int JS_ReadFunctionBytecode(BCReaderState *s, JSFunctionBytecode *b, return 0; } -#ifdef CONFIG_BIGNUM static JSValue JS_ReadBigNum(BCReaderState *s, int tag) { JSValue obj = JS_UNDEFINED; @@ -35086,12 +34732,14 @@ static JSValue JS_ReadBigNum(BCReaderState *s, int tag) case BC_TAG_BIG_INT: obj = JS_MKPTR(JS_TAG_BIG_INT, p); break; +#ifdef CONFIG_BIGNUM case BC_TAG_BIG_FLOAT: obj = JS_MKPTR(JS_TAG_BIG_FLOAT, p); break; case BC_TAG_BIG_DECIMAL: obj = JS_MKPTR(JS_TAG_BIG_DECIMAL, p); break; +#endif default: abort(); } @@ -35198,7 +34846,6 @@ static JSValue JS_ReadBigNum(BCReaderState *s, int tag) JS_FreeValue(s->ctx, obj); return JS_EXCEPTION; } -#endif /* CONFIG_BIGNUM */ static JSValue JS_ReadObjectRec(BCReaderState *s); @@ -35823,13 +35470,13 @@ static JSValue JS_ReadObjectRec(BCReaderState *s) case BC_TAG_OBJECT_VALUE: obj = JS_ReadObjectValue(s); break; -#ifdef CONFIG_BIGNUM case BC_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM case BC_TAG_BIG_FLOAT: case BC_TAG_BIG_DECIMAL: +#endif obj = JS_ReadBigNum(s, tag); break; -#endif case BC_TAG_OBJECT_REFERENCE: { uint32_t val; @@ -36261,10 +35908,10 @@ static JSValue JS_ToObject(JSContext *ctx, JSValueConst val) case JS_TAG_OBJECT: case JS_TAG_EXCEPTION: return JS_DupValue(ctx, val); -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: obj = JS_NewObjectClass(ctx, JS_CLASS_BIG_INT); goto set_value; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: obj = JS_NewObjectClass(ctx, JS_CLASS_BIG_FLOAT); goto set_value; @@ -36883,6 +36530,32 @@ static JSValue js_object_hasOwnProperty(JSContext *ctx, JSValueConst this_val, return JS_NewBool(ctx, ret); } +static JSValue js_object_hasOwn(JSContext *ctx, JSValueConst this_val, + int argc, JSValueConst *argv) +{ + JSValue obj; + JSAtom atom; + JSObject *p; + BOOL ret; + + obj = JS_ToObject(ctx, argv[0]); + if (JS_IsException(obj)) + return obj; + atom = JS_ValueToAtom(ctx, argv[1]); + if (unlikely(atom == JS_ATOM_NULL)) { + JS_FreeValue(ctx, obj); + return JS_EXCEPTION; + } + p = JS_VALUE_GET_OBJ(obj); + ret = JS_GetOwnPropertyInternal(ctx, NULL, p, atom); + JS_FreeAtom(ctx, atom); + JS_FreeValue(ctx, obj); + if (ret < 0) + return JS_EXCEPTION; + else + return JS_NewBool(ctx, ret); +} + static JSValue js_object_valueOf(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst *argv) { @@ -37455,6 +37128,7 @@ static const JSCFunctionListEntry js_object_funcs[] = { //JS_CFUNC_DEF("__getObjectData", 1, js_object___getObjectData ), //JS_CFUNC_DEF("__setObjectData", 2, js_object___setObjectData ), JS_CFUNC_DEF("fromEntries", 1, js_object_fromEntries ), + JS_CFUNC_DEF("hasOwn", 2, js_object_hasOwn ), }; static const JSCFunctionListEntry js_object_proto_funcs[] = { @@ -37974,12 +37648,20 @@ static int JS_CopySubArray(JSContext *ctx, JSValueConst obj, int64_t to_pos, int64_t from_pos, int64_t count, int dir) { - int64_t i, from, to; + JSObject *p; + int64_t i, from, to, len; JSValue val; int fromPresent; - /* XXX: should special case fast arrays */ - for (i = 0; i < count; i++) { + p = NULL; + if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { + p = JS_VALUE_GET_OBJ(obj); + if (p->class_id != JS_CLASS_ARRAY || !p->fast_array) { + p = NULL; + } + } + + for (i = 0; i < count; ) { if (dir < 0) { from = from_pos + count - i - 1; to = to_pos + count - i - 1; @@ -37987,16 +37669,43 @@ static int JS_CopySubArray(JSContext *ctx, from = from_pos + i; to = to_pos + i; } - fromPresent = JS_TryGetPropertyInt64(ctx, obj, from, &val); - if (fromPresent < 0) - goto exception; - - if (fromPresent) { - if (JS_SetPropertyInt64(ctx, obj, to, val) < 0) - goto exception; + if (p && p->fast_array && + from >= 0 && from < (len = p->u.array.count) && + to >= 0 && to < len) { + int64_t l, j; + /* Fast path for fast arrays. Since we don't look at the + prototype chain, we can optimize only the cases where + all the elements are present in the array. */ + l = count - i; + if (dir < 0) { + l = min_int64(l, from + 1); + l = min_int64(l, to + 1); + for(j = 0; j < l; j++) { + set_value(ctx, &p->u.array.u.values[to - j], + JS_DupValue(ctx, p->u.array.u.values[from - j])); + } + } else { + l = min_int64(l, len - from); + l = min_int64(l, len - to); + for(j = 0; j < l; j++) { + set_value(ctx, &p->u.array.u.values[to + j], + JS_DupValue(ctx, p->u.array.u.values[from + j])); + } + } + i += l; } else { - if (JS_DeletePropertyInt64(ctx, obj, to, JS_PROP_THROW) < 0) + fromPresent = JS_TryGetPropertyInt64(ctx, obj, from, &val); + if (fromPresent < 0) goto exception; + + if (fromPresent) { + if (JS_SetPropertyInt64(ctx, obj, to, val) < 0) + goto exception; + } else { + if (JS_DeletePropertyInt64(ctx, obj, to, JS_PROP_THROW) < 0) + goto exception; + } + i++; } } return 0; @@ -38257,6 +37966,41 @@ static int JS_isConcatSpreadable(JSContext *ctx, JSValueConst obj) return JS_IsArray(ctx, obj); } +static JSValue js_array_at(JSContext *ctx, JSValueConst this_val, + int argc, JSValueConst *argv) +{ + JSValue obj, ret; + int64_t len, idx; + JSValue *arrp; + uint32_t count; + + obj = JS_ToObject(ctx, this_val); + if (js_get_length64(ctx, &len, obj)) + goto exception; + + if (JS_ToInt64Sat(ctx, &idx, argv[0])) + goto exception; + + if (idx < 0) + idx = len + idx; + if (idx < 0 || idx >= len) { + ret = JS_UNDEFINED; + } else if (js_get_fast_array(ctx, obj, &arrp, &count) && idx < count) { + ret = JS_DupValue(ctx, arrp[idx]); + } else { + int present = JS_TryGetPropertyInt64(ctx, obj, idx, &ret); + if (present < 0) + goto exception; + if (!present) + ret = JS_UNDEFINED; + } + JS_FreeValue(ctx, obj); + return ret; + exception: + JS_FreeValue(ctx, obj); + return JS_EXCEPTION; +} + static JSValue js_array_concat(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst *argv) { @@ -38755,13 +38499,21 @@ static JSValue js_array_lastIndexOf(JSContext *ctx, JSValueConst this_val, return JS_EXCEPTION; } +enum { + special_find, + special_findIndex, + special_findLast, + special_findLastIndex, +}; + static JSValue js_array_find(JSContext *ctx, JSValueConst this_val, - int argc, JSValueConst *argv, int findIndex) + int argc, JSValueConst *argv, int mode) { JSValueConst func, this_arg; JSValueConst args[3]; JSValue obj, val, index_val, res; - int64_t len, k; + int64_t len, k, end; + int dir; index_val = JS_UNDEFINED; val = JS_UNDEFINED; @@ -38777,7 +38529,18 @@ static JSValue js_array_find(JSContext *ctx, JSValueConst this_val, if (argc > 1) this_arg = argv[1]; - for(k = 0; k < len; k++) { + if (mode == special_findLast || mode == special_findLastIndex) { + k = len - 1; + dir = -1; + end = -1; + } else { + k = 0; + dir = 1; + end = len; + } + + // TODO(bnoordhuis) add fast path for fast arrays + for(; k != end; k += dir) { index_val = JS_NewInt64(ctx, k); if (JS_IsException(index_val)) goto exception; @@ -38791,7 +38554,7 @@ static JSValue js_array_find(JSContext *ctx, JSValueConst this_val, if (JS_IsException(res)) goto exception; if (JS_ToBoolFree(ctx, res)) { - if (findIndex) { + if (mode == special_findIndex || mode == special_findLastIndex) { JS_FreeValue(ctx, val); JS_FreeValue(ctx, obj); return index_val; @@ -38805,7 +38568,7 @@ static JSValue js_array_find(JSContext *ctx, JSValueConst this_val, JS_FreeValue(ctx, index_val); } JS_FreeValue(ctx, obj); - if (findIndex) + if (mode == special_findIndex || mode == special_findLastIndex) return JS_NewInt32(ctx, -1); else return JS_UNDEFINED; @@ -38958,64 +38721,27 @@ static JSValue js_array_push(JSContext *ctx, JSValueConst this_val, int64_t len, from, newLen; obj = JS_ToObject(ctx, this_val); - - if (JS_VALUE_GET_TAG(obj) == JS_TAG_OBJECT) { - JSObject *p = JS_VALUE_GET_OBJ(obj); - if (p->class_id != JS_CLASS_ARRAY || - !p->fast_array || !p->extensible) - goto generic_case; - /* length must be writable */ - if (unlikely(!(get_shape_prop(p->shape)->flags & JS_PROP_WRITABLE))) - goto generic_case; - /* check the length */ - if (unlikely(JS_VALUE_GET_TAG(p->prop[0].u.value) != JS_TAG_INT)) - goto generic_case; - len = JS_VALUE_GET_INT(p->prop[0].u.value); - /* we don't support holes */ - if (unlikely(len != p->u.array.count)) - goto generic_case; - newLen = len + argc; - if (unlikely(newLen > INT32_MAX)) - goto generic_case; - if (newLen > p->u.array.u1.size) { - if (expand_fast_array(ctx, p, newLen)) - goto exception; - } - if (unshift && argc > 0) { - memmove(p->u.array.u.values + argc, p->u.array.u.values, - len * sizeof(p->u.array.u.values[0])); - from = 0; - } else { - from = len; - } - for(i = 0; i < argc; i++) { - p->u.array.u.values[from + i] = JS_DupValue(ctx, argv[i]); - } - p->u.array.count = newLen; - p->prop[0].u.value = JS_NewInt32(ctx, newLen); - } else { - generic_case: - if (js_get_length64(ctx, &len, obj)) - goto exception; - newLen = len + argc; - if (newLen > MAX_SAFE_INTEGER) { - JS_ThrowTypeError(ctx, "Array loo long"); + if (js_get_length64(ctx, &len, obj)) + goto exception; + newLen = len + argc; + if (newLen > MAX_SAFE_INTEGER) { + JS_ThrowTypeError(ctx, "Array loo long"); + goto exception; + } + from = len; + if (unshift && argc > 0) { + if (JS_CopySubArray(ctx, obj, argc, 0, len, -1)) goto exception; - } - from = len; - if (unshift && argc > 0) { - if (JS_CopySubArray(ctx, obj, argc, 0, len, -1)) - goto exception; - from = 0; - } - for(i = 0; i < argc; i++) { - if (JS_SetPropertyInt64(ctx, obj, from + i, - JS_DupValue(ctx, argv[i])) < 0) - goto exception; - } - if (JS_SetProperty(ctx, obj, JS_ATOM_length, JS_NewInt64(ctx, newLen)) < 0) + from = 0; + } + for(i = 0; i < argc; i++) { + if (JS_SetPropertyInt64(ctx, obj, from + i, + JS_DupValue(ctx, argv[i])) < 0) goto exception; } + if (JS_SetProperty(ctx, obj, JS_ATOM_length, JS_NewInt64(ctx, newLen)) < 0) + goto exception; + JS_FreeValue(ctx, obj); return JS_NewInt64(ctx, newLen); @@ -39655,6 +39381,7 @@ static const JSCFunctionListEntry js_iterator_proto_funcs[] = { }; static const JSCFunctionListEntry js_array_proto_funcs[] = { + JS_CFUNC_DEF("at", 1, js_array_at ), JS_CFUNC_DEF("concat", 1, js_array_concat ), JS_CFUNC_MAGIC_DEF("every", 1, js_array_every, special_every ), JS_CFUNC_MAGIC_DEF("some", 1, js_array_every, special_some ), @@ -39664,8 +39391,10 @@ static const JSCFunctionListEntry js_array_proto_funcs[] = { JS_CFUNC_MAGIC_DEF("reduce", 1, js_array_reduce, special_reduce ), JS_CFUNC_MAGIC_DEF("reduceRight", 1, js_array_reduce, special_reduceRight ), JS_CFUNC_DEF("fill", 1, js_array_fill ), - JS_CFUNC_MAGIC_DEF("find", 1, js_array_find, 0 ), - JS_CFUNC_MAGIC_DEF("findIndex", 1, js_array_find, 1 ), + JS_CFUNC_MAGIC_DEF("find", 1, js_array_find, special_find ), + JS_CFUNC_MAGIC_DEF("findIndex", 1, js_array_find, special_findIndex ), + JS_CFUNC_MAGIC_DEF("findLast", 1, js_array_find, special_findLast ), + JS_CFUNC_MAGIC_DEF("findLastIndex", 1, js_array_find, special_findLastIndex ), JS_CFUNC_DEF("indexOf", 1, js_array_indexOf ), JS_CFUNC_DEF("lastIndexOf", 1, js_array_lastIndexOf ), JS_CFUNC_DEF("includes", 1, js_array_includes ), @@ -39707,9 +39436,10 @@ static JSValue js_number_constructor(JSContext *ctx, JSValueConst new_target, if (JS_IsException(val)) return val; switch(JS_VALUE_GET_TAG(val)) { -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: +#endif { JSBigFloat *p = JS_VALUE_GET_PTR(val); double d; @@ -39718,6 +39448,7 @@ static JSValue js_number_constructor(JSContext *ctx, JSValueConst new_target, val = __JS_NewFloat64(ctx, d); } break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_DECIMAL: val = JS_ToStringFree(ctx, val); if (JS_IsException(val)) @@ -40352,7 +40083,7 @@ static JSValue js_string_charCodeAt(JSContext *ctx, JSValueConst this_val, } static JSValue js_string_charAt(JSContext *ctx, JSValueConst this_val, - int argc, JSValueConst *argv) + int argc, JSValueConst *argv, int is_at) { JSValue val, ret; JSString *p; @@ -40366,8 +40097,13 @@ static JSValue js_string_charAt(JSContext *ctx, JSValueConst this_val, JS_FreeValue(ctx, val); return JS_EXCEPTION; } + if (idx < 0 && is_at) + idx += p->len; if (idx < 0 || idx >= p->len) { - ret = js_new_string8(ctx, NULL, 0); + if (is_at) + ret = JS_UNDEFINED; + else + ret = js_new_string8(ctx, NULL, 0); } else { if (p->is_wide_char) c = p->u.str16[idx]; @@ -41626,8 +41362,9 @@ static const JSCFunctionListEntry js_string_funcs[] = { static const JSCFunctionListEntry js_string_proto_funcs[] = { JS_PROP_INT32_DEF("length", 0, JS_PROP_CONFIGURABLE ), + JS_CFUNC_MAGIC_DEF("at", 1, js_string_charAt, 1 ), JS_CFUNC_DEF("charCodeAt", 1, js_string_charCodeAt ), - JS_CFUNC_DEF("charAt", 1, js_string_charAt ), + JS_CFUNC_MAGIC_DEF("charAt", 1, js_string_charAt, 0 ), JS_CFUNC_DEF("concat", 1, js_string_concat ), JS_CFUNC_DEF("codePointAt", 1, js_string_codePointAt ), JS_CFUNC_MAGIC_DEF("indexOf", 1, js_string_indexOf, 0 ), @@ -42789,7 +42526,7 @@ static JSValue js_regexp_Symbol_match(JSContext *ctx, JSValueConst this_val, { // [Symbol.match](str) JSValueConst rx = this_val; - JSValue A, S, result, matchStr; + JSValue A, S, flags, result, matchStr; int global, n, fullUnicode, isEmpty; JSString *p; @@ -42797,16 +42534,23 @@ static JSValue js_regexp_Symbol_match(JSContext *ctx, JSValueConst this_val, return JS_ThrowTypeErrorNotAnObject(ctx); A = JS_UNDEFINED; + flags = JS_UNDEFINED; result = JS_UNDEFINED; matchStr = JS_UNDEFINED; S = JS_ToString(ctx, argv[0]); if (JS_IsException(S)) goto exception; - global = JS_ToBoolFree(ctx, JS_GetProperty(ctx, rx, JS_ATOM_global)); - if (global < 0) + flags = JS_GetProperty(ctx, rx, JS_ATOM_flags); + if (JS_IsException(flags)) goto exception; + flags = JS_ToStringFree(ctx, flags); + if (JS_IsException(flags)) + goto exception; + p = JS_VALUE_GET_STRING(flags); + // TODO(bnoordhuis) query 'u' flag the same way? + global = (-1 != string_indexof_char(p, 'g', 0)); if (!global) { A = JS_RegExpExec(ctx, rx, S); } else { @@ -42850,12 +42594,14 @@ static JSValue js_regexp_Symbol_match(JSContext *ctx, JSValueConst this_val, } } JS_FreeValue(ctx, result); + JS_FreeValue(ctx, flags); JS_FreeValue(ctx, S); return A; exception: JS_FreeValue(ctx, A); JS_FreeValue(ctx, result); + JS_FreeValue(ctx, flags); JS_FreeValue(ctx, S); return JS_EXCEPTION; } @@ -43098,8 +42844,8 @@ static JSValue js_regexp_Symbol_replace(JSContext *ctx, JSValueConst this_val, // [Symbol.replace](str, rep) JSValueConst rx = this_val, rep = argv[1]; JSValueConst args[6]; - JSValue str, rep_val, matched, tab, rep_str, namedCaptures, res; - JSString *sp, *rp; + JSValue flags, str, rep_val, matched, tab, rep_str, namedCaptures, res; + JSString *p, *sp, *rp; StringBuffer b_s, *b = &b_s; ValueBuffer v_b, *results = &v_b; int nextSourcePosition, n, j, functionalReplace, is_global, fullUnicode; @@ -43115,6 +42861,7 @@ static JSValue js_regexp_Symbol_replace(JSContext *ctx, JSValueConst this_val, rep_val = JS_UNDEFINED; matched = JS_UNDEFINED; tab = JS_UNDEFINED; + flags = JS_UNDEFINED; rep_str = JS_UNDEFINED; namedCaptures = JS_UNDEFINED; @@ -43131,10 +42878,18 @@ static JSValue js_regexp_Symbol_replace(JSContext *ctx, JSValueConst this_val, goto exception; rp = JS_VALUE_GET_STRING(rep_val); } - fullUnicode = 0; - is_global = JS_ToBoolFree(ctx, JS_GetProperty(ctx, rx, JS_ATOM_global)); - if (is_global < 0) + + flags = JS_GetProperty(ctx, rx, JS_ATOM_flags); + if (JS_IsException(flags)) goto exception; + flags = JS_ToStringFree(ctx, flags); + if (JS_IsException(flags)) + goto exception; + p = JS_VALUE_GET_STRING(flags); + + // TODO(bnoordhuis) query 'u' flag the same way? + fullUnicode = 0; + is_global = (-1 != string_indexof_char(p, 'g', 0)); if (is_global) { fullUnicode = JS_ToBoolFree(ctx, JS_GetProperty(ctx, rx, JS_ATOM_unicode)); if (fullUnicode < 0) @@ -43268,6 +43023,7 @@ static JSValue js_regexp_Symbol_replace(JSContext *ctx, JSValueConst this_val, value_buffer_free(results); JS_FreeValue(ctx, rep_val); JS_FreeValue(ctx, matched); + JS_FreeValue(ctx, flags); JS_FreeValue(ctx, tab); JS_FreeValue(ctx, rep_str); JS_FreeValue(ctx, namedCaptures); @@ -43810,10 +43566,8 @@ static JSValue js_json_check(JSContext *ctx, JSONStringifyContext *jsc, JSValue v; JSValueConst args[2]; - if (JS_IsObject(val) -#ifdef CONFIG_BIGNUM - || JS_IsBigInt(ctx, val) /* XXX: probably useless */ -#endif + if (JS_IsObject(val) || + JS_IsBigInt(ctx, val) /* XXX: probably useless */ ) { JSValue f = JS_GetProperty(ctx, val, JS_ATOM_toJSON); if (JS_IsException(f)) @@ -43851,9 +43605,7 @@ static JSValue js_json_check(JSContext *ctx, JSONStringifyContext *jsc, #endif case JS_TAG_BOOL: case JS_TAG_NULL: -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: -#endif case JS_TAG_EXCEPTION: return val; default: @@ -43904,15 +43656,16 @@ static int js_json_to_str(JSContext *ctx, JSONStringifyContext *jsc, ret = string_buffer_concat_value(jsc->b, p->u.object_data); JS_FreeValue(ctx, val); return ret; - } + } else #ifdef CONFIG_BIGNUM - else if (cl == JS_CLASS_BIG_FLOAT) { + if (cl == JS_CLASS_BIG_FLOAT) { return string_buffer_concat_value_free(jsc->b, val); - } else if (cl == JS_CLASS_BIG_INT) { + } else +#endif + if (cl == JS_CLASS_BIG_INT) { JS_ThrowTypeError(ctx, "bigint are forbidden in JSON.stringify"); goto exception; } -#endif v = js_array_includes(ctx, jsc->stack, 1, (JSValueConst *)&val); if (JS_IsException(v)) goto exception; @@ -44042,11 +43795,9 @@ static int js_json_to_str(JSContext *ctx, JSONStringifyContext *jsc, case JS_TAG_NULL: concat_value: return string_buffer_concat_value_free(jsc->b, val); -#ifdef CONFIG_BIGNUM case JS_TAG_BIG_INT: JS_ThrowTypeError(ctx, "bigint are forbidden in JSON.stringify"); goto exception; -#endif default: JS_FreeValue(ctx, val); return 0; @@ -44336,8 +44087,8 @@ static JSValue js_reflect_set(JSContext *ctx, JSValueConst this_val, atom = JS_ValueToAtom(ctx, prop); if (unlikely(atom == JS_ATOM_NULL)) return JS_EXCEPTION; - ret = JS_SetPropertyGeneric(ctx, obj, atom, - JS_DupValue(ctx, val), receiver, 0); + ret = JS_SetPropertyInternal(ctx, obj, atom, + JS_DupValue(ctx, val), receiver, 0); JS_FreeAtom(ctx, atom); if (ret < 0) return JS_EXCEPTION; @@ -44684,9 +44435,9 @@ static int js_proxy_set(JSContext *ctx, JSValueConst obj, JSAtom atom, if (!s) return -1; if (JS_IsUndefined(method)) { - return JS_SetPropertyGeneric(ctx, s->target, atom, - JS_DupValue(ctx, value), receiver, - flags); + return JS_SetPropertyInternal(ctx, s->target, atom, + JS_DupValue(ctx, value), receiver, + flags); } atom_val = JS_AtomToValue(ctx, atom); if (JS_IsException(atom_val)) { @@ -45219,6 +44970,10 @@ static int js_proxy_isArray(JSContext *ctx, JSValueConst obj) JSProxyData *s = JS_GetOpaque(obj, JS_CLASS_PROXY); if (!s) return FALSE; + if (js_check_stack_overflow(ctx->rt, 0)) { + JS_ThrowStackOverflow(ctx); + return -1; + } if (s->is_revoked) { JS_ThrowTypeErrorRevokedProxy(ctx); return -1; @@ -48056,20 +47811,19 @@ static JSValue set_date_field(JSContext *ctx, JSValueConst this_val, res = get_date_fields(ctx, this_val, fields, is_local, first_field == 0); if (res < 0) return JS_EXCEPTION; + + // Argument coercion is observable and must be done unconditionally. + n = min_int(argc, end_field - first_field); + for(i = 0; i < n; i++) { + if (JS_ToFloat64(ctx, &a, argv[i])) + return JS_EXCEPTION; + if (!isfinite(a)) + res = FALSE; + fields[first_field + i] = trunc(a); + } if (res && argc > 0) { - n = end_field - first_field; - if (argc < n) - n = argc; - for(i = 0; i < n; i++) { - if (JS_ToFloat64(ctx, &a, argv[i])) - return JS_EXCEPTION; - if (!isfinite(a)) - goto done; - fields[first_field + i] = trunc(a); - } d = set_date_fields(fields, is_local); } -done: return JS_SetThisTimeValue(ctx, this_val, d); } @@ -48340,8 +48094,11 @@ static int string_get_signed_digits(JSString *sp, int *pp, int64_t *pval) { p++; res = string_get_digits(sp, &p, pval); - if (res == 0 && sgn == '-') + if (res == 0 && sgn == '-') { + if (*pval == 0) + return -1; // reject negative zero *pval = -*pval; + } *pp = p; return res; } @@ -49092,6 +48849,7 @@ void JS_AddIntrinsicOperators(JSContext *ctx) js_operators_set_default(ctx, ctx->class_proto[JS_CLASS_BIG_FLOAT]); js_operators_set_default(ctx, ctx->class_proto[JS_CLASS_BIG_DECIMAL]); } +#endif /* CONFIG_BIGNUM */ /* BigInt */ @@ -49109,11 +48867,17 @@ static JSValue JS_ToBigIntCtorFree(JSContext *ctx, JSValue val) case JS_TAG_BIG_INT: break; case JS_TAG_FLOAT64: +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_FLOAT: +#endif { bf_t *a, a_s; a = JS_ToBigFloat(ctx, &a_s, val); + if (!a) { + JS_FreeValue(ctx, val); + return JS_EXCEPTION; + } if (!bf_is_finite(a)) { JS_FreeValue(ctx, val); val = JS_ThrowRangeError(ctx, "cannot convert NaN or Infinity to bigint"); @@ -49143,11 +48907,13 @@ static JSValue JS_ToBigIntCtorFree(JSContext *ctx, JSValue val) bf_delete(a); } break; +#ifdef CONFIG_BIGNUM case JS_TAG_BIG_DECIMAL: val = JS_ToStringFree(ctx, val); if (JS_IsException(val)) break; goto redo; +#endif case JS_TAG_STRING: val = JS_StringToBigIntErr(ctx, val); break; @@ -49220,6 +48986,7 @@ static JSValue js_bigint_valueOf(JSContext *ctx, JSValueConst this_val, return js_thisBigIntValue(ctx, this_val); } +#ifdef CONFIG_BIGNUM static JSValue js_bigint_div(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst *argv, int magic) @@ -49348,6 +49115,7 @@ static JSValue js_bigint_op1(JSContext *ctx, JS_FreeBigInt(ctx, a, &a_s); return JS_NewBigInt64(ctx, res); } +#endif static JSValue js_bigint_asUintN(JSContext *ctx, JSValueConst this_val, @@ -49392,6 +49160,7 @@ static JSValue js_bigint_asUintN(JSContext *ctx, static const JSCFunctionListEntry js_bigint_funcs[] = { JS_CFUNC_MAGIC_DEF("asUintN", 2, js_bigint_asUintN, 0 ), JS_CFUNC_MAGIC_DEF("asIntN", 2, js_bigint_asUintN, 1 ), +#ifdef CONFIG_BIGNUM /* QuickJS extensions */ JS_CFUNC_MAGIC_DEF("tdiv", 2, js_bigint_div, BF_RNDZ ), JS_CFUNC_MAGIC_DEF("fdiv", 2, js_bigint_div, BF_RNDD ), @@ -49405,6 +49174,7 @@ static const JSCFunctionListEntry js_bigint_funcs[] = { JS_CFUNC_MAGIC_DEF("sqrtrem", 1, js_bigint_sqrt, 1 ), JS_CFUNC_MAGIC_DEF("floorLog2", 1, js_bigint_op1, 0 ), JS_CFUNC_MAGIC_DEF("ctz", 1, js_bigint_op1, 1 ), +#endif }; static const JSCFunctionListEntry js_bigint_proto_funcs[] = { @@ -49423,7 +49193,7 @@ void JS_AddIntrinsicBigInt(JSContext *ctx) rt->bigint_ops.unary_arith = js_unary_arith_bigint; rt->bigint_ops.binary_arith = js_binary_arith_bigint; rt->bigint_ops.compare = js_compare_bigfloat; - + ctx->class_proto[JS_CLASS_BIG_INT] = JS_NewObject(ctx); JS_SetPropertyFunctionList(ctx, ctx->class_proto[JS_CLASS_BIG_INT], js_bigint_proto_funcs, @@ -49434,6 +49204,8 @@ void JS_AddIntrinsicBigInt(JSContext *ctx) countof(js_bigint_funcs)); } +#ifdef CONFIG_BIGNUM + /* BigFloat */ static JSValue js_thisBigFloatValue(JSContext *ctx, JSValueConst this_val) @@ -49907,6 +49679,10 @@ static JSValue js_bigfloat_fop(JSContext *ctx, JSValueConst this_val, if (JS_IsException(op1)) return op1; a = JS_ToBigFloat(ctx, &a_s, op1); + if (!a) { + JS_FreeValue(ctx, op1); + return JS_EXCEPTION; + } fe = &ctx->fp_env; if (argc > 1) { fe = JS_GetOpaque2(ctx, argv[1], JS_CLASS_FLOAT_ENV); @@ -50005,7 +49781,11 @@ static JSValue js_bigfloat_fop2(JSContext *ctx, JSValueConst this_val, return op2; } a = JS_ToBigFloat(ctx, &a_s, op1); + if (!a) + goto fail1; b = JS_ToBigFloat(ctx, &b_s, op2); + if (!b) + goto fail2; fe = &ctx->fp_env; if (argc > 2) { fe = JS_GetOpaque2(ctx, argv[2], JS_CLASS_FLOAT_ENV); @@ -50015,10 +49795,12 @@ static JSValue js_bigfloat_fop2(JSContext *ctx, JSValueConst this_val, res = JS_NewBigFloat(ctx); if (JS_IsException(res)) { fail: - if (a == &a_s) - bf_delete(a); if (b == &b_s) bf_delete(b); + fail2: + if (a == &a_s) + bf_delete(a); + fail1: JS_FreeValue(ctx, op1); JS_FreeValue(ctx, op2); return JS_EXCEPTION; @@ -50967,8 +50749,19 @@ void JS_AddIntrinsicBaseObjects(JSContext *ctx) /* XXX: create auto_initializer */ { /* initialize Array.prototype[Symbol.unscopables] */ - char const unscopables[] = "copyWithin" "\0" "entries" "\0" "fill" "\0" "find" "\0" - "findIndex" "\0" "flat" "\0" "flatMap" "\0" "includes" "\0" "keys" "\0" "values" "\0"; + char const unscopables[] = + "copyWithin" "\0" + "entries" "\0" + "fill" "\0" + "find" "\0" + "findIndex" "\0" + "findLast" "\0" + "findLastIndex" "\0" + "flat" "\0" + "flatMap" "\0" + "includes" "\0" + "keys" "\0" + "values" "\0"; const char *p = unscopables; obj1 = JS_NewObjectProto(ctx, JS_NULL); for(p = unscopables; *p; p += strlen(p) + 1) { @@ -51092,9 +50885,7 @@ void JS_AddIntrinsicBaseObjects(JSContext *ctx) static uint8_t const typed_array_size_log2[JS_TYPED_ARRAY_COUNT] = { 0, 0, 0, 1, 1, 2, 2, -#ifdef CONFIG_BIGNUM 3, 3, /* BigInt64Array, BigUint64Array */ -#endif 2, 3 }; @@ -51655,6 +51446,32 @@ static JSValue js_typed_array_set_internal(JSContext *ctx, return JS_EXCEPTION; } +static JSValue js_typed_array_at(JSContext *ctx, JSValueConst this_val, + int argc, JSValueConst *argv) +{ + JSObject *p; + int64_t idx, len; + + p = get_typed_array(ctx, this_val, 0); + if (!p) + return JS_EXCEPTION; + + if (typed_array_is_detached(ctx, p)) { + JS_ThrowTypeErrorDetachedArrayBuffer(ctx); + return JS_EXCEPTION; + } + + if (JS_ToInt64Sat(ctx, &idx, argv[0])) + return JS_EXCEPTION; + + len = p->u.array.count; + if (idx < 0) + idx = len + idx; + if (idx < 0 || idx >= len) + return JS_UNDEFINED; + return JS_GetPropertyInt64(ctx, this_val, idx); +} + static JSValue js_typed_array_set(JSContext *ctx, JSValueConst this_val, int argc, JSValueConst *argv) @@ -51944,14 +51761,10 @@ static JSValue js_typed_array_fill(JSContext *ctx, JSValueConst this_val, if (JS_ToUint32(ctx, &v, argv[0])) return JS_EXCEPTION; v64 = v; - } else -#ifdef CONFIG_BIGNUM - if (p->class_id <= JS_CLASS_BIG_UINT64_ARRAY) { + } else if (p->class_id <= JS_CLASS_BIG_UINT64_ARRAY) { if (JS_ToBigInt64(ctx, (int64_t *)&v64, argv[0])) return JS_EXCEPTION; - } else -#endif - { + } else { double d; if (JS_ToFloat64(ctx, &d, argv[0])) return JS_EXCEPTION; @@ -52013,12 +51826,13 @@ static JSValue js_typed_array_fill(JSContext *ctx, JSValueConst this_val, } static JSValue js_typed_array_find(JSContext *ctx, JSValueConst this_val, - int argc, JSValueConst *argv, int findIndex) + int argc, JSValueConst *argv, int mode) { JSValueConst func, this_arg; JSValueConst args[3]; JSValue val, index_val, res; - int len, k; + int len, k, end; + int dir; val = JS_UNDEFINED; len = js_typed_array_get_length_internal(ctx, this_val); @@ -52033,7 +51847,17 @@ static JSValue js_typed_array_find(JSContext *ctx, JSValueConst this_val, if (argc > 1) this_arg = argv[1]; - for(k = 0; k < len; k++) { + if (mode == special_findLast || mode == special_findLastIndex) { + k = len - 1; + dir = -1; + end = -1; + } else { + k = 0; + dir = 1; + end = len; + } + + for(; k != end; k += dir) { index_val = JS_NewInt32(ctx, k); val = JS_GetPropertyValue(ctx, this_val, index_val); if (JS_IsException(val)) @@ -52045,7 +51869,7 @@ static JSValue js_typed_array_find(JSContext *ctx, JSValueConst this_val, if (JS_IsException(res)) goto exception; if (JS_ToBoolFree(ctx, res)) { - if (findIndex) { + if (mode == special_findIndex || mode == special_findLastIndex) { JS_FreeValue(ctx, val); return index_val; } else { @@ -52054,7 +51878,7 @@ static JSValue js_typed_array_find(JSContext *ctx, JSValueConst this_val, } JS_FreeValue(ctx, val); } - if (findIndex) + if (mode == special_findIndex || mode == special_findLastIndex) return JS_NewInt32(ctx, -1); else return JS_UNDEFINED; @@ -52138,9 +51962,7 @@ static JSValue js_typed_array_indexOf(JSContext *ctx, JSValueConst this_val, d = JS_VALUE_GET_FLOAT64(argv[0]); v64 = d; is_int = (v64 == d); - } else -#ifdef CONFIG_BIGNUM - if (tag == JS_TAG_BIG_INT) { + } else if (tag == JS_TAG_BIG_INT) { JSBigFloat *p1 = JS_VALUE_GET_PTR(argv[0]); if (p->class_id == JS_CLASS_BIG_INT64_ARRAY) { @@ -52154,9 +51976,7 @@ static JSValue js_typed_array_indexOf(JSContext *ctx, JSValueConst this_val, } d = 0; is_bigint = 1; - } else -#endif - { + } else { goto done; } @@ -52273,7 +52093,6 @@ static JSValue js_typed_array_indexOf(JSContext *ctx, JSValueConst this_val, } } break; -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: if (is_bigint || (is_math_mode(ctx) && is_int && v64 >= -MAX_SAFE_INTEGER && @@ -52297,7 +52116,6 @@ static JSValue js_typed_array_indexOf(JSContext *ctx, JSValueConst this_val, } } break; -#endif } done: @@ -52578,7 +52396,6 @@ static int js_TA_cmp_uint32(const void *a, const void *b, void *opaque) { return (y < x) - (y > x); } -#ifdef CONFIG_BIGNUM static int js_TA_cmp_int64(const void *a, const void *b, void *opaque) { int64_t x = *(const int64_t *)a; int64_t y = *(const int64_t *)b; @@ -52590,7 +52407,6 @@ static int js_TA_cmp_uint64(const void *a, const void *b, void *opaque) { uint64_t y = *(const uint64_t *)b; return (y < x) - (y > x); } -#endif static int js_TA_cmp_float32(const void *a, const void *b, void *opaque) { return js_cmp_doubles(*(const float *)a, *(const float *)b); @@ -52624,7 +52440,6 @@ static JSValue js_TA_get_uint32(JSContext *ctx, const void *a) { return JS_NewUint32(ctx, *(const uint32_t *)a); } -#ifdef CONFIG_BIGNUM static JSValue js_TA_get_int64(JSContext *ctx, const void *a) { return JS_NewBigInt64(ctx, *(int64_t *)a); } @@ -52632,7 +52447,6 @@ static JSValue js_TA_get_int64(JSContext *ctx, const void *a) { static JSValue js_TA_get_uint64(JSContext *ctx, const void *a) { return JS_NewBigUint64(ctx, *(uint64_t *)a); } -#endif static JSValue js_TA_get_float32(JSContext *ctx, const void *a) { return __JS_NewFloat64(ctx, *(const float *)a); @@ -52748,7 +52562,6 @@ static JSValue js_typed_array_sort(JSContext *ctx, JSValueConst this_val, tsc.getfun = js_TA_get_uint32; cmpfun = js_TA_cmp_uint32; break; -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: tsc.getfun = js_TA_get_int64; cmpfun = js_TA_cmp_int64; @@ -52757,7 +52570,6 @@ static JSValue js_typed_array_sort(JSContext *ctx, JSValueConst this_val, tsc.getfun = js_TA_get_uint64; cmpfun = js_TA_cmp_uint64; break; -#endif case JS_CLASS_FLOAT32_ARRAY: tsc.getfun = js_TA_get_float32; cmpfun = js_TA_cmp_float32; @@ -52845,6 +52657,7 @@ static const JSCFunctionListEntry js_typed_array_base_funcs[] = { static const JSCFunctionListEntry js_typed_array_base_proto_funcs[] = { JS_CGETSET_DEF("length", js_typed_array_get_length, NULL ), + JS_CFUNC_DEF("at", 1, js_typed_array_at ), JS_CGETSET_MAGIC_DEF("buffer", js_typed_array_get_buffer, NULL, 0 ), JS_CGETSET_MAGIC_DEF("byteLength", js_typed_array_get_byteLength, NULL, 0 ), JS_CGETSET_MAGIC_DEF("byteOffset", js_typed_array_get_byteOffset, NULL, 0 ), @@ -52863,8 +52676,10 @@ static const JSCFunctionListEntry js_typed_array_base_proto_funcs[] = { JS_CFUNC_MAGIC_DEF("reduce", 1, js_array_reduce, special_reduce | special_TA ), JS_CFUNC_MAGIC_DEF("reduceRight", 1, js_array_reduce, special_reduceRight | special_TA ), JS_CFUNC_DEF("fill", 1, js_typed_array_fill ), - JS_CFUNC_MAGIC_DEF("find", 1, js_typed_array_find, 0 ), - JS_CFUNC_MAGIC_DEF("findIndex", 1, js_typed_array_find, 1 ), + JS_CFUNC_MAGIC_DEF("find", 1, js_typed_array_find, special_find ), + JS_CFUNC_MAGIC_DEF("findIndex", 1, js_typed_array_find, special_findIndex ), + JS_CFUNC_MAGIC_DEF("findLast", 1, js_typed_array_find, special_findLast ), + JS_CFUNC_MAGIC_DEF("findLastIndex", 1, js_typed_array_find, special_findLastIndex ), JS_CFUNC_DEF("reverse", 0, js_typed_array_reverse ), JS_CFUNC_DEF("slice", 2, js_typed_array_slice ), JS_CFUNC_DEF("subarray", 2, js_typed_array_subarray ), @@ -53015,7 +52830,7 @@ static JSValue js_typed_array_constructor_ta(JSContext *ctx, { JSObject *p, *src_buffer; JSTypedArray *ta; - JSValue ctor, obj, buffer; + JSValue obj, buffer; uint32_t len, i; int size_log2; JSArrayBuffer *src_abuf, *abuf; @@ -53032,19 +52847,9 @@ static JSValue js_typed_array_constructor_ta(JSContext *ctx, len = p->u.array.count; src_buffer = ta->buffer; src_abuf = src_buffer->u.array_buffer; - if (!src_abuf->shared) { - ctor = JS_SpeciesConstructor(ctx, JS_MKPTR(JS_TAG_OBJECT, src_buffer), - JS_UNDEFINED); - if (JS_IsException(ctor)) - goto fail; - } else { - /* force ArrayBuffer default constructor */ - ctor = JS_UNDEFINED; - } size_log2 = typed_array_size_log2(classid); - buffer = js_array_buffer_constructor1(ctx, ctor, + buffer = js_array_buffer_constructor1(ctx, JS_UNDEFINED, (uint64_t)len << size_log2); - JS_FreeValue(ctx, ctor); if (JS_IsException(buffer)) goto fail; /* necessary because it could have been detached */ @@ -53282,7 +53087,6 @@ static JSValue js_dataview_getValue(JSContext *ctx, if (is_swap) v = bswap32(v); return JS_NewUint32(ctx, v); -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: { uint64_t v; @@ -53301,7 +53105,6 @@ static JSValue js_dataview_getValue(JSContext *ctx, return JS_NewBigUint64(ctx, v); } break; -#endif case JS_CLASS_FLOAT32_ARRAY: { union { @@ -53355,14 +53158,10 @@ static JSValue js_dataview_setValue(JSContext *ctx, if (class_id <= JS_CLASS_UINT32_ARRAY) { if (JS_ToUint32(ctx, &v, val)) return JS_EXCEPTION; - } else -#ifdef CONFIG_BIGNUM - if (class_id <= JS_CLASS_BIG_UINT64_ARRAY) { + } else if (class_id <= JS_CLASS_BIG_UINT64_ARRAY) { if (JS_ToBigInt64(ctx, (int64_t *)&v64, val)) return JS_EXCEPTION; - } else -#endif - { + } else { double d; if (JS_ToFloat64(ctx, &d, val)) return JS_EXCEPTION; @@ -53410,10 +53209,8 @@ static JSValue js_dataview_setValue(JSContext *ctx, v = bswap32(v); put_u32(ptr, v); break; -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: case JS_CLASS_BIG_UINT64_ARRAY: -#endif case JS_CLASS_FLOAT64_ARRAY: if (is_swap) v64 = bswap64(v64); @@ -53435,10 +53232,8 @@ static const JSCFunctionListEntry js_dataview_proto_funcs[] = { JS_CFUNC_MAGIC_DEF("getUint16", 1, js_dataview_getValue, JS_CLASS_UINT16_ARRAY ), JS_CFUNC_MAGIC_DEF("getInt32", 1, js_dataview_getValue, JS_CLASS_INT32_ARRAY ), JS_CFUNC_MAGIC_DEF("getUint32", 1, js_dataview_getValue, JS_CLASS_UINT32_ARRAY ), -#ifdef CONFIG_BIGNUM JS_CFUNC_MAGIC_DEF("getBigInt64", 1, js_dataview_getValue, JS_CLASS_BIG_INT64_ARRAY ), JS_CFUNC_MAGIC_DEF("getBigUint64", 1, js_dataview_getValue, JS_CLASS_BIG_UINT64_ARRAY ), -#endif JS_CFUNC_MAGIC_DEF("getFloat32", 1, js_dataview_getValue, JS_CLASS_FLOAT32_ARRAY ), JS_CFUNC_MAGIC_DEF("getFloat64", 1, js_dataview_getValue, JS_CLASS_FLOAT64_ARRAY ), JS_CFUNC_MAGIC_DEF("setInt8", 2, js_dataview_setValue, JS_CLASS_INT8_ARRAY ), @@ -53447,10 +53242,8 @@ static const JSCFunctionListEntry js_dataview_proto_funcs[] = { JS_CFUNC_MAGIC_DEF("setUint16", 2, js_dataview_setValue, JS_CLASS_UINT16_ARRAY ), JS_CFUNC_MAGIC_DEF("setInt32", 2, js_dataview_setValue, JS_CLASS_INT32_ARRAY ), JS_CFUNC_MAGIC_DEF("setUint32", 2, js_dataview_setValue, JS_CLASS_UINT32_ARRAY ), -#ifdef CONFIG_BIGNUM JS_CFUNC_MAGIC_DEF("setBigInt64", 2, js_dataview_setValue, JS_CLASS_BIG_INT64_ARRAY ), JS_CFUNC_MAGIC_DEF("setBigUint64", 2, js_dataview_setValue, JS_CLASS_BIG_UINT64_ARRAY ), -#endif JS_CFUNC_MAGIC_DEF("setFloat32", 2, js_dataview_setValue, JS_CLASS_FLOAT32_ARRAY ), JS_CFUNC_MAGIC_DEF("setFloat64", 2, js_dataview_setValue, JS_CLASS_FLOAT64_ARRAY ), JS_PROP_STRING_DEF("[Symbol.toStringTag]", "DataView", JS_PROP_CONFIGURABLE ), @@ -53487,20 +53280,12 @@ static void *js_atomics_get_ptr(JSContext *ctx, if (JS_VALUE_GET_TAG(obj) != JS_TAG_OBJECT) goto fail; p = JS_VALUE_GET_OBJ(obj); -#ifdef CONFIG_BIGNUM if (is_waitable) err = (p->class_id != JS_CLASS_INT32_ARRAY && p->class_id != JS_CLASS_BIG_INT64_ARRAY); else err = !(p->class_id >= JS_CLASS_INT8_ARRAY && p->class_id <= JS_CLASS_BIG_UINT64_ARRAY); -#else - if (is_waitable) - err = (p->class_id != JS_CLASS_INT32_ARRAY); - else - err = !(p->class_id >= JS_CLASS_INT8_ARRAY && - p->class_id <= JS_CLASS_UINT32_ARRAY); -#endif if (err) { fail: JS_ThrowTypeError(ctx, "integer TypedArray expected"); @@ -53542,11 +53327,7 @@ static JSValue js_atomics_op(JSContext *ctx, int argc, JSValueConst *argv, int op) { int size_log2; -#ifdef CONFIG_BIGNUM uint64_t v, a, rep_val; -#else - uint32_t v, a, rep_val; -#endif void *ptr; JSValue ret; JSClassID class_id; @@ -53560,7 +53341,6 @@ static JSValue js_atomics_op(JSContext *ctx, if (op == ATOMICS_OP_LOAD) { v = 0; } else { -#ifdef CONFIG_BIGNUM if (size_log2 == 3) { int64_t v64; if (JS_ToBigInt64(ctx, &v64, argv[2])) @@ -53571,9 +53351,7 @@ static JSValue js_atomics_op(JSContext *ctx, return JS_EXCEPTION; rep_val = v64; } - } else -#endif - { + } else { uint32_t v32; if (JS_ToUint32(ctx, &v32, argv[2])) return JS_EXCEPTION; @@ -53590,7 +53368,6 @@ static JSValue js_atomics_op(JSContext *ctx, switch(op | (size_log2 << 3)) { -#ifdef CONFIG_BIGNUM #define OP(op_name, func_name) \ case ATOMICS_OP_ ## op_name | (0 << 3): \ a = func_name((_Atomic(uint8_t) *)ptr, v); \ @@ -53604,18 +53381,7 @@ static JSValue js_atomics_op(JSContext *ctx, case ATOMICS_OP_ ## op_name | (3 << 3): \ a = func_name((_Atomic(uint64_t) *)ptr, v); \ break; -#else -#define OP(op_name, func_name) \ - case ATOMICS_OP_ ## op_name | (0 << 3): \ - a = func_name((_Atomic(uint8_t) *)ptr, v); \ - break; \ - case ATOMICS_OP_ ## op_name | (1 << 3): \ - a = func_name((_Atomic(uint16_t) *)ptr, v); \ - break; \ - case ATOMICS_OP_ ## op_name | (2 << 3): \ - a = func_name((_Atomic(uint32_t) *)ptr, v); \ - break; -#endif + OP(ADD, atomic_fetch_add) OP(AND, atomic_fetch_and) OP(OR, atomic_fetch_or) @@ -53633,11 +53399,9 @@ static JSValue js_atomics_op(JSContext *ctx, case ATOMICS_OP_LOAD | (2 << 3): a = atomic_load((_Atomic(uint32_t) *)ptr); break; -#ifdef CONFIG_BIGNUM case ATOMICS_OP_LOAD | (3 << 3): a = atomic_load((_Atomic(uint64_t) *)ptr); break; -#endif case ATOMICS_OP_COMPARE_EXCHANGE | (0 << 3): { @@ -53660,7 +53424,6 @@ static JSValue js_atomics_op(JSContext *ctx, a = v1; } break; -#ifdef CONFIG_BIGNUM case ATOMICS_OP_COMPARE_EXCHANGE | (3 << 3): { uint64_t v1 = v; @@ -53668,7 +53431,6 @@ static JSValue js_atomics_op(JSContext *ctx, a = v1; } break; -#endif default: abort(); } @@ -53693,14 +53455,12 @@ static JSValue js_atomics_op(JSContext *ctx, case JS_CLASS_UINT32_ARRAY: ret = JS_NewUint32(ctx, a); break; -#ifdef CONFIG_BIGNUM case JS_CLASS_BIG_INT64_ARRAY: ret = JS_NewBigInt64(ctx, a); break; case JS_CLASS_BIG_UINT64_ARRAY: ret = JS_NewBigUint64(ctx, a); break; -#endif default: abort(); } @@ -53720,7 +53480,6 @@ static JSValue js_atomics_store(JSContext *ctx, argv[0], argv[1], 0); if (!ptr) return JS_EXCEPTION; -#ifdef CONFIG_BIGNUM if (size_log2 == 3) { int64_t v64; ret = JS_ToBigIntValueFree(ctx, JS_DupValue(ctx, argv[2])); @@ -53733,9 +53492,7 @@ static JSValue js_atomics_store(JSContext *ctx, if (abuf->detached) return JS_ThrowTypeErrorDetachedArrayBuffer(ctx); atomic_store((_Atomic(uint64_t) *)ptr, v64); - } else -#endif - { + } else { uint32_t v; /* XXX: spec, would be simpler to return the written value */ ret = JS_ToIntegerFree(ctx, JS_DupValue(ctx, argv[2])); @@ -53771,11 +53528,7 @@ static JSValue js_atomics_isLockFree(JSContext *ctx, int v, ret; if (JS_ToInt32Sat(ctx, &v, argv[0])) return JS_EXCEPTION; - ret = (v == 1 || v == 2 || v == 4 -#ifdef CONFIG_BIGNUM - || v == 8 -#endif - ); + ret = (v == 1 || v == 2 || v == 4 || v == 8); return JS_NewBool(ctx, ret); } @@ -53807,13 +53560,10 @@ static JSValue js_atomics_wait(JSContext *ctx, argv[0], argv[1], 2); if (!ptr) return JS_EXCEPTION; -#ifdef CONFIG_BIGNUM if (size_log2 == 3) { if (JS_ToBigInt64(ctx, &v, argv[2])) return JS_EXCEPTION; - } else -#endif - { + } else { if (JS_ToInt32(ctx, &v32, argv[2])) return JS_EXCEPTION; v = v32; diff --git a/crates/quickjs-wasm-sys/quickjs/quickjs.h b/crates/quickjs-wasm-sys/quickjs/quickjs.h index d4a5cd31..ce3dc908 100644 --- a/crates/quickjs-wasm-sys/quickjs/quickjs.h +++ b/crates/quickjs-wasm-sys/quickjs/quickjs.h @@ -733,13 +733,13 @@ JSValue JS_GetPropertyStr(JSContext *ctx, JSValueConst this_obj, JSValue JS_GetPropertyUint32(JSContext *ctx, JSValueConst this_obj, uint32_t idx); -int JS_SetPropertyInternal(JSContext *ctx, JSValueConst this_obj, - JSAtom prop, JSValue val, +int JS_SetPropertyInternal(JSContext *ctx, JSValueConst obj, + JSAtom prop, JSValue val, JSValueConst this_obj, int flags); static inline int JS_SetProperty(JSContext *ctx, JSValueConst this_obj, JSAtom prop, JSValue val) { - return JS_SetPropertyInternal(ctx, this_obj, prop, val, JS_PROP_THROW); + return JS_SetPropertyInternal(ctx, this_obj, prop, val, this_obj, JS_PROP_THROW); } int JS_SetPropertyUint32(JSContext *ctx, JSValueConst this_obj, uint32_t idx, JSValue val); diff --git a/crates/quickjs-wasm-sys/quickjs/repl.c b/crates/quickjs-wasm-sys/quickjs/repl.c index b1a8397d..9b99f36c 100644 --- a/crates/quickjs-wasm-sys/quickjs/repl.c +++ b/crates/quickjs-wasm-sys/quickjs/repl.c @@ -503,11 +503,11 @@ const uint8_t qjsc_repl[16086] = { 0x70, 0x61, 0x72, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74, 0x79, - 0x6c, 0x65, 0x0f, 0xbc, 0x03, 0x02, 0xbe, 0x03, - 0xc0, 0x03, 0x00, 0x00, 0x02, 0x00, 0xfa, 0x01, + 0x6c, 0x65, 0x0f, 0xc2, 0x03, 0x02, 0xc4, 0x03, + 0xc6, 0x03, 0x00, 0x00, 0x02, 0x00, 0xfa, 0x01, 0x00, 0x01, 0xfa, 0x01, 0x01, 0x0e, 0x00, 0x02, 0x03, 0xa0, 0x01, 0x00, 0x00, 0x00, 0x02, 0x02, - 0x01, 0x0d, 0x00, 0xbe, 0x03, 0x00, 0x0d, 0xc0, + 0x01, 0x0d, 0x00, 0xc4, 0x03, 0x00, 0x0d, 0xc6, 0x03, 0x01, 0x0d, 0x08, 0xea, 0x02, 0x29, 0xc0, 0x00, 0x38, 0x8a, 0x00, 0x00, 0x00, 0xef, 0x29, 0x0e, 0x43, 0x02, 0x03, 0x00, 0x01, 0x77, 0x01, @@ -548,163 +548,163 @@ const uint8_t qjsc_repl[16086] = { 0xc0, 0x42, 0xc3, 0x71, 0xc0, 0x43, 0xc3, 0x72, 0xc0, 0x44, 0xc3, 0x73, 0xc0, 0x45, 0xc3, 0x74, 0xc0, 0x46, 0xc3, 0x75, 0xc0, 0x47, 0xc3, 0x76, - 0xd1, 0x65, 0x01, 0x00, 0x43, 0xe0, 0x00, 0x00, - 0x00, 0xd1, 0x65, 0x00, 0x00, 0x43, 0xdf, 0x00, - 0x00, 0x00, 0xd1, 0x41, 0x92, 0x00, 0x00, 0x00, - 0xc9, 0xd1, 0x41, 0x96, 0x00, 0x00, 0x00, 0xca, - 0xd1, 0x41, 0x93, 0x00, 0x00, 0x00, 0xcb, 0xd1, - 0x41, 0x9c, 0x00, 0x00, 0x00, 0xcc, 0xd1, 0x41, - 0x9a, 0x00, 0x00, 0x00, 0xc3, 0x04, 0xd1, 0x41, - 0xe1, 0x00, 0x00, 0x00, 0xc3, 0x05, 0xd1, 0x41, - 0xe2, 0x00, 0x00, 0x00, 0xc3, 0x06, 0x65, 0x01, - 0x00, 0x41, 0xe3, 0x00, 0x00, 0x00, 0xf4, 0xc3, - 0x07, 0x37, 0xe4, 0x00, 0x00, 0x00, 0xf5, 0xc3, - 0x08, 0x37, 0xb0, 0x00, 0x00, 0x00, 0xf5, 0xc3, - 0x09, 0x0b, 0x04, 0xe5, 0x00, 0x00, 0x00, 0x4c, - 0xe6, 0x00, 0x00, 0x00, 0x04, 0xe7, 0x00, 0x00, - 0x00, 0x4c, 0xe8, 0x00, 0x00, 0x00, 0x04, 0xe9, - 0x00, 0x00, 0x00, 0x4c, 0xea, 0x00, 0x00, 0x00, - 0x04, 0xeb, 0x00, 0x00, 0x00, 0x4c, 0xec, 0x00, - 0x00, 0x00, 0x04, 0xed, 0x00, 0x00, 0x00, 0x4c, - 0xee, 0x00, 0x00, 0x00, 0x04, 0xef, 0x00, 0x00, - 0x00, 0x4c, 0xf0, 0x00, 0x00, 0x00, 0x04, 0xf1, - 0x00, 0x00, 0x00, 0x4c, 0xf2, 0x00, 0x00, 0x00, - 0x04, 0xf3, 0x00, 0x00, 0x00, 0x4c, 0xf4, 0x00, - 0x00, 0x00, 0x04, 0xf5, 0x00, 0x00, 0x00, 0x4c, - 0xf6, 0x00, 0x00, 0x00, 0x04, 0xf7, 0x00, 0x00, - 0x00, 0x4c, 0xf8, 0x00, 0x00, 0x00, 0x04, 0xf7, - 0x00, 0x00, 0x00, 0x4c, 0xf9, 0x00, 0x00, 0x00, - 0x04, 0xfa, 0x00, 0x00, 0x00, 0x4c, 0xfb, 0x00, - 0x00, 0x00, 0x04, 0xfc, 0x00, 0x00, 0x00, 0x4c, - 0xfd, 0x00, 0x00, 0x00, 0x04, 0xfe, 0x00, 0x00, - 0x00, 0x4c, 0xff, 0x00, 0x00, 0x00, 0x04, 0x00, - 0x01, 0x00, 0x00, 0x4c, 0x01, 0x01, 0x00, 0x00, - 0x04, 0x02, 0x01, 0x00, 0x00, 0x4c, 0x03, 0x01, - 0x00, 0x00, 0x04, 0x04, 0x01, 0x00, 0x00, 0x4c, - 0x05, 0x01, 0x00, 0x00, 0x04, 0x06, 0x01, 0x00, - 0x00, 0x4c, 0x07, 0x01, 0x00, 0x00, 0xc3, 0x0a, - 0xc2, 0x07, 0xea, 0x7e, 0x0b, 0x04, 0xe8, 0x00, + 0xd1, 0x65, 0x01, 0x00, 0x43, 0xe3, 0x00, 0x00, + 0x00, 0xd1, 0x65, 0x00, 0x00, 0x43, 0xe2, 0x00, + 0x00, 0x00, 0xd1, 0x41, 0x95, 0x00, 0x00, 0x00, + 0xc9, 0xd1, 0x41, 0x99, 0x00, 0x00, 0x00, 0xca, + 0xd1, 0x41, 0x96, 0x00, 0x00, 0x00, 0xcb, 0xd1, + 0x41, 0x9f, 0x00, 0x00, 0x00, 0xcc, 0xd1, 0x41, + 0x9d, 0x00, 0x00, 0x00, 0xc3, 0x04, 0xd1, 0x41, + 0xe4, 0x00, 0x00, 0x00, 0xc3, 0x05, 0xd1, 0x41, + 0xe5, 0x00, 0x00, 0x00, 0xc3, 0x06, 0x65, 0x01, + 0x00, 0x41, 0xe6, 0x00, 0x00, 0x00, 0xf4, 0xc3, + 0x07, 0x37, 0xe7, 0x00, 0x00, 0x00, 0xf5, 0xc3, + 0x08, 0x37, 0xb3, 0x00, 0x00, 0x00, 0xf5, 0xc3, + 0x09, 0x0b, 0x04, 0xe8, 0x00, 0x00, 0x00, 0x4c, + 0xe9, 0x00, 0x00, 0x00, 0x04, 0xea, 0x00, 0x00, + 0x00, 0x4c, 0xeb, 0x00, 0x00, 0x00, 0x04, 0xec, + 0x00, 0x00, 0x00, 0x4c, 0xed, 0x00, 0x00, 0x00, + 0x04, 0xee, 0x00, 0x00, 0x00, 0x4c, 0xef, 0x00, + 0x00, 0x00, 0x04, 0xf0, 0x00, 0x00, 0x00, 0x4c, + 0xf1, 0x00, 0x00, 0x00, 0x04, 0xf2, 0x00, 0x00, + 0x00, 0x4c, 0xf3, 0x00, 0x00, 0x00, 0x04, 0xf4, + 0x00, 0x00, 0x00, 0x4c, 0xf5, 0x00, 0x00, 0x00, + 0x04, 0xf6, 0x00, 0x00, 0x00, 0x4c, 0xf7, 0x00, + 0x00, 0x00, 0x04, 0xf8, 0x00, 0x00, 0x00, 0x4c, + 0xf9, 0x00, 0x00, 0x00, 0x04, 0xfa, 0x00, 0x00, + 0x00, 0x4c, 0xfb, 0x00, 0x00, 0x00, 0x04, 0xfa, + 0x00, 0x00, 0x00, 0x4c, 0xfc, 0x00, 0x00, 0x00, + 0x04, 0xfd, 0x00, 0x00, 0x00, 0x4c, 0xfe, 0x00, + 0x00, 0x00, 0x04, 0xff, 0x00, 0x00, 0x00, 0x4c, + 0x00, 0x01, 0x00, 0x00, 0x04, 0x01, 0x01, 0x00, + 0x00, 0x4c, 0x02, 0x01, 0x00, 0x00, 0x04, 0x03, + 0x01, 0x00, 0x00, 0x4c, 0x04, 0x01, 0x00, 0x00, + 0x04, 0x05, 0x01, 0x00, 0x00, 0x4c, 0x06, 0x01, + 0x00, 0x00, 0x04, 0x07, 0x01, 0x00, 0x00, 0x4c, + 0x08, 0x01, 0x00, 0x00, 0x04, 0x09, 0x01, 0x00, + 0x00, 0x4c, 0x0a, 0x01, 0x00, 0x00, 0xc3, 0x0a, + 0xc2, 0x07, 0xea, 0x7e, 0x0b, 0x04, 0xeb, 0x00, 0x00, 0x00, 0x4c, 0x16, 0x00, 0x00, 0x00, 0x04, - 0xf6, 0x00, 0x00, 0x00, 0x4c, 0x08, 0x01, 0x00, - 0x00, 0x04, 0xec, 0x00, 0x00, 0x00, 0x4c, 0x48, - 0x00, 0x00, 0x00, 0x04, 0xf4, 0x00, 0x00, 0x00, - 0x4c, 0x09, 0x01, 0x00, 0x00, 0x04, 0xec, 0x00, + 0xf9, 0x00, 0x00, 0x00, 0x4c, 0x0b, 0x01, 0x00, + 0x00, 0x04, 0xef, 0x00, 0x00, 0x00, 0x4c, 0x48, + 0x00, 0x00, 0x00, 0x04, 0xf7, 0x00, 0x00, 0x00, + 0x4c, 0x0c, 0x01, 0x00, 0x00, 0x04, 0xef, 0x00, 0x00, 0x00, 0x4c, 0x46, 0x00, 0x00, 0x00, 0x04, - 0xf0, 0x00, 0x00, 0x00, 0x4c, 0x0a, 0x01, 0x00, - 0x00, 0x04, 0xf8, 0x00, 0x00, 0x00, 0x4c, 0x1b, - 0x00, 0x00, 0x00, 0x04, 0x03, 0x01, 0x00, 0x00, - 0x4c, 0x0b, 0x01, 0x00, 0x00, 0x04, 0xee, 0x00, - 0x00, 0x00, 0x4c, 0x0c, 0x01, 0x00, 0x00, 0x04, - 0xfb, 0x00, 0x00, 0x00, 0x4c, 0x0d, 0x01, 0x00, - 0x00, 0x04, 0xe8, 0x00, 0x00, 0x00, 0x4c, 0x0e, - 0x01, 0x00, 0x00, 0x04, 0xfb, 0x00, 0x00, 0x00, - 0x4c, 0x0f, 0x01, 0x00, 0x00, 0xc3, 0x0b, 0xec, - 0x7c, 0x0b, 0x04, 0xfd, 0x00, 0x00, 0x00, 0x4c, - 0x16, 0x00, 0x00, 0x00, 0x04, 0xf6, 0x00, 0x00, - 0x00, 0x4c, 0x08, 0x01, 0x00, 0x00, 0x04, 0x05, + 0xf3, 0x00, 0x00, 0x00, 0x4c, 0x0d, 0x01, 0x00, + 0x00, 0x04, 0xfb, 0x00, 0x00, 0x00, 0x4c, 0x1b, + 0x00, 0x00, 0x00, 0x04, 0x06, 0x01, 0x00, 0x00, + 0x4c, 0x0e, 0x01, 0x00, 0x00, 0x04, 0xf1, 0x00, + 0x00, 0x00, 0x4c, 0x0f, 0x01, 0x00, 0x00, 0x04, + 0xfe, 0x00, 0x00, 0x00, 0x4c, 0x10, 0x01, 0x00, + 0x00, 0x04, 0xeb, 0x00, 0x00, 0x00, 0x4c, 0x11, + 0x01, 0x00, 0x00, 0x04, 0xfe, 0x00, 0x00, 0x00, + 0x4c, 0x12, 0x01, 0x00, 0x00, 0xc3, 0x0b, 0xec, + 0x7c, 0x0b, 0x04, 0x00, 0x01, 0x00, 0x00, 0x4c, + 0x16, 0x00, 0x00, 0x00, 0x04, 0xf9, 0x00, 0x00, + 0x00, 0x4c, 0x0b, 0x01, 0x00, 0x00, 0x04, 0x08, 0x01, 0x00, 0x00, 0x4c, 0x48, 0x00, 0x00, 0x00, - 0x04, 0xf4, 0x00, 0x00, 0x00, 0x4c, 0x09, 0x01, - 0x00, 0x00, 0x04, 0xec, 0x00, 0x00, 0x00, 0x4c, - 0x46, 0x00, 0x00, 0x00, 0x04, 0x07, 0x01, 0x00, - 0x00, 0x4c, 0x0a, 0x01, 0x00, 0x00, 0x04, 0xff, - 0x00, 0x00, 0x00, 0x4c, 0x1b, 0x00, 0x00, 0x00, - 0x04, 0x03, 0x01, 0x00, 0x00, 0x4c, 0x0b, 0x01, - 0x00, 0x00, 0x04, 0xfd, 0x00, 0x00, 0x00, 0x4c, - 0x0c, 0x01, 0x00, 0x00, 0x04, 0xea, 0x00, 0x00, - 0x00, 0x4c, 0x0d, 0x01, 0x00, 0x00, 0x04, 0x07, - 0x01, 0x00, 0x00, 0x4c, 0x0e, 0x01, 0x00, 0x00, - 0x04, 0xfb, 0x00, 0x00, 0x00, 0x4c, 0x0f, 0x01, + 0x04, 0xf7, 0x00, 0x00, 0x00, 0x4c, 0x0c, 0x01, + 0x00, 0x00, 0x04, 0xef, 0x00, 0x00, 0x00, 0x4c, + 0x46, 0x00, 0x00, 0x00, 0x04, 0x0a, 0x01, 0x00, + 0x00, 0x4c, 0x0d, 0x01, 0x00, 0x00, 0x04, 0x02, + 0x01, 0x00, 0x00, 0x4c, 0x1b, 0x00, 0x00, 0x00, + 0x04, 0x06, 0x01, 0x00, 0x00, 0x4c, 0x0e, 0x01, + 0x00, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x4c, + 0x0f, 0x01, 0x00, 0x00, 0x04, 0xed, 0x00, 0x00, + 0x00, 0x4c, 0x10, 0x01, 0x00, 0x00, 0x04, 0x0a, + 0x01, 0x00, 0x00, 0x4c, 0x11, 0x01, 0x00, 0x00, + 0x04, 0xfe, 0x00, 0x00, 0x00, 0x4c, 0x12, 0x01, 0x00, 0x00, 0xc3, 0x0b, 0x26, 0x00, 0x00, 0xc3, 0x0c, 0xc1, 0xc3, 0x0d, 0xc1, 0xc3, 0x11, 0xc1, 0xc3, 0x12, 0xb5, 0xc3, 0x13, 0xc2, 0x07, 0xea, - 0x0a, 0x04, 0x10, 0x01, 0x00, 0x00, 0xc3, 0x14, - 0xec, 0x08, 0x04, 0x11, 0x01, 0x00, 0x00, 0xc3, - 0x14, 0x04, 0x12, 0x01, 0x00, 0x00, 0xc3, 0x15, + 0x0a, 0x04, 0x13, 0x01, 0x00, 0x00, 0xc3, 0x14, + 0xec, 0x08, 0x04, 0x14, 0x01, 0x00, 0x00, 0xc3, + 0x14, 0x04, 0x15, 0x01, 0x00, 0x00, 0xc3, 0x15, 0x0a, 0xc3, 0x16, 0x09, 0xc3, 0x17, 0x0a, 0xc3, 0x18, 0xb5, 0xc3, 0x19, 0xc1, 0xc3, 0x1a, 0xb5, 0xc3, 0x1b, 0xc1, 0xc3, 0x1c, 0xb5, 0xc3, 0x1d, 0xc1, 0xc3, 0x1e, 0xb5, 0xc3, 0x1f, 0x09, 0xc3, 0x23, 0xb5, 0xc3, 0x24, 0xb5, 0xc3, 0x25, 0xb5, - 0xc3, 0x29, 0x0b, 0xc2, 0x3c, 0x4c, 0x13, 0x01, - 0x00, 0x00, 0xc2, 0x3f, 0x4c, 0x14, 0x01, 0x00, - 0x00, 0xc2, 0x59, 0x4c, 0x15, 0x01, 0x00, 0x00, - 0xc2, 0x4d, 0x4c, 0x16, 0x01, 0x00, 0x00, 0xc2, - 0x3d, 0x4c, 0x17, 0x01, 0x00, 0x00, 0xc2, 0x3e, - 0x4c, 0x18, 0x01, 0x00, 0x00, 0xc2, 0x3a, 0x4c, - 0x19, 0x01, 0x00, 0x00, 0xc2, 0x4e, 0x4c, 0x1a, - 0x01, 0x00, 0x00, 0xc2, 0x5e, 0x4c, 0x1b, 0x01, - 0x00, 0x00, 0xc2, 0x44, 0x4c, 0x1c, 0x01, 0x00, - 0x00, 0xc2, 0x54, 0x4c, 0x1d, 0x01, 0x00, 0x00, - 0xc2, 0x44, 0x4c, 0x1e, 0x01, 0x00, 0x00, 0xc2, - 0x47, 0x4c, 0x1f, 0x01, 0x00, 0x00, 0xc2, 0x46, - 0x4c, 0x20, 0x01, 0x00, 0x00, 0xc2, 0x39, 0x4c, - 0x21, 0x01, 0x00, 0x00, 0xc2, 0x3b, 0x4c, 0x22, - 0x01, 0x00, 0x00, 0xc2, 0x3b, 0x4c, 0x23, 0x01, - 0x00, 0x00, 0xc2, 0x4f, 0x4c, 0x24, 0x01, 0x00, - 0x00, 0xc2, 0x5a, 0x4c, 0x25, 0x01, 0x00, 0x00, - 0xc2, 0x58, 0x4c, 0x26, 0x01, 0x00, 0x00, 0xc2, - 0x46, 0x4c, 0x27, 0x01, 0x00, 0x00, 0xc2, 0x47, - 0x4c, 0x28, 0x01, 0x00, 0x00, 0xc2, 0x3e, 0x4c, - 0x29, 0x01, 0x00, 0x00, 0xc2, 0x3f, 0x4c, 0x2a, - 0x01, 0x00, 0x00, 0xc2, 0x42, 0x4c, 0x2b, 0x01, - 0x00, 0x00, 0xc2, 0x43, 0x4c, 0x2c, 0x01, 0x00, - 0x00, 0xc2, 0x42, 0x4c, 0x2d, 0x01, 0x00, 0x00, - 0xc2, 0x43, 0x4c, 0x2e, 0x01, 0x00, 0x00, 0xc2, - 0x3c, 0x4c, 0x2f, 0x01, 0x00, 0x00, 0xc2, 0x4c, - 0x4c, 0x30, 0x01, 0x00, 0x00, 0xc2, 0x3d, 0x4c, - 0x31, 0x01, 0x00, 0x00, 0xc2, 0x49, 0x4c, 0x32, - 0x01, 0x00, 0x00, 0xc2, 0x4a, 0x4c, 0x33, 0x01, - 0x00, 0x00, 0xc2, 0x46, 0x4c, 0x34, 0x01, 0x00, - 0x00, 0xc2, 0x47, 0x4c, 0x35, 0x01, 0x00, 0x00, - 0xc2, 0x3e, 0x4c, 0x36, 0x01, 0x00, 0x00, 0xc2, - 0x3f, 0x4c, 0x37, 0x01, 0x00, 0x00, 0xc2, 0x3d, - 0x4c, 0x38, 0x01, 0x00, 0x00, 0xc2, 0x3c, 0x4c, - 0x39, 0x01, 0x00, 0x00, 0xc2, 0x57, 0x4c, 0x3a, - 0x01, 0x00, 0x00, 0xc2, 0x43, 0x4c, 0x3b, 0x01, - 0x00, 0x00, 0xc2, 0x56, 0x4c, 0x3c, 0x01, 0x00, - 0x00, 0xc2, 0x42, 0x4c, 0x3d, 0x01, 0x00, 0x00, - 0xc2, 0x55, 0x4c, 0x3e, 0x01, 0x00, 0x00, 0xc2, - 0x52, 0x4c, 0x3f, 0x01, 0x00, 0x00, 0xc2, 0x50, - 0x4c, 0x40, 0x01, 0x00, 0x00, 0xc2, 0x51, 0x4c, - 0x41, 0x01, 0x00, 0x00, 0xc2, 0x4e, 0x4c, 0x42, + 0xc3, 0x29, 0x0b, 0xc2, 0x3c, 0x4c, 0x16, 0x01, + 0x00, 0x00, 0xc2, 0x3f, 0x4c, 0x17, 0x01, 0x00, + 0x00, 0xc2, 0x59, 0x4c, 0x18, 0x01, 0x00, 0x00, + 0xc2, 0x4d, 0x4c, 0x19, 0x01, 0x00, 0x00, 0xc2, + 0x3d, 0x4c, 0x1a, 0x01, 0x00, 0x00, 0xc2, 0x3e, + 0x4c, 0x1b, 0x01, 0x00, 0x00, 0xc2, 0x3a, 0x4c, + 0x1c, 0x01, 0x00, 0x00, 0xc2, 0x4e, 0x4c, 0x1d, + 0x01, 0x00, 0x00, 0xc2, 0x5e, 0x4c, 0x1e, 0x01, + 0x00, 0x00, 0xc2, 0x44, 0x4c, 0x1f, 0x01, 0x00, + 0x00, 0xc2, 0x54, 0x4c, 0x20, 0x01, 0x00, 0x00, + 0xc2, 0x44, 0x4c, 0x21, 0x01, 0x00, 0x00, 0xc2, + 0x47, 0x4c, 0x22, 0x01, 0x00, 0x00, 0xc2, 0x46, + 0x4c, 0x23, 0x01, 0x00, 0x00, 0xc2, 0x39, 0x4c, + 0x24, 0x01, 0x00, 0x00, 0xc2, 0x3b, 0x4c, 0x25, + 0x01, 0x00, 0x00, 0xc2, 0x3b, 0x4c, 0x26, 0x01, + 0x00, 0x00, 0xc2, 0x4f, 0x4c, 0x27, 0x01, 0x00, + 0x00, 0xc2, 0x5a, 0x4c, 0x28, 0x01, 0x00, 0x00, + 0xc2, 0x58, 0x4c, 0x29, 0x01, 0x00, 0x00, 0xc2, + 0x46, 0x4c, 0x2a, 0x01, 0x00, 0x00, 0xc2, 0x47, + 0x4c, 0x2b, 0x01, 0x00, 0x00, 0xc2, 0x3e, 0x4c, + 0x2c, 0x01, 0x00, 0x00, 0xc2, 0x3f, 0x4c, 0x2d, + 0x01, 0x00, 0x00, 0xc2, 0x42, 0x4c, 0x2e, 0x01, + 0x00, 0x00, 0xc2, 0x43, 0x4c, 0x2f, 0x01, 0x00, + 0x00, 0xc2, 0x42, 0x4c, 0x30, 0x01, 0x00, 0x00, + 0xc2, 0x43, 0x4c, 0x31, 0x01, 0x00, 0x00, 0xc2, + 0x3c, 0x4c, 0x32, 0x01, 0x00, 0x00, 0xc2, 0x4c, + 0x4c, 0x33, 0x01, 0x00, 0x00, 0xc2, 0x3d, 0x4c, + 0x34, 0x01, 0x00, 0x00, 0xc2, 0x49, 0x4c, 0x35, + 0x01, 0x00, 0x00, 0xc2, 0x4a, 0x4c, 0x36, 0x01, + 0x00, 0x00, 0xc2, 0x46, 0x4c, 0x37, 0x01, 0x00, + 0x00, 0xc2, 0x47, 0x4c, 0x38, 0x01, 0x00, 0x00, + 0xc2, 0x3e, 0x4c, 0x39, 0x01, 0x00, 0x00, 0xc2, + 0x3f, 0x4c, 0x3a, 0x01, 0x00, 0x00, 0xc2, 0x3d, + 0x4c, 0x3b, 0x01, 0x00, 0x00, 0xc2, 0x3c, 0x4c, + 0x3c, 0x01, 0x00, 0x00, 0xc2, 0x57, 0x4c, 0x3d, + 0x01, 0x00, 0x00, 0xc2, 0x43, 0x4c, 0x3e, 0x01, + 0x00, 0x00, 0xc2, 0x56, 0x4c, 0x3f, 0x01, 0x00, + 0x00, 0xc2, 0x42, 0x4c, 0x40, 0x01, 0x00, 0x00, + 0xc2, 0x55, 0x4c, 0x41, 0x01, 0x00, 0x00, 0xc2, + 0x52, 0x4c, 0x42, 0x01, 0x00, 0x00, 0xc2, 0x50, + 0x4c, 0x43, 0x01, 0x00, 0x00, 0xc2, 0x51, 0x4c, + 0x44, 0x01, 0x00, 0x00, 0xc2, 0x4e, 0x4c, 0x45, 0x01, 0x00, 0x00, 0xc3, 0x5f, 0x09, 0xc3, 0x68, - 0x04, 0xdf, 0x00, 0x00, 0x00, 0xc3, 0x69, 0xc2, - 0x07, 0xea, 0x09, 0xd1, 0xc0, 0x40, 0x43, 0x43, + 0x04, 0xe2, 0x00, 0x00, 0x00, 0xc3, 0x69, 0xc2, + 0x07, 0xea, 0x09, 0xd1, 0xc0, 0x40, 0x43, 0x46, 0x01, 0x00, 0x00, 0xc2, 0x2a, 0xee, 0x0e, 0xc2, - 0x72, 0xee, 0x29, 0x0e, 0x43, 0x02, 0x03, 0x88, + 0x72, 0xee, 0x29, 0x0e, 0x43, 0x02, 0x03, 0x8e, 0x05, 0x00, 0x01, 0x00, 0x04, 0x07, 0x00, 0x8b, 0x01, 0x00, 0x00, 0x26, 0x01, 0x00, 0x00, 0x0c, 0x00, 0x28, 0x01, 0x00, 0x01, 0x0c, 0x00, 0x2b, 0x01, 0x00, 0x27, 0x01, 0x00, 0x2c, 0x01, 0x65, 0x01, 0x00, 0x41, 0x0d, 0x00, 0x00, 0x00, 0x42, - 0x45, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xe1, - 0xbd, 0x50, 0xe3, 0x65, 0x03, 0x00, 0x42, 0x46, + 0x48, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0xe1, + 0xbd, 0x50, 0xe3, 0x65, 0x03, 0x00, 0x42, 0x49, 0x01, 0x00, 0x00, 0xdd, 0x24, 0x01, 0x00, 0xea, - 0x35, 0x65, 0x03, 0x00, 0x41, 0x47, 0x01, 0x00, - 0x00, 0xea, 0x14, 0x65, 0x03, 0x00, 0x42, 0x47, + 0x35, 0x65, 0x03, 0x00, 0x41, 0x4a, 0x01, 0x00, + 0x00, 0xea, 0x14, 0x65, 0x03, 0x00, 0x42, 0x4a, 0x01, 0x00, 0x00, 0xdd, 0x24, 0x01, 0x00, 0xcd, 0xea, 0x05, 0xc5, 0xb5, 0x47, 0xe3, 0x65, 0x03, - 0x00, 0x41, 0x48, 0x01, 0x00, 0x00, 0xea, 0x0e, - 0x65, 0x03, 0x00, 0x42, 0x48, 0x01, 0x00, 0x00, + 0x00, 0x41, 0x4b, 0x01, 0x00, 0x00, 0xea, 0x0e, + 0x65, 0x03, 0x00, 0x42, 0x4b, 0x01, 0x00, 0x00, 0xdd, 0x24, 0x01, 0x00, 0x0e, 0x65, 0x03, 0x00, - 0x42, 0x49, 0x01, 0x00, 0x00, 0x65, 0x03, 0x00, - 0x41, 0x4a, 0x01, 0x00, 0x00, 0x5e, 0x04, 0x00, - 0x24, 0x02, 0x00, 0x0e, 0x38, 0xa5, 0x00, 0x00, + 0x42, 0x4c, 0x01, 0x00, 0x00, 0x65, 0x03, 0x00, + 0x41, 0x4d, 0x01, 0x00, 0x00, 0x5e, 0x04, 0x00, + 0x24, 0x02, 0x00, 0x0e, 0x38, 0xa8, 0x00, 0x00, 0x00, 0x11, 0xbd, 0x40, 0x21, 0x01, 0x00, 0x5f, - 0x05, 0x00, 0x65, 0x03, 0x00, 0x42, 0x4b, 0x01, + 0x05, 0x00, 0x65, 0x03, 0x00, 0x42, 0x4e, 0x01, 0x00, 0x00, 0xdd, 0x5e, 0x06, 0x00, 0x24, 0x02, - 0x00, 0x29, 0x0e, 0x43, 0x02, 0x03, 0x98, 0x05, + 0x00, 0x29, 0x0e, 0x43, 0x02, 0x03, 0x9e, 0x05, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x04, 0x00, - 0x9a, 0x05, 0x2d, 0x01, 0xdd, 0xb8, 0xef, 0x29, - 0x0e, 0x43, 0x02, 0x03, 0x9c, 0x05, 0x00, 0x02, + 0xa0, 0x05, 0x2d, 0x01, 0xdd, 0xb8, 0xef, 0x29, + 0x0e, 0x43, 0x02, 0x03, 0xa2, 0x05, 0x00, 0x02, 0x00, 0x06, 0x04, 0x00, 0x28, 0x00, 0x00, 0x01, 0x0c, 0x00, 0x26, 0x01, 0x00, 0x27, 0x01, 0x00, - 0x2d, 0x01, 0x65, 0x00, 0x00, 0x42, 0x4f, 0x01, - 0x00, 0x00, 0xde, 0xdf, 0x41, 0x50, 0x01, 0x00, + 0x2d, 0x01, 0x65, 0x00, 0x00, 0x42, 0x52, 0x01, + 0x00, 0x00, 0xde, 0xdf, 0x41, 0x53, 0x01, 0x00, 0x00, 0xb5, 0xdf, 0xe9, 0x24, 0x04, 0x00, 0xc9, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0xea, 0x0b, 0xe0, 0xdf, 0xc6, 0x47, 0xef, 0x0e, 0x93, 0x01, 0xec, - 0xf2, 0x29, 0x0e, 0x43, 0x02, 0x03, 0x9a, 0x05, + 0xf2, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xa0, 0x05, 0x01, 0x00, 0x01, 0x04, 0x04, 0x00, 0x5f, 0x00, 0x00, 0x16, 0x01, 0x00, 0x66, 0x01, 0x00, 0x24, 0x01, 0x00, 0x25, 0x01, 0xdd, 0x96, 0xea, 0x06, @@ -719,95 +719,95 @@ const uint8_t qjsc_repl[16086] = { 0xa6, 0x9d, 0xd1, 0xbe, 0xf0, 0x00, 0xa6, 0x9d, 0xe3, 0xd1, 0xb6, 0xbb, 0xdf, 0x9e, 0xa0, 0xb6, 0x9e, 0xad, 0xe4, 0x29, 0xb5, 0xe3, 0xde, 0xd1, - 0xef, 0x0e, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xa2, + 0xef, 0x0e, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xa8, 0x05, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, 0x35, 0x00, 0xd1, 0x97, 0x04, 0x48, 0x00, 0x00, 0x00, - 0xab, 0x11, 0xea, 0x2a, 0x0e, 0xd1, 0x04, 0x52, + 0xab, 0x11, 0xea, 0x2a, 0x0e, 0xd1, 0x04, 0x55, 0x01, 0x00, 0x00, 0xa6, 0x11, 0xea, 0x09, 0x0e, - 0xd1, 0x04, 0x53, 0x01, 0x00, 0x00, 0xa4, 0x11, - 0xeb, 0x14, 0x0e, 0xd1, 0x04, 0x54, 0x01, 0x00, + 0xd1, 0x04, 0x56, 0x01, 0x00, 0x00, 0xa4, 0x11, + 0xeb, 0x14, 0x0e, 0xd1, 0x04, 0x57, 0x01, 0x00, 0x00, 0xa6, 0x11, 0xea, 0x09, 0x0e, 0xd1, 0x04, - 0x55, 0x01, 0x00, 0x00, 0xa4, 0x28, 0x0e, 0x43, - 0x02, 0x03, 0xac, 0x05, 0x01, 0x00, 0x01, 0x02, + 0x58, 0x01, 0x00, 0x00, 0xa4, 0x28, 0x0e, 0x43, + 0x02, 0x03, 0xb2, 0x05, 0x01, 0x00, 0x01, 0x02, 0x00, 0x02, 0x19, 0x00, 0xd1, 0x97, 0x04, 0x48, 0x00, 0x00, 0x00, 0xab, 0x11, 0xea, 0x0e, 0x0e, 0xd1, 0xbf, 0x00, 0xa6, 0x11, 0xea, 0x06, 0x0e, 0xd1, 0xbf, 0x01, 0xa4, 0x28, 0x07, 0x02, 0x30, - 0x07, 0x02, 0x39, 0x0e, 0x43, 0x02, 0x03, 0xae, + 0x07, 0x02, 0x39, 0x0e, 0x43, 0x02, 0x03, 0xb4, 0x05, 0x01, 0x00, 0x01, 0x02, 0x02, 0x00, 0x2d, 0x00, 0x00, 0x2e, 0x01, 0x00, 0x2f, 0x01, 0xd1, 0x97, 0x04, 0x48, 0x00, 0x00, 0x00, 0xab, 0x11, 0xea, 0x22, 0x0e, 0xdd, 0xd1, 0xef, 0x11, 0xeb, 0x1b, 0x0e, 0xde, 0xd1, 0xef, 0x11, 0xeb, 0x14, - 0x0e, 0xd1, 0x04, 0x58, 0x01, 0x00, 0x00, 0xa9, - 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x04, 0x59, 0x01, + 0x0e, 0xd1, 0x04, 0x5b, 0x01, 0x00, 0x00, 0xa9, + 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x04, 0x5c, 0x01, 0x00, 0x00, 0xa9, 0x28, 0x0e, 0x43, 0x02, 0x03, - 0xb4, 0x05, 0x01, 0x04, 0x01, 0x03, 0x00, 0x00, + 0xba, 0x05, 0x01, 0x04, 0x01, 0x03, 0x00, 0x00, 0x32, 0x00, 0xd1, 0xe9, 0xcc, 0xb5, 0xc9, 0xb5, 0xcb, 0xc7, 0xc8, 0xa3, 0xea, 0x25, 0xd1, 0x42, - 0x5b, 0x01, 0x00, 0x00, 0xc7, 0x24, 0x01, 0x00, + 0x5e, 0x01, 0x00, 0x00, 0xc7, 0x24, 0x01, 0x00, 0xce, 0x01, 0x00, 0xdc, 0x00, 0x00, 0xa3, 0x11, 0xeb, 0x09, 0x0e, 0xc6, 0x01, 0x00, 0xe0, 0x00, 0x00, 0xa6, 0xea, 0x03, 0x93, 0x00, 0x93, 0x02, 0xec, 0xd8, 0xc5, 0x28, 0x0e, 0x43, 0x02, 0x03, - 0xb8, 0x05, 0x01, 0x01, 0x01, 0x03, 0x00, 0x00, + 0xbe, 0x05, 0x01, 0x01, 0x01, 0x03, 0x00, 0x00, 0x29, 0x00, 0xd1, 0x97, 0x04, 0x48, 0x00, 0x00, 0x00, 0xac, 0xea, 0x03, 0x09, 0x28, 0xd1, 0x42, - 0x5d, 0x01, 0x00, 0x00, 0xb5, 0x24, 0x01, 0x00, + 0x60, 0x01, 0x00, 0x00, 0xb5, 0x24, 0x01, 0x00, 0xcd, 0x01, 0x00, 0xdc, 0x00, 0x00, 0xa6, 0x11, 0xea, 0x09, 0x0e, 0xc5, 0x01, 0x00, 0xe0, 0x00, - 0x00, 0xa3, 0x28, 0x0e, 0x43, 0x02, 0x03, 0xbc, + 0x00, 0xa3, 0x28, 0x0e, 0x43, 0x02, 0x03, 0xc2, 0x05, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, 0x23, - 0x00, 0xd1, 0xd2, 0x9d, 0x11, 0x04, 0x5f, 0x01, - 0x00, 0x00, 0xab, 0xeb, 0x13, 0x11, 0x04, 0x60, + 0x00, 0xd1, 0xd2, 0x9d, 0x11, 0x04, 0x62, 0x01, + 0x00, 0x00, 0xab, 0xeb, 0x13, 0x11, 0x04, 0x63, 0x01, 0x00, 0x00, 0xab, 0xeb, 0x0a, 0x11, 0x04, - 0x61, 0x01, 0x00, 0x00, 0xab, 0xea, 0x03, 0x0a, + 0x64, 0x01, 0x00, 0x00, 0xab, 0xea, 0x03, 0x0a, 0x28, 0x0e, 0x09, 0x28, 0x0e, 0x43, 0x02, 0x03, - 0xc4, 0x05, 0x03, 0x03, 0x03, 0x06, 0x03, 0x00, + 0xca, 0x05, 0x03, 0x03, 0x03, 0x06, 0x03, 0x00, 0x63, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x0a, 0x01, 0x00, 0x0b, 0x01, 0xd2, 0xca, 0xc6, 0xd1, 0xe9, 0xa3, 0xea, 0x5b, 0xd3, 0xc6, 0xcd, 0x47, 0xcb, 0xc6, 0x8f, 0xce, 0xd1, 0xe9, 0xa3, 0xea, 0x08, 0xd3, 0xc6, 0x47, 0xc7, 0xa9, 0xeb, 0xf2, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0xde, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xde, 0xdf, 0xc7, 0x47, 0x11, 0xeb, 0x07, 0x0e, 0x04, 0x16, 0x00, 0x00, 0x00, 0x47, 0x24, 0x01, 0x00, - 0x0e, 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, - 0x00, 0xd1, 0x42, 0x64, 0x01, 0x00, 0x00, 0xc5, + 0x0e, 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, + 0x00, 0xd1, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc5, 0xc6, 0x24, 0x02, 0x00, 0x24, 0x01, 0x00, 0x0e, - 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, - 0xde, 0x04, 0xe6, 0x00, 0x00, 0x00, 0x47, 0x24, + 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, + 0xde, 0x04, 0xe9, 0x00, 0x00, 0x00, 0x47, 0x24, 0x01, 0x00, 0x0e, 0xec, 0xa1, 0x29, 0x0e, 0x43, - 0x02, 0x03, 0xca, 0x05, 0x02, 0x00, 0x02, 0x05, + 0x02, 0x03, 0xd0, 0x05, 0x02, 0x00, 0x02, 0x05, 0x01, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x0c, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, - 0x66, 0x01, 0x00, 0x00, 0xd1, 0xb6, 0xaa, 0xea, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, + 0x69, 0x01, 0x00, 0x00, 0xd1, 0xb6, 0xaa, 0xea, 0x04, 0xd1, 0xec, 0x02, 0xc1, 0x9d, 0xd2, 0x9d, 0x24, 0x01, 0x00, 0x29, 0x0e, 0x43, 0x02, 0x03, - 0xce, 0x05, 0x01, 0x02, 0x01, 0x04, 0x05, 0x00, + 0xd4, 0x05, 0x01, 0x02, 0x01, 0x04, 0x05, 0x00, 0xa1, 0x01, 0x00, 0x00, 0x29, 0x01, 0x00, 0x28, 0x01, 0x00, 0x00, 0x0c, 0x00, 0x04, 0x01, 0x00, 0x35, 0x01, 0xd1, 0xb5, 0xa5, 0xea, 0x4d, 0xd1, 0xb5, 0xaa, 0x69, 0x97, 0x00, 0x00, 0x00, 0xdd, 0xde, 0xb6, 0x9e, 0xa9, 0xea, 0x19, 0x65, 0x02, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x1c, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xb5, 0xe1, 0xd1, 0x8e, 0xd5, 0xec, 0xda, 0xe0, 0x42, - 0x68, 0x01, 0x00, 0x00, 0xde, 0xb6, 0x9e, 0xdd, + 0x6b, 0x01, 0x00, 0x00, 0xde, 0xb6, 0x9e, 0xdd, 0x9e, 0xd1, 0x24, 0x02, 0x00, 0xca, 0x5e, 0x04, - 0x00, 0xc6, 0x04, 0x69, 0x01, 0x00, 0x00, 0xf0, + 0x00, 0xc6, 0x04, 0x6c, 0x01, 0x00, 0x00, 0xf0, 0x0e, 0xd1, 0xc6, 0x9e, 0xd5, 0xdd, 0xc6, 0x9d, 0xe1, 0xec, 0xb5, 0xd1, 0x8c, 0xd5, 0xd1, 0xb5, 0xaa, 0xea, 0x48, 0xdd, 0xb5, 0xa9, 0xea, 0x22, - 0x5e, 0x04, 0x00, 0xb6, 0x04, 0x52, 0x01, 0x00, + 0x5e, 0x04, 0x00, 0xb6, 0x04, 0x55, 0x01, 0x00, 0x00, 0xf0, 0x0e, 0x5e, 0x04, 0x00, 0xde, 0xb6, - 0x9e, 0x04, 0x69, 0x01, 0x00, 0x00, 0xf0, 0x0e, + 0x9e, 0x04, 0x6c, 0x01, 0x00, 0x00, 0xf0, 0x0e, 0xd1, 0x8e, 0xd5, 0xde, 0xb6, 0x9e, 0xe1, 0xec, - 0xd6, 0xe0, 0x42, 0x68, 0x01, 0x00, 0x00, 0xd1, + 0xd6, 0xe0, 0x42, 0x6b, 0x01, 0x00, 0x00, 0xd1, 0xdd, 0x24, 0x02, 0x00, 0xca, 0x5e, 0x04, 0x00, - 0xc6, 0x04, 0x6a, 0x01, 0x00, 0x00, 0xf0, 0x0e, + 0xc6, 0x04, 0x6d, 0x01, 0x00, 0x00, 0xf0, 0x0e, 0xd1, 0xc6, 0x9e, 0xd5, 0xdd, 0xc6, 0x9e, 0xe1, - 0xec, 0xb5, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xd6, + 0xec, 0xb5, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xdc, 0x05, 0x00, 0x05, 0x00, 0x06, 0x0d, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x1c, 0x01, 0x00, 0x1e, 0x01, 0x00, 0x18, 0x01, 0x00, 0x1f, 0x01, 0x00, 0x00, @@ -815,184 +815,184 @@ const uint8_t qjsc_repl[16086] = { 0x1a, 0x01, 0x00, 0x76, 0x01, 0x00, 0x34, 0x01, 0x00, 0x29, 0x01, 0x00, 0x28, 0x01, 0x00, 0x1d, 0x01, 0xdd, 0xde, 0xaa, 0x69, 0xc6, 0x00, 0x00, - 0x00, 0xdf, 0x96, 0xea, 0x32, 0xde, 0x42, 0x64, + 0x00, 0xdf, 0x96, 0xea, 0x32, 0xde, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xe0, 0x24, 0x02, 0x00, - 0xdd, 0x42, 0x64, 0x01, 0x00, 0x00, 0xb5, 0xe0, + 0xdd, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xe0, 0x24, 0x02, 0x00, 0xa9, 0xea, 0x19, 0x65, 0x04, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0xdd, 0x42, - 0x64, 0x01, 0x00, 0x00, 0xe0, 0x24, 0x01, 0x00, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xdd, 0x42, + 0x67, 0x01, 0x00, 0x00, 0xe0, 0x24, 0x01, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xec, 0x53, 0x5e, 0x05, - 0x00, 0x5e, 0x06, 0x00, 0xde, 0x42, 0x64, 0x01, + 0x00, 0x5e, 0x06, 0x00, 0xde, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xe0, 0x24, 0x02, 0x00, 0xef, 0x8c, 0xef, 0x0e, 0xdf, 0xea, 0x2e, 0x5e, 0x07, - 0x00, 0xea, 0x0e, 0x5e, 0x07, 0x00, 0x04, 0x1c, + 0x00, 0xea, 0x0e, 0x5e, 0x07, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x9d, 0xdd, 0x9d, 0xec, 0x02, 0xdd, 0xcf, 0xe9, 0xdd, 0xe9, 0x9e, 0xcc, 0x5e, 0x08, 0x00, 0xc7, 0xef, 0xc3, 0x04, 0x5e, 0x09, 0x00, 0xc7, 0xc8, 0xc2, 0x04, 0xb7, 0x47, 0xf1, - 0x0e, 0xec, 0x0e, 0x65, 0x04, 0x00, 0x42, 0x63, + 0x0e, 0xec, 0x0e, 0x65, 0x04, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xdd, 0x24, 0x01, 0x00, 0x0e, 0x5e, 0x0a, 0x00, 0x5e, 0x06, 0x00, 0xdd, 0xef, 0x9d, 0x5e, 0x0b, 0x00, 0x9c, 0x60, 0x0a, 0x00, 0xb5, 0xa9, 0xea, 0x12, 0x65, 0x04, 0x00, 0x42, - 0x63, 0x01, 0x00, 0x00, 0x04, 0x6c, 0x01, 0x00, + 0x66, 0x01, 0x00, 0x00, 0x04, 0x6f, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x65, 0x04, 0x00, - 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x6d, 0x01, + 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x70, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xdd, 0xe2, 0xdd, 0xe9, 0xe4, 0x5e, 0x0c, 0x00, 0xe0, 0xa5, 0xea, 0x19, 0x5e, 0x05, 0x00, 0x5e, 0x06, 0x00, - 0xdd, 0x42, 0x64, 0x01, 0x00, 0x00, 0xe0, 0x5e, + 0xdd, 0x42, 0x67, 0x01, 0x00, 0x00, 0xe0, 0x5e, 0x0c, 0x00, 0x24, 0x02, 0x00, 0xef, 0xef, 0x0e, 0xec, 0x1f, 0x5e, 0x0c, 0x00, 0xe0, 0xa3, 0xea, 0x18, 0x5e, 0x05, 0x00, 0x5e, 0x06, 0x00, 0xdd, - 0x42, 0x64, 0x01, 0x00, 0x00, 0x5e, 0x0c, 0x00, + 0x42, 0x67, 0x01, 0x00, 0x00, 0x5e, 0x0c, 0x00, 0xe0, 0x24, 0x02, 0x00, 0xef, 0x8c, 0xef, 0x0e, 0x5e, 0x0c, 0x00, 0xe4, 0x65, 0x04, 0x00, 0x41, - 0x6e, 0x01, 0x00, 0x00, 0x42, 0x6f, 0x01, 0x00, + 0x71, 0x01, 0x00, 0x00, 0x42, 0x72, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0x29, 0x0e, 0x43, 0x02, - 0x03, 0xe0, 0x05, 0x01, 0x00, 0x01, 0x04, 0x02, + 0x03, 0xe6, 0x05, 0x01, 0x00, 0x01, 0x04, 0x02, 0x00, 0x22, 0x00, 0x00, 0x1c, 0x01, 0x00, 0x1d, - 0x01, 0xd1, 0xea, 0x1f, 0xdd, 0x42, 0x64, 0x01, + 0x01, 0xd1, 0xea, 0x1f, 0xdd, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xde, 0x24, 0x02, 0x00, 0xd1, - 0x9d, 0xdd, 0x42, 0x64, 0x01, 0x00, 0x00, 0xde, + 0x9d, 0xdd, 0x42, 0x67, 0x01, 0x00, 0x00, 0xde, 0x24, 0x01, 0x00, 0x9d, 0xe1, 0xde, 0xd1, 0xe9, - 0x9d, 0xe2, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xe2, + 0x9d, 0xe2, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xe8, 0x05, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x03, - 0x00, 0xe4, 0x05, 0x23, 0x01, 0x0a, 0xe1, 0x29, - 0x0e, 0x43, 0x02, 0x03, 0xe6, 0x05, 0x00, 0x00, - 0x00, 0x01, 0x02, 0x00, 0x07, 0x00, 0xe8, 0x05, - 0x1c, 0x01, 0xea, 0x05, 0x1d, 0x01, 0xc1, 0xe1, + 0x00, 0xea, 0x05, 0x23, 0x01, 0x0a, 0xe1, 0x29, + 0x0e, 0x43, 0x02, 0x03, 0xec, 0x05, 0x00, 0x00, + 0x00, 0x01, 0x02, 0x00, 0x07, 0x00, 0xee, 0x05, + 0x1c, 0x01, 0xf0, 0x05, 0x1d, 0x01, 0xc1, 0xe1, 0xb5, 0xe2, 0xbd, 0xfe, 0x28, 0x0e, 0x43, 0x02, - 0x03, 0xec, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0xf2, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x29, 0x0e, 0x43, 0x02, 0x03, - 0xee, 0x05, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, - 0x03, 0x00, 0xea, 0x05, 0x1d, 0x01, 0xb5, 0xe1, - 0x29, 0x0e, 0x43, 0x02, 0x03, 0xf0, 0x05, 0x00, - 0x00, 0x00, 0x01, 0x02, 0x00, 0x04, 0x00, 0xea, - 0x05, 0x1d, 0x01, 0xe8, 0x05, 0x1c, 0x01, 0xde, - 0xe9, 0xe1, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xf2, + 0xf4, 0x05, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, + 0x03, 0x00, 0xf0, 0x05, 0x1d, 0x01, 0xb5, 0xe1, + 0x29, 0x0e, 0x43, 0x02, 0x03, 0xf6, 0x05, 0x00, + 0x00, 0x00, 0x01, 0x02, 0x00, 0x04, 0x00, 0xf0, + 0x05, 0x1d, 0x01, 0xee, 0x05, 0x1c, 0x01, 0xde, + 0xe9, 0xe1, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xf8, 0x05, 0x00, 0x00, 0x00, 0x04, 0x03, 0x00, 0x1d, - 0x00, 0xea, 0x05, 0x1d, 0x01, 0xe8, 0x05, 0x1c, - 0x01, 0xb8, 0x05, 0x32, 0x01, 0xdd, 0xde, 0xe9, + 0x00, 0xf0, 0x05, 0x1d, 0x01, 0xee, 0x05, 0x1c, + 0x01, 0xbe, 0x05, 0x32, 0x01, 0xdd, 0xde, 0xe9, 0xa3, 0xea, 0x17, 0xdd, 0x8f, 0xe1, 0xdf, 0xde, - 0x42, 0x7a, 0x01, 0x00, 0x00, 0xdd, 0x24, 0x01, + 0x42, 0x7d, 0x01, 0x00, 0x00, 0xdd, 0x24, 0x01, 0x00, 0xef, 0xea, 0x06, 0xdd, 0x8f, 0xe1, 0xec, - 0xee, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xf6, 0x05, + 0xee, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xfc, 0x05, 0x00, 0x00, 0x00, 0x04, 0x03, 0x00, 0x1c, 0x00, - 0xea, 0x05, 0x1d, 0x01, 0xb8, 0x05, 0x32, 0x01, - 0xe8, 0x05, 0x1c, 0x01, 0xdd, 0xb5, 0xa5, 0xea, - 0x17, 0xdd, 0x8e, 0xe1, 0xde, 0xdf, 0x42, 0x7a, + 0xf0, 0x05, 0x1d, 0x01, 0xbe, 0x05, 0x32, 0x01, + 0xee, 0x05, 0x1c, 0x01, 0xdd, 0xb5, 0xa5, 0xea, + 0x17, 0xdd, 0x8e, 0xe1, 0xde, 0xdf, 0x42, 0x7d, 0x01, 0x00, 0x00, 0xdd, 0x24, 0x01, 0x00, 0xef, 0xea, 0x06, 0xdd, 0x8e, 0xe1, 0xec, 0xee, 0x29, - 0x0e, 0x43, 0x02, 0x03, 0xf8, 0x05, 0x01, 0x00, + 0x0e, 0x43, 0x02, 0x03, 0xfe, 0x05, 0x01, 0x00, 0x01, 0x04, 0x02, 0x00, 0x35, 0x00, 0x00, 0x1c, 0x01, 0x00, 0x30, 0x01, 0xd1, 0xdd, 0xe9, 0xa3, - 0xea, 0x15, 0xde, 0xdd, 0x42, 0x7a, 0x01, 0x00, + 0xea, 0x15, 0xde, 0xdd, 0x42, 0x7d, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xef, 0x96, 0xea, 0x06, 0xd1, 0x8f, 0xd5, 0xec, 0xe7, 0xd1, 0xdd, - 0xe9, 0xa3, 0xea, 0x14, 0xde, 0xdd, 0x42, 0x7a, + 0xe9, 0xa3, 0xea, 0x14, 0xde, 0xdd, 0x42, 0x7d, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xef, 0xea, 0x06, 0xd1, 0x8f, 0xd5, 0xec, 0xe8, 0xd1, - 0x28, 0x0e, 0x43, 0x02, 0x03, 0xfa, 0x05, 0x01, + 0x28, 0x0e, 0x43, 0x02, 0x03, 0x80, 0x06, 0x01, 0x00, 0x01, 0x05, 0x02, 0x00, 0x37, 0x00, 0x00, 0x30, 0x01, 0x00, 0x1c, 0x01, 0xd1, 0xb5, 0xa5, - 0xea, 0x17, 0xdd, 0xde, 0x42, 0x7a, 0x01, 0x00, + 0xea, 0x17, 0xdd, 0xde, 0x42, 0x7d, 0x01, 0x00, 0x00, 0xd1, 0xb6, 0x9e, 0x24, 0x01, 0x00, 0xef, 0x96, 0xea, 0x06, 0xd1, 0x8e, 0xd5, 0xec, 0xe6, 0xd1, 0xb5, 0xa5, 0xea, 0x16, 0xdd, 0xde, 0x42, - 0x7a, 0x01, 0x00, 0x00, 0xd1, 0xb6, 0x9e, 0x24, + 0x7d, 0x01, 0x00, 0x00, 0xd1, 0xb6, 0x9e, 0x24, 0x01, 0x00, 0xef, 0xea, 0x06, 0xd1, 0x8e, 0xd5, 0xec, 0xe7, 0xd1, 0x28, 0x0e, 0x43, 0x02, 0x03, - 0xfc, 0x05, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, - 0x05, 0x00, 0xea, 0x05, 0x1d, 0x01, 0xf8, 0x05, + 0x82, 0x06, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, + 0x05, 0x00, 0xf0, 0x05, 0x1d, 0x01, 0xfe, 0x05, 0x40, 0x01, 0xde, 0xdd, 0xef, 0xe1, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0xfe, 0x05, 0x00, 0x00, 0x00, - 0x02, 0x02, 0x00, 0x05, 0x00, 0xea, 0x05, 0x1d, - 0x01, 0xfa, 0x05, 0x41, 0x01, 0xde, 0xdd, 0xef, - 0xe1, 0x29, 0x0e, 0x43, 0x02, 0x03, 0x80, 0x06, + 0x43, 0x02, 0x03, 0x84, 0x06, 0x00, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x05, 0x00, 0xf0, 0x05, 0x1d, + 0x01, 0x80, 0x06, 0x41, 0x01, 0xde, 0xdd, 0xef, + 0xe1, 0x29, 0x0e, 0x43, 0x02, 0x03, 0x86, 0x06, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x17, 0x00, - 0xbe, 0x03, 0x00, 0x0c, 0x82, 0x06, 0x45, 0x01, - 0xe8, 0x05, 0x1c, 0x01, 0x65, 0x00, 0x00, 0x42, - 0x63, 0x01, 0x00, 0x00, 0x04, 0x1c, 0x01, 0x00, + 0xc4, 0x03, 0x00, 0x0c, 0x88, 0x06, 0x45, 0x01, + 0xee, 0x05, 0x1c, 0x01, 0x65, 0x00, 0x00, 0x42, + 0x66, 0x01, 0x00, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xde, 0xdf, 0xef, - 0x0e, 0xb4, 0x28, 0x0e, 0x43, 0x02, 0x03, 0x82, + 0x0e, 0xb4, 0x28, 0x0e, 0x43, 0x02, 0x03, 0x88, 0x06, 0x01, 0x00, 0x01, 0x03, 0x02, 0x00, 0x12, 0x00, 0x00, 0x0c, 0x01, 0x00, 0x20, 0x01, 0xd1, - 0xea, 0x0c, 0xdd, 0x42, 0x82, 0x01, 0x00, 0x00, + 0xea, 0x0c, 0xdd, 0x42, 0x85, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x0e, 0xdd, 0xe9, 0xe2, - 0x29, 0x0e, 0x43, 0x02, 0x03, 0x86, 0x06, 0x00, - 0x00, 0x00, 0x03, 0x04, 0x00, 0x20, 0x00, 0x88, - 0x06, 0x20, 0x01, 0x8a, 0x06, 0x0c, 0x01, 0xe8, - 0x05, 0x1c, 0x01, 0xea, 0x05, 0x1d, 0x01, 0xdd, + 0x29, 0x0e, 0x43, 0x02, 0x03, 0x8c, 0x06, 0x00, + 0x00, 0x00, 0x03, 0x04, 0x00, 0x20, 0x00, 0x8e, + 0x06, 0x20, 0x01, 0x90, 0x06, 0x0c, 0x01, 0xee, + 0x05, 0x1c, 0x01, 0xf0, 0x05, 0x1d, 0x01, 0xdd, 0xb5, 0xa5, 0xea, 0x1b, 0xdd, 0xde, 0xe9, 0xa9, - 0xea, 0x0c, 0xde, 0x42, 0x82, 0x01, 0x00, 0x00, + 0xea, 0x0c, 0xde, 0x42, 0x85, 0x01, 0x00, 0x00, 0xdf, 0x24, 0x01, 0x00, 0x0e, 0xdd, 0x8e, 0xe1, 0xde, 0xdd, 0x47, 0xe7, 0xe9, 0xe4, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0x8c, 0x06, 0x00, 0x00, 0x00, - 0x03, 0x04, 0x00, 0x12, 0x00, 0x88, 0x06, 0x20, - 0x01, 0x8a, 0x06, 0x0c, 0x01, 0xe8, 0x05, 0x1c, - 0x01, 0xea, 0x05, 0x1d, 0x01, 0xdd, 0xde, 0xe9, + 0x43, 0x02, 0x03, 0x92, 0x06, 0x00, 0x00, 0x00, + 0x03, 0x04, 0x00, 0x12, 0x00, 0x8e, 0x06, 0x20, + 0x01, 0x90, 0x06, 0x0c, 0x01, 0xee, 0x05, 0x1c, + 0x01, 0xf0, 0x05, 0x1d, 0x01, 0xdd, 0xde, 0xe9, 0xb6, 0x9e, 0xa3, 0xea, 0x0a, 0xdd, 0x8f, 0xe1, 0xde, 0xdd, 0x47, 0xe7, 0xe9, 0xe4, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0x8e, 0x06, 0x01, 0x03, 0x01, + 0x43, 0x02, 0x03, 0x94, 0x06, 0x01, 0x03, 0x01, 0x05, 0x04, 0x00, 0x3d, 0x00, 0x00, 0x1d, 0x01, 0x00, 0x0c, 0x01, 0x00, 0x20, 0x01, 0x00, 0x1c, 0x01, 0xdd, 0xc9, 0xb6, 0xca, 0xc6, 0xde, 0xe9, 0xa4, 0xea, 0x33, 0xde, 0xe9, 0xc6, 0xd1, 0x9a, 0x9d, 0xdf, 0x9d, 0xde, 0xe9, 0x9c, 0xcb, 0xde, - 0xc7, 0x47, 0x42, 0x64, 0x01, 0x00, 0x00, 0xb5, - 0xc5, 0x24, 0x02, 0x00, 0xe0, 0x42, 0x64, 0x01, + 0xc7, 0x47, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, + 0xc5, 0x24, 0x02, 0x00, 0xe0, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xc5, 0x24, 0x02, 0x00, 0xa9, 0xea, 0x08, 0xc7, 0xe3, 0xde, 0xc7, 0x47, 0xe4, 0x29, 0x93, 0x01, 0xec, 0xc9, 0x29, 0x0e, 0x43, - 0x02, 0x03, 0x90, 0x06, 0x00, 0x00, 0x00, 0x02, - 0x01, 0x00, 0x05, 0x00, 0x8e, 0x06, 0x48, 0x01, + 0x02, 0x03, 0x96, 0x06, 0x00, 0x00, 0x00, 0x02, + 0x01, 0x00, 0x05, 0x00, 0x94, 0x06, 0x48, 0x01, 0xdd, 0xb4, 0x23, 0x01, 0x00, 0x0e, 0x43, 0x02, - 0x03, 0x92, 0x06, 0x00, 0x00, 0x00, 0x02, 0x01, - 0x00, 0x05, 0x00, 0x8e, 0x06, 0x48, 0x01, 0xdd, + 0x03, 0x98, 0x06, 0x00, 0x00, 0x00, 0x02, 0x01, + 0x00, 0x05, 0x00, 0x94, 0x06, 0x48, 0x01, 0xdd, 0xb6, 0x23, 0x01, 0x00, 0x0e, 0x43, 0x02, 0x03, - 0x94, 0x06, 0x01, 0x02, 0x01, 0x04, 0x05, 0x00, + 0x9a, 0x06, 0x01, 0x02, 0x01, 0x04, 0x05, 0x00, 0x66, 0x00, 0x00, 0x1d, 0x01, 0x00, 0x32, 0x01, 0x00, 0x1c, 0x01, 0x00, 0x22, 0x01, 0x00, 0x53, 0x01, 0xdd, 0xc9, 0xd1, 0xb5, 0xa3, 0xea, 0x15, - 0x92, 0x00, 0xde, 0xdf, 0x42, 0x7a, 0x01, 0x00, + 0x92, 0x00, 0xde, 0xdf, 0x42, 0x7d, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, 0x00, 0xef, 0xea, 0x05, 0x92, 0x00, 0xec, 0xef, 0xc5, 0xb6, 0x9d, 0xca, - 0xde, 0xdf, 0x42, 0x7a, 0x01, 0x00, 0x00, 0xc6, + 0xde, 0xdf, 0x42, 0x7d, 0x01, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, 0xef, 0xea, 0x05, 0x93, 0x01, 0xec, 0xef, 0xc5, 0xb5, 0xa6, 0xea, 0x30, 0xc5, 0xdf, 0xe9, 0xa3, 0xea, 0x2a, 0xe0, 0x5e, 0x04, 0x00, 0xab, 0xea, 0x0a, 0x5e, 0x04, 0x00, 0xc5, - 0xc6, 0xd1, 0xf1, 0x0e, 0x29, 0xdf, 0x42, 0x64, + 0xc6, 0xd1, 0xf1, 0x0e, 0x29, 0xdf, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xc5, 0x24, 0x02, 0x00, - 0xdf, 0x42, 0x64, 0x01, 0x00, 0x00, 0xc6, 0x24, + 0xdf, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, 0x9d, 0xe3, 0xc5, 0xe1, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0x96, 0x06, 0x00, 0x00, 0x00, - 0x02, 0x01, 0x00, 0x04, 0x00, 0x94, 0x06, 0x4b, + 0x43, 0x02, 0x03, 0x9c, 0x06, 0x00, 0x00, 0x00, + 0x02, 0x01, 0x00, 0x04, 0x00, 0x9a, 0x06, 0x4b, 0x01, 0xdd, 0xb6, 0xef, 0x29, 0x0e, 0x43, 0x02, - 0x03, 0x98, 0x06, 0x00, 0x00, 0x00, 0x03, 0x03, - 0x00, 0x1f, 0x00, 0xe8, 0x05, 0x1c, 0x01, 0xbe, - 0x03, 0x00, 0x0c, 0x94, 0x06, 0x4b, 0x01, 0xdd, + 0x03, 0x9e, 0x06, 0x00, 0x00, 0x00, 0x03, 0x03, + 0x00, 0x1f, 0x00, 0xee, 0x05, 0x1c, 0x01, 0xc4, + 0x03, 0x00, 0x0c, 0x9a, 0x06, 0x4b, 0x01, 0xdd, 0xe9, 0xb5, 0xa9, 0xea, 0x15, 0x65, 0x01, 0x00, - 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x1c, 0x01, + 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xbd, 0xfd, 0x28, 0xdf, 0xb6, 0xef, 0x0e, 0x29, 0x0e, 0x43, - 0x02, 0x03, 0x9a, 0x06, 0x00, 0x00, 0x00, 0x02, - 0x01, 0x00, 0x04, 0x00, 0x94, 0x06, 0x4b, 0x01, + 0x02, 0x03, 0xa0, 0x06, 0x00, 0x00, 0x00, 0x02, + 0x01, 0x00, 0x04, 0x00, 0x9a, 0x06, 0x4b, 0x01, 0xdd, 0xb4, 0xef, 0x29, 0x0e, 0x43, 0x02, 0x03, - 0x9c, 0x06, 0x00, 0x01, 0x00, 0x06, 0x02, 0x00, + 0xa2, 0x06, 0x00, 0x01, 0x00, 0x06, 0x02, 0x00, 0x51, 0x00, 0x00, 0x1d, 0x01, 0x00, 0x1c, 0x01, 0xdd, 0xc9, 0xde, 0xe9, 0xb6, 0xa5, 0xea, 0x49, 0xc5, 0xb5, 0xa5, 0xea, 0x44, 0xc5, 0xde, 0xe9, - 0xa9, 0xea, 0x03, 0x92, 0x00, 0xde, 0x42, 0x64, + 0xa9, 0xea, 0x03, 0x92, 0x00, 0xde, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xc5, 0xb6, 0x9e, 0x24, - 0x02, 0x00, 0xde, 0x42, 0x64, 0x01, 0x00, 0x00, + 0x02, 0x00, 0xde, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc5, 0xc5, 0xb6, 0x9d, 0x24, 0x02, 0x00, 0x9d, - 0xde, 0x42, 0x64, 0x01, 0x00, 0x00, 0xc5, 0xb6, + 0xde, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc5, 0xb6, 0x9e, 0xc5, 0x24, 0x02, 0x00, 0x9d, 0xde, 0x42, - 0x64, 0x01, 0x00, 0x00, 0xc5, 0xb6, 0x9d, 0x24, + 0x67, 0x01, 0x00, 0x00, 0xc5, 0xb6, 0x9d, 0x24, 0x01, 0x00, 0x9d, 0xe2, 0xc5, 0xb6, 0x9d, 0xe1, - 0x29, 0x0e, 0x43, 0x02, 0x03, 0x9e, 0x06, 0x00, + 0x29, 0x0e, 0x43, 0x02, 0x03, 0xa4, 0x06, 0x00, 0x04, 0x00, 0x05, 0x04, 0x00, 0x57, 0x00, 0x00, 0x41, 0x01, 0x00, 0x1d, 0x01, 0x00, 0x40, 0x01, 0x00, 0x1c, 0x01, 0xdd, 0xde, 0xef, 0xc9, 0xdf, @@ -1000,177 +1000,177 @@ const uint8_t qjsc_repl[16086] = { 0xc7, 0xef, 0xcc, 0xc5, 0xc6, 0xa3, 0xea, 0x42, 0xc6, 0xde, 0xa4, 0xea, 0x3d, 0xde, 0xc8, 0xa4, 0xea, 0x38, 0xc8, 0xc7, 0xa3, 0xea, 0x33, 0xe0, - 0x42, 0x64, 0x01, 0x00, 0x00, 0xb5, 0xc5, 0x24, - 0x02, 0x00, 0xe0, 0x42, 0x64, 0x01, 0x00, 0x00, + 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xc5, 0x24, + 0x02, 0x00, 0xe0, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc8, 0xc7, 0x24, 0x02, 0x00, 0x9d, 0xe0, 0x42, - 0x64, 0x01, 0x00, 0x00, 0xc6, 0xc8, 0x24, 0x02, - 0x00, 0x9d, 0xe0, 0x42, 0x64, 0x01, 0x00, 0x00, + 0x67, 0x01, 0x00, 0x00, 0xc6, 0xc8, 0x24, 0x02, + 0x00, 0x9d, 0xe0, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc5, 0xc6, 0x24, 0x02, 0x00, 0x9d, 0xe4, 0xc7, - 0xe2, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xa0, 0x06, + 0xe2, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xa6, 0x06, 0x00, 0x01, 0x00, 0x05, 0x03, 0x00, 0x30, 0x00, 0x00, 0x40, 0x01, 0x00, 0x1d, 0x01, 0x00, 0x1c, - 0x01, 0xdd, 0xde, 0xef, 0xc9, 0xdf, 0x42, 0x64, + 0x01, 0xdd, 0xde, 0xef, 0xc9, 0xdf, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xde, 0x24, 0x02, 0x00, - 0xdf, 0x42, 0x64, 0x01, 0x00, 0x00, 0xde, 0xc5, - 0x24, 0x02, 0x00, 0x42, 0x91, 0x01, 0x00, 0x00, - 0x24, 0x00, 0x00, 0x9d, 0xdf, 0x42, 0x64, 0x01, + 0xdf, 0x42, 0x67, 0x01, 0x00, 0x00, 0xde, 0xc5, + 0x24, 0x02, 0x00, 0x42, 0x94, 0x01, 0x00, 0x00, + 0x24, 0x00, 0x00, 0x9d, 0xdf, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, 0x00, 0x9d, 0xe3, - 0x29, 0x0e, 0x43, 0x02, 0x03, 0xa4, 0x06, 0x00, + 0x29, 0x0e, 0x43, 0x02, 0x03, 0xaa, 0x06, 0x00, 0x01, 0x00, 0x05, 0x03, 0x00, 0x30, 0x00, 0x00, 0x40, 0x01, 0x00, 0x1d, 0x01, 0x00, 0x1c, 0x01, - 0xdd, 0xde, 0xef, 0xc9, 0xdf, 0x42, 0x64, 0x01, + 0xdd, 0xde, 0xef, 0xc9, 0xdf, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xde, 0x24, 0x02, 0x00, 0xdf, - 0x42, 0x64, 0x01, 0x00, 0x00, 0xde, 0xc5, 0x24, - 0x02, 0x00, 0x42, 0x93, 0x01, 0x00, 0x00, 0x24, - 0x00, 0x00, 0x9d, 0xdf, 0x42, 0x64, 0x01, 0x00, + 0x42, 0x67, 0x01, 0x00, 0x00, 0xde, 0xc5, 0x24, + 0x02, 0x00, 0x42, 0x96, 0x01, 0x00, 0x00, 0x24, + 0x00, 0x00, 0x9d, 0xdf, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, 0x00, 0x9d, 0xe3, 0x29, - 0x0e, 0x43, 0x02, 0x03, 0xa8, 0x06, 0x03, 0x01, + 0x0e, 0x43, 0x02, 0x03, 0xae, 0x06, 0x03, 0x01, 0x03, 0x04, 0x06, 0x00, 0x5e, 0x00, 0x00, 0x1c, 0x01, 0x00, 0x22, 0x01, 0x00, 0x53, 0x01, 0x00, 0x0d, 0x01, 0x00, 0x1d, 0x01, 0x00, 0x21, 0x01, - 0xdd, 0x42, 0x64, 0x01, 0x00, 0x00, 0xd1, 0xd2, + 0xdd, 0x42, 0x67, 0x01, 0x00, 0x00, 0xd1, 0xd2, 0x24, 0x02, 0x00, 0xc9, 0xde, 0xdf, 0xac, 0xea, 0x05, 0xc5, 0xe4, 0xec, 0x10, 0xd3, 0xb5, 0xa3, 0xea, 0x07, 0xc5, 0xe0, 0x9d, 0xe4, 0xec, 0x05, - 0xe0, 0xc5, 0x9d, 0xe4, 0xdd, 0x42, 0x64, 0x01, + 0xe0, 0xc5, 0x9d, 0xe4, 0xdd, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xd1, 0x24, 0x02, 0x00, 0xdd, - 0x42, 0x64, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, + 0x42, 0x67, 0x01, 0x00, 0x00, 0xd2, 0x24, 0x01, 0x00, 0x9d, 0xe1, 0x5e, 0x04, 0x00, 0xd2, 0xa5, 0xea, 0x0d, 0x5e, 0x04, 0x00, 0xd2, 0xd1, 0x9e, 0x9e, 0x5f, 0x04, 0x00, 0xec, 0x0c, 0x5e, 0x04, 0x00, 0xd1, 0xa5, 0xea, 0x05, 0xd1, 0x5f, 0x04, 0x00, 0xdf, 0x5f, 0x05, 0x00, 0x29, 0x0e, 0x43, - 0x02, 0x03, 0xaa, 0x06, 0x00, 0x00, 0x00, 0x04, - 0x03, 0x00, 0x07, 0x00, 0xa8, 0x06, 0x53, 0x01, - 0xea, 0x05, 0x1d, 0x01, 0xe8, 0x05, 0x1c, 0x01, + 0x02, 0x03, 0xb0, 0x06, 0x00, 0x00, 0x00, 0x04, + 0x03, 0x00, 0x07, 0x00, 0xae, 0x06, 0x53, 0x01, + 0xf0, 0x05, 0x1d, 0x01, 0xee, 0x05, 0x1c, 0x01, 0xdd, 0xde, 0xdf, 0xe9, 0xb6, 0xf1, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0xac, 0x06, 0x00, 0x00, 0x00, - 0x04, 0x02, 0x00, 0x06, 0x00, 0xa8, 0x06, 0x53, - 0x01, 0xea, 0x05, 0x1d, 0x01, 0xdd, 0xb5, 0xde, - 0xb4, 0xf1, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xae, + 0x43, 0x02, 0x03, 0xb2, 0x06, 0x00, 0x00, 0x00, + 0x04, 0x02, 0x00, 0x06, 0x00, 0xae, 0x06, 0x53, + 0x01, 0xf0, 0x05, 0x1d, 0x01, 0xdd, 0xb5, 0xde, + 0xb4, 0xf1, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xb4, 0x06, 0x00, 0x00, 0x00, 0x04, 0x03, 0x00, 0x08, - 0x00, 0xa8, 0x06, 0x53, 0x01, 0xea, 0x05, 0x1d, - 0x01, 0xf8, 0x05, 0x40, 0x01, 0xdd, 0xde, 0xdf, + 0x00, 0xae, 0x06, 0x53, 0x01, 0xf0, 0x05, 0x1d, + 0x01, 0xfe, 0x05, 0x40, 0x01, 0xdd, 0xde, 0xdf, 0xde, 0xef, 0xb6, 0xf1, 0x29, 0x0e, 0x43, 0x02, - 0x03, 0xb0, 0x06, 0x00, 0x00, 0x00, 0x04, 0x03, - 0x00, 0x08, 0x00, 0xa8, 0x06, 0x53, 0x01, 0xfa, - 0x05, 0x41, 0x01, 0xea, 0x05, 0x1d, 0x01, 0xdd, + 0x03, 0xb6, 0x06, 0x00, 0x00, 0x00, 0x04, 0x03, + 0x00, 0x08, 0x00, 0xae, 0x06, 0x53, 0x01, 0x80, + 0x06, 0x41, 0x01, 0xf0, 0x05, 0x1d, 0x01, 0xdd, 0xde, 0xdf, 0xef, 0xdf, 0xb4, 0xf1, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0xb2, 0x06, 0x00, 0x00, 0x00, - 0x02, 0x02, 0x00, 0x04, 0x00, 0xe0, 0x05, 0x38, - 0x01, 0xb4, 0x06, 0x0d, 0x01, 0xdd, 0xde, 0xef, - 0x29, 0x0e, 0x43, 0x02, 0x03, 0xb6, 0x06, 0x00, - 0x00, 0x00, 0x03, 0x04, 0x00, 0x39, 0x00, 0xb8, - 0x06, 0x22, 0x01, 0xb6, 0x06, 0x59, 0x01, 0xbe, - 0x03, 0x00, 0x0c, 0xba, 0x06, 0x64, 0x01, 0xdd, + 0x43, 0x02, 0x03, 0xb8, 0x06, 0x00, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x04, 0x00, 0xe6, 0x05, 0x38, + 0x01, 0xba, 0x06, 0x0d, 0x01, 0xdd, 0xde, 0xef, + 0x29, 0x0e, 0x43, 0x02, 0x03, 0xbc, 0x06, 0x00, + 0x00, 0x00, 0x03, 0x04, 0x00, 0x39, 0x00, 0xbe, + 0x06, 0x22, 0x01, 0xbc, 0x06, 0x59, 0x01, 0xc4, + 0x03, 0x00, 0x0c, 0xc0, 0x06, 0x64, 0x01, 0xdd, 0xde, 0xab, 0xea, 0x20, 0x65, 0x02, 0x00, 0x42, - 0x63, 0x01, 0x00, 0x00, 0x04, 0x1c, 0x01, 0x00, + 0x66, 0x01, 0x00, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x65, 0x02, 0x00, - 0x42, 0x9e, 0x01, 0x00, 0x00, 0xb5, 0x24, 0x01, - 0x00, 0x0e, 0x29, 0x65, 0x02, 0x00, 0x42, 0x63, - 0x01, 0x00, 0x00, 0x04, 0x9f, 0x01, 0x00, 0x00, + 0x42, 0xa1, 0x01, 0x00, 0x00, 0xb5, 0x24, 0x01, + 0x00, 0x0e, 0x29, 0x65, 0x02, 0x00, 0x42, 0x66, + 0x01, 0x00, 0x00, 0x04, 0xa2, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xe0, 0xee, 0x0e, 0x29, - 0x0e, 0x43, 0x02, 0x03, 0xc0, 0x06, 0x00, 0x00, - 0x00, 0x01, 0x02, 0x00, 0x05, 0x00, 0xe8, 0x05, - 0x1c, 0x01, 0xea, 0x05, 0x1d, 0x01, 0xc1, 0xe1, - 0xb5, 0xe2, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xc2, + 0x0e, 0x43, 0x02, 0x03, 0xc6, 0x06, 0x00, 0x00, + 0x00, 0x01, 0x02, 0x00, 0x05, 0x00, 0xee, 0x05, + 0x1c, 0x01, 0xf0, 0x05, 0x1d, 0x01, 0xc1, 0xe1, + 0xb5, 0xe2, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xc8, 0x06, 0x02, 0x01, 0x02, 0x04, 0x01, 0x00, 0x1d, 0x00, 0x00, 0x30, 0x01, 0xc1, 0xc9, 0xd2, 0xb5, 0xa5, 0xea, 0x15, 0xdd, 0xd1, 0xd2, 0xb6, 0x9e, 0x47, 0xef, 0xea, 0x0c, 0xd2, 0x8e, 0xd6, 0xd1, 0xd2, 0x47, 0xc5, 0x9d, 0xc9, 0xec, 0xe8, 0xc5, - 0x28, 0x0e, 0x43, 0x02, 0x03, 0xc4, 0x06, 0x02, + 0x28, 0x0e, 0x43, 0x02, 0x03, 0xca, 0x06, 0x02, 0x06, 0x02, 0x05, 0x7a, 0x02, 0x87, 0x02, 0x08, - 0xc6, 0x06, 0x00, 0x01, 0x00, 0xc8, 0x06, 0x00, - 0x01, 0x00, 0xca, 0x06, 0x00, 0x00, 0x00, 0xcc, - 0x06, 0x00, 0x01, 0x00, 0xce, 0x06, 0x00, 0x02, + 0xcc, 0x06, 0x00, 0x01, 0x00, 0xce, 0x06, 0x00, + 0x01, 0x00, 0xd0, 0x06, 0x00, 0x00, 0x00, 0xd2, + 0x06, 0x00, 0x01, 0x00, 0xd4, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x01, 0x00, 0xe2, 0x01, 0x00, - 0x01, 0x00, 0x9a, 0x01, 0x00, 0x01, 0x00, 0xd0, - 0x06, 0x00, 0x03, 0xa4, 0x02, 0x00, 0x01, 0xac, - 0x02, 0x01, 0x01, 0xa6, 0x02, 0x02, 0x01, 0xb8, - 0x02, 0x03, 0x01, 0xb4, 0x02, 0x04, 0x01, 0xc2, - 0x03, 0x05, 0x01, 0xc4, 0x03, 0x06, 0x01, 0xd2, - 0x06, 0x07, 0x01, 0xd4, 0x06, 0x08, 0x01, 0xd6, - 0x06, 0x09, 0x01, 0xd8, 0x06, 0x0a, 0x01, 0xda, - 0x06, 0x0b, 0x01, 0x8a, 0x06, 0x0c, 0x01, 0xb4, - 0x06, 0x0d, 0x01, 0xdc, 0x06, 0x0e, 0x01, 0xde, - 0x06, 0x0f, 0x01, 0xe0, 0x06, 0x10, 0x01, 0xe2, - 0x06, 0x11, 0x01, 0xe4, 0x06, 0x12, 0x01, 0xe6, - 0x06, 0x13, 0x01, 0xe8, 0x06, 0x14, 0x01, 0xea, - 0x06, 0x15, 0x01, 0xec, 0x06, 0x16, 0x01, 0xee, - 0x06, 0x17, 0x01, 0xf0, 0x06, 0x18, 0x01, 0xf2, - 0x06, 0x19, 0x01, 0xf4, 0x06, 0x1a, 0x01, 0xf6, - 0x06, 0x1b, 0x01, 0xe8, 0x05, 0x1c, 0x01, 0xea, - 0x05, 0x1d, 0x01, 0xf8, 0x06, 0x1e, 0x01, 0xfa, - 0x06, 0x1f, 0x01, 0x88, 0x06, 0x20, 0x01, 0xfc, - 0x06, 0x21, 0x01, 0xb8, 0x06, 0x22, 0x01, 0xe4, - 0x05, 0x23, 0x01, 0xfe, 0x06, 0x24, 0x01, 0x80, - 0x07, 0x25, 0x01, 0x82, 0x07, 0x26, 0x01, 0x84, - 0x07, 0x27, 0x01, 0x86, 0x07, 0x28, 0x01, 0x88, - 0x07, 0x29, 0x01, 0x88, 0x05, 0x2a, 0x01, 0x98, - 0x05, 0x2b, 0x01, 0x9c, 0x05, 0x2c, 0x01, 0x9a, - 0x05, 0x2d, 0x01, 0xa2, 0x05, 0x2e, 0x01, 0xac, - 0x05, 0x2f, 0x01, 0xae, 0x05, 0x30, 0x01, 0xb4, - 0x05, 0x31, 0x01, 0xb8, 0x05, 0x32, 0x01, 0xbc, - 0x05, 0x33, 0x01, 0xc4, 0x05, 0x34, 0x01, 0xca, - 0x05, 0x35, 0x01, 0xce, 0x05, 0x36, 0x01, 0xd6, - 0x05, 0x37, 0x01, 0xe0, 0x05, 0x38, 0x01, 0xe2, - 0x05, 0x39, 0x01, 0xe6, 0x05, 0x3a, 0x01, 0xec, - 0x05, 0x3b, 0x01, 0xee, 0x05, 0x3c, 0x01, 0xf0, - 0x05, 0x3d, 0x01, 0xf2, 0x05, 0x3e, 0x01, 0xf6, - 0x05, 0x3f, 0x01, 0xf8, 0x05, 0x40, 0x01, 0xfa, - 0x05, 0x41, 0x01, 0xfc, 0x05, 0x42, 0x01, 0xfe, - 0x05, 0x43, 0x01, 0x80, 0x06, 0x44, 0x01, 0x82, - 0x06, 0x45, 0x01, 0x86, 0x06, 0x46, 0x01, 0x8c, - 0x06, 0x47, 0x01, 0x8e, 0x06, 0x48, 0x01, 0x90, - 0x06, 0x49, 0x01, 0x92, 0x06, 0x4a, 0x01, 0x94, - 0x06, 0x4b, 0x01, 0x96, 0x06, 0x4c, 0x01, 0x98, - 0x06, 0x4d, 0x01, 0x9a, 0x06, 0x4e, 0x01, 0x9c, - 0x06, 0x4f, 0x01, 0x9e, 0x06, 0x50, 0x01, 0xa0, - 0x06, 0x51, 0x01, 0xa4, 0x06, 0x52, 0x01, 0xa8, - 0x06, 0x53, 0x01, 0xaa, 0x06, 0x54, 0x01, 0xac, - 0x06, 0x55, 0x01, 0xae, 0x06, 0x56, 0x01, 0xb0, - 0x06, 0x57, 0x01, 0xb2, 0x06, 0x58, 0x01, 0xb6, - 0x06, 0x59, 0x01, 0xc0, 0x06, 0x5a, 0x01, 0xc2, - 0x06, 0x5b, 0x01, 0xc4, 0x06, 0x5c, 0x01, 0x8a, - 0x07, 0x5d, 0x01, 0x8c, 0x07, 0x5e, 0x01, 0x8e, - 0x07, 0x5f, 0x01, 0x90, 0x07, 0x60, 0x01, 0x92, - 0x07, 0x61, 0x01, 0x94, 0x07, 0x62, 0x01, 0x96, - 0x07, 0x63, 0x01, 0xba, 0x06, 0x64, 0x01, 0x98, - 0x07, 0x65, 0x01, 0x9a, 0x07, 0x66, 0x01, 0x9c, - 0x07, 0x67, 0x01, 0x9e, 0x07, 0x68, 0x01, 0xa0, - 0x07, 0x69, 0x01, 0xa2, 0x07, 0x6a, 0x01, 0xa4, - 0x07, 0x6b, 0x01, 0xa6, 0x07, 0x6c, 0x01, 0xa8, - 0x07, 0x6d, 0x01, 0xaa, 0x07, 0x6e, 0x01, 0xac, - 0x07, 0x6f, 0x01, 0xae, 0x07, 0x70, 0x01, 0xb0, - 0x07, 0x71, 0x01, 0xb2, 0x07, 0x72, 0x01, 0xb4, - 0x07, 0x73, 0x01, 0xb6, 0x07, 0x74, 0x01, 0xb8, - 0x07, 0x75, 0x01, 0xba, 0x07, 0x76, 0x01, 0xbe, - 0x03, 0x00, 0x0c, 0xc0, 0x03, 0x01, 0x0c, 0x0c, + 0x01, 0x00, 0x9a, 0x01, 0x00, 0x01, 0x00, 0xd6, + 0x06, 0x00, 0x03, 0xaa, 0x02, 0x00, 0x01, 0xb2, + 0x02, 0x01, 0x01, 0xac, 0x02, 0x02, 0x01, 0xbe, + 0x02, 0x03, 0x01, 0xba, 0x02, 0x04, 0x01, 0xc8, + 0x03, 0x05, 0x01, 0xca, 0x03, 0x06, 0x01, 0xd8, + 0x06, 0x07, 0x01, 0xda, 0x06, 0x08, 0x01, 0xdc, + 0x06, 0x09, 0x01, 0xde, 0x06, 0x0a, 0x01, 0xe0, + 0x06, 0x0b, 0x01, 0x90, 0x06, 0x0c, 0x01, 0xba, + 0x06, 0x0d, 0x01, 0xe2, 0x06, 0x0e, 0x01, 0xe4, + 0x06, 0x0f, 0x01, 0xe6, 0x06, 0x10, 0x01, 0xe8, + 0x06, 0x11, 0x01, 0xea, 0x06, 0x12, 0x01, 0xec, + 0x06, 0x13, 0x01, 0xee, 0x06, 0x14, 0x01, 0xf0, + 0x06, 0x15, 0x01, 0xf2, 0x06, 0x16, 0x01, 0xf4, + 0x06, 0x17, 0x01, 0xf6, 0x06, 0x18, 0x01, 0xf8, + 0x06, 0x19, 0x01, 0xfa, 0x06, 0x1a, 0x01, 0xfc, + 0x06, 0x1b, 0x01, 0xee, 0x05, 0x1c, 0x01, 0xf0, + 0x05, 0x1d, 0x01, 0xfe, 0x06, 0x1e, 0x01, 0x80, + 0x07, 0x1f, 0x01, 0x8e, 0x06, 0x20, 0x01, 0x82, + 0x07, 0x21, 0x01, 0xbe, 0x06, 0x22, 0x01, 0xea, + 0x05, 0x23, 0x01, 0x84, 0x07, 0x24, 0x01, 0x86, + 0x07, 0x25, 0x01, 0x88, 0x07, 0x26, 0x01, 0x8a, + 0x07, 0x27, 0x01, 0x8c, 0x07, 0x28, 0x01, 0x8e, + 0x07, 0x29, 0x01, 0x8e, 0x05, 0x2a, 0x01, 0x9e, + 0x05, 0x2b, 0x01, 0xa2, 0x05, 0x2c, 0x01, 0xa0, + 0x05, 0x2d, 0x01, 0xa8, 0x05, 0x2e, 0x01, 0xb2, + 0x05, 0x2f, 0x01, 0xb4, 0x05, 0x30, 0x01, 0xba, + 0x05, 0x31, 0x01, 0xbe, 0x05, 0x32, 0x01, 0xc2, + 0x05, 0x33, 0x01, 0xca, 0x05, 0x34, 0x01, 0xd0, + 0x05, 0x35, 0x01, 0xd4, 0x05, 0x36, 0x01, 0xdc, + 0x05, 0x37, 0x01, 0xe6, 0x05, 0x38, 0x01, 0xe8, + 0x05, 0x39, 0x01, 0xec, 0x05, 0x3a, 0x01, 0xf2, + 0x05, 0x3b, 0x01, 0xf4, 0x05, 0x3c, 0x01, 0xf6, + 0x05, 0x3d, 0x01, 0xf8, 0x05, 0x3e, 0x01, 0xfc, + 0x05, 0x3f, 0x01, 0xfe, 0x05, 0x40, 0x01, 0x80, + 0x06, 0x41, 0x01, 0x82, 0x06, 0x42, 0x01, 0x84, + 0x06, 0x43, 0x01, 0x86, 0x06, 0x44, 0x01, 0x88, + 0x06, 0x45, 0x01, 0x8c, 0x06, 0x46, 0x01, 0x92, + 0x06, 0x47, 0x01, 0x94, 0x06, 0x48, 0x01, 0x96, + 0x06, 0x49, 0x01, 0x98, 0x06, 0x4a, 0x01, 0x9a, + 0x06, 0x4b, 0x01, 0x9c, 0x06, 0x4c, 0x01, 0x9e, + 0x06, 0x4d, 0x01, 0xa0, 0x06, 0x4e, 0x01, 0xa2, + 0x06, 0x4f, 0x01, 0xa4, 0x06, 0x50, 0x01, 0xa6, + 0x06, 0x51, 0x01, 0xaa, 0x06, 0x52, 0x01, 0xae, + 0x06, 0x53, 0x01, 0xb0, 0x06, 0x54, 0x01, 0xb2, + 0x06, 0x55, 0x01, 0xb4, 0x06, 0x56, 0x01, 0xb6, + 0x06, 0x57, 0x01, 0xb8, 0x06, 0x58, 0x01, 0xbc, + 0x06, 0x59, 0x01, 0xc6, 0x06, 0x5a, 0x01, 0xc8, + 0x06, 0x5b, 0x01, 0xca, 0x06, 0x5c, 0x01, 0x90, + 0x07, 0x5d, 0x01, 0x92, 0x07, 0x5e, 0x01, 0x94, + 0x07, 0x5f, 0x01, 0x96, 0x07, 0x60, 0x01, 0x98, + 0x07, 0x61, 0x01, 0x9a, 0x07, 0x62, 0x01, 0x9c, + 0x07, 0x63, 0x01, 0xc0, 0x06, 0x64, 0x01, 0x9e, + 0x07, 0x65, 0x01, 0xa0, 0x07, 0x66, 0x01, 0xa2, + 0x07, 0x67, 0x01, 0xa4, 0x07, 0x68, 0x01, 0xa6, + 0x07, 0x69, 0x01, 0xa8, 0x07, 0x6a, 0x01, 0xaa, + 0x07, 0x6b, 0x01, 0xac, 0x07, 0x6c, 0x01, 0xae, + 0x07, 0x6d, 0x01, 0xb0, 0x07, 0x6e, 0x01, 0xb2, + 0x07, 0x6f, 0x01, 0xb4, 0x07, 0x70, 0x01, 0xb6, + 0x07, 0x71, 0x01, 0xb8, 0x07, 0x72, 0x01, 0xba, + 0x07, 0x73, 0x01, 0xbc, 0x07, 0x74, 0x01, 0xbe, + 0x07, 0x75, 0x01, 0xc0, 0x07, 0x76, 0x01, 0xc4, + 0x03, 0x00, 0x0c, 0xc6, 0x03, 0x01, 0x0c, 0x0c, 0x03, 0xc3, 0x04, 0x08, 0xcc, 0x0c, 0x00, 0xc3, 0x05, 0xd2, 0xb5, 0xa4, 0x11, 0xeb, 0x16, 0x0e, - 0x04, 0xde, 0x01, 0x00, 0x00, 0x42, 0xdf, 0x01, + 0x04, 0xe1, 0x01, 0x00, 0x00, 0x42, 0xe2, 0x01, 0x00, 0x00, 0xd1, 0xd2, 0xb6, 0x9e, 0x47, 0x24, 0x01, 0x00, 0xb5, 0xa6, 0xea, 0x03, 0xdd, 0x28, 0xd2, 0xb7, 0xa6, 0x69, 0xd9, 0x00, 0x00, 0x00, - 0xd1, 0xd2, 0xb6, 0x9e, 0x47, 0x04, 0xe0, 0x01, + 0xd1, 0xd2, 0xb6, 0x9e, 0x47, 0x04, 0xe3, 0x01, 0x00, 0x00, 0xab, 0x69, 0xc9, 0x00, 0x00, 0x00, 0xd2, 0x8e, 0xd6, 0x0b, 0xc9, 0xd1, 0xd2, 0xb6, - 0x9e, 0x47, 0xcf, 0x11, 0x04, 0xe1, 0x01, 0x00, - 0x00, 0xab, 0xeb, 0x0a, 0x11, 0x04, 0xe2, 0x01, - 0x00, 0x00, 0xab, 0xea, 0x07, 0x04, 0x54, 0x01, - 0x00, 0x00, 0x28, 0x11, 0x04, 0xe3, 0x01, 0x00, + 0x9e, 0x47, 0xcf, 0x11, 0x04, 0xe4, 0x01, 0x00, + 0x00, 0xab, 0xeb, 0x0a, 0x11, 0x04, 0xe5, 0x01, + 0x00, 0x00, 0xab, 0xea, 0x07, 0x04, 0x57, 0x01, + 0x00, 0x00, 0x28, 0x11, 0x04, 0xe6, 0x01, 0x00, 0x00, 0xab, 0xea, 0x05, 0x26, 0x00, 0x00, 0x28, - 0x11, 0x04, 0xe4, 0x01, 0x00, 0x00, 0xab, 0xea, - 0x03, 0x0b, 0x28, 0x11, 0x04, 0xe5, 0x01, 0x00, + 0x11, 0x04, 0xe7, 0x01, 0x00, 0x00, 0xab, 0xea, + 0x03, 0x0b, 0x28, 0x11, 0x04, 0xe8, 0x01, 0x00, 0x00, 0xab, 0xea, 0x07, 0xbf, 0x00, 0xbf, 0x01, 0x33, 0x28, 0x5e, 0x31, 0x00, 0xc7, 0xef, 0xea, 0x73, 0x5e, 0x5c, 0x00, 0xd1, 0xd2, 0xf0, 0xca, 0x04, 0x03, 0x00, 0x00, 0x00, 0x04, 0x02, 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00, 0x00, 0x04, 0x08, 0x00, 0x00, 0x00, 0x26, 0x04, 0x00, 0x42, - 0xe6, 0x01, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, - 0x11, 0xeb, 0x0b, 0x0e, 0x38, 0xe7, 0x01, 0x00, + 0xe9, 0x01, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, + 0x11, 0xeb, 0x0b, 0x0e, 0x38, 0xea, 0x01, 0x00, 0x00, 0xc6, 0x8d, 0xef, 0x96, 0xea, 0x0d, 0x38, 0x3a, 0x00, 0x00, 0x00, 0xc6, 0x31, 0x01, 0x00, 0x00, 0x00, 0x28, 0x5e, 0x5d, 0x00, 0xd1, 0xd2, @@ -1184,27 +1184,27 @@ const uint8_t qjsc_repl[16086] = { 0x00, 0x00, 0x08, 0x06, 0x00, 0x00, 0x00, 0x04, 0x07, 0xf5, 0xff, 0xff, 0xff, 0x0b, 0x00, 0x01, 0x20, 0x00, 0x0c, 0x00, 0x0a, 0x0e, 0x43, 0x02, - 0x03, 0x8a, 0x07, 0x02, 0x0a, 0x02, 0x04, 0x03, + 0x03, 0x90, 0x07, 0x02, 0x0a, 0x02, 0x04, 0x03, 0x01, 0xe3, 0x01, 0x00, 0x00, 0x5b, 0x01, 0x00, 0x5c, 0x01, 0x00, 0x00, 0x01, 0xdd, 0xd1, 0xd2, 0xf0, 0xc9, 0xde, 0xd1, 0xd2, 0xc5, 0xe9, 0x9e, 0xf0, 0xcb, 0x26, 0x00, 0x00, 0xcc, 0xb5, 0xc3, 0x04, 0xc7, 0xca, 0xc2, 0x04, 0xbd, 0x0a, 0xa3, 0xea, 0x67, 0xc6, 0xf3, 0xeb, 0x63, 0xc6, 0x06, - 0xac, 0xea, 0x5e, 0xdf, 0x42, 0xe8, 0x01, 0x00, + 0xac, 0xea, 0x5e, 0xdf, 0x42, 0xeb, 0x01, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, 0xc3, 0x07, 0xb5, 0xc3, 0x05, 0xc2, 0x05, 0xc2, 0x07, 0xe9, 0xa3, 0xea, 0x38, 0xc2, 0x07, 0xc2, 0x05, 0x47, 0xc4, 0x08, 0x97, 0x04, 0x48, 0x00, 0x00, 0x00, 0xa9, 0xea, 0x24, 0xc1, 0xc2, 0x08, 0x8d, 0x9d, 0xc2, - 0x08, 0xaa, 0xea, 0x1a, 0xc2, 0x08, 0x42, 0xe9, + 0x08, 0xaa, 0xea, 0x1a, 0xc2, 0x08, 0x42, 0xec, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, 0x00, 0xea, - 0x0d, 0xc8, 0x42, 0x82, 0x01, 0x00, 0x00, 0xc2, + 0x0d, 0xc8, 0x42, 0x85, 0x01, 0x00, 0x00, 0xc2, 0x08, 0x24, 0x01, 0x00, 0x0e, 0x93, 0x05, 0xec, 0xc2, 0xdf, 0x42, 0x5f, 0x00, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, 0xca, 0x93, 0x04, 0xec, 0x94, 0xc8, 0xe9, 0xb6, 0xa5, 0xea, 0x46, 0xc0, 0x00, - 0xc3, 0x09, 0xc0, 0x00, 0x0e, 0xc8, 0x42, 0xea, + 0xc3, 0x09, 0xc0, 0x00, 0x0e, 0xc8, 0x42, 0xed, 0x01, 0x00, 0x00, 0x62, 0x09, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xb6, 0xc4, 0x05, 0xc3, 0x04, 0xc2, 0x04, 0xc8, 0xe9, 0xa3, 0xea, 0x1e, 0xc8, 0xc2, @@ -1212,24 +1212,24 @@ const uint8_t qjsc_repl[16086] = { 0xaa, 0xea, 0x0d, 0xc8, 0xc2, 0x05, 0x91, 0xc3, 0x05, 0x71, 0xc8, 0xc2, 0x04, 0x47, 0x49, 0x93, 0x04, 0xec, 0xdd, 0xc8, 0xc2, 0x05, 0x43, 0x30, - 0x00, 0x00, 0x00, 0x0b, 0xc8, 0x4c, 0xeb, 0x01, - 0x00, 0x00, 0xc5, 0xe9, 0x4c, 0xa4, 0x01, 0x00, - 0x00, 0xc7, 0x4c, 0xec, 0x01, 0x00, 0x00, 0x28, - 0x0e, 0x43, 0x02, 0x03, 0xda, 0x07, 0x02, 0x00, + 0x00, 0x00, 0x00, 0x0b, 0xc8, 0x4c, 0xee, 0x01, + 0x00, 0x00, 0xc5, 0xe9, 0x4c, 0xa7, 0x01, 0x00, + 0x00, 0xc7, 0x4c, 0xef, 0x01, 0x00, 0x00, 0x28, + 0x0e, 0x43, 0x02, 0x03, 0xe0, 0x07, 0x02, 0x00, 0x02, 0x03, 0x00, 0x00, 0x34, 0x00, 0xd1, 0xb5, 0x47, 0xd2, 0xb5, 0x47, 0xaa, 0xea, 0x1b, 0xd1, - 0xb5, 0x47, 0x04, 0x58, 0x01, 0x00, 0x00, 0xa9, + 0xb5, 0x47, 0x04, 0x5b, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x03, 0xb6, 0x28, 0xd2, 0xb5, 0x47, 0x04, - 0x58, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x03, 0xb4, + 0x5b, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x03, 0xb4, 0x28, 0xd1, 0xd2, 0xa3, 0xea, 0x03, 0xb4, 0x28, 0xd1, 0xd2, 0xa5, 0xea, 0x04, 0xb6, 0x8d, 0x28, - 0xb5, 0x28, 0x0e, 0x43, 0x02, 0x03, 0x8c, 0x07, + 0xb5, 0x28, 0x0e, 0x43, 0x02, 0x03, 0x92, 0x07, 0x00, 0x0d, 0x00, 0x07, 0x0a, 0x00, 0x8f, 0x03, 0x00, 0x00, 0x5d, 0x01, 0x00, 0x1c, 0x01, 0x00, 0x1d, 0x01, 0x00, 0x38, 0x01, 0x00, 0x22, 0x01, 0x00, 0x5e, 0x01, 0x00, 0x04, 0x01, 0x00, 0x28, 0x01, 0x00, 0x00, 0x0c, 0x00, 0x64, 0x01, 0xdd, - 0xde, 0xdf, 0xf0, 0xce, 0x41, 0xeb, 0x01, 0x00, + 0xde, 0xdf, 0xf0, 0xce, 0x41, 0xee, 0x01, 0x00, 0x00, 0xcd, 0xe9, 0xb5, 0xab, 0xea, 0x02, 0x29, 0xc5, 0xb5, 0x47, 0xcf, 0xe9, 0xc3, 0x05, 0xb6, 0xcc, 0xc8, 0xc5, 0xe9, 0xa3, 0xea, 0x2a, 0xc5, @@ -1238,33 +1238,33 @@ const uint8_t qjsc_repl[16086] = { 0xc2, 0x04, 0x47, 0xc7, 0xc2, 0x04, 0x47, 0xac, 0xea, 0x07, 0xc2, 0x04, 0xc3, 0x05, 0xec, 0x05, 0x93, 0x04, 0xec, 0xe4, 0x93, 0x03, 0xec, 0xd2, - 0xc6, 0x41, 0xa4, 0x01, 0x00, 0x00, 0xcc, 0xc8, + 0xc6, 0x41, 0xa7, 0x01, 0x00, 0x00, 0xcc, 0xc8, 0xc2, 0x05, 0xa3, 0xea, 0x0b, 0xe0, 0xc7, 0xc8, 0x47, 0xef, 0x0e, 0x93, 0x03, 0xec, 0xf1, 0x5e, 0x04, 0x00, 0x5e, 0x05, 0x00, 0xab, 0xea, 0x42, 0xc5, 0xe9, 0xb6, 0xa9, 0xea, 0x3c, 0xc6, 0x41, - 0xec, 0x01, 0x00, 0x00, 0xc5, 0xb5, 0x47, 0x47, - 0xc4, 0x0c, 0xf5, 0xea, 0x1a, 0xe0, 0x04, 0xee, + 0xef, 0x01, 0x00, 0x00, 0xc5, 0xb5, 0x47, 0x47, + 0xc4, 0x0c, 0xf5, 0xea, 0x1a, 0xe0, 0x04, 0xf1, 0x01, 0x00, 0x00, 0xef, 0x0e, 0xc2, 0x0c, 0xe9, - 0xb5, 0xa9, 0xea, 0x1e, 0xe0, 0x04, 0xef, 0x01, + 0xb5, 0xa9, 0xea, 0x1e, 0xe0, 0x04, 0xf2, 0x01, 0x00, 0x00, 0xef, 0x0e, 0xec, 0x14, 0xc2, 0x0c, 0x97, 0x04, 0x49, 0x00, 0x00, 0x00, 0xa9, 0xea, - 0x09, 0xe0, 0x04, 0xe0, 0x01, 0x00, 0x00, 0xef, + 0x09, 0xe0, 0x04, 0xe3, 0x01, 0x00, 0x00, 0xef, 0x0e, 0x5e, 0x04, 0x00, 0x5e, 0x05, 0x00, 0xab, 0x69, 0xdc, 0x00, 0x00, 0x00, 0xc5, 0xe9, 0xb7, 0xa6, 0x69, 0xd3, 0x00, 0x00, 0x00, 0xb5, 0xc3, 0x07, 0xb5, 0xcc, 0xc8, 0xc5, 0xe9, 0xa3, 0xea, - 0x18, 0x5e, 0x06, 0x00, 0x42, 0xf0, 0x01, 0x00, + 0x18, 0x5e, 0x06, 0x00, 0x42, 0xf3, 0x01, 0x00, 0x00, 0xc2, 0x07, 0xc5, 0xc8, 0x47, 0xe9, 0x24, 0x02, 0x00, 0xc3, 0x07, 0x93, 0x03, 0xec, 0xe4, - 0xb7, 0x94, 0x07, 0x5e, 0x06, 0x00, 0x42, 0xf0, + 0xb7, 0x94, 0x07, 0x5e, 0x06, 0x00, 0x42, 0xf3, 0x01, 0x00, 0x00, 0xb6, 0x5e, 0x06, 0x00, 0x42, - 0xf1, 0x01, 0x00, 0x00, 0x5e, 0x07, 0x00, 0xb6, + 0xf4, 0x01, 0x00, 0x00, 0x5e, 0x07, 0x00, 0xb6, 0x9d, 0xc2, 0x07, 0x9b, 0x24, 0x01, 0x00, 0x24, 0x02, 0x00, 0xc3, 0x09, 0x5e, 0x06, 0x00, 0x42, - 0xf2, 0x01, 0x00, 0x00, 0xc5, 0xe9, 0xc2, 0x09, + 0xf5, 0x01, 0x00, 0x00, 0xc5, 0xe9, 0xc2, 0x09, 0x9b, 0x24, 0x01, 0x00, 0xc3, 0x0b, 0x65, 0x08, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x1c, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xb5, 0xc3, 0x0a, 0xc2, 0x0a, 0xc2, 0x0b, 0xa3, 0xea, 0x58, 0xb5, 0xc3, 0x08, 0xc2, 0x08, 0xc2, 0x09, @@ -1272,27 +1272,27 @@ const uint8_t qjsc_repl[16086] = { 0xc2, 0x0a, 0x9d, 0xd0, 0xc5, 0xe9, 0xa6, 0xeb, 0x2b, 0xc5, 0xc8, 0x47, 0xcb, 0xc2, 0x08, 0xc2, 0x09, 0xb6, 0x9e, 0xaa, 0xea, 0x0d, 0xc7, 0x42, - 0xf3, 0x01, 0x00, 0x00, 0xc2, 0x07, 0x24, 0x01, - 0x00, 0xcb, 0x65, 0x08, 0x00, 0x42, 0x63, 0x01, + 0xf6, 0x01, 0x00, 0x00, 0xc2, 0x07, 0x24, 0x01, + 0x00, 0xcb, 0x65, 0x08, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xc7, 0x24, 0x01, 0x00, 0x0e, 0x93, - 0x08, 0xec, 0xc2, 0x65, 0x08, 0x00, 0x42, 0x63, - 0x01, 0x00, 0x00, 0x04, 0x1c, 0x01, 0x00, 0x00, + 0x08, 0xec, 0xc2, 0x65, 0x08, 0x00, 0x42, 0x66, + 0x01, 0x00, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x93, 0x0a, 0xec, 0xa3, 0x5e, 0x09, 0x00, 0xee, 0x0e, 0x29, 0x0e, 0x43, - 0x02, 0x03, 0x90, 0x07, 0x02, 0x01, 0x02, 0x02, + 0x02, 0x03, 0x96, 0x07, 0x02, 0x01, 0x02, 0x02, 0x00, 0x00, 0x10, 0x00, 0xc1, 0xc9, 0xd2, 0x90, 0xd6, 0xb5, 0xa5, 0xea, 0x06, 0xd1, 0x94, 0x00, 0xec, 0xf5, 0xc5, 0x28, 0x0e, 0x43, 0x02, 0x03, - 0xba, 0x06, 0x00, 0x00, 0x00, 0x03, 0x07, 0x00, - 0x1e, 0x00, 0xbe, 0x03, 0x00, 0x0c, 0xe4, 0x06, - 0x12, 0x01, 0x88, 0x07, 0x29, 0x01, 0xb4, 0x05, - 0x31, 0x01, 0x86, 0x07, 0x28, 0x01, 0xf8, 0x06, - 0x1e, 0x01, 0xfa, 0x06, 0x1f, 0x01, 0x65, 0x00, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0xde, 0x24, + 0xc0, 0x06, 0x00, 0x00, 0x00, 0x03, 0x07, 0x00, + 0x1e, 0x00, 0xc4, 0x03, 0x00, 0x0c, 0xea, 0x06, + 0x12, 0x01, 0x8e, 0x07, 0x29, 0x01, 0xba, 0x05, + 0x31, 0x01, 0x8c, 0x07, 0x28, 0x01, 0xfe, 0x06, + 0x1e, 0x01, 0x80, 0x07, 0x1f, 0x01, 0x65, 0x00, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xde, 0x24, 0x01, 0x00, 0x0e, 0xe0, 0xde, 0xef, 0x5e, 0x04, 0x00, 0x9c, 0xe3, 0xc1, 0x5f, 0x05, 0x00, 0xb5, 0x5f, 0x06, 0x00, 0x29, 0x0e, 0x43, 0x02, 0x03, - 0x98, 0x07, 0x02, 0x01, 0x02, 0x06, 0x12, 0x01, + 0x9e, 0x07, 0x02, 0x01, 0x02, 0x06, 0x12, 0x01, 0xb0, 0x01, 0x00, 0x00, 0x1c, 0x01, 0x00, 0x1d, 0x01, 0x00, 0x20, 0x01, 0x00, 0x0c, 0x01, 0x00, 0x63, 0x01, 0x00, 0x12, 0x01, 0x00, 0x11, 0x01, @@ -1304,47 +1304,47 @@ const uint8_t qjsc_repl[16086] = { 0xe9, 0xe2, 0xe0, 0xe9, 0xe3, 0xd2, 0x5f, 0x04, 0x00, 0x5e, 0x06, 0x00, 0x5f, 0x05, 0x00, 0x5e, 0x07, 0x00, 0xea, 0x22, 0x5e, 0x05, 0x00, 0x5e, - 0x08, 0x00, 0x04, 0xf4, 0x01, 0x00, 0x00, 0x5e, + 0x08, 0x00, 0x04, 0xf7, 0x01, 0x00, 0x00, 0x5e, 0x09, 0x00, 0x5e, 0x05, 0x00, 0xe9, 0x9e, 0xf0, 0x9d, 0x60, 0x05, 0x00, 0x5e, 0x0a, 0x00, 0x9d, 0x5f, 0x05, 0x00, 0xec, 0x66, 0x5e, 0x0b, 0x00, - 0xea, 0x50, 0x5e, 0x0c, 0x00, 0x42, 0xf5, 0x01, + 0xea, 0x50, 0x5e, 0x0c, 0x00, 0x42, 0xf8, 0x01, 0x00, 0x00, 0x5e, 0x0d, 0x00, 0x24, 0x01, 0x00, - 0x04, 0xf4, 0x01, 0x00, 0x00, 0x9d, 0xc9, 0xb5, + 0x04, 0xf7, 0x01, 0x00, 0x00, 0x9d, 0xc9, 0xb5, 0x5f, 0x0d, 0x00, 0x5e, 0x08, 0x00, 0xbf, 0x00, 0xba, 0xc5, 0xe9, 0x9e, 0xf0, 0xc5, 0x9d, 0xc9, - 0x5e, 0x05, 0x00, 0xc5, 0x42, 0x64, 0x01, 0x00, + 0x5e, 0x05, 0x00, 0xc5, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xc5, 0xe9, 0xb9, 0x9e, 0x24, 0x02, - 0x00, 0x04, 0xe0, 0x01, 0x00, 0x00, 0x9d, 0xc5, - 0x42, 0x64, 0x01, 0x00, 0x00, 0xc5, 0xe9, 0xb9, + 0x00, 0x04, 0xe3, 0x01, 0x00, 0x00, 0x9d, 0xc5, + 0x42, 0x67, 0x01, 0x00, 0x00, 0xc5, 0xe9, 0xb9, 0x9e, 0x24, 0x01, 0x00, 0x9d, 0x9d, 0x5f, 0x05, 0x00, 0x5e, 0x05, 0x00, 0xe9, 0x5f, 0x09, 0x00, 0x5e, 0x05, 0x00, 0x5e, 0x0e, 0x00, 0x9d, 0x5f, 0x05, 0x00, 0x5e, 0x0f, 0x00, 0xee, 0x0e, 0x5e, 0x10, 0x00, 0xee, 0x0e, 0xb5, 0x5f, 0x11, 0x00, 0x29, 0x07, 0x02, 0x30, 0x0e, 0x43, 0x02, 0x03, - 0x9a, 0x07, 0x01, 0x01, 0x01, 0x03, 0x04, 0x02, + 0xa0, 0x07, 0x01, 0x01, 0x01, 0x03, 0x04, 0x02, 0x8c, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x62, 0x01, 0x00, 0x61, 0x01, 0x00, 0x67, 0x01, 0xdd, - 0x42, 0xf6, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, + 0x42, 0xf9, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xc9, 0xde, 0x11, 0xb5, 0xab, 0xea, 0x16, - 0xc5, 0x04, 0xf7, 0x01, 0x00, 0x00, 0xa9, 0xea, + 0xc5, 0x04, 0xfa, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x07, 0xc5, 0xe3, 0xb6, 0xe2, 0xec, 0x6c, 0xe0, 0xc5, 0xef, 0x0e, 0xec, 0x66, 0x11, 0xb6, 0xab, 0xea, 0x27, 0xdf, 0xc5, 0x9d, 0xe3, 0xc5, 0x04, - 0xf8, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x05, 0xb7, - 0xe2, 0xec, 0x50, 0xc5, 0x04, 0xf9, 0x01, 0x00, + 0xfb, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x05, 0xb7, + 0xe2, 0xec, 0x50, 0xc5, 0x04, 0xfc, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x05, 0xb8, 0xe2, 0xec, 0x43, 0xe0, 0xdf, 0xef, 0x0e, 0xb5, 0xe2, 0xec, 0x3b, 0x11, 0xb7, 0xab, 0xea, 0x27, 0xdf, 0xc5, 0x9d, - 0xe3, 0xc5, 0x04, 0xfa, 0x01, 0x00, 0x00, 0xa9, + 0xe3, 0xc5, 0x04, 0xfd, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xeb, 0x0e, 0x0e, 0xc5, 0xbf, 0x00, 0xa6, 0x11, 0xea, 0x06, 0x0e, 0xc5, 0xbf, 0x01, 0xa4, 0x96, 0xea, 0x18, 0xe0, 0xdf, 0xef, 0x0e, 0xb5, 0xe2, 0xec, 0x10, 0x11, 0xb8, 0xab, 0xea, 0x0b, 0xdf, 0xc5, 0x9d, 0xe3, 0xe0, 0xdf, 0xef, 0x0e, 0xb5, 0xe2, 0x29, 0x07, 0x02, 0x30, 0x07, 0x02, - 0x39, 0x0e, 0x43, 0x02, 0x03, 0x9c, 0x07, 0x01, + 0x39, 0x0e, 0x43, 0x02, 0x03, 0xa2, 0x07, 0x01, 0x01, 0x01, 0x05, 0x0d, 0x00, 0xb0, 0x01, 0x00, 0x00, 0x23, 0x01, 0x00, 0x31, 0x01, 0x00, 0x38, 0x01, 0x00, 0x5f, 0x01, 0x00, 0x21, 0x01, 0x00, @@ -1359,13 +1359,13 @@ const uint8_t qjsc_repl[16086] = { 0x00, 0xef, 0x29, 0x11, 0xbd, 0xfe, 0xab, 0xea, 0x07, 0x5e, 0x05, 0x00, 0x07, 0xef, 0x29, 0x11, 0xbd, 0xfd, 0xab, 0xea, 0x26, 0x65, 0x07, 0x00, - 0x42, 0x49, 0x01, 0x00, 0x00, 0x65, 0x07, 0x00, - 0x41, 0x4a, 0x01, 0x00, 0x00, 0x07, 0x24, 0x02, - 0x00, 0x0e, 0x65, 0x07, 0x00, 0x42, 0x4b, 0x01, + 0x42, 0x4c, 0x01, 0x00, 0x00, 0x65, 0x07, 0x00, + 0x41, 0x4d, 0x01, 0x00, 0x00, 0x07, 0x24, 0x02, + 0x00, 0x0e, 0x65, 0x07, 0x00, 0x42, 0x4e, 0x01, 0x00, 0x00, 0x5e, 0x08, 0x00, 0x07, 0x24, 0x02, 0x00, 0x29, 0x0e, 0x5e, 0x04, 0x00, 0x5f, 0x09, 0x00, 0xec, 0x20, 0xde, 0xd1, 0xef, 0xb6, 0xab, - 0xea, 0x14, 0xd1, 0x04, 0xf4, 0x01, 0x00, 0x00, + 0xea, 0x14, 0xd1, 0x04, 0xf7, 0x01, 0x00, 0x00, 0xa6, 0xea, 0x0b, 0xdf, 0xd1, 0xef, 0x0e, 0xdf, 0x5f, 0x09, 0x00, 0xec, 0x06, 0x5e, 0x0a, 0x00, 0xee, 0x0e, 0x5e, 0x0b, 0x00, 0xb5, 0xa3, 0xea, @@ -1373,76 +1373,76 @@ const uint8_t qjsc_repl[16086] = { 0x06, 0x00, 0xe9, 0xa5, 0xea, 0x07, 0x5e, 0x06, 0x00, 0xe9, 0xec, 0x04, 0x5e, 0x0b, 0x00, 0x5f, 0x0b, 0x00, 0x5e, 0x0c, 0x00, 0xee, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0xa2, 0x07, 0x02, 0x01, 0x02, + 0x43, 0x02, 0x03, 0xa8, 0x07, 0x02, 0x01, 0x02, 0x05, 0x02, 0x01, 0x70, 0x00, 0x00, 0x05, 0x01, 0x00, 0x04, 0x01, 0xdd, 0xd1, 0xef, 0x96, 0xea, 0x0a, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0xd1, 0xb5, 0xa9, 0xea, 0x15, 0xb6, - 0xd1, 0x9b, 0xb5, 0xa3, 0xea, 0x09, 0x04, 0xfb, + 0xd1, 0x9b, 0xb5, 0xa3, 0xea, 0x09, 0x04, 0xfe, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x4c, 0xbf, 0x00, 0xc9, 0xec, 0x47, 0xd2, 0xbd, 0x10, 0xa9, 0xea, - 0x37, 0xd1, 0xde, 0x42, 0xf1, 0x01, 0x00, 0x00, + 0x37, 0xd1, 0xde, 0x42, 0xf4, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xab, 0xea, 0x29, 0xd1, 0xb5, 0xa3, 0xea, 0x0c, 0xd1, 0x8c, 0xd5, 0x04, - 0xfc, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x03, 0xc1, - 0xc9, 0xc5, 0x04, 0xfd, 0x01, 0x00, 0x00, 0xd1, + 0xff, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x03, 0xc1, + 0xc9, 0xc5, 0x04, 0x00, 0x02, 0x00, 0x00, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0xbd, 0x10, 0x24, 0x01, 0x00, 0x9d, 0x9d, 0xc9, 0xec, 0x0b, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc9, 0xc5, 0x28, 0x07, 0x02, 0x30, 0x0e, 0x43, - 0x02, 0x03, 0xa4, 0x07, 0x02, 0x01, 0x02, 0x05, + 0x02, 0x03, 0xaa, 0x07, 0x02, 0x01, 0x02, 0x05, 0x01, 0x01, 0xfe, 0x01, 0x00, 0x00, 0x69, 0x01, - 0x38, 0xb0, 0x00, 0x00, 0x00, 0x42, 0xe1, 0x00, + 0x38, 0xb3, 0x00, 0x00, 0x00, 0x42, 0xe4, 0x00, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x96, 0xea, - 0x29, 0xdd, 0x04, 0xfe, 0x01, 0x00, 0x00, 0xac, - 0xea, 0x17, 0x04, 0xff, 0x01, 0x00, 0x00, 0xd1, + 0x29, 0xdd, 0x04, 0x01, 0x02, 0x00, 0x00, 0xac, + 0xea, 0x17, 0x04, 0x02, 0x02, 0x00, 0x00, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, - 0x9d, 0x04, 0xef, 0x01, 0x00, 0x00, 0x9d, 0x28, + 0x9d, 0x04, 0xf2, 0x01, 0x00, 0x00, 0x9d, 0x28, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0xd1, 0xb5, 0xa9, 0xea, 0x15, 0xb6, 0xd1, - 0x9b, 0xb5, 0xa3, 0xea, 0x09, 0x04, 0xfb, 0x01, + 0x9b, 0xb5, 0xa3, 0xea, 0x09, 0x04, 0xfe, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x3e, 0xbf, 0x00, 0xc9, 0xec, 0x39, 0xd2, 0xbd, 0x10, 0xa9, 0xea, 0x29, 0xd1, 0xb5, 0xa3, 0xea, 0x0c, 0xd1, 0x8c, 0xd5, - 0x04, 0xfc, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x03, - 0xc1, 0xc9, 0xc5, 0x04, 0xfd, 0x01, 0x00, 0x00, + 0x04, 0xff, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x03, + 0xc1, 0xc9, 0xc5, 0x04, 0x00, 0x02, 0x00, 0x00, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0xbd, 0x10, 0x24, 0x01, 0x00, 0x9d, 0x9d, 0xc9, 0xec, 0x0b, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc9, 0xd1, 0x97, 0x04, 0x8c, 0x00, 0x00, - 0x00, 0xab, 0xea, 0x13, 0xdd, 0x04, 0xfe, 0x01, - 0x00, 0x00, 0xac, 0xea, 0x0a, 0x04, 0x00, 0x02, + 0x00, 0xab, 0xea, 0x13, 0xdd, 0x04, 0x01, 0x02, + 0x00, 0x00, 0xac, 0xea, 0x0a, 0x04, 0x03, 0x02, 0x00, 0x00, 0x94, 0x00, 0xec, 0x57, 0xdd, 0x04, - 0xdf, 0x00, 0x00, 0x00, 0xac, 0xea, 0x4e, 0xc5, - 0x42, 0xdf, 0x01, 0x00, 0x00, 0x04, 0xe0, 0x01, + 0xe2, 0x00, 0x00, 0x00, 0xac, 0xea, 0x4e, 0xc5, + 0x42, 0xe2, 0x01, 0x00, 0x00, 0x04, 0xe3, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0xb5, 0xa3, 0xea, 0x3c, 0xd2, 0xbd, 0x10, 0xa9, 0x11, 0xea, 0x12, - 0x0e, 0xc5, 0x42, 0xdf, 0x01, 0x00, 0x00, 0x04, - 0x01, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0xb5, + 0x0e, 0xc5, 0x42, 0xe2, 0x01, 0x00, 0x00, 0x04, + 0x04, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0xb5, 0xa3, 0x11, 0xeb, 0x18, 0x0e, 0xd2, 0xbd, 0x0a, - 0xa9, 0xea, 0x1a, 0xc5, 0x42, 0xdf, 0x01, 0x00, - 0x00, 0x04, 0x02, 0x02, 0x00, 0x00, 0x24, 0x01, - 0x00, 0xb5, 0xa3, 0xea, 0x08, 0x04, 0x03, 0x02, + 0xa9, 0xea, 0x1a, 0xc5, 0x42, 0xe2, 0x01, 0x00, + 0x00, 0x04, 0x05, 0x02, 0x00, 0x00, 0x24, 0x01, + 0x00, 0xb5, 0xa3, 0xea, 0x08, 0x04, 0x06, 0x02, 0x00, 0x00, 0x94, 0x00, 0xc5, 0x28, 0x07, 0x02, - 0x30, 0x0e, 0x43, 0x02, 0x03, 0xa6, 0x07, 0x02, + 0x30, 0x0e, 0x43, 0x02, 0x03, 0xac, 0x07, 0x02, 0x01, 0x02, 0x05, 0x01, 0x00, 0x4a, 0x00, 0x00, 0x69, 0x01, 0xd2, 0xbd, 0x10, 0xa9, 0xea, 0x29, 0xd1, 0xb5, 0xa3, 0xea, 0x0c, 0xd1, 0x8c, 0xd5, - 0x04, 0xfc, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x03, - 0xc1, 0xc9, 0xc5, 0x04, 0xfd, 0x01, 0x00, 0x00, + 0x04, 0xff, 0x01, 0x00, 0x00, 0xc9, 0xec, 0x03, + 0xc1, 0xc9, 0xc5, 0x04, 0x00, 0x02, 0x00, 0x00, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0xbd, 0x10, 0x24, 0x01, 0x00, 0x9d, 0x9d, 0xc9, 0xec, 0x0b, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, - 0x00, 0xc9, 0xdd, 0x04, 0xdf, 0x00, 0x00, 0x00, - 0xab, 0xea, 0x08, 0x04, 0x04, 0x02, 0x00, 0x00, + 0x00, 0xc9, 0xdd, 0x04, 0xe2, 0x00, 0x00, 0x00, + 0xab, 0xea, 0x08, 0x04, 0x07, 0x02, 0x00, 0x00, 0x94, 0x00, 0xc5, 0x28, 0x0e, 0x43, 0x02, 0x03, - 0xa8, 0x07, 0x01, 0x02, 0x01, 0x02, 0x09, 0x01, + 0xae, 0x07, 0x01, 0x02, 0x01, 0x02, 0x09, 0x01, 0x0b, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x08, 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x01, 0x00, 0x6a, 0x01, 0x00, 0x68, 0x01, 0x00, 0x6c, 0x01, 0x00, 0x6b, 0x01, 0x00, 0x01, 0x01, 0xc0, 0x00, 0xca, 0x26, 0x00, 0x00, 0xc9, 0xc6, 0xd1, 0xef, 0x29, - 0x0e, 0x43, 0x02, 0x03, 0x8a, 0x08, 0x01, 0x06, + 0x0e, 0x43, 0x02, 0x03, 0x90, 0x08, 0x01, 0x06, 0x01, 0x05, 0x0b, 0x00, 0x95, 0x06, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x00, 0x03, @@ -1450,378 +1450,378 @@ const uint8_t qjsc_repl[16086] = { 0x06, 0x00, 0x00, 0x07, 0x00, 0x00, 0x08, 0x00, 0xd1, 0x97, 0xc4, 0x04, 0x04, 0x49, 0x00, 0x00, 0x00, 0xab, 0x69, 0xdd, 0x01, 0x00, 0x00, 0xd1, - 0xf3, 0xea, 0x0f, 0x65, 0x00, 0x00, 0x42, 0x63, + 0xf3, 0xea, 0x0f, 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x0e, - 0x29, 0xde, 0x42, 0xdf, 0x01, 0x00, 0x00, 0xd1, + 0x29, 0xde, 0x42, 0xe2, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0xb5, 0xa6, 0xea, 0x13, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, - 0x06, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, - 0x29, 0xdf, 0xea, 0x62, 0xd1, 0x38, 0xe4, 0x00, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, + 0x09, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, + 0x29, 0xdf, 0xea, 0x62, 0xd1, 0x38, 0xe7, 0x00, 0x00, 0x00, 0xa7, 0x11, 0xeb, 0x40, 0x0e, 0xd1, - 0x38, 0x07, 0x02, 0x00, 0x00, 0xa7, 0x11, 0xeb, - 0x35, 0x0e, 0xd1, 0x38, 0x08, 0x02, 0x00, 0x00, - 0xa7, 0x11, 0xeb, 0x2a, 0x0e, 0xd1, 0x38, 0x09, + 0x38, 0x0a, 0x02, 0x00, 0x00, 0xa7, 0x11, 0xeb, + 0x35, 0x0e, 0xd1, 0x38, 0x0b, 0x02, 0x00, 0x00, + 0xa7, 0x11, 0xeb, 0x2a, 0x0e, 0xd1, 0x38, 0x0c, 0x02, 0x00, 0x00, 0xa7, 0x11, 0xeb, 0x1f, 0x0e, - 0xd1, 0x38, 0x0a, 0x02, 0x00, 0x00, 0xa7, 0x11, - 0xeb, 0x14, 0x0e, 0xd1, 0x38, 0x0b, 0x02, 0x00, + 0xd1, 0x38, 0x0d, 0x02, 0x00, 0x00, 0xa7, 0x11, + 0xeb, 0x14, 0x0e, 0xd1, 0x38, 0x0e, 0x02, 0x00, 0x00, 0xa7, 0x11, 0xeb, 0x09, 0x0e, 0xd1, 0x38, - 0x0c, 0x02, 0x00, 0x00, 0xa7, 0xea, 0x17, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0xd1, + 0x0f, 0x02, 0x00, 0x00, 0xa7, 0xea, 0x17, 0x65, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, - 0x24, 0x01, 0x00, 0x0e, 0x29, 0xde, 0x42, 0x82, + 0x24, 0x01, 0x00, 0x0e, 0x29, 0xde, 0x42, 0x85, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x0e, - 0xe0, 0x42, 0x0d, 0x02, 0x00, 0x00, 0xd1, 0x24, + 0xe0, 0x42, 0x10, 0x02, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x69, 0x86, 0x00, 0x00, 0x00, 0xd1, - 0xe9, 0xc9, 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, - 0x00, 0x00, 0x04, 0x0e, 0x02, 0x00, 0x00, 0x24, + 0xe9, 0xc9, 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, + 0x00, 0x00, 0x04, 0x11, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0xea, 0x54, 0xc6, 0xb5, 0xac, 0xea, 0x12, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, - 0x0f, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, + 0x12, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xc6, 0xd1, 0xa8, 0xea, 0x0b, 0x5e, 0x04, 0x00, 0xd1, 0xc6, 0x47, 0xef, 0x0e, 0xec, 0x12, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, - 0x10, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, + 0x13, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xc6, 0xbd, 0x14, 0xa5, 0xea, 0x14, 0x65, 0x00, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x11, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x14, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xec, 0x05, 0x93, 0x01, 0xec, 0xa9, 0x65, 0x00, 0x00, - 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x12, 0x02, + 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x15, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xed, 0x9d, - 0x00, 0x5e, 0x05, 0x00, 0x42, 0x13, 0x02, 0x00, - 0x00, 0xd1, 0x24, 0x01, 0x00, 0x04, 0xa0, 0x00, + 0x00, 0x5e, 0x05, 0x00, 0x42, 0x16, 0x02, 0x00, + 0x00, 0xd1, 0x24, 0x01, 0x00, 0x04, 0xa3, 0x00, 0x00, 0x00, 0xab, 0xea, 0x18, 0x65, 0x00, 0x00, - 0x42, 0x63, 0x01, 0x00, 0x00, 0xd1, 0x42, 0x37, + 0x42, 0x66, 0x01, 0x00, 0x00, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xec, 0x71, 0x5e, 0x05, 0x00, 0x42, - 0x14, 0x02, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, - 0xcf, 0xe9, 0xc9, 0x65, 0x00, 0x00, 0x42, 0x63, - 0x01, 0x00, 0x00, 0x04, 0x15, 0x02, 0x00, 0x00, + 0x17, 0x02, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, + 0xcf, 0xe9, 0xc9, 0x65, 0x00, 0x00, 0x42, 0x66, + 0x01, 0x00, 0x00, 0x04, 0x18, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xb5, 0xca, 0xc6, 0xc5, 0xa3, 0xea, 0x39, 0xc6, 0xb5, 0xac, 0xea, 0x12, - 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, - 0x04, 0x0f, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, + 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, + 0x04, 0x12, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xc7, 0xc6, 0x47, 0xcc, 0x65, 0x00, 0x00, - 0x42, 0x63, 0x01, 0x00, 0x00, 0xc8, 0x04, 0x16, + 0x42, 0x66, 0x01, 0x00, 0x00, 0xc8, 0x04, 0x19, 0x02, 0x00, 0x00, 0x24, 0x02, 0x00, 0x0e, 0x5e, 0x04, 0x00, 0xd1, 0xc8, 0x47, 0xef, 0x0e, 0x93, - 0x01, 0xec, 0xc4, 0x65, 0x00, 0x00, 0x42, 0x63, - 0x01, 0x00, 0x00, 0x04, 0x17, 0x02, 0x00, 0x00, - 0x24, 0x01, 0x00, 0x0e, 0xde, 0x42, 0x18, 0x02, + 0x01, 0xec, 0xc4, 0x65, 0x00, 0x00, 0x42, 0x66, + 0x01, 0x00, 0x00, 0x04, 0x1a, 0x02, 0x00, 0x00, + 0x24, 0x01, 0x00, 0x0e, 0xde, 0x42, 0x1b, 0x02, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x0e, 0x29, 0xc2, 0x04, 0x04, 0x48, 0x00, 0x00, 0x00, 0xab, - 0xea, 0x36, 0xd1, 0x42, 0x19, 0x02, 0x00, 0x00, + 0xea, 0x36, 0xd1, 0x42, 0x1c, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc4, 0x05, 0xe9, 0xbd, 0x4f, - 0xa5, 0xea, 0x16, 0xc2, 0x05, 0x42, 0x64, 0x01, + 0xa5, 0xea, 0x16, 0xc2, 0x05, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xbd, 0x4b, 0x24, 0x02, 0x00, - 0x04, 0x1a, 0x02, 0x00, 0x00, 0x9d, 0xc3, 0x05, - 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, + 0x04, 0x1d, 0x02, 0x00, 0x00, 0x9d, 0xc3, 0x05, + 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xc2, 0x05, 0x24, 0x01, 0x00, 0x0e, 0x29, 0xc2, 0x04, 0x04, 0x46, 0x00, 0x00, 0x00, 0xab, 0xea, - 0x1e, 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, + 0x1e, 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x5e, 0x06, 0x00, 0xd1, 0x5e, 0x07, 0x00, 0xea, 0x05, 0xbd, 0x10, 0xec, 0x03, 0xbd, 0x0a, 0xf0, 0x24, 0x01, 0x00, 0x0e, 0x29, 0xc2, 0x04, 0x04, 0x8b, 0x00, 0x00, 0x00, 0xab, 0xea, 0x1e, - 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, + 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x5e, 0x08, 0x00, 0xd1, 0x5e, 0x07, 0x00, 0xea, 0x05, 0xbd, 0x10, 0xec, 0x03, 0xbd, 0x0a, 0xf0, 0x24, 0x01, 0x00, 0x0e, 0x29, 0xc2, 0x04, 0x04, 0x8c, 0x00, 0x00, 0x00, 0xab, 0xea, 0x1e, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x5e, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x5e, 0x09, 0x00, 0xd1, 0x5e, 0x07, 0x00, 0xea, 0x05, 0xbd, 0x10, 0xec, 0x03, 0xbd, 0x0a, 0xf0, 0x24, 0x01, 0x00, 0x0e, 0x29, 0xc2, 0x04, 0x04, 0x8d, 0x00, 0x00, 0x00, 0xab, 0xea, 0x1d, 0x65, 0x00, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0xd1, 0x42, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xd1, 0x42, 0x37, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x04, - 0x1b, 0x02, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, + 0x1e, 0x02, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, 0x0e, 0x29, 0xc2, 0x04, 0x04, 0x4a, 0x00, 0x00, 0x00, 0xab, 0xea, 0x13, 0x65, 0x00, 0x00, 0x42, - 0x63, 0x01, 0x00, 0x00, 0x5e, 0x0a, 0x00, 0xd1, + 0x66, 0x01, 0x00, 0x00, 0x5e, 0x0a, 0x00, 0xd1, 0xef, 0x24, 0x01, 0x00, 0x0e, 0x29, 0xc2, 0x04, 0x04, 0x1b, 0x00, 0x00, 0x00, 0xab, 0xea, 0x20, - 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, - 0x04, 0x1c, 0x02, 0x00, 0x00, 0xd1, 0x41, 0x36, - 0x00, 0x00, 0x00, 0x9d, 0x04, 0x5f, 0x01, 0x00, + 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, + 0x04, 0x1f, 0x02, 0x00, 0x00, 0xd1, 0x41, 0x36, + 0x00, 0x00, 0x00, 0x9d, 0x04, 0x62, 0x01, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, 0x0e, 0x29, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0xd1, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xd1, 0x24, 0x01, 0x00, 0x0e, 0x29, 0x0e, 0x43, 0x02, - 0x03, 0xaa, 0x07, 0x01, 0x01, 0x01, 0x04, 0x01, + 0x03, 0xb0, 0x07, 0x01, 0x01, 0x01, 0x04, 0x01, 0x00, 0x2c, 0x00, 0x00, 0x2e, 0x01, 0xd1, 0xb5, - 0x47, 0x04, 0x1d, 0x02, 0x00, 0x00, 0xac, 0xea, + 0x47, 0x04, 0x20, 0x02, 0x00, 0x00, 0xac, 0xea, 0x03, 0xc1, 0x28, 0xb6, 0xc9, 0xc5, 0xd1, 0xe9, 0xa3, 0xea, 0x0d, 0xdd, 0xd1, 0xc5, 0x47, 0xef, 0x96, 0xeb, 0x05, 0x93, 0x00, 0xec, 0xef, 0xd1, - 0x42, 0x64, 0x01, 0x00, 0x00, 0xb6, 0xc5, 0x25, - 0x02, 0x00, 0x0e, 0x43, 0x02, 0x03, 0xac, 0x07, + 0x42, 0x67, 0x01, 0x00, 0x00, 0xb6, 0xc5, 0x25, + 0x02, 0x00, 0x0e, 0x43, 0x02, 0x03, 0xb2, 0x07, 0x02, 0x04, 0x02, 0x07, 0x0c, 0x00, 0xb2, 0x07, 0x00, 0x00, 0x70, 0x01, 0x00, 0x00, 0x0c, 0x00, 0x68, 0x01, 0x00, 0x17, 0x01, 0x00, 0x09, 0x01, 0x00, 0x0e, 0x01, 0x00, 0x04, 0x01, 0x00, 0x10, 0x01, 0x00, 0x0f, 0x01, 0x00, 0x06, 0x01, 0x00, - 0x69, 0x01, 0x00, 0x08, 0x01, 0xd1, 0x04, 0x1e, + 0x69, 0x01, 0x00, 0x08, 0x01, 0xd1, 0x04, 0x21, 0x02, 0x00, 0x00, 0xab, 0x11, 0xeb, 0x14, 0x0e, - 0xd1, 0x04, 0x1f, 0x02, 0x00, 0x00, 0xab, 0x11, - 0xeb, 0x09, 0x0e, 0xd1, 0x04, 0xd7, 0x01, 0x00, + 0xd1, 0x04, 0x22, 0x02, 0x00, 0x00, 0xab, 0x11, + 0xeb, 0x09, 0x0e, 0xd1, 0x04, 0xda, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x07, 0xdd, 0xee, 0x0e, 0xed, - 0x8d, 0x03, 0xd1, 0x04, 0x20, 0x02, 0x00, 0x00, - 0xab, 0xea, 0x4b, 0xd2, 0x42, 0x64, 0x01, 0x00, + 0x8d, 0x03, 0xd1, 0x04, 0x23, 0x02, 0x00, 0x00, + 0xab, 0xea, 0x4b, 0xd2, 0x42, 0x67, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0xb6, 0x9d, 0x24, 0x01, 0x00, - 0x42, 0x21, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, - 0xd0, 0x42, 0x22, 0x02, 0x00, 0x00, 0x04, 0xe0, + 0x42, 0x24, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, + 0xd0, 0x42, 0x25, 0x02, 0x00, 0x00, 0x04, 0xe3, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0xc8, 0x42, - 0x22, 0x02, 0x00, 0x00, 0x04, 0xe5, 0x01, 0x00, + 0x25, 0x02, 0x00, 0x00, 0x04, 0xe8, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0xa4, 0xea, 0x08, 0x04, - 0x23, 0x02, 0x00, 0x00, 0x94, 0x03, 0x65, 0x01, - 0x00, 0x42, 0x24, 0x02, 0x00, 0x00, 0xc8, 0x24, - 0x01, 0x00, 0x0e, 0x09, 0x28, 0xd1, 0x04, 0x25, + 0x26, 0x02, 0x00, 0x00, 0x94, 0x03, 0x65, 0x01, + 0x00, 0x42, 0x27, 0x02, 0x00, 0x00, 0xc8, 0x24, + 0x01, 0x00, 0x0e, 0x09, 0x28, 0xd1, 0x04, 0x28, 0x02, 0x00, 0x00, 0xab, 0xea, 0x06, 0x0a, 0xe3, - 0xed, 0x2c, 0x03, 0xd1, 0x04, 0x26, 0x02, 0x00, + 0xed, 0x2c, 0x03, 0xd1, 0x04, 0x29, 0x02, 0x00, 0x00, 0xab, 0xea, 0x06, 0x09, 0xe3, 0xed, 0x1e, - 0x03, 0xd1, 0x04, 0x27, 0x02, 0x00, 0x00, 0xab, + 0x03, 0xd1, 0x04, 0x2a, 0x02, 0x00, 0x00, 0xab, 0xea, 0x07, 0xe0, 0x96, 0xe4, 0xed, 0x0f, 0x03, 0x5e, 0x04, 0x00, 0x69, 0x96, 0x01, 0x00, 0x00, - 0xd1, 0x04, 0x01, 0x02, 0x00, 0x00, 0xab, 0x69, - 0x8a, 0x01, 0x00, 0x00, 0xd2, 0x42, 0x64, 0x01, + 0xd1, 0x04, 0x04, 0x02, 0x00, 0x00, 0xab, 0x69, + 0x8a, 0x01, 0x00, 0x00, 0xd2, 0x42, 0x67, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0xb6, 0x9d, 0x24, 0x01, - 0x00, 0x42, 0x21, 0x02, 0x00, 0x00, 0x24, 0x00, - 0x00, 0x42, 0x5d, 0x00, 0x00, 0x00, 0x04, 0xf4, + 0x00, 0x42, 0x24, 0x02, 0x00, 0x00, 0x24, 0x00, + 0x00, 0x42, 0x5d, 0x00, 0x00, 0x00, 0x04, 0xf7, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, 0xcd, 0xe9, 0xb6, 0xab, 0xea, 0x49, 0xc5, 0xb5, 0x47, 0xc1, - 0xab, 0xea, 0x42, 0x65, 0x01, 0x00, 0x42, 0x63, - 0x01, 0x00, 0x00, 0x04, 0x28, 0x02, 0x00, 0x00, - 0x5e, 0x05, 0x00, 0x9d, 0x04, 0x29, 0x02, 0x00, - 0x00, 0x9d, 0x5e, 0x06, 0x00, 0x42, 0xf1, 0x01, + 0xab, 0xea, 0x42, 0x65, 0x01, 0x00, 0x42, 0x66, + 0x01, 0x00, 0x00, 0x04, 0x2b, 0x02, 0x00, 0x00, + 0x5e, 0x05, 0x00, 0x9d, 0x04, 0x2c, 0x02, 0x00, + 0x00, 0x9d, 0x5e, 0x06, 0x00, 0x42, 0xf4, 0x01, 0x00, 0x00, 0x5e, 0x05, 0x00, 0x5e, 0x07, 0x00, - 0x9b, 0x24, 0x01, 0x00, 0x9d, 0x04, 0x2a, 0x02, + 0x9b, 0x24, 0x01, 0x00, 0x9d, 0x04, 0x2d, 0x02, 0x00, 0x00, 0x9d, 0x5e, 0x08, 0x00, 0x9d, 0x04, - 0x2b, 0x02, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, + 0x2e, 0x02, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, 0x0e, 0xed, 0x16, 0x01, 0xc5, 0xb5, 0x47, 0x04, - 0x2c, 0x02, 0x00, 0x00, 0xab, 0xea, 0x0d, 0xbd, + 0x2f, 0x02, 0x00, 0x00, 0xab, 0xea, 0x0d, 0xbd, 0x0b, 0x5f, 0x05, 0x00, 0xba, 0x5f, 0x08, 0x00, - 0xed, 0xff, 0x00, 0xc5, 0xb5, 0x47, 0x04, 0x2d, + 0xed, 0xff, 0x00, 0xc5, 0xb5, 0x47, 0x04, 0x30, 0x02, 0x00, 0x00, 0xab, 0xea, 0x0e, 0xbd, 0x18, 0x5f, 0x05, 0x00, 0xbd, 0x08, 0x5f, 0x08, 0x00, - 0xed, 0xe7, 0x00, 0xc5, 0xb5, 0x47, 0x04, 0x2e, + 0xed, 0xe7, 0x00, 0xc5, 0xb5, 0x47, 0x04, 0x31, 0x02, 0x00, 0x00, 0xab, 0xea, 0x0e, 0xbd, 0x35, 0x5f, 0x05, 0x00, 0xbd, 0x0b, 0x5f, 0x08, 0x00, - 0xed, 0xcf, 0x00, 0xc5, 0xb5, 0x47, 0x04, 0x2f, + 0xed, 0xcf, 0x00, 0xc5, 0xb5, 0x47, 0x04, 0x32, 0x02, 0x00, 0x00, 0xab, 0xea, 0x0e, 0xbd, 0x71, 0x5f, 0x05, 0x00, 0xbd, 0x0f, 0x5f, 0x08, 0x00, - 0xed, 0xb7, 0x00, 0x38, 0x30, 0x02, 0x00, 0x00, + 0xed, 0xb7, 0x00, 0x38, 0x33, 0x02, 0x00, 0x00, 0xc5, 0xb5, 0x47, 0xef, 0xca, 0xc5, 0xe9, 0xb7, - 0xa6, 0xea, 0x0d, 0x38, 0x30, 0x02, 0x00, 0x00, + 0xa6, 0xea, 0x0d, 0x38, 0x33, 0x02, 0x00, 0x00, 0xc5, 0xb6, 0x47, 0xef, 0xcb, 0xec, 0x0c, 0x38, - 0xb1, 0x00, 0x00, 0x00, 0x41, 0x31, 0x02, 0x00, - 0x00, 0xcb, 0x38, 0x95, 0x00, 0x00, 0x00, 0x42, - 0xe7, 0x01, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, - 0x11, 0xeb, 0x1e, 0x0e, 0xc6, 0x38, 0xb1, 0x00, - 0x00, 0x00, 0x41, 0x32, 0x02, 0x00, 0x00, 0xa3, - 0x11, 0xeb, 0x0e, 0x0e, 0xc6, 0x38, 0xb1, 0x00, - 0x00, 0x00, 0x41, 0x33, 0x02, 0x00, 0x00, 0xa5, - 0xea, 0x14, 0x65, 0x01, 0x00, 0x42, 0x63, 0x01, - 0x00, 0x00, 0x04, 0x34, 0x02, 0x00, 0x00, 0x24, - 0x01, 0x00, 0x0e, 0x09, 0x28, 0x38, 0x95, 0x00, - 0x00, 0x00, 0x42, 0xe7, 0x01, 0x00, 0x00, 0xc7, + 0xb4, 0x00, 0x00, 0x00, 0x41, 0x34, 0x02, 0x00, + 0x00, 0xcb, 0x38, 0x98, 0x00, 0x00, 0x00, 0x42, + 0xea, 0x01, 0x00, 0x00, 0xc6, 0x24, 0x01, 0x00, + 0x11, 0xeb, 0x1e, 0x0e, 0xc6, 0x38, 0xb4, 0x00, + 0x00, 0x00, 0x41, 0x35, 0x02, 0x00, 0x00, 0xa3, + 0x11, 0xeb, 0x0e, 0x0e, 0xc6, 0x38, 0xb4, 0x00, + 0x00, 0x00, 0x41, 0x36, 0x02, 0x00, 0x00, 0xa5, + 0xea, 0x14, 0x65, 0x01, 0x00, 0x42, 0x66, 0x01, + 0x00, 0x00, 0x04, 0x37, 0x02, 0x00, 0x00, 0x24, + 0x01, 0x00, 0x0e, 0x09, 0x28, 0x38, 0x98, 0x00, + 0x00, 0x00, 0x42, 0xea, 0x01, 0x00, 0x00, 0xc7, 0x24, 0x01, 0x00, 0x11, 0xeb, 0x1e, 0x0e, 0xc7, - 0x38, 0xb1, 0x00, 0x00, 0x00, 0x41, 0x35, 0x02, + 0x38, 0xb4, 0x00, 0x00, 0x00, 0x41, 0x38, 0x02, 0x00, 0x00, 0xa3, 0x11, 0xeb, 0x0e, 0x0e, 0xc7, - 0x38, 0xb1, 0x00, 0x00, 0x00, 0x41, 0x31, 0x02, + 0x38, 0xb4, 0x00, 0x00, 0x00, 0x41, 0x34, 0x02, 0x00, 0x00, 0xa5, 0xea, 0x14, 0x65, 0x01, 0x00, - 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x36, 0x02, + 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x39, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x09, 0x28, 0xc6, 0x5f, 0x05, 0x00, 0xc7, 0x5f, 0x08, 0x00, 0x09, 0x28, 0x5e, 0x04, 0x00, 0xea, 0x78, 0xd1, - 0x04, 0x37, 0x02, 0x00, 0x00, 0xab, 0xea, 0x6f, - 0xd2, 0x42, 0x64, 0x01, 0x00, 0x00, 0xd1, 0xe9, - 0xb6, 0x9d, 0x24, 0x01, 0x00, 0x42, 0x21, 0x02, + 0x04, 0x3a, 0x02, 0x00, 0x00, 0xab, 0xea, 0x6f, + 0xd2, 0x42, 0x67, 0x01, 0x00, 0x00, 0xd1, 0xe9, + 0xb6, 0x9d, 0x24, 0x01, 0x00, 0x42, 0x24, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc9, 0x5e, 0x06, - 0x00, 0x42, 0xf2, 0x01, 0x00, 0x00, 0x5e, 0x09, + 0x00, 0x42, 0xf5, 0x01, 0x00, 0x00, 0x5e, 0x09, 0x00, 0xc5, 0xef, 0x5e, 0x07, 0x00, 0x9a, 0x24, - 0x01, 0x00, 0xce, 0x38, 0xb1, 0x00, 0x00, 0x00, - 0x41, 0x32, 0x02, 0x00, 0x00, 0xa3, 0x11, 0xeb, - 0x0e, 0x0e, 0xc6, 0x38, 0xb1, 0x00, 0x00, 0x00, - 0x41, 0x33, 0x02, 0x00, 0x00, 0xa5, 0xea, 0x14, - 0x65, 0x01, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, - 0x04, 0x34, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, + 0x01, 0x00, 0xce, 0x38, 0xb4, 0x00, 0x00, 0x00, + 0x41, 0x35, 0x02, 0x00, 0x00, 0xa3, 0x11, 0xeb, + 0x0e, 0x0e, 0xc6, 0x38, 0xb4, 0x00, 0x00, 0x00, + 0x41, 0x36, 0x02, 0x00, 0x00, 0xa5, 0xea, 0x14, + 0x65, 0x01, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, + 0x04, 0x37, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x09, 0x28, 0xc6, 0x5f, 0x05, 0x00, 0x38, - 0xb1, 0x00, 0x00, 0x00, 0x41, 0x31, 0x02, 0x00, + 0xb4, 0x00, 0x00, 0x00, 0x41, 0x34, 0x02, 0x00, 0x00, 0x5f, 0x08, 0x00, 0x09, 0x28, 0x5e, 0x04, - 0x00, 0xea, 0x6e, 0xd1, 0x04, 0x38, 0x02, 0x00, - 0x00, 0xab, 0xea, 0x65, 0xd2, 0x42, 0x64, 0x01, + 0x00, 0xea, 0x6e, 0xd1, 0x04, 0x3b, 0x02, 0x00, + 0x00, 0xab, 0xea, 0x65, 0xd2, 0x42, 0x67, 0x01, 0x00, 0x00, 0xd1, 0xe9, 0xb6, 0x9d, 0x24, 0x01, - 0x00, 0x42, 0x21, 0x02, 0x00, 0x00, 0x24, 0x00, + 0x00, 0x42, 0x24, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, 0xcd, 0xc1, 0xab, 0xea, 0x1e, 0x65, 0x01, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x39, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x3c, 0x02, 0x00, 0x00, 0x5e, 0x0a, 0x00, 0x9d, 0x04, - 0x1c, 0x01, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, - 0x0e, 0xec, 0x2c, 0xc5, 0x04, 0xdf, 0x00, 0x00, + 0x1f, 0x01, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, + 0x0e, 0xec, 0x2c, 0xc5, 0x04, 0xe2, 0x00, 0x00, 0x00, 0xab, 0x11, 0xeb, 0x09, 0x0e, 0xc5, 0x04, - 0xfe, 0x01, 0x00, 0x00, 0xab, 0xea, 0x07, 0xc5, + 0x01, 0x02, 0x00, 0x00, 0xab, 0xea, 0x07, 0xc5, 0x5f, 0x0a, 0x00, 0xec, 0x12, 0x65, 0x01, 0x00, - 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x3a, 0x02, + 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x3d, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x09, 0x28, - 0xd1, 0x04, 0x3b, 0x02, 0x00, 0x00, 0xab, 0xea, - 0x14, 0x65, 0x01, 0x00, 0x42, 0x63, 0x01, 0x00, - 0x00, 0x04, 0x3c, 0x02, 0x00, 0x00, 0x24, 0x01, - 0x00, 0x0e, 0xec, 0x6a, 0xd1, 0x04, 0x3d, 0x02, + 0xd1, 0x04, 0x3e, 0x02, 0x00, 0x00, 0xab, 0xea, + 0x14, 0x65, 0x01, 0x00, 0x42, 0x66, 0x01, 0x00, + 0x00, 0x04, 0x3f, 0x02, 0x00, 0x00, 0x24, 0x01, + 0x00, 0x0e, 0xec, 0x6a, 0xd1, 0x04, 0x40, 0x02, 0x00, 0x00, 0xab, 0xea, 0x10, 0x65, 0x01, 0x00, - 0x42, 0x9e, 0x01, 0x00, 0x00, 0xb5, 0x24, 0x01, + 0x42, 0xa1, 0x01, 0x00, 0x00, 0xb5, 0x24, 0x01, 0x00, 0x0e, 0xec, 0x52, 0x5e, 0x0b, 0x00, 0xea, - 0x17, 0xd1, 0x04, 0x54, 0x01, 0x00, 0x00, 0xab, - 0xea, 0x0e, 0x36, 0x3e, 0x02, 0x00, 0x00, 0x0a, - 0x3b, 0x3e, 0x02, 0x00, 0x00, 0xec, 0x37, 0x5e, - 0x0b, 0x00, 0xea, 0x17, 0xd1, 0x04, 0x04, 0x02, - 0x00, 0x00, 0xab, 0xea, 0x0e, 0x36, 0x3e, 0x02, - 0x00, 0x00, 0x09, 0x3b, 0x3e, 0x02, 0x00, 0x00, - 0xec, 0x1c, 0x65, 0x01, 0x00, 0x42, 0x63, 0x01, - 0x00, 0x00, 0x04, 0x3f, 0x02, 0x00, 0x00, 0xd1, - 0x9d, 0x04, 0x1c, 0x01, 0x00, 0x00, 0x9d, 0x24, + 0x17, 0xd1, 0x04, 0x57, 0x01, 0x00, 0x00, 0xab, + 0xea, 0x0e, 0x36, 0x41, 0x02, 0x00, 0x00, 0x0a, + 0x3b, 0x41, 0x02, 0x00, 0x00, 0xec, 0x37, 0x5e, + 0x0b, 0x00, 0xea, 0x17, 0xd1, 0x04, 0x07, 0x02, + 0x00, 0x00, 0xab, 0xea, 0x0e, 0x36, 0x41, 0x02, + 0x00, 0x00, 0x09, 0x3b, 0x41, 0x02, 0x00, 0x00, + 0xec, 0x1c, 0x65, 0x01, 0x00, 0x42, 0x66, 0x01, + 0x00, 0x00, 0x04, 0x42, 0x02, 0x00, 0x00, 0xd1, + 0x9d, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, 0x0e, 0x09, 0x28, 0x0a, 0x28, 0x0e, 0x43, 0x02, 0x03, 0x00, 0x01, 0x00, 0x01, 0x03, 0x01, 0x00, 0x46, 0x00, 0x00, 0x68, 0x01, 0xd1, - 0x11, 0x04, 0x40, 0x02, 0x00, 0x00, 0xab, 0xea, - 0x05, 0x09, 0xe1, 0xec, 0x38, 0x11, 0x04, 0x41, - 0x02, 0x00, 0x00, 0xab, 0xea, 0x05, 0x0a, 0xe1, - 0xec, 0x2b, 0x11, 0x04, 0x42, 0x02, 0x00, 0x00, - 0xab, 0xea, 0x0e, 0x36, 0x3e, 0x02, 0x00, 0x00, - 0x09, 0x3b, 0x3e, 0x02, 0x00, 0x00, 0xec, 0x15, 0x11, 0x04, 0x43, 0x02, 0x00, 0x00, 0xab, 0xea, - 0x0c, 0x36, 0x3e, 0x02, 0x00, 0x00, 0x0a, 0x3b, - 0x3e, 0x02, 0x00, 0x00, 0x29, 0x0e, 0x43, 0x02, - 0x03, 0xae, 0x07, 0x00, 0x01, 0x00, 0x05, 0x07, + 0x05, 0x09, 0xe1, 0xec, 0x38, 0x11, 0x04, 0x44, + 0x02, 0x00, 0x00, 0xab, 0xea, 0x05, 0x0a, 0xe1, + 0xec, 0x2b, 0x11, 0x04, 0x45, 0x02, 0x00, 0x00, + 0xab, 0xea, 0x0e, 0x36, 0x41, 0x02, 0x00, 0x00, + 0x09, 0x3b, 0x41, 0x02, 0x00, 0x00, 0xec, 0x15, + 0x11, 0x04, 0x46, 0x02, 0x00, 0x00, 0xab, 0xea, + 0x0c, 0x36, 0x41, 0x02, 0x00, 0x00, 0x0a, 0x3b, + 0x41, 0x02, 0x00, 0x00, 0x29, 0x0e, 0x43, 0x02, + 0x03, 0xb4, 0x07, 0x00, 0x01, 0x00, 0x05, 0x07, 0x01, 0xd5, 0x01, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x68, 0x01, 0x00, 0x17, 0x01, 0x00, 0x08, 0x01, 0x00, 0x09, 0x01, 0x00, 0x69, 0x01, 0x00, 0x07, 0x01, 0xc0, 0x00, 0xc9, 0x65, 0x00, 0x00, 0x42, - 0x63, 0x01, 0x00, 0x00, 0x04, 0x44, 0x02, 0x00, - 0x00, 0x04, 0x45, 0x02, 0x00, 0x00, 0x9d, 0xc5, - 0xde, 0xef, 0x9d, 0x04, 0x46, 0x02, 0x00, 0x00, - 0x9d, 0x04, 0x47, 0x02, 0x00, 0x00, 0x9d, 0xc5, - 0xde, 0x96, 0xef, 0x9d, 0x04, 0x48, 0x02, 0x00, - 0x00, 0x9d, 0x04, 0x49, 0x02, 0x00, 0x00, 0x9d, - 0xc5, 0xdf, 0xef, 0x9d, 0x04, 0x4a, 0x02, 0x00, - 0x00, 0x9d, 0x04, 0x4b, 0x02, 0x00, 0x00, 0x9d, - 0x24, 0x01, 0x00, 0x0e, 0xe0, 0xea, 0x35, 0x65, - 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, - 0x4c, 0x02, 0x00, 0x00, 0xc5, 0x38, 0x3e, 0x02, - 0x00, 0x00, 0xef, 0x9d, 0x04, 0x4d, 0x02, 0x00, + 0x66, 0x01, 0x00, 0x00, 0x04, 0x47, 0x02, 0x00, + 0x00, 0x04, 0x48, 0x02, 0x00, 0x00, 0x9d, 0xc5, + 0xde, 0xef, 0x9d, 0x04, 0x49, 0x02, 0x00, 0x00, + 0x9d, 0x04, 0x4a, 0x02, 0x00, 0x00, 0x9d, 0xc5, + 0xde, 0x96, 0xef, 0x9d, 0x04, 0x4b, 0x02, 0x00, + 0x00, 0x9d, 0x04, 0x4c, 0x02, 0x00, 0x00, 0x9d, + 0xc5, 0xdf, 0xef, 0x9d, 0x04, 0x4d, 0x02, 0x00, 0x00, 0x9d, 0x04, 0x4e, 0x02, 0x00, 0x00, 0x9d, - 0xc5, 0x38, 0x3e, 0x02, 0x00, 0x00, 0x96, 0xef, - 0x9d, 0x04, 0x4f, 0x02, 0x00, 0x00, 0x9d, 0x24, + 0x24, 0x01, 0x00, 0x0e, 0xe0, 0xea, 0x35, 0x65, + 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, + 0x4f, 0x02, 0x00, 0x00, 0xc5, 0x38, 0x41, 0x02, + 0x00, 0x00, 0xef, 0x9d, 0x04, 0x50, 0x02, 0x00, + 0x00, 0x9d, 0x04, 0x51, 0x02, 0x00, 0x00, 0x9d, + 0xc5, 0x38, 0x41, 0x02, 0x00, 0x00, 0x96, 0xef, + 0x9d, 0x04, 0x52, 0x02, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, 0x0e, 0x5e, 0x04, 0x00, 0xea, 0x37, - 0x65, 0x00, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, - 0x04, 0x50, 0x02, 0x00, 0x00, 0x04, 0x51, 0x02, + 0x65, 0x00, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, + 0x04, 0x53, 0x02, 0x00, 0x00, 0x04, 0x54, 0x02, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, 0x0e, 0xe0, - 0x96, 0xea, 0x1c, 0x65, 0x00, 0x00, 0x42, 0x63, - 0x01, 0x00, 0x00, 0x04, 0x52, 0x02, 0x00, 0x00, - 0x5e, 0x05, 0x00, 0x9d, 0x04, 0x53, 0x02, 0x00, + 0x96, 0xea, 0x1c, 0x65, 0x00, 0x00, 0x42, 0x66, + 0x01, 0x00, 0x00, 0x04, 0x55, 0x02, 0x00, 0x00, + 0x5e, 0x05, 0x00, 0x9d, 0x04, 0x56, 0x02, 0x00, 0x00, 0x9d, 0x24, 0x01, 0x00, 0x0e, 0x5e, 0x06, 0x00, 0x96, 0xea, 0x12, 0x65, 0x00, 0x00, 0x42, - 0x63, 0x01, 0x00, 0x00, 0x04, 0x54, 0x02, 0x00, + 0x66, 0x01, 0x00, 0x00, 0x04, 0x57, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x29, 0x0e, 0x43, - 0x02, 0x03, 0xaa, 0x09, 0x01, 0x00, 0x01, 0x01, + 0x02, 0x03, 0xb0, 0x09, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x0f, 0x00, 0xd1, 0xea, 0x07, 0x04, - 0x7d, 0x00, 0x00, 0x00, 0x28, 0x04, 0xf4, 0x01, - 0x00, 0x00, 0x28, 0x0e, 0x43, 0x02, 0x03, 0xb0, + 0x7d, 0x00, 0x00, 0x00, 0x28, 0x04, 0xf7, 0x01, + 0x00, 0x00, 0x28, 0x0e, 0x43, 0x02, 0x03, 0xb6, 0x07, 0x01, 0x03, 0x01, 0x06, 0x08, 0x00, 0x9f, 0x02, 0x00, 0x00, 0x69, 0x01, 0x00, 0x03, 0x01, 0x00, 0x00, 0x0c, 0x00, 0x19, 0x01, 0x00, 0x0a, 0x01, 0x00, 0x0b, 0x01, 0x00, 0x6d, 0x01, 0x00, 0x00, 0x03, 0x6c, 0x95, 0x00, 0x00, 0x00, 0xdd, - 0x04, 0xfe, 0x01, 0x00, 0x00, 0xab, 0xea, 0x09, - 0x04, 0x56, 0x02, 0x00, 0x00, 0xd1, 0x9d, 0xd5, - 0xde, 0x11, 0x21, 0x00, 0x00, 0x42, 0x57, 0x02, + 0x04, 0x01, 0x02, 0x00, 0x00, 0xab, 0xea, 0x09, + 0x04, 0x59, 0x02, 0x00, 0x00, 0xd1, 0x9d, 0xd5, + 0xde, 0x11, 0x21, 0x00, 0x00, 0x42, 0x5a, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, 0xca, 0x65, 0x02, - 0x00, 0x42, 0x58, 0x02, 0x00, 0x00, 0xd1, 0x0b, - 0x0a, 0x4c, 0x59, 0x02, 0x00, 0x00, 0x24, 0x02, + 0x00, 0x42, 0x5b, 0x02, 0x00, 0x00, 0xd1, 0x0b, + 0x0a, 0x4c, 0x5c, 0x02, 0x00, 0x00, 0x24, 0x02, 0x00, 0xc9, 0xde, 0x11, 0x21, 0x00, 0x00, 0x42, - 0x57, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc6, - 0x9e, 0xe4, 0x65, 0x02, 0x00, 0x42, 0x63, 0x01, + 0x5a, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, 0xc6, + 0x9e, 0xe4, 0x65, 0x02, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x5e, 0x04, 0x00, 0x5e, 0x05, 0x00, - 0x41, 0x0e, 0x01, 0x00, 0x00, 0x47, 0x24, 0x01, + 0x41, 0x11, 0x01, 0x00, 0x00, 0x47, 0x24, 0x01, 0x00, 0x0e, 0x5e, 0x06, 0x00, 0xc5, 0xef, 0x0e, - 0x65, 0x02, 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, - 0x04, 0x1c, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, - 0x0e, 0x65, 0x02, 0x00, 0x42, 0x63, 0x01, 0x00, - 0x00, 0x5e, 0x04, 0x00, 0x41, 0xe6, 0x00, 0x00, + 0x65, 0x02, 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, + 0x04, 0x1f, 0x01, 0x00, 0x00, 0x24, 0x01, 0x00, + 0x0e, 0x65, 0x02, 0x00, 0x42, 0x66, 0x01, 0x00, + 0x00, 0x5e, 0x04, 0x00, 0x41, 0xe9, 0x00, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x5e, 0x07, 0x00, - 0xc5, 0x43, 0x58, 0x01, 0x00, 0x00, 0x0e, 0x29, + 0xc5, 0x43, 0x5b, 0x01, 0x00, 0x00, 0x0e, 0x29, 0xcb, 0x6c, 0x86, 0x00, 0x00, 0x00, 0x65, 0x02, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0x5e, 0x04, - 0x00, 0x5e, 0x05, 0x00, 0x41, 0x0f, 0x01, 0x00, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0x5e, 0x04, + 0x00, 0x5e, 0x05, 0x00, 0x41, 0x12, 0x01, 0x00, 0x00, 0x47, 0x24, 0x01, 0x00, 0x0e, 0xc7, 0x38, - 0x94, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x2c, 0x38, - 0x5a, 0x02, 0x00, 0x00, 0x42, 0x5b, 0x02, 0x00, + 0x97, 0x00, 0x00, 0x00, 0xa7, 0xea, 0x2c, 0x38, + 0x5d, 0x02, 0x00, 0x00, 0x42, 0x5e, 0x02, 0x00, 0x00, 0xc7, 0x24, 0x01, 0x00, 0x0e, 0xc7, 0x41, 0x35, 0x00, 0x00, 0x00, 0xea, 0x35, 0x65, 0x02, - 0x00, 0x42, 0x63, 0x01, 0x00, 0x00, 0xc7, 0x41, + 0x00, 0x42, 0x66, 0x01, 0x00, 0x00, 0xc7, 0x41, 0x35, 0x00, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, - 0xec, 0x21, 0x65, 0x02, 0x00, 0x42, 0x63, 0x01, - 0x00, 0x00, 0x04, 0x5c, 0x02, 0x00, 0x00, 0x24, - 0x01, 0x00, 0x0e, 0x38, 0x5a, 0x02, 0x00, 0x00, - 0x42, 0x5b, 0x02, 0x00, 0x00, 0xc7, 0x24, 0x01, - 0x00, 0x0e, 0x65, 0x02, 0x00, 0x42, 0x63, 0x01, - 0x00, 0x00, 0x5e, 0x04, 0x00, 0x41, 0xe6, 0x00, + 0xec, 0x21, 0x65, 0x02, 0x00, 0x42, 0x66, 0x01, + 0x00, 0x00, 0x04, 0x5f, 0x02, 0x00, 0x00, 0x24, + 0x01, 0x00, 0x0e, 0x38, 0x5d, 0x02, 0x00, 0x00, + 0x42, 0x5e, 0x02, 0x00, 0x00, 0xc7, 0x24, 0x01, + 0x00, 0x0e, 0x65, 0x02, 0x00, 0x42, 0x66, 0x01, + 0x00, 0x00, 0x5e, 0x04, 0x00, 0x41, 0xe9, 0x00, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x0e, 0x29, - 0x2f, 0x0e, 0x43, 0x02, 0x03, 0xb2, 0x07, 0x00, - 0x00, 0x00, 0x04, 0x0b, 0x00, 0x6e, 0x00, 0xd2, - 0x06, 0x07, 0x01, 0xd4, 0x06, 0x08, 0x01, 0xbe, - 0x03, 0x00, 0x0c, 0xd6, 0x06, 0x09, 0x01, 0xe0, - 0x06, 0x10, 0x01, 0xb4, 0x02, 0x04, 0x01, 0xdc, - 0x06, 0x0e, 0x01, 0xde, 0x06, 0x0f, 0x01, 0xa0, - 0x07, 0x69, 0x01, 0xd0, 0x06, 0x00, 0x03, 0xb4, + 0x2f, 0x0e, 0x43, 0x02, 0x03, 0xb8, 0x07, 0x00, + 0x00, 0x00, 0x04, 0x0b, 0x00, 0x6e, 0x00, 0xd8, + 0x06, 0x07, 0x01, 0xda, 0x06, 0x08, 0x01, 0xc4, + 0x03, 0x00, 0x0c, 0xdc, 0x06, 0x09, 0x01, 0xe6, + 0x06, 0x10, 0x01, 0xba, 0x02, 0x04, 0x01, 0xe2, + 0x06, 0x0e, 0x01, 0xe4, 0x06, 0x0f, 0x01, 0xa6, + 0x07, 0x69, 0x01, 0xd6, 0x06, 0x00, 0x03, 0xba, 0x07, 0x73, 0x01, 0xdd, 0x96, 0xea, 0x28, 0xde, - 0xea, 0x14, 0x65, 0x02, 0x00, 0x42, 0x63, 0x01, - 0x00, 0x00, 0x04, 0x5d, 0x02, 0x00, 0x00, 0x24, + 0xea, 0x14, 0x65, 0x02, 0x00, 0x42, 0x66, 0x01, + 0x00, 0x00, 0x04, 0x60, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xec, 0x12, 0x65, 0x02, 0x00, - 0x42, 0x63, 0x01, 0x00, 0x00, 0x04, 0x5e, 0x02, + 0x42, 0x66, 0x01, 0x00, 0x00, 0x04, 0x61, 0x02, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xe0, 0xea, - 0x3c, 0x5e, 0x05, 0x00, 0x42, 0x5b, 0x02, 0x00, + 0x3c, 0x5e, 0x05, 0x00, 0x42, 0x5e, 0x02, 0x00, 0x00, 0xbd, 0x0a, 0x24, 0x01, 0x00, 0x5e, 0x05, - 0x00, 0x42, 0x5b, 0x02, 0x00, 0x00, 0xb7, 0x24, + 0x00, 0x42, 0x5e, 0x02, 0x00, 0x00, 0xb7, 0x24, 0x01, 0x00, 0x9b, 0x5f, 0x04, 0x00, 0xbd, 0x71, 0x5f, 0x06, 0x00, 0xbd, 0x0f, 0x5f, 0x07, 0x00, - 0xde, 0xea, 0x12, 0x04, 0xfe, 0x01, 0x00, 0x00, + 0xde, 0xea, 0x12, 0x04, 0x01, 0x02, 0x00, 0x00, 0x5f, 0x08, 0x00, 0x5e, 0x09, 0x00, 0xdd, 0x43, - 0x3e, 0x02, 0x00, 0x00, 0x5e, 0x0a, 0x00, 0xee, - 0x29, 0x0e, 0x43, 0x02, 0x03, 0xb4, 0x07, 0x00, - 0x00, 0x00, 0x04, 0x04, 0x00, 0x0c, 0x00, 0x98, - 0x07, 0x65, 0x01, 0x90, 0x07, 0x60, 0x01, 0xf6, - 0x06, 0x1b, 0x01, 0xb6, 0x07, 0x74, 0x01, 0xdd, - 0xde, 0x04, 0x5f, 0x02, 0x00, 0x00, 0xdf, 0xf0, - 0xe0, 0xf0, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xb6, + 0x41, 0x02, 0x00, 0x00, 0x5e, 0x0a, 0x00, 0xee, + 0x29, 0x0e, 0x43, 0x02, 0x03, 0xba, 0x07, 0x00, + 0x00, 0x00, 0x04, 0x04, 0x00, 0x0c, 0x00, 0x9e, + 0x07, 0x65, 0x01, 0x96, 0x07, 0x60, 0x01, 0xfc, + 0x06, 0x1b, 0x01, 0xbc, 0x07, 0x74, 0x01, 0xdd, + 0xde, 0x04, 0x62, 0x02, 0x00, 0x00, 0xdf, 0xf0, + 0xe0, 0xf0, 0x29, 0x0e, 0x43, 0x02, 0x03, 0xbc, 0x07, 0x01, 0x00, 0x01, 0x02, 0x02, 0x00, 0x07, 0x00, 0x00, 0x75, 0x01, 0x00, 0x73, 0x01, 0xdd, 0xd1, 0xef, 0x0e, 0xde, 0xee, 0x29, 0x0e, 0x43, - 0x02, 0x03, 0xb8, 0x07, 0x01, 0x02, 0x01, 0x06, + 0x02, 0x03, 0xbe, 0x07, 0x01, 0x02, 0x01, 0x06, 0x0c, 0x00, 0x9e, 0x01, 0x00, 0x00, 0x70, 0x01, 0x00, 0x6e, 0x01, 0x00, 0x6f, 0x01, 0x00, 0x1a, 0x01, 0x00, 0x76, 0x01, 0x00, 0x11, 0x01, 0x00, 0x1b, 0x01, 0x00, 0x09, 0x01, 0x00, 0x71, 0x01, 0x00, 0x0e, 0x01, 0x00, 0x0f, 0x01, 0x00, 0x00, 0x0c, 0xd1, 0xf3, 0xea, 0x04, 0xc1, 0xd5, 0x29, - 0xd1, 0x04, 0x1f, 0x02, 0x00, 0x00, 0xab, 0xea, + 0xd1, 0x04, 0x22, 0x02, 0x00, 0x00, 0xab, 0xea, 0x04, 0xdd, 0xee, 0x29, 0xde, 0xd1, 0xef, 0xce, 0xe9, 0xb5, 0xa5, 0xea, 0x17, 0xdf, 0xc6, 0xd1, - 0xf0, 0x96, 0xea, 0x02, 0x29, 0xd1, 0x42, 0x64, + 0xf0, 0x96, 0xea, 0x02, 0x29, 0xd1, 0x42, 0x67, 0x01, 0x00, 0x00, 0xc6, 0xe9, 0xb6, 0x9d, 0x24, 0x01, 0x00, 0xd5, 0xd1, 0xc1, 0xab, 0xea, 0x02, - 0x29, 0xe0, 0xea, 0x0b, 0xe0, 0x04, 0x1c, 0x01, + 0x29, 0xe0, 0xea, 0x0b, 0xe0, 0x04, 0x1f, 0x01, 0x00, 0x00, 0x9d, 0xd1, 0x9d, 0xd5, 0x5e, 0x04, 0x00, 0xd1, 0xef, 0xcd, 0xb5, 0x47, 0x5f, 0x05, 0x00, 0xc5, 0xb6, 0x47, 0x5f, 0x06, 0x00, 0x5e, 0x05, 0x00, 0xea, 0x04, 0xd1, 0xe4, 0x29, 0xc1, - 0xe4, 0x5e, 0x07, 0x00, 0xea, 0x24, 0x38, 0xb1, - 0x00, 0x00, 0x00, 0x42, 0x60, 0x02, 0x00, 0x00, - 0x5e, 0x08, 0x00, 0x42, 0x61, 0x02, 0x00, 0x00, + 0xe4, 0x5e, 0x07, 0x00, 0xea, 0x24, 0x38, 0xb4, + 0x00, 0x00, 0x00, 0x42, 0x63, 0x02, 0x00, 0x00, + 0x5e, 0x08, 0x00, 0x42, 0x64, 0x02, 0x00, 0x00, 0x07, 0xd1, 0x24, 0x02, 0x00, 0x5e, 0x09, 0x00, 0x5e, 0x0a, 0x00, 0x24, 0x03, 0x00, 0x0e, 0xec, 0x07, 0x5e, 0x08, 0x00, 0xd1, 0xef, 0x0e, 0xb5, - 0x5f, 0x06, 0x00, 0x65, 0x0b, 0x00, 0x42, 0x62, + 0x5f, 0x06, 0x00, 0x65, 0x0b, 0x00, 0x42, 0x65, 0x02, 0x00, 0x00, 0x24, 0x00, 0x00, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0xba, 0x07, 0x01, 0x17, 0x01, + 0x43, 0x02, 0x03, 0xc0, 0x07, 0x01, 0x17, 0x01, 0x04, 0x03, 0x0a, 0x8f, 0x04, 0x00, 0x00, 0x30, 0x01, 0x00, 0x33, 0x01, 0x00, 0x2f, 0x01, 0xc0, 0x00, 0xc3, 0x0a, 0xc0, 0x01, 0xc3, 0x0b, 0xc0, @@ -1831,156 +1831,156 @@ const uint8_t qjsc_repl[16086] = { 0x08, 0xc3, 0x15, 0xc0, 0x09, 0xc3, 0x16, 0xd1, 0xe9, 0xcc, 0xc1, 0xc3, 0x05, 0xb5, 0xc3, 0x06, 0xb6, 0xc3, 0x08, 0x26, 0x00, 0x00, 0xc3, 0x09, - 0x04, 0x63, 0x02, 0x00, 0x00, 0x04, 0x64, 0x02, - 0x00, 0x00, 0x9d, 0x04, 0x65, 0x02, 0x00, 0x00, - 0x9d, 0x04, 0x66, 0x02, 0x00, 0x00, 0x9d, 0x04, - 0x67, 0x02, 0x00, 0x00, 0x9d, 0x04, 0x68, 0x02, - 0x00, 0x00, 0x9d, 0x04, 0x69, 0x02, 0x00, 0x00, - 0x9d, 0x04, 0x6a, 0x02, 0x00, 0x00, 0x9d, 0x04, - 0x6b, 0x02, 0x00, 0x00, 0x9d, 0x04, 0x6c, 0x02, - 0x00, 0x00, 0x9d, 0xc3, 0x12, 0x04, 0x6d, 0x02, - 0x00, 0x00, 0xc3, 0x13, 0x04, 0x6e, 0x02, 0x00, + 0x04, 0x66, 0x02, 0x00, 0x00, 0x04, 0x67, 0x02, + 0x00, 0x00, 0x9d, 0x04, 0x68, 0x02, 0x00, 0x00, + 0x9d, 0x04, 0x69, 0x02, 0x00, 0x00, 0x9d, 0x04, + 0x6a, 0x02, 0x00, 0x00, 0x9d, 0x04, 0x6b, 0x02, + 0x00, 0x00, 0x9d, 0x04, 0x6c, 0x02, 0x00, 0x00, + 0x9d, 0x04, 0x6d, 0x02, 0x00, 0x00, 0x9d, 0x04, + 0x6e, 0x02, 0x00, 0x00, 0x9d, 0x04, 0x6f, 0x02, + 0x00, 0x00, 0x9d, 0xc3, 0x12, 0x04, 0x70, 0x02, + 0x00, 0x00, 0xc3, 0x13, 0x04, 0x71, 0x02, 0x00, 0x00, 0xc3, 0x14, 0xb5, 0xc9, 0xc5, 0xc8, 0xa3, 0x69, 0x75, 0x01, 0x00, 0x00, 0x07, 0xc3, 0x04, 0xc5, 0xcb, 0xd1, 0xc5, 0x91, 0xc9, 0x47, 0xce, - 0x11, 0x04, 0xf4, 0x01, 0x00, 0x00, 0xab, 0xeb, - 0x1c, 0x11, 0x04, 0x1b, 0x01, 0x00, 0x00, 0xab, - 0xeb, 0x13, 0x11, 0x04, 0x1e, 0x01, 0x00, 0x00, - 0xab, 0xeb, 0x0a, 0x11, 0x04, 0x1c, 0x01, 0x00, + 0x11, 0x04, 0xf7, 0x01, 0x00, 0x00, 0xab, 0xeb, + 0x1c, 0x11, 0x04, 0x1e, 0x01, 0x00, 0x00, 0xab, + 0xeb, 0x13, 0x11, 0x04, 0x21, 0x01, 0x00, 0x00, + 0xab, 0xeb, 0x0a, 0x11, 0x04, 0x1f, 0x01, 0x00, 0x00, 0xab, 0xea, 0x04, 0x0e, 0xec, 0xc7, 0x11, - 0x04, 0x6f, 0x02, 0x00, 0x00, 0xab, 0xeb, 0x0a, - 0x11, 0x04, 0xfc, 0x01, 0x00, 0x00, 0xab, 0xea, + 0x04, 0x72, 0x02, 0x00, 0x00, 0xab, 0xeb, 0x0a, + 0x11, 0x04, 0xff, 0x01, 0x00, 0x00, 0xab, 0xea, 0x18, 0xc5, 0xc8, 0xa3, 0xea, 0x0d, 0xd1, 0xc5, 0x47, 0xc6, 0xa9, 0xea, 0x06, 0x93, 0x00, 0x0e, 0xec, 0xa4, 0xb6, 0xc3, 0x08, 0x0e, 0xec, 0x9e, - 0x11, 0x04, 0xe5, 0x01, 0x00, 0x00, 0xab, 0xea, + 0x11, 0x04, 0xe8, 0x01, 0x00, 0x00, 0xab, 0xea, 0x44, 0xc5, 0xc8, 0xa3, 0xea, 0x13, 0xd1, 0xc5, 0x47, 0x04, 0x7d, 0x00, 0x00, 0x00, 0xa9, 0xea, 0x08, 0xc2, 0x0d, 0xee, 0x0e, 0xed, 0xe7, 0x00, 0xc5, 0xc8, 0xa3, 0xea, 0x13, 0xd1, 0xc5, 0x47, - 0x04, 0xe5, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x08, + 0x04, 0xe8, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x08, 0xc2, 0x0e, 0xee, 0x0e, 0xed, 0xd0, 0x00, 0xc2, 0x08, 0xea, 0x0b, 0xc2, 0x10, 0xee, 0x0e, 0xb5, 0xc3, 0x08, 0xed, 0xc2, 0x00, 0xb6, 0xc3, 0x08, - 0x0e, 0xed, 0x53, 0xff, 0x11, 0x04, 0xe1, 0x01, - 0x00, 0x00, 0xab, 0xeb, 0x13, 0x11, 0x04, 0xe2, + 0x0e, 0xed, 0x53, 0xff, 0x11, 0x04, 0xe4, 0x01, + 0x00, 0x00, 0xab, 0xeb, 0x13, 0x11, 0x04, 0xe5, 0x01, 0x00, 0x00, 0xab, 0xeb, 0x0a, 0x11, 0x04, - 0x70, 0x02, 0x00, 0x00, 0xab, 0xea, 0x0c, 0xc2, + 0x73, 0x02, 0x00, 0x00, 0xab, 0xea, 0x0c, 0xc2, 0x0f, 0xc6, 0xef, 0x0e, 0xb5, 0xc3, 0x08, 0xed, - 0x95, 0x00, 0x11, 0x04, 0xee, 0x01, 0x00, 0x00, - 0xab, 0xeb, 0x13, 0x11, 0x04, 0xf8, 0x01, 0x00, - 0x00, 0xab, 0xeb, 0x0a, 0x11, 0x04, 0x71, 0x02, + 0x95, 0x00, 0x11, 0x04, 0xf1, 0x01, 0x00, 0x00, + 0xab, 0xeb, 0x13, 0x11, 0x04, 0xfb, 0x01, 0x00, + 0x00, 0xab, 0xeb, 0x0a, 0x11, 0x04, 0x74, 0x02, 0x00, 0x00, 0xab, 0xea, 0x0f, 0xb6, 0xc3, 0x08, 0x93, 0x06, 0xc2, 0x0a, 0xc6, 0xef, 0x0e, 0x0e, - 0xed, 0x04, 0xff, 0x11, 0x04, 0xef, 0x01, 0x00, - 0x00, 0xab, 0xeb, 0x13, 0x11, 0x04, 0xe3, 0x01, - 0x00, 0x00, 0xab, 0xeb, 0x0a, 0x11, 0x04, 0xe4, + 0xed, 0x04, 0xff, 0x11, 0x04, 0xf2, 0x01, 0x00, + 0x00, 0xab, 0xeb, 0x13, 0x11, 0x04, 0xe6, 0x01, + 0x00, 0x00, 0xab, 0xeb, 0x0a, 0x11, 0x04, 0xe7, 0x01, 0x00, 0x00, 0xab, 0xea, 0x25, 0xb5, 0xc3, 0x08, 0xc2, 0x06, 0xb5, 0xa5, 0xea, 0x13, 0xde, 0xc2, 0x0b, 0xee, 0xc6, 0xf0, 0xea, 0x0b, 0x92, 0x06, 0xc2, 0x0c, 0xee, 0x0e, 0x0e, 0xed, 0xce, - 0xfe, 0x04, 0x0d, 0x01, 0x00, 0x00, 0xc3, 0x04, + 0xfe, 0x04, 0x10, 0x01, 0x00, 0x00, 0xc3, 0x04, 0xec, 0x2c, 0xdf, 0xc6, 0xef, 0xea, 0x0a, 0xc2, 0x11, 0xee, 0x0e, 0xb5, 0xc3, 0x08, 0xec, 0x1e, 0xdd, 0xc6, 0xef, 0x11, 0xeb, 0x09, 0x0e, 0xc6, - 0x04, 0x59, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x07, + 0x04, 0x5c, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x07, 0xc2, 0x15, 0xee, 0x0e, 0xec, 0x08, 0xb6, 0xc3, 0x08, 0x0e, 0xed, 0x9a, 0xfe, 0x0e, 0xc2, 0x04, 0x69, 0x94, 0xfe, 0xff, 0xff, 0xc2, 0x16, 0xc7, 0xc5, 0xf0, 0x0e, 0xed, 0x89, 0xfe, 0xc2, 0x16, 0xc8, 0xc8, 0xf0, 0x0e, 0xc2, 0x05, 0xc2, 0x06, 0xc2, 0x09, 0x26, 0x03, 0x00, 0x28, 0x0e, 0x43, - 0x02, 0x03, 0xe4, 0x09, 0x01, 0x00, 0x01, 0x02, + 0x02, 0x03, 0xea, 0x09, 0x01, 0x00, 0x01, 0x02, 0x01, 0x00, 0x05, 0x00, 0x00, 0x05, 0x01, 0xdd, 0xd1, 0x9d, 0xe1, 0x29, 0x0e, 0x43, 0x02, 0x03, - 0xe6, 0x09, 0x01, 0x00, 0x01, 0x04, 0x01, 0x00, - 0x0d, 0x00, 0x00, 0x05, 0x01, 0xdd, 0x42, 0x64, + 0xec, 0x09, 0x01, 0x00, 0x01, 0x04, 0x01, 0x00, + 0x0d, 0x00, 0x00, 0x05, 0x01, 0xdd, 0x42, 0x67, 0x01, 0x00, 0x00, 0xdd, 0xe9, 0xb6, 0x9e, 0x25, - 0x01, 0x00, 0x0e, 0x43, 0x02, 0x03, 0xe8, 0x09, + 0x01, 0x00, 0x0e, 0x43, 0x02, 0x03, 0xee, 0x09, 0x01, 0x00, 0x01, 0x05, 0x02, 0x00, 0x14, 0x00, 0x00, 0x0b, 0x01, 0x00, 0x05, 0x01, 0xdd, 0xee, - 0xd5, 0xde, 0x42, 0x64, 0x01, 0x00, 0x00, 0xb5, + 0xd5, 0xde, 0x42, 0x67, 0x01, 0x00, 0x00, 0xb5, 0xde, 0xe9, 0xb6, 0x9e, 0x24, 0x02, 0x00, 0xe2, - 0xd1, 0x28, 0x0e, 0x43, 0x02, 0x03, 0xea, 0x09, + 0xd1, 0x28, 0x0e, 0x43, 0x02, 0x03, 0xf0, 0x09, 0x00, 0x00, 0x00, 0x03, 0x06, 0x00, 0x49, 0x00, - 0xec, 0x09, 0x04, 0x01, 0xe4, 0x09, 0x0a, 0x01, - 0xee, 0x09, 0x00, 0x01, 0x88, 0x08, 0x03, 0x01, - 0xf0, 0x09, 0x00, 0x03, 0xe8, 0x09, 0x0c, 0x01, - 0x04, 0x08, 0x01, 0x00, 0x00, 0xe1, 0xde, 0x04, - 0xe5, 0x01, 0x00, 0x00, 0xef, 0x0e, 0xdf, 0x8f, + 0xf2, 0x09, 0x04, 0x01, 0xea, 0x09, 0x0a, 0x01, + 0xf4, 0x09, 0x00, 0x01, 0x8e, 0x08, 0x03, 0x01, + 0xf6, 0x09, 0x00, 0x03, 0xee, 0x09, 0x0c, 0x01, + 0x04, 0x0b, 0x01, 0x00, 0x00, 0xe1, 0xde, 0x04, + 0xe8, 0x01, 0x00, 0x00, 0xef, 0x0e, 0xdf, 0x8f, 0xe3, 0xdf, 0xe0, 0xb6, 0x9e, 0xa3, 0xea, 0x31, 0x5e, 0x04, 0x00, 0xdf, 0x47, 0x04, 0x7d, 0x00, 0x00, 0x00, 0xa9, 0xea, 0x1f, 0x5e, 0x04, 0x00, - 0xdf, 0xb6, 0x9d, 0x47, 0x04, 0xe5, 0x01, 0x00, + 0xdf, 0xb6, 0x9d, 0x47, 0x04, 0xe8, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x10, 0xdf, 0xb7, 0x9d, 0xe3, - 0x5e, 0x05, 0x00, 0x04, 0xe5, 0x01, 0x00, 0x00, + 0x5e, 0x05, 0x00, 0x04, 0xe8, 0x01, 0x00, 0x00, 0xef, 0x0e, 0x29, 0xdf, 0x8f, 0xe3, 0xec, 0xca, - 0x29, 0x0e, 0x43, 0x02, 0x03, 0xf2, 0x09, 0x00, - 0x00, 0x00, 0x02, 0x04, 0x00, 0x1f, 0x00, 0xec, - 0x09, 0x04, 0x01, 0xee, 0x09, 0x00, 0x01, 0x88, - 0x08, 0x03, 0x01, 0xf0, 0x09, 0x00, 0x03, 0x04, - 0x08, 0x01, 0x00, 0x00, 0xe1, 0xde, 0x8f, 0xe2, + 0x29, 0x0e, 0x43, 0x02, 0x03, 0xf8, 0x09, 0x00, + 0x00, 0x00, 0x02, 0x04, 0x00, 0x1f, 0x00, 0xf2, + 0x09, 0x04, 0x01, 0xf4, 0x09, 0x00, 0x01, 0x8e, + 0x08, 0x03, 0x01, 0xf6, 0x09, 0x00, 0x03, 0x04, + 0x0b, 0x01, 0x00, 0x00, 0xe1, 0xde, 0x8f, 0xe2, 0xde, 0xdf, 0xa3, 0xea, 0x11, 0xe0, 0xde, 0x47, - 0x04, 0x1c, 0x01, 0x00, 0x00, 0xa9, 0xeb, 0x06, + 0x04, 0x1f, 0x01, 0x00, 0x00, 0xa9, 0xeb, 0x06, 0xde, 0x8f, 0xe2, 0xec, 0xec, 0x29, 0x0e, 0x43, - 0x02, 0x03, 0xf4, 0x09, 0x01, 0x00, 0x01, 0x03, + 0x02, 0x03, 0xfa, 0x09, 0x01, 0x00, 0x01, 0x03, 0x07, 0x00, 0x4c, 0x00, 0x00, 0x04, 0x01, 0x00, 0x0a, 0x01, 0x00, 0x00, 0x01, 0x00, 0x03, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x03, 0x00, 0x0c, 0x01, 0x04, 0x48, 0x00, 0x00, 0x00, 0xe1, 0xde, 0xd1, 0xef, 0x0e, 0xdf, 0xe0, 0xa3, 0xea, 0x3d, 0x5e, 0x05, 0x00, 0xdf, 0x91, 0xe3, 0x47, 0x60, - 0x04, 0x00, 0x04, 0x1c, 0x01, 0x00, 0x00, 0xa9, - 0xea, 0x09, 0x04, 0x0d, 0x01, 0x00, 0x00, 0xe1, - 0xec, 0xe2, 0x5e, 0x04, 0x00, 0x04, 0x1d, 0x02, + 0x04, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x00, 0xa9, + 0xea, 0x09, 0x04, 0x10, 0x01, 0x00, 0x00, 0xe1, + 0xec, 0xe2, 0x5e, 0x04, 0x00, 0x04, 0x20, 0x02, 0x00, 0x00, 0xa9, 0xea, 0x0b, 0xdf, 0xe0, 0xa6, 0xeb, 0x13, 0xdf, 0x8f, 0xe3, 0xec, 0xcd, 0x5e, 0x04, 0x00, 0xd1, 0xa9, 0xea, 0xc6, 0x5e, 0x06, 0x00, 0xee, 0x0e, 0x29, 0x29, 0x0e, 0x43, 0x02, - 0x03, 0xf6, 0x09, 0x00, 0x00, 0x00, 0x03, 0x09, - 0x00, 0xc4, 0x01, 0x00, 0xec, 0x09, 0x04, 0x01, - 0xe4, 0x09, 0x0a, 0x01, 0xee, 0x09, 0x00, 0x01, - 0x88, 0x08, 0x03, 0x01, 0xce, 0x06, 0x01, 0x01, - 0xf0, 0x09, 0x00, 0x03, 0xe6, 0x09, 0x0b, 0x01, - 0xe8, 0x09, 0x0c, 0x01, 0xae, 0x05, 0x00, 0x00, - 0x04, 0x09, 0x01, 0x00, 0x00, 0xe1, 0xde, 0x04, - 0xe5, 0x01, 0x00, 0x00, 0xef, 0x0e, 0xdf, 0xe0, + 0x03, 0xfc, 0x09, 0x00, 0x00, 0x00, 0x03, 0x09, + 0x00, 0xc4, 0x01, 0x00, 0xf2, 0x09, 0x04, 0x01, + 0xea, 0x09, 0x0a, 0x01, 0xf4, 0x09, 0x00, 0x01, + 0x8e, 0x08, 0x03, 0x01, 0xd4, 0x06, 0x01, 0x01, + 0xf6, 0x09, 0x00, 0x03, 0xec, 0x09, 0x0b, 0x01, + 0xee, 0x09, 0x0c, 0x01, 0xb4, 0x05, 0x00, 0x00, + 0x04, 0x0c, 0x01, 0x00, 0x00, 0xe1, 0xde, 0x04, + 0xe8, 0x01, 0x00, 0x00, 0xef, 0x0e, 0xdf, 0xe0, 0xa3, 0x69, 0xb1, 0x00, 0x00, 0x00, 0x5e, 0x05, 0x00, 0xdf, 0x91, 0xe3, 0x47, 0x60, 0x04, 0x00, - 0x04, 0x1c, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x09, - 0x04, 0x0d, 0x01, 0x00, 0x00, 0xe1, 0xec, 0xdf, - 0x5e, 0x04, 0x00, 0x04, 0x1d, 0x02, 0x00, 0x00, + 0x04, 0x1f, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x09, + 0x04, 0x10, 0x01, 0x00, 0x00, 0xe1, 0xec, 0xdf, + 0x5e, 0x04, 0x00, 0x04, 0x20, 0x02, 0x00, 0x00, 0xa9, 0xea, 0x0b, 0xdf, 0xe0, 0xa3, 0xea, 0xcf, 0xdf, 0x8f, 0xe3, 0xec, 0xca, 0x5e, 0x06, 0x00, - 0xee, 0x04, 0xf8, 0x01, 0x00, 0x00, 0xa9, 0xea, - 0x13, 0x5e, 0x04, 0x00, 0x04, 0xe3, 0x01, 0x00, + 0xee, 0x04, 0xfb, 0x01, 0x00, 0x00, 0xa9, 0xea, + 0x13, 0x5e, 0x04, 0x00, 0x04, 0xe6, 0x01, 0x00, 0x00, 0xa9, 0xea, 0xb3, 0x5e, 0x07, 0x00, 0xee, - 0x0e, 0xec, 0xac, 0x5e, 0x04, 0x00, 0x04, 0xf8, + 0x0e, 0xec, 0xac, 0x5e, 0x04, 0x00, 0x04, 0xfb, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x2e, 0xde, 0x04, - 0xf8, 0x01, 0x00, 0x00, 0xef, 0x0e, 0x5e, 0x05, - 0x00, 0xdf, 0x47, 0x04, 0xf8, 0x01, 0x00, 0x00, + 0xfb, 0x01, 0x00, 0x00, 0xef, 0x0e, 0x5e, 0x05, + 0x00, 0xdf, 0x47, 0x04, 0xfb, 0x01, 0x00, 0x00, 0xa9, 0x11, 0xeb, 0x0d, 0x0e, 0x5e, 0x05, 0x00, - 0xdf, 0x47, 0x04, 0xe3, 0x01, 0x00, 0x00, 0xa9, + 0xdf, 0x47, 0x04, 0xe6, 0x01, 0x00, 0x00, 0xa9, 0x69, 0x7d, 0xff, 0xff, 0xff, 0xdf, 0x8f, 0xe3, - 0xed, 0x75, 0xff, 0x5e, 0x04, 0x00, 0x04, 0xe5, + 0xed, 0x75, 0xff, 0x5e, 0x04, 0x00, 0x04, 0xe8, 0x01, 0x00, 0x00, 0xa9, 0x69, 0x69, 0xff, 0xff, 0xff, 0x5e, 0x07, 0x00, 0xee, 0x0e, 0xdf, 0xe0, 0xa3, 0xea, 0x11, 0x5e, 0x08, 0x00, 0x5e, 0x05, 0x00, 0xdf, 0x47, 0xef, 0xea, 0x06, 0xdf, 0x8f, 0xe3, 0xec, 0xec, 0x29, 0x0e, 0x43, 0x02, 0x03, - 0xf8, 0x09, 0x00, 0x00, 0x00, 0x03, 0x05, 0x00, - 0x41, 0x00, 0xec, 0x09, 0x04, 0x01, 0xee, 0x09, - 0x00, 0x01, 0x88, 0x08, 0x03, 0x01, 0xae, 0x05, - 0x00, 0x00, 0xf0, 0x09, 0x00, 0x03, 0x04, 0x46, + 0xfe, 0x09, 0x00, 0x00, 0x00, 0x03, 0x05, 0x00, + 0x41, 0x00, 0xf2, 0x09, 0x04, 0x01, 0xf4, 0x09, + 0x00, 0x01, 0x8e, 0x08, 0x03, 0x01, 0xb4, 0x05, + 0x00, 0x00, 0xf6, 0x09, 0x00, 0x03, 0x04, 0x46, 0x00, 0x00, 0x00, 0xe1, 0xde, 0xdf, 0xa3, 0xea, 0x36, 0xe0, 0x5e, 0x04, 0x00, 0xde, 0x47, 0xef, 0x11, 0xeb, 0x25, 0x0e, 0x5e, 0x04, 0x00, 0xde, - 0x47, 0x04, 0xe0, 0x01, 0x00, 0x00, 0xa9, 0xea, + 0x47, 0x04, 0xe3, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x1e, 0xde, 0xdf, 0xb6, 0x9e, 0xa9, 0x11, 0xeb, 0x0f, 0x0e, 0x5e, 0x04, 0x00, 0xde, 0xb6, 0x9d, - 0x47, 0x04, 0xe0, 0x01, 0x00, 0x00, 0xaa, 0xea, + 0x47, 0x04, 0xe3, 0x01, 0x00, 0x00, 0xaa, 0xea, 0x06, 0xde, 0x8f, 0xe2, 0xec, 0xc7, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0xfa, 0x09, 0x00, 0x02, 0x00, + 0x43, 0x02, 0x03, 0x80, 0x0a, 0x00, 0x02, 0x00, 0x05, 0x0a, 0x00, 0xb3, 0x01, 0x00, 0x00, 0x08, 0x01, 0x00, 0x00, 0x01, 0x00, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02, 0x01, @@ -1988,33 +1988,33 @@ const uint8_t qjsc_repl[16086] = { 0x01, 0x00, 0x14, 0x01, 0xb6, 0xe1, 0xde, 0xdf, 0xa3, 0xea, 0x0f, 0xe0, 0x5e, 0x04, 0x00, 0xde, 0x47, 0xef, 0xea, 0x06, 0xde, 0x8f, 0xe2, 0xec, - 0xee, 0x04, 0x63, 0x02, 0x00, 0x00, 0x5e, 0x04, - 0x00, 0x42, 0x64, 0x01, 0x00, 0x00, 0x5e, 0x05, - 0x00, 0xde, 0x24, 0x02, 0x00, 0x9d, 0x04, 0x63, + 0xee, 0x04, 0x66, 0x02, 0x00, 0x00, 0x5e, 0x04, + 0x00, 0x42, 0x67, 0x01, 0x00, 0x00, 0x5e, 0x05, + 0x00, 0xde, 0x24, 0x02, 0x00, 0x9d, 0x04, 0x66, 0x02, 0x00, 0x00, 0x9d, 0xc9, 0x5e, 0x06, 0x00, - 0x42, 0xdf, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, - 0x00, 0xb5, 0xa6, 0xea, 0x1c, 0x04, 0x0a, 0x01, + 0x42, 0xe2, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, + 0x00, 0xb5, 0xa6, 0xea, 0x1c, 0x04, 0x0d, 0x01, 0x00, 0x00, 0x5f, 0x07, 0x00, 0x5e, 0x08, 0x00, - 0x42, 0xdf, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, + 0x42, 0xe2, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, 0x00, 0xb5, 0xa6, 0xea, 0x03, 0xb5, 0xe1, 0x29, 0xde, 0xca, 0xc6, 0xdf, 0xa3, 0xea, 0x12, 0x5e, - 0x04, 0x00, 0xc6, 0x47, 0x04, 0xf4, 0x01, 0x00, + 0x04, 0x00, 0xc6, 0x47, 0x04, 0xf7, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x05, 0x93, 0x01, 0xec, 0xeb, 0xc6, 0xdf, 0xa3, 0xea, 0x17, 0x5e, 0x04, 0x00, - 0xc6, 0x47, 0x04, 0xee, 0x01, 0x00, 0x00, 0xa9, + 0xc6, 0x47, 0x04, 0xf1, 0x01, 0x00, 0x00, 0xa9, 0xea, 0x0a, 0x04, 0x1b, 0x00, 0x00, 0x00, 0x5f, - 0x07, 0x00, 0x29, 0x5e, 0x09, 0x00, 0x42, 0xdf, + 0x07, 0x00, 0x29, 0x5e, 0x09, 0x00, 0x42, 0xe2, 0x01, 0x00, 0x00, 0xc5, 0x24, 0x01, 0x00, 0xb5, - 0xa6, 0xea, 0x0a, 0x04, 0x0b, 0x01, 0x00, 0x00, - 0x5f, 0x07, 0x00, 0x29, 0x04, 0x0c, 0x01, 0x00, + 0xa6, 0xea, 0x0a, 0x04, 0x0e, 0x01, 0x00, 0x00, + 0x5f, 0x07, 0x00, 0x29, 0x04, 0x0f, 0x01, 0x00, 0x00, 0x5f, 0x07, 0x00, 0xb5, 0xe1, 0x29, 0x0e, - 0x43, 0x02, 0x03, 0xfc, 0x09, 0x02, 0x00, 0x02, + 0x43, 0x02, 0x03, 0x82, 0x0a, 0x02, 0x00, 0x02, 0x03, 0x02, 0x00, 0x2b, 0x00, 0x00, 0x09, 0x01, 0x00, 0x04, 0x01, 0xdd, 0xe9, 0xd1, 0xa3, 0xea, - 0x12, 0xdd, 0x42, 0x82, 0x01, 0x00, 0x00, 0x04, + 0x12, 0xdd, 0x42, 0x85, 0x01, 0x00, 0x00, 0x04, 0x16, 0x00, 0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0xec, 0xea, 0xdd, 0xe9, 0xd2, 0xa3, 0xea, 0x0e, - 0xdd, 0x42, 0x82, 0x01, 0x00, 0x00, 0xde, 0x24, + 0xdd, 0x42, 0x85, 0x01, 0x00, 0x00, 0xde, 0x24, 0x01, 0x00, 0x0e, 0xec, 0xee, 0x29, }; diff --git a/crates/quickjs-wasm-sys/quickjs/run-test262 b/crates/quickjs-wasm-sys/quickjs/run-test262 index e1e5fa38..66c27aa8 100755 Binary files a/crates/quickjs-wasm-sys/quickjs/run-test262 and b/crates/quickjs-wasm-sys/quickjs/run-test262 differ diff --git a/crates/quickjs-wasm-sys/quickjs/test262.conf b/crates/quickjs-wasm-sys/quickjs/test262.conf index 6fbb5793..c4349f12 100644 --- a/crates/quickjs-wasm-sys/quickjs/test262.conf +++ b/crates/quickjs-wasm-sys/quickjs/test262.conf @@ -47,16 +47,25 @@ testdir=test262/test # Standard language features and proposed extensions # list the features that are included # skipped features are tagged as such to avoid warnings +# Keep this list alpha-sorted (:sort i in vim) +__getter__ +__proto__ +__setter__ AggregateError align-detached-buffer-semantics-with-web-reality arbitrary-module-namespace-names=skip -Array.prototype.at=skip +array-find-from-last +array-grouping=skip +Array.fromAsync=skip +Array.prototype.at Array.prototype.flat Array.prototype.flatMap Array.prototype.flatten +Array.prototype.includes Array.prototype.values ArrayBuffer +arraybuffer-transfer=skip arrow-function async-functions async-iteration @@ -64,12 +73,15 @@ Atomics Atomics.waitAsync=skip BigInt caller +change-array-by-copy=skip class class-fields-private +class-fields-private-in=skip class-fields-public class-methods-private -class-static-fields-public +class-static-block=skip class-static-fields-private +class-static-fields-public class-static-methods-private cleanupSome=skip coalesce-expression @@ -85,14 +97,17 @@ DataView.prototype.getInt8 DataView.prototype.getUint16 DataView.prototype.getUint32 DataView.prototype.setUint8 +decorators=skip default-parameters destructuring-assignment destructuring-binding dynamic-import +error-cause=skip +exponentiation export-star-as-namespace-from-module FinalizationGroup=skip -FinalizationRegistry=skip FinalizationRegistry.prototype.cleanupSome=skip +FinalizationRegistry=skip Float32Array Float64Array for-in-order @@ -101,11 +116,16 @@ generators globalThis hashbang host-gc-required=skip +import-assertions=skip +import-attributes=skip import.meta Int16Array Int32Array Int8Array IsHTMLDDA +iterator-helpers=skip +json-modules=skip +json-parse-with-source=skip json-superset legacy-regexp=skip let @@ -116,10 +136,12 @@ numeric-separator-literal object-rest object-spread Object.fromEntries +Object.hasOwn Object.is optional-catch-binding optional-chaining Promise +promise-with-resolvers=skip Promise.allSettled Promise.any Promise.prototype.finally @@ -130,20 +152,27 @@ Reflect.construct Reflect.set Reflect.setPrototypeOf regexp-dotall +regexp-duplicate-named-groups=skip regexp-lookbehind regexp-match-indices=skip regexp-named-groups regexp-unicode-property-escapes +regexp-v-flag=skip +resizable-arraybuffer=skip rest-parameters Set +set-methods=skip +ShadowRealm=skip SharedArrayBuffer string-trimming String.fromCodePoint +String.prototype.at String.prototype.endsWith String.prototype.includes -String.prototype.at=skip +String.prototype.isWellFormed=skip String.prototype.matchAll String.prototype.replaceAll +String.prototype.toWellFormed=skip String.prototype.trimEnd String.prototype.trimStart super @@ -162,11 +191,13 @@ Symbol.split Symbol.toPrimitive Symbol.toStringTag Symbol.unscopables +symbols-as-weakmap-keys=skip tail-call-optimization=skip template +Temporal=skip top-level-await=skip TypedArray -TypedArray.prototype.at=skip +TypedArray.prototype.at u180e Uint16Array Uint32Array @@ -176,9 +207,6 @@ WeakMap WeakRef=skip WeakSet well-formed-json-stringify -__getter__ -__proto__ -__setter__ [exclude] # list excluded tests and directories here diff --git a/crates/quickjs-wasm-sys/quickjs/test262_errors.txt b/crates/quickjs-wasm-sys/quickjs/test262_errors.txt index b7f6aef3..e9462dd4 100644 --- a/crates/quickjs-wasm-sys/quickjs/test262_errors.txt +++ b/crates/quickjs-wasm-sys/quickjs/test262_errors.txt @@ -1,35 +1,41 @@ -test262/test/built-ins/Function/internals/Construct/derived-this-uninitialized-realm.js:20: Test262Error: Expected a ReferenceError but got a ReferenceError -test262/test/built-ins/Function/internals/Construct/derived-this-uninitialized-realm.js:20: strict mode: Test262Error: Expected a ReferenceError but got a ReferenceError -test262/test/built-ins/RegExp/named-groups/non-unicode-property-names-valid.js:46: SyntaxError: invalid group name -test262/test/built-ins/RegExp/named-groups/non-unicode-property-names-valid.js:46: strict mode: SyntaxError: invalid group name -test262/test/built-ins/TypedArrayConstructors/internals/DefineOwnProperty/BigInt/detached-buffer.js:46: Test262Error: (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/DefineOwnProperty/BigInt/detached-buffer.js:46: strict mode: Test262Error: (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/DefineOwnProperty/detached-buffer.js:47: Test262Error: (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/DefineOwnProperty/detached-buffer.js:47: strict mode: Test262Error: (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/detached-buffer-realm.js:37: strict mode: TypeError: out-of-bound numeric index (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/detached-buffer.js:34: TypeError: cannot convert bigint to number (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/detached-buffer.js:32: strict mode: TypeError: out-of-bound numeric index (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/key-is-minus-zero.js:20: Test262Error: Reflect.set("new TA([42n])", "-0", 1n) must return true Expected SameValue(«false», «true») to be true (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/key-is-minus-zero.js:20: strict mode: Test262Error: Reflect.set("new TA([42n])", "-0", 1n) must return true Expected SameValue(«false», «true») to be true (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/key-is-not-integer.js:21: Test262Error: Reflect.set("new TA([42n])", "1.1", 1n) must return true Expected SameValue(«false», «true») to be true (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/key-is-not-integer.js:21: strict mode: Test262Error: Reflect.set("new TA([42n])", "1.1", 1n) must return true Expected SameValue(«false», «true») to be true (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/key-is-out-of-bounds.js:27: Test262Error: Reflect.set("new TA([42n])", "-1", 1n) must return false Expected SameValue(«false», «true») to be true (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/key-is-out-of-bounds.js:27: strict mode: Test262Error: Reflect.set("new TA([42n])", "-1", 1n) must return false Expected SameValue(«false», «true») to be true (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/tonumber-value-detached-buffer.js:24: Test262Error: Expected SameValue(«false», «true») to be true (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/BigInt/tonumber-value-detached-buffer.js:24: strict mode: Test262Error: Expected SameValue(«false», «true») to be true (Testing with BigInt64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/detached-buffer-realm.js:37: strict mode: TypeError: out-of-bound numeric index (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/detached-buffer.js:32: strict mode: TypeError: out-of-bound numeric index (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/key-is-minus-zero.js:22: Test262Error: Reflect.set(sample, "-0", 1) must return true Expected SameValue(«false», «true») to be true (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/key-is-minus-zero.js:22: strict mode: Test262Error: Reflect.set(sample, "-0", 1) must return true Expected SameValue(«false», «true») to be true (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/key-is-not-integer.js:22: Test262Error: Reflect.set(sample, "1.1", 1) must return true Expected SameValue(«false», «true») to be true (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/key-is-not-integer.js:22: strict mode: Test262Error: Reflect.set(sample, "1.1", 1) must return true Expected SameValue(«false», «true») to be true (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/key-is-out-of-bounds.js:22: Test262Error: Reflect.set(sample, "-1", 1) must return true Expected SameValue(«false», «true») to be true (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/key-is-out-of-bounds.js:22: strict mode: Test262Error: Reflect.set(sample, "-1", 1) must return true Expected SameValue(«false», «true») to be true (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/tonumber-value-detached-buffer.js:39: Test262Error: Expected SameValue(«false», «true») to be true (Testing with Float64Array.) -test262/test/built-ins/TypedArrayConstructors/internals/Set/tonumber-value-detached-buffer.js:39: strict mode: Test262Error: Expected SameValue(«false», «true») to be true (Testing with Float64Array.) +test262/test/annexB/language/eval-code/direct/script-decl-lex-collision-in-sloppy-mode.js:13: Test262Error: Expected a SyntaxError to be thrown but no exception was thrown at all +test262/test/built-ins/AsyncGeneratorPrototype/return/return-state-completed-broken-promise.js:53: TypeError: $DONE() not called +test262/test/built-ins/AsyncGeneratorPrototype/return/return-state-completed-broken-promise.js:53: strict mode: TypeError: $DONE() not called +test262/test/built-ins/AsyncGeneratorPrototype/return/return-suspendedStart-broken-promise.js:34: TypeError: $DONE() not called +test262/test/built-ins/AsyncGeneratorPrototype/return/return-suspendedStart-broken-promise.js:34: strict mode: TypeError: $DONE() not called +test262/test/built-ins/AsyncGeneratorPrototype/return/return-suspendedYield-broken-promise-try-catch.js:39: TypeError: $DONE() not called +test262/test/built-ins/AsyncGeneratorPrototype/return/return-suspendedYield-broken-promise-try-catch.js:39: strict mode: TypeError: $DONE() not called +test262/test/built-ins/Function/internals/Construct/derived-this-uninitialized-realm.js:20: Test262Error: Expected a ReferenceError but got a different error constructor with the same name +test262/test/built-ins/Function/internals/Construct/derived-this-uninitialized-realm.js:20: strict mode: Test262Error: Expected a ReferenceError but got a different error constructor with the same name +test262/test/built-ins/RegExp/lookahead-quantifier-match-groups.js:27: Test262Error: Expected [a, abc] and [a, undefined] to have the same contents. ? quantifier +test262/test/built-ins/RegExp/lookahead-quantifier-match-groups.js:27: strict mode: Test262Error: Expected [a, abc] and [a, undefined] to have the same contents. ? quantifier +test262/test/built-ins/RegExp/unicode_full_case_folding.js:20: Test262Error: \u0390 does not match \u1fd3 +test262/test/built-ins/RegExp/unicode_full_case_folding.js:20: strict mode: Test262Error: \u0390 does not match \u1fd3 +test262/test/built-ins/String/prototype/localeCompare/15.5.4.9_CE.js:62: Test262Error: String.prototype.localeCompare considers ö (\u006f\u0308) ≠ ö (\u00f6). +test262/test/built-ins/String/prototype/localeCompare/15.5.4.9_CE.js:62: strict mode: Test262Error: String.prototype.localeCompare considers ö (\u006f\u0308) ≠ ö (\u00f6). +test262/test/built-ins/TypedArray/prototype/sort/sort-tonumber.js:30: TypeError: ArrayBuffer is detached (Testing with Float64Array.) +test262/test/built-ins/TypedArray/prototype/sort/sort-tonumber.js:30: strict mode: TypeError: ArrayBuffer is detached (Testing with Float64Array.) +test262/test/language/expressions/assignment/target-member-computed-reference-null.js:32: Test262Error: Expected a DummyError but got a TypeError +test262/test/language/expressions/assignment/target-member-computed-reference-null.js:32: strict mode: Test262Error: Expected a DummyError but got a TypeError +test262/test/language/expressions/assignment/target-member-computed-reference-undefined.js:32: Test262Error: Expected a DummyError but got a TypeError +test262/test/language/expressions/assignment/target-member-computed-reference-undefined.js:32: strict mode: Test262Error: Expected a DummyError but got a TypeError test262/test/language/expressions/dynamic-import/usage-from-eval.js:26: TypeError: $DONE() not called test262/test/language/expressions/dynamic-import/usage-from-eval.js:26: strict mode: TypeError: $DONE() not called test262/test/language/expressions/optional-chaining/optional-call-preserves-this.js:21: TypeError: cannot read property 'c' of undefined test262/test/language/expressions/optional-chaining/optional-call-preserves-this.js:15: strict mode: TypeError: cannot read property '_b' of undefined +test262/test/language/global-code/script-decl-lex-var-declared-via-eval-sloppy.js:13: Test262Error: variable Expected a SyntaxError to be thrown but no exception was thrown at all +test262/test/language/module-code/namespace/internals/define-own-property.js:30: Test262Error: Object.freeze: 1 Expected a TypeError to be thrown but no exception was thrown at all +test262/test/language/statements/async-generator/yield-star-promise-not-unwrapped.js:25: TypeError: $DONE() not called +test262/test/language/statements/async-generator/yield-star-promise-not-unwrapped.js:25: strict mode: TypeError: $DONE() not called +test262/test/language/statements/async-generator/yield-star-return-then-getter-ticks.js:131: TypeError: $DONE() not called +test262/test/language/statements/async-generator/yield-star-return-then-getter-ticks.js:131: strict mode: TypeError: $DONE() not called +test262/test/language/statements/class/elements/private-method-double-initialisation-get-and-set.js:33: Test262Error: Expected a TypeError to be thrown but no exception was thrown at all +test262/test/language/statements/class/elements/private-method-double-initialisation-get-and-set.js:33: strict mode: Test262Error: Expected a TypeError to be thrown but no exception was thrown at all +test262/test/language/statements/class/elements/private-method-double-initialisation-get.js:32: Test262Error: Expected a TypeError to be thrown but no exception was thrown at all +test262/test/language/statements/class/elements/private-method-double-initialisation-get.js:32: strict mode: Test262Error: Expected a TypeError to be thrown but no exception was thrown at all +test262/test/language/statements/class/elements/private-method-double-initialisation-set.js:32: Test262Error: Expected a TypeError to be thrown but no exception was thrown at all +test262/test/language/statements/class/elements/private-method-double-initialisation-set.js:32: strict mode: Test262Error: Expected a TypeError to be thrown but no exception was thrown at all +test262/test/language/statements/class/elements/private-method-double-initialisation.js:32: Test262Error: Expected a TypeError to be thrown but no exception was thrown at all +test262/test/language/statements/class/elements/private-method-double-initialisation.js:32: strict mode: Test262Error: Expected a TypeError to be thrown but no exception was thrown at all test262/test/language/statements/for-of/head-lhs-async-invalid.js:14: unexpected error type: Test262: This statement should not be evaluated. test262/test/language/statements/for-of/head-lhs-async-invalid.js:14: strict mode: unexpected error type: Test262: This statement should not be evaluated. diff --git a/crates/quickjs-wasm-sys/quickjs/test_fib.c b/crates/quickjs-wasm-sys/quickjs/test_fib.c new file mode 100644 index 00000000..d6ae9dd9 --- /dev/null +++ b/crates/quickjs-wasm-sys/quickjs/test_fib.c @@ -0,0 +1,68 @@ +/* File generated automatically by the QuickJS compiler. */ + +#include "quickjs-libc.h" + +const uint32_t qjsc_test_fib_size = 157; + +const uint8_t qjsc_test_fib[157] = { + 0x02, 0x07, 0x28, 0x65, 0x78, 0x61, 0x6d, 0x70, + 0x6c, 0x65, 0x73, 0x2f, 0x74, 0x65, 0x73, 0x74, + 0x5f, 0x66, 0x69, 0x62, 0x2e, 0x6a, 0x73, 0x10, + 0x2e, 0x2f, 0x66, 0x69, 0x62, 0x2e, 0x73, 0x6f, + 0x06, 0x66, 0x69, 0x62, 0x0e, 0x63, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x06, 0x6c, 0x6f, 0x67, + 0x16, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, + 0x6f, 0x72, 0x6c, 0x64, 0x10, 0x66, 0x69, 0x62, + 0x28, 0x31, 0x30, 0x29, 0x3d, 0x0f, 0xc2, 0x03, + 0x01, 0xc4, 0x03, 0x00, 0x00, 0x01, 0x00, 0xc6, + 0x03, 0x00, 0x0e, 0x00, 0x06, 0x01, 0xa0, 0x01, + 0x00, 0x00, 0x00, 0x05, 0x01, 0x00, 0x30, 0x00, + 0xc6, 0x03, 0x00, 0x0c, 0x08, 0xea, 0x02, 0x29, + 0x38, 0xe4, 0x00, 0x00, 0x00, 0x42, 0xe5, 0x00, + 0x00, 0x00, 0x04, 0xe6, 0x00, 0x00, 0x00, 0x24, + 0x01, 0x00, 0x0e, 0x38, 0xe4, 0x00, 0x00, 0x00, + 0x42, 0xe5, 0x00, 0x00, 0x00, 0x04, 0xe7, 0x00, + 0x00, 0x00, 0x65, 0x00, 0x00, 0xbd, 0x0a, 0xef, + 0x24, 0x02, 0x00, 0x29, 0xc2, 0x03, 0x01, 0x05, + 0x01, 0x00, 0x04, 0x0a, 0x62, +}; + +static JSContext *JS_NewCustomContext(JSRuntime *rt) +{ + JSContext *ctx = JS_NewContextRaw(rt); + if (!ctx) + return NULL; + JS_AddIntrinsicBaseObjects(ctx); + JS_AddIntrinsicDate(ctx); + JS_AddIntrinsicEval(ctx); + JS_AddIntrinsicStringNormalize(ctx); + JS_AddIntrinsicRegExp(ctx); + JS_AddIntrinsicJSON(ctx); + JS_AddIntrinsicProxy(ctx); + JS_AddIntrinsicMapSet(ctx); + JS_AddIntrinsicTypedArrays(ctx); + JS_AddIntrinsicPromise(ctx); + JS_AddIntrinsicBigInt(ctx); + { + extern JSModuleDef *js_init_module_fib(JSContext *ctx, const char *name); + js_init_module_fib(ctx, "examples/fib.so"); + } + return ctx; +} + +int main(int argc, char **argv) +{ + JSRuntime *rt; + JSContext *ctx; + rt = JS_NewRuntime(); + js_std_set_worker_new_context_func(JS_NewCustomContext); + js_std_init_handlers(rt); + JS_SetModuleLoaderFunc(rt, NULL, js_module_loader, NULL); + ctx = JS_NewCustomContext(rt); + js_std_add_helpers(ctx, argc, argv); + js_std_eval_binary(ctx, qjsc_test_fib, qjsc_test_fib_size, 0); + js_std_loop(ctx); + JS_FreeContext(ctx); + JS_FreeRuntime(rt); + return 0; +} diff --git a/crates/quickjs-wasm-sys/quickjs/unicode_download.sh b/crates/quickjs-wasm-sys/quickjs/unicode_download.sh index 87bb2956..35daf0ef 100755 --- a/crates/quickjs-wasm-sys/quickjs/unicode_download.sh +++ b/crates/quickjs-wasm-sys/quickjs/unicode_download.sh @@ -1,7 +1,7 @@ #!/bin/sh set -e -url="ftp://ftp.unicode.org/Public/13.0.0/ucd" +url="ftp://ftp.unicode.org/Public/15.0.0/ucd" emoji_url="${url}/emoji/emoji-data.txt" files="CaseFolding.txt DerivedNormalizationProps.txt PropList.txt \ @@ -11,9 +11,9 @@ PropertyValueAliases.txt" mkdir -p unicode -#for f in $files; do -# g="${url}/${f}" -# wget $g -O unicode/$f -#done +for f in $files; do + g="${url}/${f}" + wget $g -O unicode/$f +done wget $emoji_url -O unicode/emoji-data.txt diff --git a/crates/quickjs-wasm-sys/quickjs/unicode_gen_def.h b/crates/quickjs-wasm-sys/quickjs/unicode_gen_def.h index 47b0e391..e7c2464e 100644 --- a/crates/quickjs-wasm-sys/quickjs/unicode_gen_def.h +++ b/crates/quickjs-wasm-sys/quickjs/unicode_gen_def.h @@ -72,6 +72,7 @@ DEF(Coptic, "Copt,Qaac") DEF(Cuneiform, "Xsux") DEF(Cypriot, "Cprt") DEF(Cyrillic, "Cyrl") +DEF(Cypro_Minoan, "Cpmn") DEF(Deseret, "Dsrt") DEF(Devanagari, "Deva") DEF(Dives_Akuru, "Diak") @@ -104,6 +105,7 @@ DEF(Javanese, "Java") DEF(Kaithi, "Kthi") DEF(Kannada, "Knda") DEF(Katakana, "Kana") +DEF(Kawi, "Kawi") DEF(Kayah_Li, "Kali") DEF(Kharoshthi, "Khar") DEF(Khmer, "Khmr") @@ -138,6 +140,7 @@ DEF(Mro, "Mroo") DEF(Multani, "Mult") DEF(Myanmar, "Mymr") DEF(Nabataean, "Nbat") +DEF(Nag_Mundari, "Nagm") DEF(Nandinagari, "Nand") DEF(New_Tai_Lue, "Talu") DEF(Newa, "Newa") @@ -154,6 +157,7 @@ DEF(Old_Persian, "Xpeo") DEF(Old_Sogdian, "Sogo") DEF(Old_South_Arabian, "Sarb") DEF(Old_Turkic, "Orkh") +DEF(Old_Uyghur, "Ougr") DEF(Oriya, "Orya") DEF(Osage, "Osge") DEF(Osmanya, "Osma") @@ -192,8 +196,11 @@ DEF(Thai, "Thai") DEF(Tibetan, "Tibt") DEF(Tifinagh, "Tfng") DEF(Tirhuta, "Tirh") +DEF(Tangsa, "Tnsa") +DEF(Toto, "Toto") DEF(Ugaritic, "Ugar") DEF(Vai, "Vaii") +DEF(Vithkuqi, "Vith") DEF(Wancho, "Wcho") DEF(Warang_Citi, "Wara") DEF(Yezidi, "Yezi") diff --git a/docs/extending.md b/docs/extending.md index 952d7c73..15f9ea18 100644 --- a/docs/extending.md +++ b/docs/extending.md @@ -1,6 +1,6 @@ # Extending Javy -If you want to use Javy for your own project, you may find that the existing code is not sufficient since you may want to offer custom APIs or use different branding for the CLI. The approach we'd recommend taking is to fork and create your own version of the `javy-cli` and `javy-core` crates and depend on the upstream version of the `javy` and `javy-apis` crates. You can add your own implementations of custom JS APIs in your fork of the `javy-core` crate or in a different crate that you depend on in your `javy-core` fork. If you find that something is missing in the `javy` crate that you require to implement something in your fork, we would appreciate it if you would open a GitHub issue and consider making the change upstream instead of in your fork so all users of the `javy` crate can benefit. +If you want to use Javy for your own project, you may find that the existing code is not sufficient since you may want to offer custom APIs or use different branding for the CLI. The approach we'd recommend taking is to create your own version of the `javy-cli` and `javy-core` crates (you could fork these if you would like) and depend on the upstream version of the `javy` and `javy-apis` crates. You can add your own implementations of custom JS APIs in your fork of the `javy-core` crate or in a different crate that you depend on in your `javy-core` fork. If you find that something is missing in the `javy` crate that you require to implement something in your fork, we would appreciate it if you would open a GitHub issue and consider making the change upstream instead of in your fork so all users of the `javy` crate can benefit. See our documentation on [using complex data types in Wasm functions](complex-data-types-in-wasm-functions.md) for how to support Wasm functions that need to use byte arrays, strings, or structured data. @@ -8,12 +8,57 @@ For a visual representation of how we expect forks to consume our crates: ```mermaid flowchart TD - forked-cli --> wasm - subgraph wasm[forked.wasm] - forked-core --> javy[upstream javy] - forked-core --> javy-apis[upstream javy-apis] + your-cli --> wasm + subgraph wasm[your_core.wasm] + your-core --> javy[upstream javy] + your-core --> javy-apis[upstream javy-apis] javy-apis --> javy javy --> quickjs-wasm-rs quickjs-wasm-rs --> quickjs-wasm-sys end ``` + +## An example of changes you could make + +Let's say you create a crate called `my-new-apis` with the following code in its `lib.rs` to define your new JS APIs: + +```rust +use anyhow::Result; +use javy::Runtime; + +pub fn register(runtime: &Runtime) -> Result<()> { + let ctx = runtime.context(); + + let global_object = ctx.global_object()?; + + // Registers a `SomeApi.foo` function. + let some_api_object = ctx.object_value()?; + some_api_object.set_property("foo", ctx.wrap_callback(|_ctx, _this, _args| todo!())?)?; + global_object.set_property("SomeApi", some_api_object)?; + + // Registers a `SomeOtherApi.bar` function. + let some_other_api_object = ctx.object_value()?; + some_other_api_object.set_property("bar", ctx.wrap_callback(|_ctx, _this, _args| todo!())?)?; + global_object.set_property("SomeOtherApi", some_other_api_object)?; + + Ok(()) +} + +``` + +We'd suggest registering your additional API code next to where you register the Javy APIs. For example, in Javy's core crate, it's in `crates/core/runtimes.rs`: + +```diff + pub(crate) fn new_runtime() -> Result { + let mut api_config = APIConfig::default(); + api_config.log_stream(LogStream::StdErr); +- Runtime::new_with_apis(Config::default(), api_config) ++ // Creates the Javy runtime and registers the Javy APIs. ++ let runtime = Runtime::new_with_apis(Config::default(), api_config)?; ++ // Registers your custom APIs. ++ my_new_apis::register(&runtime)?; ++ Ok(runtime) + } +``` + +You are free to call `Runtime::new_with_apis` or another function to create your Javy `Runtime` and define and register your additional APIs wherever you would like in your own crate. This is just an example of one way you could do it. diff --git a/npm/javy/package-lock.json b/npm/javy/package-lock.json index 0142dff2..aa66fa80 100644 --- a/npm/javy/package-lock.json +++ b/npm/javy/package-lock.json @@ -19,9 +19,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -383,50 +383,37 @@ } }, "node_modules/@microsoft/api-extractor": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.38.0.tgz", - "integrity": "sha512-e1LhZYnfw+JEebuY2bzhw0imDCl1nwjSThTrQqBXl40hrVo6xm3j/1EpUr89QyzgjqmAwek2ZkIVZbrhaR+cqg==", + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.39.0.tgz", + "integrity": "sha512-PuXxzadgnvp+wdeZFPonssRAj/EW4Gm4s75TXzPk09h3wJ8RS3x7typf95B4vwZRrPTQBGopdUl+/vHvlPdAcg==", "dev": true, "dependencies": { - "@microsoft/api-extractor-model": "7.28.2", + "@microsoft/api-extractor-model": "7.28.3", "@microsoft/tsdoc": "0.14.2", "@microsoft/tsdoc-config": "~0.16.1", - "@rushstack/node-core-library": "3.61.0", + "@rushstack/node-core-library": "3.62.0", "@rushstack/rig-package": "0.5.1", - "@rushstack/ts-command-line": "4.16.1", + "@rushstack/ts-command-line": "4.17.1", "colors": "~1.2.1", "lodash": "~4.17.15", "resolve": "~1.22.1", "semver": "~7.5.4", "source-map": "~0.6.1", - "typescript": "~5.0.4" + "typescript": "5.3.3" }, "bin": { "api-extractor": "bin/api-extractor" } }, "node_modules/@microsoft/api-extractor-model": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.28.2.tgz", - "integrity": "sha512-vkojrM2fo3q4n4oPh4uUZdjJ2DxQ2+RnDQL/xhTWSRUNPF6P4QyrvY357HBxbnltKcYu+nNNolVqc6TIGQ73Ig==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.28.3.tgz", + "integrity": "sha512-wT/kB2oDbdZXITyDh2SQLzaWwTOFbV326fP0pUwNW00WeliARs0qjmXBWmGWardEzp2U3/axkO3Lboqun6vrig==", "dev": true, "dependencies": { "@microsoft/tsdoc": "0.14.2", "@microsoft/tsdoc-config": "~0.16.1", - "@rushstack/node-core-library": "3.61.0" - } - }, - "node_modules/@microsoft/api-extractor/node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=12.20" + "@rushstack/node-core-library": "3.62.0" } }, "node_modules/@microsoft/tsdoc": { @@ -486,9 +473,9 @@ } }, "node_modules/@rollup/pluginutils": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.5.tgz", - "integrity": "sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", + "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", "dev": true, "dependencies": { "@types/estree": "^1.0.0", @@ -508,9 +495,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.6.1.tgz", - "integrity": "sha512-0WQ0ouLejaUCRsL93GD4uft3rOmB8qoQMU05Kb8CmMtMBe7XUDLAltxVZI1q6byNqEtU7N1ZX1Vw5lIpgulLQA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz", + "integrity": "sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==", "cpu": [ "arm" ], @@ -521,9 +508,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.6.1.tgz", - "integrity": "sha512-1TKm25Rn20vr5aTGGZqo6E4mzPicCUD79k17EgTLAsXc1zysyi4xXKACfUbwyANEPAEIxkzwue6JZ+stYzWUTA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.6.tgz", + "integrity": "sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==", "cpu": [ "arm64" ], @@ -534,9 +521,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.6.1.tgz", - "integrity": "sha512-cEXJQY/ZqMACb+nxzDeX9IPLAg7S94xouJJCNVE5BJM8JUEP4HeTF+ti3cmxWeSJo+5D+o8Tc0UAWUkfENdeyw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.6.tgz", + "integrity": "sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==", "cpu": [ "arm64" ], @@ -547,9 +534,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.6.1.tgz", - "integrity": "sha512-LoSU9Xu56isrkV2jLldcKspJ7sSXmZWkAxg7sW/RfF7GS4F5/v4EiqKSMCFbZtDu2Nc1gxxFdQdKwkKS4rwxNg==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.6.tgz", + "integrity": "sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==", "cpu": [ "x64" ], @@ -560,9 +547,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.6.1.tgz", - "integrity": "sha512-EfI3hzYAy5vFNDqpXsNxXcgRDcFHUWSx5nnRSCKwXuQlI5J9dD84g2Usw81n3FLBNsGCegKGwwTVsSKK9cooSQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.6.tgz", + "integrity": "sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==", "cpu": [ "arm" ], @@ -573,9 +560,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.6.1.tgz", - "integrity": "sha512-9lhc4UZstsegbNLhH0Zu6TqvDfmhGzuCWtcTFXY10VjLLUe4Mr0Ye2L3rrtHaDd/J5+tFMEuo5LTCSCMXWfUKw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.6.tgz", + "integrity": "sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==", "cpu": [ "arm64" ], @@ -586,9 +573,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.6.1.tgz", - "integrity": "sha512-FfoOK1yP5ksX3wwZ4Zk1NgyGHZyuRhf99j64I5oEmirV8EFT7+OhUZEnP+x17lcP/QHJNWGsoJwrz4PJ9fBEXw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.6.tgz", + "integrity": "sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==", "cpu": [ "arm64" ], @@ -598,10 +585,23 @@ "linux" ] }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.6.tgz", + "integrity": "sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.6.1.tgz", - "integrity": "sha512-DNGZvZDO5YF7jN5fX8ZqmGLjZEXIJRdJEdTFMhiyXqyXubBa0WVLDWSNlQ5JR2PNgDbEV1VQowhVRUh+74D+RA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.6.tgz", + "integrity": "sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==", "cpu": [ "x64" ], @@ -612,9 +612,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.6.1.tgz", - "integrity": "sha512-RkJVNVRM+piYy87HrKmhbexCHg3A6Z6MU0W9GHnJwBQNBeyhCJG9KDce4SAMdicQnpURggSvtbGo9xAWOfSvIQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.6.tgz", + "integrity": "sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==", "cpu": [ "x64" ], @@ -625,9 +625,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.6.1.tgz", - "integrity": "sha512-v2FVT6xfnnmTe3W9bJXl6r5KwJglMK/iRlkKiIFfO6ysKs0rDgz7Cwwf3tjldxQUrHL9INT/1r4VA0n9L/F1vQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.6.tgz", + "integrity": "sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==", "cpu": [ "arm64" ], @@ -638,9 +638,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.6.1.tgz", - "integrity": "sha512-YEeOjxRyEjqcWphH9dyLbzgkF8wZSKAKUkldRY6dgNR5oKs2LZazqGB41cWJ4Iqqcy9/zqYgmzBkRoVz3Q9MLw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.6.tgz", + "integrity": "sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==", "cpu": [ "ia32" ], @@ -651,9 +651,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.6.1.tgz", - "integrity": "sha512-0zfTlFAIhgz8V2G8STq8toAjsYYA6eci1hnXuyOTUFnymrtJwnS6uGKiv3v5UrPZkBlamLvrLV2iiaeqCKzb0A==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.6.tgz", + "integrity": "sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==", "cpu": [ "x64" ], @@ -664,9 +664,9 @@ ] }, "node_modules/@rushstack/node-core-library": { - "version": "3.61.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.61.0.tgz", - "integrity": "sha512-tdOjdErme+/YOu4gPed3sFS72GhtWCgNV9oDsHDnoLY5oDfwjKUc9Z+JOZZ37uAxcm/OCahDHfuu2ugqrfWAVQ==", + "version": "3.62.0", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.62.0.tgz", + "integrity": "sha512-88aJn2h8UpSvdwuDXBv1/v1heM6GnBf3RjEy6ZPP7UnzHNCqOHA2Ut+ScYUbXcqIdfew9JlTAe3g+cnX9xQ/Aw==", "dev": true, "dependencies": { "colors": "~1.2.1", @@ -697,9 +697,9 @@ } }, "node_modules/@rushstack/ts-command-line": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.16.1.tgz", - "integrity": "sha512-+OCsD553GYVLEmz12yiFjMOzuPeCiZ3f8wTiFHL30ZVXexTyPmgjwXEhg2K2P0a2lVf+8YBy7WtPoflB2Fp8/A==", + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.17.1.tgz", + "integrity": "sha512-2jweO1O57BYP5qdBGl6apJLB+aRIn5ccIRTPDyULh0KMwVzFqWtw6IZWt1qtUoZD/pD2RNkIOosH6Cq45rIYeg==", "dev": true, "dependencies": { "@types/argparse": "1.0.38", @@ -759,9 +759,9 @@ "dev": true }, "node_modules/@types/estree": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.3.tgz", - "integrity": "sha512-CS2rOaoQ/eAgAfcTfq6amKG7bsN+EMcgGY4FAFQdvSj2y1ixvOZTUA9mOtCai7E1SYu283XNw7urKK30nP3wkQ==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", "dev": true }, "node_modules/@types/node": { @@ -779,67 +779,70 @@ "dev": true }, "node_modules/@volar/language-core": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.5.tgz", - "integrity": "sha512-xD71j4Ee0Ycq8WsiAE6H/aCThGdTobiZZeD+jFD+bvmbopa1Az296pqJysr3Ck8c7n5+GGF+xlKCS3WxRFYgSQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", "dev": true, "dependencies": { - "@volar/source-map": "1.10.5" + "@volar/source-map": "1.11.1" } }, "node_modules/@volar/source-map": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.5.tgz", - "integrity": "sha512-s4kgo66SA1kMzYvF9HFE6Vc1rxtXLUmcLrT2WKnchPDvLne+97Kw+xoR2NxJFmsvHoL18vmu/YGXYcN+Q5re1g==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", "dev": true, "dependencies": { "muggle-string": "^0.3.1" } }, "node_modules/@volar/typescript": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.10.5.tgz", - "integrity": "sha512-kfDehpeLJku9i1BgsFOYIczPmFFH4herl+GZrLGdvX5urTqeCKsKYlF36iNmFaADzjMb9WlENcUZzPjK8MxNrQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", "dev": true, "dependencies": { - "@volar/language-core": "1.10.5" + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" } }, "node_modules/@vue/compiler-core": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.7.tgz", - "integrity": "sha512-pACdY6YnTNVLXsB86YD8OF9ihwpolzhhtdLVHhBL6do/ykr6kKXNYABRtNMGrsQXpEXXyAdwvWWkuTbs4MFtPQ==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz", + "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.0", - "@vue/shared": "3.3.7", + "@babel/parser": "^7.23.6", + "@vue/shared": "3.4.5", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.7.tgz", - "integrity": "sha512-0LwkyJjnUPssXv/d1vNJ0PKfBlDoQs7n81CbO6Q0zdL7H1EzqYRrTVXDqdBVqro0aJjo/FOa1qBAPVI4PGSHBw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz", + "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.7", - "@vue/shared": "3.3.7" + "@vue/compiler-core": "3.4.5", + "@vue/shared": "3.4.5" } }, "node_modules/@vue/language-core": { - "version": "1.8.22", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.22.tgz", - "integrity": "sha512-bsMoJzCrXZqGsxawtUea1cLjUT9dZnDsy5TuZ+l1fxRMzUGQUG9+Ypq4w//CqpWmrx7nIAJpw2JVF/t258miRw==", + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", "dev": true, "dependencies": { - "@volar/language-core": "~1.10.5", - "@volar/source-map": "~1.10.5", + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", "@vue/compiler-dom": "^3.3.0", "@vue/shared": "^3.3.0", "computeds": "^0.0.1", "minimatch": "^9.0.3", "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", "vue-template-compiler": "^2.7.14" }, "peerDependencies": { @@ -852,9 +855,9 @@ } }, "node_modules/@vue/shared": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.7.tgz", - "integrity": "sha512-N/tbkINRUDExgcPTBvxNkvHGu504k8lzlNQRITVnm6YjOjwa4r0nnbd4Jb01sNpur5hAllyRJzSK5PvB9PPwRg==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", + "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==", "dev": true }, "node_modules/ajv": { @@ -984,6 +987,18 @@ "node": ">=0.10.0" } }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/esbuild": { "version": "0.19.8", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.8.tgz", @@ -1329,6 +1344,12 @@ "url": "https://opencollective.com/node-fetch" } }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", @@ -1382,9 +1403,9 @@ } }, "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "engines": { "node": ">=6" @@ -1408,10 +1429,13 @@ } }, "node_modules/rollup": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.6.1.tgz", - "integrity": "sha512-jZHaZotEHQaHLgKr8JnQiDT1rmatjgKlMekyksz+yk9jt/8z9quNjnKNRoaM0wd9DC2QKXjmWWuDYtM3jfF8pQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.6.tgz", + "integrity": "sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==", "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, "bin": { "rollup": "dist/bin/rollup" }, @@ -1420,18 +1444,19 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.6.1", - "@rollup/rollup-android-arm64": "4.6.1", - "@rollup/rollup-darwin-arm64": "4.6.1", - "@rollup/rollup-darwin-x64": "4.6.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.6.1", - "@rollup/rollup-linux-arm64-gnu": "4.6.1", - "@rollup/rollup-linux-arm64-musl": "4.6.1", - "@rollup/rollup-linux-x64-gnu": "4.6.1", - "@rollup/rollup-linux-x64-musl": "4.6.1", - "@rollup/rollup-win32-arm64-msvc": "4.6.1", - "@rollup/rollup-win32-ia32-msvc": "4.6.1", - "@rollup/rollup-win32-x64-msvc": "4.6.1", + "@rollup/rollup-android-arm-eabi": "4.9.6", + "@rollup/rollup-android-arm64": "4.9.6", + "@rollup/rollup-darwin-arm64": "4.9.6", + "@rollup/rollup-darwin-x64": "4.9.6", + "@rollup/rollup-linux-arm-gnueabihf": "4.9.6", + "@rollup/rollup-linux-arm64-gnu": "4.9.6", + "@rollup/rollup-linux-arm64-musl": "4.9.6", + "@rollup/rollup-linux-riscv64-gnu": "4.9.6", + "@rollup/rollup-linux-x64-gnu": "4.9.6", + "@rollup/rollup-linux-x64-musl": "4.9.6", + "@rollup/rollup-win32-arm64-msvc": "4.9.6", + "@rollup/rollup-win32-ia32-msvc": "4.9.6", + "@rollup/rollup-win32-x64-msvc": "4.9.6", "fsevents": "~2.3.2" } }, @@ -1534,9 +1559,9 @@ } }, "node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -1574,9 +1599,9 @@ } }, "node_modules/vite": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.5.tgz", - "integrity": "sha512-OekeWqR9Ls56f3zd4CaxzbbS11gqYkEiBtnWFFgYR2WV8oPJRRKq0mpskYy/XaoCL3L7VINDhqqOMNDiYdGvGg==", + "version": "5.0.12", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.12.tgz", + "integrity": "sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==", "dev": true, "dependencies": { "esbuild": "^0.19.3", @@ -1629,17 +1654,17 @@ } }, "node_modules/vite-plugin-dts": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-3.6.4.tgz", - "integrity": "sha512-yOVhUI/kQhtS6lCXRYYLv2UUf9bftcwQK9ROxCX2ul17poLQs02ctWX7+vXB8GPRzH8VCK3jebEFtPqqijXx6w==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-3.7.2.tgz", + "integrity": "sha512-kg//1nDA01b8rufJf4TsvYN8LMkdwv0oBYpiQi6nRwpHyue+wTlhrBiqgipdFpMnW1oOYv6ywmzE5B0vg6vSEA==", "dev": true, "dependencies": { - "@microsoft/api-extractor": "^7.38.0", - "@rollup/pluginutils": "^5.0.5", - "@vue/language-core": "^1.8.20", + "@microsoft/api-extractor": "7.39.0", + "@rollup/pluginutils": "^5.1.0", + "@vue/language-core": "^1.8.26", "debug": "^4.3.4", "kolorist": "^1.8.0", - "vue-tsc": "^1.8.20" + "vue-tsc": "^1.8.26" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -1655,9 +1680,9 @@ } }, "node_modules/vue-template-compiler": { - "version": "2.7.15", - "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.15.tgz", - "integrity": "sha512-yQxjxMptBL7UAog00O8sANud99C6wJF+7kgbcwqkvA38vCGF7HWE66w0ZFnS/kX5gSoJr/PQ4/oS3Ne2pW37Og==", + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", "dev": true, "dependencies": { "de-indent": "^1.0.2", @@ -1665,13 +1690,13 @@ } }, "node_modules/vue-tsc": { - "version": "1.8.22", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.22.tgz", - "integrity": "sha512-j9P4kHtW6eEE08aS5McFZE/ivmipXy0JzrnTgbomfABMaVKx37kNBw//irL3+LlE3kOo63XpnRigyPC3w7+z+A==", + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", "dev": true, "dependencies": { - "@volar/typescript": "~1.10.5", - "@vue/language-core": "1.8.22", + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", "semver": "^7.5.4" }, "bin": { @@ -1719,9 +1744,9 @@ }, "dependencies": { "@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", "dev": true }, "@esbuild/android-arm": { @@ -1879,42 +1904,34 @@ "optional": true }, "@microsoft/api-extractor": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.38.0.tgz", - "integrity": "sha512-e1LhZYnfw+JEebuY2bzhw0imDCl1nwjSThTrQqBXl40hrVo6xm3j/1EpUr89QyzgjqmAwek2ZkIVZbrhaR+cqg==", + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.39.0.tgz", + "integrity": "sha512-PuXxzadgnvp+wdeZFPonssRAj/EW4Gm4s75TXzPk09h3wJ8RS3x7typf95B4vwZRrPTQBGopdUl+/vHvlPdAcg==", "dev": true, "requires": { - "@microsoft/api-extractor-model": "7.28.2", + "@microsoft/api-extractor-model": "7.28.3", "@microsoft/tsdoc": "0.14.2", "@microsoft/tsdoc-config": "~0.16.1", - "@rushstack/node-core-library": "3.61.0", + "@rushstack/node-core-library": "3.62.0", "@rushstack/rig-package": "0.5.1", - "@rushstack/ts-command-line": "4.16.1", + "@rushstack/ts-command-line": "4.17.1", "colors": "~1.2.1", "lodash": "~4.17.15", "resolve": "~1.22.1", "semver": "~7.5.4", "source-map": "~0.6.1", - "typescript": "~5.0.4" - }, - "dependencies": { - "typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", - "dev": true - } + "typescript": "5.3.3" } }, "@microsoft/api-extractor-model": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.28.2.tgz", - "integrity": "sha512-vkojrM2fo3q4n4oPh4uUZdjJ2DxQ2+RnDQL/xhTWSRUNPF6P4QyrvY357HBxbnltKcYu+nNNolVqc6TIGQ73Ig==", + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.28.3.tgz", + "integrity": "sha512-wT/kB2oDbdZXITyDh2SQLzaWwTOFbV326fP0pUwNW00WeliARs0qjmXBWmGWardEzp2U3/axkO3Lboqun6vrig==", "dev": true, "requires": { "@microsoft/tsdoc": "0.14.2", "@microsoft/tsdoc-config": "~0.16.1", - "@rushstack/node-core-library": "3.61.0" + "@rushstack/node-core-library": "3.62.0" } }, "@microsoft/tsdoc": { @@ -1962,9 +1979,9 @@ } }, "@rollup/pluginutils": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.5.tgz", - "integrity": "sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", + "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", "dev": true, "requires": { "@types/estree": "^1.0.0", @@ -1973,93 +1990,100 @@ } }, "@rollup/rollup-android-arm-eabi": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.6.1.tgz", - "integrity": "sha512-0WQ0ouLejaUCRsL93GD4uft3rOmB8qoQMU05Kb8CmMtMBe7XUDLAltxVZI1q6byNqEtU7N1ZX1Vw5lIpgulLQA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz", + "integrity": "sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==", "dev": true, "optional": true }, "@rollup/rollup-android-arm64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.6.1.tgz", - "integrity": "sha512-1TKm25Rn20vr5aTGGZqo6E4mzPicCUD79k17EgTLAsXc1zysyi4xXKACfUbwyANEPAEIxkzwue6JZ+stYzWUTA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.6.tgz", + "integrity": "sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==", "dev": true, "optional": true }, "@rollup/rollup-darwin-arm64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.6.1.tgz", - "integrity": "sha512-cEXJQY/ZqMACb+nxzDeX9IPLAg7S94xouJJCNVE5BJM8JUEP4HeTF+ti3cmxWeSJo+5D+o8Tc0UAWUkfENdeyw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.6.tgz", + "integrity": "sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==", "dev": true, "optional": true }, "@rollup/rollup-darwin-x64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.6.1.tgz", - "integrity": "sha512-LoSU9Xu56isrkV2jLldcKspJ7sSXmZWkAxg7sW/RfF7GS4F5/v4EiqKSMCFbZtDu2Nc1gxxFdQdKwkKS4rwxNg==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.6.tgz", + "integrity": "sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.6.1.tgz", - "integrity": "sha512-EfI3hzYAy5vFNDqpXsNxXcgRDcFHUWSx5nnRSCKwXuQlI5J9dD84g2Usw81n3FLBNsGCegKGwwTVsSKK9cooSQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.6.tgz", + "integrity": "sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-gnu": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.6.1.tgz", - "integrity": "sha512-9lhc4UZstsegbNLhH0Zu6TqvDfmhGzuCWtcTFXY10VjLLUe4Mr0Ye2L3rrtHaDd/J5+tFMEuo5LTCSCMXWfUKw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.6.tgz", + "integrity": "sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-musl": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.6.1.tgz", - "integrity": "sha512-FfoOK1yP5ksX3wwZ4Zk1NgyGHZyuRhf99j64I5oEmirV8EFT7+OhUZEnP+x17lcP/QHJNWGsoJwrz4PJ9fBEXw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.6.tgz", + "integrity": "sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-riscv64-gnu": { + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.6.tgz", + "integrity": "sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-gnu": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.6.1.tgz", - "integrity": "sha512-DNGZvZDO5YF7jN5fX8ZqmGLjZEXIJRdJEdTFMhiyXqyXubBa0WVLDWSNlQ5JR2PNgDbEV1VQowhVRUh+74D+RA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.6.tgz", + "integrity": "sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-musl": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.6.1.tgz", - "integrity": "sha512-RkJVNVRM+piYy87HrKmhbexCHg3A6Z6MU0W9GHnJwBQNBeyhCJG9KDce4SAMdicQnpURggSvtbGo9xAWOfSvIQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.6.tgz", + "integrity": "sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==", "dev": true, "optional": true }, "@rollup/rollup-win32-arm64-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.6.1.tgz", - "integrity": "sha512-v2FVT6xfnnmTe3W9bJXl6r5KwJglMK/iRlkKiIFfO6ysKs0rDgz7Cwwf3tjldxQUrHL9INT/1r4VA0n9L/F1vQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.6.tgz", + "integrity": "sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==", "dev": true, "optional": true }, "@rollup/rollup-win32-ia32-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.6.1.tgz", - "integrity": "sha512-YEeOjxRyEjqcWphH9dyLbzgkF8wZSKAKUkldRY6dgNR5oKs2LZazqGB41cWJ4Iqqcy9/zqYgmzBkRoVz3Q9MLw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.6.tgz", + "integrity": "sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==", "dev": true, "optional": true }, "@rollup/rollup-win32-x64-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.6.1.tgz", - "integrity": "sha512-0zfTlFAIhgz8V2G8STq8toAjsYYA6eci1hnXuyOTUFnymrtJwnS6uGKiv3v5UrPZkBlamLvrLV2iiaeqCKzb0A==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.6.tgz", + "integrity": "sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==", "dev": true, "optional": true }, "@rushstack/node-core-library": { - "version": "3.61.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.61.0.tgz", - "integrity": "sha512-tdOjdErme+/YOu4gPed3sFS72GhtWCgNV9oDsHDnoLY5oDfwjKUc9Z+JOZZ37uAxcm/OCahDHfuu2ugqrfWAVQ==", + "version": "3.62.0", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-3.62.0.tgz", + "integrity": "sha512-88aJn2h8UpSvdwuDXBv1/v1heM6GnBf3RjEy6ZPP7UnzHNCqOHA2Ut+ScYUbXcqIdfew9JlTAe3g+cnX9xQ/Aw==", "dev": true, "requires": { "colors": "~1.2.1", @@ -2082,9 +2106,9 @@ } }, "@rushstack/ts-command-line": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.16.1.tgz", - "integrity": "sha512-+OCsD553GYVLEmz12yiFjMOzuPeCiZ3f8wTiFHL30ZVXexTyPmgjwXEhg2K2P0a2lVf+8YBy7WtPoflB2Fp8/A==", + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.17.1.tgz", + "integrity": "sha512-2jweO1O57BYP5qdBGl6apJLB+aRIn5ccIRTPDyULh0KMwVzFqWtw6IZWt1qtUoZD/pD2RNkIOosH6Cq45rIYeg==", "dev": true, "requires": { "@types/argparse": "1.0.38", @@ -2127,9 +2151,9 @@ "dev": true }, "@types/estree": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.3.tgz", - "integrity": "sha512-CS2rOaoQ/eAgAfcTfq6amKG7bsN+EMcgGY4FAFQdvSj2y1ixvOZTUA9mOtCai7E1SYu283XNw7urKK30nP3wkQ==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", "dev": true }, "@types/node": { @@ -2147,74 +2171,77 @@ "dev": true }, "@volar/language-core": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.5.tgz", - "integrity": "sha512-xD71j4Ee0Ycq8WsiAE6H/aCThGdTobiZZeD+jFD+bvmbopa1Az296pqJysr3Ck8c7n5+GGF+xlKCS3WxRFYgSQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", "dev": true, "requires": { - "@volar/source-map": "1.10.5" + "@volar/source-map": "1.11.1" } }, "@volar/source-map": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.5.tgz", - "integrity": "sha512-s4kgo66SA1kMzYvF9HFE6Vc1rxtXLUmcLrT2WKnchPDvLne+97Kw+xoR2NxJFmsvHoL18vmu/YGXYcN+Q5re1g==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", "dev": true, "requires": { "muggle-string": "^0.3.1" } }, "@volar/typescript": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.10.5.tgz", - "integrity": "sha512-kfDehpeLJku9i1BgsFOYIczPmFFH4herl+GZrLGdvX5urTqeCKsKYlF36iNmFaADzjMb9WlENcUZzPjK8MxNrQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", "dev": true, "requires": { - "@volar/language-core": "1.10.5" + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" } }, "@vue/compiler-core": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.7.tgz", - "integrity": "sha512-pACdY6YnTNVLXsB86YD8OF9ihwpolzhhtdLVHhBL6do/ykr6kKXNYABRtNMGrsQXpEXXyAdwvWWkuTbs4MFtPQ==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz", + "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==", "dev": true, "requires": { - "@babel/parser": "^7.23.0", - "@vue/shared": "3.3.7", + "@babel/parser": "^7.23.6", + "@vue/shared": "3.4.5", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "@vue/compiler-dom": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.7.tgz", - "integrity": "sha512-0LwkyJjnUPssXv/d1vNJ0PKfBlDoQs7n81CbO6Q0zdL7H1EzqYRrTVXDqdBVqro0aJjo/FOa1qBAPVI4PGSHBw==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz", + "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==", "dev": true, "requires": { - "@vue/compiler-core": "3.3.7", - "@vue/shared": "3.3.7" + "@vue/compiler-core": "3.4.5", + "@vue/shared": "3.4.5" } }, "@vue/language-core": { - "version": "1.8.22", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.22.tgz", - "integrity": "sha512-bsMoJzCrXZqGsxawtUea1cLjUT9dZnDsy5TuZ+l1fxRMzUGQUG9+Ypq4w//CqpWmrx7nIAJpw2JVF/t258miRw==", + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", "dev": true, "requires": { - "@volar/language-core": "~1.10.5", - "@volar/source-map": "~1.10.5", + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", "@vue/compiler-dom": "^3.3.0", "@vue/shared": "^3.3.0", "computeds": "^0.0.1", "minimatch": "^9.0.3", "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", "vue-template-compiler": "^2.7.14" } }, "@vue/shared": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.7.tgz", - "integrity": "sha512-N/tbkINRUDExgcPTBvxNkvHGu504k8lzlNQRITVnm6YjOjwa4r0nnbd4Jb01sNpur5hAllyRJzSK5PvB9PPwRg==", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz", + "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg==", "dev": true }, "ajv": { @@ -2311,6 +2338,12 @@ "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", "dev": true }, + "entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true + }, "esbuild": { "version": "0.19.8", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.8.tgz", @@ -2561,6 +2594,12 @@ "formdata-polyfill": "^4.0.10" } }, + "path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, "path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", @@ -2591,9 +2630,9 @@ } }, "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true }, "resolve": { @@ -2608,23 +2647,25 @@ } }, "rollup": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.6.1.tgz", - "integrity": "sha512-jZHaZotEHQaHLgKr8JnQiDT1rmatjgKlMekyksz+yk9jt/8z9quNjnKNRoaM0wd9DC2QKXjmWWuDYtM3jfF8pQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.6.tgz", + "integrity": "sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==", "dev": true, "requires": { - "@rollup/rollup-android-arm-eabi": "4.6.1", - "@rollup/rollup-android-arm64": "4.6.1", - "@rollup/rollup-darwin-arm64": "4.6.1", - "@rollup/rollup-darwin-x64": "4.6.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.6.1", - "@rollup/rollup-linux-arm64-gnu": "4.6.1", - "@rollup/rollup-linux-arm64-musl": "4.6.1", - "@rollup/rollup-linux-x64-gnu": "4.6.1", - "@rollup/rollup-linux-x64-musl": "4.6.1", - "@rollup/rollup-win32-arm64-msvc": "4.6.1", - "@rollup/rollup-win32-ia32-msvc": "4.6.1", - "@rollup/rollup-win32-x64-msvc": "4.6.1", + "@rollup/rollup-android-arm-eabi": "4.9.6", + "@rollup/rollup-android-arm64": "4.9.6", + "@rollup/rollup-darwin-arm64": "4.9.6", + "@rollup/rollup-darwin-x64": "4.9.6", + "@rollup/rollup-linux-arm-gnueabihf": "4.9.6", + "@rollup/rollup-linux-arm64-gnu": "4.9.6", + "@rollup/rollup-linux-arm64-musl": "4.9.6", + "@rollup/rollup-linux-riscv64-gnu": "4.9.6", + "@rollup/rollup-linux-x64-gnu": "4.9.6", + "@rollup/rollup-linux-x64-musl": "4.9.6", + "@rollup/rollup-win32-arm64-msvc": "4.9.6", + "@rollup/rollup-win32-ia32-msvc": "4.9.6", + "@rollup/rollup-win32-x64-msvc": "4.9.6", + "@types/estree": "1.0.5", "fsevents": "~2.3.2" } }, @@ -2695,9 +2736,9 @@ "dev": true }, "typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "dev": true }, "universalify": { @@ -2722,9 +2763,9 @@ "dev": true }, "vite": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.5.tgz", - "integrity": "sha512-OekeWqR9Ls56f3zd4CaxzbbS11gqYkEiBtnWFFgYR2WV8oPJRRKq0mpskYy/XaoCL3L7VINDhqqOMNDiYdGvGg==", + "version": "5.0.12", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.12.tgz", + "integrity": "sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==", "dev": true, "requires": { "esbuild": "^0.19.3", @@ -2734,23 +2775,23 @@ } }, "vite-plugin-dts": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-3.6.4.tgz", - "integrity": "sha512-yOVhUI/kQhtS6lCXRYYLv2UUf9bftcwQK9ROxCX2ul17poLQs02ctWX7+vXB8GPRzH8VCK3jebEFtPqqijXx6w==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-3.7.2.tgz", + "integrity": "sha512-kg//1nDA01b8rufJf4TsvYN8LMkdwv0oBYpiQi6nRwpHyue+wTlhrBiqgipdFpMnW1oOYv6ywmzE5B0vg6vSEA==", "dev": true, "requires": { - "@microsoft/api-extractor": "^7.38.0", - "@rollup/pluginutils": "^5.0.5", - "@vue/language-core": "^1.8.20", + "@microsoft/api-extractor": "7.39.0", + "@rollup/pluginutils": "^5.1.0", + "@vue/language-core": "^1.8.26", "debug": "^4.3.4", "kolorist": "^1.8.0", - "vue-tsc": "^1.8.20" + "vue-tsc": "^1.8.26" } }, "vue-template-compiler": { - "version": "2.7.15", - "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.15.tgz", - "integrity": "sha512-yQxjxMptBL7UAog00O8sANud99C6wJF+7kgbcwqkvA38vCGF7HWE66w0ZFnS/kX5gSoJr/PQ4/oS3Ne2pW37Og==", + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", "dev": true, "requires": { "de-indent": "^1.0.2", @@ -2758,13 +2799,13 @@ } }, "vue-tsc": { - "version": "1.8.22", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.22.tgz", - "integrity": "sha512-j9P4kHtW6eEE08aS5McFZE/ivmipXy0JzrnTgbomfABMaVKx37kNBw//irL3+LlE3kOo63XpnRigyPC3w7+z+A==", + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", "dev": true, "requires": { - "@volar/typescript": "~1.10.5", - "@vue/language-core": "1.8.22", + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", "semver": "^7.5.4" } }, diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml index 85d062c2..f6eed253 100644 --- a/supply-chain/audits.toml +++ b/supply-chain/audits.toml @@ -69,12 +69,24 @@ user-id = 6825 # Dan Gohman (sunfishcode) start = "2020-12-11" end = "2024-07-25" +[[trusted.cap-net-ext]] +criteria = "safe-to-deploy" +user-id = 6825 # Dan Gohman (sunfishcode) +start = "2023-04-07" +end = "2025-01-03" + [[trusted.cap-primitives]] criteria = "safe-to-deploy" user-id = 6825 # Dan Gohman (sunfishcode) start = "2020-08-07" end = "2024-07-25" +[[trusted.cap-rand]] +criteria = "safe-to-deploy" +user-id = 6825 # Dan Gohman (sunfishcode) +start = "2020-09-24" +end = "2025-01-03" + [[trusted.cap-std]] criteria = "safe-to-deploy" user-id = 6825 # Dan Gohman (sunfishcode) @@ -111,12 +123,54 @@ user-id = 189 # Andrew Gallant (BurntSushi) start = "2019-06-26" end = "2024-10-03" +[[trusted.cxx]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2019-12-28" +end = "2025-02-05" + +[[trusted.cxx-build]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2020-04-30" +end = "2025-02-05" + +[[trusted.cxxbridge-flags]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2020-08-30" +end = "2025-02-05" + +[[trusted.cxxbridge-macro]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2020-01-08" +end = "2025-02-05" + +[[trusted.env_logger]] +criteria = "safe-to-deploy" +user-id = 6743 # Ed Page (epage) +start = "2022-11-24" +end = "2025-01-02" + [[trusted.equivalent]] criteria = "safe-to-deploy" user-id = 539 # Josh Stone (cuviper) start = "2023-02-05" end = "2024-10-03" +[[trusted.errno]] +criteria = "safe-to-deploy" +user-id = 6825 # Dan Gohman (sunfishcode) +start = "2023-08-29" +end = "2025-01-04" + +[[trusted.fd-lock]] +criteria = "safe-to-deploy" +user-id = 6825 # Dan Gohman (sunfishcode) +start = "2022-01-21" +end = "2025-01-03" + [[trusted.fs-set-times]] criteria = "safe-to-deploy" user-id = 6825 # Dan Gohman (sunfishcode) @@ -183,6 +237,12 @@ user-id = 3618 # David Tolnay (dtolnay) start = "2019-05-02" end = "2024-07-12" +[[trusted.js-sys]] +criteria = "safe-to-deploy" +user-id = 1 # Alex Crichton (alexcrichton) +start = "2019-03-04" +end = "2025-01-03" + [[trusted.libc]] criteria = "safe-to-deploy" user-id = 2915 # Amanieu d'Antras (Amanieu) @@ -237,12 +297,24 @@ user-id = 3618 # David Tolnay (dtolnay) start = "2019-04-16" end = "2024-07-12" +[[trusted.proc-macro2]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2019-04-23" +end = "2025-01-03" + [[trusted.quickcheck]] criteria = "safe-to-deploy" user-id = 189 # Andrew Gallant (BurntSushi) start = "2019-05-13" end = "2024-10-03" +[[trusted.quote]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2019-04-09" +end = "2025-01-03" + [[trusted.rayon]] criteria = "safe-to-deploy" user-id = 539 # Josh Stone (cuviper) @@ -303,6 +375,12 @@ user-id = 2915 # Amanieu d'Antras (Amanieu) start = "2020-02-16" end = "2024-07-12" +[[trusted.scratch]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2020-09-17" +end = "2025-02-05" + [[trusted.serde]] criteria = "safe-to-deploy" user-id = 3618 # David Tolnay (dtolnay) @@ -327,12 +405,24 @@ user-id = 3618 # David Tolnay (dtolnay) start = "2019-02-28" end = "2024-07-12" +[[trusted.smallvec]] +criteria = "safe-to-deploy" +user-id = 2017 # Matt Brubeck (mbrubeck) +start = "2019-10-28" +end = "2025-01-03" + [[trusted.syn]] criteria = "safe-to-deploy" user-id = 3618 # David Tolnay (dtolnay) start = "2019-03-01" end = "2024-07-12" +[[trusted.system-interface]] +criteria = "safe-to-deploy" +user-id = 6825 # Dan Gohman (sunfishcode) +start = "2020-10-27" +end = "2025-01-03" + [[trusted.target-lexicon]] criteria = "safe-to-deploy" user-id = 6825 # Dan Gohman (sunfishcode) @@ -345,12 +435,30 @@ user-id = 189 # Andrew Gallant (BurntSushi) start = "2019-06-04" end = "2024-10-03" +[[trusted.thiserror]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2019-10-09" +end = "2025-01-03" + +[[trusted.thiserror-impl]] +criteria = "safe-to-deploy" +user-id = 3618 # David Tolnay (dtolnay) +start = "2019-10-09" +end = "2025-01-03" + [[trusted.tokio]] criteria = "safe-to-deploy" user-id = 10 # Carl Lerche (carllerche) start = "2019-03-02" end = "2024-12-04" +[[trusted.tokio]] +criteria = "safe-to-deploy" +user-id = 6741 # Alice Ryhl (Darksonn) +start = "2020-12-25" +end = "2025-01-04" + [[trusted.tokio-macros]] criteria = "safe-to-deploy" user-id = 10 # Carl Lerche (carllerche) @@ -369,8 +477,116 @@ user-id = 189 # Andrew Gallant (BurntSushi) start = "2019-06-09" end = "2024-10-03" +[[trusted.wasm-bindgen]] +criteria = "safe-to-deploy" +user-id = 1 # Alex Crichton (alexcrichton) +start = "2019-03-04" +end = "2025-01-03" + +[[trusted.wasm-bindgen-backend]] +criteria = "safe-to-deploy" +user-id = 1 # Alex Crichton (alexcrichton) +start = "2019-03-04" +end = "2025-01-03" + +[[trusted.wasm-bindgen-macro]] +criteria = "safe-to-deploy" +user-id = 1 # Alex Crichton (alexcrichton) +start = "2019-03-04" +end = "2025-01-03" + +[[trusted.wasm-bindgen-macro-support]] +criteria = "safe-to-deploy" +user-id = 1 # Alex Crichton (alexcrichton) +start = "2019-03-04" +end = "2025-01-03" + +[[trusted.wasm-bindgen-shared]] +criteria = "safe-to-deploy" +user-id = 1 # Alex Crichton (alexcrichton) +start = "2019-03-04" +end = "2025-01-03" + +[[trusted.wasmtime-versioned-export-macros]] +criteria = "safe-to-deploy" +user-id = 73222 # wasmtime-publish +start = "2023-08-21" +end = "2025-01-03" + [[trusted.winapi-util]] criteria = "safe-to-deploy" user-id = 189 # Andrew Gallant (BurntSushi) start = "2020-01-11" end = "2024-10-03" + +[[trusted.windows-core]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2021-11-15" +end = "2025-01-03" + +[[trusted.windows-sys]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2021-11-15" +end = "2025-01-02" + +[[trusted.windows-targets]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2022-09-09" +end = "2025-01-02" + +[[trusted.windows_aarch64_gnullvm]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2022-09-01" +end = "2025-01-02" + +[[trusted.windows_aarch64_msvc]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2021-11-05" +end = "2025-01-02" + +[[trusted.windows_i686_gnu]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2021-10-28" +end = "2025-01-02" + +[[trusted.windows_i686_msvc]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2021-10-27" +end = "2025-01-02" + +[[trusted.windows_x86_64_gnu]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2021-10-28" +end = "2025-01-02" + +[[trusted.windows_x86_64_gnullvm]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2022-09-01" +end = "2025-01-02" + +[[trusted.windows_x86_64_msvc]] +criteria = "safe-to-deploy" +user-id = 64539 # Kenny Kerr (kennykerr) +start = "2021-10-27" +end = "2025-01-02" + +[[trusted.winx]] +criteria = "safe-to-deploy" +user-id = 6825 # Dan Gohman (sunfishcode) +start = "2019-08-20" +end = "2025-01-02" + +[[trusted.wizer]] +criteria = "safe-to-deploy" +user-id = 696 # Nick Fitzgerald (fitzgen) +start = "2021-01-07" +end = "2025-01-02" diff --git a/supply-chain/config.toml b/supply-chain/config.toml index 055bed3a..4664139c 100644 --- a/supply-chain/config.toml +++ b/supply-chain/config.toml @@ -2,7 +2,7 @@ # cargo-vet config file [cargo-vet] -version = "0.8" +version = "0.9" [imports.bytecode-alliance] url = "https://raw.githubusercontent.com/bytecodealliance/wasmtime/main/supply-chain/audits.toml" @@ -22,12 +22,6 @@ url = "https://raw.githubusercontent.com/divviup/libprio-rs/main/supply-chain/au [imports.mozilla] url = "https://raw.githubusercontent.com/mozilla/supply-chain/main/audits.toml" -[policy.binaryen] -audit-as-crates-io = true - -[policy.binaryen-sys] -audit-as-crates-io = true - [policy.javy] audit-as-crates-io = false @@ -65,7 +59,7 @@ version = "0.12.1" criteria = "safe-to-deploy" [[exemptions.ast_node]] -version = "0.9.5" +version = "0.9.6" criteria = "safe-to-deploy" [[exemptions.backtrace]] @@ -76,14 +70,6 @@ criteria = "safe-to-deploy" version = "0.1.1" criteria = "safe-to-deploy" -[[exemptions.binaryen]] -version = "0.12.1@git:00c98174843f957681ba0bc5cdcc9d15f5d0cb23" -criteria = "safe-to-deploy" - -[[exemptions.binaryen-sys]] -version = "0.12.1@git:00c98174843f957681ba0bc5cdcc9d15f5d0cb23" -criteria = "safe-to-deploy" - [[exemptions.bincode]] version = "1.3.3" criteria = "safe-to-deploy" @@ -112,10 +98,6 @@ criteria = "safe-to-deploy" version = "0.3.0" criteria = "safe-to-run" -[[exemptions.cc]] -version = "1.0.83" -criteria = "safe-to-deploy" - [[exemptions.ciborium]] version = "0.2.1" criteria = "safe-to-run" @@ -140,10 +122,6 @@ criteria = "safe-to-deploy" version = "4.4.7" criteria = "safe-to-run" -[[exemptions.cmake]] -version = "0.1.48" -criteria = "safe-to-deploy" - [[exemptions.convert_case]] version = "0.6.0" criteria = "safe-to-deploy" @@ -204,42 +182,41 @@ criteria = "safe-to-deploy" version = "0.1.2" criteria = "safe-to-deploy" -[[exemptions.enum-iterator]] -version = "1.4.1" +[[exemptions.fallible-iterator]] +version = "0.2.0" criteria = "safe-to-deploy" -[[exemptions.enum-iterator-derive]] -version = "1.2.1" +[[exemptions.from_variant]] +version = "0.1.7" criteria = "safe-to-deploy" -[[exemptions.env_logger]] -version = "0.9.0" +[[exemptions.futures]] +version = "0.3.30" criteria = "safe-to-deploy" -[[exemptions.errno]] -version = "0.2.8" +[[exemptions.futures-channel]] +version = "0.3.30" criteria = "safe-to-deploy" -[[exemptions.fallible-iterator]] -version = "0.2.0" +[[exemptions.futures-core]] +version = "0.3.30" criteria = "safe-to-deploy" -[[exemptions.from_variant]] -version = "0.1.6" +[[exemptions.futures-io]] +version = "0.3.30" criteria = "safe-to-deploy" -[[exemptions.futures-core]] -version = "0.3.29" +[[exemptions.futures-sink]] +version = "0.3.30" criteria = "safe-to-deploy" [[exemptions.futures-task]] -version = "0.3.29" +version = "0.3.30" criteria = "safe-to-deploy" [[exemptions.futures-util]] -version = "0.3.27" +version = "0.3.30" criteria = "safe-to-deploy" -notes = "this is 25k lines and contains over 149 uses of the substring unsafe. it is a huge grab bag of complexity with no practical way to audit it" [[exemptions.generic-array]] version = "0.14.5" @@ -249,10 +226,6 @@ criteria = "safe-to-deploy" version = "0.2.5" criteria = "safe-to-deploy" -[[exemptions.getset]] -version = "0.1.2" -criteria = "safe-to-deploy" - [[exemptions.gimli]] version = "0.26.1" criteria = "safe-to-deploy" @@ -261,10 +234,6 @@ criteria = "safe-to-deploy" version = "0.26.2" criteria = "safe-to-deploy" -[[exemptions.gimli]] -version = "0.27.2" -criteria = "safe-to-deploy" - [[exemptions.heck]] version = "0.3.3" criteria = "safe-to-deploy" @@ -277,8 +246,8 @@ criteria = "safe-to-deploy" version = "0.3.1" criteria = "safe-to-deploy" -[[exemptions.humantime]] -version = "2.1.0" +[[exemptions.hstr]] +version = "0.2.6" criteria = "safe-to-deploy" [[exemptions.if_chain]] @@ -294,7 +263,7 @@ version = "2.0.2" criteria = "safe-to-deploy" [[exemptions.ipnet]] -version = "2.3.1" +version = "2.9.0" criteria = "safe-to-deploy" [[exemptions.is-macro]] @@ -309,10 +278,6 @@ criteria = "safe-to-deploy" version = "0.1.24" criteria = "safe-to-deploy" -[[exemptions.js-sys]] -version = "0.3.58" -criteria = "safe-to-run" - [[exemptions.lazycell]] version = "1.3.0" criteria = "safe-to-deploy" @@ -321,10 +286,6 @@ criteria = "safe-to-deploy" version = "0.7.3" criteria = "safe-to-deploy" -[[exemptions.lock_api]] -version = "0.4.10" -criteria = "safe-to-deploy" - [[exemptions.mach]] version = "0.3.2" criteria = "safe-to-deploy" @@ -353,10 +314,6 @@ criteria = "safe-to-deploy" version = "0.4.4" criteria = "safe-to-run" -[[exemptions.object]] -version = "0.30.3" -criteria = "safe-to-deploy" - [[exemptions.object]] version = "0.32.1" criteria = "safe-to-deploy" @@ -377,14 +334,6 @@ criteria = "safe-to-deploy" version = "0.9.96" criteria = "safe-to-deploy" -[[exemptions.parking_lot]] -version = "0.12.1" -criteria = "safe-to-deploy" - -[[exemptions.parking_lot_core]] -version = "0.9.8" -criteria = "safe-to-deploy" - [[exemptions.phf]] version = "0.10.1" criteria = "safe-to-deploy" @@ -409,10 +358,6 @@ criteria = "safe-to-deploy" version = "1.1.3" criteria = "safe-to-deploy" -[[exemptions.pin-project-lite]] -version = "0.2.13" -criteria = "safe-to-deploy" - [[exemptions.plotters]] version = "0.3.4" criteria = "safe-to-run" @@ -449,10 +394,6 @@ criteria = "safe-to-deploy" version = "0.2.10" criteria = "safe-to-deploy" -[[exemptions.redox_syscall]] -version = "0.3.5" -criteria = "safe-to-deploy" - [[exemptions.redox_syscall]] version = "0.4.1" criteria = "safe-to-deploy" @@ -506,7 +447,7 @@ version = "2.1.0" criteria = "safe-to-deploy" [[exemptions.shlex]] -version = "1.1.0" +version = "1.3.0" criteria = "safe-to-deploy" [[exemptions.siphasher]] @@ -517,10 +458,6 @@ criteria = "safe-to-deploy" version = "0.3.0" criteria = "safe-to-deploy" -[[exemptions.smallvec]] -version = "1.8.0" -criteria = "safe-to-deploy" - [[exemptions.smartstring]] version = "1.0.1" criteria = "safe-to-deploy" @@ -545,16 +482,8 @@ criteria = "safe-to-deploy" version = "1.1.0" criteria = "safe-to-deploy" -[[exemptions.string_cache]] -version = "0.8.7" -criteria = "safe-to-deploy" - -[[exemptions.string_cache_codegen]] -version = "0.5.2" -criteria = "safe-to-deploy" - [[exemptions.string_enum]] -version = "0.4.1" +version = "0.4.2" criteria = "safe-to-deploy" [[exemptions.strsim]] @@ -570,69 +499,61 @@ version = "0.4.18" criteria = "safe-to-deploy" [[exemptions.swc_atoms]] -version = "0.6.0" +version = "0.6.5" criteria = "safe-to-deploy" [[exemptions.swc_common]] -version = "0.33.4" +version = "0.33.15" criteria = "safe-to-deploy" [[exemptions.swc_core]] -version = "0.86.39" +version = "0.89.7" criteria = "safe-to-deploy" [[exemptions.swc_ecma_ast]] -version = "0.110.5" +version = "0.111.1" criteria = "safe-to-deploy" [[exemptions.swc_ecma_parser]] -version = "0.141.13" +version = "0.142.1" criteria = "safe-to-deploy" [[exemptions.swc_ecma_transforms_base]] -version = "0.134.21" +version = "0.136.4" criteria = "safe-to-deploy" [[exemptions.swc_ecma_utils]] -version = "0.124.18" +version = "0.126.2" criteria = "safe-to-deploy" [[exemptions.swc_ecma_visit]] -version = "0.96.5" +version = "0.97.1" criteria = "safe-to-deploy" [[exemptions.swc_eq_ignore_macros]] -version = "0.1.2" +version = "0.1.3" criteria = "safe-to-deploy" [[exemptions.swc_macros_common]] -version = "0.3.8" +version = "0.3.9" criteria = "safe-to-deploy" [[exemptions.swc_visit]] -version = "0.5.7" +version = "0.5.8" criteria = "safe-to-deploy" [[exemptions.swc_visit_macros]] -version = "0.5.8" +version = "0.5.9" criteria = "safe-to-deploy" [[exemptions.tempfile]] -version = "3.8.1" +version = "3.9.0" criteria = "safe-to-deploy" [[exemptions.textwrap]] version = "0.11.0" criteria = "safe-to-deploy" -[[exemptions.time]] -version = "0.3.22" -criteria = "safe-to-deploy" - -[[exemptions.time-macros]] -version = "0.2.9" -criteria = "safe-to-deploy" - [[exemptions.tinytemplate]] version = "1.2.1" criteria = "safe-to-run" @@ -665,10 +586,6 @@ criteria = "safe-to-deploy" version = "0.1.31" criteria = "safe-to-deploy" -[[exemptions.triomphe]] -version = "0.1.8" -criteria = "safe-to-deploy" - [[exemptions.typed-arena]] version = "2.0.2" criteria = "safe-to-deploy" @@ -682,11 +599,11 @@ version = "0.3.3" criteria = "safe-to-deploy" [[exemptions.uuid]] -version = "1.6.1" +version = "1.7.0" criteria = "safe-to-deploy" [[exemptions.vergen]] -version = "7.5.1" +version = "8.2.6" criteria = "safe-to-deploy" [[exemptions.walrus]] @@ -705,25 +622,17 @@ criteria = "safe-to-deploy" version = "0.11.0+wasi-snapshot-preview1" criteria = "safe-to-deploy" -[[exemptions.wasm-bindgen]] -version = "0.2.81" -criteria = "safe-to-run" - -[[exemptions.wasm-bindgen-backend]] -version = "0.2.81" -criteria = "safe-to-run" - -[[exemptions.wasm-bindgen-macro]] -version = "0.2.81" -criteria = "safe-to-run" +[[exemptions.wasm-opt]] +version = "0.116.0" +criteria = "safe-to-deploy" -[[exemptions.wasm-bindgen-macro-support]] -version = "0.2.81" -criteria = "safe-to-run" +[[exemptions.wasm-opt-cxx-sys]] +version = "0.116.0" +criteria = "safe-to-deploy" -[[exemptions.wasm-bindgen-shared]] -version = "0.2.81" -criteria = "safe-to-run" +[[exemptions.wasm-opt-sys]] +version = "0.116.0" +criteria = "safe-to-deploy" [[exemptions.web-sys]] version = "0.3.58" @@ -745,86 +654,10 @@ criteria = "safe-to-deploy" version = "0.4.0" criteria = "safe-to-deploy" -[[exemptions.windows-sys]] -version = "0.42.0" -criteria = "safe-to-deploy" - -[[exemptions.windows-sys]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.windows-targets]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.windows_aarch64_gnullvm]] -version = "0.42.1" -criteria = "safe-to-deploy" - -[[exemptions.windows_aarch64_gnullvm]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.windows_aarch64_msvc]] -version = "0.42.1" -criteria = "safe-to-deploy" - -[[exemptions.windows_aarch64_msvc]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.windows_i686_gnu]] -version = "0.42.1" -criteria = "safe-to-deploy" - -[[exemptions.windows_i686_gnu]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.windows_i686_msvc]] -version = "0.42.1" -criteria = "safe-to-deploy" - -[[exemptions.windows_i686_msvc]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.windows_x86_64_gnu]] -version = "0.42.1" -criteria = "safe-to-deploy" - -[[exemptions.windows_x86_64_gnu]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.windows_x86_64_gnullvm]] -version = "0.42.1" -criteria = "safe-to-deploy" - -[[exemptions.windows_x86_64_gnullvm]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.windows_x86_64_msvc]] -version = "0.42.1" -criteria = "safe-to-deploy" - -[[exemptions.windows_x86_64_msvc]] -version = "0.48.0" -criteria = "safe-to-deploy" - -[[exemptions.winx]] -version = "0.31.0" -criteria = "safe-to-deploy" - [[exemptions.witx]] version = "0.9.1" criteria = "safe-to-deploy" -[[exemptions.wizer]] -version = "3.0.0" -criteria = "safe-to-deploy" - [[exemptions.zstd]] version = "0.11.2+zstd.1.5.2" criteria = "safe-to-deploy" diff --git a/supply-chain/imports.lock b/supply-chain/imports.lock index faafc186..5d767f32 100644 --- a/supply-chain/imports.lock +++ b/supply-chain/imports.lock @@ -8,13 +8,6 @@ user-id = 189 user-login = "BurntSushi" user-name = "Andrew Gallant" -[[publisher.ambient-authority]] -version = "0.0.1" -when = "2021-07-13" -user-id = 6825 -user-login = "sunfishcode" -user-name = "Dan Gohman" - [[publisher.anstyle]] version = "1.0.4" when = "2023-09-28" @@ -23,22 +16,22 @@ user-login = "epage" user-name = "Ed Page" [[publisher.anyhow]] -version = "1.0.75" -when = "2023-08-17" +version = "1.0.79" +when = "2024-01-02" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.arbitrary]] -version = "1.3.0" -when = "2023-03-13" +version = "1.3.2" +when = "2023-10-30" user-id = 696 user-login = "fitzgen" user-name = "Nick Fitzgerald" [[publisher.async-trait]] -version = "0.1.52" -when = "2021-12-09" +version = "0.1.77" +when = "2024-01-02" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" @@ -51,43 +44,43 @@ user-login = "BurntSushi" user-name = "Andrew Gallant" [[publisher.cap-fs-ext]] -version = "1.0.10" -when = "2023-04-06" +version = "2.0.1" +when = "2024-01-02" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" -[[publisher.cap-primitives]] -version = "0.24.1" -when = "2022-02-09" +[[publisher.cap-net-ext]] +version = "2.0.1" +when = "2024-01-02" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.cap-primitives]] -version = "1.0.10" -when = "2023-04-06" +version = "2.0.1" +when = "2024-01-02" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" -[[publisher.cap-std]] -version = "0.24.4" -when = "2022-05-26" +[[publisher.cap-rand]] +version = "2.0.1" +when = "2024-01-02" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.cap-std]] -version = "1.0.10" -when = "2023-04-06" +version = "2.0.1" +when = "2024-01-02" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.cap-time-ext]] -version = "1.0.10" -when = "2023-04-06" +version = "2.0.1" +when = "2024-01-02" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" @@ -128,65 +121,100 @@ user-login = "jrmuizel" user-name = "Jeff Muizelaar" [[publisher.cranelift-bforest]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-codegen]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-codegen-meta]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-codegen-shared]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-control]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-entity]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-frontend]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-isle]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-native]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.cranelift-wasm]] -version = "0.96.4" -when = "2023-06-13" +version = "0.103.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" +[[publisher.cxx]] +version = "1.0.115" +when = "2024-01-06" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + +[[publisher.cxx-build]] +version = "1.0.115" +when = "2024-01-06" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + +[[publisher.cxxbridge-flags]] +version = "1.0.115" +when = "2024-01-06" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + +[[publisher.cxxbridge-macro]] +version = "1.0.115" +when = "2024-01-06" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + +[[publisher.encoding_rs]] +version = "0.8.33" +when = "2023-08-23" +user-id = 4484 +user-login = "hsivonen" +user-name = "Henri Sivonen" + [[publisher.equivalent]] version = "1.0.1" when = "2023-07-10" @@ -194,9 +222,23 @@ user-id = 539 user-login = "cuviper" user-name = "Josh Stone" +[[publisher.errno]] +version = "0.3.8" +when = "2023-11-28" +user-id = 6825 +user-login = "sunfishcode" +user-name = "Dan Gohman" + +[[publisher.fd-lock]] +version = "4.0.2" +when = "2023-12-29" +user-id = 6825 +user-login = "sunfishcode" +user-name = "Dan Gohman" + [[publisher.fs-set-times]] -version = "0.15.0" -when = "2022-01-31" +version = "0.20.1" +when = "2023-12-01" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" @@ -230,8 +272,8 @@ user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.hyper]] -version = "1.0.1" -when = "2023-11-16" +version = "1.1.0" +when = "2023-12-18" user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" @@ -244,29 +286,29 @@ user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.hyper-util]] -version = "0.1.1" -when = "2023-11-17" +version = "0.1.3" +when = "2024-01-31" user-id = 359 user-login = "seanmonstar" user-name = "Sean McArthur" [[publisher.io-extras]] -version = "0.13.2" -when = "2022-02-01" +version = "0.18.1" +when = "2023-12-01" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.io-lifetimes]] -version = "0.5.3" -when = "2022-02-15" +version = "1.0.11" +when = "2023-05-24" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.io-lifetimes]] -version = "1.0.11" -when = "2023-05-24" +version = "2.0.3" +when = "2023-12-01" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" @@ -278,20 +320,20 @@ user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" +[[publisher.js-sys]] +version = "0.3.58" +when = "2022-06-14" +user-id = 1 +user-login = "alexcrichton" +user-name = "Alex Crichton" + [[publisher.libc]] -version = "0.2.149" -when = "2023-10-06" +version = "0.2.151" +when = "2023-12-10" user-id = 51017 user-login = "JohnTitor" user-name = "Yuki Okushi" -[[publisher.linux-raw-sys]] -version = "0.0.42" -when = "2022-02-11" -user-id = 6825 -user-login = "sunfishcode" -user-name = "Dan Gohman" - [[publisher.linux-raw-sys]] version = "0.3.8" when = "2023-05-19" @@ -300,8 +342,8 @@ user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.linux-raw-sys]] -version = "0.4.10" -when = "2023-10-09" +version = "0.4.12" +when = "2023-11-30" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" @@ -341,9 +383,9 @@ user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" -[[publisher.proc-macro-hack]] -version = "0.5.20+deprecated" -when = "2022-12-19" +[[publisher.proc-macro2]] +version = "1.0.74" +when = "2024-01-02" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" @@ -355,6 +397,13 @@ user-id = 189 user-login = "BurntSushi" user-name = "Andrew Gallant" +[[publisher.quote]] +version = "1.0.35" +when = "2024-01-02" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + [[publisher.rayon]] version = "1.5.1" when = "2021-05-18" @@ -370,8 +419,8 @@ user-login = "cuviper" user-name = "Josh Stone" [[publisher.regalloc2]] -version = "0.8.1" -when = "2023-05-01" +version = "0.9.3" +when = "2023-10-05" user-id = 3726 user-login = "cfallin" user-name = "Chris Fallin" @@ -390,13 +439,6 @@ user-id = 189 user-login = "BurntSushi" user-name = "Andrew Gallant" -[[publisher.rustix]] -version = "0.33.7" -when = "2022-04-18" -user-id = 6825 -user-login = "sunfishcode" -user-name = "Dan Gohman" - [[publisher.rustix]] version = "0.37.26" when = "2023-10-19" @@ -405,15 +447,15 @@ user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.rustix]] -version = "0.38.21" -when = "2023-10-26" +version = "0.38.28" +when = "2023-12-09" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.rustversion]] -version = "1.0.12" -when = "2023-03-05" +version = "1.0.14" +when = "2023-07-15" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" @@ -439,34 +481,48 @@ user-id = 2915 user-login = "Amanieu" user-name = "Amanieu d'Antras" +[[publisher.scratch]] +version = "1.0.7" +when = "2023-07-15" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + [[publisher.serde]] -version = "1.0.193" -when = "2023-11-21" +version = "1.0.196" +when = "2024-01-26" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.serde_bytes]] -version = "0.11.12" -when = "2023-07-15" +version = "0.11.14" +when = "2024-01-02" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.serde_derive]] -version = "1.0.193" -when = "2023-11-21" +version = "1.0.196" +when = "2024-01-26" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" [[publisher.serde_json]] -version = "1.0.108" -when = "2023-10-30" +version = "1.0.113" +when = "2024-01-29" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" +[[publisher.smallvec]] +version = "1.11.2" +when = "2023-11-09" +user-id = 2017 +user-login = "mbrubeck" +user-name = "Matt Brubeck" + [[publisher.syn]] version = "1.0.109" when = "2023-02-24" @@ -475,32 +531,53 @@ user-login = "dtolnay" user-name = "David Tolnay" [[publisher.syn]] -version = "2.0.32" -when = "2023-09-10" +version = "2.0.46" +when = "2024-01-02" user-id = 3618 user-login = "dtolnay" user-name = "David Tolnay" +[[publisher.system-interface]] +version = "0.26.1" +when = "2024-01-02" +user-id = 6825 +user-login = "sunfishcode" +user-name = "Dan Gohman" + [[publisher.target-lexicon]] -version = "0.12.3" -when = "2022-02-01" +version = "0.12.13" +when = "2024-01-02" user-id = 6825 user-login = "sunfishcode" user-name = "Dan Gohman" [[publisher.termcolor]] -version = "1.1.2" -when = "2020-11-19" +version = "1.4.1" +when = "2024-01-10" user-id = 189 user-login = "BurntSushi" user-name = "Andrew Gallant" +[[publisher.thiserror]] +version = "1.0.56" +when = "2024-01-02" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + +[[publisher.thiserror-impl]] +version = "1.0.56" +when = "2024-01-02" +user-id = 3618 +user-login = "dtolnay" +user-name = "David Tolnay" + [[publisher.tokio]] -version = "1.34.0" -when = "2023-11-09" -user-id = 10 -user-login = "carllerche" -user-name = "Carl Lerche" +version = "1.35.1" +when = "2023-12-19" +user-id = 6741 +user-login = "Darksonn" +user-name = "Alice Ryhl" [[publisher.tokio-macros]] version = "2.2.0" @@ -545,20 +622,48 @@ user-login = "BurntSushi" user-name = "Andrew Gallant" [[publisher.wasi-cap-std-sync]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasi-common]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" -[[publisher.wasm-encoder]] -version = "0.28.0" -when = "2023-05-23" +[[publisher.wasm-bindgen]] +version = "0.2.81" +when = "2022-06-14" +user-id = 1 +user-login = "alexcrichton" +user-name = "Alex Crichton" + +[[publisher.wasm-bindgen-backend]] +version = "0.2.81" +when = "2022-06-14" +user-id = 1 +user-login = "alexcrichton" +user-name = "Alex Crichton" + +[[publisher.wasm-bindgen-macro]] +version = "0.2.81" +when = "2022-06-14" +user-id = 1 +user-login = "alexcrichton" +user-name = "Alex Crichton" + +[[publisher.wasm-bindgen-macro-support]] +version = "0.2.81" +when = "2022-06-14" +user-id = 1 +user-login = "alexcrichton" +user-name = "Alex Crichton" + +[[publisher.wasm-bindgen-shared]] +version = "0.2.81" +when = "2022-06-14" user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" @@ -570,16 +675,23 @@ user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" -[[publisher.wasmparser]] -version = "0.80.2" -when = "2021-09-30" +[[publisher.wasm-encoder]] +version = "0.30.0" +when = "2023-07-11" +user-id = 1 +user-login = "alexcrichton" +user-name = "Alex Crichton" + +[[publisher.wasm-encoder]] +version = "0.38.1" +when = "2023-11-29" user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" [[publisher.wasmparser]] -version = "0.103.0" -when = "2023-04-13" +version = "0.80.2" +when = "2021-09-30" user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" @@ -598,138 +710,163 @@ user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" +[[publisher.wasmparser]] +version = "0.121.0" +when = "2024-01-29" +user-id = 1 +user-login = "alexcrichton" +user-name = "Alex Crichton" + [[publisher.wasmprinter]] -version = "0.2.75" -when = "2023-11-29" +version = "0.2.78" +when = "2024-01-29" user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" [[publisher.wasmtime]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-asm-macros]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-cache]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-component-macro]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-component-util]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-cranelift]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-cranelift-shared]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-environ]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-fiber]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-jit]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-jit-debug]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-jit-icache-coherence]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-runtime]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-types]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" +user-id = 73222 +user-login = "wasmtime-publish" + +[[publisher.wasmtime-versioned-export-macros]] +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-wasi]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" +user-id = 73222 +user-login = "wasmtime-publish" + +[[publisher.wasmtime-winch]] +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wasmtime-wit-bindgen]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" +user-id = 73222 +user-login = "wasmtime-publish" + +[[publisher.wasmtime-wmemcheck]] +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wast]] -version = "56.0.0" -when = "2023-04-13" +version = "69.0.1" +when = "2023-11-29" user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" [[publisher.wat]] -version = "1.0.62" -when = "2023-04-13" +version = "1.0.82" +when = "2023-11-29" user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" [[publisher.wiggle]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wiggle-generate]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" [[publisher.wiggle-macro]] -version = "9.0.4" -when = "2023-06-13" +version = "16.0.0" +when = "2023-12-20" user-id = 73222 user-login = "wasmtime-publish" @@ -740,20 +877,222 @@ user-id = 189 user-login = "BurntSushi" user-name = "Andrew Gallant" -[[publisher.wit-parser]] -version = "0.7.1" -when = "2023-04-27" -user-id = 1 -user-login = "alexcrichton" -user-name = "Alex Crichton" +[[publisher.winch-codegen]] +version = "0.14.0" +when = "2023-12-20" +user-id = 73222 +user-login = "wasmtime-publish" + +[[publisher.windows-core]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows-sys]] +version = "0.42.0" +when = "2022-09-27" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows-sys]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows-sys]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows-targets]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows-targets]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_aarch64_gnullvm]] +version = "0.42.1" +when = "2023-01-12" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_aarch64_gnullvm]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_aarch64_gnullvm]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_aarch64_msvc]] +version = "0.42.1" +when = "2023-01-12" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_aarch64_msvc]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_aarch64_msvc]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_i686_gnu]] +version = "0.42.1" +when = "2023-01-12" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_i686_gnu]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_i686_gnu]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_i686_msvc]] +version = "0.42.1" +when = "2023-01-12" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_i686_msvc]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_i686_msvc]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_gnu]] +version = "0.42.1" +when = "2023-01-12" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_gnu]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_gnu]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_gnullvm]] +version = "0.42.1" +when = "2023-01-12" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_gnullvm]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_gnullvm]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_msvc]] +version = "0.42.1" +when = "2023-01-12" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_msvc]] +version = "0.48.0" +when = "2023-03-31" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.windows_x86_64_msvc]] +version = "0.52.0" +when = "2023-11-15" +user-id = 64539 +user-login = "kennykerr" +user-name = "Kenny Kerr" + +[[publisher.winx]] +version = "0.36.3" +when = "2023-12-01" +user-id = 6825 +user-login = "sunfishcode" +user-name = "Dan Gohman" [[publisher.wit-parser]] -version = "0.13.0" -when = "2023-11-06" +version = "0.13.1" +when = "2024-01-09" user-id = 1 user-login = "alexcrichton" user-name = "Alex Crichton" +[[publisher.wizer]] +version = "4.0.0" +when = "2024-01-03" +user-id = 696 +user-login = "fitzgen" +user-name = "Nick Fitzgerald" + [[audits.bytecode-alliance.wildcard-audits.arbitrary]] who = "Nick Fitzgerald " criteria = "safe-to-deploy" @@ -1025,6 +1364,14 @@ start = "2021-10-29" end = "2024-06-26" notes = "The Bytecode Alliance is the author of this crate." +[[audits.bytecode-alliance.wildcard-audits.wasmtime-winch]] +who = "Bobby Holley " +criteria = "safe-to-deploy" +user-id = 73222 # wasmtime-publish +start = "2022-11-21" +end = "2024-06-26" +notes = "The Bytecode Alliance is the author of this crate." + [[audits.bytecode-alliance.wildcard-audits.wasmtime-wit-bindgen]] who = "Bobby Holley " criteria = "safe-to-deploy" @@ -1033,6 +1380,14 @@ start = "2023-01-20" end = "2024-06-26" notes = "The Bytecode Alliance is the author of this crate." +[[audits.bytecode-alliance.wildcard-audits.wasmtime-wmemcheck]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +user-id = 73222 # wasmtime-publish +start = "2022-11-27" +end = "2024-06-26" +notes = "The Bytecode Alliance is the author of this crate." + [[audits.bytecode-alliance.wildcard-audits.wast]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -1083,6 +1438,14 @@ start = "2021-10-29" end = "2024-06-26" notes = "The Bytecode Alliance is the author of this crate." +[[audits.bytecode-alliance.wildcard-audits.winch-codegen]] +who = "Bobby Holley " +criteria = "safe-to-deploy" +user-id = 73222 # wasmtime-publish +start = "2022-11-21" +end = "2024-06-26" +notes = "The Bytecode Alliance is the author of this crate." + [[audits.bytecode-alliance.wildcard-audits.wit-parser]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -1176,17 +1539,11 @@ criteria = "safe-to-deploy" version = "3.11.1" notes = "I am the author of this crate." -[[audits.bytecode-alliance.audits.cap-rand]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -version = "1.0.1" -notes = "The Bytecode Alliance is the author of this crate" - -[[audits.bytecode-alliance.audits.cap-rand]] -who = "Dan Gohman " +[[audits.bytecode-alliance.audits.cc]] +who = "Alex Crichton " criteria = "safe-to-deploy" -delta = "1.0.1 -> 1.0.14" -notes = "The Bytecode Alliance is the author of this crate." +version = "1.0.73" +notes = "I am the author of this crate." [[audits.bytecode-alliance.audits.cfg-if]] who = "Alex Crichton " @@ -1194,6 +1551,12 @@ criteria = "safe-to-deploy" version = "1.0.0" notes = "I am the author of this crate." +[[audits.bytecode-alliance.audits.codespan-reporting]] +who = "Jamey Sharp " +criteria = "safe-to-deploy" +version = "0.11.1" +notes = "This library uses `forbid(unsafe_code)` and has no filesystem or network I/O." + [[audits.bytecode-alliance.audits.criterion]] who = "Pat Hickey " criteria = "safe-to-deploy" @@ -1214,23 +1577,15 @@ who = "Benjamin Bouvier " criteria = "safe-to-deploy" version = "0.1.3" -[[audits.bytecode-alliance.audits.errno]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -version = "0.3.0" -notes = "This crate uses libc and windows-sys APIs to get and set the raw OS error value." - -[[audits.bytecode-alliance.audits.errno]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -delta = "0.3.0 -> 0.3.1" -notes = "Just a dependency version bump and a bug fix for redox" - -[[audits.bytecode-alliance.audits.errno-dragonfly]] -who = "Jamey Sharp " +[[audits.bytecode-alliance.audits.fallible-iterator]] +who = "Alex Crichton " criteria = "safe-to-deploy" -version = "0.1.2" -notes = "This should be portable to any POSIX system and seems like it should be part of the libc crate, but at any rate it's safe as is." +delta = "0.2.0 -> 0.3.0" +notes = """ +This major version update has a few minor breaking changes but everything +this crate has to do with iterators and `Result` and such. No `unsafe` or +anything like that, all looks good. +""" [[audits.bytecode-alliance.audits.fastrand]] who = "Alex Crichton " @@ -1241,34 +1596,6 @@ This update had a few doc updates but no otherwise-substantial source code updates. """ -[[audits.bytecode-alliance.audits.fd-lock]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -version = "3.0.9" -notes = "This crate uses unsafe to make Windows syscalls, to borrow an Fd with an appropriate lifetime, and to zero a windows API structure that appears to have a valid representation with zeroed memory." - -[[audits.bytecode-alliance.audits.fd-lock]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -delta = "3.0.9 -> 3.0.10" -notes = "Just a dependency version bump" - -[[audits.bytecode-alliance.audits.fd-lock]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -delta = "3.0.10 -> 3.0.12" -notes = "Just a dependency version bump" - -[[audits.bytecode-alliance.audits.file-per-thread-logger]] -who = "Alex Crichton " -criteria = "safe-to-deploy" -version = "0.1.5" -notes = """ -Contains no unsafe code but does write log files to the filesystem. Log files -are only created when requested by the application, however, and otherwise -only does its stated purpose. -""" - [[audits.bytecode-alliance.audits.foreign-types]] who = "Pat Hickey " criteria = "safe-to-deploy" @@ -1280,30 +1607,6 @@ who = "Pat Hickey " criteria = "safe-to-deploy" version = "0.1.1" -[[audits.bytecode-alliance.audits.fs-set-times]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -version = "0.18.0" -notes = "I am the author of this crate." - -[[audits.bytecode-alliance.audits.fs-set-times]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -delta = "0.18.0 -> 0.18.1" -notes = "The Bytecode Alliance is the author of this crate." - -[[audits.bytecode-alliance.audits.fs-set-times]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -delta = "0.18.1 -> 0.19.1" -notes = "Just a dependency version bump" - -[[audits.bytecode-alliance.audits.futures-channel]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -version = "0.3.27" -notes = "build.rs is just detecting the target and setting cfg. unsafety is for implementing a concurrency primitives using atomics and unsafecell, and is not obviously incorrect (this is the sort of thing I wouldn't certify as correct without formal methods)" - [[audits.bytecode-alliance.audits.fxprof-processed-profile]] who = "Jamey Sharp " criteria = "safe-to-deploy" @@ -1374,6 +1677,20 @@ criteria = "safe-to-deploy" delta = "1.0.0-rc.2 -> 1.0.0" notes = "Only minor changes made for a stable release." +[[audits.bytecode-alliance.audits.iana-time-zone]] +who = "Dan Gohman " +criteria = "safe-to-deploy" +version = "0.1.59" +notes = """ +I also manually ran windows-bindgen and confirmed that the output matches +the bindings checked into the repo. +""" + +[[audits.bytecode-alliance.audits.iana-time-zone-haiku]] +who = "Dan Gohman " +criteria = "safe-to-deploy" +version = "0.1.2" + [[audits.bytecode-alliance.audits.id-arena]] who = "Nick Fitzgerald " criteria = "safe-to-deploy" @@ -1391,24 +1708,6 @@ crate is broadly used throughout the ecosystem and does not contain anything suspicious. """ -[[audits.bytecode-alliance.audits.io-extras]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -version = "0.17.0" -notes = "I am the author of this crate." - -[[audits.bytecode-alliance.audits.io-extras]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -delta = "0.17.0 -> 0.17.2" -notes = "The Bytecode Alliance is the author of this crate." - -[[audits.bytecode-alliance.audits.io-extras]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -delta = "0.17.2 -> 0.17.4" -notes = "Just a dependency version bump" - [[audits.bytecode-alliance.audits.is-terminal]] who = "Dan Gohman " criteria = "safe-to-deploy" @@ -1418,6 +1717,26 @@ The is-terminal implementation code is now sync'd up with the prototype implementation in the Rust standard library. """ +[[audits.bytecode-alliance.audits.ittapi]] +who = "Andrew Brown " +criteria = "safe-to-deploy" +version = "0.3.4" + +[[audits.bytecode-alliance.audits.ittapi]] +who = "rahulchaphalkar " +criteria = "safe-to-deploy" +delta = "0.3.4 -> 0.4.0" + +[[audits.bytecode-alliance.audits.ittapi-sys]] +who = "Andrew Brown " +criteria = "safe-to-deploy" +version = "0.3.4" + +[[audits.bytecode-alliance.audits.ittapi-sys]] +who = "rahulchaphalkar " +criteria = "safe-to-deploy" +delta = "0.3.4 -> 0.4.0" + [[audits.bytecode-alliance.audits.leb128]] who = "Nick Fitzgerald " criteria = "safe-to-deploy" @@ -1445,6 +1764,12 @@ criteria = "safe-to-deploy" delta = "0.7.1 -> 0.8.0" notes = "This was a small update to the crate which has to do with Rust language features and compiler versions, no substantial changes." +[[audits.bytecode-alliance.audits.memoffset]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "0.8.0 -> 0.9.0" +notes = "No major changes in the crate, mostly updates to use new nightly Rust features." + [[audits.bytecode-alliance.audits.miniz_oxide]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -1503,35 +1828,6 @@ criteria = "safe-to-deploy" version = "0.3.25" notes = "This crate shells out to the pkg-config executable, but it appears to sanitize inputs reasonably." -[[audits.bytecode-alliance.audits.proc-macro2]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -delta = "1.0.51 -> 1.0.57" - -[[audits.bytecode-alliance.audits.proc-macro2]] -who = "Alex Crichton " -criteria = "safe-to-deploy" -delta = "1.0.59 -> 1.0.63" -notes = """ -This is a routine update for new nightly features and new syntax popping up on -nightly, nothing out of the ordinary. -""" - -[[audits.bytecode-alliance.audits.pulldown-cmark]] -who = "Alex Crichton " -criteria = "safe-to-deploy" -version = "0.8.0" -notes = """ -This crate has `unsafe` blocks and they're all related to SIMD-acceleration and -are otherwise not doing other `unsafe` operations. Additionally the crate does -not do anything other than markdown rendering as is expected. -""" - -[[audits.bytecode-alliance.audits.quote]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -delta = "1.0.23 -> 1.0.27" - [[audits.bytecode-alliance.audits.rustc-demangle]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -1544,29 +1840,15 @@ criteria = "safe-to-deploy" version = "1.0.17" notes = "plenty of unsafe pointer and vec tricks, but in well-structured and commented code that appears to be correct" -[[audits.bytecode-alliance.audits.system-interface]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -version = "0.25.0" -notes = "The Bytecode Alliance is the author of this crate." - -[[audits.bytecode-alliance.audits.system-interface]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -delta = "0.25.0 -> 0.25.4" -notes = "The Bytecode Alliance is the author of this crate." - -[[audits.bytecode-alliance.audits.system-interface]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -delta = "0.25.4 -> 0.25.6" -notes = "Just a dependency version bump" - -[[audits.bytecode-alliance.audits.system-interface]] -who = "Dan Gohman " +[[audits.bytecode-alliance.audits.sptr]] +who = "Alex Crichton " criteria = "safe-to-deploy" -delta = "0.25.6 -> 0.25.7" -notes = "This is a minor bug-fix update." +version = "0.3.2" +notes = """ +This crate is 90% documentation and does contain a good deal of `unsafe` code, +but it's all doing what it says on the tin: being a stable polyfill for strict +provenance APIs in the standard library while they're on Nightly. +""" [[audits.bytecode-alliance.audits.tinyvec]] who = "Alex Crichton " @@ -1610,15 +1892,6 @@ criteria = "safe-to-deploy" version = "0.2.4" notes = "Implements a concurrency primitive with atomics, and is not obviously incorrect" -[[audits.bytecode-alliance.audits.unicase]] -who = "Alex Crichton " -criteria = "safe-to-deploy" -version = "2.6.0" -notes = """ -This crate contains no `unsafe` code and no unnecessary use of the standard -library. -""" - [[audits.bytecode-alliance.audits.unicode-bidi]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -1651,69 +1924,29 @@ who = "Pat Hickey " criteria = "safe-to-deploy" version = "0.3.0" -[[audits.bytecode-alliance.audits.wasm-encoder]] -who = "Alex Crichton " -criteria = "safe-to-deploy" -version = "0.25.0" -notes = "The Bytecode Alliance is the author of this crate." - [[audits.bytecode-alliance.audits.wast]] who = "Alex Crichton " criteria = "safe-to-deploy" version = "35.0.2" notes = "The Bytecode Alliance is the author of this crate." -[[audits.bytecode-alliance.audits.winx]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -version = "0.34.0" -notes = "I am the author of this crate." - -[[audits.bytecode-alliance.audits.winx]] -who = "Pat Hickey " -criteria = "safe-to-deploy" -delta = "0.34.0 -> 0.35.0" -notes = "Dan Gohman, a Bytecode Alliance core contributor, is the author of this crate." - -[[audits.bytecode-alliance.audits.winx]] -who = "Dan Gohman " -criteria = "safe-to-deploy" -delta = "0.35.0 -> 0.35.1" -notes = "Just a dependency version bump" - [[audits.embark-studios.audits.idna]] who = "Johan Andersson " criteria = "safe-to-deploy" delta = "0.3.0 -> 0.4.0" notes = "No unsafe usage or ambient capabilities" -[[audits.embark-studios.audits.ittapi]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -version = "0.3.3" -notes = "Lots of unsafe code for calling into C FFI functions, looks pretty simple and sound though. No ambient capabilities" - -[[audits.embark-studios.audits.ittapi-sys]] -who = "Johan Andersson " -criteria = "safe-to-deploy" -version = "0.3.3" -notes = """ -Builds C/asm dependency which this review has not audited in detail, but is well established from Intel. -Exposes FFI types & functions generated through bindgen. No other logic. -No ambient capabilities -""" - -[[audits.embark-studios.audits.thiserror]] +[[audits.embark-studios.audits.strum]] who = "Johan Andersson " criteria = "safe-to-deploy" -version = "1.0.40" -notes = "Wrapper over implementation crate, found no unsafe or ambient capabilities used" +version = "0.24.1" +notes = "Tiny layer on top of the proc macro crate, found no unsafe or system usage" -[[audits.embark-studios.audits.thiserror-impl]] +[[audits.embark-studios.audits.strum_macros]] who = "Johan Andersson " criteria = "safe-to-deploy" -version = "1.0.40" -notes = "Found no unsafe or ambient capabilities used" +version = "0.24.3" +notes = "Proc macro. No unsafe or added ambient capabilities" [[audits.embark-studios.audits.vec_map]] who = "Johan Andersson " @@ -1749,12 +1982,36 @@ criteria = "safe-to-deploy" version = "0.3.1" aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/main/cargo-vet/audits.toml?format=TEXT" +[[audits.google.audits.link-cplusplus]] +who = "George Burgess IV " +criteria = "safe-to-deploy" +version = "1.0.9" +notes = """ +This crate exists simply to link with libcxx or libstdcxx. No assertions +are made about the safety of either of those libraries. :) +""" +aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/main/cargo-vet/audits.toml?format=TEXT" + [[audits.google.audits.openssl-macros]] who = "George Burgess IV " criteria = "safe-to-deploy" delta = "0.1.0 -> 0.1.1" aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/main/cargo-vet/audits.toml?format=TEXT" +[[audits.google.audits.pin-project-lite]] +who = "David Koloski " +criteria = "safe-to-deploy" +version = "0.2.9" +notes = "Reviewed on https://fxrev.dev/824504" +aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.pin-project-lite]] +who = "David Koloski " +criteria = "safe-to-deploy" +delta = "0.2.9 -> 0.2.13" +notes = "Audited at https://fxrev.dev/946396" +aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" + [[audits.google.audits.proc-macro-error-attr]] who = "George Burgess IV " criteria = "safe-to-deploy" @@ -1787,6 +2044,11 @@ who = "David Cook " criteria = "safe-to-deploy" delta = "1.17.2 -> 1.18.0" +[[audits.isrg.audits.once_cell]] +who = "Brandon Pitman " +criteria = "safe-to-deploy" +delta = "1.18.0 -> 1.19.0" + [[audits.isrg.audits.rand_chacha]] who = "David Cook " criteria = "safe-to-deploy" @@ -1831,6 +2093,15 @@ renew = false notes = "I've reviewed every source contribution that was neither authored nor reviewed by Mozilla." aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" +[[audits.mozilla.wildcard-audits.encoding_rs]] +who = "Henri Sivonen " +criteria = "safe-to-deploy" +user-id = 4484 # Henri Sivonen (hsivonen) +start = "2019-02-26" +end = "2024-08-28" +notes = "I, Henri Sivonen, wrote encoding_rs for Gecko and have reviewed contributions by others. There are two caveats to the certification: 1) The crate does things that are documented to be UB but that do not appear to actually be UB due to integer types differing from the general rule; https://github.com/hsivonen/encoding_rs/issues/79 . 2) It would be prudent to re-review the code that reinterprets buffers of integers as SIMD vectors; see https://github.com/hsivonen/encoding_rs/issues/87 ." +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.wildcard-audits.unicode-segmentation]] who = "Manish Goregaokar " criteria = "safe-to-deploy" @@ -1858,6 +2129,25 @@ end = "2024-05-03" notes = "All code written or reviewed by Manish" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" +[[audits.mozilla.audits.android_system_properties]] +who = "Nicolas Silva " +criteria = "safe-to-deploy" +version = "0.1.2" +notes = "I wrote this crate, reviewed by jimb. It is mostly a Rust port of some C++ code we already ship." +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.android_system_properties]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.1.2 -> 0.1.4" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.android_system_properties]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.1.4 -> 0.1.5" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.autocfg]] who = "Josh Stone " criteria = "safe-to-deploy" @@ -1902,6 +2192,12 @@ criteria = "safe-to-deploy" delta = "0.68.1 -> 0.69.1" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" +[[audits.mozilla.audits.bindgen]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "0.69.1 -> 0.69.2" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + [[audits.mozilla.audits.bitflags]] who = "Alex Franchuk " criteria = "safe-to-deploy" @@ -1934,6 +2230,18 @@ delta = "2.4.0 -> 2.4.1" notes = "Only allowing new clippy lints" aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" +[[audits.mozilla.audits.cc]] +who = "Mike Hommey " +criteria = "safe-to-deploy" +delta = "1.0.73 -> 1.0.78" +aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" + +[[audits.mozilla.audits.cc]] +who = "Jan-Erik Rediger " +criteria = "safe-to-deploy" +delta = "1.0.78 -> 1.0.83" +aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" + [[audits.mozilla.audits.crypto-common]] who = "Mike Hommey " criteria = "safe-to-deploy" @@ -2086,103 +2394,6 @@ criteria = "safe-to-deploy" delta = "0.3.25 -> 0.3.26" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.precomputed-hash]] -who = "Bobby Holley " -criteria = "safe-to-deploy" -version = "0.1.1" -notes = "This is a trivial crate." -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.proc-macro2]] -who = "Nika Layzell " -criteria = "safe-to-deploy" -version = "1.0.39" -notes = """ -`proc-macro2` acts as either a thin(-ish) wrapper around the std-provided -`proc_macro` crate, or as a fallback implementation of the crate, depending on -where it is used. - -If using this crate on older versions of rustc (1.56 and earlier), it will -temporarily replace the panic handler while initializing in order to detect if -it is running within a `proc_macro`, which could lead to surprising behaviour. -This should not be an issue for more recent compiler versions, which support -`proc_macro::is_available()`. - -The `proc-macro2` crate's fallback behaviour is not identical to the complex -behaviour of the rustc compiler (e.g. it does not perform unicode normalization -for identifiers), however it behaves well enough for its intended use-case -(tests and scripts processing rust code). - -`proc-macro2` does not use unsafe code, however exposes one `unsafe` API to -allow bypassing checks in the fallback implementation when constructing -`Literal` using `from_str_unchecked`. This was intended to only be used by the -`quote!` macro, however it has been removed -(https://github.com/dtolnay/quote/commit/f621fe64a8a501cae8e95ebd6848e637bbc79078), -and is likely completely unused. Even when used, this API shouldn't be able to -cause unsoundness. -""" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.proc-macro2]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "1.0.39 -> 1.0.43" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.proc-macro2]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "1.0.43 -> 1.0.49" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.proc-macro2]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "1.0.49 -> 1.0.51" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.proc-macro2]] -who = "Jan-Erik Rediger " -criteria = "safe-to-deploy" -delta = "1.0.57 -> 1.0.59" -notes = "Enabled on Wasm" -aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" - -[[audits.mozilla.audits.quote]] -who = "Nika Layzell " -criteria = "safe-to-deploy" -version = "1.0.18" -notes = """ -`quote` is a utility crate used by proc-macros to generate TokenStreams -conveniently from source code. The bulk of the logic is some complex -interlocking `macro_rules!` macros which are used to parse and build the -`TokenStream` within the proc-macro. - -This crate contains no unsafe code, and the internal logic, while difficult to -read, is generally straightforward. I have audited the the quote macros, ident -formatter, and runtime logic. -""" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.quote]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "1.0.18 -> 1.0.21" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.quote]] -who = "Mike Hommey " -criteria = "safe-to-deploy" -delta = "1.0.21 -> 1.0.23" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.quote]] -who = "Jan-Erik Rediger " -criteria = "safe-to-deploy" -delta = "1.0.27 -> 1.0.28" -notes = "Enabled on wasm targets" -aggregated-from = "https://raw.githubusercontent.com/mozilla/glean/main/supply-chain/audits.toml" - [[audits.mozilla.audits.rustc-hash]] who = "Bobby Holley " criteria = "safe-to-deploy" @@ -2196,18 +2407,6 @@ criteria = "safe-to-deploy" delta = "0.10.2 -> 0.10.6" aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" -[[audits.mozilla.audits.time-core]] -who = "Kershaw Chang " -criteria = "safe-to-deploy" -version = "0.1.0" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - -[[audits.mozilla.audits.time-core]] -who = "Kershaw Chang " -criteria = "safe-to-deploy" -delta = "0.1.0 -> 0.1.1" -aggregated-from = "https://hg.mozilla.org/mozilla-central/raw-file/tip/supply-chain/audits.toml" - [[audits.mozilla.audits.unicode-bidi]] who = "Makoto Kato " criteria = "safe-to-deploy"