(not at the head of any monitored branch or PR)
2026-04-01 23:41.08: New job: test server-reason-react.0.5.0, using opam 2.1
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29631/head (349a37baa45c59815f2dc7b56e76ea0458925ba8)
                              on debian-13-ocaml-5.4/amd64

To reproduce locally:

cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29631/head" && git reset --hard 349a37ba
git fetch origin master
git merge --no-edit 4b07b3403ca6031c1a5af00d48d6aa90de102e54
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-5.4@sha256:13f453bea920b1b323f4a04f2b81ee06601f2feba7e1f1aa31e088bc65526b6e
USER 1000:1000
WORKDIR /home/opam
RUN sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam
RUN opam init --reinit -ni
RUN opam option solver=builtin-0install && opam config report
ENV OPAMDOWNLOADJOBS="1"
ENV OPAMERRLOGLEN="0"
ENV OPAMPRECISETRACKING="1"
ENV CI="true"
ENV OPAM_REPO_CI="true"
RUN rm -rf opam-repository/
COPY --chown=1000:1000 . opam-repository/
RUN opam repository set-url --strict default opam-repository/
RUN opam update --depexts || true
RUN opam pin add -k version -yn server-reason-react.0.5.0 0.5.0
RUN opam reinstall server-reason-react.0.5.0; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    partial_fails=""; \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'server-reason-react.0.5.0' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1
RUN (opam reinstall --with-test server-reason-react.0.5.0) || true
RUN opam reinstall --with-test --verbose server-reason-react.0.5.0; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    partial_fails=""; \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'server-reason-react.0.5.0' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1

END-OF-DOCKERFILE
docker build -f ../Dockerfile .

2026-04-01 23:41.08: Using cache hint "ocaml/opam:debian-13-ocaml-5.4@sha256:13f453bea920b1b323f4a04f2b81ee06601f2feba7e1f1aa31e088bc65526b6e-server-reason-react.0.5.0-349a37baa45c59815f2dc7b56e76ea0458925ba8"
2026-04-01 23:41.08: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-5.4@sha256:13f453bea920b1b323f4a04f2b81ee06601f2feba7e1f1aa31e088bc65526b6e)
 (user (uid 1000) (gid 1000))
 (workdir /home/opam)
 (run (shell "sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam"))
 (run (network host)
      (shell "opam init --reinit --config .opamrc-sandbox -ni"))
 (run (shell "opam option solver=builtin-0install && opam config report"))
 (env OPAMDOWNLOADJOBS 1)
 (env OPAMERRLOGLEN 0)
 (env OPAMPRECISETRACKING 1)
 (env CI true)
 (env OPAM_REPO_CI true)
 (run (shell "rm -rf opam-repository/"))
 (copy (src .) (dst opam-repository/))
 (run (shell "opam repository set-url --strict default opam-repository/"))
 (run (network host)
      (shell "opam update --depexts || true"))
 (run (shell "opam pin add -k version -yn server-reason-react.0.5.0 0.5.0"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall server-reason-react.0.5.0;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        partial_fails=\"\";\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'server-reason-react.0.5.0' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
 (run (network host)
      (shell "(opam reinstall --with-test server-reason-react.0.5.0) || true"))
 (run (shell  "opam reinstall --with-test --verbose server-reason-react.0.5.0;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        partial_fails=\"\";\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'server-reason-react.0.5.0' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2026-04-01 23:41.08: Waiting for resource in pool OCluster
2026-04-02 04:01.48: Waiting for worker…
2026-04-02 04:04.51: Got resource from pool OCluster
Building on toxis.caelum.ci.dev
All commits already cached
HEAD is now at 4b07b3403c Merge pull request #29556 from samoht/release-alcobar-v0.3
Updating 4b07b3403c..349a37baa4
Fast-forward
 .../server-reason-react.0.5.0/opam                 | 62 ++++++++++++++++++++++
 1 file changed, 62 insertions(+)
 create mode 100644 packages/server-reason-react/server-reason-react.0.5.0/opam

(from ocaml/opam:debian-13-ocaml-5.4@sha256:13f453bea920b1b323f4a04f2b81ee06601f2feba7e1f1aa31e088bc65526b6e)
2026-04-02 04:05.04 ---> using "04accec92e2bf0fc058f8f78760257a004a3abe580d28a2e712fdd6bd38bbb3e" from cache

/: (user (uid 1000) (gid 1000))

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam"))
2026-04-02 04:05.04 ---> using "8bb561f39fd2a2a5605ba8ddb5a51976ec8570f261e7c5c002835aee4a4e9f0c" from cache

/home/opam: (run (network host)
                 (shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally from built-in defaults.
Checking for available remotes: rsync and local, git.
  - you won't be able to use mercurial repositories unless you install the hg command on your system.
  - you won't be able to use darcs repositories unless you install the darcs command on your system.

This development version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.1, which can't be reverted.
You may want to back it up before going further.

Continue? [Y/n] y
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-04-02 04:06.29 ---> saved as "f7de5460c707a8b48c09efe6eae0db8a2ecc877e2973a61a3365ea4371c041ef"

/home/opam: (run (shell "opam option solver=builtin-0install && opam config report"))
Set to 'builtin-0install' the field solver in global configuration
# opam config report
# opam-version         2.1.6 (263921263e1f745613e2882745114b7b08f3608b) 
# self-upgrade         no
# system               arch=x86_64 os=linux os-distribution=debian os-version=13
# solver               builtin-0install
# install-criteria     
# upgrade-criteria     
# jobs                 71
# repositories         1 (version-controlled)
# pinned               1 (version)
# current-switch       5.4
# ocaml:native         true
# ocaml:native-tools   true
# ocaml:native-dynlink true
# ocaml:stubsdir       /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled   false
# ocaml:compiler       5.4.1
2026-04-02 04:06.32 ---> saved as "f7f796062ddae31615243e46fb33ac21bcab81d8390a2a6483f99ce577cf3f83"

/home/opam: (env OPAMDOWNLOADJOBS 1)

/home/opam: (env OPAMERRLOGLEN 0)

/home/opam: (env OPAMPRECISETRACKING 1)

/home/opam: (env CI true)

/home/opam: (env OPAM_REPO_CI true)

/home/opam: (run (shell "rm -rf opam-repository/"))
2026-04-02 04:06.43 ---> saved as "0eaba563a2084dfdee48a1e67319ef97652c060780fd6c1b36823561611b4742"

/home/opam: (copy (src .) (dst opam-repository/))
2026-04-02 04:07.08 ---> saved as "ccc21bc3799340f4035d6f78e0c4bbb3d970278b406c9ca38bcfd754353ef66d"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-04-02 04:07.23 ---> saved as "c2e68f5d3fb2a329f276420f5223c3fe83df133194a2d161c19361586b32761d"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian trixie InRelease
- Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
- Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
- Get:4 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [119 kB]
- Fetched 210 kB in 0s (1766 kB/s)
- Reading package lists...
- 
2026-04-02 04:07.26 ---> saved as "aeecefd0d66405f890538380dff5be668a463e8c7acc31fcec1df8f990c75c73"

/home/opam: (run (shell "opam pin add -k version -yn server-reason-react.0.5.0 0.5.0"))
server-reason-react is now pinned to version 0.5.0
2026-04-02 04:07.29 ---> saved as "35e4060e836e11d39d399e4a32d73c0c3088818686a51d1d291a3b8b7e503434"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall server-reason-react.0.5.0;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        partial_fails=\"\";\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'server-reason-react.0.5.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
server-reason-react.0.5.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
  - install ocamlbuild          0.16.1   [required by uucp, uutf]
  - install cmdliner            2.1.0    [required by uucp, melange, uutf]
  - install dune                3.22.0   [required by server-reason-react]
  - install conf-gmp            5        [required by zarith]
  - install conf-pkg-config     4        [required by zarith]
  - install ocamlfind           1.9.8    [required by uutf, uucp, zarith]
  - install yojson              3.0.0    [required by server-reason-react]
  - install stringext           1.6.0    [required by uri]
  - install stdlib-shims        0.3.0    [required by integers]
  - install sexplib0            v0.17.0  [required by ppxlib]
  - install ppx_derivers        1.2.1    [required by ppxlib]
  - install ocaml-syntax-shims  1.0.0    [required by angstrom]
  - install ocaml-compiler-libs v0.17.0  [required by ppxlib]
  - install menhirSdk           20260209 [required by menhir]
  - install menhirLib           20260209 [required by menhir]
  - install menhirGLR           20260209 [required by menhir]
  - install menhirCST           20260209 [required by menhir]
  - install fix                 20250919 [required by reason]
  - install dune-build-info     3.22.0   [required by melange]
  - install csexp               1.5.2    [required by dune-configurator]
  - install cppo                1.8.0    [required by lwt, melange]
  - install zarith              1.14     [required by server-reason-react]
  - install topkg               1.1.1    [required by uucp, uutf]
  - install base-bytes          base     [required by ocplib-endian]
  - install integers            0.7.0    [required by server-reason-react]
  - install ppxlib              0.38.0   [required by server-reason-react]
  - install menhir              20260209 [required by melange]
  - install dune-configurator   3.22.0   [required by lwt]
  - install merlin-extend       0.6.2    [required by reason]
  - install uutf                1.0.4    [required by server-reason-react]
  - install uucp                17.0.0   [required by server-reason-react]
  - install ocplib-endian       1.2      [required by lwt]
  - install melange-json-native 2.0.0    [required by server-reason-react]
  - install melange             6.0.1-54 [required by server-reason-react]
  - install ctypes              0.24.0   [required by quickjs]
  - install bigstringaf         0.10.0   [required by angstrom]
  - install reason              3.17.3   [required by server-reason-react]
  - install lwt                 6.1.1    [required by server-reason-react]
  - install melange-json        2.0.0    [required by server-reason-react]
  - install melange-fetch       0.2.0    [required by server-reason-react]
  - install quickjs             0.4.2    [required by server-reason-react]
  - install angstrom            0.16.1   [required by uri]
  - install reason-react-ppx    0.17.0   [required by reason-react]
  - install lwt_ppx             6.1.0    [required by server-reason-react]
  - install melange-webapi      0.22.0   [required by server-reason-react]
  - install uri                 4.4.0    [required by server-reason-react]
  - install reason-react        0.17.0   [required by server-reason-react]
  - install server-reason-react 0.5.0*
===== 48 to install =====

The following system packages will first need to be installed:
    libgmp-dev pkg-config

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
Let opam run your package manager to install the required system packages?
(answer 'n' for other options) [Y/n] y
+ /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "libgmp-dev" "pkg-config"
- Selecting previously unselected package libgmpxx4ldbl:amd64.
- (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20654 files and directories currently installed.)
- Preparing to unpack .../0-libgmpxx4ldbl_2%3a6.3.0+dfsg-3_amd64.deb ...
- Unpacking libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ...
- Selecting previously unselected package libgmp-dev:amd64.
- Preparing to unpack .../1-libgmp-dev_2%3a6.3.0+dfsg-3_amd64.deb ...
- Unpacking libgmp-dev:amd64 (2:6.3.0+dfsg-3) ...
- Selecting previously unselected package libpkgconf3:amd64.
- Preparing to unpack .../2-libpkgconf3_1.8.1-4_amd64.deb ...
- Unpacking libpkgconf3:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkgconf-bin.
- Preparing to unpack .../3-pkgconf-bin_1.8.1-4_amd64.deb ...
- Unpacking pkgconf-bin (1.8.1-4) ...
- Selecting previously unselected package pkgconf:amd64.
- Preparing to unpack .../4-pkgconf_1.8.1-4_amd64.deb ...
- Unpacking pkgconf:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkg-config:amd64.
- Preparing to unpack .../5-pkg-config_1.8.1-4_amd64.deb ...
- Unpacking pkg-config:amd64 (1.8.1-4) ...
- Setting up libpkgconf3:amd64 (1.8.1-4) ...
- Setting up libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ...
- Setting up pkgconf-bin (1.8.1-4) ...
- Setting up libgmp-dev:amd64 (2:6.3.0+dfsg-3) ...
- Setting up pkgconf:amd64 (1.8.1-4) ...
- Setting up pkg-config:amd64 (1.8.1-4) ...
- Processing triggers for libc-bin (2.41-12+deb13u2) ...

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved angstrom.0.16.1  (cached)
-> retrieved bigstringaf.0.10.0  (cached)
-> retrieved cmdliner.2.1.0  (cached)
-> retrieved conf-gmp.5  (cached)
-> retrieved cppo.1.8.0  (cached)
-> installed conf-gmp.5
-> installed conf-pkg-config.4
-> retrieved csexp.1.5.2  (cached)
-> retrieved ctypes.0.24.0  (cached)
-> retrieved dune.3.22.0  (cached)
-> retrieved dune-build-info.3.22.0  (cached)
-> retrieved dune-configurator.3.22.0  (cached)
-> retrieved fix.20250919  (cached)
-> retrieved integers.0.7.0  (cached)
-> retrieved lwt.6.1.1  (cached)
-> retrieved lwt_ppx.6.1.0  (cached)
-> installed cmdliner.2.1.0
-> retrieved melange.6.0.1-54  (cached)
-> retrieved melange-fetch.0.2.0  (cached)
-> retrieved melange-json.2.0.0  (cached)
-> retrieved melange-json-native.2.0.0  (cached)
-> retrieved melange-webapi.0.22.0  (cached)
-> retrieved menhir.20260209  (cached)
-> retrieved menhirCST.20260209  (cached)
-> retrieved menhirGLR.20260209  (cached)
-> retrieved menhirLib.20260209  (cached)
-> retrieved menhirSdk.20260209  (cached)
-> retrieved merlin-extend.0.6.2  (cached)
-> retrieved ocaml-compiler-libs.v0.17.0  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved ocplib-endian.1.2  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppxlib.0.38.0  (cached)
-> retrieved quickjs.0.4.2  (cached)
-> retrieved reason.3.17.3  (cached)
-> retrieved reason-react.0.17.0  (cached)
-> retrieved reason-react-ppx.0.17.0  (cached)
-> retrieved server-reason-react.0.5.0  (cached)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved stringext.1.6.0  (cached)
-> retrieved topkg.1.1.1  (cached)
-> retrieved uri.4.4.0  (cached)
-> retrieved uucp.17.0.0  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved yojson.3.0.0  (cached)
-> retrieved zarith.1.14  (cached)
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed ocamlbuild.0.16.1
-> installed zarith.1.14
-> installed topkg.1.1.1
-> installed uutf.1.0.4
-> installed dune.3.22.0
-> installed csexp.1.5.2
-> installed menhirCST.20260209
-> installed ppx_derivers.1.2.1
-> installed stringext.1.6.0
-> installed stdlib-shims.0.3.0
-> installed fix.20250919
-> installed dune-build-info.3.22.0
-> installed menhirLib.20260209
-> installed menhirSdk.20260209
-> installed cppo.1.8.0
-> installed menhirGLR.20260209
-> installed sexplib0.v0.17.0
-> installed integers.0.7.0
-> installed ocaml-syntax-shims.1.0.0
-> installed merlin-extend.0.6.2
-> installed ocplib-endian.1.2
-> installed yojson.3.0.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed dune-configurator.3.22.0
-> installed bigstringaf.0.10.0
-> installed angstrom.0.16.1
-> installed uri.4.4.0
-> installed lwt.6.1.1
-> installed ctypes.0.24.0
-> installed quickjs.0.4.2
-> installed menhir.20260209
-> installed uucp.17.0.0
-> installed ppxlib.0.38.0
-> installed melange-json-native.2.0.0
-> installed lwt_ppx.6.1.0
-> installed reason.3.17.3
-> installed reason-react-ppx.0.17.0
-> installed melange.6.0.1-54
-> installed melange-fetch.0.2.0
-> installed melange-json.2.0.0
-> installed reason-react.0.17.0
-> installed melange-webapi.0.22.0
-> installed server-reason-react.0.5.0
Done.
# Run eval $(opam env) to update the current shell environment
2026-04-02 04:11.12 ---> saved as "2d28a54dfd16916bf31dc260262f8a3b51fa93586642fdb1c13e542731c52998"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test server-reason-react.0.5.0) || true"))
The following actions will be performed:
  - install   ocaml_intrinsics_kernel v0.17.1   [required by base]
  - install   ocaml-version           4.0.4     [required by ocamlformat-lib]
  - install   either                  1.0.0     [required by ocamlformat-lib]
  - install   fmt                     0.11.0    [required by server-reason-react]
  - install   astring                 0.8.5     [required by alcotest]
  - install   uuseg                   17.0.0    [required by ocamlformat-lib]
  - install   merlin-lib              5.6.1-504 [required by merlin]
  - install   camlp-streams           5.0.1     [required by ocamlformat-lib]
  - install   ocp-indent              1.9.0     [required by ocamlformat-lib]
  - install   re                      1.14.0    [required by alcotest, ocamlformat]
  - install   base                    v0.17.3   [required by ocamlformat-lib]
  - install   logs                    0.10.0    [required by alcotest-lwt]
  - install   fpath                   0.7.3     [required by ocamlformat-lib]
  - install   ocaml-index             5.6.1-504
  - install   dot-merlin-reader       5.6.1-504 [required by merlin]
  - install   alcotest                1.9.1     [required by server-reason-react]
  - install   stdio                   v0.17.0   [required by ocamlformat-lib]
  - install   merlin                  5.6.1-504 [required by server-reason-react]
  - install   alcotest-lwt            1.9.1     [required by server-reason-react]
  - install   ocamlformat-lib         0.28.1    [required by ocamlformat]
  - install   ocamlformat             0.28.1    [required by server-reason-react]
  - recompile server-reason-react     0.5.0*
===== 21 to install | 1 to recompile =====

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1  (https://opam.ocaml.org/cache)
-> retrieved alcotest-lwt.1.9.1  (cached)
-> retrieved astring.0.8.5  (https://opam.ocaml.org/cache)
-> retrieved base.v0.17.3  (https://opam.ocaml.org/cache)
-> retrieved camlp-streams.5.0.1  (https://opam.ocaml.org/cache)
-> installed camlp-streams.5.0.1
-> installed astring.0.8.5
-> retrieved dot-merlin-reader.5.6.1-504  (https://opam.ocaml.org/cache)
-> retrieved either.1.0.0  (https://opam.ocaml.org/cache)
-> retrieved fmt.0.11.0  (https://opam.ocaml.org/cache)
-> retrieved fpath.0.7.3  (https://opam.ocaml.org/cache)
-> installed either.1.0.0
-> retrieved logs.0.10.0  (https://opam.ocaml.org/cache)
-> installed fpath.0.7.3
-> installed fmt.0.11.0
-> retrieved merlin.5.6.1-504  (cached)
-> installed logs.0.10.0
-> retrieved merlin-lib.5.6.1-504  (cached)
-> retrieved ocaml-index.5.6.1-504  (cached)
-> retrieved ocaml-version.4.0.4  (https://opam.ocaml.org/cache)
-> retrieved ocaml_intrinsics_kernel.v0.17.1  (https://opam.ocaml.org/cache)
-> installed ocaml-version.4.0.4
-> installed ocaml_intrinsics_kernel.v0.17.1
-> retrieved ocamlformat.0.28.1  (https://opam.ocaml.org/cache)
-> retrieved ocamlformat-lib.0.28.1  (cached)
-> retrieved ocp-indent.1.9.0  (https://opam.ocaml.org/cache)
-> retrieved re.1.14.0  (https://opam.ocaml.org/cache)
-> retrieved stdio.v0.17.0  (https://opam.ocaml.org/cache)
-> retrieved uuseg.17.0.0  (https://opam.ocaml.org/cache)
-> installed re.1.14.0
-> installed ocp-indent.1.9.0
-> installed uuseg.17.0.0
-> installed alcotest.1.9.1
-> installed alcotest-lwt.1.9.1
-> installed base.v0.17.3
-> installed stdio.v0.17.0
-> removed   server-reason-react.0.5.0
-> installed merlin-lib.5.6.1-504
-> installed dot-merlin-reader.5.6.1-504
-> installed ocaml-index.5.6.1-504
-> installed merlin.5.6.1-504
-> installed ocamlformat-lib.0.28.1
-> installed ocamlformat.0.28.1
[ERROR] The compilation of server-reason-react.0.5.0 failed at "dune build -p server-reason-react -j 71 @install @runtest".

#=== ERROR while compiling server-reason-react.0.5.0 ==========================#
# context              2.1.6 | linux/x86_64 | ocaml-base-compiler.5.4.1 | pinned(https://github.com/ml-in-barcelona/server-reason-react/releases/download/0.5.0/server-reason-react-0.5.0.tbz)
# path                 ~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0
# command              ~/.opam/opam-init/hooks/sandbox.sh build dune build -p server-reason-react -j 71 @install @runtest
# exit-code            1
# env-file             ~/.opam/log/server-reason-react-7-96e8fb.env
# output-file          ~/.opam/log/server-reason-react-7-96e8fb.out
### output ###
# File "demo/dream-nested-router/dune", line 5, characters 2-7:
# 5 |   dream
#       ^^^^^
# Error: Library "dream" not found.
# -> required by _build/default/demo/dream-nested-router/test_router_rsc.exe
# -> required by alias demo/dream-nested-router/runtest-test_router_rsc in
#    demo/dream-nested-router/dune:2
# -> required by alias demo/dream-nested-router/runtest
# (cd _build/default/packages/melange.ppx/xxhash && ./test_xxh64.exe)
# Testing `XXH64'.
# This run has ID `CAHM6049'.
# 
#   [OK]          hash                   0   "".
#   [OK]          hash                   1   "a".
#   [OK]          hash                   2   "as".
#   [OK]          hash                   3   "asd".
#   [OK]          hash                   4   "asdf".
#   [OK]          hash                   5   "abc".
#   [OK]          hash                   6   "abc".
#   [OK]          hash                   7   "abcd".
#   [OK]          hash                   8   "abcde".
#   [OK]          hash                   9   "abcdef".
#   [OK]          hash                  10   "abcdefg".
#   [OK]          hash                  11   "abcdefgh".
#   [OK]          hash                  12   "abcdefghi".
#   [OK]          hash                  13   "abcdefghij".
#   [OK]          hash                  14   "abcdefghijklmnopqrstuvwxyz012345".
#   [OK]          hash                  15   "abcdefghijklmnopqrstuvwxyz0123456...
#   [OK]          hash                  16   "Call me Ishmael. Some years ago--...
#   [OK]          hash                  17   "Lorem ipsum dolor sit amet, conse...
#   [OK]          hash · to_hex          0   "I want an unsigned 64-bit seed!".
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/melange.ppx/xxhash/_build/_tests/XXH64'.
# Test Successful in 0.001s. 19 tests run.
# (cd _build/default/packages/url/test && ./test_native.exe)
# Testing `URL'.
# This run has ID `NR2IN7X5'.
# 
#   [OK]          URL                       0   make.
#   [OK]          URL                       1   makeWith.
#   [OK]          URL                       2   makeWith and relative base.
#   [OK]          URL                       3   host.
#   [OK]          URL                       4   hostname.
#   [OK]          URL                       5   setHostname.
#   [OK]          URL                       6   pathname.
#   [OK]          URL                       7   origin.
#   [OK]          URL                       8   href.
#   [OK]          URL                       9   port.
#   [OK]          URL                      10   hash.
#   [OK]          URL                      11   setHash.
#   [OK]          URL                      12   search.
#   [OK]          URL                      13   protocol.
#   [OK]          URL                      14   setProtocol.
#   [OK]          URL                      15   username.
#   [OK]          URL                      16   setUsername.
#   [OK]          URL                      17   password.
#   [OK]          URL                      18   setPassword.
#   [OK]          URL                      19   searchParams.
#   [OK]          URL.SearchParams          0   has.
#   [OK]          URL.SearchParams          1   get.
#   [OK]          URL.SearchParams          2   getAll.
#   [OK]          URL.SearchParams          3   keys.
#   [OK]          URL.SearchParams          4   values.
#   [OK]          URL.SearchParams          5   entries.
#   [OK]          URL.SearchParams          6   toString.
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/url/test/_build/_tests/URL'.
# Test Successful in 0.004s. 27 tests run.
# (cd _build/default/packages/expand-styles-attribute/test && ./test.exe)
# Testing `expand_styles_attribute'.
# This run has ID `F220P25Y'.
# 
#   [OK]          expand_styles_prop_on_attributes               0   
#   [OK]          expand_styles_with_previous_className          0   
#   [OK]          expand_styles_with_previous_style              0   
#   [OK]          expand_styles_optional                         0   
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/expand-styles-attribute/test/_build/_tests/expand_styles_attribute'.
# Test Successful in 0.001s. 4 tests run.
# (cd _build/default/packages/Js/test && ./test.exe)
# Testing `Js'.
# This run has ID `PSI5WX47'.
# 
#   [OK]          Js.Global                     0   decodeURI - ascii and spaces.
#   [OK]          Js.Global                     1   decodeURI - reserved charac...
#   [OK]          Js.Global                     2   decodeURI - alphabets.
#   [OK]          Js.Global                     3   decodeURI - unicode charact...
#   [OK]          Js.Global                     4   decodeURI - mixed percent e...
#   [OK]          Js.Global                     5   decodeURI - complete URLs.
#   [OK]          Js.Global                     6   decodeURI - overencoded seq...
#   [OK]          Js.Global                     7   decodeURI - special charact...
#   [OK]          Js.Global                     8   decodeURI - beyond U+10FFFF.
#   [OK]          Js.Global                     9   decodeURI - partial sequences.
#   [OK]          Js.Global                    10   encodeURI - ascii and spaces.
#   [OK]          Js.Global                    11   encodeURI - reserved charac...
#   [OK]          Js.Global                    12   encodeURI - alphabets.
#   [OK]          Js.Global                    13   encodeURI - unicode charact...
#   [OK]          Js.Global                    14   encodeURI - complete URLs.
#   [OK]          Js.Global                    15   encodeURI - special charact...
#   [OK]          Js.Global                    16   encodeURI - combining chara...
#   [OK]          Js.Global                    17   encodeURI - Surrogate pairs.
#   [OK]          Js.Global                    18   encodeURIComponent.
#   [OK]          Js.Promise                    0   resolve.
#   [OK]          Js.Promise                    1   all.
#   [OK]          Js.Promise                    2   all_async.
#   [OK]          Js.Promise                    3   race_async.
#   [OK]          Js.Float                      0   string_of_float.
#   [OK]          Js.Float                      1   toString.
#   [OK]          Js.Float                      2   fromString.
#   [OK]          Js.Float                      3   toFixed.
#   [OK]          Js.String                     0   make.
#   [OK]          Js.String                     1   length.
#   [OK]          Js.String                     2   get.
#   [OK]          Js.String                     3   fromCharCode.
#   [OK]          Js.String                     4   fromCharCodeMany.
#   [OK]          Js.String                     5   fromCodePoint.
#   [OK]          Js.String                     6   fromCodePointMany.
#   [OK]          Js.String                     7   charAt.
#   [OK]          Js.String                     8   charCodeAt.
#   [OK]          Js.String                     9   codePointAt.
#   [OK]          Js.String                    10   concat.
#   [OK]          Js.String                    11   concatMany.
#   [OK]          Js.String                    12   endsWith.
#   [OK]          Js.String                    13   includes.
#   [OK]          Js.String                    14   indexOf.
#   [OK]          Js.String                    15   lastIndexOf.
#   [OK]          Js.String                    16   match.
#   [OK]          Js.String                    17   match 0.
#   [OK]          Js.String                    18   repeat.
#   [OK]          Js.String                    19   replace.
#   [OK]          Js.String                    20   replaceByRe.
#   [OK]          Js.String                    21   replaceByRe with references...
#   [OK]          Js.String                    22   replaceByRe with $1 capturi...
#   [OK]          Js.String                    23   replaceByRe with multiple c...
#   [OK]          Js.String                    24   replaceByRe with $&.
#   [OK]          Js.String                    25   replaceByRe with $$.
#   [OK]          Js.String                    26   replaceByRe with global.
#   [OK]          Js.String                    27   unsafeReplaceBy0.
#   [OK]          Js.String                    28   unsafeReplaceBy1.
#   [OK]          Js.String                    29   unsafeReplaceBy2.
#   [OK]          Js.String                    30   search.
#   [OK]          Js.String                    31   slice.
#   [OK]          Js.String                    32   split.
#   [OK]          Js.String                    33   splitAtMost.
#   [OK]          Js.String                    34   splitByRe.
#   [OK]          Js.String                    35   startsWith.
#   [OK]          Js.String                    36   substr.
#   [OK]          Js.String                    37   substrAtMost.
#   [OK]          Js.String                    38   substring.
#   [OK]          Js.String                    39   toLowerCase.
#   [OK]          Js.String                    40   toUpperCase.
#   [OK]          Js.String                    41   trim.
#   [OK]          Js.String                    42   anchor.
#   [OK]          Js.String                    43   link.
#   [OK]          Js.Re                         0   captures.
#   [OK]          Js.Re                         1   exec.
#   [OK]          Js.Re                         2   exec with global.
#   [OK]          Js.Re                         3   modifier: end ($).
#   [OK]          Js.Re                         4   modifier: more than one (+).
#   [OK]          Js.Re                         5   global (g) and caseless (i).
#   [OK]          Js.Re                         6   modifier: or ([]).
#   [OK]          Js.Re                         7   backreferencing.
#   [OK]          Js.Re                         8   http|s example.
#   [OK]          Js.Re                         9   index.
#   [OK]          Js.Re                        10   lastIndex.
#   [OK]          Js.Re                        11   input.
#   [OK]          Js.Obj                        0   empty.
#   [OK]          Js.Obj                        1   @@mel.obj.
#   [OK]          Js.Obj                        2   @@mel.obj with keyword label.
#   [OK]          Js.Obj                        3   assign mutates target.
#   [OK]          Js.Obj                        4   merge creates fresh object.
#   [OK]          Js.Obj                        5   [%mel.obj] evaluates fields...
#   [OK]          Js.Dict                       0   empty.
#   [OK]          Js.Dict                       1   get.
#   [OK]          Js.Dict                       2   get from missing property.
#   [OK]          Js.Dict                       3   unsafe_get.
#   [OK]          Js.Dict                       4   set.
#   [OK]          Js.Dict                       5   keys.
#   [OK]          Js.Dict                       6   keys duplicated.
#   [OK]          Js.Dict                       7   entries.
#   [OK]          Js.Dict                       8   values.
#   [OK]          Js.Dict                       9   values duplicated.
#   [OK]          Js.Dict                      10   fromList - [].
#   [OK]          Js.Dict                      11   fromList.
#   [OK]          Js.Dict                      12   fromArray - [].
#   [OK]          Js.Dict                      13   fromArray.
#   [OK]          Js.Dict                      14   map.
#   [OK]          Js.Undefined                  0   return with int.
#   [OK]          Js.Undefined                  1   return with string.
#   [OK]          Js.Undefined                  2   return with float.
#   [OK]          Js.Undefined                  3   return with Js.Date.t.
#   [OK]          Js.Undefined                  4   empty is None.
#   [OK]          Js.Undefined                  5   getUnsafe on return int.
#   [OK]          Js.Undefined                  6   getUnsafe on return Js.Date.t.
#   [OK]          Js.Undefined                  7   fromOpt Some round-trip.
#   [OK]          Js.Undefined                  8   fromOpt None round-trip.
#   [OK]          Js.Undefined                  9   fromOption Some round-trip.
#   [OK]          Js.Undefined                 10   fromOption None round-trip.
#   [OK]          Js.Undefined                 11   pattern match on return int.
#   [OK]          Js.Undefined                 12   pattern match on return float.
#   [OK]          Js.Undefined                 13   pattern match on return Js....
#   [OK]          Js.Undefined                 14   pattern match on empty.
#   [OK]          BigInt.Arithmetic             0   add: positive + positive.
#   [OK]          BigInt.Arithmetic             1   add: negative + negative.
#   [OK]          BigInt.Arithmetic             2   add: positive + negative.
#   [OK]          BigInt.Arithmetic             3   add: with zero.
#   [OK]          BigInt.Arithmetic             4   add: large numbers.
#   [OK]          BigInt.Arithmetic             5   sub: positive result.
#   [OK]          BigInt.Arithmetic             6   sub: negative result.
#   [OK]          BigInt.Arithmetic             7   sub: with zero.
#   [OK]          BigInt.Arithmetic             8   sub: self.
#   [OK]          BigInt.Arithmetic             9   mul: positive * positive.
#   [OK]          BigInt.Arithmetic            10   mul: negative * positive.
#   [OK]          BigInt.Arithmetic            11   mul: negative * negative.
#   [OK]          BigInt.Arithmetic            12   mul: with zero.
#   [OK]          BigInt.Arithmetic            13   mul: with one.
#   [OK]          BigInt.Arithmetic            14   mul: 3^100.
#   [OK]          BigInt.Arithmetic            15   div: exact division.
#   [OK]          BigInt.Arithmetic            16   div: truncate positive.
#   [OK]          BigInt.Arithmetic            17   div: truncate negative (tow...
#   [OK]          BigInt.Arithmetic            18   div: negative divisor.
#   [OK]          BigInt.Arithmetic            19   div: both negative.
#   [OK]          BigInt.Arithmetic            20   div: large numbers.
#   [OK]          BigInt.Arithmetic            21   div: large negative.
#   [OK]          BigInt.Arithmetic            22   div: by zero throws.
#   [OK]          BigInt.Arithmetic            23   rem: positive % positive.
#   [OK]          BigInt.Arithmetic            24   rem: negative dividend.
#   [OK]          BigInt.Arithmetic            25   rem: negative divisor.
#   [OK]          BigInt.Arithmetic            26   rem: both negative.
#   [OK]          BigInt.Arithmetic            27   rem: large numbers.
#   [OK]          BigInt.Arithmetic            28   rem: large positive.
#   [OK]          BigInt.Arithmetic            29   rem: by zero throws.
#   [OK]          BigInt.Arithmetic            30   pow: exponent zero.
#   [OK]          BigInt.Arithmetic            31   pow: exponent one.
#   [OK]          BigInt.Arithmetic            32   pow: 2^10.
#   [OK]          BigInt.Arithmetic            33   pow: (-2)^127.
#   [OK]          BigInt.Arithmetic            34   pow: 2^127.
#   [OK]          BigInt.Arithmetic            35   pow: negative exponent throws.
#   [OK]          BigInt.Arithmetic            36   pow: (-256)^11.
#   [OK]          BigInt.Arithmetic            37   pow: 7^20.
#   [OK]          BigInt.Arithmetic            38   neg: positive.
#   [OK]          BigInt.Arithmetic            39   neg: negative.
#   [OK]          BigInt.Arithmetic            40   neg: zero.
#   [OK]          BigInt.Arithmetic            41   abs: positive.
#   [OK]          BigInt.Arithmetic            42   abs: negative.
#   [OK]          BigInt.Arithmetic            43   abs: zero.
#   [OK]          BigInt.Bitwise                0   and: basic.
#   [OK]          BigInt.Bitwise                1   and: with zero.
#   [OK]          BigInt.Bitwise                2   and: with all ones.
#   [OK]          BigInt.Bitwise                3   and: negative (two's comple...
#   [OK]          BigInt.Bitwise                4   or: basic.
#   [OK]          BigInt.Bitwise                5   or: with zero.
#   [OK]          BigInt.Bitwise                6   or: disjoint bits.
#   [OK]          BigInt.Bitwise                7   xor: basic.
#   [OK]          BigInt.Bitwise                8   xor: same value.
#   [OK]          BigInt.Bitwise                9   xor: with zero.
#   [OK]          BigInt.Bitwise               10   not: basic.
#   [OK]          BigInt.Bitwise               11   not: zero.
#   [OK]          BigInt.Bitwise               12   not: -1.
#   [OK]          BigInt.Bitwise               13   not: positive.
#   [OK]          BigInt.Bitwise               14   not: negative.
#   [OK]          BigInt.Bitwise               15   shift_left: basic.
#   [OK]          BigInt.Bitwise               16   shift_left: 1 << 31.
#   [OK]          BigInt.Bitwise               17   shift_left: 1 << 32.
#   [OK]          BigInt.Bitwise               18   shift_left: 1 << 100.
#   [OK]          BigInt.Bitwise               19   shift_left: large number.
#   [OK]          BigInt.Bitwise               20   shift_left: negative number.
#   [OK]          BigInt.Bitwise               21   shift_left: by zero.
#   [OK]          BigInt.Bitwise               22   shift_right: basic.
#   [OK]          BigInt.Bitwise               23   shift_right: large number.
#   [OK]          BigInt.Bitwise               24   shift_right: negative (arit...
#   [OK]          BigInt.Bitwise               25   shift_right: by zero.
#   [OK]          BigInt.Bitwise               26   shift_right: small negative.
#   [OK]          BigInt.Comparison             0   equal: same value.
#   [OK]          BigInt.Comparison             1   equal: different values.
#   [OK]          BigInt.Comparison             2   equal: negative values.
#   [OK]          BigInt.Comparison             3   equal: opposite signs.
#   [OK]          BigInt.Comparison             4   equal: zeros.
#   [OK]          BigInt.Comparison             5   equal: large same.
#   [OK]          BigInt.Comparison             6   equal: large different.
#   [OK]          BigInt.Comparison             7   compare: less.
#   [OK]          BigInt.Comparison             8   compare: greater.
#   [OK]          BigInt.Comparison             9   compare: equal.
#   [OK]          BigInt.Comparison            10   compare: negative.
#   [OK]          BigInt.Comparison            11   compare: mixed sign.
#   [OK]          BigInt.Comparison            12   lt: true.
#   [OK]          BigInt.Comparison            13   lt: false (greater).
#   [OK]          BigInt.Comparison            14   lt: false (equal).
#   [OK]          BigInt.Comparison            15   lt: negative.
#   [OK]          BigInt.Comparison            16   le: true (less).
#   [OK]          BigInt.Comparison            17   le: true (equal).
#   [OK]          BigInt.Comparison            18   le: false.
#   [OK]          BigInt.Comparison            19   gt: true.
#   [OK]          BigInt.Comparison            20   gt: false (less).
#   [OK]          BigInt.Comparison            21   gt: false (equal).
#   [OK]          BigInt.Comparison            22   ge: true (greater).
#   [OK]          BigInt.Comparison            23   ge: true (equal).
#   [OK]          BigInt.Comparison            24   ge: false.
#   [OK]          BigInt.Constructor            0   from_string: empty string r...
#   [OK]          BigInt.Constructor            1   from_string: zero.
#   [OK]          BigInt.Constructor            2   from_string: positive decimal.
#   [OK]          BigInt.Constructor            3   from_string: negative decimal.
#   [OK]          BigInt.Constructor            4   from_string: positive sign.
#   [OK]          BigInt.Constructor            5   from_string: large number.
#   [OK]          BigInt.Constructor            6   from_string: very large num...
#   [OK]          BigInt.Constructor            7   from_string: leading whites...
#   [OK]          BigInt.Constructor            8   from_string: trailing white...
#   [OK]          BigInt.Constructor            9   from_string: both whitespace.
#   [OK]          BigInt.Constructor           10   from_string: tabs.
#   [OK]          BigInt.Constructor           11   from_string: newlines.
#   [OK]          BigInt.Constructor           12   from_string: hex lowercase.
#   [OK]          BigInt.Constructor           13   from_string: hex uppercase.
#   [OK]          BigInt.Constructor           14   from_string: hex large.
#   [OK]          BigInt.Constructor           15   from_string: hex negative.
#   [OK]          BigInt.Constructor           16   from_string: binary lowercase.
#   [OK]          BigInt.Constructor           17   from_string: binary uppercase.
#   [OK]          BigInt.Constructor           18   from_string: octal lowercase.
#   [OK]          BigInt.Constructor           19   from_string: octal uppercase.
#   [OK]          BigInt.Constructor           20   from_string: sign only throws.
#   [OK]          BigInt.Constructor           21   from_string: trailing chars...
#   [OK]          BigInt.Constructor           22   from_string: null char throws.
#   [OK]          BigInt.Constructor           23   from_string: decimal point ...
#   [OK]          BigInt.Constructor           24   from_string: float notation...
#   [OK]          BigInt.Constructor           25   from_int: zero.
#   [OK]          BigInt.Constructor           26   from_int: positive.
#   [OK]          BigInt.Constructor           27   from_int: negative.
#   [OK]          BigInt.Constructor           28   from_int: max_int.
#   [OK]          BigInt.Constructor           29   from_int: min_int.
#   [OK]          BigInt.Constructor           30   from_int64: large positive.
#   [OK]          BigInt.Constructor           31   from_int64: large negative.
#   [OK]          BigInt.Conversion             0   toString: zero.
#   [OK]          BigInt.Conversion             1   toString: positive.
#   [OK]          BigInt.Conversion             2   toString: negative.
#   [OK]          BigInt.Conversion             3   toString: large (1 << 100).
#   [OK]          BigInt.Conversion             4   toString: radix 2.
#   [OK]          BigInt.Conversion             5   toString: radix 8.
#   [OK]          BigInt.Conversion             6   toString: radix 16.
#   [OK]          BigInt.Conversion             7   toString: radix 36.
#   [OK]          BigInt.Conversion             8   toString: radix 16 large.
#   [OK]          BigInt.Conversion             9   toFloat: small.
#   [OK]          BigInt.Conversion            10   toFloat: negative.
#   [OK]          BigInt.Conversion            11   toFloat: zero.
#   [OK]          BigInt.Conversion            12   toFloat: MAX_SAFE_INTEGER.
#   [OK]          BigInt.Conversion            13   toFloat: large (0xfffffffff...
#   [OK]          BigInt.Conversion            14   toFloat: large negative.
#   [OK]          BigInt.Conversion            15   asIntN: positive fits.
#   [OK]          BigInt.Conversion            16   asIntN: positive wraps.
#   [OK]          BigInt.Conversion            17   asIntN: 255 -> -1.
#   [OK]          BigInt.Conversion            18   asIntN: negative fits.
#   [OK]          BigInt.Conversion            19   asIntN: negative wraps.
#   [OK]          BigInt.Conversion            20   asIntN: 64 bits.
#   [OK]          BigInt.Conversion            21   asUintN: fits.
#   [OK]          BigInt.Conversion            22   asUintN: wraps to 0.
#   [OK]          BigInt.Conversion            23   asUintN: wraps to 1.
#   [OK]          BigInt.Conversion            24   asUintN: negative wraps.
#   [OK]          BigInt.Conversion            25   asUintN: 64 bits.
#   [OK]          BigInt.AsIntN                 0   asIntN 0 bits.
#   [OK]          BigInt.AsIntN                 1   asIntN 1 bit.
#   [OK]          BigInt.AsIntN                 2   asIntN 8 bit.
#   [OK]          BigInt.AsIntN                 3   asIntN 16 bit.
#   [OK]          BigInt.AsIntN                 4   asIntN 32 bit.
#   [OK]          BigInt.AsIntN                 5   asIntN 64 bit.
#   [OK]          BigInt.AsIntN                 6   asIntN preserves small posi...
#   [OK]          BigInt.AsIntN                 7   asIntN preserves small nega...
#   [OK]          BigInt.AsIntN                 8   asIntN wrapping.
#   [OK]          BigInt.AsIntN                 9   asIntN large bits.
#   [OK]          BigInt.AsIntN                10   asIntN negative input.
#   [OK]          BigInt.AsIntN                11   asIntN 2-bit boundary.
#   [OK]          BigInt.AsIntN                12   asIntN 3-bit boundary.
#   [OK]          BigInt.AsIntN                13   asIntN 4-bit boundary.
#   [OK]          BigInt.AsIntN                14   asIntN identity for zero.
#   [OK]          BigInt.AsIntN                15   asIntN minus one.
#   [OK]          BigInt.AsUintN                0   asUintN 0 bits.
#   [OK]          BigInt.AsUintN                1   asUintN 1 bit.
#   [OK]          BigInt.AsUintN                2   asUintN 8 bit.
#   [OK]          BigInt.AsUintN                3   asUintN 16 bit.
#   [OK]          BigInt.AsUintN                4   asUintN 32 bit.
#   [OK]          BigInt.AsUintN                5   asUintN 64 bit.
#   [OK]          BigInt.AsUintN                6   asUintN preserves small val...
#   [OK]          BigInt.AsUintN                7   asUintN wrapping.
#   [OK]          BigInt.AsUintN                8   asUintN large bits.
#   [OK]          BigInt.AsUintN                9   asUintN negative becomes po...
#   [OK]          BigInt.AsUintN               10   asUintN 2-bit boundary.
#   [OK]          BigInt.AsUintN               11   asUintN 3-bit boundary.
#   [OK]          BigInt.AsUintN               12   asUintN 4-bit boundary.
#   [OK]          BigInt.AsUintN               13   asUintN identity for zero.
#   [OK]          BigInt.AsUintN               14   asUintN one.
#   [OK]          BigInt.AsUintN               15   asUintN power of two.
#   [OK]          BigInt.AsUintN               16   asUintN power of two minus ...
#   [OK]          BigInt.Prototype              0   toString default radix.
#   [OK]          BigInt.Prototype              1   toString radix 2 (binary).
#   [OK]          BigInt.Prototype              2   toString radix 8 (octal).
#   [OK]          BigInt.Prototype              3   toString radix 10 (decimal).
#   [OK]          BigInt.Prototype              4   toString radix 16 (hex).
#   [OK]          BigInt.Prototype              5   toString radix 36 (max).
#   [OK]          BigInt.Prototype              6   toString various radixes.
#   [OK]          BigInt.Prototype              7   toString large numbers.
#   [OK]          BigInt.Prototype              8   toString negative large.
#   [OK]          BigInt.Prototype              9   toString zero all radixes.
#   [OK]          BigInt.Prototype             10   to_float small.
#   [OK]          BigInt.Prototype             11   to_float large.
#   [OK]          BigInt.Prototype             12   to_float very large.
#   [OK]          BigInt.Prototype             13   of_string edge cases.
#   [OK]          BigInt.Prototype             14   of_string hex.
#   [OK]          BigInt.Prototype             15   of_string binary.
#   [OK]          BigInt.Prototype             16   of_string octal.
#   [OK]          BigInt.Prototype             17   compare equal.
#   [OK]          BigInt.Prototype             18   compare less.
#   [OK]          BigInt.Prototype             19   compare greater.
#   [OK]          BigInt.Prototype             20   compare negative.
#   [OK]          BigInt.Prototype             21   compare large.
#   [OK]          Date.Getters                  0   getTime returns epoch ms.
#   [OK]          Date.Getters                  1   getTime NaN for invalid date.
#   [OK]          Date.Getters                  2   getUTCFullYear.
#   [OK]          Date.Getters                  3   getUTCMonth.
#   [OK]          Date.Getters                  4   getUTCDate.
#   [OK]          Date.Getters                  5   getUTCDay.
#   [OK]          Date.Getters                  6   getUTCHours.
#   [OK]          Date.Getters                  7   getUTCMinutes.
#   [OK]          Date.Getters                  8   getUTCSeconds.
#   [OK]          Date.Getters                  9   getUTCMilliseconds.
#   [OK]          Date.Getters                 10   UTC getters at epoch.
#   [OK]          Date.Getters                 11   UTC getters before epoch.
#   [OK]          Date.Getters                 12   UTC getters at Y2K.
#   [OK]          Date.Getters                 13   UTC getters on leap day.
#   [OK]          Date.Getters                 14   getUTCFullYear NaN.
#   [OK]          Date.Getters                 15   getUTCMonth NaN.
#   [OK]          Date.Getters                 16   getUTCDate NaN.
#   [OK]          Date.Getters                 17   getUTCDay NaN.
#   [OK]          Date.Getters                 18   getUTCHours NaN.
#   [OK]          Date.Getters                 19   getUTCMinutes NaN.
#   [OK]          Date.Getters                 20   getUTCSeconds NaN.
#   [OK]          Date.Getters                 21   getUTCMilliseconds NaN.
#   [OK]          Date.Getters                 22   new year transition.
#   [OK]          Date.Getters                 23   month lengths.
#   [OK]          Date.LocalGetters             0   getTime basic.
#   [OK]          Date.LocalGetters             1   getTime epoch.
#   [OK]          Date.LocalGetters             2   getTime negative.
#   [OK]          Date.LocalGetters             3   getTime NaN.
#   [OK]          Date.LocalGetters             4   valueOf basic.
#   [OK]          Date.LocalGetters             5   valueOf epoch.
#   [OK]          Date.LocalGetters             6   valueOf NaN.
#   [OK]          Date.LocalGetters             7   valueOf equals getTime.
#   [OK]          Date.LocalGetters             8   getUTCFullYear 2017.
#   [OK]          Date.LocalGetters             9   getUTCFullYear 1970 (epoch).
#   [OK]          Date.LocalGetters            10   getUTCFullYear 1969.
#   [OK]          Date.LocalGetters            11   getUTCFullYear NaN.
#   [OK]          Date.LocalGetters            12   getUTCFullYear Y2K.
#   [OK]          Date.LocalGetters            13   getUTCFullYear leap year.
#   [OK]          Date.LocalGetters            14   getUTCMonth January (0).
#   [OK]          Date.LocalGetters            15   getUTCMonth December (11).
#   [OK]          Date.LocalGetters            16   getUTCMonth NaN.
#   [OK]          Date.LocalGetters            17   getUTCMonth epoch.
#   [OK]          Date.LocalGetters            18   getUTCDate first.
#   [OK]          Date.LocalGetters            19   getUTCDate 31st.
#   [OK]          Date.LocalGetters            20   getUTCDate NaN.
#   [OK]          Date.LocalGetters            21   getUTCDate epoch.
#   [OK]          Date.LocalGetters            22   getUTCDay Thursday (epoch).
#   [OK]          Date.LocalGetters            23   getUTCDay Sunday.
#   [OK]          Date.LocalGetters            24   getUTCDay Saturday.
#   [OK]          Date.LocalGetters            25   getUTCDay NaN.
#   [OK]          Date.LocalGetters            26   getUTCHours zero.
#   [OK]          Date.LocalGetters            27   getUTCHours 23.
#   [OK]          Date.LocalGetters            28   getUTCHours NaN.
#   [OK]          Date.LocalGetters            29   getUTCHours epoch.
#   [OK]          Date.LocalGetters            30   getUTCMinutes zero.
#   [OK]          Date.LocalGetters            31   getUTCMinutes 59.
#   [OK]          Date.LocalGetters            32   getUTCMinutes NaN.
#   [OK]          Date.LocalGetters            33   getUTCSeconds zero.
#   [OK]          Date.LocalGetters            34   getUTCSeconds 59.
#   [OK]          Date.LocalGetters            35   getUTCSeconds NaN.
#   [OK]          Date.LocalGetters            36   getUTCMilliseconds zero.
#   [OK]          Date.LocalGetters            37   getUTCMilliseconds 999.
#   [OK]          Date.LocalGetters            38   getUTCMilliseconds NaN.
#   [OK]          Date.LocalGetters            39   getUTCMilliseconds middle.
#   [OK]          Date.LocalGetters            40   getTimezoneOffset returns n...
#   [OK]          Date.LocalGetters            41   getTimezoneOffset NaN.
#   [OK]          Date.LocalGetters            42   getTimezoneOffset in valid ...
#   [OK]          Date.LocalGetters            43   local getters consistent.
#   [OK]          Date.LocalGetters            44   local getters NaN.
#   [OK]          Date.LocalGetters            45   getDay range 0-6.
#   [OK]          Date.LocalGetters            46   getters large positive date.
#   [OK]          Date.LocalGetters            47   getters large negative date.
#   [OK]          Date.LocalGetters            48   getters boundary milliseconds.
#   [OK]          Date.Setters                  0   setTime basic.
#   [OK]          Date.Setters                  1   setTime epoch.
#   [OK]          Date.Setters                  2   setTime negative.
#   [OK]          Date.Setters                  3   setTime NaN value.
#   [OK]          Date.Setters                  4   setTime on NaN date.
#   [OK]          Date.Setters                  5   setUTCMilliseconds basic.
#   [OK]          Date.Setters                  6   setUTCMilliseconds overflow.
#   [OK]          Date.Setters                  7   setUTCMilliseconds negative.
#   [OK]          Date.Setters                  8   setUTCMilliseconds NaN.
#   [OK]          Date.Setters                  9   setUTCSeconds basic.
#   [OK]          Date.Setters                 10   setUTCSeconds overflow.
#   [OK]          Date.Setters                 11   setUTCSeconds with ms.
#   [OK]          Date.Setters                 12   setUTCSeconds NaN.
#   [OK]          Date.Setters                 13   setUTCMinutes basic.
#   [OK]          Date.Setters                 14   setUTCMinutes overflow.
#   [OK]          Date.Setters                 15   setUTCMinutes with seconds.
#   [OK]          Date.Setters                 16   setUTCMinutes with seconds ...
#   [OK]          Date.Setters                 17   setUTCMinutes NaN.
#   [OK]          Date.Setters                 18   setUTCHours basic.
#   [OK]          Date.Setters                 19   setUTCHours overflow.
#   [OK]          Date.Setters                 20   setUTCHours with minutes.
#   [OK]          Date.Setters                 21   setUTCHours with minutes an...
#   [OK]          Date.Setters                 22   setUTCHours all components.
#   [OK]          Date.Setters                 23   setUTCHours NaN.
#   [OK]          Date.Setters                 24   setUTCDate basic.
#   [OK]          Date.Setters                 25   setUTCDate overflow.
#   [OK]          Date.Setters                 26   setUTCDate zero.
#   [OK]          Date.Setters                 27   setUTCDate negative.
#   [OK]          Date.Setters                 28   setUTCDate NaN.
#   [OK]          Date.Setters                 29   setUTCMonth basic.
#   [OK]          Date.Setters                 30   setUTCMonth overflow.
#   [OK]          Date.Setters                 31   setUTCMonth negative.
#   [OK]          Date.Setters                 32   setUTCMonth with date.
#   [OK]          Date.Setters                 33   setUTCMonth NaN.
#   [OK]          Date.Setters                 34   setUTCFullYear basic.
#   [OK]          Date.Setters                 35   setUTCFullYear with month.
#   [OK]          Date.Setters                 36   setUTCFullYear with month a...
#   [OK]          Date.Setters                 37   setUTCFullYear leap to non-...
#   [OK]          Date.Setters                 38   setUTCFullYear NaN.
#   [OK]          Date.Setters                 39   setMilliseconds basic.
#   [OK]          Date.Setters                 40   setSeconds basic.
#   [OK]          Date.Setters                 41   setMinutes basic.
#   [OK]          Date.Setters                 42   setHours basic.
#   [OK]          Date.Setters                 43   setDate basic.
#   [OK]          Date.Setters                 44   setMonth basic.
#   [OK]          Date.Setters                 45   setFullYear basic.
#   [OK]          Date.Setters                 46   setSeconds with ms.
#   [OK]          Date.Setters                 47   setMinutes with seconds.
#   [OK]          Date.Setters                 48   setMinutes with seconds and...
#   [OK]          Date.Setters                 49   setHours with minutes.
#   [OK]          Date.Setters                 50   setHours with minutes and s...
#   [OK]          Date.Setters                 51   setHours all components.
#   [OK]          Date.Setters                 52   setMonth with date.
#   [OK]          Date.Setters                 53   setFullYear with month.
#   [OK]          Date.Setters                 54   setFullYear with month and ...
#   [OK]          Date.Setters                 55   setMilliseconds NaN.
#   [OK]          Date.Setters                 56   setSeconds NaN.
#   [OK]          Date.Setters                 57   setMinutes NaN.
#   [OK]          Date.Setters                 58   setHours NaN.
#   [OK]          Date.Setters                 59   setDate NaN.
#   [OK]          Date.Setters                 60   setMonth NaN.
#   [OK]          Date.Setters                 61   setFullYear NaN.
#   [OK]          Date.ToString                 0   toUTCString basic.
#   [OK]          Date.ToString                 1   toUTCString epoch.
#   [OK]          Date.ToString                 2   toUTCString format.
#   [OK]          Date.ToString                 3   toUTCString NaN.
#   [OK]          Date.ToString                 4   toUTCString negative year.
#   [OK]          Date.ToString                 5   toUTCString all months.
#   [OK]          Date.ToString                 6   toUTCString day names.
#   [OK]          Date.ToString                 7   toDateString basic.
#   [OK]          Date.ToString                 8   toDateString epoch.
#   [OK]          Date.ToString                 9   toDateString NaN.
#   [OK]          Date.ToString                10   toDateString no time.
#   [OK]          Date.ToString                11   toTimeString basic.
#   [OK]          Date.ToString                12   toTimeString epoch.
#   [OK]          Date.ToString                13   toTimeString NaN.
#   [OK]          Date.ToString                14   toTimeString contains time.
#   [OK]          Date.ToString                15   toString basic.
#   [OK]          Date.ToString                16   toString epoch.
#   [OK]          Date.ToString                17   toString NaN.
#   [OK]          Date.ToString                18   toString contains date and ...
#   [OK]          Date.ToString                19   toString contains year.
#   [OK]          Date.ToString                20   toJSON basic.
#   [OK]          Date.ToString                21   toJSON NaN.
#   [OK]          Date.ToString                22   toJSONUnsafe basic.
#   [OK]          Date.ToString                23   toLocaleString basic.
#   [OK]          Date.ToString                24   toLocaleString NaN.
#   [OK]          Date.ToString                25   toLocaleDateString basic.
#   [OK]          Date.ToString                26   toLocaleDateString NaN.
#   [OK]          Date.ToString                27   toLocaleTimeString basic.
#   [OK]          Date.ToString                28   toLocaleTimeString NaN.
#   [OK]          Date.ToString                29   toString large year.
#   [OK]          Date.ToString                30   toString negative year.
#   [OK]          Date.ToString                31   toUTCString Y2K.
#   [OK]          Date.Now                      0   now returns finite number.
#   [OK]          Date.Now                      1   now returns positive.
#   [OK]          Date.Now                      2   now is recent (after 2020).
#   [OK]          Date.Now                      3   now is monotonic.
#   [OK]          Date.Now                      4   now returns integer ms.
#   [OK]          Date.Parse                    0   empty string returns NaN.
#   [OK]          Date.Parse                    1   year only: 2000.
#   [OK]          Date.Parse                    2   year-month: 2000-01.
#   [OK]          Date.Parse                    3   full date: 2000-01-01.
#   [OK]          Date.Parse                    4   date with time UTC: 2000-01...
#   [OK]          Date.Parse                    5   date with seconds: 2000-01-...
#   [OK]          Date.Parse                    6   milliseconds .1Z = 100ms.
#   [OK]          Date.Parse                    7   milliseconds .10Z = 100ms.
#   [OK]          Date.Parse                    8   milliseconds .100Z = 100ms.
#   [OK]          Date.Parse                    9   milliseconds .1000Z = 100ms.
#   [OK]          Date.Parse                   10   timezone offset +00:00.
#   [OK]          Date.Parse                   11   known ISO timestamp.
#   [OK]          Date.Parse                   12   roundtrip parsing.
#   [OK]          Date.Parse                   13   millis: single digit .1.
#   [OK]          Date.Parse                   14   millis: two digits .12.
#   [OK]          Date.Parse                   15   millis: four digits .1234 t...
#   [OK]          Date.Parse                   16   millis: many digits .9999 t...
#   [OK]          Date.Parse                   17   expanded year +002000.
#   [OK]          Date.Parse                   18   expanded year -000001.
#   [OK]          Date.Parse                   19   expanded year -000000 is in...
#   [OK]          Date.Parse                   20   month name format: Jan 1 2000.
#   [OK]          Date.Parse                   21   with weekday: Sat Jan 1 2000.
#   [OK]          Date.Parse                   22   timezone GMT+0100.
#   [OK]          Date.Parse                   23   timezone GMT+0200.
#   [OK]          Date.Parse                   24   invalid: gibberish.
#   [OK]          Date.Parse                   25   invalid: partial 2000-.
#   [OK]          Date.Parse                   26   invalid: month 13.
#   [OK]          Date.Parse                   27   invalid: day 32.
#   [OK]          Date.Parse                   28   invalid: hour 25.
#   [OK]          Date.Parse                   29   invalid: minute 60.
#   [OK]          Date.Parse                   30   invalid: second 60.
#   [OK]          Date.ToISOString              0   known timestamp.
#   [OK]          Date.ToISOString              1   epoch.
#   [OK]          Date.ToISOString              2   Y2K.
#   [OK]          Date.ToISOString              3   with milliseconds.
#   [OK]          Date.ToISOString              4   millis: 000.
#   [OK]          Date.ToISOString              5   millis: 001.
#   [OK]          Date.ToISOString              6   millis: 010.
#   [OK]          Date.ToISOString              7   millis: 100.
#   [OK]          Date.ToISOString              8   millis: 999.
#   [OK]          Date.ToISOString              9   single digit month padded.
#   [OK]          Date.ToISOString             10   single digit day padded.
#   [OK]          Date.ToISOString             11   single digit hour padded.
#   [OK]          Date.ToISOString             12   before epoch -1ms.
#   [OK]          Date.ToISOString             13   1969 Jan.
#   [OK]          Date.ToISOString             14   year 0.
#   [OK]          Date.ToISOString             15   negative year.
#   [OK]          Date.ToISOString             16   year 10000.
#   [OK]          Date.ToISOString             17   roundtrip known timestamp.
#   [OK]          Date.ToISOString             18   roundtrip epoch.
#   [OK]          Date.ToISOString             19   roundtrip before epoch.
#   [OK]          Date.ToISOString             20   QJS: 2020-01-01T01:01:01.123Z.
#   [OK]          Date.ToISOString             21   QJS: .1Z -> .100Z.
#   [OK]          Date.ToISOString             22   QJS: .12Z -> .120Z.
#   [OK]          Date.UTC                      0   UTC year only.
#   [OK]          Date.UTC                      1   UTC year and month.
#   [OK]          Date.UTC                      2   UTC year, month, day.
#   [OK]          Date.UTC                      3   UTC with hours.
#   [OK]          Date.UTC                      4   UTC with minutes.
#   [OK]          Date.UTC                      5   UTC with seconds.
#   [OK]          Date.UTC                      6   UTC with milliseconds.
#   [OK]          Date.UTC                      7   UTC NaN year.
#   [OK]          Date.UTC                      8   UTC NaN month.
#   [OK]          Date.UTC                      9   UTC NaN day.
#   [OK]          Date.UTC                     10   UTC NaN hours.
#   [OK]          Date.UTC                     11   UTC NaN minutes.
#   [OK]          Date.UTC                     12   UTC NaN seconds.
#   [OK]          Date.UTC                     13   UTC Unix epoch.
#   [OK]          Date.UTC                     14   UTC before epoch.
#   [OK]          Date.UTC                     15   UTC Y2K.
#   [OK]          Date.UTC                     16   UTC year 0 -> 1900.
#   [OK]          Date.UTC                     17   UTC year 99 -> 1999.
#   [OK]          Date.UTC                     18   UTC year 100 stays 100.
#   [OK]          Date.UTC                     19   UTC month 12 = January next...
#   [OK]          Date.UTC                     20   UTC month -1 = December pre...
#   [OK]          Date.UTC                     21   UTC day 32 Jan = Feb 1.
#   [OK]          Date.UTC                     22   UTC day 0 = last day prev m...
#   [OK]          Date.UTC                     23   UTC day -1 = second-to-last...
#   [OK]          Date.UTC                     24   UTC leap year Feb 29 valid.
#   [OK]          Date.UTC                     25   UTC non-leap Feb 29 = Mar 1.
#   [OK]          Date.UTC                     26   UTC 2000 is leap year.
#   [OK]          Date.UTC                     27   UTC 1900 is NOT leap year.
#   [OK]          Date.UTC                     28   UTC large day offset.
#   [OK]          Date.UTC                     29   UTC large minute offset.
#   [OK]          Date.UTC                     30   UTC large second offset.
#   [OK]          Number.IsFinite               0   infinity: positive Infinity...
#   [OK]          Number.IsFinite               1   negative_infinity: negative...
#   [OK]          Number.IsFinite               2   nan: NaN returns false.
#   [OK]          Number.IsFinite               3   nan_from_operations: NaN fr...
#   [OK]          Number.IsFinite               4   finite_numbers: zeros.
#   [OK]          Number.IsFinite               5   finite_numbers: positive in...
#   [OK]          Number.IsFinite               6   finite_numbers: negative in...
#   [OK]          Number.IsFinite               7   finite_numbers: decimals.
#   [OK]          Number.IsFinite               8   finite_numbers: MAX/MIN_VALUE.
#   [OK]          Number.IsFinite               9   finite_numbers: safe intege...
#   [OK]          Number.IsFinite              10   finite_numbers: epsilon.
#   [OK]          Number.IsFinite              11   finite_numbers: very small.
#   [OK]          Number.IsFinite              12   finite_numbers: very large.
#   [OK]          Number.IsInteger              0   integers: zeros.
#   [OK]          Number.IsInteger              1   integers: positive.
#   [OK]          Number.IsInteger              2   integers: negative.
#   [OK]          Number.IsInteger              3   integers: large.
#   [OK]          Number.IsInteger              4   integers: decimal zero frac...
#   [OK]          Number.IsInteger              5   non_integers: decimals.
#   [OK]          Number.IsInteger              6   non_integers: small fractions.
#   [OK]          Number.IsInteger              7   special: NaN.
#   [OK]          Number.IsInteger              8   special: Infinity.
#   [OK]          Number.IsInteger              9   edge: MAX_VALUE is integer.
#   [OK]          Number.IsInteger             10   edge: MIN_VALUE is not inte...
#   [OK]          Number.IsInteger             11   edge: epsilon is not integer.
#   [OK]          Number.IsInteger             12   edge: powers of two.
#   [OK]          Number.IsInteger             13   edge: scientific notation.
#   [OK]          Number.IsNaN                  0   nan_value: NaN returns true.
#   [OK]          Number.IsNaN                  1   nan_from_operation: NaN fro...
#   [OK]          Number.IsNaN                  2   nan_from_parseInt: NaN from...
#   [OK]          Number.IsNaN                  3   nan_from_parseFloat: NaN fr...
#   [OK]          Number.IsNaN                  4   finite_numbers: finite numb...
#   [OK]          Number.IsNaN                  5   zero_values: zeros return f...
#   [OK]          Number.IsNaN                  6   infinity_values: Infinity r...
#   [OK]          Number.IsNaN                  7   max_min_values: extreme val...
#   [OK]          Number.IsNaN                  8   epsilon_value: epsilon retu...
#   [OK]          Number.ParseFloat             0   S15.1.2.3_A1_T1: empty stri...
#   [OK]          Number.ParseFloat             1   S15.1.2.3_A1_T2: simple int...
#   [OK]          Number.ParseFloat             2   S15.1.2.3_A1_T3: non-numeri...
#   [OK]          Number.ParseFloat             3   S15.1.2.3_A1_T4: decimal nu...
#   [OK]          Number.ParseFloat             4   S15.1.2.3_A1_T5: stops at i...
#   [OK]          Number.ParseFloat             5   S15.1.2.3_A1_T6: whitespace...
#   [OK]          Number.ParseFloat             6   S15.1.2.3_A1_T7: invalid st...
#   [OK]          Number.ParseFloat             7   S15.1.2.3_A2_T1: leading sp...
#   [OK]          Number.ParseFloat             8   S15.1.2.3_A2_T2: leading tabs.
#   [OK]          Number.ParseFloat             9   S15.1.2.3_A2_T3: leading ne...
#   [OK]          Number.ParseFloat            10   S15.1.2.3_A2_T4: leading ca...
#   [OK]          Number.ParseFloat            11   S15.1.2.3_A2_T5: leading fo...
#   [OK]          Number.ParseFloat            12   S15.1.2.3_A2_T6: leading ve...
#   [OK]          Number.ParseFloat            13   S15.1.2.3_A2_T7: mixed whit...
#   [OK]          Number.ParseFloat            14   S15.1.2.3_A2_T8: non-breaki...
#   [OK]          Number.ParseFloat            15   S15.1.2.3_A2_T9: trailing c...
#   [OK]          Number.ParseFloat            16   S15.1.2.3_A2_T10: whitespac...
#   [OK]          Number.ParseFloat            17   S15.1.2.3_A3_T1: positive s...
#   [OK]          Number.ParseFloat            18   S15.1.2.3_A3_T2: negative s...
#   [OK]          Number.ParseFloat            19   S15.1.2.3_A3_T3: sign with ...
#   [OK]          Number.ParseFloat            20   S15.1.2.3_A4_T1: basic expo...
#   [OK]          Number.ParseFloat            21   S15.1.2.3_A4_T2: uppercase E.
#   [OK]          Number.ParseFloat            22   S15.1.2.3_A4_T3: negative e...
#   [OK]          Number.ParseFloat            23   S15.1.2.3_A4_T4: positive e...
#   [OK]          Number.ParseFloat            24   S15.1.2.3_A4_T5: decimal wi...
#   [OK]          Number.ParseFloat            25   S15.1.2.3_A4_T6: incomplete...
#   [OK]          Number.ParseFloat            26   S15.1.2.3_A4_T7: very large...
#   [OK]          Number.ParseFloat            27   S15.1.2.3_A5_T1: Infinity s...
#   [OK]          Number.ParseFloat            28   S15.1.2.3_A5_T2: signed Inf...
#   [OK]          Number.ParseFloat            29   S15.1.2.3_A5_T3: Infinity w...
#   [OK]          Number.ParseFloat            30   S15.1.2.3_A5_T4: Infinity w...
#   [OK]          Number.ParseFloat            31   S15.1.2.3_A6: multiple deci...
#   [OK]          Number.ParseFloat            32   S15.1.2.3_A7.5: leading dec...
#   [OK]          Number.ParseFloat            33   S15.1.2.3_A7.6: trailing de...
#   [OK]          Number.ParseFloat            34   S15.1.2.3_A7.7: decimal wit...
#   [OK]          Number.ParseFloat            35   misc_t1: hex not supported.
#   [OK]          Number.ParseFloat            36   misc_t2: binary/octal not s...
#   [OK]          Number.ParseFloat            37   misc_t3: leading zeros.
#   [OK]          Number.ParseFloat            38   misc_t4: NaN string.
#   [OK]          Number.ParseFloat            39   misc_t5: sign edge cases.
#   [OK]          Number.ParseFloat            40   misc_t6: very small numbers.
#   [OK]          Number.ParseFloat            41   misc_t7: negative zero.
#   [OK]          Number.ParseFloat            42   misc_t8: precision loss.
#   [OK]          Number.ParseFloat            43   misc_t9: exponent without m...
#   [OK]          Number.ParseFloat            44   misc_t10: comprehensive whi...
#   [OK]          Number.ParseFloat            45   misc_t11: Infinity case sen...
#   [OK]          Number.ParseFloat            46   misc_t12: sign with decimal...
#   [OK]          Number.ParseFloat            47   misc_t13: multiple e.
#   [OK]          Number.ParseFloat            48   misc_t14: exponent with dec...
#   [OK]          Number.ParseInt               0   S15.1.2.2_A1_T1: empty stri...
#   [OK]          Number.ParseInt               1   S15.1.2.2_A1_T2: whitespace...
#   [OK]          Number.ParseInt               2   S15.1.2.2_A1_T3: non-numeri...
#   [OK]          Number.ParseInt               3   S15.1.2.2_A1_T4: invalid st...
#   [OK]          Number.ParseInt               4   S15.1.2.2_A1_T5: sign only ...
#   [OK]          Number.ParseInt               5   S15.1.2.2_A1_T6: stops at i...
#   [OK]          Number.ParseInt               6   S15.1.2.2_A1_T7: NaN/Infini...
#   [OK]          Number.ParseInt               7   S15.1.2.2_A2_T1: leading sp...
#   [OK]          Number.ParseInt               8   S15.1.2.2_A2_T2: leading tabs.
#   [OK]          Number.ParseInt               9   S15.1.2.2_A2_T3: leading ne...
#   [OK]          Number.ParseInt              10   S15.1.2.2_A2_T4: leading ca...
#   [OK]          Number.ParseInt              11   S15.1.2.2_A2_T5: leading fo...
#   [OK]          Number.ParseInt              12   S15.1.2.2_A2_T6: leading ve...
#   [OK]          Number.ParseInt              13   S15.1.2.2_A2_T7: mixed whit...
#   [OK]          Number.ParseInt              14   S15.1.2.2_A2_T8: non-breaki...
#   [OK]          Number.ParseInt              15   S15.1.2.2_A2_T9: trailing w...
#   [OK]          Number.ParseInt              16   S15.1.2.2_A2_T10: whitespac...
#   [OK]          Number.ParseInt              17   S15.1.2.2_A3.1_T1: positive...
#   [OK]          Number.ParseInt              18   S15.1.2.2_A3.1_T2: negative...
#   [OK]          Number.ParseInt              19   S15.1.2.2_A3.1_T3: sign wit...
#   [OK]          Number.ParseInt              20   S15.1.2.2_A3.1_T4: multiple...
#   [OK]          Number.ParseInt              21   S15.1.2.2_A3.1_T5: sign wit...
#   [OK]          Number.ParseInt              22   S15.1.2.2_A3.1_T6: sign wit...
#   [OK]          Number.ParseInt              23   S15.1.2.2_A3.1_T7: sign alone.
#   [OK]          Number.ParseInt              24   S15.1.2.2_A3.2_T1: negative...
#   [OK]          Number.ParseInt              25   S15.1.2.2_A3.2_T2: negative...
#   [OK]          Number.ParseInt              26   S15.1.2.2_A3.2_T3: negative...
#   [OK]          Number.ParseInt              27   S15.1.2.2_A4.1_T1: radix 2.
#   [OK]          Number.ParseInt              28   S15.1.2.2_A4.1_T2: radix 8.
#   [OK]          Number.ParseInt              29   S15.1.2.2_A4.2_T1: radix 16.
#   [OK]          Number.ParseInt              30   S15.1.2.2_A4.2_T2: radix 36.
#   [OK]          Number.ParseInt              31   S15.1.2.2_A5.1_T1: 0x prefi...
#   [OK]          Number.ParseInt              32   S15.1.2.2_A5.2_T1: 0x with ...
#   [OK]          Number.ParseInt              33   S15.1.2.2_A5.2_T2: 0x with ...
#   [OK]          Number.ParseInt              34   S15.1.2.2_A6.1_T1: radix 0 ...
#   [OK]          Number.ParseInt              35   S15.1.2.2_A6.1_T2: radix 1 ...
#   [OK]          Number.ParseInt              36   S15.1.2.2_A6.1_T3: radix 37...
#   [OK]          Number.ParseInt              37   S15.1.2.2_A6.1_T4: large ra...
#   [OK]          Number.ParseInt              38   S15.1.2.2_A6.1_T5: negative...
#   [OK]          Number.ParseInt              39   S15.1.2.2_A6.1_T6: boundary...
#   [OK]          Number.ParseInt              40   S15.1.2.2_A7.1_T1: digits b...
#   [OK]          Number.ParseInt              41   S15.1.2.2_A7.1_T2: all digi...
#   [OK]          Number.ParseInt              42   S15.1.2.2_A7.2_T1: large nu...
#   [OK]          Number.ParseInt              43   S15.1.2.2_A7.2_T2: large he...
#   [OK]          Number.ParseInt              44   S15.1.2.2_A7.2_T3: many dig...
#   [OK]          Number.ParseInt              45   S15.1.2.2_A7.3_T1: leading ...
#   [OK]          Number.ParseInt              46   S15.1.2.2_A7.3_T2: leading ...
#   [OK]          Number.ParseInt              47   S15.1.2.2_A7.3_T3: only zeros.
#   [OK]          Number.ParseInt              48   S15.1.2.2_A8: decimal point.
#   [OK]          Number.ParseInt              49   misc_t1: scientific notatio...
#   [OK]          Number.ParseInt              50   misc_t2: unicode digits not...
#   [OK]          Number.ParseInt              51   misc_t3: 0o octal prefix no...
#   [OK]          Number.ParseInt              52   misc_t4: 0b binary prefix n...
#   [OK]          Number.ParseInt              53   misc_t5: single digits.
#   [OK]          Number.ParseInt              54   misc_t6: radix boundaries.
#   [OK]          Number.ParseInt              55   misc_t7: case insensitivity.
#   [OK]          Number.ParseInt              56   misc_t8: comprehensive whit...
#   [OK]          Number.ToString               0   basic: integers.
#   [OK]          Number.ToString               1   basic: decimals.
#   [OK]          Number.ToString               2   basic: special values.
#   [OK]          Number.ToString               3   basic: scientific notation.
#   [OK]          Number.ToString               4   basic: negative zero.
#   [OK]          Number.ToString               5   radix 2: binary.
#   [OK]          Number.ToString               6   radix 8: octal.
#   [OK]          Number.ToString               7   radix 16: hex.
#   [OK]          Number.ToString               8   radix 36: max.
#   [OK]          Number.ToString               9   radix 10: explicit.
#   [OK]          Number.ToString              10   negative with radix.
#   [OK]          Number.ToString              11   special values with radix.
#   [OK]          Number.ToString              12   large numbers.
#   [OK]          Number.ToExponential          0   basic: no digits.
#   [OK]          Number.ToExponential          1   digits: 0.
#   [OK]          Number.ToExponential          2   digits: 1.
#   [OK]          Number.ToExponential          3   digits: multiple.
#   [OK]          Number.ToExponential          4   digits: large.
#   [OK]          Number.ToExponential          5   special values.
#   [OK]          Number.ToExponential          6   special values with digits.
#   [OK]          Number.ToExponential          7   negative numbers.
#   [OK]          Number.ToExponential          8   rounding.
#   [OK]          Number.ToExponential          9   very small numbers.
#   [OK]          Number.ToExponential         10   very large numbers.
#   [OK]          Number.ToExponential         11   negative zero.
#   [OK]          Number.ToPrecision            0   basic: no precision.
#   [OK]          Number.ToPrecision            1   precision: 1.
#   [OK]          Number.ToPrecision            2   precision: 2.
#   [OK]          Number.ToPrecision            3   precision: multiple.
#   [OK]          Number.ToPrecision            4   precision: large.
#   [OK]          Number.ToPrecision            5   special values.
#   [OK]          Number.ToPrecision            6   special values with precision.
#   [OK]          Number.ToPrecision            7   negative numbers.
#   [OK]          Number.ToPrecision            8   rounding.
#   [OK]          Number.ToPrecision            9   zero handling.
#   [OK]          Number.ToPrecision           10   negative zero.
#   [OK]          Number.ToPrecision           11   very small numbers.
#   [OK]          Number.ToPrecision           12   very large numbers.
#   [OK]          String.Normalize              0   default form (NFC).
#   [OK]          String.Normalize              1   empty string.
#   [OK]          String.Normalize              2   ASCII unchanged.
#   [OK]          String.Normalize              3   NFC: basic.
#   [OK]          String.Normalize              4   NFC: multiple accents.
#   [OK]          String.Normalize              5   NFD: basic.
#   [OK]          String.Normalize              6   NFD: already decomposed.
#   [OK]          String.Normalize              7   NFKC: ligature.
#   [OK]          String.Normalize              8   NFKC: superscript.
#   [OK]          String.Normalize              9   NFKD: ligature.
#   [OK]          String.Normalize             10   NFKD: with accents.
#   [OK]          String.Normalize             11   Hangul syllable.
#   [OK]          String.Normalize             12   combining sequences.
#   [OK]          String.Search                 0   basic: match.
#   [OK]          String.Search                 1   basic: no match.
#   [OK]          String.Search                 2   basic: match at start.
#   [OK]          String.Search                 3   basic: match at end.
#   [OK]          String.Search                 4   basic: empty string.
#   [OK]          String.Search                 5   basic: empty pattern.
#   [OK]          String.Search                 6   case: sensitive.
#   [OK]          String.Search                 7   case: insensitive.
#   [OK]          String.Search                 8   pattern: digit class.
#   [OK]          String.Search                 9   pattern: word boundary.
#   [OK]          String.Search                10   pattern: any character.
#   [OK]          String.Search                11   pattern: alternation.
#   [OK]          String.Search                12   pattern: optional.
#   [OK]          String.Search                13   multiple: finds first.
#   [OK]          String.Search                14   multiple: global flag ignored.
#   [OK]          String.Search                15   unicode: characters.
#   [OK]          String.Search                16   unicode: emoji.
#   [OK]          String.Search                17   edge: special regex chars.
#   [OK]          String.Search                18   edge: newline.
#   [OK]          RegExp.NamedGroups            0   basic: date pattern.
#   [OK]          RegExp.NamedGroups            1   basic: single group.
#   [OK]          RegExp.NamedGroups            2   basic: multiple groups.
#   [OK]          RegExp.NamedGroups            3   access: by name.
#   [OK]          RegExp.NamedGroups            4   access: nonexistent.
#   [OK]          RegExp.NamedGroups            5   access: all groups list.
#   [OK]          RegExp.NamedGroups            6   pattern: with quantifiers.
#   [OK]          RegExp.NamedGroups            7   pattern: with alternation.
#   [OK]          RegExp.NamedGroups            8   edge: no named groups.
#   [OK]          RegExp.NamedGroups            9   edge: mixed named and unnamed.
#   [OK]          RegExp.DotAll                 0   basic: dot without flag.
#   [OK]          RegExp.DotAll                 1   basic: dot with flag.
#   [OK]          RegExp.DotAll                 2   basic: flag accessor.
#   [OK]          RegExp.DotAll                 3   line: matches LF.
#   [OK]          RegExp.DotAll                 4   line: matches CR.
#   [OK]          RegExp.DotAll                 5   line: matches CRLF.
#   [OK]          RegExp.DotAll                 6   flags: with global.
#   [OK]          RegExp.DotAll                 7   flags: with ignorecase.
#   [OK]          RegExp.DotAll                 8   flags: with multiline.
#   [OK]          RegExp.DotAll                 9   accessor: includes s.
#   [OK]          RegExp.DotAll                10   accessor: order.
#   [OK]          RegExp.DotAll                11   practical: multiline content.
#   [OK]          RegExp.DotAll                12   practical: without flag fails.
#   [OK]          RegExp.Unicode                0   flag: accessor.
#   [OK]          RegExp.Unicode                1   flag: in flags string.
#   [OK]          RegExp.Unicode                2   match: basic unicode.
#   [OK]          RegExp.Unicode                3   match: emoji.
#   [OK]          RegExp.Unicode                4   match: no match.
#   [OK]          RegExp.Unicode                5   combined: with global.
#   [OK]          RegExp.Unicode                6   combined: with ignorecase.
#   [OK]          RegExp.Unicode                7   combined: with multiline.
#   [OK]          RegExp.Unicode                8   property: letter category.
#   [OK]          RegExp.Unicode                9   astral: basic.
#   [OK]          RegExp.Unicode               10   astral: surrogate pairs.
#   [OK]          RegExp.Unicode               11   practical: international.
#   [OK]          RegExp.Unicode               12   practical: mixed scripts.
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/Js/test/_build/_tests/Js'.
# Test Successful in 0.909s. 833 tests run.
# (cd _build/default/packages/Belt/test && ./test.exe)
# Testing `Belt'.
# This run has ID `RVV2LZHK'.
# 
#   [OK]          Int                        0   toFloat.
#   [OK]          Int                        1   fromFloat.
#   [OK]          Int                        2   fromString.
#   [OK]          Int                        3   toString and operators.
#   [OK]          Float                      0   fromInt.
#   [OK]          Float                      1   toInt.
#   [OK]          Float                      2   fromString.
#   [OK]          Float                      3   toString and operators.
#   [OK]          Option                     0   keep.
#   [OK]          Option                     1   orElse.
#   [OK]          Result                     0   alias compatibility.
#   [OK]          Array                      0   get and set bounds.
#   [OK]          Array                      1   shuffle preserves contents.
#   [OK]          Array                      2   range helpers.
#   [OK]          Array                      3   reductions.
#   [OK]          Array                      4   construction copy and conversi...
#   [OK]          Array                      5   callback once regressions.
#   [OK]          Array                      6   keep keepMap and partition.
#   [OK]          Array                      7   slice.
#   [OK]          Array                      8   sliceToEnd.
#   [OK]          Array                      9   fill.
#   [OK]          Array                     10   blit.
#   [OK]          Array                     11   zip and unzip.
#   [OK]          Array                     12   iteration predicates and reverse.
#   [OK]          Array                     13   every2 and some2.
#   [OK]          Array                     14   concat and concatMany.
#   [OK]          Array                     15   cmp and find helpers.
#   [OK]          Array                     16   unsafe allocation helpers.
#   [OK]          Array                     17   push unsupported in native.
#   [OK]          List                       0   makeBy get and map.
#   [OK]          List                       1   flatten.
#   [OK]          List                       2   concatMany.
#   [OK]          List                       3   concat.
#   [OK]          List                       4   zip and zipBy.
#   [OK]          List                       5   partition.
#   [OK]          List                       6   unzip.
#   [OK]          List                       7   keep and keepWithIndex.
#   [OK]          List                       8   map.
#   [OK]          List                       9   take drop and splitAt.
#   [OK]          List                      10   association helpers.
#   [OK]          List                      11   head tail and access.
#   [OK]          List                      12   reductions.
#   [OK]          List                      13   predicates and comparison.
#   [OK]          List                      14   make sort eq and keepMap.
#   [OK]          Map                        0   fromArray set get toArray and ...
#   [OK]          Map                        1   large fromArray sorts output.
#   [OK]          Map                        2   merge variants.
#   [OK]          Map                        3   update removeMany and undefine...
#   [OK]          Map                        4   set returns new map.
#   [OK]          Map                        5   repeated update accumulation.
#   [OK]          Map                        6   mergeMany split and empty remo...
#   [OK]          Map.Dict                   0   packIdData and first class com...
#   [OK]          Map.Int                    0   findFirstBy.
#   [OK]          Map.Int                    1   invariant after removals.
#   [OK]          Map.Int                    2   set get remove stress.
#   [OK]          Map.String                 0   findFirstBy.
#   [OK]          Set                        0   remove add and minmax behavior.
#   [OK]          Set                        1   union intersect diff subset an...
#   [OK]          Set                        2   iteration every some cmp.
#   [OK]          Set                        3   keep partition getExn and split.
#   [OK]          Set                        4   empty keep and empty split.
#   [OK]          Set.Dict                   0   forEach and every.
#   [OK]          Set.Int                    0   eq and partition.
#   [OK]          Set.Int                    1   set algebra.
#   [OK]          Set.Int                    2   min max reduce and emptiness.
#   [OK]          Set.Int                    3   invariant under large removals.
#   [OK]          Set.Int                    4   subset eq cmp get and add iden...
#   [OK]          Set.Int                    5   mergeMany removeMany and split.
#   [OK]          Set.Int                    6   empty split.
#   [OK]          Set.String                 0   smoke.
#   [OK]          SortArray                  0   union.
#   [OK]          SortArray                  1   intersect.
#   [OK]          SortArray                  2   diff.
#   [OK]          SortArray                  3   isSorted and stableSortInPlace.
#   [OK]          SortArray                  4   specialized stable sorts.
#   [OK]          SortArray                  5   stableSortBy.
#   [OK]          SortArray                  6   binarySearch.
#   [OK]          SortArray                  7   strictlySortedLength.
#   [OK]          SortArray.Int              0   binarySearch.
#   [OK]          SortArray.String           0   binarySearch.
#   [OK]          MutableMap                 0   remove preserves successor val...
#   [OK]          MutableMap                 1   remove deep successor preserve...
#   [OK]          MutableMap                 2   update remove preserves values.
#   [OK]          MutableMap                 3   removeMany exact keys.
#   [OK]          MutableMap                 4   trim to three entries.
#   [OK]          MutableMap.Int             0   smoke.
#   [OK]          MutableMap.String          0   smoke.
#   [OK]          MutableSet                 0   remove add and split.
#   [OK]          MutableSet                 1   set algebra and partitions.
#   [OK]          MutableSet.Int             0   removeCheck addCheck mergeMany...
#   [OK]          MutableSet.Int             1   stats split and subset.
#   [OK]          MutableSet.Int             2   set algebra and partitions.
#   [OK]          MutableSet.Int             3   large add stress.
#   [OK]          MutableSet.Int             4   fromArray and removal stress.
#   [OK]          MutableSet.Int             5   fromSortedArrayUnsafe and deri...
#   [OK]          MutableSet.String          0   smoke.
#   [OK]          HashMap                    0   mergeMany overwrites duplicates.
#   [OK]          HashMap                    1   fromArray dedupes overlapping ...
#   [OK]          HashMap                    2   remove stress.
#   [OK]          HashMap                    3   keepMapInPlace middle remove.
#   [OK]          HashMap                    4   keepMapInPlace head remove.
#   [OK]          HashMap                    5   keepMapInPlace tail remove.
#   [OK]          HashMap                    6   keepMapInPlace consecutive rem...
#   [OK]          HashMap                    7   keepMapInPlace remove all.
#   [OK]          HashMap.Int                0   smoke.
#   [OK]          HashMap.String             0   smoke.
#   [OK]          HashSet.Int                0   dedupe reduce and forEach.
#   [OK]          HashSet.Int                1   size stress.
#   [OK]          HashSet.Int                2   copy independence.
#   [OK]          HashSet.Int                3   bucket histogram sanity.
#   [OK]          HashSet.String             0   smoke.
#   [OK]          MutableQueue               0   push pop fifo.
#   [OK]          MutableQueue               1   reuse after empty.
#   [OK]          MutableQueue               2   peekExn.
#   [OK]          MutableQueue               3   clear.
#   [OK]          MutableQueue               4   copy.
#   [OK]          MutableQueue               5   isEmpty and size.
#   [OK]          MutableQueue               6   forEach.
#   [OK]          MutableQueue               7   transfer.
#   [OK]          MutableQueue               8   transfer appends to nonempty q...
#   [OK]          MutableQueue               9   fromArray and map.
#   [OK]          MutableStack               0   inorder traversal.
#   [OK]          MutableStack               1   dynamicPopIter traversal.
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/Belt/test/_build/_tests/Belt'.
# Test Successful in 7.371s. 123 tests run.
# (cd _build/default/packages/react/test && ./test.exe)
# Testing `React'.
# This run has ID `UZIGQJW2'.
# 
#   [OK]          cloneElement          0   empty component.
#   [OK]          cloneElement          1   attributes component.
#   [OK]          cloneElement          2   ordered attributes component.
#   [OK]          cloneElement          3   uppercase component raises.
#   [OK]          cloneElement          4   async component raises.
#   [OK]          cloneElement          5   client component raises.
#   [OK]          cloneElement          6   static unwraps to original.
#   [OK]          cloneElement          7   static adds new attributes.
#   [OK]          cloneElement          8   static overrides existing attributes.
#   [OK]          cloneElement          9   static result is Lower_case_element...
#   [OK]          cloneElement         10   static preserves children.
#   [OK]          cloneElement         11   static nested static unwraps outer ...
#   [OK]          React                 0   useState.
#   [OK]          React                 1   useSyncExternalStoreWithServer.
#   [OK]          React                 2   useEffect.
#   [OK]          React                 3   Children.map.
#   [OK]          React                 4   Children.map.
#   [OK]          React                 5   useRef.
#   [OK]          React                 6   invalid_children.
#   [OK]          React                 7   invalid_dangerouslySetInnerHtml.
#   [OK]          React                 8   raw_element.
#   [OK]          React                 9   cache hits within request.
#   [OK]          React                10   cache errors are cached.
#   [OK]          React                11   cache is separate per call.
#   [OK]          React                12   cache resets between requests.
#   [OK]          React                13   cache errors different args.
#   [OK]          React                14   cache errors mixed with success.
#   [OK]          React                15   cache errors reset between requests.
#   [OK]          React                16   cache errors same instance.
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/react/test/_build/_tests/React'.
# Test Successful in 0.003s. 29 tests run.
# (cd _build/default/packages/reactDom/test && ./test.exe)
# Testing `ReactDOM'.
# This run has ID `R5QB6HGT'.
# 
#   [OK]          ReactServerDOM.render_html / suspense_with_sync_client_component                                   0   ...
#   [OK]          ReactServerDOM.render_html / text_with_ampersand                                                   0   ...
#   [OK]          ReactServerDOM.render_html / text_with_html_entity                                                 0   ...
#   [OK]          ReactServerDOM.render_html / text_with_single_quote                                                0   ...
#   [OK]          ReactServerDOM.render_html / text_with_script_tag                                                  0   ...
#   [OK]          ReactServerDOM.render_html / client_with_element_props                                             0   ...
#   [OK]          ReactServerDOM.render_html / null_element                                                          0   ...
#   [OK]          ReactServerDOM.render_html / element_with_dangerously_set_inner_html                               0   ...
#   [OK]          ReactServerDOM.render_html / static_element                                                        0   ...
#   [OK]          ReactServerDOM.render_html / suppress_hydration_warning_in_model                                   0   ...
#   [OK]          ReactServerDOM.render_html / input_element_with_value                                              0   ...
#   [OK]          ReactServerDOM.render_html / upper_case_component                                                  0   ...
#   [OK]          ReactServerDOM.render_html / async_component_without_promise                                       0   ...
#   [OK]          ReactServerDOM.render_html / suspense_without_promise                                              0   ...
#   [OK]          ReactServerDOM.render_html / with_sleepy_promise                                                   0   ...
#   [OK]          ReactServerDOM.render_html / client_with_promise_props                                             0   ...
#   [OK]          ReactServerDOM.render_html / client_component_with_async_component                                 0   ...
#   [OK]          ReactServerDOM.render_html / async_component_with_promise                                          0   ...
#   [OK]          ReactServerDOM.render_html / suspense_with_error                                                   0   ...
#   [OK]          ReactServerDOM.render_html / suspense_with_error_in_async                                          0   ...
#   [OK]          ReactServerDOM.render_html / suspense_with_error_under_lowercase                                   0   ...
#   [OK]          ReactServerDOM.render_html / error_without_suspense                                                0   ...
#   [OK]          ReactServerDOM.render_html / error_in_toplevel_in_async                                            0   ...
#   [OK]          ReactServerDOM.render_html / suspense_in_a_list_with_error                                         0   ...
#   [OK]          ReactServerDOM.render_html / server_function_as_action                                             0   ...
#   [OK]          ReactServerDOM.render_html / nested_context                                                        0   ...
#   [OK]          ReactServerDOM.render_html / context_preserved_across_async_suspense                               0   ...
#   [OK]          ReactServerDOM.render_html / context_nested_providers_across_async_suspense                        0   ...
#   [OK]          ReactServerDOM.render_html / context_client_component_reads_context_across_async_suspense          0   ...
#   [OK]          ReactServerDOM.render_html / timeout_closes_stream_for_hanging_suspense                            0   ...
#   [OK]          ReactServerDOM.render_html / timeout_does_not_affect_fast_renders                                  0   ...
#   [OK]          ReactServerDOM.render_html / progressive_chunk_size_batches_small_chunks                           0   ...
#   [OK]          ReactServerDOM.render_html / timeout_end_script_appears_exactly_once                               0   ...
#   [OK]          ReactServerDOM.render_html / progressive_chunk_size_zero_does_not_raise                            0   ...
#   [OK]          ReactServerDOM.render_html / progressive_chunk_size_negative_does_not_raise                        0   ...
#   [OK]          ReactServerDOM.render_html / skip_root_omits_html_content                                          0   ...
#   [OK]          ReactServerDOM.render_html / doctype                                                               0   ...
#   [OK]          ReactServerDOM.render_html / just_an_html_node                                                     0   ...
#   [OK]          ReactServerDOM.render_html / no_head_no_body_nothing_just_an_html_node                             0   ...
#   [OK]          ReactServerDOM.render_html / html_with_no_srr_html_body                                            0   ...
#   [OK]          ReactServerDOM.render_html / html_with_a_node                                                      0   ...
#   [OK]          ReactServerDOM.render_html / html_inside_a_div                                                     0   ...
#   [OK]          ReactServerDOM.render_html / html_inside_a_fragment                                                0   ...
#   [OK]          ReactServerDOM.render_html / head_with_content                                                     0   ...
#   [OK]          ReactServerDOM.render_html / html_with_only_a_body                                                 0   ...
#   [OK]          ReactServerDOM.render_html / html_with_head_like_elements_not_in_head                              0   ...
#   [OK]          ReactServerDOM.render_html / html_without_body_and_bootstrap_scripts                               0   ...
#   [OK]          ReactServerDOM.render_html / html_with_body_and_bootstrap_scripts                                  0   ...
#   [OK]          ReactServerDOM.render_html / input_and_bootstrap_scripts                                           0   ...
#   [OK]          ReactServerDOM.render_html / title_and_meta_populates_to_the_head                                  0   ...
#   [OK]          ReactServerDOM.render_html / async_scripts_to_head                                                 0   ...
#   [OK]          ReactServerDOM.render_html / no_async_scripts_to_remain                                            0   ...
#   [OK]          ReactServerDOM.render_html / async_scripts_gets_deduplicated                                       0   ...
#   [OK]          ReactServerDOM.render_html / async_scripts_gets_deduplicated_2                                     0   ...
#   [OK]          ReactServerDOM.render_html / link_with_rel_and_precedence                                          0   ...
#   [OK]          ReactServerDOM.render_html / links_gets_pushed_to_the_head                                         0   ...
#   [OK]          ReactServerDOM.render_html / self_closing_with_dangerously                                         0   ...
#   [OK]          ReactServerDOM.render_html / self_closing_with_dangerously_in_head                                 0   ...
#   [OK]          ReactServerDOM.render_html / upper_case_component_with_resources                                   0   ...
#   [OK]          ReactServerDOM.render_html / hoisted_elements_order_issue                                          0   ...
#   [OK]          ReactServerDOM.render_html / head_preserves_children_order                                         0   ...
#   [OK]          ReactServerDOM.render_html / html_attributes_are_preserved                                         0   ...
#   [OK]          ReactDOM.renderToStream / silly_stream                                                             0   ...
#   [OK]          ReactDOM.renderToStream / render_inner_html                                                        0   ...
#   [OK]          ReactDOM.renderToStream / react_use_without_suspense                                               0   ...
#   [OK]          ReactDOM.renderToStream / uppercase_component_always_throwing                                      0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_react_use                                                  0   ...
#   [OK]          ReactDOM.renderToStream / async component                                                          0   ...
#   [OK]          ReactDOM.renderToStream / async_component_without_suspense                                         0   ...
#   [OK]          ReactDOM.renderToStream / suspense_without_promise                                                 0   ...
#   [OK]          ReactDOM.renderToStream / text_after_element_with_text_child                                       0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_resolved_text_after_element_with_text_child                0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_async_component                                            0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_always_throwing                                            0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspense                                            0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspenses                                           0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspense_with_error                                 0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_multiple_children                                          0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_multiple_children_reordered                                0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_concurrent_suspenses                                       0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_comments                                                   0   ...
#   [OK]          ReactDOM.renderToStream / context_basic                                                            0   ...
#   [OK]          ReactDOM.renderToStream / context_default_value                                                    0   ...
#   [OK]          ReactDOM.renderToStream / context_nested_providers                                                 0   ...
#   [OK]          ReactDOM.renderToStream / context_multiple_independent                                             0   ...
#   [OK]          ReactDOM.renderToStream / context_with_suspense                                                    0   ...
#   [OK]          ReactDOM.renderToStream / async_component_with_use_id                                              0   ...
#   [OK]          ReactDOM.renderToStream / async_component_with_use_id_and_sibling                                  0   ...
#   [OK]          ReactDOM.renderToStream / async_component_with_use_id_in_suspense                                  0   ...
#   [OK]          ReactDOM.renderToStream / async_component_with_multiple_use_ids                                    0   ...
#   [OK]          ReactDOM.renderToStream / multiple_async_components_without_suspense                               0   ...
#   [OK]          ReactDOM.renderToStream / context_provider_with_suspended_consumer                                 0   ...
#   [OK]          ReactDOM.renderToStream / async_component_returning_suspense_with_async_children                   0   ...
#   [OK]          ReactDOM.renderToStream / static_element_in_stream                                                 0   ...
#   [OK]          ReactDOM.renderToStream / client_component_error_in_stream                                         0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_failed_promise                                             0   ...
#   [OK]          ReactDOM.renderToStream / fragment_in_stream                                                       0   ...
#   [OK]          ReactDOM.renderToStream / list_in_stream                                                           0   ...
#   [OK]          ReactDOM.renderToStream / array_in_stream                                                          0   ...
#   [OK]          ReactDOM.renderToStream / empty_element_in_stream                                                  0   ...
#   [OK]          ReactDOM.renderToStream / dangerous_html_in_suspense                                               0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / html_doctype                                                       0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / single_empty_tag                                                   0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / empty_string_attribute                                             0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / bool_attributes                                                    0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / truthy_attributes                                                  0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / ignore_nulls                                                       0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / string_attributes                                                  0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / self_closing_tag                                                   0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / dom_element_innerHtml                                              0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / children                                                           0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / className                                                          0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / className_2                                                        0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / className_3                                                        0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / fragment                                                           0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / fragments_and_texts                                                0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / ignored_attributes_on_jsx                                          0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / inline_styles                                                      0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / encode_attributes                                                  0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / dom_props_should_work                                              0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / dangerouslySetInnerHtml                                            0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / context                                                            0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / nested_context                                                     0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / use_state                                                          0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / use_memo                                                           0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / use_callback                                                       0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / inner_html                                                         0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / event                                                              0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / render_with_doc_type                                               0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / render_svg                                                         0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / ref_as_prop_works                                                  0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / ref_as_callback_prop_works                                         0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / async                                                              0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / lists_and_arrays                                                   0   ...
#   [OK]          ReactDOM.renderToString / react_root_one_element                                                   0   ...
#   [OK]          ReactDOM.renderToString / react_root_two_elements                                                  0   ...
#   [OK]          ReactDOM.renderToString / text_single_node should not add <!-- -->                                 0   ...
#   [OK]          ReactDOM.renderToString / consecutives_text_nodes should add <!-- -->                              0   ...
#   [OK]          ReactDOM.renderToString / separated_text_nodes_by_other_parents                                    0   ...
#   [OK]          ReactDOM.renderToString / text_after_element_with_text_child                                       0   ...
#   [OK]          ReactDOM.renderToString / suspense children render exactly once                                    0   ...
#   [OK]          ReactDOM.renderToString / suspense renders fallback on error                                       0   ...
#   [OK]          ReactDOM.write_to_buffer / empty element                                                           0   ...
#   [OK]          ReactDOM.write_to_buffer / single element                                                          0   ...
#   [OK]          ReactDOM.write_to_buffer / nested elements                                                         0   ...
#   [OK]          ReactDOM.write_to_buffer / self-closing tag                                                        0   ...
#   [OK]          ReactDOM.write_to_buffer / text content                                                            0   ...
#   [OK]          ReactDOM.write_to_buffer / no text separators between consecutive text nodes                       0   ...
#   [OK]          ReactDOM.write_to_buffer / no doctype injection for html tag                                       0   ...
#   [OK]          ReactDOM.write_to_buffer / string attributes                                                       0   ...
#   [OK]          ReactDOM.write_to_buffer / bool true attribute                                                     0   ...
#   [OK]          ReactDOM.write_to_buffer / bool false attribute                                                    0   ...
#   [OK]          ReactDOM.write_to_buffer / style attribute                                                         0   ...
#   [OK]          ReactDOM.write_to_buffer / html escaping                                                           0   ...
#   [OK]          ReactDOM.write_to_buffer / attribute escaping                                                      0   ...
#   [OK]          ReactDOM.write_to_buffer / dangerouslySetInnerHTML                                                 0   ...
#   [OK]          ReactDOM.write_to_buffer / fragment                                                                0   ...
#   [OK]          ReactDOM.write_to_buffer / list children                                                           0   ...
#   [OK]          ReactDOM.write_to_buffer / array children                                                          0   ...
#   [OK]          ReactDOM.write_to_buffer / upper case component                                                    0   ...
#   [OK]          ReactDOM.write_to_buffer / suspense success renders without markers                                0   ...
#   [OK]          ReactDOM.write_to_buffer / suspense fallback renders without markers                               0   ...
#   [OK]          ReactDOM.write_to_buffer / static element                                                          0   ...
#   [OK]          ReactDOM.write_to_buffer / event attributes ignored                                                0   ...
#   [OK]          ReactDOM.write_to_buffer / ref attributes ignored                                                  0   ...
#   [OK]          ReactDOM.write_to_buffer / react custom attributes ignored                                         0   ...
#   [OK]          ReactDOM.write_to_buffer / async component raises                                                  0   ...
#   [OK]          ReactDOM.write_to_buffer / context                                                                 0   ...
#   [OK]          ReactDOM.Style.make / generate empty style                                                         0   ...
#   [OK]          ReactDOM.Style.make / generate one style                                                           0   ...
#   [OK]          ReactDOM.Style.make / generate more than one style                                                 0   ...
#   [OK]          ReactDOM.Style.make / unsafeAddProp should be kebab-case                                           0   ...
#   [OK]          ReactDOM.Style.make / order matters                                                                0   ...
#   [OK]          ReactDOM.Style.make / order matters II                                                             0   ...
#   [OK]          ReactServerDOM.render_model / null_element                                                         0   ...
#   [OK]          ReactServerDOM.render_model / special_characters_not_html_encoded                                  0   ...
#   [OK]          ReactServerDOM.render_model / string_element                                                       0   ...
#   [OK]          ReactServerDOM.render_model / key_renders_outside_of_props                                         0   ...
#   [OK]          ReactServerDOM.render_model / style_as_json                                                        0   ...
#   [OK]          ReactServerDOM.render_model / lower_case_component                                                 0   ...
#   [OK]          ReactServerDOM.render_model / lower_case_component_nested                                          0   ...
#   [OK]          ReactServerDOM.render_model / lower_case_with_children                                             0   ...
#   [OK]          ReactServerDOM.render_model / dangerouslySetInnerHtml                                              0   ...
#   [OK]          ReactServerDOM.render_model / upper_case_component                                                 0   ...
#   [OK]          ReactServerDOM.render_model / nested_upper_case_components                                         0   ...
#   [OK]          ReactServerDOM.render_model / upper_case_with_list                                                 0   ...
#   [OK]          ReactServerDOM.render_model / upper_case_with_children                                             0   ...
#   [OK]          ReactServerDOM.render_model / suspense_without_promise                                             0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_promise                                                0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_error                                                  0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_error_in_async                                         0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_immediate_promise                                      0   ...
#   [OK]          ReactServerDOM.render_model / suspense                                                             0   ...
#   [OK]          ReactServerDOM.render_model / async_component_without_suspense                                     0   ...
#   [OK]          ReactServerDOM.render_model / suspense_in_a_list                                                   0   ...
#   [OK]          ReactServerDOM.render_model / client_with_promise_props                                            0   ...
#   [OK]          ReactServerDOM.render_model / async_component_without_suspense_immediate                           0   ...
#   [OK]          ReactServerDOM.render_model / mixed_server_and_client                                              0   ...
#   [OK]          ReactServerDOM.render_model / client_with_json_props                                               0   ...
#   [OK]          ReactServerDOM.render_model / client_without_props                                                 0   ...
#   [OK]          ReactServerDOM.render_model / client_with_element_props                                            0   ...
#   [OK]          ReactServerDOM.render_model / client_with_server_children                                          0   ...
#   [OK]          ReactServerDOM.render_model / client_component_with_async_component                                0   ...
#   [OK]          ReactServerDOM.render_model / act_with_simple_response                                             0   ...
#   [OK]          ReactServerDOM.render_model / env_development_adds_debug_info                                      0   ...
#   [OK]          ReactServerDOM.render_model / debug_nested_owner_chain                                             0   ...
#   [OK]          ReactServerDOM.render_model / debug_async_component                                                0   ...
#   [OK]          ReactServerDOM.render_model / debug_outlines_components                                            0   ...
#   [OK]          ReactServerDOM.render_model / debug_not_emitted_without_flag                                       0   ...
#   [OK]          ReactServerDOM.render_model / debug_element_has_debugId_and_owner                                  0   ...
#   [OK]          ReactServerDOM.render_model / debug_filter_stack_frame_drops_all                                   0   ...
#   [OK]          ReactServerDOM.render_model / act_with_error                                                       0   ...
#   [OK]          ReactServerDOM.render_model / error_without_suspense                                               0   ...
#   [OK]          ReactServerDOM.render_model / keyed_duplicate_client_component_preserves_keys                      0   ...
#   [OK]          ReactServerDOM.render_model / error_in_toplevel                                                    0   ...
#   [OK]          ReactServerDOM.render_model / error_in_toplevel_in_async                                           0   ...
#   [OK]          ReactServerDOM.render_model / suspense_in_a_list_with_error                                        0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_error_under_lowercase                                  0   ...
#   [OK]          ReactServerDOM.render_model / client_component_with_resources_metadata                             0   ...
#   [OK]          ReactServerDOM.render_model / page_with_hoisted_resources                                          0   ...
#   [OK]          ReactServerDOM.render_model / nested_context                                                       0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_nested_upper_case                                      0   ...
#   [OK]          ReactServerDOM.render_model / suspense_at_root                                                     0   ...
#   [OK]          ReactServerDOM.render_model / suspense_at_root_with_upper_case_children                            0   ...
#   [OK]          ReactServerDOM.render_model / suspense_at_root_with_nested_components                              0   ...
#   [OK]          ReactServerDOM.render_model / suspense_at_root_with_async                                          0   ...
#   [OK]          ReactServerDOM.render_model / root_async_component_immediate                                       0   ...
#   [OK]          ReactServerDOM.render_model / root_upper_case_chain                                                0   ...
#   [OK]          ReactServerDOM.render_model / model_list_value                                                     0   ...
#   [OK]          ReactServerDOM.render_model / model_value_assoc                                                    0   ...
#   [OK]          ReactServerDOM.render_model / client_with_promise_failed_props                                     0   ...
#   [OK]          ReactServerDOM.render_model / client_with_promise_already_failed_props                             0   ...
#   [OK]          ReactServerDOM.render_model / server_function_as_model_prop                                        0   ...
#   [OK]          ReactServerDOM.render_model / error_in_prod_hides_message                                          0   ...
#   [OK]          ReactServerDOM.render_model / duplicate_client_component_deduplicates_ref                          0   ...
#   [OK]          Decoders / decodeReply                                                                             0   ...
#   [OK]          Decoders / decodeFormDataReply                                                                     0   ...
#   [OK]          ReactDOM.renderToString / useId / single component with useId                                      0   ...
#   [OK]          ReactDOM.renderToString / useId / two sibling components                                           0   ...
#   [OK]          ReactDOM.renderToString / useId / nested components                                                0   ...
#   [OK]          ReactDOM.renderToString / useId / multiple useId calls in one component                            0   ...
#   [OK]          ReactDOM.renderToString / useId / three useId calls in one component                               0   ...
#   [OK]          ReactDOM.renderToString / useId / siblings with nested children                                    0   ...
#   [OK]          ReactDOM.renderToString / useId / deep nesting (3 levels)                                          0   ...
#   [OK]          ReactDOM.renderToString / useId / wrapper without useId is transparent                             0   ...
#   [OK]          ReactDOM.renderToString / useId / three siblings                                                   0   ...
#   [OK]          ReactDOM.renderToString / useId / complex siblings with nested                                     0   ...
#   [OK]          ReactDOM.renderToString / useId / separate renders produce same IDs                                0   ...
#   [OK]          ReactDOM.renderToString / useId / renderToStaticMarkup also works                                  0   ...
#   [OK]          ReactDOM.renderToString / useId / identifier_prefix                                                0   ...
#   [OK]          ReactDOM.renderToString / useId / useId inside Suspense (sync)                                     0   ...
#   [OK]          ReactDOM.renderToString / useId / Suspense with useId + sibling                                    0   ...
#   [OK]          ReactDOM.renderToString / useId / Fragment single child is transparent                             0   ...
#   [OK]          ReactDOM.renderToString / useId / Fragment multiple children forks                                 0   ...
#   [OK]          ReactDOM.renderToString / useId / Nested fragments transparent                                     0   ...
#   [OK]          ReactDOM.renderToString / useId / Null/Empty between siblings preserves slots                      0   ...
#   [OK]          ReactDOM.renderToString / useId / Many siblings (10, base-32 at Ra)                                0   ...
#   [OK]          ReactDOM.renderToString / useId / Provider is transparent                                          0   ...
#   [OK]          ReactDOM.renderToString / useId / Kitchen sink (Provider + Fragment + Suspense)                    0   ...
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/reactDom/test/_build/_tests/ReactDOM'.
# Test Successful in 1.277s. 259 tests run.
# (cd _build/default/packages/server-reason-react-ppx/test && ./test.exe)
# Testing `server-reason-react.ppx'.
# This run has ID `EOUXT2S4'.
# 
#   [OK]          tag                                                          0   ...
#   [OK]          empty_attribute                                              0   ...
#   [OK]          bool_attribute                                               0   ...
#   [OK]          bool_attributes                                              0   ...
#   [OK]          innerhtml                                                    0   ...
#   [OK]          int_attribute                                                0   ...
#   [OK]          svg_1                                                        0   ...
#   [OK]          svg_2                                                        0   ...
#   [OK]          booleanish_props_with_ppx                                    0   ...
#   [OK]          booleanish_props_without_ppx                                 0   ...
#   [OK]          style_attribute                                              0   ...
#   [OK]          ref_attribute                                                0   ...
#   [OK]          link_as_attribute                                            0   ...
#   [OK]          inner_html_attribute                                         0   ...
#   [OK]          inner_html_attribute_complex                                 0   ...
#   [OK]          int_opt_attr_some                                            0   ...
#   [OK]          int_opt_attribute_none                                       0   ...
#   [OK]          string_opt_attribute_some                                    0   ...
#   [OK]          string_opt_attribute_none                                    0   ...
#   [OK]          bool_opt_attribute_some                                      0   ...
#   [OK]          bool_opt_attribute_none                                      0   ...
#   [OK]          style_opt_attribute_some                                     0   ...
#   [OK]          style_opt_attribute_none                                     0   ...
#   [OK]          ref_opt_attribute_some                                       0   ...
#   [OK]          ref_opt_attribute_none                                       0   ...
#   [OK]          fragment                                                     0   ...
#   [OK]          fragment_with_key                                            0   ...
#   [OK]          children_uppercase                                           0   ...
#   [OK]          children_lowercase                                           0   ...
#   [OK]          event_onClick                                                0   ...
#   [OK]          children_one_element                                         0   ...
#   [OK]          children_multiple_elements                                   0   ...
#   [OK]          create_element_variadic                                      0   ...
#   [OK]          aria_props                                                   0   ...
#   [OK]          optional_prop                                                0   ...
#   [OK]          context                                                      0   ...
#   [OK]          context_2                                                    0   ...
#   [OK]          multiple_contexts                                            0   ...
#   [OK]          styles_attribute                                             0   ...
#   [OK]          styles_attribute_optional                                    0   ...
#   [OK]          styles_attribute_optional_some                               0   ...
#   [OK]          styles_attribute_optional_some_with_class                    0   ...
#   [OK]          styles_attribute_optional_some_with_style                    0   ...
#   [OK]          styles_attribute_optional_some_with_class_and_style          0   ...
#   [OK]          server_function                                              0   ...
#   [OK]          server_function_reference                                    0   ...
#   [OK]          server_function_reference_args_error                         0   ...
#   [OK]          server_function_reference_form_data                          0   ...
#   [OK]          server_function_reference_form_data_and_args                 0   ...
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/server-reason-react-ppx/test/_build/_tests/server-reason-react.ppx'.
# Test Successful in 0.005s. 49 tests run.



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build server-reason-react 0.5.0
+- 
+- The following changes have been performed
| - remove  server-reason-react     0.5.0
| - install alcotest                1.9.1
| - install alcotest-lwt            1.9.1
| - install astring                 0.8.5
| - install base                    v0.17.3
| - install camlp-streams           5.0.1
| - install dot-merlin-reader       5.6.1-504
| - install either                  1.0.0
| - install fmt                     0.11.0
| - install fpath                   0.7.3
| - install logs                    0.10.0
| - install merlin                  5.6.1-504
| - install merlin-lib              5.6.1-504
| - install ocaml-index             5.6.1-504
| - install ocaml-version           4.0.4
| - install ocaml_intrinsics_kernel v0.17.1
| - install ocamlformat             0.28.1
| - install ocamlformat-lib         0.28.1
| - install ocp-indent              1.9.0
| - install re                      1.14.0
| - install stdio                   v0.17.0
| - install uuseg                   17.0.0
+- 

<><> ocp-indent.1.9.0 installed successfully ><><><><><><><><><><><><><><><><><>
=> This package requires additional configuration for use in editors. Install package 'user-setup', or manually:

   * for Emacs, add these lines to ~/.emacs:
     (add-to-list 'load-path "/home/opam/.opam/5.4/share/emacs/site-lisp")
     (require 'ocp-indent)

   * for Vim, add this line to ~/.vimrc:
     set rtp^="/home/opam/.opam/5.4/share/ocp-indent/vim"

<><> merlin.5.6.1-504 installed successfully ><><><><><><><><><><><><><><><><><>
=> merlin installed.

   Quick setup for VIM
   -------------------
   Append this to your .vimrc to add merlin to vim's runtime-path:
     let g:opamshare = substitute(system('opam var share'),'\n$','','''')
     execute "set rtp+=" . g:opamshare . "/merlin/vim"

   Also run the following line in vim to index the documentation:
     :execute "helptags " . g:opamshare . "/merlin/vim/doc"

   Quick setup for EMACS
   -------------------
   Add opam emacs directory to your load-path by appending this to your .emacs:
     (let ((opam-share (ignore-errors (car (process-lines "opam" "var" "share")))))
      (when (and opam-share (file-directory-p opam-share))
       ;; Register Merlin
       (add-to-list 'load-path (expand-file-name "emacs/site-lisp" opam-share))
       (autoload 'merlin-mode "merlin" nil t nil)
       ;; Automatically start it in OCaml buffers
       (add-hook 'tuareg-mode-hook 'merlin-mode t)
       (add-hook 'caml-mode-hook 'merlin-mode t)
       ;; Use opam switch to lookup ocamlmerlin binary
       (setq merlin-command 'opam)
       ;; To easily change opam switches within a given Emacs session, you can
       ;; install the minor mode https://github.com/ProofGeneral/opam-switch-mode
       ;; and use one of its "OPSW" menus.
       ))
   Take a look at https://github.com/ocaml/merlin for more information

   Quick setup with opam-user-setup
   --------------------------------

   Opam-user-setup support Merlin.

     $ opam user-setup install

   should take care of basic setup.
   See https://github.com/OCamlPro/opam-user-setup
# Run eval $(opam env) to update the current shell environment

The former state can be restored with:
    /usr/bin/opam switch import "/home/opam/.opam/5.4/.opam-switch/backup/state-20260402041114.export"
Or you can retry to install your package selection with:
    /usr/bin/opam install --restore
2026-04-02 04:12.52 ---> saved as "0ada91c98f4383c11806731cac213eeb7ad5e7e13ef57d650265fb269044127f"

/home/opam: (run (shell  "opam reinstall --with-test --verbose server-reason-react.0.5.0;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        partial_fails=\"\";\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'server-reason-react.0.5.0' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
server-reason-react.0.5.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
  - install server-reason-react 0.5.0*

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  2/3: [server-reason-react: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "server-reason-react" "-j" "71" "@install" "@runtest" (CWD=/home/opam/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0)
- File "demo/dream-nested-router/dune", line 5, characters 2-7:
- 5 |   dream
-       ^^^^^
- Error: Library "dream" not found.
- -> required by _build/default/demo/dream-nested-router/test_router_rsc.exe
- -> required by alias demo/dream-nested-router/runtest-test_router_rsc in
-    demo/dream-nested-router/dune:2
- -> required by alias demo/dream-nested-router/runtest
- (cd _build/default/packages/melange.ppx/xxhash && ./test_xxh64.exe)
- Testing `XXH64'.
- This run has ID `251GIZJT'.
- 
-   [OK]          hash                   0   "".
-   [OK]          hash                   1   "a".
-   [OK]          hash                   2   "as".
-   [OK]          hash                   3   "asd".
-   [OK]          hash                   4   "asdf".
-   [OK]          hash                   5   "abc".
-   [OK]          hash                   6   "abc".
-   [OK]          hash                   7   "abcd".
-   [OK]          hash                   8   "abcde".
-   [OK]          hash                   9   "abcdef".
-   [OK]          hash                  10   "abcdefg".
-   [OK]          hash                  11   "abcdefgh".
-   [OK]          hash                  12   "abcdefghi".
-   [OK]          hash                  13   "abcdefghij".
-   [OK]          hash                  14   "abcdefghijklmnopqrstuvwxyz012345".
-   [OK]          hash                  15   "abcdefghijklmnopqrstuvwxyz0123456...
-   [OK]          hash                  16   "Call me Ishmael. Some years ago--...
-   [OK]          hash                  17   "Lorem ipsum dolor sit amet, conse...
-   [OK]          hash · to_hex          0   "I want an unsigned 64-bit seed!".
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/melange.ppx/xxhash/_build/_tests/XXH64'.
- Test Successful in 0.001s. 19 tests run.
- (cd _build/default/packages/url/test && ./test_native.exe)
- Testing `URL'.
- This run has ID `6GDCHLEN'.
- 
-   [OK]          URL                       0   make.
-   [OK]          URL                       1   makeWith.
-   [OK]          URL                       2   makeWith and relative base.
-   [OK]          URL                       3   host.
-   [OK]          URL                       4   hostname.
-   [OK]          URL                       5   setHostname.
-   [OK]          URL                       6   pathname.
-   [OK]          URL                       7   origin.
-   [OK]          URL                       8   href.
-   [OK]          URL                       9   port.
-   [OK]          URL                      10   hash.
-   [OK]          URL                      11   setHash.
-   [OK]          URL                      12   search.
-   [OK]          URL                      13   protocol.
-   [OK]          URL                      14   setProtocol.
-   [OK]          URL                      15   username.
-   [OK]          URL                      16   setUsername.
-   [OK]          URL                      17   password.
-   [OK]          URL                      18   setPassword.
-   [OK]          URL                      19   searchParams.
-   [OK]          URL.SearchParams          0   has.
-   [OK]          URL.SearchParams          1   get.
-   [OK]          URL.SearchParams          2   getAll.
-   [OK]          URL.SearchParams          3   keys.
-   [OK]          URL.SearchParams          4   values.
-   [OK]          URL.SearchParams          5   entries.
-   [OK]          URL.SearchParams          6   toString.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/url/test/_build/_tests/URL'.
- Test Successful in 0.004s. 27 tests run.
- (cd _build/default/packages/expand-styles-attribute/test && ./test.exe)
- Testing `expand_styles_attribute'.
- This run has ID `147BQID8'.
- 
-   [OK]          expand_styles_prop_on_attributes               0   
-   [OK]          expand_styles_with_previous_className          0   
-   [OK]          expand_styles_with_previous_style              0   
-   [OK]          expand_styles_optional                         0   
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/expand-styles-attribute/test/_build/_tests/expand_styles_attribute'.
- Test Successful in 0.000s. 4 tests run.
- (cd _build/default/packages/Js/test && ./test.exe)
- Testing `Js'.
- This run has ID `F2VJWTR9'.
- 
-   [OK]          Js.Global                     0   decodeURI - ascii and spaces.
-   [OK]          Js.Global                     1   decodeURI - reserved charac...
-   [OK]          Js.Global                     2   decodeURI - alphabets.
-   [OK]          Js.Global                     3   decodeURI - unicode charact...
-   [OK]          Js.Global                     4   decodeURI - mixed percent e...
-   [OK]          Js.Global                     5   decodeURI - complete URLs.
-   [OK]          Js.Global                     6   decodeURI - overencoded seq...
-   [OK]          Js.Global                     7   decodeURI - special charact...
-   [OK]          Js.Global                     8   decodeURI - beyond U+10FFFF.
-   [OK]          Js.Global                     9   decodeURI - partial sequences.
-   [OK]          Js.Global                    10   encodeURI - ascii and spaces.
-   [OK]          Js.Global                    11   encodeURI - reserved charac...
-   [OK]          Js.Global                    12   encodeURI - alphabets.
-   [OK]          Js.Global                    13   encodeURI - unicode charact...
-   [OK]          Js.Global                    14   encodeURI - complete URLs.
-   [OK]          Js.Global                    15   encodeURI - special charact...
-   [OK]          Js.Global                    16   encodeURI - combining chara...
-   [OK]          Js.Global                    17   encodeURI - Surrogate pairs.
-   [OK]          Js.Global                    18   encodeURIComponent.
-   [OK]          Js.Promise                    0   resolve.
-   [OK]          Js.Promise                    1   all.
-   [OK]          Js.Promise                    2   all_async.
-   [OK]          Js.Promise                    3   race_async.
-   [OK]          Js.Float                      0   string_of_float.
-   [OK]          Js.Float                      1   toString.
-   [OK]          Js.Float                      2   fromString.
-   [OK]          Js.Float                      3   toFixed.
-   [OK]          Js.String                     0   make.
-   [OK]          Js.String                     1   length.
-   [OK]          Js.String                     2   get.
-   [OK]          Js.String                     3   fromCharCode.
-   [OK]          Js.String                     4   fromCharCodeMany.
-   [OK]          Js.String                     5   fromCodePoint.
-   [OK]          Js.String                     6   fromCodePointMany.
-   [OK]          Js.String                     7   charAt.
-   [OK]          Js.String                     8   charCodeAt.
-   [OK]          Js.String                     9   codePointAt.
-   [OK]          Js.String                    10   concat.
-   [OK]          Js.String                    11   concatMany.
-   [OK]          Js.String                    12   endsWith.
-   [OK]          Js.String                    13   includes.
-   [OK]          Js.String                    14   indexOf.
-   [OK]          Js.String                    15   lastIndexOf.
-   [OK]          Js.String                    16   match.
-   [OK]          Js.String                    17   match 0.
-   [OK]          Js.String                    18   repeat.
-   [OK]          Js.String                    19   replace.
-   [OK]          Js.String                    20   replaceByRe.
-   [OK]          Js.String                    21   replaceByRe with references...
-   [OK]          Js.String                    22   replaceByRe with $1 capturi...
-   [OK]          Js.String                    23   replaceByRe with multiple c...
-   [OK]          Js.String                    24   replaceByRe with $&.
-   [OK]          Js.String                    25   replaceByRe with $$.
-   [OK]          Js.String                    26   replaceByRe with global.
-   [OK]          Js.String                    27   unsafeReplaceBy0.
-   [OK]          Js.String                    28   unsafeReplaceBy1.
-   [OK]          Js.String                    29   unsafeReplaceBy2.
-   [OK]          Js.String                    30   search.
-   [OK]          Js.String                    31   slice.
-   [OK]          Js.String                    32   split.
-   [OK]          Js.String                    33   splitAtMost.
-   [OK]          Js.String                    34   splitByRe.
-   [OK]          Js.String                    35   startsWith.
-   [OK]          Js.String                    36   substr.
-   [OK]          Js.String                    37   substrAtMost.
-   [OK]          Js.String                    38   substring.
-   [OK]          Js.String                    39   toLowerCase.
-   [OK]          Js.String                    40   toUpperCase.
-   [OK]          Js.String                    41   trim.
-   [OK]          Js.String                    42   anchor.
-   [OK]          Js.String                    43   link.
-   [OK]          Js.Re                         0   captures.
-   [OK]          Js.Re                         1   exec.
-   [OK]          Js.Re                         2   exec with global.
-   [OK]          Js.Re                         3   modifier: end ($).
-   [OK]          Js.Re                         4   modifier: more than one (+).
-   [OK]          Js.Re                         5   global (g) and caseless (i).
-   [OK]          Js.Re                         6   modifier: or ([]).
-   [OK]          Js.Re                         7   backreferencing.
-   [OK]          Js.Re                         8   http|s example.
-   [OK]          Js.Re                         9   index.
-   [OK]          Js.Re                        10   lastIndex.
-   [OK]          Js.Re                        11   input.
-   [OK]          Js.Obj                        0   empty.
-   [OK]          Js.Obj                        1   @@mel.obj.
-   [OK]          Js.Obj                        2   @@mel.obj with keyword label.
-   [OK]          Js.Obj                        3   assign mutates target.
-   [OK]          Js.Obj                        4   merge creates fresh object.
-   [OK]          Js.Obj                        5   [%mel.obj] evaluates fields...
-   [OK]          Js.Dict                       0   empty.
-   [OK]          Js.Dict                       1   get.
-   [OK]          Js.Dict                       2   get from missing property.
-   [OK]          Js.Dict                       3   unsafe_get.
-   [OK]          Js.Dict                       4   set.
-   [OK]          Js.Dict                       5   keys.
-   [OK]          Js.Dict                       6   keys duplicated.
-   [OK]          Js.Dict                       7   entries.
-   [OK]          Js.Dict                       8   values.
-   [OK]          Js.Dict                       9   values duplicated.
-   [OK]          Js.Dict                      10   fromList - [].
-   [OK]          Js.Dict                      11   fromList.
-   [OK]          Js.Dict                      12   fromArray - [].
-   [OK]          Js.Dict                      13   fromArray.
-   [OK]          Js.Dict                      14   map.
-   [OK]          Js.Undefined                  0   return with int.
-   [OK]          Js.Undefined                  1   return with string.
-   [OK]          Js.Undefined                  2   return with float.
-   [OK]          Js.Undefined                  3   return with Js.Date.t.
-   [OK]          Js.Undefined                  4   empty is None.
-   [OK]          Js.Undefined                  5   getUnsafe on return int.
-   [OK]          Js.Undefined                  6   getUnsafe on return Js.Date.t.
-   [OK]          Js.Undefined                  7   fromOpt Some round-trip.
-   [OK]          Js.Undefined                  8   fromOpt None round-trip.
-   [OK]          Js.Undefined                  9   fromOption Some round-trip.
-   [OK]          Js.Undefined                 10   fromOption None round-trip.
-   [OK]          Js.Undefined                 11   pattern match on return int.
-   [OK]          Js.Undefined                 12   pattern match on return float.
-   [OK]          Js.Undefined                 13   pattern match on return Js....
-   [OK]          Js.Undefined                 14   pattern match on empty.
-   [OK]          BigInt.Arithmetic             0   add: positive + positive.
-   [OK]          BigInt.Arithmetic             1   add: negative + negative.
-   [OK]          BigInt.Arithmetic             2   add: positive + negative.
-   [OK]          BigInt.Arithmetic             3   add: with zero.
-   [OK]          BigInt.Arithmetic             4   add: large numbers.
-   [OK]          BigInt.Arithmetic             5   sub: positive result.
-   [OK]          BigInt.Arithmetic             6   sub: negative result.
-   [OK]          BigInt.Arithmetic             7   sub: with zero.
-   [OK]          BigInt.Arithmetic             8   sub: self.
-   [OK]          BigInt.Arithmetic             9   mul: positive * positive.
-   [OK]          BigInt.Arithmetic            10   mul: negative * positive.
-   [OK]          BigInt.Arithmetic            11   mul: negative * negative.
-   [OK]          BigInt.Arithmetic            12   mul: with zero.
-   [OK]          BigInt.Arithmetic            13   mul: with one.
-   [OK]          BigInt.Arithmetic            14   mul: 3^100.
-   [OK]          BigInt.Arithmetic            15   div: exact division.
-   [OK]          BigInt.Arithmetic            16   div: truncate positive.
-   [OK]          BigInt.Arithmetic            17   div: truncate negative (tow...
-   [OK]          BigInt.Arithmetic            18   div: negative divisor.
-   [OK]          BigInt.Arithmetic            19   div: both negative.
-   [OK]          BigInt.Arithmetic            20   div: large numbers.
-   [OK]          BigInt.Arithmetic            21   div: large negative.
-   [OK]          BigInt.Arithmetic            22   div: by zero throws.
-   [OK]          BigInt.Arithmetic            23   rem: positive % positive.
-   [OK]          BigInt.Arithmetic            24   rem: negative dividend.
-   [OK]          BigInt.Arithmetic            25   rem: negative divisor.
-   [OK]          BigInt.Arithmetic            26   rem: both negative.
-   [OK]          BigInt.Arithmetic            27   rem: large numbers.
-   [OK]          BigInt.Arithmetic            28   rem: large positive.
-   [OK]          BigInt.Arithmetic            29   rem: by zero throws.
-   [OK]          BigInt.Arithmetic            30   pow: exponent zero.
-   [OK]          BigInt.Arithmetic            31   pow: exponent one.
-   [OK]          BigInt.Arithmetic            32   pow: 2^10.
-   [OK]          BigInt.Arithmetic            33   pow: (-2)^127.
-   [OK]          BigInt.Arithmetic            34   pow: 2^127.
-   [OK]          BigInt.Arithmetic            35   pow: negative exponent throws.
-   [OK]          BigInt.Arithmetic            36   pow: (-256)^11.
-   [OK]          BigInt.Arithmetic            37   pow: 7^20.
-   [OK]          BigInt.Arithmetic            38   neg: positive.
-   [OK]          BigInt.Arithmetic            39   neg: negative.
-   [OK]          BigInt.Arithmetic            40   neg: zero.
-   [OK]          BigInt.Arithmetic            41   abs: positive.
-   [OK]          BigInt.Arithmetic            42   abs: negative.
-   [OK]          BigInt.Arithmetic            43   abs: zero.
-   [OK]          BigInt.Bitwise                0   and: basic.
-   [OK]          BigInt.Bitwise                1   and: with zero.
-   [OK]          BigInt.Bitwise                2   and: with all ones.
-   [OK]          BigInt.Bitwise                3   and: negative (two's comple...
-   [OK]          BigInt.Bitwise                4   or: basic.
-   [OK]          BigInt.Bitwise                5   or: with zero.
-   [OK]          BigInt.Bitwise                6   or: disjoint bits.
-   [OK]          BigInt.Bitwise                7   xor: basic.
-   [OK]          BigInt.Bitwise                8   xor: same value.
-   [OK]          BigInt.Bitwise                9   xor: with zero.
-   [OK]          BigInt.Bitwise               10   not: basic.
-   [OK]          BigInt.Bitwise               11   not: zero.
-   [OK]          BigInt.Bitwise               12   not: -1.
-   [OK]          BigInt.Bitwise               13   not: positive.
-   [OK]          BigInt.Bitwise               14   not: negative.
-   [OK]          BigInt.Bitwise               15   shift_left: basic.
-   [OK]          BigInt.Bitwise               16   shift_left: 1 << 31.
-   [OK]          BigInt.Bitwise               17   shift_left: 1 << 32.
-   [OK]          BigInt.Bitwise               18   shift_left: 1 << 100.
-   [OK]          BigInt.Bitwise               19   shift_left: large number.
-   [OK]          BigInt.Bitwise               20   shift_left: negative number.
-   [OK]          BigInt.Bitwise               21   shift_left: by zero.
-   [OK]          BigInt.Bitwise               22   shift_right: basic.
-   [OK]          BigInt.Bitwise               23   shift_right: large number.
-   [OK]          BigInt.Bitwise               24   shift_right: negative (arit...
-   [OK]          BigInt.Bitwise               25   shift_right: by zero.
-   [OK]          BigInt.Bitwise               26   shift_right: small negative.
-   [OK]          BigInt.Comparison             0   equal: same value.
-   [OK]          BigInt.Comparison             1   equal: different values.
-   [OK]          BigInt.Comparison             2   equal: negative values.
-   [OK]          BigInt.Comparison             3   equal: opposite signs.
-   [OK]          BigInt.Comparison             4   equal: zeros.
-   [OK]          BigInt.Comparison             5   equal: large same.
-   [OK]          BigInt.Comparison             6   equal: large different.
-   [OK]          BigInt.Comparison             7   compare: less.
-   [OK]          BigInt.Comparison             8   compare: greater.
-   [OK]          BigInt.Comparison             9   compare: equal.
-   [OK]          BigInt.Comparison            10   compare: negative.
-   [OK]          BigInt.Comparison            11   compare: mixed sign.
-   [OK]          BigInt.Comparison            12   lt: true.
-   [OK]          BigInt.Comparison            13   lt: false (greater).
-   [OK]          BigInt.Comparison            14   lt: false (equal).
-   [OK]          BigInt.Comparison            15   lt: negative.
-   [OK]          BigInt.Comparison            16   le: true (less).
-   [OK]          BigInt.Comparison            17   le: true (equal).
-   [OK]          BigInt.Comparison            18   le: false.
-   [OK]          BigInt.Comparison            19   gt: true.
-   [OK]          BigInt.Comparison            20   gt: false (less).
-   [OK]          BigInt.Comparison            21   gt: false (equal).
-   [OK]          BigInt.Comparison            22   ge: true (greater).
-   [OK]          BigInt.Comparison            23   ge: true (equal).
-   [OK]          BigInt.Comparison            24   ge: false.
-   [OK]          BigInt.Constructor            0   from_string: empty string r...
-   [OK]          BigInt.Constructor            1   from_string: zero.
-   [OK]          BigInt.Constructor            2   from_string: positive decimal.
-   [OK]          BigInt.Constructor            3   from_string: negative decimal.
-   [OK]          BigInt.Constructor            4   from_string: positive sign.
-   [OK]          BigInt.Constructor            5   from_string: large number.
-   [OK]          BigInt.Constructor            6   from_string: very large num...
-   [OK]          BigInt.Constructor            7   from_string: leading whites...
-   [OK]          BigInt.Constructor            8   from_string: trailing white...
-   [OK]          BigInt.Constructor            9   from_string: both whitespace.
-   [OK]          BigInt.Constructor           10   from_string: tabs.
-   [OK]          BigInt.Constructor           11   from_string: newlines.
-   [OK]          BigInt.Constructor           12   from_string: hex lowercase.
-   [OK]          BigInt.Constructor           13   from_string: hex uppercase.
-   [OK]          BigInt.Constructor           14   from_string: hex large.
-   [OK]          BigInt.Constructor           15   from_string: hex negative.
-   [OK]          BigInt.Constructor           16   from_string: binary lowercase.
-   [OK]          BigInt.Constructor           17   from_string: binary uppercase.
-   [OK]          BigInt.Constructor           18   from_string: octal lowercase.
-   [OK]          BigInt.Constructor           19   from_string: octal uppercase.
-   [OK]          BigInt.Constructor           20   from_string: sign only throws.
-   [OK]          BigInt.Constructor           21   from_string: trailing chars...
-   [OK]          BigInt.Constructor           22   from_string: null char throws.
-   [OK]          BigInt.Constructor           23   from_string: decimal point ...
-   [OK]          BigInt.Constructor           24   from_string: float notation...
-   [OK]          BigInt.Constructor           25   from_int: zero.
-   [OK]          BigInt.Constructor           26   from_int: positive.
-   [OK]          BigInt.Constructor           27   from_int: negative.
-   [OK]          BigInt.Constructor           28   from_int: max_int.
-   [OK]          BigInt.Constructor           29   from_int: min_int.
-   [OK]          BigInt.Constructor           30   from_int64: large positive.
-   [OK]          BigInt.Constructor           31   from_int64: large negative.
-   [OK]          BigInt.Conversion             0   toString: zero.
-   [OK]          BigInt.Conversion             1   toString: positive.
-   [OK]          BigInt.Conversion             2   toString: negative.
-   [OK]          BigInt.Conversion             3   toString: large (1 << 100).
-   [OK]          BigInt.Conversion             4   toString: radix 2.
-   [OK]          BigInt.Conversion             5   toString: radix 8.
-   [OK]          BigInt.Conversion             6   toString: radix 16.
-   [OK]          BigInt.Conversion             7   toString: radix 36.
-   [OK]          BigInt.Conversion             8   toString: radix 16 large.
-   [OK]          BigInt.Conversion             9   toFloat: small.
-   [OK]          BigInt.Conversion            10   toFloat: negative.
-   [OK]          BigInt.Conversion            11   toFloat: zero.
-   [OK]          BigInt.Conversion            12   toFloat: MAX_SAFE_INTEGER.
-   [OK]          BigInt.Conversion            13   toFloat: large (0xfffffffff...
-   [OK]          BigInt.Conversion            14   toFloat: large negative.
-   [OK]          BigInt.Conversion            15   asIntN: positive fits.
-   [OK]          BigInt.Conversion            16   asIntN: positive wraps.
-   [OK]          BigInt.Conversion            17   asIntN: 255 -> -1.
-   [OK]          BigInt.Conversion            18   asIntN: negative fits.
-   [OK]          BigInt.Conversion            19   asIntN: negative wraps.
-   [OK]          BigInt.Conversion            20   asIntN: 64 bits.
-   [OK]          BigInt.Conversion            21   asUintN: fits.
-   [OK]          BigInt.Conversion            22   asUintN: wraps to 0.
-   [OK]          BigInt.Conversion            23   asUintN: wraps to 1.
-   [OK]          BigInt.Conversion            24   asUintN: negative wraps.
-   [OK]          BigInt.Conversion            25   asUintN: 64 bits.
-   [OK]          BigInt.AsIntN                 0   asIntN 0 bits.
-   [OK]          BigInt.AsIntN                 1   asIntN 1 bit.
-   [OK]          BigInt.AsIntN                 2   asIntN 8 bit.
-   [OK]          BigInt.AsIntN                 3   asIntN 16 bit.
-   [OK]          BigInt.AsIntN                 4   asIntN 32 bit.
-   [OK]          BigInt.AsIntN                 5   asIntN 64 bit.
-   [OK]          BigInt.AsIntN                 6   asIntN preserves small posi...
-   [OK]          BigInt.AsIntN                 7   asIntN preserves small nega...
-   [OK]          BigInt.AsIntN                 8   asIntN wrapping.
-   [OK]          BigInt.AsIntN                 9   asIntN large bits.
-   [OK]          BigInt.AsIntN                10   asIntN negative input.
-   [OK]          BigInt.AsIntN                11   asIntN 2-bit boundary.
-   [OK]          BigInt.AsIntN                12   asIntN 3-bit boundary.
-   [OK]          BigInt.AsIntN                13   asIntN 4-bit boundary.
-   [OK]          BigInt.AsIntN                14   asIntN identity for zero.
-   [OK]          BigInt.AsIntN                15   asIntN minus one.
-   [OK]          BigInt.AsUintN                0   asUintN 0 bits.
-   [OK]          BigInt.AsUintN                1   asUintN 1 bit.
-   [OK]          BigInt.AsUintN                2   asUintN 8 bit.
-   [OK]          BigInt.AsUintN                3   asUintN 16 bit.
-   [OK]          BigInt.AsUintN                4   asUintN 32 bit.
-   [OK]          BigInt.AsUintN                5   asUintN 64 bit.
-   [OK]          BigInt.AsUintN                6   asUintN preserves small val...
-   [OK]          BigInt.AsUintN                7   asUintN wrapping.
-   [OK]          BigInt.AsUintN                8   asUintN large bits.
-   [OK]          BigInt.AsUintN                9   asUintN negative becomes po...
-   [OK]          BigInt.AsUintN               10   asUintN 2-bit boundary.
-   [OK]          BigInt.AsUintN               11   asUintN 3-bit boundary.
-   [OK]          BigInt.AsUintN               12   asUintN 4-bit boundary.
-   [OK]          BigInt.AsUintN               13   asUintN identity for zero.
-   [OK]          BigInt.AsUintN               14   asUintN one.
-   [OK]          BigInt.AsUintN               15   asUintN power of two.
-   [OK]          BigInt.AsUintN               16   asUintN power of two minus ...
-   [OK]          BigInt.Prototype              0   toString default radix.
-   [OK]          BigInt.Prototype              1   toString radix 2 (binary).
-   [OK]          BigInt.Prototype              2   toString radix 8 (octal).
-   [OK]          BigInt.Prototype              3   toString radix 10 (decimal).
-   [OK]          BigInt.Prototype              4   toString radix 16 (hex).
-   [OK]          BigInt.Prototype              5   toString radix 36 (max).
-   [OK]          BigInt.Prototype              6   toString various radixes.
-   [OK]          BigInt.Prototype              7   toString large numbers.
-   [OK]          BigInt.Prototype              8   toString negative large.
-   [OK]          BigInt.Prototype              9   toString zero all radixes.
-   [OK]          BigInt.Prototype             10   to_float small.
-   [OK]          BigInt.Prototype             11   to_float large.
-   [OK]          BigInt.Prototype             12   to_float very large.
-   [OK]          BigInt.Prototype             13   of_string edge cases.
-   [OK]          BigInt.Prototype             14   of_string hex.
-   [OK]          BigInt.Prototype             15   of_string binary.
-   [OK]          BigInt.Prototype             16   of_string octal.
-   [OK]          BigInt.Prototype             17   compare equal.
-   [OK]          BigInt.Prototype             18   compare less.
-   [OK]          BigInt.Prototype             19   compare greater.
-   [OK]          BigInt.Prototype             20   compare negative.
-   [OK]          BigInt.Prototype             21   compare large.
-   [OK]          Date.Getters                  0   getTime returns epoch ms.
-   [OK]          Date.Getters                  1   getTime NaN for invalid date.
-   [OK]          Date.Getters                  2   getUTCFullYear.
-   [OK]          Date.Getters                  3   getUTCMonth.
-   [OK]          Date.Getters                  4   getUTCDate.
-   [OK]          Date.Getters                  5   getUTCDay.
-   [OK]          Date.Getters                  6   getUTCHours.
-   [OK]          Date.Getters                  7   getUTCMinutes.
-   [OK]          Date.Getters                  8   getUTCSeconds.
-   [OK]          Date.Getters                  9   getUTCMilliseconds.
-   [OK]          Date.Getters                 10   UTC getters at epoch.
-   [OK]          Date.Getters                 11   UTC getters before epoch.
-   [OK]          Date.Getters                 12   UTC getters at Y2K.
-   [OK]          Date.Getters                 13   UTC getters on leap day.
-   [OK]          Date.Getters                 14   getUTCFullYear NaN.
-   [OK]          Date.Getters                 15   getUTCMonth NaN.
-   [OK]          Date.Getters                 16   getUTCDate NaN.
-   [OK]          Date.Getters                 17   getUTCDay NaN.
-   [OK]          Date.Getters                 18   getUTCHours NaN.
-   [OK]          Date.Getters                 19   getUTCMinutes NaN.
-   [OK]          Date.Getters                 20   getUTCSeconds NaN.
-   [OK]          Date.Getters                 21   getUTCMilliseconds NaN.
-   [OK]          Date.Getters                 22   new year transition.
-   [OK]          Date.Getters                 23   month lengths.
-   [OK]          Date.LocalGetters             0   getTime basic.
-   [OK]          Date.LocalGetters             1   getTime epoch.
-   [OK]          Date.LocalGetters             2   getTime negative.
-   [OK]          Date.LocalGetters             3   getTime NaN.
-   [OK]          Date.LocalGetters             4   valueOf basic.
-   [OK]          Date.LocalGetters             5   valueOf epoch.
-   [OK]          Date.LocalGetters             6   valueOf NaN.
-   [OK]          Date.LocalGetters             7   valueOf equals getTime.
-   [OK]          Date.LocalGetters             8   getUTCFullYear 2017.
-   [OK]          Date.LocalGetters             9   getUTCFullYear 1970 (epoch).
-   [OK]          Date.LocalGetters            10   getUTCFullYear 1969.
-   [OK]          Date.LocalGetters            11   getUTCFullYear NaN.
-   [OK]          Date.LocalGetters            12   getUTCFullYear Y2K.
-   [OK]          Date.LocalGetters            13   getUTCFullYear leap year.
-   [OK]          Date.LocalGetters            14   getUTCMonth January (0).
-   [OK]          Date.LocalGetters            15   getUTCMonth December (11).
-   [OK]          Date.LocalGetters            16   getUTCMonth NaN.
-   [OK]          Date.LocalGetters            17   getUTCMonth epoch.
-   [OK]          Date.LocalGetters            18   getUTCDate first.
-   [OK]          Date.LocalGetters            19   getUTCDate 31st.
-   [OK]          Date.LocalGetters            20   getUTCDate NaN.
-   [OK]          Date.LocalGetters            21   getUTCDate epoch.
-   [OK]          Date.LocalGetters            22   getUTCDay Thursday (epoch).
-   [OK]          Date.LocalGetters            23   getUTCDay Sunday.
-   [OK]          Date.LocalGetters            24   getUTCDay Saturday.
-   [OK]          Date.LocalGetters            25   getUTCDay NaN.
-   [OK]          Date.LocalGetters            26   getUTCHours zero.
-   [OK]          Date.LocalGetters            27   getUTCHours 23.
-   [OK]          Date.LocalGetters            28   getUTCHours NaN.
-   [OK]          Date.LocalGetters            29   getUTCHours epoch.
-   [OK]          Date.LocalGetters            30   getUTCMinutes zero.
-   [OK]          Date.LocalGetters            31   getUTCMinutes 59.
-   [OK]          Date.LocalGetters            32   getUTCMinutes NaN.
-   [OK]          Date.LocalGetters            33   getUTCSeconds zero.
-   [OK]          Date.LocalGetters            34   getUTCSeconds 59.
-   [OK]          Date.LocalGetters            35   getUTCSeconds NaN.
-   [OK]          Date.LocalGetters            36   getUTCMilliseconds zero.
-   [OK]          Date.LocalGetters            37   getUTCMilliseconds 999.
-   [OK]          Date.LocalGetters            38   getUTCMilliseconds NaN.
-   [OK]          Date.LocalGetters            39   getUTCMilliseconds middle.
-   [OK]          Date.LocalGetters            40   getTimezoneOffset returns n...
-   [OK]          Date.LocalGetters            41   getTimezoneOffset NaN.
-   [OK]          Date.LocalGetters            42   getTimezoneOffset in valid ...
-   [OK]          Date.LocalGetters            43   local getters consistent.
-   [OK]          Date.LocalGetters            44   local getters NaN.
-   [OK]          Date.LocalGetters            45   getDay range 0-6.
-   [OK]          Date.LocalGetters            46   getters large positive date.
-   [OK]          Date.LocalGetters            47   getters large negative date.
-   [OK]          Date.LocalGetters            48   getters boundary milliseconds.
-   [OK]          Date.Setters                  0   setTime basic.
-   [OK]          Date.Setters                  1   setTime epoch.
-   [OK]          Date.Setters                  2   setTime negative.
-   [OK]          Date.Setters                  3   setTime NaN value.
-   [OK]          Date.Setters                  4   setTime on NaN date.
-   [OK]          Date.Setters                  5   setUTCMilliseconds basic.
-   [OK]          Date.Setters                  6   setUTCMilliseconds overflow.
-   [OK]          Date.Setters                  7   setUTCMilliseconds negative.
-   [OK]          Date.Setters                  8   setUTCMilliseconds NaN.
-   [OK]          Date.Setters                  9   setUTCSeconds basic.
-   [OK]          Date.Setters                 10   setUTCSeconds overflow.
-   [OK]          Date.Setters                 11   setUTCSeconds with ms.
-   [OK]          Date.Setters                 12   setUTCSeconds NaN.
-   [OK]          Date.Setters                 13   setUTCMinutes basic.
-   [OK]          Date.Setters                 14   setUTCMinutes overflow.
-   [OK]          Date.Setters                 15   setUTCMinutes with seconds.
-   [OK]          Date.Setters                 16   setUTCMinutes with seconds ...
-   [OK]          Date.Setters                 17   setUTCMinutes NaN.
-   [OK]          Date.Setters                 18   setUTCHours basic.
-   [OK]          Date.Setters                 19   setUTCHours overflow.
-   [OK]          Date.Setters                 20   setUTCHours with minutes.
-   [OK]          Date.Setters                 21   setUTCHours with minutes an...
-   [OK]          Date.Setters                 22   setUTCHours all components.
-   [OK]          Date.Setters                 23   setUTCHours NaN.
-   [OK]          Date.Setters                 24   setUTCDate basic.
-   [OK]          Date.Setters                 25   setUTCDate overflow.
-   [OK]          Date.Setters                 26   setUTCDate zero.
-   [OK]          Date.Setters                 27   setUTCDate negative.
-   [OK]          Date.Setters                 28   setUTCDate NaN.
-   [OK]          Date.Setters                 29   setUTCMonth basic.
-   [OK]          Date.Setters                 30   setUTCMonth overflow.
-   [OK]          Date.Setters                 31   setUTCMonth negative.
-   [OK]          Date.Setters                 32   setUTCMonth with date.
-   [OK]          Date.Setters                 33   setUTCMonth NaN.
-   [OK]          Date.Setters                 34   setUTCFullYear basic.
-   [OK]          Date.Setters                 35   setUTCFullYear with month.
-   [OK]          Date.Setters                 36   setUTCFullYear with month a...
-   [OK]          Date.Setters                 37   setUTCFullYear leap to non-...
-   [OK]          Date.Setters                 38   setUTCFullYear NaN.
-   [OK]          Date.Setters                 39   setMilliseconds basic.
-   [OK]          Date.Setters                 40   setSeconds basic.
-   [OK]          Date.Setters                 41   setMinutes basic.
-   [OK]          Date.Setters                 42   setHours basic.
-   [OK]          Date.Setters                 43   setDate basic.
-   [OK]          Date.Setters                 44   setMonth basic.
-   [OK]          Date.Setters                 45   setFullYear basic.
-   [OK]          Date.Setters                 46   setSeconds with ms.
-   [OK]          Date.Setters                 47   setMinutes with seconds.
-   [OK]          Date.Setters                 48   setMinutes with seconds and...
-   [OK]          Date.Setters                 49   setHours with minutes.
-   [OK]          Date.Setters                 50   setHours with minutes and s...
-   [OK]          Date.Setters                 51   setHours all components.
-   [OK]          Date.Setters                 52   setMonth with date.
-   [OK]          Date.Setters                 53   setFullYear with month.
-   [OK]          Date.Setters                 54   setFullYear with month and ...
-   [OK]          Date.Setters                 55   setMilliseconds NaN.
-   [OK]          Date.Setters                 56   setSeconds NaN.
-   [OK]          Date.Setters                 57   setMinutes NaN.
-   [OK]          Date.Setters                 58   setHours NaN.
-   [OK]          Date.Setters                 59   setDate NaN.
-   [OK]          Date.Setters                 60   setMonth NaN.
-   [OK]          Date.Setters                 61   setFullYear NaN.
-   [OK]          Date.ToString                 0   toUTCString basic.
-   [OK]          Date.ToString                 1   toUTCString epoch.
-   [OK]          Date.ToString                 2   toUTCString format.
-   [OK]          Date.ToString                 3   toUTCString NaN.
-   [OK]          Date.ToString                 4   toUTCString negative year.
-   [OK]          Date.ToString                 5   toUTCString all months.
-   [OK]          Date.ToString                 6   toUTCString day names.
-   [OK]          Date.ToString                 7   toDateString basic.
-   [OK]          Date.ToString                 8   toDateString epoch.
-   [OK]          Date.ToString                 9   toDateString NaN.
-   [OK]          Date.ToString                10   toDateString no time.
-   [OK]          Date.ToString                11   toTimeString basic.
-   [OK]          Date.ToString                12   toTimeString epoch.
-   [OK]          Date.ToString                13   toTimeString NaN.
-   [OK]          Date.ToString                14   toTimeString contains time.
-   [OK]          Date.ToString                15   toString basic.
-   [OK]          Date.ToString                16   toString epoch.
-   [OK]          Date.ToString                17   toString NaN.
-   [OK]          Date.ToString                18   toString contains date and ...
-   [OK]          Date.ToString                19   toString contains year.
-   [OK]          Date.ToString                20   toJSON basic.
-   [OK]          Date.ToString                21   toJSON NaN.
-   [OK]          Date.ToString                22   toJSONUnsafe basic.
-   [OK]          Date.ToString                23   toLocaleString basic.
-   [OK]          Date.ToString                24   toLocaleString NaN.
-   [OK]          Date.ToString                25   toLocaleDateString basic.
-   [OK]          Date.ToString                26   toLocaleDateString NaN.
-   [OK]          Date.ToString                27   toLocaleTimeString basic.
-   [OK]          Date.ToString                28   toLocaleTimeString NaN.
-   [OK]          Date.ToString                29   toString large year.
-   [OK]          Date.ToString                30   toString negative year.
-   [OK]          Date.ToString                31   toUTCString Y2K.
-   [OK]          Date.Now                      0   now returns finite number.
-   [OK]          Date.Now                      1   now returns positive.
-   [OK]          Date.Now                      2   now is recent (after 2020).
-   [OK]          Date.Now                      3   now is monotonic.
-   [OK]          Date.Now                      4   now returns integer ms.
-   [OK]          Date.Parse                    0   empty string returns NaN.
-   [OK]          Date.Parse                    1   year only: 2000.
-   [OK]          Date.Parse                    2   year-month: 2000-01.
-   [OK]          Date.Parse                    3   full date: 2000-01-01.
-   [OK]          Date.Parse                    4   date with time UTC: 2000-01...
-   [OK]          Date.Parse                    5   date with seconds: 2000-01-...
-   [OK]          Date.Parse                    6   milliseconds .1Z = 100ms.
-   [OK]          Date.Parse                    7   milliseconds .10Z = 100ms.
-   [OK]          Date.Parse                    8   milliseconds .100Z = 100ms.
-   [OK]          Date.Parse                    9   milliseconds .1000Z = 100ms.
-   [OK]          Date.Parse                   10   timezone offset +00:00.
-   [OK]          Date.Parse                   11   known ISO timestamp.
-   [OK]          Date.Parse                   12   roundtrip parsing.
-   [OK]          Date.Parse                   13   millis: single digit .1.
-   [OK]          Date.Parse                   14   millis: two digits .12.
-   [OK]          Date.Parse                   15   millis: four digits .1234 t...
-   [OK]          Date.Parse                   16   millis: many digits .9999 t...
-   [OK]          Date.Parse                   17   expanded year +002000.
-   [OK]          Date.Parse                   18   expanded year -000001.
-   [OK]          Date.Parse                   19   expanded year -000000 is in...
-   [OK]          Date.Parse                   20   month name format: Jan 1 2000.
-   [OK]          Date.Parse                   21   with weekday: Sat Jan 1 2000.
-   [OK]          Date.Parse                   22   timezone GMT+0100.
-   [OK]          Date.Parse                   23   timezone GMT+0200.
-   [OK]          Date.Parse                   24   invalid: gibberish.
-   [OK]          Date.Parse                   25   invalid: partial 2000-.
-   [OK]          Date.Parse                   26   invalid: month 13.
-   [OK]          Date.Parse                   27   invalid: day 32.
-   [OK]          Date.Parse                   28   invalid: hour 25.
-   [OK]          Date.Parse                   29   invalid: minute 60.
-   [OK]          Date.Parse                   30   invalid: second 60.
-   [OK]          Date.ToISOString              0   known timestamp.
-   [OK]          Date.ToISOString              1   epoch.
-   [OK]          Date.ToISOString              2   Y2K.
-   [OK]          Date.ToISOString              3   with milliseconds.
-   [OK]          Date.ToISOString              4   millis: 000.
-   [OK]          Date.ToISOString              5   millis: 001.
-   [OK]          Date.ToISOString              6   millis: 010.
-   [OK]          Date.ToISOString              7   millis: 100.
-   [OK]          Date.ToISOString              8   millis: 999.
-   [OK]          Date.ToISOString              9   single digit month padded.
-   [OK]          Date.ToISOString             10   single digit day padded.
-   [OK]          Date.ToISOString             11   single digit hour padded.
-   [OK]          Date.ToISOString             12   before epoch -1ms.
-   [OK]          Date.ToISOString             13   1969 Jan.
-   [OK]          Date.ToISOString             14   year 0.
-   [OK]          Date.ToISOString             15   negative year.
-   [OK]          Date.ToISOString             16   year 10000.
-   [OK]          Date.ToISOString             17   roundtrip known timestamp.
-   [OK]          Date.ToISOString             18   roundtrip epoch.
-   [OK]          Date.ToISOString             19   roundtrip before epoch.
-   [OK]          Date.ToISOString             20   QJS: 2020-01-01T01:01:01.123Z.
-   [OK]          Date.ToISOString             21   QJS: .1Z -> .100Z.
-   [OK]          Date.ToISOString             22   QJS: .12Z -> .120Z.
-   [OK]          Date.UTC                      0   UTC year only.
-   [OK]          Date.UTC                      1   UTC year and month.
-   [OK]          Date.UTC                      2   UTC year, month, day.
-   [OK]          Date.UTC                      3   UTC with hours.
-   [OK]          Date.UTC                      4   UTC with minutes.
-   [OK]          Date.UTC                      5   UTC with seconds.
-   [OK]          Date.UTC                      6   UTC with milliseconds.
-   [OK]          Date.UTC                      7   UTC NaN year.
-   [OK]          Date.UTC                      8   UTC NaN month.
-   [OK]          Date.UTC                      9   UTC NaN day.
-   [OK]          Date.UTC                     10   UTC NaN hours.
-   [OK]          Date.UTC                     11   UTC NaN minutes.
-   [OK]          Date.UTC                     12   UTC NaN seconds.
-   [OK]          Date.UTC                     13   UTC Unix epoch.
-   [OK]          Date.UTC                     14   UTC before epoch.
-   [OK]          Date.UTC                     15   UTC Y2K.
-   [OK]          Date.UTC                     16   UTC year 0 -> 1900.
-   [OK]          Date.UTC                     17   UTC year 99 -> 1999.
-   [OK]          Date.UTC                     18   UTC year 100 stays 100.
-   [OK]          Date.UTC                     19   UTC month 12 = January next...
-   [OK]          Date.UTC                     20   UTC month -1 = December pre...
-   [OK]          Date.UTC                     21   UTC day 32 Jan = Feb 1.
-   [OK]          Date.UTC                     22   UTC day 0 = last day prev m...
-   [OK]          Date.UTC                     23   UTC day -1 = second-to-last...
-   [OK]          Date.UTC                     24   UTC leap year Feb 29 valid.
-   [OK]          Date.UTC                     25   UTC non-leap Feb 29 = Mar 1.
-   [OK]          Date.UTC                     26   UTC 2000 is leap year.
-   [OK]          Date.UTC                     27   UTC 1900 is NOT leap year.
-   [OK]          Date.UTC                     28   UTC large day offset.
-   [OK]          Date.UTC                     29   UTC large minute offset.
-   [OK]          Date.UTC                     30   UTC large second offset.
-   [OK]          Number.IsFinite               0   infinity: positive Infinity...
-   [OK]          Number.IsFinite               1   negative_infinity: negative...
-   [OK]          Number.IsFinite               2   nan: NaN returns false.
-   [OK]          Number.IsFinite               3   nan_from_operations: NaN fr...
-   [OK]          Number.IsFinite               4   finite_numbers: zeros.
-   [OK]          Number.IsFinite               5   finite_numbers: positive in...
-   [OK]          Number.IsFinite               6   finite_numbers: negative in...
-   [OK]          Number.IsFinite               7   finite_numbers: decimals.
-   [OK]          Number.IsFinite               8   finite_numbers: MAX/MIN_VALUE.
-   [OK]          Number.IsFinite               9   finite_numbers: safe intege...
-   [OK]          Number.IsFinite              10   finite_numbers: epsilon.
-   [OK]          Number.IsFinite              11   finite_numbers: very small.
-   [OK]          Number.IsFinite              12   finite_numbers: very large.
-   [OK]          Number.IsInteger              0   integers: zeros.
-   [OK]          Number.IsInteger              1   integers: positive.
-   [OK]          Number.IsInteger              2   integers: negative.
-   [OK]          Number.IsInteger              3   integers: large.
-   [OK]          Number.IsInteger              4   integers: decimal zero frac...
-   [OK]          Number.IsInteger              5   non_integers: decimals.
-   [OK]          Number.IsInteger              6   non_integers: small fractions.
-   [OK]          Number.IsInteger              7   special: NaN.
-   [OK]          Number.IsInteger              8   special: Infinity.
-   [OK]          Number.IsInteger              9   edge: MAX_VALUE is integer.
-   [OK]          Number.IsInteger             10   edge: MIN_VALUE is not inte...
-   [OK]          Number.IsInteger             11   edge: epsilon is not integer.
-   [OK]          Number.IsInteger             12   edge: powers of two.
-   [OK]          Number.IsInteger             13   edge: scientific notation.
-   [OK]          Number.IsNaN                  0   nan_value: NaN returns true.
-   [OK]          Number.IsNaN                  1   nan_from_operation: NaN fro...
-   [OK]          Number.IsNaN                  2   nan_from_parseInt: NaN from...
-   [OK]          Number.IsNaN                  3   nan_from_parseFloat: NaN fr...
-   [OK]          Number.IsNaN                  4   finite_numbers: finite numb...
-   [OK]          Number.IsNaN                  5   zero_values: zeros return f...
-   [OK]          Number.IsNaN                  6   infinity_values: Infinity r...
-   [OK]          Number.IsNaN                  7   max_min_values: extreme val...
-   [OK]          Number.IsNaN                  8   epsilon_value: epsilon retu...
-   [OK]          Number.ParseFloat             0   S15.1.2.3_A1_T1: empty stri...
-   [OK]          Number.ParseFloat             1   S15.1.2.3_A1_T2: simple int...
-   [OK]          Number.ParseFloat             2   S15.1.2.3_A1_T3: non-numeri...
-   [OK]          Number.ParseFloat             3   S15.1.2.3_A1_T4: decimal nu...
-   [OK]          Number.ParseFloat             4   S15.1.2.3_A1_T5: stops at i...
-   [OK]          Number.ParseFloat             5   S15.1.2.3_A1_T6: whitespace...
-   [OK]          Number.ParseFloat             6   S15.1.2.3_A1_T7: invalid st...
-   [OK]          Number.ParseFloat             7   S15.1.2.3_A2_T1: leading sp...
-   [OK]          Number.ParseFloat             8   S15.1.2.3_A2_T2: leading tabs.
-   [OK]          Number.ParseFloat             9   S15.1.2.3_A2_T3: leading ne...
-   [OK]          Number.ParseFloat            10   S15.1.2.3_A2_T4: leading ca...
-   [OK]          Number.ParseFloat            11   S15.1.2.3_A2_T5: leading fo...
-   [OK]          Number.ParseFloat            12   S15.1.2.3_A2_T6: leading ve...
-   [OK]          Number.ParseFloat            13   S15.1.2.3_A2_T7: mixed whit...
-   [OK]          Number.ParseFloat            14   S15.1.2.3_A2_T8: non-breaki...
-   [OK]          Number.ParseFloat            15   S15.1.2.3_A2_T9: trailing c...
-   [OK]          Number.ParseFloat            16   S15.1.2.3_A2_T10: whitespac...
-   [OK]          Number.ParseFloat            17   S15.1.2.3_A3_T1: positive s...
-   [OK]          Number.ParseFloat            18   S15.1.2.3_A3_T2: negative s...
-   [OK]          Number.ParseFloat            19   S15.1.2.3_A3_T3: sign with ...
-   [OK]          Number.ParseFloat            20   S15.1.2.3_A4_T1: basic expo...
-   [OK]          Number.ParseFloat            21   S15.1.2.3_A4_T2: uppercase E.
-   [OK]          Number.ParseFloat            22   S15.1.2.3_A4_T3: negative e...
-   [OK]          Number.ParseFloat            23   S15.1.2.3_A4_T4: positive e...
-   [OK]          Number.ParseFloat            24   S15.1.2.3_A4_T5: decimal wi...
-   [OK]          Number.ParseFloat            25   S15.1.2.3_A4_T6: incomplete...
-   [OK]          Number.ParseFloat            26   S15.1.2.3_A4_T7: very large...
-   [OK]          Number.ParseFloat            27   S15.1.2.3_A5_T1: Infinity s...
-   [OK]          Number.ParseFloat            28   S15.1.2.3_A5_T2: signed Inf...
-   [OK]          Number.ParseFloat            29   S15.1.2.3_A5_T3: Infinity w...
-   [OK]          Number.ParseFloat            30   S15.1.2.3_A5_T4: Infinity w...
-   [OK]          Number.ParseFloat            31   S15.1.2.3_A6: multiple deci...
-   [OK]          Number.ParseFloat            32   S15.1.2.3_A7.5: leading dec...
-   [OK]          Number.ParseFloat            33   S15.1.2.3_A7.6: trailing de...
-   [OK]          Number.ParseFloat            34   S15.1.2.3_A7.7: decimal wit...
-   [OK]          Number.ParseFloat            35   misc_t1: hex not supported.
-   [OK]          Number.ParseFloat            36   misc_t2: binary/octal not s...
-   [OK]          Number.ParseFloat            37   misc_t3: leading zeros.
-   [OK]          Number.ParseFloat            38   misc_t4: NaN string.
-   [OK]          Number.ParseFloat            39   misc_t5: sign edge cases.
-   [OK]          Number.ParseFloat            40   misc_t6: very small numbers.
-   [OK]          Number.ParseFloat            41   misc_t7: negative zero.
-   [OK]          Number.ParseFloat            42   misc_t8: precision loss.
-   [OK]          Number.ParseFloat            43   misc_t9: exponent without m...
-   [OK]          Number.ParseFloat            44   misc_t10: comprehensive whi...
-   [OK]          Number.ParseFloat            45   misc_t11: Infinity case sen...
-   [OK]          Number.ParseFloat            46   misc_t12: sign with decimal...
-   [OK]          Number.ParseFloat            47   misc_t13: multiple e.
-   [OK]          Number.ParseFloat            48   misc_t14: exponent with dec...
-   [OK]          Number.ParseInt               0   S15.1.2.2_A1_T1: empty stri...
-   [OK]          Number.ParseInt               1   S15.1.2.2_A1_T2: whitespace...
-   [OK]          Number.ParseInt               2   S15.1.2.2_A1_T3: non-numeri...
-   [OK]          Number.ParseInt               3   S15.1.2.2_A1_T4: invalid st...
-   [OK]          Number.ParseInt               4   S15.1.2.2_A1_T5: sign only ...
-   [OK]          Number.ParseInt               5   S15.1.2.2_A1_T6: stops at i...
-   [OK]          Number.ParseInt               6   S15.1.2.2_A1_T7: NaN/Infini...
-   [OK]          Number.ParseInt               7   S15.1.2.2_A2_T1: leading sp...
-   [OK]          Number.ParseInt               8   S15.1.2.2_A2_T2: leading tabs.
-   [OK]          Number.ParseInt               9   S15.1.2.2_A2_T3: leading ne...
-   [OK]          Number.ParseInt              10   S15.1.2.2_A2_T4: leading ca...
-   [OK]          Number.ParseInt              11   S15.1.2.2_A2_T5: leading fo...
-   [OK]          Number.ParseInt              12   S15.1.2.2_A2_T6: leading ve...
-   [OK]          Number.ParseInt              13   S15.1.2.2_A2_T7: mixed whit...
-   [OK]          Number.ParseInt              14   S15.1.2.2_A2_T8: non-breaki...
-   [OK]          Number.ParseInt              15   S15.1.2.2_A2_T9: trailing w...
-   [OK]          Number.ParseInt              16   S15.1.2.2_A2_T10: whitespac...
-   [OK]          Number.ParseInt              17   S15.1.2.2_A3.1_T1: positive...
-   [OK]          Number.ParseInt              18   S15.1.2.2_A3.1_T2: negative...
-   [OK]          Number.ParseInt              19   S15.1.2.2_A3.1_T3: sign wit...
-   [OK]          Number.ParseInt              20   S15.1.2.2_A3.1_T4: multiple...
-   [OK]          Number.ParseInt              21   S15.1.2.2_A3.1_T5: sign wit...
-   [OK]          Number.ParseInt              22   S15.1.2.2_A3.1_T6: sign wit...
-   [OK]          Number.ParseInt              23   S15.1.2.2_A3.1_T7: sign alone.
-   [OK]          Number.ParseInt              24   S15.1.2.2_A3.2_T1: negative...
-   [OK]          Number.ParseInt              25   S15.1.2.2_A3.2_T2: negative...
-   [OK]          Number.ParseInt              26   S15.1.2.2_A3.2_T3: negative...
-   [OK]          Number.ParseInt              27   S15.1.2.2_A4.1_T1: radix 2.
-   [OK]          Number.ParseInt              28   S15.1.2.2_A4.1_T2: radix 8.
-   [OK]          Number.ParseInt              29   S15.1.2.2_A4.2_T1: radix 16.
-   [OK]          Number.ParseInt              30   S15.1.2.2_A4.2_T2: radix 36.
-   [OK]          Number.ParseInt              31   S15.1.2.2_A5.1_T1: 0x prefi...
-   [OK]          Number.ParseInt              32   S15.1.2.2_A5.2_T1: 0x with ...
-   [OK]          Number.ParseInt              33   S15.1.2.2_A5.2_T2: 0x with ...
-   [OK]          Number.ParseInt              34   S15.1.2.2_A6.1_T1: radix 0 ...
-   [OK]          Number.ParseInt              35   S15.1.2.2_A6.1_T2: radix 1 ...
-   [OK]          Number.ParseInt              36   S15.1.2.2_A6.1_T3: radix 37...
-   [OK]          Number.ParseInt              37   S15.1.2.2_A6.1_T4: large ra...
-   [OK]          Number.ParseInt              38   S15.1.2.2_A6.1_T5: negative...
-   [OK]          Number.ParseInt              39   S15.1.2.2_A6.1_T6: boundary...
-   [OK]          Number.ParseInt              40   S15.1.2.2_A7.1_T1: digits b...
-   [OK]          Number.ParseInt              41   S15.1.2.2_A7.1_T2: all digi...
-   [OK]          Number.ParseInt              42   S15.1.2.2_A7.2_T1: large nu...
-   [OK]          Number.ParseInt              43   S15.1.2.2_A7.2_T2: large he...
-   [OK]          Number.ParseInt              44   S15.1.2.2_A7.2_T3: many dig...
-   [OK]          Number.ParseInt              45   S15.1.2.2_A7.3_T1: leading ...
-   [OK]          Number.ParseInt              46   S15.1.2.2_A7.3_T2: leading ...
-   [OK]          Number.ParseInt              47   S15.1.2.2_A7.3_T3: only zeros.
-   [OK]          Number.ParseInt              48   S15.1.2.2_A8: decimal point.
-   [OK]          Number.ParseInt              49   misc_t1: scientific notatio...
-   [OK]          Number.ParseInt              50   misc_t2: unicode digits not...
-   [OK]          Number.ParseInt              51   misc_t3: 0o octal prefix no...
-   [OK]          Number.ParseInt              52   misc_t4: 0b binary prefix n...
-   [OK]          Number.ParseInt              53   misc_t5: single digits.
-   [OK]          Number.ParseInt              54   misc_t6: radix boundaries.
-   [OK]          Number.ParseInt              55   misc_t7: case insensitivity.
-   [OK]          Number.ParseInt              56   misc_t8: comprehensive whit...
-   [OK]          Number.ToString               0   basic: integers.
-   [OK]          Number.ToString               1   basic: decimals.
-   [OK]          Number.ToString               2   basic: special values.
-   [OK]          Number.ToString               3   basic: scientific notation.
-   [OK]          Number.ToString               4   basic: negative zero.
-   [OK]          Number.ToString               5   radix 2: binary.
-   [OK]          Number.ToString               6   radix 8: octal.
-   [OK]          Number.ToString               7   radix 16: hex.
-   [OK]          Number.ToString               8   radix 36: max.
-   [OK]          Number.ToString               9   radix 10: explicit.
-   [OK]          Number.ToString              10   negative with radix.
-   [OK]          Number.ToString              11   special values with radix.
-   [OK]          Number.ToString              12   large numbers.
-   [OK]          Number.ToExponential          0   basic: no digits.
-   [OK]          Number.ToExponential          1   digits: 0.
-   [OK]          Number.ToExponential          2   digits: 1.
-   [OK]          Number.ToExponential          3   digits: multiple.
-   [OK]          Number.ToExponential          4   digits: large.
-   [OK]          Number.ToExponential          5   special values.
-   [OK]          Number.ToExponential          6   special values with digits.
-   [OK]          Number.ToExponential          7   negative numbers.
-   [OK]          Number.ToExponential          8   rounding.
-   [OK]          Number.ToExponential          9   very small numbers.
-   [OK]          Number.ToExponential         10   very large numbers.
-   [OK]          Number.ToExponential         11   negative zero.
-   [OK]          Number.ToPrecision            0   basic: no precision.
-   [OK]          Number.ToPrecision            1   precision: 1.
-   [OK]          Number.ToPrecision            2   precision: 2.
-   [OK]          Number.ToPrecision            3   precision: multiple.
-   [OK]          Number.ToPrecision            4   precision: large.
-   [OK]          Number.ToPrecision            5   special values.
-   [OK]          Number.ToPrecision            6   special values with precision.
-   [OK]          Number.ToPrecision            7   negative numbers.
-   [OK]          Number.ToPrecision            8   rounding.
-   [OK]          Number.ToPrecision            9   zero handling.
-   [OK]          Number.ToPrecision           10   negative zero.
-   [OK]          Number.ToPrecision           11   very small numbers.
-   [OK]          Number.ToPrecision           12   very large numbers.
-   [OK]          String.Normalize              0   default form (NFC).
-   [OK]          String.Normalize              1   empty string.
-   [OK]          String.Normalize              2   ASCII unchanged.
-   [OK]          String.Normalize              3   NFC: basic.
-   [OK]          String.Normalize              4   NFC: multiple accents.
-   [OK]          String.Normalize              5   NFD: basic.
-   [OK]          String.Normalize              6   NFD: already decomposed.
-   [OK]          String.Normalize              7   NFKC: ligature.
-   [OK]          String.Normalize              8   NFKC: superscript.
-   [OK]          String.Normalize              9   NFKD: ligature.
-   [OK]          String.Normalize             10   NFKD: with accents.
-   [OK]          String.Normalize             11   Hangul syllable.
-   [OK]          String.Normalize             12   combining sequences.
-   [OK]          String.Search                 0   basic: match.
-   [OK]          String.Search                 1   basic: no match.
-   [OK]          String.Search                 2   basic: match at start.
-   [OK]          String.Search                 3   basic: match at end.
-   [OK]          String.Search                 4   basic: empty string.
-   [OK]          String.Search                 5   basic: empty pattern.
-   [OK]          String.Search                 6   case: sensitive.
-   [OK]          String.Search                 7   case: insensitive.
-   [OK]          String.Search                 8   pattern: digit class.
-   [OK]          String.Search                 9   pattern: word boundary.
-   [OK]          String.Search                10   pattern: any character.
-   [OK]          String.Search                11   pattern: alternation.
-   [OK]          String.Search                12   pattern: optional.
-   [OK]          String.Search                13   multiple: finds first.
-   [OK]          String.Search                14   multiple: global flag ignored.
-   [OK]          String.Search                15   unicode: characters.
-   [OK]          String.Search                16   unicode: emoji.
-   [OK]          String.Search                17   edge: special regex chars.
-   [OK]          String.Search                18   edge: newline.
-   [OK]          RegExp.NamedGroups            0   basic: date pattern.
-   [OK]          RegExp.NamedGroups            1   basic: single group.
-   [OK]          RegExp.NamedGroups            2   basic: multiple groups.
-   [OK]          RegExp.NamedGroups            3   access: by name.
-   [OK]          RegExp.NamedGroups            4   access: nonexistent.
-   [OK]          RegExp.NamedGroups            5   access: all groups list.
-   [OK]          RegExp.NamedGroups            6   pattern: with quantifiers.
-   [OK]          RegExp.NamedGroups            7   pattern: with alternation.
-   [OK]          RegExp.NamedGroups            8   edge: no named groups.
-   [OK]          RegExp.NamedGroups            9   edge: mixed named and unnamed.
-   [OK]          RegExp.DotAll                 0   basic: dot without flag.
-   [OK]          RegExp.DotAll                 1   basic: dot with flag.
-   [OK]          RegExp.DotAll                 2   basic: flag accessor.
-   [OK]          RegExp.DotAll                 3   line: matches LF.
-   [OK]          RegExp.DotAll                 4   line: matches CR.
-   [OK]          RegExp.DotAll                 5   line: matches CRLF.
-   [OK]          RegExp.DotAll                 6   flags: with global.
-   [OK]          RegExp.DotAll                 7   flags: with ignorecase.
-   [OK]          RegExp.DotAll                 8   flags: with multiline.
-   [OK]          RegExp.DotAll                 9   accessor: includes s.
-   [OK]          RegExp.DotAll                10   accessor: order.
-   [OK]          RegExp.DotAll                11   practical: multiline content.
-   [OK]          RegExp.DotAll                12   practical: without flag fails.
-   [OK]          RegExp.Unicode                0   flag: accessor.
-   [OK]          RegExp.Unicode                1   flag: in flags string.
-   [OK]          RegExp.Unicode                2   match: basic unicode.
-   [OK]          RegExp.Unicode                3   match: emoji.
-   [OK]          RegExp.Unicode                4   match: no match.
-   [OK]          RegExp.Unicode                5   combined: with global.
-   [OK]          RegExp.Unicode                6   combined: with ignorecase.
-   [OK]          RegExp.Unicode                7   combined: with multiline.
-   [OK]          RegExp.Unicode                8   property: letter category.
-   [OK]          RegExp.Unicode                9   astral: basic.
-   [OK]          RegExp.Unicode               10   astral: surrogate pairs.
-   [OK]          RegExp.Unicode               11   practical: international.
-   [OK]          RegExp.Unicode               12   practical: mixed scripts.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/Js/test/_build/_tests/Js'.
- Test Successful in 0.882s. 833 tests run.
- (cd _build/default/packages/Belt/test && ./test.exe)
- Testing `Belt'.
- This run has ID `ABIQ7NGM'.
- 
-   [OK]          Int                        0   toFloat.
-   [OK]          Int                        1   fromFloat.
-   [OK]          Int                        2   fromString.
-   [OK]          Int                        3   toString and operators.
-   [OK]          Float                      0   fromInt.
-   [OK]          Float                      1   toInt.
-   [OK]          Float                      2   fromString.
-   [OK]          Float                      3   toString and operators.
-   [OK]          Option                     0   keep.
-   [OK]          Option                     1   orElse.
-   [OK]          Result                     0   alias compatibility.
-   [OK]          Array                      0   get and set bounds.
-   [OK]          Array                      1   shuffle preserves contents.
-   [OK]          Array                      2   range helpers.
-   [OK]          Array                      3   reductions.
-   [OK]          Array                      4   construction copy and conversi...
-   [OK]          Array                      5   callback once regressions.
-   [OK]          Array                      6   keep keepMap and partition.
-   [OK]          Array                      7   slice.
-   [OK]          Array                      8   sliceToEnd.
-   [OK]          Array                      9   fill.
-   [OK]          Array                     10   blit.
-   [OK]          Array                     11   zip and unzip.
-   [OK]          Array                     12   iteration predicates and reverse.
-   [OK]          Array                     13   every2 and some2.
-   [OK]          Array                     14   concat and concatMany.
-   [OK]          Array                     15   cmp and find helpers.
-   [OK]          Array                     16   unsafe allocation helpers.
-   [OK]          Array                     17   push unsupported in native.
-   [OK]          List                       0   makeBy get and map.
-   [OK]          List                       1   flatten.
-   [OK]          List                       2   concatMany.
-   [OK]          List                       3   concat.
-   [OK]          List                       4   zip and zipBy.
-   [OK]          List                       5   partition.
-   [OK]          List                       6   unzip.
-   [OK]          List                       7   keep and keepWithIndex.
-   [OK]          List                       8   map.
-   [OK]          List                       9   take drop and splitAt.
-   [OK]          List                      10   association helpers.
-   [OK]          List                      11   head tail and access.
-   [OK]          List                      12   reductions.
-   [OK]          List                      13   predicates and comparison.
-   [OK]          List                      14   make sort eq and keepMap.
-   [OK]          Map                        0   fromArray set get toArray and ...
-   [OK]          Map                        1   large fromArray sorts output.
-   [OK]          Map                        2   merge variants.
-   [OK]          Map                        3   update removeMany and undefine...
-   [OK]          Map                        4   set returns new map.
-   [OK]          Map                        5   repeated update accumulation.
-   [OK]          Map                        6   mergeMany split and empty remo...
-   [OK]          Map.Dict                   0   packIdData and first class com...
-   [OK]          Map.Int                    0   findFirstBy.
-   [OK]          Map.Int                    1   invariant after removals.
-   [OK]          Map.Int                    2   set get remove stress.
-   [OK]          Map.String                 0   findFirstBy.
-   [OK]          Set                        0   remove add and minmax behavior.
-   [OK]          Set                        1   union intersect diff subset an...
-   [OK]          Set                        2   iteration every some cmp.
-   [OK]          Set                        3   keep partition getExn and split.
-   [OK]          Set                        4   empty keep and empty split.
-   [OK]          Set.Dict                   0   forEach and every.
-   [OK]          Set.Int                    0   eq and partition.
-   [OK]          Set.Int                    1   set algebra.
-   [OK]          Set.Int                    2   min max reduce and emptiness.
-   [OK]          Set.Int                    3   invariant under large removals.
-   [OK]          Set.Int                    4   subset eq cmp get and add iden...
-   [OK]          Set.Int                    5   mergeMany removeMany and split.
-   [OK]          Set.Int                    6   empty split.
-   [OK]          Set.String                 0   smoke.
-   [OK]          SortArray                  0   union.
-   [OK]          SortArray                  1   intersect.
-   [OK]          SortArray                  2   diff.
-   [OK]          SortArray                  3   isSorted and stableSortInPlace.
-   [OK]          SortArray                  4   specialized stable sorts.
-   [OK]          SortArray                  5   stableSortBy.
-   [OK]          SortArray                  6   binarySearch.
-   [OK]          SortArray                  7   strictlySortedLength.
-   [OK]          SortArray.Int              0   binarySearch.
-   [OK]          SortArray.String           0   binarySearch.
-   [OK]          MutableMap                 0   remove preserves successor val...
-   [OK]          MutableMap                 1   remove deep successor preserve...
-   [OK]          MutableMap                 2   update remove preserves values.
-   [OK]          MutableMap                 3   removeMany exact keys.
-   [OK]          MutableMap                 4   trim to three entries.
-   [OK]          MutableMap.Int             0   smoke.
-   [OK]          MutableMap.String          0   smoke.
-   [OK]          MutableSet                 0   remove add and split.
-   [OK]          MutableSet                 1   set algebra and partitions.
-   [OK]          MutableSet.Int             0   removeCheck addCheck mergeMany...
-   [OK]          MutableSet.Int             1   stats split and subset.
-   [OK]          MutableSet.Int             2   set algebra and partitions.
-   [OK]          MutableSet.Int             3   large add stress.
-   [OK]          MutableSet.Int             4   fromArray and removal stress.
-   [OK]          MutableSet.Int             5   fromSortedArrayUnsafe and deri...
-   [OK]          MutableSet.String          0   smoke.
-   [OK]          HashMap                    0   mergeMany overwrites duplicates.
-   [OK]          HashMap                    1   fromArray dedupes overlapping ...
-   [OK]          HashMap                    2   remove stress.
-   [OK]          HashMap                    3   keepMapInPlace middle remove.
-   [OK]          HashMap                    4   keepMapInPlace head remove.
-   [OK]          HashMap                    5   keepMapInPlace tail remove.
-   [OK]          HashMap                    6   keepMapInPlace consecutive rem...
-   [OK]          HashMap                    7   keepMapInPlace remove all.
-   [OK]          HashMap.Int                0   smoke.
-   [OK]          HashMap.String             0   smoke.
-   [OK]          HashSet.Int                0   dedupe reduce and forEach.
-   [OK]          HashSet.Int                1   size stress.
-   [OK]          HashSet.Int                2   copy independence.
-   [OK]          HashSet.Int                3   bucket histogram sanity.
-   [OK]          HashSet.String             0   smoke.
-   [OK]          MutableQueue               0   push pop fifo.
-   [OK]          MutableQueue               1   reuse after empty.
-   [OK]          MutableQueue               2   peekExn.
-   [OK]          MutableQueue               3   clear.
-   [OK]          MutableQueue               4   copy.
-   [OK]          MutableQueue               5   isEmpty and size.
-   [OK]          MutableQueue               6   forEach.
-   [OK]          MutableQueue               7   transfer.
-   [OK]          MutableQueue               8   transfer appends to nonempty q...
-   [OK]          MutableQueue               9   fromArray and map.
-   [OK]          MutableStack               0   inorder traversal.
-   [OK]          MutableStack               1   dynamicPopIter traversal.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/Belt/test/_build/_tests/Belt'.
- Test Successful in 5.018s. 123 tests run.
- (cd _build/default/packages/react/test && ./test.exe)
- Testing `React'.
- This run has ID `3KF5JKPW'.
- 
-   [OK]          cloneElement          0   empty component.
-   [OK]          cloneElement          1   attributes component.
-   [OK]          cloneElement          2   ordered attributes component.
-   [OK]          cloneElement          3   uppercase component raises.
-   [OK]          cloneElement          4   async component raises.
-   [OK]          cloneElement          5   client component raises.
-   [OK]          cloneElement          6   static unwraps to original.
-   [OK]          cloneElement          7   static adds new attributes.
-   [OK]          cloneElement          8   static overrides existing attributes.
-   [OK]          cloneElement          9   static result is Lower_case_element...
-   [OK]          cloneElement         10   static preserves children.
-   [OK]          cloneElement         11   static nested static unwraps outer ...
-   [OK]          React                 0   useState.
-   [OK]          React                 1   useSyncExternalStoreWithServer.
-   [OK]          React                 2   useEffect.
-   [OK]          React                 3   Children.map.
-   [OK]          React                 4   Children.map.
-   [OK]          React                 5   useRef.
-   [OK]          React                 6   invalid_children.
-   [OK]          React                 7   invalid_dangerouslySetInnerHtml.
-   [OK]          React                 8   raw_element.
-   [OK]          React                 9   cache hits within request.
-   [OK]          React                10   cache errors are cached.
-   [OK]          React                11   cache is separate per call.
-   [OK]          React                12   cache resets between requests.
-   [OK]          React                13   cache errors different args.
-   [OK]          React                14   cache errors mixed with success.
-   [OK]          React                15   cache errors reset between requests.
-   [OK]          React                16   cache errors same instance.
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/react/test/_build/_tests/React'.
- Test Successful in 0.004s. 29 tests run.
- (cd _build/default/packages/reactDom/test && ./test.exe)
- Testing `ReactDOM'.
- This run has ID `C5QD52CW'.
- 
-   [OK]          ReactServerDOM.render_html / suspense_with_sync_client_component                                   0   ...
-   [OK]          ReactServerDOM.render_html / text_with_ampersand                                                   0   ...
-   [OK]          ReactServerDOM.render_html / text_with_html_entity                                                 0   ...
-   [OK]          ReactServerDOM.render_html / text_with_single_quote                                                0   ...
-   [OK]          ReactServerDOM.render_html / text_with_script_tag                                                  0   ...
-   [OK]          ReactServerDOM.render_html / client_with_element_props                                             0   ...
-   [OK]          ReactServerDOM.render_html / null_element                                                          0   ...
-   [OK]          ReactServerDOM.render_html / element_with_dangerously_set_inner_html                               0   ...
-   [OK]          ReactServerDOM.render_html / static_element                                                        0   ...
-   [OK]          ReactServerDOM.render_html / suppress_hydration_warning_in_model                                   0   ...
-   [OK]          ReactServerDOM.render_html / input_element_with_value                                              0   ...
-   [OK]          ReactServerDOM.render_html / upper_case_component                                                  0   ...
-   [OK]          ReactServerDOM.render_html / async_component_without_promise                                       0   ...
-   [OK]          ReactServerDOM.render_html / suspense_without_promise                                              0   ...
-   [OK]          ReactServerDOM.render_html / with_sleepy_promise                                                   0   ...
-   [OK]          ReactServerDOM.render_html / client_with_promise_props                                             0   ...
-   [OK]          ReactServerDOM.render_html / client_component_with_async_component                                 0   ...
-   [OK]          ReactServerDOM.render_html / async_component_with_promise                                          0   ...
-   [OK]          ReactServerDOM.render_html / suspense_with_error                                                   0   ...
-   [OK]          ReactServerDOM.render_html / suspense_with_error_in_async                                          0   ...
-   [OK]          ReactServerDOM.render_html / suspense_with_error_under_lowercase                                   0   ...
-   [OK]          ReactServerDOM.render_html / error_without_suspense                                                0   ...
-   [OK]          ReactServerDOM.render_html / error_in_toplevel_in_async                                            0   ...
-   [OK]          ReactServerDOM.render_html / suspense_in_a_list_with_error                                         0   ...
-   [OK]          ReactServerDOM.render_html / server_function_as_action                                             0   ...
-   [OK]          ReactServerDOM.render_html / nested_context                                                        0   ...
-   [OK]          ReactServerDOM.render_html / context_preserved_across_async_suspense                               0   ...
-   [OK]          ReactServerDOM.render_html / context_nested_providers_across_async_suspense                        0   ...
-   [OK]          ReactServerDOM.render_html / context_client_component_reads_context_across_async_suspense          0   ...
-   [OK]          ReactServerDOM.render_html / timeout_closes_stream_for_hanging_suspense                            0   ...
-   [OK]          ReactServerDOM.render_html / timeout_does_not_affect_fast_renders                                  0   ...
-   [OK]          ReactServerDOM.render_html / progressive_chunk_size_batches_small_chunks                           0   ...
-   [OK]          ReactServerDOM.render_html / timeout_end_script_appears_exactly_once                               0   ...
-   [OK]          ReactServerDOM.render_html / progressive_chunk_size_zero_does_not_raise                            0   ...
-   [OK]          ReactServerDOM.render_html / progressive_chunk_size_negative_does_not_raise                        0   ...
-   [OK]          ReactServerDOM.render_html / skip_root_omits_html_content                                          0   ...
-   [OK]          ReactServerDOM.render_html / doctype                                                               0   ...
-   [OK]          ReactServerDOM.render_html / just_an_html_node                                                     0   ...
-   [OK]          ReactServerDOM.render_html / no_head_no_body_nothing_just_an_html_node                             0   ...
-   [OK]          ReactServerDOM.render_html / html_with_no_srr_html_body                                            0   ...
-   [OK]          ReactServerDOM.render_html / html_with_a_node                                                      0   ...
-   [OK]          ReactServerDOM.render_html / html_inside_a_div                                                     0   ...
-   [OK]          ReactServerDOM.render_html / html_inside_a_fragment                                                0   ...
-   [OK]          ReactServerDOM.render_html / head_with_content                                                     0   ...
-   [OK]          ReactServerDOM.render_html / html_with_only_a_body                                                 0   ...
-   [OK]          ReactServerDOM.render_html / html_with_head_like_elements_not_in_head                              0   ...
-   [OK]          ReactServerDOM.render_html / html_without_body_and_bootstrap_scripts                               0   ...
-   [OK]          ReactServerDOM.render_html / html_with_body_and_bootstrap_scripts                                  0   ...
-   [OK]          ReactServerDOM.render_html / input_and_bootstrap_scripts                                           0   ...
-   [OK]          ReactServerDOM.render_html / title_and_meta_populates_to_the_head                                  0   ...
-   [OK]          ReactServerDOM.render_html / async_scripts_to_head                                                 0   ...
-   [OK]          ReactServerDOM.render_html / no_async_scripts_to_remain                                            0   ...
-   [OK]          ReactServerDOM.render_html / async_scripts_gets_deduplicated                                       0   ...
-   [OK]          ReactServerDOM.render_html / async_scripts_gets_deduplicated_2                                     0   ...
-   [OK]          ReactServerDOM.render_html / link_with_rel_and_precedence                                          0   ...
-   [OK]          ReactServerDOM.render_html / links_gets_pushed_to_the_head                                         0   ...
-   [OK]          ReactServerDOM.render_html / self_closing_with_dangerously                                         0   ...
-   [OK]          ReactServerDOM.render_html / self_closing_with_dangerously_in_head                                 0   ...
-   [OK]          ReactServerDOM.render_html / upper_case_component_with_resources                                   0   ...
-   [OK]          ReactServerDOM.render_html / hoisted_elements_order_issue                                          0   ...
-   [OK]          ReactServerDOM.render_html / head_preserves_children_order                                         0   ...
-   [OK]          ReactServerDOM.render_html / html_attributes_are_preserved                                         0   ...
-   [OK]          ReactDOM.renderToStream / silly_stream                                                             0   ...
-   [OK]          ReactDOM.renderToStream / render_inner_html                                                        0   ...
-   [OK]          ReactDOM.renderToStream / react_use_without_suspense                                               0   ...
-   [OK]          ReactDOM.renderToStream / uppercase_component_always_throwing                                      0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_react_use                                                  0   ...
-   [OK]          ReactDOM.renderToStream / async component                                                          0   ...
-   [OK]          ReactDOM.renderToStream / async_component_without_suspense                                         0   ...
-   [OK]          ReactDOM.renderToStream / suspense_without_promise                                                 0   ...
-   [OK]          ReactDOM.renderToStream / text_after_element_with_text_child                                       0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_resolved_text_after_element_with_text_child                0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_async_component                                            0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_always_throwing                                            0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspense                                            0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspenses                                           0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspense_with_error                                 0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_multiple_children                                          0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_multiple_children_reordered                                0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_concurrent_suspenses                                       0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_comments                                                   0   ...
-   [OK]          ReactDOM.renderToStream / context_basic                                                            0   ...
-   [OK]          ReactDOM.renderToStream / context_default_value                                                    0   ...
-   [OK]          ReactDOM.renderToStream / context_nested_providers                                                 0   ...
-   [OK]          ReactDOM.renderToStream / context_multiple_independent                                             0   ...
-   [OK]          ReactDOM.renderToStream / context_with_suspense                                                    0   ...
-   [OK]          ReactDOM.renderToStream / async_component_with_use_id                                              0   ...
-   [OK]          ReactDOM.renderToStream / async_component_with_use_id_and_sibling                                  0   ...
-   [OK]          ReactDOM.renderToStream / async_component_with_use_id_in_suspense                                  0   ...
-   [OK]          ReactDOM.renderToStream / async_component_with_multiple_use_ids                                    0   ...
-   [OK]          ReactDOM.renderToStream / multiple_async_components_without_suspense                               0   ...
-   [OK]          ReactDOM.renderToStream / context_provider_with_suspended_consumer                                 0   ...
-   [OK]          ReactDOM.renderToStream / async_component_returning_suspense_with_async_children                   0   ...
-   [OK]          ReactDOM.renderToStream / static_element_in_stream                                                 0   ...
-   [OK]          ReactDOM.renderToStream / client_component_error_in_stream                                         0   ...
-   [OK]          ReactDOM.renderToStream / suspense_with_failed_promise                                             0   ...
-   [OK]          ReactDOM.renderToStream / fragment_in_stream                                                       0   ...
-   [OK]          ReactDOM.renderToStream / list_in_stream                                                           0   ...
-   [OK]          ReactDOM.renderToStream / array_in_stream                                                          0   ...
-   [OK]          ReactDOM.renderToStream / empty_element_in_stream                                                  0   ...
-   [OK]          ReactDOM.renderToStream / dangerous_html_in_suspense                                               0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / html_doctype                                                       0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / single_empty_tag                                                   0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / empty_string_attribute                                             0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / bool_attributes                                                    0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / truthy_attributes                                                  0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / ignore_nulls                                                       0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / string_attributes                                                  0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / self_closing_tag                                                   0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / dom_element_innerHtml                                              0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / children                                                           0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / className                                                          0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / className_2                                                        0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / className_3                                                        0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / fragment                                                           0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / fragments_and_texts                                                0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / ignored_attributes_on_jsx                                          0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / inline_styles                                                      0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / encode_attributes                                                  0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / dom_props_should_work                                              0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / dangerouslySetInnerHtml                                            0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / context                                                            0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / nested_context                                                     0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / use_state                                                          0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / use_memo                                                           0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / use_callback                                                       0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / inner_html                                                         0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / event                                                              0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / render_with_doc_type                                               0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / render_svg                                                         0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / ref_as_prop_works                                                  0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / ref_as_callback_prop_works                                         0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / async                                                              0   ...
-   [OK]          ReactDOM.renderToStaticMarkup / lists_and_arrays                                                   0   ...
-   [OK]          ReactDOM.renderToString / react_root_one_element                                                   0   ...
-   [OK]          ReactDOM.renderToString / react_root_two_elements                                                  0   ...
-   [OK]          ReactDOM.renderToString / text_single_node should not add <!-- -->                                 0   ...
-   [OK]          ReactDOM.renderToString / consecutives_text_nodes should add <!-- -->                              0   ...
-   [OK]          ReactDOM.renderToString / separated_text_nodes_by_other_parents                                    0   ...
-   [OK]          ReactDOM.renderToString / text_after_element_with_text_child                                       0   ...
-   [OK]          ReactDOM.renderToString / suspense children render exactly once                                    0   ...
-   [OK]          ReactDOM.renderToString / suspense renders fallback on error                                       0   ...
-   [OK]          ReactDOM.write_to_buffer / empty element                                                           0   ...
-   [OK]          ReactDOM.write_to_buffer / single element                                                          0   ...
-   [OK]          ReactDOM.write_to_buffer / nested elements                                                         0   ...
-   [OK]          ReactDOM.write_to_buffer / self-closing tag                                                        0   ...
-   [OK]          ReactDOM.write_to_buffer / text content                                                            0   ...
-   [OK]          ReactDOM.write_to_buffer / no text separators between consecutive text nodes                       0   ...
-   [OK]          ReactDOM.write_to_buffer / no doctype injection for html tag                                       0   ...
-   [OK]          ReactDOM.write_to_buffer / string attributes                                                       0   ...
-   [OK]          ReactDOM.write_to_buffer / bool true attribute                                                     0   ...
-   [OK]          ReactDOM.write_to_buffer / bool false attribute                                                    0   ...
-   [OK]          ReactDOM.write_to_buffer / style attribute                                                         0   ...
-   [OK]          ReactDOM.write_to_buffer / html escaping                                                           0   ...
-   [OK]          ReactDOM.write_to_buffer / attribute escaping                                                      0   ...
-   [OK]          ReactDOM.write_to_buffer / dangerouslySetInnerHTML                                                 0   ...
-   [OK]          ReactDOM.write_to_buffer / fragment                                                                0   ...
-   [OK]          ReactDOM.write_to_buffer / list children                                                           0   ...
-   [OK]          ReactDOM.write_to_buffer / array children                                                          0   ...
-   [OK]          ReactDOM.write_to_buffer / upper case component                                                    0   ...
-   [OK]          ReactDOM.write_to_buffer / suspense success renders without markers                                0   ...
-   [OK]          ReactDOM.write_to_buffer / suspense fallback renders without markers                               0   ...
-   [OK]          ReactDOM.write_to_buffer / static element                                                          0   ...
-   [OK]          ReactDOM.write_to_buffer / event attributes ignored                                                0   ...
-   [OK]          ReactDOM.write_to_buffer / ref attributes ignored                                                  0   ...
-   [OK]          ReactDOM.write_to_buffer / react custom attributes ignored                                         0   ...
-   [OK]          ReactDOM.write_to_buffer / async component raises                                                  0   ...
-   [OK]          ReactDOM.write_to_buffer / context                                                                 0   ...
-   [OK]          ReactDOM.Style.make / generate empty style                                                         0   ...
-   [OK]          ReactDOM.Style.make / generate one style                                                           0   ...
-   [OK]          ReactDOM.Style.make / generate more than one style                                                 0   ...
-   [OK]          ReactDOM.Style.make / unsafeAddProp should be kebab-case                                           0   ...
-   [OK]          ReactDOM.Style.make / order matters                                                                0   ...
-   [OK]          ReactDOM.Style.make / order matters II                                                             0   ...
-   [OK]          ReactServerDOM.render_model / null_element                                                         0   ...
-   [OK]          ReactServerDOM.render_model / special_characters_not_html_encoded                                  0   ...
-   [OK]          ReactServerDOM.render_model / string_element                                                       0   ...
-   [OK]          ReactServerDOM.render_model / key_renders_outside_of_props                                         0   ...
-   [OK]          ReactServerDOM.render_model / style_as_json                                                        0   ...
-   [OK]          ReactServerDOM.render_model / lower_case_component                                                 0   ...
-   [OK]          ReactServerDOM.render_model / lower_case_component_nested                                          0   ...
-   [OK]          ReactServerDOM.render_model / lower_case_with_children                                             0   ...
-   [OK]          ReactServerDOM.render_model / dangerouslySetInnerHtml                                              0   ...
-   [OK]          ReactServerDOM.render_model / upper_case_component                                                 0   ...
-   [OK]          ReactServerDOM.render_model / nested_upper_case_components                                         0   ...
-   [OK]          ReactServerDOM.render_model / upper_case_with_list                                                 0   ...
-   [OK]          ReactServerDOM.render_model / upper_case_with_children                                             0   ...
-   [OK]          ReactServerDOM.render_model / suspense_without_promise                                             0   ...
-   [OK]          ReactServerDOM.render_model / suspense_with_promise                                                0   ...
-   [OK]          ReactServerDOM.render_model / suspense_with_error                                                  0   ...
-   [OK]          ReactServerDOM.render_model / suspense_with_error_in_async                                         0   ...
-   [OK]          ReactServerDOM.render_model / suspense_with_immediate_promise                                      0   ...
-   [OK]          ReactServerDOM.render_model / suspense                                                             0   ...
-   [OK]          ReactServerDOM.render_model / async_component_without_suspense                                     0   ...
-   [OK]          ReactServerDOM.render_model / suspense_in_a_list                                                   0   ...
-   [OK]          ReactServerDOM.render_model / client_with_promise_props                                            0   ...
-   [OK]          ReactServerDOM.render_model / async_component_without_suspense_immediate                           0   ...
-   [OK]          ReactServerDOM.render_model / mixed_server_and_client                                              0   ...
-   [OK]          ReactServerDOM.render_model / client_with_json_props                                               0   ...
-   [OK]          ReactServerDOM.render_model / client_without_props                                                 0   ...
-   [OK]          ReactServerDOM.render_model / client_with_element_props                                            0   ...
-   [OK]          ReactServerDOM.render_model / client_with_server_children                                          0   ...
-   [OK]          ReactServerDOM.render_model / client_component_with_async_component                                0   ...
-   [OK]          ReactServerDOM.render_model / act_with_simple_response                                             0   ...
-   [OK]          ReactServerDOM.render_model / env_development_adds_debug_info                                      0   ...
-   [OK]          ReactServerDOM.render_model / debug_nested_owner_chain                                             0   ...
-   [OK]          ReactServerDOM.render_model / debug_async_component                                                0   ...
-   [OK]          ReactServerDOM.render_model / debug_outlines_components                                            0   ...
-   [OK]          ReactServerDOM.render_model / debug_not_emitted_without_flag                                       0   ...
-   [OK]          ReactServerDOM.render_model / debug_element_has_debugId_and_owner                                  0   ...
-   [OK]          ReactServerDOM.render_model / debug_filter_stack_frame_drops_all                                   0   ...
-   [OK]          ReactServerDOM.render_model / act_with_error                                                       0   ...
-   [OK]          ReactServerDOM.render_model / error_without_suspense                                               0   ...
-   [OK]          ReactServerDOM.render_model / keyed_duplicate_client_component_preserves_keys                      0   ...
-   [OK]          ReactServerDOM.render_model / error_in_toplevel                                                    0   ...
-   [OK]          ReactServerDOM.render_model / error_in_toplevel_in_async                                           0   ...
-   [OK]          ReactServerDOM.render_model / suspense_in_a_list_with_error                                        0   ...
-   [OK]          ReactServerDOM.render_model / suspense_with_error_under_lowercase                                  0   ...
-   [OK]          ReactServerDOM.render_model / client_component_with_resources_metadata                             0   ...
-   [OK]          ReactServerDOM.render_model / page_with_hoisted_resources                                          0   ...
-   [OK]          ReactServerDOM.render_model / nested_context                                                       0   ...
-   [OK]          ReactServerDOM.render_model / suspense_with_nested_upper_case                                      0   ...
-   [OK]          ReactServerDOM.render_model / suspense_at_root                                                     0   ...
-   [OK]          ReactServerDOM.render_model / suspense_at_root_with_upper_case_children                            0   ...
-   [OK]          ReactServerDOM.render_model / suspense_at_root_with_nested_components                              0   ...
-   [OK]          ReactServerDOM.render_model / suspense_at_root_with_async                                          0   ...
-   [OK]          ReactServerDOM.render_model / root_async_component_immediate                                       0   ...
-   [OK]          ReactServerDOM.render_model / root_upper_case_chain                                                0   ...
-   [OK]          ReactServerDOM.render_model / model_list_value                                                     0   ...
-   [OK]          ReactServerDOM.render_model / model_value_assoc                                                    0   ...
-   [OK]          ReactServerDOM.render_model / client_with_promise_failed_props                                     0   ...
-   [OK]          ReactServerDOM.render_model / client_with_promise_already_failed_props                             0   ...
-   [OK]          ReactServerDOM.render_model / server_function_as_model_prop                                        0   ...
-   [OK]          ReactServerDOM.render_model / error_in_prod_hides_message                                          0   ...
-   [OK]          ReactServerDOM.render_model / duplicate_client_component_deduplicates_ref                          0   ...
-   [OK]          Decoders / decodeReply                                                                             0   ...
-   [OK]          Decoders / decodeFormDataReply                                                                     0   ...
-   [OK]          ReactDOM.renderToString / useId / single component with useId                                      0   ...
-   [OK]          ReactDOM.renderToString / useId / two sibling components                                           0   ...
-   [OK]          ReactDOM.renderToString / useId / nested components                                                0   ...
-   [OK]          ReactDOM.renderToString / useId / multiple useId calls in one component                            0   ...
-   [OK]          ReactDOM.renderToString / useId / three useId calls in one component                               0   ...
-   [OK]          ReactDOM.renderToString / useId / siblings with nested children                                    0   ...
-   [OK]          ReactDOM.renderToString / useId / deep nesting (3 levels)                                          0   ...
-   [OK]          ReactDOM.renderToString / useId / wrapper without useId is transparent                             0   ...
-   [OK]          ReactDOM.renderToString / useId / three siblings                                                   0   ...
-   [OK]          ReactDOM.renderToString / useId / complex siblings with nested                                     0   ...
-   [OK]          ReactDOM.renderToString / useId / separate renders produce same IDs                                0   ...
-   [OK]          ReactDOM.renderToString / useId / renderToStaticMarkup also works                                  0   ...
-   [OK]          ReactDOM.renderToString / useId / identifier_prefix                                                0   ...
-   [OK]          ReactDOM.renderToString / useId / useId inside Suspense (sync)                                     0   ...
-   [OK]          ReactDOM.renderToString / useId / Suspense with useId + sibling                                    0   ...
-   [OK]          ReactDOM.renderToString / useId / Fragment single child is transparent                             0   ...
-   [OK]          ReactDOM.renderToString / useId / Fragment multiple children forks                                 0   ...
-   [OK]          ReactDOM.renderToString / useId / Nested fragments transparent                                     0   ...
-   [OK]          ReactDOM.renderToString / useId / Null/Empty between siblings preserves slots                      0   ...
-   [OK]          ReactDOM.renderToString / useId / Many siblings (10, base-32 at Ra)                                0   ...
-   [OK]          ReactDOM.renderToString / useId / Provider is transparent                                          0   ...
-   [OK]          ReactDOM.renderToString / useId / Kitchen sink (Provider + Fragment + Suspense)                    0   ...
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/reactDom/test/_build/_tests/ReactDOM'.
- Test Successful in 1.271s. 259 tests run.
- (cd _build/default/packages/server-reason-react-ppx/test && ./test.exe)
- Testing `server-reason-react.ppx'.
- This run has ID `7UGI3IL3'.
- 
-   [OK]          tag                                                          0   ...
-   [OK]          empty_attribute                                              0   ...
-   [OK]          bool_attribute                                               0   ...
-   [OK]          bool_attributes                                              0   ...
-   [OK]          innerhtml                                                    0   ...
-   [OK]          int_attribute                                                0   ...
-   [OK]          svg_1                                                        0   ...
-   [OK]          svg_2                                                        0   ...
-   [OK]          booleanish_props_with_ppx                                    0   ...
-   [OK]          booleanish_props_without_ppx                                 0   ...
-   [OK]          style_attribute                                              0   ...
-   [OK]          ref_attribute                                                0   ...
-   [OK]          link_as_attribute                                            0   ...
-   [OK]          inner_html_attribute                                         0   ...
-   [OK]          inner_html_attribute_complex                                 0   ...
-   [OK]          int_opt_attr_some                                            0   ...
-   [OK]          int_opt_attribute_none                                       0   ...
-   [OK]          string_opt_attribute_some                                    0   ...
-   [OK]          string_opt_attribute_none                                    0   ...
-   [OK]          bool_opt_attribute_some                                      0   ...
-   [OK]          bool_opt_attribute_none                                      0   ...
-   [OK]          style_opt_attribute_some                                     0   ...
-   [OK]          style_opt_attribute_none                                     0   ...
-   [OK]          ref_opt_attribute_some                                       0   ...
-   [OK]          ref_opt_attribute_none                                       0   ...
-   [OK]          fragment                                                     0   ...
-   [OK]          fragment_with_key                                            0   ...
-   [OK]          children_uppercase                                           0   ...
-   [OK]          children_lowercase                                           0   ...
-   [OK]          event_onClick                                                0   ...
-   [OK]          children_one_element                                         0   ...
-   [OK]          children_multiple_elements                                   0   ...
-   [OK]          create_element_variadic                                      0   ...
-   [OK]          aria_props                                                   0   ...
-   [OK]          optional_prop                                                0   ...
-   [OK]          context                                                      0   ...
-   [OK]          context_2                                                    0   ...
-   [OK]          multiple_contexts                                            0   ...
-   [OK]          styles_attribute                                             0   ...
-   [OK]          styles_attribute_optional                                    0   ...
-   [OK]          styles_attribute_optional_some                               0   ...
-   [OK]          styles_attribute_optional_some_with_class                    0   ...
-   [OK]          styles_attribute_optional_some_with_style                    0   ...
-   [OK]          styles_attribute_optional_some_with_class_and_style          0   ...
-   [OK]          server_function                                              0   ...
-   [OK]          server_function_reference                                    0   ...
-   [OK]          server_function_reference_args_error                         0   ...
-   [OK]          server_function_reference_form_data                          0   ...
-   [OK]          server_function_reference_form_data_and_args                 0   ...
- 
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/server-reason-react-ppx/test/_build/_tests/server-reason-react.ppx'.
- Test Successful in 0.004s. 49 tests run.
[ERROR] The compilation of server-reason-react.0.5.0 failed at "dune build -p server-reason-react -j 71 @install @runtest".

#=== ERROR while compiling server-reason-react.0.5.0 ==========================#
# context              2.1.6 | linux/x86_64 | ocaml-base-compiler.5.4.1 | pinned(https://github.com/ml-in-barcelona/server-reason-react/releases/download/0.5.0/server-reason-react-0.5.0.tbz)
# path                 ~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0
# command              ~/.opam/opam-init/hooks/sandbox.sh build dune build -p server-reason-react -j 71 @install @runtest
# exit-code            1
# env-file             ~/.opam/log/server-reason-react-7-eae924.env
# output-file          ~/.opam/log/server-reason-react-7-eae924.out
### output ###
# File "demo/dream-nested-router/dune", line 5, characters 2-7:
# 5 |   dream
#       ^^^^^
# Error: Library "dream" not found.
# -> required by _build/default/demo/dream-nested-router/test_router_rsc.exe
# -> required by alias demo/dream-nested-router/runtest-test_router_rsc in
#    demo/dream-nested-router/dune:2
# -> required by alias demo/dream-nested-router/runtest
# (cd _build/default/packages/melange.ppx/xxhash && ./test_xxh64.exe)
# Testing `XXH64'.
# This run has ID `251GIZJT'.
# 
#   [OK]          hash                   0   "".
#   [OK]          hash                   1   "a".
#   [OK]          hash                   2   "as".
#   [OK]          hash                   3   "asd".
#   [OK]          hash                   4   "asdf".
#   [OK]          hash                   5   "abc".
#   [OK]          hash                   6   "abc".
#   [OK]          hash                   7   "abcd".
#   [OK]          hash                   8   "abcde".
#   [OK]          hash                   9   "abcdef".
#   [OK]          hash                  10   "abcdefg".
#   [OK]          hash                  11   "abcdefgh".
#   [OK]          hash                  12   "abcdefghi".
#   [OK]          hash                  13   "abcdefghij".
#   [OK]          hash                  14   "abcdefghijklmnopqrstuvwxyz012345".
#   [OK]          hash                  15   "abcdefghijklmnopqrstuvwxyz0123456...
#   [OK]          hash                  16   "Call me Ishmael. Some years ago--...
#   [OK]          hash                  17   "Lorem ipsum dolor sit amet, conse...
#   [OK]          hash · to_hex          0   "I want an unsigned 64-bit seed!".
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/melange.ppx/xxhash/_build/_tests/XXH64'.
# Test Successful in 0.001s. 19 tests run.
# (cd _build/default/packages/url/test && ./test_native.exe)
# Testing `URL'.
# This run has ID `6GDCHLEN'.
# 
#   [OK]          URL                       0   make.
#   [OK]          URL                       1   makeWith.
#   [OK]          URL                       2   makeWith and relative base.
#   [OK]          URL                       3   host.
#   [OK]          URL                       4   hostname.
#   [OK]          URL                       5   setHostname.
#   [OK]          URL                       6   pathname.
#   [OK]          URL                       7   origin.
#   [OK]          URL                       8   href.
#   [OK]          URL                       9   port.
#   [OK]          URL                      10   hash.
#   [OK]          URL                      11   setHash.
#   [OK]          URL                      12   search.
#   [OK]          URL                      13   protocol.
#   [OK]          URL                      14   setProtocol.
#   [OK]          URL                      15   username.
#   [OK]          URL                      16   setUsername.
#   [OK]          URL                      17   password.
#   [OK]          URL                      18   setPassword.
#   [OK]          URL                      19   searchParams.
#   [OK]          URL.SearchParams          0   has.
#   [OK]          URL.SearchParams          1   get.
#   [OK]          URL.SearchParams          2   getAll.
#   [OK]          URL.SearchParams          3   keys.
#   [OK]          URL.SearchParams          4   values.
#   [OK]          URL.SearchParams          5   entries.
#   [OK]          URL.SearchParams          6   toString.
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/url/test/_build/_tests/URL'.
# Test Successful in 0.004s. 27 tests run.
# (cd _build/default/packages/expand-styles-attribute/test && ./test.exe)
# Testing `expand_styles_attribute'.
# This run has ID `147BQID8'.
# 
#   [OK]          expand_styles_prop_on_attributes               0   
#   [OK]          expand_styles_with_previous_className          0   
#   [OK]          expand_styles_with_previous_style              0   
#   [OK]          expand_styles_optional                         0   
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/expand-styles-attribute/test/_build/_tests/expand_styles_attribute'.
# Test Successful in 0.000s. 4 tests run.
# (cd _build/default/packages/Js/test && ./test.exe)
# Testing `Js'.
# This run has ID `F2VJWTR9'.
# 
#   [OK]          Js.Global                     0   decodeURI - ascii and spaces.
#   [OK]          Js.Global                     1   decodeURI - reserved charac...
#   [OK]          Js.Global                     2   decodeURI - alphabets.
#   [OK]          Js.Global                     3   decodeURI - unicode charact...
#   [OK]          Js.Global                     4   decodeURI - mixed percent e...
#   [OK]          Js.Global                     5   decodeURI - complete URLs.
#   [OK]          Js.Global                     6   decodeURI - overencoded seq...
#   [OK]          Js.Global                     7   decodeURI - special charact...
#   [OK]          Js.Global                     8   decodeURI - beyond U+10FFFF.
#   [OK]          Js.Global                     9   decodeURI - partial sequences.
#   [OK]          Js.Global                    10   encodeURI - ascii and spaces.
#   [OK]          Js.Global                    11   encodeURI - reserved charac...
#   [OK]          Js.Global                    12   encodeURI - alphabets.
#   [OK]          Js.Global                    13   encodeURI - unicode charact...
#   [OK]          Js.Global                    14   encodeURI - complete URLs.
#   [OK]          Js.Global                    15   encodeURI - special charact...
#   [OK]          Js.Global                    16   encodeURI - combining chara...
#   [OK]          Js.Global                    17   encodeURI - Surrogate pairs.
#   [OK]          Js.Global                    18   encodeURIComponent.
#   [OK]          Js.Promise                    0   resolve.
#   [OK]          Js.Promise                    1   all.
#   [OK]          Js.Promise                    2   all_async.
#   [OK]          Js.Promise                    3   race_async.
#   [OK]          Js.Float                      0   string_of_float.
#   [OK]          Js.Float                      1   toString.
#   [OK]          Js.Float                      2   fromString.
#   [OK]          Js.Float                      3   toFixed.
#   [OK]          Js.String                     0   make.
#   [OK]          Js.String                     1   length.
#   [OK]          Js.String                     2   get.
#   [OK]          Js.String                     3   fromCharCode.
#   [OK]          Js.String                     4   fromCharCodeMany.
#   [OK]          Js.String                     5   fromCodePoint.
#   [OK]          Js.String                     6   fromCodePointMany.
#   [OK]          Js.String                     7   charAt.
#   [OK]          Js.String                     8   charCodeAt.
#   [OK]          Js.String                     9   codePointAt.
#   [OK]          Js.String                    10   concat.
#   [OK]          Js.String                    11   concatMany.
#   [OK]          Js.String                    12   endsWith.
#   [OK]          Js.String                    13   includes.
#   [OK]          Js.String                    14   indexOf.
#   [OK]          Js.String                    15   lastIndexOf.
#   [OK]          Js.String                    16   match.
#   [OK]          Js.String                    17   match 0.
#   [OK]          Js.String                    18   repeat.
#   [OK]          Js.String                    19   replace.
#   [OK]          Js.String                    20   replaceByRe.
#   [OK]          Js.String                    21   replaceByRe with references...
#   [OK]          Js.String                    22   replaceByRe with $1 capturi...
#   [OK]          Js.String                    23   replaceByRe with multiple c...
#   [OK]          Js.String                    24   replaceByRe with $&.
#   [OK]          Js.String                    25   replaceByRe with $$.
#   [OK]          Js.String                    26   replaceByRe with global.
#   [OK]          Js.String                    27   unsafeReplaceBy0.
#   [OK]          Js.String                    28   unsafeReplaceBy1.
#   [OK]          Js.String                    29   unsafeReplaceBy2.
#   [OK]          Js.String                    30   search.
#   [OK]          Js.String                    31   slice.
#   [OK]          Js.String                    32   split.
#   [OK]          Js.String                    33   splitAtMost.
#   [OK]          Js.String                    34   splitByRe.
#   [OK]          Js.String                    35   startsWith.
#   [OK]          Js.String                    36   substr.
#   [OK]          Js.String                    37   substrAtMost.
#   [OK]          Js.String                    38   substring.
#   [OK]          Js.String                    39   toLowerCase.
#   [OK]          Js.String                    40   toUpperCase.
#   [OK]          Js.String                    41   trim.
#   [OK]          Js.String                    42   anchor.
#   [OK]          Js.String                    43   link.
#   [OK]          Js.Re                         0   captures.
#   [OK]          Js.Re                         1   exec.
#   [OK]          Js.Re                         2   exec with global.
#   [OK]          Js.Re                         3   modifier: end ($).
#   [OK]          Js.Re                         4   modifier: more than one (+).
#   [OK]          Js.Re                         5   global (g) and caseless (i).
#   [OK]          Js.Re                         6   modifier: or ([]).
#   [OK]          Js.Re                         7   backreferencing.
#   [OK]          Js.Re                         8   http|s example.
#   [OK]          Js.Re                         9   index.
#   [OK]          Js.Re                        10   lastIndex.
#   [OK]          Js.Re                        11   input.
#   [OK]          Js.Obj                        0   empty.
#   [OK]          Js.Obj                        1   @@mel.obj.
#   [OK]          Js.Obj                        2   @@mel.obj with keyword label.
#   [OK]          Js.Obj                        3   assign mutates target.
#   [OK]          Js.Obj                        4   merge creates fresh object.
#   [OK]          Js.Obj                        5   [%mel.obj] evaluates fields...
#   [OK]          Js.Dict                       0   empty.
#   [OK]          Js.Dict                       1   get.
#   [OK]          Js.Dict                       2   get from missing property.
#   [OK]          Js.Dict                       3   unsafe_get.
#   [OK]          Js.Dict                       4   set.
#   [OK]          Js.Dict                       5   keys.
#   [OK]          Js.Dict                       6   keys duplicated.
#   [OK]          Js.Dict                       7   entries.
#   [OK]          Js.Dict                       8   values.
#   [OK]          Js.Dict                       9   values duplicated.
#   [OK]          Js.Dict                      10   fromList - [].
#   [OK]          Js.Dict                      11   fromList.
#   [OK]          Js.Dict                      12   fromArray - [].
#   [OK]          Js.Dict                      13   fromArray.
#   [OK]          Js.Dict                      14   map.
#   [OK]          Js.Undefined                  0   return with int.
#   [OK]          Js.Undefined                  1   return with string.
#   [OK]          Js.Undefined                  2   return with float.
#   [OK]          Js.Undefined                  3   return with Js.Date.t.
#   [OK]          Js.Undefined                  4   empty is None.
#   [OK]          Js.Undefined                  5   getUnsafe on return int.
#   [OK]          Js.Undefined                  6   getUnsafe on return Js.Date.t.
#   [OK]          Js.Undefined                  7   fromOpt Some round-trip.
#   [OK]          Js.Undefined                  8   fromOpt None round-trip.
#   [OK]          Js.Undefined                  9   fromOption Some round-trip.
#   [OK]          Js.Undefined                 10   fromOption None round-trip.
#   [OK]          Js.Undefined                 11   pattern match on return int.
#   [OK]          Js.Undefined                 12   pattern match on return float.
#   [OK]          Js.Undefined                 13   pattern match on return Js....
#   [OK]          Js.Undefined                 14   pattern match on empty.
#   [OK]          BigInt.Arithmetic             0   add: positive + positive.
#   [OK]          BigInt.Arithmetic             1   add: negative + negative.
#   [OK]          BigInt.Arithmetic             2   add: positive + negative.
#   [OK]          BigInt.Arithmetic             3   add: with zero.
#   [OK]          BigInt.Arithmetic             4   add: large numbers.
#   [OK]          BigInt.Arithmetic             5   sub: positive result.
#   [OK]          BigInt.Arithmetic             6   sub: negative result.
#   [OK]          BigInt.Arithmetic             7   sub: with zero.
#   [OK]          BigInt.Arithmetic             8   sub: self.
#   [OK]          BigInt.Arithmetic             9   mul: positive * positive.
#   [OK]          BigInt.Arithmetic            10   mul: negative * positive.
#   [OK]          BigInt.Arithmetic            11   mul: negative * negative.
#   [OK]          BigInt.Arithmetic            12   mul: with zero.
#   [OK]          BigInt.Arithmetic            13   mul: with one.
#   [OK]          BigInt.Arithmetic            14   mul: 3^100.
#   [OK]          BigInt.Arithmetic            15   div: exact division.
#   [OK]          BigInt.Arithmetic            16   div: truncate positive.
#   [OK]          BigInt.Arithmetic            17   div: truncate negative (tow...
#   [OK]          BigInt.Arithmetic            18   div: negative divisor.
#   [OK]          BigInt.Arithmetic            19   div: both negative.
#   [OK]          BigInt.Arithmetic            20   div: large numbers.
#   [OK]          BigInt.Arithmetic            21   div: large negative.
#   [OK]          BigInt.Arithmetic            22   div: by zero throws.
#   [OK]          BigInt.Arithmetic            23   rem: positive % positive.
#   [OK]          BigInt.Arithmetic            24   rem: negative dividend.
#   [OK]          BigInt.Arithmetic            25   rem: negative divisor.
#   [OK]          BigInt.Arithmetic            26   rem: both negative.
#   [OK]          BigInt.Arithmetic            27   rem: large numbers.
#   [OK]          BigInt.Arithmetic            28   rem: large positive.
#   [OK]          BigInt.Arithmetic            29   rem: by zero throws.
#   [OK]          BigInt.Arithmetic            30   pow: exponent zero.
#   [OK]          BigInt.Arithmetic            31   pow: exponent one.
#   [OK]          BigInt.Arithmetic            32   pow: 2^10.
#   [OK]          BigInt.Arithmetic            33   pow: (-2)^127.
#   [OK]          BigInt.Arithmetic            34   pow: 2^127.
#   [OK]          BigInt.Arithmetic            35   pow: negative exponent throws.
#   [OK]          BigInt.Arithmetic            36   pow: (-256)^11.
#   [OK]          BigInt.Arithmetic            37   pow: 7^20.
#   [OK]          BigInt.Arithmetic            38   neg: positive.
#   [OK]          BigInt.Arithmetic            39   neg: negative.
#   [OK]          BigInt.Arithmetic            40   neg: zero.
#   [OK]          BigInt.Arithmetic            41   abs: positive.
#   [OK]          BigInt.Arithmetic            42   abs: negative.
#   [OK]          BigInt.Arithmetic            43   abs: zero.
#   [OK]          BigInt.Bitwise                0   and: basic.
#   [OK]          BigInt.Bitwise                1   and: with zero.
#   [OK]          BigInt.Bitwise                2   and: with all ones.
#   [OK]          BigInt.Bitwise                3   and: negative (two's comple...
#   [OK]          BigInt.Bitwise                4   or: basic.
#   [OK]          BigInt.Bitwise                5   or: with zero.
#   [OK]          BigInt.Bitwise                6   or: disjoint bits.
#   [OK]          BigInt.Bitwise                7   xor: basic.
#   [OK]          BigInt.Bitwise                8   xor: same value.
#   [OK]          BigInt.Bitwise                9   xor: with zero.
#   [OK]          BigInt.Bitwise               10   not: basic.
#   [OK]          BigInt.Bitwise               11   not: zero.
#   [OK]          BigInt.Bitwise               12   not: -1.
#   [OK]          BigInt.Bitwise               13   not: positive.
#   [OK]          BigInt.Bitwise               14   not: negative.
#   [OK]          BigInt.Bitwise               15   shift_left: basic.
#   [OK]          BigInt.Bitwise               16   shift_left: 1 << 31.
#   [OK]          BigInt.Bitwise               17   shift_left: 1 << 32.
#   [OK]          BigInt.Bitwise               18   shift_left: 1 << 100.
#   [OK]          BigInt.Bitwise               19   shift_left: large number.
#   [OK]          BigInt.Bitwise               20   shift_left: negative number.
#   [OK]          BigInt.Bitwise               21   shift_left: by zero.
#   [OK]          BigInt.Bitwise               22   shift_right: basic.
#   [OK]          BigInt.Bitwise               23   shift_right: large number.
#   [OK]          BigInt.Bitwise               24   shift_right: negative (arit...
#   [OK]          BigInt.Bitwise               25   shift_right: by zero.
#   [OK]          BigInt.Bitwise               26   shift_right: small negative.
#   [OK]          BigInt.Comparison             0   equal: same value.
#   [OK]          BigInt.Comparison             1   equal: different values.
#   [OK]          BigInt.Comparison             2   equal: negative values.
#   [OK]          BigInt.Comparison             3   equal: opposite signs.
#   [OK]          BigInt.Comparison             4   equal: zeros.
#   [OK]          BigInt.Comparison             5   equal: large same.
#   [OK]          BigInt.Comparison             6   equal: large different.
#   [OK]          BigInt.Comparison             7   compare: less.
#   [OK]          BigInt.Comparison             8   compare: greater.
#   [OK]          BigInt.Comparison             9   compare: equal.
#   [OK]          BigInt.Comparison            10   compare: negative.
#   [OK]          BigInt.Comparison            11   compare: mixed sign.
#   [OK]          BigInt.Comparison            12   lt: true.
#   [OK]          BigInt.Comparison            13   lt: false (greater).
#   [OK]          BigInt.Comparison            14   lt: false (equal).
#   [OK]          BigInt.Comparison            15   lt: negative.
#   [OK]          BigInt.Comparison            16   le: true (less).
#   [OK]          BigInt.Comparison            17   le: true (equal).
#   [OK]          BigInt.Comparison            18   le: false.
#   [OK]          BigInt.Comparison            19   gt: true.
#   [OK]          BigInt.Comparison            20   gt: false (less).
#   [OK]          BigInt.Comparison            21   gt: false (equal).
#   [OK]          BigInt.Comparison            22   ge: true (greater).
#   [OK]          BigInt.Comparison            23   ge: true (equal).
#   [OK]          BigInt.Comparison            24   ge: false.
#   [OK]          BigInt.Constructor            0   from_string: empty string r...
#   [OK]          BigInt.Constructor            1   from_string: zero.
#   [OK]          BigInt.Constructor            2   from_string: positive decimal.
#   [OK]          BigInt.Constructor            3   from_string: negative decimal.
#   [OK]          BigInt.Constructor            4   from_string: positive sign.
#   [OK]          BigInt.Constructor            5   from_string: large number.
#   [OK]          BigInt.Constructor            6   from_string: very large num...
#   [OK]          BigInt.Constructor            7   from_string: leading whites...
#   [OK]          BigInt.Constructor            8   from_string: trailing white...
#   [OK]          BigInt.Constructor            9   from_string: both whitespace.
#   [OK]          BigInt.Constructor           10   from_string: tabs.
#   [OK]          BigInt.Constructor           11   from_string: newlines.
#   [OK]          BigInt.Constructor           12   from_string: hex lowercase.
#   [OK]          BigInt.Constructor           13   from_string: hex uppercase.
#   [OK]          BigInt.Constructor           14   from_string: hex large.
#   [OK]          BigInt.Constructor           15   from_string: hex negative.
#   [OK]          BigInt.Constructor           16   from_string: binary lowercase.
#   [OK]          BigInt.Constructor           17   from_string: binary uppercase.
#   [OK]          BigInt.Constructor           18   from_string: octal lowercase.
#   [OK]          BigInt.Constructor           19   from_string: octal uppercase.
#   [OK]          BigInt.Constructor           20   from_string: sign only throws.
#   [OK]          BigInt.Constructor           21   from_string: trailing chars...
#   [OK]          BigInt.Constructor           22   from_string: null char throws.
#   [OK]          BigInt.Constructor           23   from_string: decimal point ...
#   [OK]          BigInt.Constructor           24   from_string: float notation...
#   [OK]          BigInt.Constructor           25   from_int: zero.
#   [OK]          BigInt.Constructor           26   from_int: positive.
#   [OK]          BigInt.Constructor           27   from_int: negative.
#   [OK]          BigInt.Constructor           28   from_int: max_int.
#   [OK]          BigInt.Constructor           29   from_int: min_int.
#   [OK]          BigInt.Constructor           30   from_int64: large positive.
#   [OK]          BigInt.Constructor           31   from_int64: large negative.
#   [OK]          BigInt.Conversion             0   toString: zero.
#   [OK]          BigInt.Conversion             1   toString: positive.
#   [OK]          BigInt.Conversion             2   toString: negative.
#   [OK]          BigInt.Conversion             3   toString: large (1 << 100).
#   [OK]          BigInt.Conversion             4   toString: radix 2.
#   [OK]          BigInt.Conversion             5   toString: radix 8.
#   [OK]          BigInt.Conversion             6   toString: radix 16.
#   [OK]          BigInt.Conversion             7   toString: radix 36.
#   [OK]          BigInt.Conversion             8   toString: radix 16 large.
#   [OK]          BigInt.Conversion             9   toFloat: small.
#   [OK]          BigInt.Conversion            10   toFloat: negative.
#   [OK]          BigInt.Conversion            11   toFloat: zero.
#   [OK]          BigInt.Conversion            12   toFloat: MAX_SAFE_INTEGER.
#   [OK]          BigInt.Conversion            13   toFloat: large (0xfffffffff...
#   [OK]          BigInt.Conversion            14   toFloat: large negative.
#   [OK]          BigInt.Conversion            15   asIntN: positive fits.
#   [OK]          BigInt.Conversion            16   asIntN: positive wraps.
#   [OK]          BigInt.Conversion            17   asIntN: 255 -> -1.
#   [OK]          BigInt.Conversion            18   asIntN: negative fits.
#   [OK]          BigInt.Conversion            19   asIntN: negative wraps.
#   [OK]          BigInt.Conversion            20   asIntN: 64 bits.
#   [OK]          BigInt.Conversion            21   asUintN: fits.
#   [OK]          BigInt.Conversion            22   asUintN: wraps to 0.
#   [OK]          BigInt.Conversion            23   asUintN: wraps to 1.
#   [OK]          BigInt.Conversion            24   asUintN: negative wraps.
#   [OK]          BigInt.Conversion            25   asUintN: 64 bits.
#   [OK]          BigInt.AsIntN                 0   asIntN 0 bits.
#   [OK]          BigInt.AsIntN                 1   asIntN 1 bit.
#   [OK]          BigInt.AsIntN                 2   asIntN 8 bit.
#   [OK]          BigInt.AsIntN                 3   asIntN 16 bit.
#   [OK]          BigInt.AsIntN                 4   asIntN 32 bit.
#   [OK]          BigInt.AsIntN                 5   asIntN 64 bit.
#   [OK]          BigInt.AsIntN                 6   asIntN preserves small posi...
#   [OK]          BigInt.AsIntN                 7   asIntN preserves small nega...
#   [OK]          BigInt.AsIntN                 8   asIntN wrapping.
#   [OK]          BigInt.AsIntN                 9   asIntN large bits.
#   [OK]          BigInt.AsIntN                10   asIntN negative input.
#   [OK]          BigInt.AsIntN                11   asIntN 2-bit boundary.
#   [OK]          BigInt.AsIntN                12   asIntN 3-bit boundary.
#   [OK]          BigInt.AsIntN                13   asIntN 4-bit boundary.
#   [OK]          BigInt.AsIntN                14   asIntN identity for zero.
#   [OK]          BigInt.AsIntN                15   asIntN minus one.
#   [OK]          BigInt.AsUintN                0   asUintN 0 bits.
#   [OK]          BigInt.AsUintN                1   asUintN 1 bit.
#   [OK]          BigInt.AsUintN                2   asUintN 8 bit.
#   [OK]          BigInt.AsUintN                3   asUintN 16 bit.
#   [OK]          BigInt.AsUintN                4   asUintN 32 bit.
#   [OK]          BigInt.AsUintN                5   asUintN 64 bit.
#   [OK]          BigInt.AsUintN                6   asUintN preserves small val...
#   [OK]          BigInt.AsUintN                7   asUintN wrapping.
#   [OK]          BigInt.AsUintN                8   asUintN large bits.
#   [OK]          BigInt.AsUintN                9   asUintN negative becomes po...
#   [OK]          BigInt.AsUintN               10   asUintN 2-bit boundary.
#   [OK]          BigInt.AsUintN               11   asUintN 3-bit boundary.
#   [OK]          BigInt.AsUintN               12   asUintN 4-bit boundary.
#   [OK]          BigInt.AsUintN               13   asUintN identity for zero.
#   [OK]          BigInt.AsUintN               14   asUintN one.
#   [OK]          BigInt.AsUintN               15   asUintN power of two.
#   [OK]          BigInt.AsUintN               16   asUintN power of two minus ...
#   [OK]          BigInt.Prototype              0   toString default radix.
#   [OK]          BigInt.Prototype              1   toString radix 2 (binary).
#   [OK]          BigInt.Prototype              2   toString radix 8 (octal).
#   [OK]          BigInt.Prototype              3   toString radix 10 (decimal).
#   [OK]          BigInt.Prototype              4   toString radix 16 (hex).
#   [OK]          BigInt.Prototype              5   toString radix 36 (max).
#   [OK]          BigInt.Prototype              6   toString various radixes.
#   [OK]          BigInt.Prototype              7   toString large numbers.
#   [OK]          BigInt.Prototype              8   toString negative large.
#   [OK]          BigInt.Prototype              9   toString zero all radixes.
#   [OK]          BigInt.Prototype             10   to_float small.
#   [OK]          BigInt.Prototype             11   to_float large.
#   [OK]          BigInt.Prototype             12   to_float very large.
#   [OK]          BigInt.Prototype             13   of_string edge cases.
#   [OK]          BigInt.Prototype             14   of_string hex.
#   [OK]          BigInt.Prototype             15   of_string binary.
#   [OK]          BigInt.Prototype             16   of_string octal.
#   [OK]          BigInt.Prototype             17   compare equal.
#   [OK]          BigInt.Prototype             18   compare less.
#   [OK]          BigInt.Prototype             19   compare greater.
#   [OK]          BigInt.Prototype             20   compare negative.
#   [OK]          BigInt.Prototype             21   compare large.
#   [OK]          Date.Getters                  0   getTime returns epoch ms.
#   [OK]          Date.Getters                  1   getTime NaN for invalid date.
#   [OK]          Date.Getters                  2   getUTCFullYear.
#   [OK]          Date.Getters                  3   getUTCMonth.
#   [OK]          Date.Getters                  4   getUTCDate.
#   [OK]          Date.Getters                  5   getUTCDay.
#   [OK]          Date.Getters                  6   getUTCHours.
#   [OK]          Date.Getters                  7   getUTCMinutes.
#   [OK]          Date.Getters                  8   getUTCSeconds.
#   [OK]          Date.Getters                  9   getUTCMilliseconds.
#   [OK]          Date.Getters                 10   UTC getters at epoch.
#   [OK]          Date.Getters                 11   UTC getters before epoch.
#   [OK]          Date.Getters                 12   UTC getters at Y2K.
#   [OK]          Date.Getters                 13   UTC getters on leap day.
#   [OK]          Date.Getters                 14   getUTCFullYear NaN.
#   [OK]          Date.Getters                 15   getUTCMonth NaN.
#   [OK]          Date.Getters                 16   getUTCDate NaN.
#   [OK]          Date.Getters                 17   getUTCDay NaN.
#   [OK]          Date.Getters                 18   getUTCHours NaN.
#   [OK]          Date.Getters                 19   getUTCMinutes NaN.
#   [OK]          Date.Getters                 20   getUTCSeconds NaN.
#   [OK]          Date.Getters                 21   getUTCMilliseconds NaN.
#   [OK]          Date.Getters                 22   new year transition.
#   [OK]          Date.Getters                 23   month lengths.
#   [OK]          Date.LocalGetters             0   getTime basic.
#   [OK]          Date.LocalGetters             1   getTime epoch.
#   [OK]          Date.LocalGetters             2   getTime negative.
#   [OK]          Date.LocalGetters             3   getTime NaN.
#   [OK]          Date.LocalGetters             4   valueOf basic.
#   [OK]          Date.LocalGetters             5   valueOf epoch.
#   [OK]          Date.LocalGetters             6   valueOf NaN.
#   [OK]          Date.LocalGetters             7   valueOf equals getTime.
#   [OK]          Date.LocalGetters             8   getUTCFullYear 2017.
#   [OK]          Date.LocalGetters             9   getUTCFullYear 1970 (epoch).
#   [OK]          Date.LocalGetters            10   getUTCFullYear 1969.
#   [OK]          Date.LocalGetters            11   getUTCFullYear NaN.
#   [OK]          Date.LocalGetters            12   getUTCFullYear Y2K.
#   [OK]          Date.LocalGetters            13   getUTCFullYear leap year.
#   [OK]          Date.LocalGetters            14   getUTCMonth January (0).
#   [OK]          Date.LocalGetters            15   getUTCMonth December (11).
#   [OK]          Date.LocalGetters            16   getUTCMonth NaN.
#   [OK]          Date.LocalGetters            17   getUTCMonth epoch.
#   [OK]          Date.LocalGetters            18   getUTCDate first.
#   [OK]          Date.LocalGetters            19   getUTCDate 31st.
#   [OK]          Date.LocalGetters            20   getUTCDate NaN.
#   [OK]          Date.LocalGetters            21   getUTCDate epoch.
#   [OK]          Date.LocalGetters            22   getUTCDay Thursday (epoch).
#   [OK]          Date.LocalGetters            23   getUTCDay Sunday.
#   [OK]          Date.LocalGetters            24   getUTCDay Saturday.
#   [OK]          Date.LocalGetters            25   getUTCDay NaN.
#   [OK]          Date.LocalGetters            26   getUTCHours zero.
#   [OK]          Date.LocalGetters            27   getUTCHours 23.
#   [OK]          Date.LocalGetters            28   getUTCHours NaN.
#   [OK]          Date.LocalGetters            29   getUTCHours epoch.
#   [OK]          Date.LocalGetters            30   getUTCMinutes zero.
#   [OK]          Date.LocalGetters            31   getUTCMinutes 59.
#   [OK]          Date.LocalGetters            32   getUTCMinutes NaN.
#   [OK]          Date.LocalGetters            33   getUTCSeconds zero.
#   [OK]          Date.LocalGetters            34   getUTCSeconds 59.
#   [OK]          Date.LocalGetters            35   getUTCSeconds NaN.
#   [OK]          Date.LocalGetters            36   getUTCMilliseconds zero.
#   [OK]          Date.LocalGetters            37   getUTCMilliseconds 999.
#   [OK]          Date.LocalGetters            38   getUTCMilliseconds NaN.
#   [OK]          Date.LocalGetters            39   getUTCMilliseconds middle.
#   [OK]          Date.LocalGetters            40   getTimezoneOffset returns n...
#   [OK]          Date.LocalGetters            41   getTimezoneOffset NaN.
#   [OK]          Date.LocalGetters            42   getTimezoneOffset in valid ...
#   [OK]          Date.LocalGetters            43   local getters consistent.
#   [OK]          Date.LocalGetters            44   local getters NaN.
#   [OK]          Date.LocalGetters            45   getDay range 0-6.
#   [OK]          Date.LocalGetters            46   getters large positive date.
#   [OK]          Date.LocalGetters            47   getters large negative date.
#   [OK]          Date.LocalGetters            48   getters boundary milliseconds.
#   [OK]          Date.Setters                  0   setTime basic.
#   [OK]          Date.Setters                  1   setTime epoch.
#   [OK]          Date.Setters                  2   setTime negative.
#   [OK]          Date.Setters                  3   setTime NaN value.
#   [OK]          Date.Setters                  4   setTime on NaN date.
#   [OK]          Date.Setters                  5   setUTCMilliseconds basic.
#   [OK]          Date.Setters                  6   setUTCMilliseconds overflow.
#   [OK]          Date.Setters                  7   setUTCMilliseconds negative.
#   [OK]          Date.Setters                  8   setUTCMilliseconds NaN.
#   [OK]          Date.Setters                  9   setUTCSeconds basic.
#   [OK]          Date.Setters                 10   setUTCSeconds overflow.
#   [OK]          Date.Setters                 11   setUTCSeconds with ms.
#   [OK]          Date.Setters                 12   setUTCSeconds NaN.
#   [OK]          Date.Setters                 13   setUTCMinutes basic.
#   [OK]          Date.Setters                 14   setUTCMinutes overflow.
#   [OK]          Date.Setters                 15   setUTCMinutes with seconds.
#   [OK]          Date.Setters                 16   setUTCMinutes with seconds ...
#   [OK]          Date.Setters                 17   setUTCMinutes NaN.
#   [OK]          Date.Setters                 18   setUTCHours basic.
#   [OK]          Date.Setters                 19   setUTCHours overflow.
#   [OK]          Date.Setters                 20   setUTCHours with minutes.
#   [OK]          Date.Setters                 21   setUTCHours with minutes an...
#   [OK]          Date.Setters                 22   setUTCHours all components.
#   [OK]          Date.Setters                 23   setUTCHours NaN.
#   [OK]          Date.Setters                 24   setUTCDate basic.
#   [OK]          Date.Setters                 25   setUTCDate overflow.
#   [OK]          Date.Setters                 26   setUTCDate zero.
#   [OK]          Date.Setters                 27   setUTCDate negative.
#   [OK]          Date.Setters                 28   setUTCDate NaN.
#   [OK]          Date.Setters                 29   setUTCMonth basic.
#   [OK]          Date.Setters                 30   setUTCMonth overflow.
#   [OK]          Date.Setters                 31   setUTCMonth negative.
#   [OK]          Date.Setters                 32   setUTCMonth with date.
#   [OK]          Date.Setters                 33   setUTCMonth NaN.
#   [OK]          Date.Setters                 34   setUTCFullYear basic.
#   [OK]          Date.Setters                 35   setUTCFullYear with month.
#   [OK]          Date.Setters                 36   setUTCFullYear with month a...
#   [OK]          Date.Setters                 37   setUTCFullYear leap to non-...
#   [OK]          Date.Setters                 38   setUTCFullYear NaN.
#   [OK]          Date.Setters                 39   setMilliseconds basic.
#   [OK]          Date.Setters                 40   setSeconds basic.
#   [OK]          Date.Setters                 41   setMinutes basic.
#   [OK]          Date.Setters                 42   setHours basic.
#   [OK]          Date.Setters                 43   setDate basic.
#   [OK]          Date.Setters                 44   setMonth basic.
#   [OK]          Date.Setters                 45   setFullYear basic.
#   [OK]          Date.Setters                 46   setSeconds with ms.
#   [OK]          Date.Setters                 47   setMinutes with seconds.
#   [OK]          Date.Setters                 48   setMinutes with seconds and...
#   [OK]          Date.Setters                 49   setHours with minutes.
#   [OK]          Date.Setters                 50   setHours with minutes and s...
#   [OK]          Date.Setters                 51   setHours all components.
#   [OK]          Date.Setters                 52   setMonth with date.
#   [OK]          Date.Setters                 53   setFullYear with month.
#   [OK]          Date.Setters                 54   setFullYear with month and ...
#   [OK]          Date.Setters                 55   setMilliseconds NaN.
#   [OK]          Date.Setters                 56   setSeconds NaN.
#   [OK]          Date.Setters                 57   setMinutes NaN.
#   [OK]          Date.Setters                 58   setHours NaN.
#   [OK]          Date.Setters                 59   setDate NaN.
#   [OK]          Date.Setters                 60   setMonth NaN.
#   [OK]          Date.Setters                 61   setFullYear NaN.
#   [OK]          Date.ToString                 0   toUTCString basic.
#   [OK]          Date.ToString                 1   toUTCString epoch.
#   [OK]          Date.ToString                 2   toUTCString format.
#   [OK]          Date.ToString                 3   toUTCString NaN.
#   [OK]          Date.ToString                 4   toUTCString negative year.
#   [OK]          Date.ToString                 5   toUTCString all months.
#   [OK]          Date.ToString                 6   toUTCString day names.
#   [OK]          Date.ToString                 7   toDateString basic.
#   [OK]          Date.ToString                 8   toDateString epoch.
#   [OK]          Date.ToString                 9   toDateString NaN.
#   [OK]          Date.ToString                10   toDateString no time.
#   [OK]          Date.ToString                11   toTimeString basic.
#   [OK]          Date.ToString                12   toTimeString epoch.
#   [OK]          Date.ToString                13   toTimeString NaN.
#   [OK]          Date.ToString                14   toTimeString contains time.
#   [OK]          Date.ToString                15   toString basic.
#   [OK]          Date.ToString                16   toString epoch.
#   [OK]          Date.ToString                17   toString NaN.
#   [OK]          Date.ToString                18   toString contains date and ...
#   [OK]          Date.ToString                19   toString contains year.
#   [OK]          Date.ToString                20   toJSON basic.
#   [OK]          Date.ToString                21   toJSON NaN.
#   [OK]          Date.ToString                22   toJSONUnsafe basic.
#   [OK]          Date.ToString                23   toLocaleString basic.
#   [OK]          Date.ToString                24   toLocaleString NaN.
#   [OK]          Date.ToString                25   toLocaleDateString basic.
#   [OK]          Date.ToString                26   toLocaleDateString NaN.
#   [OK]          Date.ToString                27   toLocaleTimeString basic.
#   [OK]          Date.ToString                28   toLocaleTimeString NaN.
#   [OK]          Date.ToString                29   toString large year.
#   [OK]          Date.ToString                30   toString negative year.
#   [OK]          Date.ToString                31   toUTCString Y2K.
#   [OK]          Date.Now                      0   now returns finite number.
#   [OK]          Date.Now                      1   now returns positive.
#   [OK]          Date.Now                      2   now is recent (after 2020).
#   [OK]          Date.Now                      3   now is monotonic.
#   [OK]          Date.Now                      4   now returns integer ms.
#   [OK]          Date.Parse                    0   empty string returns NaN.
#   [OK]          Date.Parse                    1   year only: 2000.
#   [OK]          Date.Parse                    2   year-month: 2000-01.
#   [OK]          Date.Parse                    3   full date: 2000-01-01.
#   [OK]          Date.Parse                    4   date with time UTC: 2000-01...
#   [OK]          Date.Parse                    5   date with seconds: 2000-01-...
#   [OK]          Date.Parse                    6   milliseconds .1Z = 100ms.
#   [OK]          Date.Parse                    7   milliseconds .10Z = 100ms.
#   [OK]          Date.Parse                    8   milliseconds .100Z = 100ms.
#   [OK]          Date.Parse                    9   milliseconds .1000Z = 100ms.
#   [OK]          Date.Parse                   10   timezone offset +00:00.
#   [OK]          Date.Parse                   11   known ISO timestamp.
#   [OK]          Date.Parse                   12   roundtrip parsing.
#   [OK]          Date.Parse                   13   millis: single digit .1.
#   [OK]          Date.Parse                   14   millis: two digits .12.
#   [OK]          Date.Parse                   15   millis: four digits .1234 t...
#   [OK]          Date.Parse                   16   millis: many digits .9999 t...
#   [OK]          Date.Parse                   17   expanded year +002000.
#   [OK]          Date.Parse                   18   expanded year -000001.
#   [OK]          Date.Parse                   19   expanded year -000000 is in...
#   [OK]          Date.Parse                   20   month name format: Jan 1 2000.
#   [OK]          Date.Parse                   21   with weekday: Sat Jan 1 2000.
#   [OK]          Date.Parse                   22   timezone GMT+0100.
#   [OK]          Date.Parse                   23   timezone GMT+0200.
#   [OK]          Date.Parse                   24   invalid: gibberish.
#   [OK]          Date.Parse                   25   invalid: partial 2000-.
#   [OK]          Date.Parse                   26   invalid: month 13.
#   [OK]          Date.Parse                   27   invalid: day 32.
#   [OK]          Date.Parse                   28   invalid: hour 25.
#   [OK]          Date.Parse                   29   invalid: minute 60.
#   [OK]          Date.Parse                   30   invalid: second 60.
#   [OK]          Date.ToISOString              0   known timestamp.
#   [OK]          Date.ToISOString              1   epoch.
#   [OK]          Date.ToISOString              2   Y2K.
#   [OK]          Date.ToISOString              3   with milliseconds.
#   [OK]          Date.ToISOString              4   millis: 000.
#   [OK]          Date.ToISOString              5   millis: 001.
#   [OK]          Date.ToISOString              6   millis: 010.
#   [OK]          Date.ToISOString              7   millis: 100.
#   [OK]          Date.ToISOString              8   millis: 999.
#   [OK]          Date.ToISOString              9   single digit month padded.
#   [OK]          Date.ToISOString             10   single digit day padded.
#   [OK]          Date.ToISOString             11   single digit hour padded.
#   [OK]          Date.ToISOString             12   before epoch -1ms.
#   [OK]          Date.ToISOString             13   1969 Jan.
#   [OK]          Date.ToISOString             14   year 0.
#   [OK]          Date.ToISOString             15   negative year.
#   [OK]          Date.ToISOString             16   year 10000.
#   [OK]          Date.ToISOString             17   roundtrip known timestamp.
#   [OK]          Date.ToISOString             18   roundtrip epoch.
#   [OK]          Date.ToISOString             19   roundtrip before epoch.
#   [OK]          Date.ToISOString             20   QJS: 2020-01-01T01:01:01.123Z.
#   [OK]          Date.ToISOString             21   QJS: .1Z -> .100Z.
#   [OK]          Date.ToISOString             22   QJS: .12Z -> .120Z.
#   [OK]          Date.UTC                      0   UTC year only.
#   [OK]          Date.UTC                      1   UTC year and month.
#   [OK]          Date.UTC                      2   UTC year, month, day.
#   [OK]          Date.UTC                      3   UTC with hours.
#   [OK]          Date.UTC                      4   UTC with minutes.
#   [OK]          Date.UTC                      5   UTC with seconds.
#   [OK]          Date.UTC                      6   UTC with milliseconds.
#   [OK]          Date.UTC                      7   UTC NaN year.
#   [OK]          Date.UTC                      8   UTC NaN month.
#   [OK]          Date.UTC                      9   UTC NaN day.
#   [OK]          Date.UTC                     10   UTC NaN hours.
#   [OK]          Date.UTC                     11   UTC NaN minutes.
#   [OK]          Date.UTC                     12   UTC NaN seconds.
#   [OK]          Date.UTC                     13   UTC Unix epoch.
#   [OK]          Date.UTC                     14   UTC before epoch.
#   [OK]          Date.UTC                     15   UTC Y2K.
#   [OK]          Date.UTC                     16   UTC year 0 -> 1900.
#   [OK]          Date.UTC                     17   UTC year 99 -> 1999.
#   [OK]          Date.UTC                     18   UTC year 100 stays 100.
#   [OK]          Date.UTC                     19   UTC month 12 = January next...
#   [OK]          Date.UTC                     20   UTC month -1 = December pre...
#   [OK]          Date.UTC                     21   UTC day 32 Jan = Feb 1.
#   [OK]          Date.UTC                     22   UTC day 0 = last day prev m...
#   [OK]          Date.UTC                     23   UTC day -1 = second-to-last...
#   [OK]          Date.UTC                     24   UTC leap year Feb 29 valid.
#   [OK]          Date.UTC                     25   UTC non-leap Feb 29 = Mar 1.
#   [OK]          Date.UTC                     26   UTC 2000 is leap year.
#   [OK]          Date.UTC                     27   UTC 1900 is NOT leap year.
#   [OK]          Date.UTC                     28   UTC large day offset.
#   [OK]          Date.UTC                     29   UTC large minute offset.
#   [OK]          Date.UTC                     30   UTC large second offset.
#   [OK]          Number.IsFinite               0   infinity: positive Infinity...
#   [OK]          Number.IsFinite               1   negative_infinity: negative...
#   [OK]          Number.IsFinite               2   nan: NaN returns false.
#   [OK]          Number.IsFinite               3   nan_from_operations: NaN fr...
#   [OK]          Number.IsFinite               4   finite_numbers: zeros.
#   [OK]          Number.IsFinite               5   finite_numbers: positive in...
#   [OK]          Number.IsFinite               6   finite_numbers: negative in...
#   [OK]          Number.IsFinite               7   finite_numbers: decimals.
#   [OK]          Number.IsFinite               8   finite_numbers: MAX/MIN_VALUE.
#   [OK]          Number.IsFinite               9   finite_numbers: safe intege...
#   [OK]          Number.IsFinite              10   finite_numbers: epsilon.
#   [OK]          Number.IsFinite              11   finite_numbers: very small.
#   [OK]          Number.IsFinite              12   finite_numbers: very large.
#   [OK]          Number.IsInteger              0   integers: zeros.
#   [OK]          Number.IsInteger              1   integers: positive.
#   [OK]          Number.IsInteger              2   integers: negative.
#   [OK]          Number.IsInteger              3   integers: large.
#   [OK]          Number.IsInteger              4   integers: decimal zero frac...
#   [OK]          Number.IsInteger              5   non_integers: decimals.
#   [OK]          Number.IsInteger              6   non_integers: small fractions.
#   [OK]          Number.IsInteger              7   special: NaN.
#   [OK]          Number.IsInteger              8   special: Infinity.
#   [OK]          Number.IsInteger              9   edge: MAX_VALUE is integer.
#   [OK]          Number.IsInteger             10   edge: MIN_VALUE is not inte...
#   [OK]          Number.IsInteger             11   edge: epsilon is not integer.
#   [OK]          Number.IsInteger             12   edge: powers of two.
#   [OK]          Number.IsInteger             13   edge: scientific notation.
#   [OK]          Number.IsNaN                  0   nan_value: NaN returns true.
#   [OK]          Number.IsNaN                  1   nan_from_operation: NaN fro...
#   [OK]          Number.IsNaN                  2   nan_from_parseInt: NaN from...
#   [OK]          Number.IsNaN                  3   nan_from_parseFloat: NaN fr...
#   [OK]          Number.IsNaN                  4   finite_numbers: finite numb...
#   [OK]          Number.IsNaN                  5   zero_values: zeros return f...
#   [OK]          Number.IsNaN                  6   infinity_values: Infinity r...
#   [OK]          Number.IsNaN                  7   max_min_values: extreme val...
#   [OK]          Number.IsNaN                  8   epsilon_value: epsilon retu...
#   [OK]          Number.ParseFloat             0   S15.1.2.3_A1_T1: empty stri...
#   [OK]          Number.ParseFloat             1   S15.1.2.3_A1_T2: simple int...
#   [OK]          Number.ParseFloat             2   S15.1.2.3_A1_T3: non-numeri...
#   [OK]          Number.ParseFloat             3   S15.1.2.3_A1_T4: decimal nu...
#   [OK]          Number.ParseFloat             4   S15.1.2.3_A1_T5: stops at i...
#   [OK]          Number.ParseFloat             5   S15.1.2.3_A1_T6: whitespace...
#   [OK]          Number.ParseFloat             6   S15.1.2.3_A1_T7: invalid st...
#   [OK]          Number.ParseFloat             7   S15.1.2.3_A2_T1: leading sp...
#   [OK]          Number.ParseFloat             8   S15.1.2.3_A2_T2: leading tabs.
#   [OK]          Number.ParseFloat             9   S15.1.2.3_A2_T3: leading ne...
#   [OK]          Number.ParseFloat            10   S15.1.2.3_A2_T4: leading ca...
#   [OK]          Number.ParseFloat            11   S15.1.2.3_A2_T5: leading fo...
#   [OK]          Number.ParseFloat            12   S15.1.2.3_A2_T6: leading ve...
#   [OK]          Number.ParseFloat            13   S15.1.2.3_A2_T7: mixed whit...
#   [OK]          Number.ParseFloat            14   S15.1.2.3_A2_T8: non-breaki...
#   [OK]          Number.ParseFloat            15   S15.1.2.3_A2_T9: trailing c...
#   [OK]          Number.ParseFloat            16   S15.1.2.3_A2_T10: whitespac...
#   [OK]          Number.ParseFloat            17   S15.1.2.3_A3_T1: positive s...
#   [OK]          Number.ParseFloat            18   S15.1.2.3_A3_T2: negative s...
#   [OK]          Number.ParseFloat            19   S15.1.2.3_A3_T3: sign with ...
#   [OK]          Number.ParseFloat            20   S15.1.2.3_A4_T1: basic expo...
#   [OK]          Number.ParseFloat            21   S15.1.2.3_A4_T2: uppercase E.
#   [OK]          Number.ParseFloat            22   S15.1.2.3_A4_T3: negative e...
#   [OK]          Number.ParseFloat            23   S15.1.2.3_A4_T4: positive e...
#   [OK]          Number.ParseFloat            24   S15.1.2.3_A4_T5: decimal wi...
#   [OK]          Number.ParseFloat            25   S15.1.2.3_A4_T6: incomplete...
#   [OK]          Number.ParseFloat            26   S15.1.2.3_A4_T7: very large...
#   [OK]          Number.ParseFloat            27   S15.1.2.3_A5_T1: Infinity s...
#   [OK]          Number.ParseFloat            28   S15.1.2.3_A5_T2: signed Inf...
#   [OK]          Number.ParseFloat            29   S15.1.2.3_A5_T3: Infinity w...
#   [OK]          Number.ParseFloat            30   S15.1.2.3_A5_T4: Infinity w...
#   [OK]          Number.ParseFloat            31   S15.1.2.3_A6: multiple deci...
#   [OK]          Number.ParseFloat            32   S15.1.2.3_A7.5: leading dec...
#   [OK]          Number.ParseFloat            33   S15.1.2.3_A7.6: trailing de...
#   [OK]          Number.ParseFloat            34   S15.1.2.3_A7.7: decimal wit...
#   [OK]          Number.ParseFloat            35   misc_t1: hex not supported.
#   [OK]          Number.ParseFloat            36   misc_t2: binary/octal not s...
#   [OK]          Number.ParseFloat            37   misc_t3: leading zeros.
#   [OK]          Number.ParseFloat            38   misc_t4: NaN string.
#   [OK]          Number.ParseFloat            39   misc_t5: sign edge cases.
#   [OK]          Number.ParseFloat            40   misc_t6: very small numbers.
#   [OK]          Number.ParseFloat            41   misc_t7: negative zero.
#   [OK]          Number.ParseFloat            42   misc_t8: precision loss.
#   [OK]          Number.ParseFloat            43   misc_t9: exponent without m...
#   [OK]          Number.ParseFloat            44   misc_t10: comprehensive whi...
#   [OK]          Number.ParseFloat            45   misc_t11: Infinity case sen...
#   [OK]          Number.ParseFloat            46   misc_t12: sign with decimal...
#   [OK]          Number.ParseFloat            47   misc_t13: multiple e.
#   [OK]          Number.ParseFloat            48   misc_t14: exponent with dec...
#   [OK]          Number.ParseInt               0   S15.1.2.2_A1_T1: empty stri...
#   [OK]          Number.ParseInt               1   S15.1.2.2_A1_T2: whitespace...
#   [OK]          Number.ParseInt               2   S15.1.2.2_A1_T3: non-numeri...
#   [OK]          Number.ParseInt               3   S15.1.2.2_A1_T4: invalid st...
#   [OK]          Number.ParseInt               4   S15.1.2.2_A1_T5: sign only ...
#   [OK]          Number.ParseInt               5   S15.1.2.2_A1_T6: stops at i...
#   [OK]          Number.ParseInt               6   S15.1.2.2_A1_T7: NaN/Infini...
#   [OK]          Number.ParseInt               7   S15.1.2.2_A2_T1: leading sp...
#   [OK]          Number.ParseInt               8   S15.1.2.2_A2_T2: leading tabs.
#   [OK]          Number.ParseInt               9   S15.1.2.2_A2_T3: leading ne...
#   [OK]          Number.ParseInt              10   S15.1.2.2_A2_T4: leading ca...
#   [OK]          Number.ParseInt              11   S15.1.2.2_A2_T5: leading fo...
#   [OK]          Number.ParseInt              12   S15.1.2.2_A2_T6: leading ve...
#   [OK]          Number.ParseInt              13   S15.1.2.2_A2_T7: mixed whit...
#   [OK]          Number.ParseInt              14   S15.1.2.2_A2_T8: non-breaki...
#   [OK]          Number.ParseInt              15   S15.1.2.2_A2_T9: trailing w...
#   [OK]          Number.ParseInt              16   S15.1.2.2_A2_T10: whitespac...
#   [OK]          Number.ParseInt              17   S15.1.2.2_A3.1_T1: positive...
#   [OK]          Number.ParseInt              18   S15.1.2.2_A3.1_T2: negative...
#   [OK]          Number.ParseInt              19   S15.1.2.2_A3.1_T3: sign wit...
#   [OK]          Number.ParseInt              20   S15.1.2.2_A3.1_T4: multiple...
#   [OK]          Number.ParseInt              21   S15.1.2.2_A3.1_T5: sign wit...
#   [OK]          Number.ParseInt              22   S15.1.2.2_A3.1_T6: sign wit...
#   [OK]          Number.ParseInt              23   S15.1.2.2_A3.1_T7: sign alone.
#   [OK]          Number.ParseInt              24   S15.1.2.2_A3.2_T1: negative...
#   [OK]          Number.ParseInt              25   S15.1.2.2_A3.2_T2: negative...
#   [OK]          Number.ParseInt              26   S15.1.2.2_A3.2_T3: negative...
#   [OK]          Number.ParseInt              27   S15.1.2.2_A4.1_T1: radix 2.
#   [OK]          Number.ParseInt              28   S15.1.2.2_A4.1_T2: radix 8.
#   [OK]          Number.ParseInt              29   S15.1.2.2_A4.2_T1: radix 16.
#   [OK]          Number.ParseInt              30   S15.1.2.2_A4.2_T2: radix 36.
#   [OK]          Number.ParseInt              31   S15.1.2.2_A5.1_T1: 0x prefi...
#   [OK]          Number.ParseInt              32   S15.1.2.2_A5.2_T1: 0x with ...
#   [OK]          Number.ParseInt              33   S15.1.2.2_A5.2_T2: 0x with ...
#   [OK]          Number.ParseInt              34   S15.1.2.2_A6.1_T1: radix 0 ...
#   [OK]          Number.ParseInt              35   S15.1.2.2_A6.1_T2: radix 1 ...
#   [OK]          Number.ParseInt              36   S15.1.2.2_A6.1_T3: radix 37...
#   [OK]          Number.ParseInt              37   S15.1.2.2_A6.1_T4: large ra...
#   [OK]          Number.ParseInt              38   S15.1.2.2_A6.1_T5: negative...
#   [OK]          Number.ParseInt              39   S15.1.2.2_A6.1_T6: boundary...
#   [OK]          Number.ParseInt              40   S15.1.2.2_A7.1_T1: digits b...
#   [OK]          Number.ParseInt              41   S15.1.2.2_A7.1_T2: all digi...
#   [OK]          Number.ParseInt              42   S15.1.2.2_A7.2_T1: large nu...
#   [OK]          Number.ParseInt              43   S15.1.2.2_A7.2_T2: large he...
#   [OK]          Number.ParseInt              44   S15.1.2.2_A7.2_T3: many dig...
#   [OK]          Number.ParseInt              45   S15.1.2.2_A7.3_T1: leading ...
#   [OK]          Number.ParseInt              46   S15.1.2.2_A7.3_T2: leading ...
#   [OK]          Number.ParseInt              47   S15.1.2.2_A7.3_T3: only zeros.
#   [OK]          Number.ParseInt              48   S15.1.2.2_A8: decimal point.
#   [OK]          Number.ParseInt              49   misc_t1: scientific notatio...
#   [OK]          Number.ParseInt              50   misc_t2: unicode digits not...
#   [OK]          Number.ParseInt              51   misc_t3: 0o octal prefix no...
#   [OK]          Number.ParseInt              52   misc_t4: 0b binary prefix n...
#   [OK]          Number.ParseInt              53   misc_t5: single digits.
#   [OK]          Number.ParseInt              54   misc_t6: radix boundaries.
#   [OK]          Number.ParseInt              55   misc_t7: case insensitivity.
#   [OK]          Number.ParseInt              56   misc_t8: comprehensive whit...
#   [OK]          Number.ToString               0   basic: integers.
#   [OK]          Number.ToString               1   basic: decimals.
#   [OK]          Number.ToString               2   basic: special values.
#   [OK]          Number.ToString               3   basic: scientific notation.
#   [OK]          Number.ToString               4   basic: negative zero.
#   [OK]          Number.ToString               5   radix 2: binary.
#   [OK]          Number.ToString               6   radix 8: octal.
#   [OK]          Number.ToString               7   radix 16: hex.
#   [OK]          Number.ToString               8   radix 36: max.
#   [OK]          Number.ToString               9   radix 10: explicit.
#   [OK]          Number.ToString              10   negative with radix.
#   [OK]          Number.ToString              11   special values with radix.
#   [OK]          Number.ToString              12   large numbers.
#   [OK]          Number.ToExponential          0   basic: no digits.
#   [OK]          Number.ToExponential          1   digits: 0.
#   [OK]          Number.ToExponential          2   digits: 1.
#   [OK]          Number.ToExponential          3   digits: multiple.
#   [OK]          Number.ToExponential          4   digits: large.
#   [OK]          Number.ToExponential          5   special values.
#   [OK]          Number.ToExponential          6   special values with digits.
#   [OK]          Number.ToExponential          7   negative numbers.
#   [OK]          Number.ToExponential          8   rounding.
#   [OK]          Number.ToExponential          9   very small numbers.
#   [OK]          Number.ToExponential         10   very large numbers.
#   [OK]          Number.ToExponential         11   negative zero.
#   [OK]          Number.ToPrecision            0   basic: no precision.
#   [OK]          Number.ToPrecision            1   precision: 1.
#   [OK]          Number.ToPrecision            2   precision: 2.
#   [OK]          Number.ToPrecision            3   precision: multiple.
#   [OK]          Number.ToPrecision            4   precision: large.
#   [OK]          Number.ToPrecision            5   special values.
#   [OK]          Number.ToPrecision            6   special values with precision.
#   [OK]          Number.ToPrecision            7   negative numbers.
#   [OK]          Number.ToPrecision            8   rounding.
#   [OK]          Number.ToPrecision            9   zero handling.
#   [OK]          Number.ToPrecision           10   negative zero.
#   [OK]          Number.ToPrecision           11   very small numbers.
#   [OK]          Number.ToPrecision           12   very large numbers.
#   [OK]          String.Normalize              0   default form (NFC).
#   [OK]          String.Normalize              1   empty string.
#   [OK]          String.Normalize              2   ASCII unchanged.
#   [OK]          String.Normalize              3   NFC: basic.
#   [OK]          String.Normalize              4   NFC: multiple accents.
#   [OK]          String.Normalize              5   NFD: basic.
#   [OK]          String.Normalize              6   NFD: already decomposed.
#   [OK]          String.Normalize              7   NFKC: ligature.
#   [OK]          String.Normalize              8   NFKC: superscript.
#   [OK]          String.Normalize              9   NFKD: ligature.
#   [OK]          String.Normalize             10   NFKD: with accents.
#   [OK]          String.Normalize             11   Hangul syllable.
#   [OK]          String.Normalize             12   combining sequences.
#   [OK]          String.Search                 0   basic: match.
#   [OK]          String.Search                 1   basic: no match.
#   [OK]          String.Search                 2   basic: match at start.
#   [OK]          String.Search                 3   basic: match at end.
#   [OK]          String.Search                 4   basic: empty string.
#   [OK]          String.Search                 5   basic: empty pattern.
#   [OK]          String.Search                 6   case: sensitive.
#   [OK]          String.Search                 7   case: insensitive.
#   [OK]          String.Search                 8   pattern: digit class.
#   [OK]          String.Search                 9   pattern: word boundary.
#   [OK]          String.Search                10   pattern: any character.
#   [OK]          String.Search                11   pattern: alternation.
#   [OK]          String.Search                12   pattern: optional.
#   [OK]          String.Search                13   multiple: finds first.
#   [OK]          String.Search                14   multiple: global flag ignored.
#   [OK]          String.Search                15   unicode: characters.
#   [OK]          String.Search                16   unicode: emoji.
#   [OK]          String.Search                17   edge: special regex chars.
#   [OK]          String.Search                18   edge: newline.
#   [OK]          RegExp.NamedGroups            0   basic: date pattern.
#   [OK]          RegExp.NamedGroups            1   basic: single group.
#   [OK]          RegExp.NamedGroups            2   basic: multiple groups.
#   [OK]          RegExp.NamedGroups            3   access: by name.
#   [OK]          RegExp.NamedGroups            4   access: nonexistent.
#   [OK]          RegExp.NamedGroups            5   access: all groups list.
#   [OK]          RegExp.NamedGroups            6   pattern: with quantifiers.
#   [OK]          RegExp.NamedGroups            7   pattern: with alternation.
#   [OK]          RegExp.NamedGroups            8   edge: no named groups.
#   [OK]          RegExp.NamedGroups            9   edge: mixed named and unnamed.
#   [OK]          RegExp.DotAll                 0   basic: dot without flag.
#   [OK]          RegExp.DotAll                 1   basic: dot with flag.
#   [OK]          RegExp.DotAll                 2   basic: flag accessor.
#   [OK]          RegExp.DotAll                 3   line: matches LF.
#   [OK]          RegExp.DotAll                 4   line: matches CR.
#   [OK]          RegExp.DotAll                 5   line: matches CRLF.
#   [OK]          RegExp.DotAll                 6   flags: with global.
#   [OK]          RegExp.DotAll                 7   flags: with ignorecase.
#   [OK]          RegExp.DotAll                 8   flags: with multiline.
#   [OK]          RegExp.DotAll                 9   accessor: includes s.
#   [OK]          RegExp.DotAll                10   accessor: order.
#   [OK]          RegExp.DotAll                11   practical: multiline content.
#   [OK]          RegExp.DotAll                12   practical: without flag fails.
#   [OK]          RegExp.Unicode                0   flag: accessor.
#   [OK]          RegExp.Unicode                1   flag: in flags string.
#   [OK]          RegExp.Unicode                2   match: basic unicode.
#   [OK]          RegExp.Unicode                3   match: emoji.
#   [OK]          RegExp.Unicode                4   match: no match.
#   [OK]          RegExp.Unicode                5   combined: with global.
#   [OK]          RegExp.Unicode                6   combined: with ignorecase.
#   [OK]          RegExp.Unicode                7   combined: with multiline.
#   [OK]          RegExp.Unicode                8   property: letter category.
#   [OK]          RegExp.Unicode                9   astral: basic.
#   [OK]          RegExp.Unicode               10   astral: surrogate pairs.
#   [OK]          RegExp.Unicode               11   practical: international.
#   [OK]          RegExp.Unicode               12   practical: mixed scripts.
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/Js/test/_build/_tests/Js'.
# Test Successful in 0.882s. 833 tests run.
# (cd _build/default/packages/Belt/test && ./test.exe)
# Testing `Belt'.
# This run has ID `ABIQ7NGM'.
# 
#   [OK]          Int                        0   toFloat.
#   [OK]          Int                        1   fromFloat.
#   [OK]          Int                        2   fromString.
#   [OK]          Int                        3   toString and operators.
#   [OK]          Float                      0   fromInt.
#   [OK]          Float                      1   toInt.
#   [OK]          Float                      2   fromString.
#   [OK]          Float                      3   toString and operators.
#   [OK]          Option                     0   keep.
#   [OK]          Option                     1   orElse.
#   [OK]          Result                     0   alias compatibility.
#   [OK]          Array                      0   get and set bounds.
#   [OK]          Array                      1   shuffle preserves contents.
#   [OK]          Array                      2   range helpers.
#   [OK]          Array                      3   reductions.
#   [OK]          Array                      4   construction copy and conversi...
#   [OK]          Array                      5   callback once regressions.
#   [OK]          Array                      6   keep keepMap and partition.
#   [OK]          Array                      7   slice.
#   [OK]          Array                      8   sliceToEnd.
#   [OK]          Array                      9   fill.
#   [OK]          Array                     10   blit.
#   [OK]          Array                     11   zip and unzip.
#   [OK]          Array                     12   iteration predicates and reverse.
#   [OK]          Array                     13   every2 and some2.
#   [OK]          Array                     14   concat and concatMany.
#   [OK]          Array                     15   cmp and find helpers.
#   [OK]          Array                     16   unsafe allocation helpers.
#   [OK]          Array                     17   push unsupported in native.
#   [OK]          List                       0   makeBy get and map.
#   [OK]          List                       1   flatten.
#   [OK]          List                       2   concatMany.
#   [OK]          List                       3   concat.
#   [OK]          List                       4   zip and zipBy.
#   [OK]          List                       5   partition.
#   [OK]          List                       6   unzip.
#   [OK]          List                       7   keep and keepWithIndex.
#   [OK]          List                       8   map.
#   [OK]          List                       9   take drop and splitAt.
#   [OK]          List                      10   association helpers.
#   [OK]          List                      11   head tail and access.
#   [OK]          List                      12   reductions.
#   [OK]          List                      13   predicates and comparison.
#   [OK]          List                      14   make sort eq and keepMap.
#   [OK]          Map                        0   fromArray set get toArray and ...
#   [OK]          Map                        1   large fromArray sorts output.
#   [OK]          Map                        2   merge variants.
#   [OK]          Map                        3   update removeMany and undefine...
#   [OK]          Map                        4   set returns new map.
#   [OK]          Map                        5   repeated update accumulation.
#   [OK]          Map                        6   mergeMany split and empty remo...
#   [OK]          Map.Dict                   0   packIdData and first class com...
#   [OK]          Map.Int                    0   findFirstBy.
#   [OK]          Map.Int                    1   invariant after removals.
#   [OK]          Map.Int                    2   set get remove stress.
#   [OK]          Map.String                 0   findFirstBy.
#   [OK]          Set                        0   remove add and minmax behavior.
#   [OK]          Set                        1   union intersect diff subset an...
#   [OK]          Set                        2   iteration every some cmp.
#   [OK]          Set                        3   keep partition getExn and split.
#   [OK]          Set                        4   empty keep and empty split.
#   [OK]          Set.Dict                   0   forEach and every.
#   [OK]          Set.Int                    0   eq and partition.
#   [OK]          Set.Int                    1   set algebra.
#   [OK]          Set.Int                    2   min max reduce and emptiness.
#   [OK]          Set.Int                    3   invariant under large removals.
#   [OK]          Set.Int                    4   subset eq cmp get and add iden...
#   [OK]          Set.Int                    5   mergeMany removeMany and split.
#   [OK]          Set.Int                    6   empty split.
#   [OK]          Set.String                 0   smoke.
#   [OK]          SortArray                  0   union.
#   [OK]          SortArray                  1   intersect.
#   [OK]          SortArray                  2   diff.
#   [OK]          SortArray                  3   isSorted and stableSortInPlace.
#   [OK]          SortArray                  4   specialized stable sorts.
#   [OK]          SortArray                  5   stableSortBy.
#   [OK]          SortArray                  6   binarySearch.
#   [OK]          SortArray                  7   strictlySortedLength.
#   [OK]          SortArray.Int              0   binarySearch.
#   [OK]          SortArray.String           0   binarySearch.
#   [OK]          MutableMap                 0   remove preserves successor val...
#   [OK]          MutableMap                 1   remove deep successor preserve...
#   [OK]          MutableMap                 2   update remove preserves values.
#   [OK]          MutableMap                 3   removeMany exact keys.
#   [OK]          MutableMap                 4   trim to three entries.
#   [OK]          MutableMap.Int             0   smoke.
#   [OK]          MutableMap.String          0   smoke.
#   [OK]          MutableSet                 0   remove add and split.
#   [OK]          MutableSet                 1   set algebra and partitions.
#   [OK]          MutableSet.Int             0   removeCheck addCheck mergeMany...
#   [OK]          MutableSet.Int             1   stats split and subset.
#   [OK]          MutableSet.Int             2   set algebra and partitions.
#   [OK]          MutableSet.Int             3   large add stress.
#   [OK]          MutableSet.Int             4   fromArray and removal stress.
#   [OK]          MutableSet.Int             5   fromSortedArrayUnsafe and deri...
#   [OK]          MutableSet.String          0   smoke.
#   [OK]          HashMap                    0   mergeMany overwrites duplicates.
#   [OK]          HashMap                    1   fromArray dedupes overlapping ...
#   [OK]          HashMap                    2   remove stress.
#   [OK]          HashMap                    3   keepMapInPlace middle remove.
#   [OK]          HashMap                    4   keepMapInPlace head remove.
#   [OK]          HashMap                    5   keepMapInPlace tail remove.
#   [OK]          HashMap                    6   keepMapInPlace consecutive rem...
#   [OK]          HashMap                    7   keepMapInPlace remove all.
#   [OK]          HashMap.Int                0   smoke.
#   [OK]          HashMap.String             0   smoke.
#   [OK]          HashSet.Int                0   dedupe reduce and forEach.
#   [OK]          HashSet.Int                1   size stress.
#   [OK]          HashSet.Int                2   copy independence.
#   [OK]          HashSet.Int                3   bucket histogram sanity.
#   [OK]          HashSet.String             0   smoke.
#   [OK]          MutableQueue               0   push pop fifo.
#   [OK]          MutableQueue               1   reuse after empty.
#   [OK]          MutableQueue               2   peekExn.
#   [OK]          MutableQueue               3   clear.
#   [OK]          MutableQueue               4   copy.
#   [OK]          MutableQueue               5   isEmpty and size.
#   [OK]          MutableQueue               6   forEach.
#   [OK]          MutableQueue               7   transfer.
#   [OK]          MutableQueue               8   transfer appends to nonempty q...
#   [OK]          MutableQueue               9   fromArray and map.
#   [OK]          MutableStack               0   inorder traversal.
#   [OK]          MutableStack               1   dynamicPopIter traversal.
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/Belt/test/_build/_tests/Belt'.
# Test Successful in 5.018s. 123 tests run.
# (cd _build/default/packages/react/test && ./test.exe)
# Testing `React'.
# This run has ID `3KF5JKPW'.
# 
#   [OK]          cloneElement          0   empty component.
#   [OK]          cloneElement          1   attributes component.
#   [OK]          cloneElement          2   ordered attributes component.
#   [OK]          cloneElement          3   uppercase component raises.
#   [OK]          cloneElement          4   async component raises.
#   [OK]          cloneElement          5   client component raises.
#   [OK]          cloneElement          6   static unwraps to original.
#   [OK]          cloneElement          7   static adds new attributes.
#   [OK]          cloneElement          8   static overrides existing attributes.
#   [OK]          cloneElement          9   static result is Lower_case_element...
#   [OK]          cloneElement         10   static preserves children.
#   [OK]          cloneElement         11   static nested static unwraps outer ...
#   [OK]          React                 0   useState.
#   [OK]          React                 1   useSyncExternalStoreWithServer.
#   [OK]          React                 2   useEffect.
#   [OK]          React                 3   Children.map.
#   [OK]          React                 4   Children.map.
#   [OK]          React                 5   useRef.
#   [OK]          React                 6   invalid_children.
#   [OK]          React                 7   invalid_dangerouslySetInnerHtml.
#   [OK]          React                 8   raw_element.
#   [OK]          React                 9   cache hits within request.
#   [OK]          React                10   cache errors are cached.
#   [OK]          React                11   cache is separate per call.
#   [OK]          React                12   cache resets between requests.
#   [OK]          React                13   cache errors different args.
#   [OK]          React                14   cache errors mixed with success.
#   [OK]          React                15   cache errors reset between requests.
#   [OK]          React                16   cache errors same instance.
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/react/test/_build/_tests/React'.
# Test Successful in 0.004s. 29 tests run.
# (cd _build/default/packages/reactDom/test && ./test.exe)
# Testing `ReactDOM'.
# This run has ID `C5QD52CW'.
# 
#   [OK]          ReactServerDOM.render_html / suspense_with_sync_client_component                                   0   ...
#   [OK]          ReactServerDOM.render_html / text_with_ampersand                                                   0   ...
#   [OK]          ReactServerDOM.render_html / text_with_html_entity                                                 0   ...
#   [OK]          ReactServerDOM.render_html / text_with_single_quote                                                0   ...
#   [OK]          ReactServerDOM.render_html / text_with_script_tag                                                  0   ...
#   [OK]          ReactServerDOM.render_html / client_with_element_props                                             0   ...
#   [OK]          ReactServerDOM.render_html / null_element                                                          0   ...
#   [OK]          ReactServerDOM.render_html / element_with_dangerously_set_inner_html                               0   ...
#   [OK]          ReactServerDOM.render_html / static_element                                                        0   ...
#   [OK]          ReactServerDOM.render_html / suppress_hydration_warning_in_model                                   0   ...
#   [OK]          ReactServerDOM.render_html / input_element_with_value                                              0   ...
#   [OK]          ReactServerDOM.render_html / upper_case_component                                                  0   ...
#   [OK]          ReactServerDOM.render_html / async_component_without_promise                                       0   ...
#   [OK]          ReactServerDOM.render_html / suspense_without_promise                                              0   ...
#   [OK]          ReactServerDOM.render_html / with_sleepy_promise                                                   0   ...
#   [OK]          ReactServerDOM.render_html / client_with_promise_props                                             0   ...
#   [OK]          ReactServerDOM.render_html / client_component_with_async_component                                 0   ...
#   [OK]          ReactServerDOM.render_html / async_component_with_promise                                          0   ...
#   [OK]          ReactServerDOM.render_html / suspense_with_error                                                   0   ...
#   [OK]          ReactServerDOM.render_html / suspense_with_error_in_async                                          0   ...
#   [OK]          ReactServerDOM.render_html / suspense_with_error_under_lowercase                                   0   ...
#   [OK]          ReactServerDOM.render_html / error_without_suspense                                                0   ...
#   [OK]          ReactServerDOM.render_html / error_in_toplevel_in_async                                            0   ...
#   [OK]          ReactServerDOM.render_html / suspense_in_a_list_with_error                                         0   ...
#   [OK]          ReactServerDOM.render_html / server_function_as_action                                             0   ...
#   [OK]          ReactServerDOM.render_html / nested_context                                                        0   ...
#   [OK]          ReactServerDOM.render_html / context_preserved_across_async_suspense                               0   ...
#   [OK]          ReactServerDOM.render_html / context_nested_providers_across_async_suspense                        0   ...
#   [OK]          ReactServerDOM.render_html / context_client_component_reads_context_across_async_suspense          0   ...
#   [OK]          ReactServerDOM.render_html / timeout_closes_stream_for_hanging_suspense                            0   ...
#   [OK]          ReactServerDOM.render_html / timeout_does_not_affect_fast_renders                                  0   ...
#   [OK]          ReactServerDOM.render_html / progressive_chunk_size_batches_small_chunks                           0   ...
#   [OK]          ReactServerDOM.render_html / timeout_end_script_appears_exactly_once                               0   ...
#   [OK]          ReactServerDOM.render_html / progressive_chunk_size_zero_does_not_raise                            0   ...
#   [OK]          ReactServerDOM.render_html / progressive_chunk_size_negative_does_not_raise                        0   ...
#   [OK]          ReactServerDOM.render_html / skip_root_omits_html_content                                          0   ...
#   [OK]          ReactServerDOM.render_html / doctype                                                               0   ...
#   [OK]          ReactServerDOM.render_html / just_an_html_node                                                     0   ...
#   [OK]          ReactServerDOM.render_html / no_head_no_body_nothing_just_an_html_node                             0   ...
#   [OK]          ReactServerDOM.render_html / html_with_no_srr_html_body                                            0   ...
#   [OK]          ReactServerDOM.render_html / html_with_a_node                                                      0   ...
#   [OK]          ReactServerDOM.render_html / html_inside_a_div                                                     0   ...
#   [OK]          ReactServerDOM.render_html / html_inside_a_fragment                                                0   ...
#   [OK]          ReactServerDOM.render_html / head_with_content                                                     0   ...
#   [OK]          ReactServerDOM.render_html / html_with_only_a_body                                                 0   ...
#   [OK]          ReactServerDOM.render_html / html_with_head_like_elements_not_in_head                              0   ...
#   [OK]          ReactServerDOM.render_html / html_without_body_and_bootstrap_scripts                               0   ...
#   [OK]          ReactServerDOM.render_html / html_with_body_and_bootstrap_scripts                                  0   ...
#   [OK]          ReactServerDOM.render_html / input_and_bootstrap_scripts                                           0   ...
#   [OK]          ReactServerDOM.render_html / title_and_meta_populates_to_the_head                                  0   ...
#   [OK]          ReactServerDOM.render_html / async_scripts_to_head                                                 0   ...
#   [OK]          ReactServerDOM.render_html / no_async_scripts_to_remain                                            0   ...
#   [OK]          ReactServerDOM.render_html / async_scripts_gets_deduplicated                                       0   ...
#   [OK]          ReactServerDOM.render_html / async_scripts_gets_deduplicated_2                                     0   ...
#   [OK]          ReactServerDOM.render_html / link_with_rel_and_precedence                                          0   ...
#   [OK]          ReactServerDOM.render_html / links_gets_pushed_to_the_head                                         0   ...
#   [OK]          ReactServerDOM.render_html / self_closing_with_dangerously                                         0   ...
#   [OK]          ReactServerDOM.render_html / self_closing_with_dangerously_in_head                                 0   ...
#   [OK]          ReactServerDOM.render_html / upper_case_component_with_resources                                   0   ...
#   [OK]          ReactServerDOM.render_html / hoisted_elements_order_issue                                          0   ...
#   [OK]          ReactServerDOM.render_html / head_preserves_children_order                                         0   ...
#   [OK]          ReactServerDOM.render_html / html_attributes_are_preserved                                         0   ...
#   [OK]          ReactDOM.renderToStream / silly_stream                                                             0   ...
#   [OK]          ReactDOM.renderToStream / render_inner_html                                                        0   ...
#   [OK]          ReactDOM.renderToStream / react_use_without_suspense                                               0   ...
#   [OK]          ReactDOM.renderToStream / uppercase_component_always_throwing                                      0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_react_use                                                  0   ...
#   [OK]          ReactDOM.renderToStream / async component                                                          0   ...
#   [OK]          ReactDOM.renderToStream / async_component_without_suspense                                         0   ...
#   [OK]          ReactDOM.renderToStream / suspense_without_promise                                                 0   ...
#   [OK]          ReactDOM.renderToStream / text_after_element_with_text_child                                       0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_resolved_text_after_element_with_text_child                0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_async_component                                            0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_always_throwing                                            0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspense                                            0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspenses                                           0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_nested_suspense_with_error                                 0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_multiple_children                                          0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_multiple_children_reordered                                0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_concurrent_suspenses                                       0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_comments                                                   0   ...
#   [OK]          ReactDOM.renderToStream / context_basic                                                            0   ...
#   [OK]          ReactDOM.renderToStream / context_default_value                                                    0   ...
#   [OK]          ReactDOM.renderToStream / context_nested_providers                                                 0   ...
#   [OK]          ReactDOM.renderToStream / context_multiple_independent                                             0   ...
#   [OK]          ReactDOM.renderToStream / context_with_suspense                                                    0   ...
#   [OK]          ReactDOM.renderToStream / async_component_with_use_id                                              0   ...
#   [OK]          ReactDOM.renderToStream / async_component_with_use_id_and_sibling                                  0   ...
#   [OK]          ReactDOM.renderToStream / async_component_with_use_id_in_suspense                                  0   ...
#   [OK]          ReactDOM.renderToStream / async_component_with_multiple_use_ids                                    0   ...
#   [OK]          ReactDOM.renderToStream / multiple_async_components_without_suspense                               0   ...
#   [OK]          ReactDOM.renderToStream / context_provider_with_suspended_consumer                                 0   ...
#   [OK]          ReactDOM.renderToStream / async_component_returning_suspense_with_async_children                   0   ...
#   [OK]          ReactDOM.renderToStream / static_element_in_stream                                                 0   ...
#   [OK]          ReactDOM.renderToStream / client_component_error_in_stream                                         0   ...
#   [OK]          ReactDOM.renderToStream / suspense_with_failed_promise                                             0   ...
#   [OK]          ReactDOM.renderToStream / fragment_in_stream                                                       0   ...
#   [OK]          ReactDOM.renderToStream / list_in_stream                                                           0   ...
#   [OK]          ReactDOM.renderToStream / array_in_stream                                                          0   ...
#   [OK]          ReactDOM.renderToStream / empty_element_in_stream                                                  0   ...
#   [OK]          ReactDOM.renderToStream / dangerous_html_in_suspense                                               0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / html_doctype                                                       0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / single_empty_tag                                                   0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / empty_string_attribute                                             0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / bool_attributes                                                    0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / truthy_attributes                                                  0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / ignore_nulls                                                       0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / string_attributes                                                  0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / self_closing_tag                                                   0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / dom_element_innerHtml                                              0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / children                                                           0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / className                                                          0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / className_2                                                        0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / className_3                                                        0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / fragment                                                           0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / fragments_and_texts                                                0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / ignored_attributes_on_jsx                                          0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / inline_styles                                                      0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / encode_attributes                                                  0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / dom_props_should_work                                              0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / dangerouslySetInnerHtml                                            0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / context                                                            0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / nested_context                                                     0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / use_state                                                          0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / use_memo                                                           0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / use_callback                                                       0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / inner_html                                                         0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / event                                                              0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / render_with_doc_type                                               0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / render_svg                                                         0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / ref_as_prop_works                                                  0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / ref_as_callback_prop_works                                         0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / async                                                              0   ...
#   [OK]          ReactDOM.renderToStaticMarkup / lists_and_arrays                                                   0   ...
#   [OK]          ReactDOM.renderToString / react_root_one_element                                                   0   ...
#   [OK]          ReactDOM.renderToString / react_root_two_elements                                                  0   ...
#   [OK]          ReactDOM.renderToString / text_single_node should not add <!-- -->                                 0   ...
#   [OK]          ReactDOM.renderToString / consecutives_text_nodes should add <!-- -->                              0   ...
#   [OK]          ReactDOM.renderToString / separated_text_nodes_by_other_parents                                    0   ...
#   [OK]          ReactDOM.renderToString / text_after_element_with_text_child                                       0   ...
#   [OK]          ReactDOM.renderToString / suspense children render exactly once                                    0   ...
#   [OK]          ReactDOM.renderToString / suspense renders fallback on error                                       0   ...
#   [OK]          ReactDOM.write_to_buffer / empty element                                                           0   ...
#   [OK]          ReactDOM.write_to_buffer / single element                                                          0   ...
#   [OK]          ReactDOM.write_to_buffer / nested elements                                                         0   ...
#   [OK]          ReactDOM.write_to_buffer / self-closing tag                                                        0   ...
#   [OK]          ReactDOM.write_to_buffer / text content                                                            0   ...
#   [OK]          ReactDOM.write_to_buffer / no text separators between consecutive text nodes                       0   ...
#   [OK]          ReactDOM.write_to_buffer / no doctype injection for html tag                                       0   ...
#   [OK]          ReactDOM.write_to_buffer / string attributes                                                       0   ...
#   [OK]          ReactDOM.write_to_buffer / bool true attribute                                                     0   ...
#   [OK]          ReactDOM.write_to_buffer / bool false attribute                                                    0   ...
#   [OK]          ReactDOM.write_to_buffer / style attribute                                                         0   ...
#   [OK]          ReactDOM.write_to_buffer / html escaping                                                           0   ...
#   [OK]          ReactDOM.write_to_buffer / attribute escaping                                                      0   ...
#   [OK]          ReactDOM.write_to_buffer / dangerouslySetInnerHTML                                                 0   ...
#   [OK]          ReactDOM.write_to_buffer / fragment                                                                0   ...
#   [OK]          ReactDOM.write_to_buffer / list children                                                           0   ...
#   [OK]          ReactDOM.write_to_buffer / array children                                                          0   ...
#   [OK]          ReactDOM.write_to_buffer / upper case component                                                    0   ...
#   [OK]          ReactDOM.write_to_buffer / suspense success renders without markers                                0   ...
#   [OK]          ReactDOM.write_to_buffer / suspense fallback renders without markers                               0   ...
#   [OK]          ReactDOM.write_to_buffer / static element                                                          0   ...
#   [OK]          ReactDOM.write_to_buffer / event attributes ignored                                                0   ...
#   [OK]          ReactDOM.write_to_buffer / ref attributes ignored                                                  0   ...
#   [OK]          ReactDOM.write_to_buffer / react custom attributes ignored                                         0   ...
#   [OK]          ReactDOM.write_to_buffer / async component raises                                                  0   ...
#   [OK]          ReactDOM.write_to_buffer / context                                                                 0   ...
#   [OK]          ReactDOM.Style.make / generate empty style                                                         0   ...
#   [OK]          ReactDOM.Style.make / generate one style                                                           0   ...
#   [OK]          ReactDOM.Style.make / generate more than one style                                                 0   ...
#   [OK]          ReactDOM.Style.make / unsafeAddProp should be kebab-case                                           0   ...
#   [OK]          ReactDOM.Style.make / order matters                                                                0   ...
#   [OK]          ReactDOM.Style.make / order matters II                                                             0   ...
#   [OK]          ReactServerDOM.render_model / null_element                                                         0   ...
#   [OK]          ReactServerDOM.render_model / special_characters_not_html_encoded                                  0   ...
#   [OK]          ReactServerDOM.render_model / string_element                                                       0   ...
#   [OK]          ReactServerDOM.render_model / key_renders_outside_of_props                                         0   ...
#   [OK]          ReactServerDOM.render_model / style_as_json                                                        0   ...
#   [OK]          ReactServerDOM.render_model / lower_case_component                                                 0   ...
#   [OK]          ReactServerDOM.render_model / lower_case_component_nested                                          0   ...
#   [OK]          ReactServerDOM.render_model / lower_case_with_children                                             0   ...
#   [OK]          ReactServerDOM.render_model / dangerouslySetInnerHtml                                              0   ...
#   [OK]          ReactServerDOM.render_model / upper_case_component                                                 0   ...
#   [OK]          ReactServerDOM.render_model / nested_upper_case_components                                         0   ...
#   [OK]          ReactServerDOM.render_model / upper_case_with_list                                                 0   ...
#   [OK]          ReactServerDOM.render_model / upper_case_with_children                                             0   ...
#   [OK]          ReactServerDOM.render_model / suspense_without_promise                                             0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_promise                                                0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_error                                                  0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_error_in_async                                         0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_immediate_promise                                      0   ...
#   [OK]          ReactServerDOM.render_model / suspense                                                             0   ...
#   [OK]          ReactServerDOM.render_model / async_component_without_suspense                                     0   ...
#   [OK]          ReactServerDOM.render_model / suspense_in_a_list                                                   0   ...
#   [OK]          ReactServerDOM.render_model / client_with_promise_props                                            0   ...
#   [OK]          ReactServerDOM.render_model / async_component_without_suspense_immediate                           0   ...
#   [OK]          ReactServerDOM.render_model / mixed_server_and_client                                              0   ...
#   [OK]          ReactServerDOM.render_model / client_with_json_props                                               0   ...
#   [OK]          ReactServerDOM.render_model / client_without_props                                                 0   ...
#   [OK]          ReactServerDOM.render_model / client_with_element_props                                            0   ...
#   [OK]          ReactServerDOM.render_model / client_with_server_children                                          0   ...
#   [OK]          ReactServerDOM.render_model / client_component_with_async_component                                0   ...
#   [OK]          ReactServerDOM.render_model / act_with_simple_response                                             0   ...
#   [OK]          ReactServerDOM.render_model / env_development_adds_debug_info                                      0   ...
#   [OK]          ReactServerDOM.render_model / debug_nested_owner_chain                                             0   ...
#   [OK]          ReactServerDOM.render_model / debug_async_component                                                0   ...
#   [OK]          ReactServerDOM.render_model / debug_outlines_components                                            0   ...
#   [OK]          ReactServerDOM.render_model / debug_not_emitted_without_flag                                       0   ...
#   [OK]          ReactServerDOM.render_model / debug_element_has_debugId_and_owner                                  0   ...
#   [OK]          ReactServerDOM.render_model / debug_filter_stack_frame_drops_all                                   0   ...
#   [OK]          ReactServerDOM.render_model / act_with_error                                                       0   ...
#   [OK]          ReactServerDOM.render_model / error_without_suspense                                               0   ...
#   [OK]          ReactServerDOM.render_model / keyed_duplicate_client_component_preserves_keys                      0   ...
#   [OK]          ReactServerDOM.render_model / error_in_toplevel                                                    0   ...
#   [OK]          ReactServerDOM.render_model / error_in_toplevel_in_async                                           0   ...
#   [OK]          ReactServerDOM.render_model / suspense_in_a_list_with_error                                        0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_error_under_lowercase                                  0   ...
#   [OK]          ReactServerDOM.render_model / client_component_with_resources_metadata                             0   ...
#   [OK]          ReactServerDOM.render_model / page_with_hoisted_resources                                          0   ...
#   [OK]          ReactServerDOM.render_model / nested_context                                                       0   ...
#   [OK]          ReactServerDOM.render_model / suspense_with_nested_upper_case                                      0   ...
#   [OK]          ReactServerDOM.render_model / suspense_at_root                                                     0   ...
#   [OK]          ReactServerDOM.render_model / suspense_at_root_with_upper_case_children                            0   ...
#   [OK]          ReactServerDOM.render_model / suspense_at_root_with_nested_components                              0   ...
#   [OK]          ReactServerDOM.render_model / suspense_at_root_with_async                                          0   ...
#   [OK]          ReactServerDOM.render_model / root_async_component_immediate                                       0   ...
#   [OK]          ReactServerDOM.render_model / root_upper_case_chain                                                0   ...
#   [OK]          ReactServerDOM.render_model / model_list_value                                                     0   ...
#   [OK]          ReactServerDOM.render_model / model_value_assoc                                                    0   ...
#   [OK]          ReactServerDOM.render_model / client_with_promise_failed_props                                     0   ...
#   [OK]          ReactServerDOM.render_model / client_with_promise_already_failed_props                             0   ...
#   [OK]          ReactServerDOM.render_model / server_function_as_model_prop                                        0   ...
#   [OK]          ReactServerDOM.render_model / error_in_prod_hides_message                                          0   ...
#   [OK]          ReactServerDOM.render_model / duplicate_client_component_deduplicates_ref                          0   ...
#   [OK]          Decoders / decodeReply                                                                             0   ...
#   [OK]          Decoders / decodeFormDataReply                                                                     0   ...
#   [OK]          ReactDOM.renderToString / useId / single component with useId                                      0   ...
#   [OK]          ReactDOM.renderToString / useId / two sibling components                                           0   ...
#   [OK]          ReactDOM.renderToString / useId / nested components                                                0   ...
#   [OK]          ReactDOM.renderToString / useId / multiple useId calls in one component                            0   ...
#   [OK]          ReactDOM.renderToString / useId / three useId calls in one component                               0   ...
#   [OK]          ReactDOM.renderToString / useId / siblings with nested children                                    0   ...
#   [OK]          ReactDOM.renderToString / useId / deep nesting (3 levels)                                          0   ...
#   [OK]          ReactDOM.renderToString / useId / wrapper without useId is transparent                             0   ...
#   [OK]          ReactDOM.renderToString / useId / three siblings                                                   0   ...
#   [OK]          ReactDOM.renderToString / useId / complex siblings with nested                                     0   ...
#   [OK]          ReactDOM.renderToString / useId / separate renders produce same IDs                                0   ...
#   [OK]          ReactDOM.renderToString / useId / renderToStaticMarkup also works                                  0   ...
#   [OK]          ReactDOM.renderToString / useId / identifier_prefix                                                0   ...
#   [OK]          ReactDOM.renderToString / useId / useId inside Suspense (sync)                                     0   ...
#   [OK]          ReactDOM.renderToString / useId / Suspense with useId + sibling                                    0   ...
#   [OK]          ReactDOM.renderToString / useId / Fragment single child is transparent                             0   ...
#   [OK]          ReactDOM.renderToString / useId / Fragment multiple children forks                                 0   ...
#   [OK]          ReactDOM.renderToString / useId / Nested fragments transparent                                     0   ...
#   [OK]          ReactDOM.renderToString / useId / Null/Empty between siblings preserves slots                      0   ...
#   [OK]          ReactDOM.renderToString / useId / Many siblings (10, base-32 at Ra)                                0   ...
#   [OK]          ReactDOM.renderToString / useId / Provider is transparent                                          0   ...
#   [OK]          ReactDOM.renderToString / useId / Kitchen sink (Provider + Fragment + Suspense)                    0   ...
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/reactDom/test/_build/_tests/ReactDOM'.
# Test Successful in 1.271s. 259 tests run.
# (cd _build/default/packages/server-reason-react-ppx/test && ./test.exe)
# Testing `server-reason-react.ppx'.
# This run has ID `7UGI3IL3'.
# 
#   [OK]          tag                                                          0   ...
#   [OK]          empty_attribute                                              0   ...
#   [OK]          bool_attribute                                               0   ...
#   [OK]          bool_attributes                                              0   ...
#   [OK]          innerhtml                                                    0   ...
#   [OK]          int_attribute                                                0   ...
#   [OK]          svg_1                                                        0   ...
#   [OK]          svg_2                                                        0   ...
#   [OK]          booleanish_props_with_ppx                                    0   ...
#   [OK]          booleanish_props_without_ppx                                 0   ...
#   [OK]          style_attribute                                              0   ...
#   [OK]          ref_attribute                                                0   ...
#   [OK]          link_as_attribute                                            0   ...
#   [OK]          inner_html_attribute                                         0   ...
#   [OK]          inner_html_attribute_complex                                 0   ...
#   [OK]          int_opt_attr_some                                            0   ...
#   [OK]          int_opt_attribute_none                                       0   ...
#   [OK]          string_opt_attribute_some                                    0   ...
#   [OK]          string_opt_attribute_none                                    0   ...
#   [OK]          bool_opt_attribute_some                                      0   ...
#   [OK]          bool_opt_attribute_none                                      0   ...
#   [OK]          style_opt_attribute_some                                     0   ...
#   [OK]          style_opt_attribute_none                                     0   ...
#   [OK]          ref_opt_attribute_some                                       0   ...
#   [OK]          ref_opt_attribute_none                                       0   ...
#   [OK]          fragment                                                     0   ...
#   [OK]          fragment_with_key                                            0   ...
#   [OK]          children_uppercase                                           0   ...
#   [OK]          children_lowercase                                           0   ...
#   [OK]          event_onClick                                                0   ...
#   [OK]          children_one_element                                         0   ...
#   [OK]          children_multiple_elements                                   0   ...
#   [OK]          create_element_variadic                                      0   ...
#   [OK]          aria_props                                                   0   ...
#   [OK]          optional_prop                                                0   ...
#   [OK]          context                                                      0   ...
#   [OK]          context_2                                                    0   ...
#   [OK]          multiple_contexts                                            0   ...
#   [OK]          styles_attribute                                             0   ...
#   [OK]          styles_attribute_optional                                    0   ...
#   [OK]          styles_attribute_optional_some                               0   ...
#   [OK]          styles_attribute_optional_some_with_class                    0   ...
#   [OK]          styles_attribute_optional_some_with_style                    0   ...
#   [OK]          styles_attribute_optional_some_with_class_and_style          0   ...
#   [OK]          server_function                                              0   ...
#   [OK]          server_function_reference                                    0   ...
#   [OK]          server_function_reference_args_error                         0   ...
#   [OK]          server_function_reference_form_data                          0   ...
#   [OK]          server_function_reference_form_data_and_args                 0   ...
# 
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.5.0/_build/default/packages/server-reason-react-ppx/test/_build/_tests/server-reason-react.ppx'.
# Test Successful in 0.004s. 49 tests run.



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build server-reason-react 0.5.0
+- 
- No changes have been performed
# Run eval $(opam env) to update the current shell environment
'opam reinstall --with-test --verbose server-reason-react.0.5.0' failed.
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
"/usr/bin/env" "bash" "-c" "opam reinstall --with-test --verbose server-reason-react.0.5.0;
        res=$?;
        test "$res" != 31 && exit "$res";
        export OPAMCLI=2.0;
        build_dir=$(opam var prefix)/.opam-switch/build;
        failed=$(ls "$build_dir");
        partial_fails="";
        for pkg in $failed; do
          if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then
            echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
          fi;
          test "$pkg" != 'server-reason-react.0.5.0' && partial_fails="$partial_fails $pkg";
        done;
        test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}";
        exit 1" failed with exit status 1
2026-04-02 04:13.48: Job failed: Failed: Build failed
2026-04-02 04:13.48: Log analysis:
2026-04-02 04:13.48: >>> 
[ERROR] The compilation of server-reason-react.0.5.0 failed at "dune build -p server-reason-react -j 71 @install @runtest".
 (score = 20)
2026-04-02 04:13.48: >>> 
# Error: Library "dream" not found.
 (score = 48)
2026-04-02 04:13.48: >>> 
[ERROR] The compilation of server-reason-react.0.5.0 failed at "dune build -p server-reason-react -j 71 @install @runtest".
 (score = 20)
2026-04-02 04:13.48: >>> 
# Error: Library "dream" not found.
 (score = 48)
2026-04-02 04:13.48: Library "dream" not found.