Socket
Socket
Sign inDemoInstall

bs-platform

Package Overview
Dependencies
0
Maintainers
1
Versions
205
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 8.2.0 to 8.3.0-dev.1

141

Changes.md
`*` means potential break changes
# 8.2
- #4570 refine purity analysis so that object literals in raw will be considered pure
- `bsc -fmt myFile` now changed to `bsc -format myFile`
- #4573, #4565, #4559, #4558, #4556, #4554, #4553, #4550 introudce string literal types
- #4580 #4581, #4582, #4463, #4583 relax bs.as to allow object literals instead of json, so FFI below is allowed:
```ocaml
external fff0 : int -> int -> (_[@bs.as {json|[undefined,undefined]|json}]) -> int = "say"
[@@bs.val]
let testUndefined () =
fff0 1 2
```
- #4570 refine purity analysis so that object literals in raw will be considered pure
- #4548 #4555 fix ghost locaption in empty array
- #4540 optimize code generation for recursive modules
- #4530 internal -color option default to always
- #4530 internal -color option default to always

@@ -26,2 +36,7 @@ - #4569 emit a warning for use of ``( [ `a| `b] [@bs.string]) `` since it is no longer needed

* bug fixes
- #4572, #4585 fix a corner case for ffi to allow such bindings:
```ocaml
external get : _ -> _ -> _ = "" [@@bs.get_index]
```
- #4589 fix building failure on freebsd
- #4524, #4519 fix an inlining bug

@@ -41,12 +56,12 @@ - #4505 #4502, fix bad error message in bsb -bla

```
now is
now is
```js
{ TAG : /*A*/0, _0 : 0, _1:1 }
```
- #4399 remove magics in Belt.List to prepare new data representations
- #4399 remove magics in Belt.List to prepare new data representations
- #4405 polyvar as objects
```
A 1
```
now is
```
now is
```js

@@ -74,3 +89,3 @@ {HASH:MAGIC_NUMBER, VAL:1}

- #4304, #4293 better code generated for string interpolation
* Fix
* Fix

@@ -82,3 +97,3 @@ - #4451, #4454 fix imprecise locations over pipe

* Libs
* Libs

@@ -161,3 +176,3 @@ - #4443 provide a best effort generic seralization mechanism

```
`x` will not be exported
`x` will not be exported
```ocaml

@@ -169,15 +184,15 @@ module N = struct

`x` will not be exported by N
- #4196 fix printing indexed operators
- #4196 fix printing indexed operators
- #4177 #4180 support `[@@@bs.config {flags = [| ".." |] }]` per file level to allow file level special flags
- #4158 #4157 #4166 #4168 loading stdlib from memory, no postinstall needed
- #4152 support copyright style comments preserved in JS
- #4152 support copyright style comments preserved in JS
```
[%%raw "//copyright ]
```
copyright will be preserved in output js
copyright will be preserved in output js
- #4191 #4189 add a flag -bs-unsafe-empty-array for easy transition (regain polymorphism for empty array), this is a temporary flag which will be removed eventually
- #4190 (internal) remove bsdep which is not used
- #4188 better encoding around internals for performance and size
- #4188 better encoding around internals for performance and size
- #4155 fix React PPX regressions from 7.1.0 which caused a type error when writing recursive components.

@@ -188,3 +203,3 @@ - #4185 remove staled tasks.json in bsb themes for vscode, leave it for users to keep it up to date

- #4171 add a warning for using `fun%raw`, use `[%raw]` directly
- #4169 An escape hatch for function level comments
- #4169 An escape hatch for function level comments
- #4164 #4162 #4165 make code generation platform agnostic (not depending on printf either)

@@ -195,3 +210,3 @@ - #4164 add Node.Buffer.toStringWithEncoding

- #4142 fix yarn start command
- #4140 docs: update README in basic reason template
- #4140 docs: update README in basic reason template

@@ -207,3 +222,3 @@ # 7.1.0

We can now tell whether the code inside raw is a function or not and the arity of raw function, so
We can now tell whether the code inside raw is a function or not and the arity of raw function, so
```ocaml

@@ -230,5 +245,5 @@ let f = [%raw{|function(x){return x}|}]

- #4199 Change ReactJS PPX to avoid modifying locations of existing code (better integration with editors)
- #4122 toplevel [@@@warning "+101"] works for bucklescript warnings
- #4122 toplevel [@@@warning "+101"] works for our own warnings (apart from OCaml ones)
`bsc -warn-help` listed several warnings for BuckleScript
`bsc -warn-help` listed several of our own warnings
```

@@ -238,3 +253,3 @@ 101 BuckleScript warning: Unused bs attributes

103 BuckleScript warning: about fragile FFI definitions
104 BuckleScript warning: bs.deriving warning with customized message
104 BuckleScript warning: bs.deriving warning with customized message
105 BuckleScript warning: the external name is inferred from val name is unsafe from refactoring when changing value name

@@ -245,3 +260,3 @@ 106 BuckleScript warning: Unimplemented primitive used:

```
- #4060 #4057 add unboxed type support
- #4060 #4057 add unboxed type support

@@ -251,3 +266,3 @@ - #4078, #4069 better code generated for cases like `match x with true -> ..| false -> ..`

- #4074 allow defining a custom hostname for websocket
- #4064 fix shake_compile prefix & code param order
- #4064 fix shake_compile prefix & code param order
- #4053 use setImmediate for rebuilding to fix watch mode for some specific editors

@@ -268,4 +283,4 @@ - #4050 support pipe first poly variant

# 7.0.0
- #4003 not doing ast invariant checking, leave it for bucklescript (faster compilation)
# 7.0.0
- #4003 not doing ast invariant checking, leave it to us (faster compilation)
- #4002 upgrade ocamldoc in 4.06, fix document build

@@ -277,7 +292,7 @@ - #4001 tweak error message

- #3982 bs.as for record support (language level feature)
- #3989 #3993 check renamed label is unique when using bs.as
- #3989 #3993 check renamed label is unique when using bs.as
- #3985 more precise runtime information passed down from upstream, fix a corner case of compiling ocaml class
- #3986 more precise runtime information passed down from upstream, add module alias comments in generated code
- #3991 #3980 fix a corner case when printing js object in statement position
- #3977 #3978 not relying on ref internal for bucklescript runtime
- #3977 #3978 not relying on ref internal for the runtime
- #3976 add bs js playground reason support

@@ -288,3 +303,3 @@ - #3974 bsb tweak react hooks template README

- #3972 upgrade repl.js to 4.06.1
- #3890 Fix typo in bucklescript readme
- #3890 Fix typo in readme
- #3898 #3900 #3911 #3913 #3915 #3925 #3928 #3929 #3932 #3936 #3934 OCaml record as Js object

@@ -318,3 +333,3 @@ - #3945 sync refmt 3.5.3

- #3962 #3960 set env var `BSB_PROJECT_ROOT` for bsb
- #3965 better inline heruistics
- #3965 better inline heruistics
- #3966 #3897 improve module coercion code gen in strict subtyping

@@ -331,7 +346,7 @@ Deprecations

- #3875, #3879 regression introduced in 5.2.0 over pattern match optimization
- #3865 consistent name mangling when compiling modules into object
- #3865 consistent name mangling when compiling modules into object
- #3852, #3870 for module with all module aliases and no interface file, always make it pure (treat it the same as namespace file)
- #3874 internal bug fix for ocaml cmpiler
- #3874 internal bug fix for ocaml cmpiler
Codegen
- #3880 optimize pattern match for (string|int) option
- #3880 optimize pattern match for (string|int) option
- #3866 update react-hooks template

@@ -365,5 +380,5 @@ - #3843 mitigate windows anti-virius issue

- #3674 installation from master works out of box
- #3823 fix reason language server
- #3823 fix reason language server
Docs
Docs
- #3795 Fix docs for stringifyAny

@@ -387,8 +402,8 @@ - #3788 Rename getUnasfe to getUnsafe

- #3713 support ppx with arguments (extended the schema)
- #3708 #3701 respect NODE_PATH when resolving node modules
- #3708 #3701 respect NODE_PATH when resolving node modules
Fixes
Fixes
- #3699 Exit code from bsb in watch mode should be 0 instead of 2
- #3692, #3693 fix "cyclic dependencies error is swallowed"
- #3530, #3690 best effort support for shared library support
- #3530, #3690 best effort support for shared library support
- #3683, #3678 Docs: fix example in Belt.Array

@@ -405,5 +420,5 @@ - #3657, #3669 Fix "For dependencies with namespace, the namespace file is always rebuilt"

- #3711 not inlining self recursive functions
- #3740 enable backtrace by default for compiler in dev mode
- #3740 enable backtrace by default for compiler in dev mode
- #3705 dump package path in .sourcedirs.json for troubleshooting
- #3698 better data format for .bsdeps
- #3698 better data format for .bsdeps
- #3680, #3684, #3677, #3675, #3672 better encoding for .bsbuild

@@ -463,3 +478,3 @@ - #3673 strip the binary by default on *nix platform

Such ffi declaration is fragile to refactoring when changing names of `f`
- #3587, #3571, #3568 simplify debugger mode, `debugger.chrome` is not needed to turn on debug mode
- #3587, #3571, #3568 simplify debugger mode, `debugger.chrome` is not needed to turn on debug mode

@@ -474,3 +489,3 @@ Internals

Features
- #3523, #3516 Fusing react-jsx ppx as a flag (details https://bucklescript.github.io/blog/2019/04/22/release-5-0-4)
- #3523, #3516 Fusing react-jsx ppx as a flag

@@ -486,4 +501,4 @@ Docs

- #3519, #3535 fix external declarations that can not be generalized (uncovered by react jsx ppx v3)
- #3534 fix commands building from ocaml.tar.gz
- #3527, #3525, #3504, #3500 playground upgrade
- #3534 fix commands building from ocaml.tar.gz
- #3527, #3525, #3504, #3500 playground upgrade
- #3518, #3507, #3517 not emit warnings for dependencies

@@ -506,3 +521,3 @@ - #3515 fix on binding renameSync

- #3455 fix polymorphic comparison and equality for js date
- #3465 fix brutal console.clear
- #3465 fix brutal console.clear
- #3468 add BS_VSCODE to disable -super-errors, which works better with vscode problem matcher

@@ -512,11 +527,11 @@ # 5.0.0

Features
- #3418 sync up with refmt 681c491ba760cdf3b49f92297c3dab1703682808
- #3418 sync up with refmt 681c491ba760cdf3b49f92297c3dab1703682808
- #3395, #3417 better gentype support (gentype.import)
- #3412,#3416 Warning against usage of `string_of_float`
- #3414, #3415, #2893 allow usage of ` a |. M.(f a b)`
- #3403 first class bs.variadic support
- #3414, #3415, #2893 allow usage of ` a |. M.(f a b)`
- #3403 first class bs.variadic support
- #3402 in watch mode, clear the screen upon rebuilding
- #3397 add ignored-dirs support in bsconfig.json
- #3377, #3376 add Linux prebuilt support for official release
- #3372 add Belt.Array.getIndexBy
- #3372 add Belt.Array.getIndexBy
- #3357, add `-bs-cmi-only` flag support to bsc so that no js emitted

@@ -535,3 +550,3 @@ - #3356, #3354 add gentypeconfig support in bsconfig.json

- #3386, #3387 fix a codegen in with bs.raw
- #3386 make it more forgiving when interact with Js functions with arity 0
- #3386 make it more forgiving when interact with Js functions with arity 0
- #3381 remove golang as a dev dependency

@@ -547,3 +562,3 @@ * #3388 (breaking) Fix Js.Re.(splitbyReAtMost, splitByRe) binding

Fixes
Fixes
- #3226, #3223 absolute path generated in recursive module path and `assert false`

@@ -556,3 +571,3 @@ - #3220 ppx-flags & scoped packages

# 4.0.10
# 4.0.10
Fixes

@@ -573,3 +588,3 @@ - upstream a bug fix for refmt

Code gen
- #3134 Better arity infer when using first class module as function
- #3134 Better arity infer when using first class module as function
- #3169 allow _ in bs.raw so that `fun%raw a _ -> ` works

@@ -588,3 +603,3 @@ - #3170, #3171 better code gen for bs.raw

- #3136 Fix typo in react and react-lite tempaltes
- #3161 improve perf of some functions in String module
- #3161 improve perf of some functions in String module

@@ -597,3 +612,3 @@ # 4.0.7

Fix
- #3084,#3083 optimization triggers exception
- #3084,#3083 optimization triggers exception
- #3085 Wrong optimizer

@@ -631,3 +646,3 @@ - #3105 A corner case of optional encoding

- #2986 #2973 #2974 fix bsb websocket exit error
- #2983 #2988 determinsic behavior
- #2983 #2988 determinsic behavior
when NINJA_ANSI_FORCED=0 no color

@@ -647,5 +662,5 @@ when NINJA_ANSI_FORCED=1 yes color

Features
- #2951 sync up with reason
- #2951 sync up with reason
- #2964 customize ninja to make output less verbose
Add NINJA_ANSI_FORCE env variable support so that third party tools running bsb can still preserve colors
Add NINJA_ANSI_FORCE env variable support so that third party tools running bsb can still preserve colors
- #2960 add tea theme support

@@ -662,3 +677,3 @@ - #2959 less verbose bsb output

Fixes:
Fixes:
- #2832 fix compiler crash

@@ -675,7 +690,7 @@ - #2837 `toFixed`, `toExponential` too strict

- #2923 fix ghost location in error message
- #2931 fix a codegen bug in optimization pattern match
- #2931 fix a codegen bug in optimization pattern match
Features:
- #2280 prettier output in debug mode (chrome custom formatter)
- #2280 prettier output in debug mode (chrome custom formatter)
- #2823 add build-success hook

@@ -685,3 +700,3 @@ ```

```
- #2856 provide websocket intergration with bsb
- #2856 provide websocket intergration with bsb
- #2858 add react-lite theme hot module reloading without webpack

@@ -692,3 +707,3 @@ - #2873 add Belt.Array.sliceToEnd

#2901, #2905, #2907, #2908, #2909, #2912, #2913
unbox optional and code optimization based on type kinds
unbox optional and code optimization based on type kinds

@@ -744,6 +759,5 @@ - #2910 fix optional inline regression, better codegen for optional equality

- #2740, #2726 Generalized safe/cleaner embedding raw function (https://bucklescript.github.io/docs/en/interop-cheatsheet.html#generaizlied-raw-js-since-300)
- #2740, #2726 Generalized safe/cleaner embedding raw function (https://rescript-lang.org/docs/manual/latest/embed-raw-javascript)
- #2687, #2665, #2663 bs.deriving abstract type, a powerful way for idiomatic JS and FFI
(https://bucklescript.github.io/docs/en/generate-converters-accessors.html#abstract-type)

@@ -838,3 +852,2 @@ - #2696, #2742, #2706, #2711, compile OCaml boolean as JS boolean

Automatically derive js converter between ocaml and Js values
see docs: https://bucklescript.github.io/bucklescript/Manual.html#_mapping_between_js_values_and_ocaml_values_since_2_1_0
- #2238, #2225, #2221

@@ -974,3 +987,3 @@ Make the compiler relocatable

- #1785 upgrade playground
- #1758 [generator support](https://bucklescript.github.io/bucklescript/Manual.html#_customize_rules_generators_support_since_1_7_4)
- #1758 generator support
- #1826 add `bsb -where` support so that bsb.exe can be located and cached in a more robust way

@@ -977,0 +990,0 @@

# Contributing
Thanks for your help! Due to BuckleScript's nature, the contribution setup isn't all straightforward. If something isn't working, please file an issue!
Thanks for your help! Due to ReScript's nature, the contribution setup isn't all straightforward. If something isn't working, please file an issue!

@@ -9,3 +9,3 @@ ## Prerequisites

- C compiler toolchain (you probably already have it installed)
- OS: Mac/Linux (BuckleScript works on Windows, but developing the repo using Windows isn't tested. Contribution welcome!)
- OS: Mac/Linux (ReScript works on Windows, but developing the repo using Windows isn't tested. Contribution welcome!)

@@ -34,2 +34,7 @@ ## Build

If this doesn't work (rare), then:
- Save your changes
- `git clean -xdf .` to wipe all artifacts
- Then do a clean build as instructed above
## Test

@@ -47,3 +52,3 @@

If you'd like to use your modified BuckleScript like an end-user, try:
If you'd like to use your modified ReScript like an end-user, try:

@@ -57,3 +62,3 @@ ```sh

```sh
bsb -init foo -theme basic-reason
bsb -init foo -theme basic
cd foo

@@ -70,7 +75,7 @@ npm run build

See https://github.com/reason-association/reasonml.org/
See https://github.com/reason-association/rescript-lang.org
## Contribute to the API Reference
The API reference is generated from doc comments in the source code. [Here](https://github.com/bucklescript/bucklescript/blob/99650/jscomp/others/js_re.mli#L146-L161)'s a good example.
The API reference is generated from doc comments in the source code. [Here](https://github.com/rescript-lang/rescript-compiler/blob/99650/jscomp/others/js_re.mli#L146-L161)'s a good example.

@@ -102,3 +107,3 @@ Some tips:

BuckleScript runtime implementation is written in pure OCaml with some raw JS code embedded (`jscomp/runtime` directory).
Our runtime implementation is written in pure OCaml with some raw JS code embedded (`jscomp/runtime` directory).

@@ -147,7 +152,7 @@ The goal is to implement the runtime **purely in OCaml**. This includes removing all existing occurrences of embedded raw JS code as well, and you can help!

> Note: These instructions are designed for building the 4.06 based version of BuckleScript (BS v6).
> Note: These instructions are designed for building the 4.06 based version of ReScript (ReScript v6).
The "BuckleScript Playground bundle" is the BS compiler compiled to JavaScript, including all necessary dependency files (stdlib / belt etc). It is useful for building tools where you want to compile and execute arbitrary Reason / OCaml in the browser.
The "Playground bundle" is the BS compiler compiled to JavaScript, including all necessary dependency files (stdlib / belt etc). It is useful for building tools where you want to compile and execute arbitrary Reason / OCaml in the browser.
The BuckleScript source code is compiled with a tool called [JSOO (js_of_ocaml)](https://ocsigen.org/js_of_ocaml/3.5.1/manual/overview), which uses OCaml bytecode to compile to JavaScript and is part of the bigger OCaml ecosystem. Before we can compile anything, we need to install the required tools (requires [`opam`](https://opam.ocaml.org/doc/Install.html) to be installed):
The ReScript source code is compiled with a tool called [JSOO (js_of_ocaml)](https://ocsigen.org/js_of_ocaml/3.5.1/manual/overview), which uses OCaml bytecode to compile to JavaScript and is part of the bigger OCaml ecosystem. Before we can compile anything, we need to install the required tools (requires [`opam`](https://opam.ocaml.org/doc/Install.html) to be installed):

@@ -173,3 +178,3 @@ ```sh

# We build the BuckleScript source code and also the bytecode for jsoo_main.ml
# We build the ReScript source code and also the bytecode for jsoo_main.ml
node scripts/ninja.js config && node scripts/ninja.js build

@@ -185,4 +190,4 @@

- `playground/exports.js` -> This is the BuckleScript compiler, which binds the BuckleScript API to the `window` object.
- `playground/stdlib/*.js` -> All the BuckleScript runtime files.
- `playground/exports.js` -> This is the ReScript compiler, which binds the ReScript API to the `window` object.
- `playground/stdlib/*.js` -> All the ReScript runtime files.

@@ -218,3 +223,3 @@ You can now use the `exports.js` file either directly by using a `<script src="/path/to/exports.js"/>` inside a html file, use a browser bundler infrastructure to optimize it, or you can even use it with `nodejs`:

Whenever you are modifying any files in the BuckleScript compiler, or in the `jsoo_main.ml` file, you'll need to rebuild the source and recreate the JS bundle.
Whenever you are modifying any files in the ReScript compiler, or in the `jsoo_main.ml` file, you'll need to rebuild the source and recreate the JS bundle.

@@ -228,3 +233,3 @@ ```sh

A `.cmj` file contains compile information and JS package information of BuckleScript build artifacts (your `.re / .ml` modules) and are generated on build (`scripts/ninja.js build`).
A `.cmj` file contains compile information and JS package information of ReScript build artifacts (your `.re / .ml` modules) and are generated on build (`scripts/ninja.js build`).

@@ -235,5 +240,5 @@ A `.cmi` file is an [OCaml originated file extension](https://waleedkhan.name/blog/ocaml-file-extensions/) and contains all interface information of a certain module without any implementation.

`.cmj` files are required for making BuckleScript compile modules (this includes modules like ReasonReact). BuckleScript includes a subset of modules by default, which can be found in `jscomp/stdlib-406` and `jscomp/others`. You can also find those modules listed in the `jsoo` call in `scripts/repl.js`. As you probably noticed, the generated `playground` files are all plain `.js`, so how are the `cmj` / `cmi` files embedded?
`.cmj` files are required for making ReScript compile modules (this includes modules like ReasonReact). ReScript includes a subset of modules by default, which can be found in `jscomp/stdlib-406` and `jscomp/others`. You can also find those modules listed in the `jsoo` call in `scripts/repl.js`. As you probably noticed, the generated `playground` files are all plain `.js`, so how are the `cmj` / `cmi` files embedded?
`repl.js` calls an executable called `cmjbrowser.exe` on every build, which is a compile artifact from `jscomp/main/jscmj_main.ml`. It is used to serialize `cmj` / `cmi` artifacts into two files called `jscomp/core/js_cmj_datasets.ml`. These files are only linked for the browser target, where BuckleScript doesn't have access to the filesystem. When working on BS, you'll see diffs on those files whenever there are changes on core modules, e.g. stdlib modules or when the ocaml version was changed. We usually check in these files to keep it in sync with the most recent compiler implementation. JSOO will pick up those files to encode them into the `exports.js` bundle.
`repl.js` calls an executable called `cmjbrowser.exe` on every build, which is a compile artifact from `jscomp/main/jscmj_main.ml`. It is used to serialize `cmj` / `cmi` artifacts into two files called `jscomp/core/js_cmj_datasets.ml`. These files are only linked for the browser target, where ReScript doesn't have access to the filesystem. When working on BS, you'll see diffs on those files whenever there are changes on core modules, e.g. stdlib modules or when the ocaml version was changed. We usually check in these files to keep it in sync with the most recent compiler implementation. JSOO will pick up those files to encode them into the `exports.js` bundle.

@@ -274,3 +279,3 @@ For any other dependency needed in the playground, such as `ReasonReact`, you will be required to serialize your `.cmi` / `.cmt` files accordingly from binary to hex encoded strings so that BS Playground's `ocaml.load` function can load the data. Right now we don't provide any instructions inside here yet, but [here's how the official ReasonML playground did it](https://github.com/reasonml/reasonml.github.io/blob/source/website/setupSomeArtifacts.js#L65).

Since BuckleScript is distributed under the terms of the [LGPL Version 3](LICENSE), contributions that you make are licensed under the same terms. In order for us to be able to accept your contributions, we will need explicit confirmation from you that you are able and willing to provide them under these terms, and the mechanism we use to do this is called a Developer's Certificate of Origin [DCO](DCO.md). This is very similar to the process used by the Linux(R) kernel, Samba, and many other major open source projects.
Since ReScript is distributed under the terms of the [LGPL Version 3](LICENSE), contributions that you make are licensed under the same terms. In order for us to be able to accept your contributions, we will need explicit confirmation from you that you are able and willing to provide them under these terms, and the mechanism we use to do this is called a Developer's Certificate of Origin [DCO](DCO.md). This is very similar to the process used by the Linux(R) kernel, Samba, and many other major open source projects.

@@ -277,0 +282,0 @@ To participate under these terms, all that you must do is include a line like the following as the last line of the commit message for each commit in your contribution:

@@ -69,8 +69,8 @@ {

},
"description": "bucklescript compiler for use in esy, ocaml standard libary by bucklescript and its required runtime support",
"description": "ReScript compiler for use in esy, ocaml standard libary by ReScript and its required runtime support",
"repository": {
"type": "git",
"url": "git+https://github.com/bucklescript/bucklescript.git"
"url": "git+https://github.com/rescript-lang/rescript-compiler.git"
},
"keywords": ["ocaml", "bucklescript", "stdlib", "functional programming"],
"keywords": ["ocaml", "rescript", "stdlib", "functional programming"],
"author": {

@@ -87,5 +87,5 @@ "name": "Hongbo Zhang"

"bugs": {
"url": "https://github.com/bucklescript/bucklescript/issues"
"url": "https://github.com/rescript-lang/rescript-compiler/issues"
},
"homepage": "https://github.com/bucklescript/bucklescript#readme"
"homepage": "https://github.com/rescript-lang/rescript-compiler#readme"
}

@@ -267,3 +267,3 @@

var b = $$Buffer.create(200);
var progname = initpos < argv.contents.length ? Caml_array.caml_array_get(argv.contents, initpos) : "(?)";
var progname = initpos < argv.contents.length ? Caml_array.get(argv.contents, initpos) : "(?)";
switch (error.TAG | 0) {

@@ -405,3 +405,3 @@ case /* Unknown */0 :

try {
var s = Caml_array.caml_array_get(argv.contents, current.contents);
var s = Caml_array.get(argv.contents, current.contents);
if (s.length >= 1 && Caml_string.get(s, 0) === /* "-" */45) {

@@ -467,3 +467,3 @@ var match;

if ((current.contents + 1 | 0) < argv.contents.length) {
return Caml_array.caml_array_get(argv.contents, current.contents + 1 | 0);
return Caml_array.get(argv.contents, current.contents + 1 | 0);
}

@@ -622,3 +622,3 @@ throw {

while(current.contents < (argv.contents.length - 1 | 0)) {
Curry._1(f$1, Caml_array.caml_array_get(argv.contents, current.contents + 1 | 0));
Curry._1(f$1, Caml_array.get(argv.contents, current.contents + 1 | 0));
consume_arg(undefined);

@@ -625,0 +625,0 @@ };

@@ -305,6 +305,6 @@

if ((i31 + 2 | 0) < l) {
if (Curry._2(cmp, Caml_array.caml_array_get(a, i31), Caml_array.caml_array_get(a, i31 + 1 | 0)) < 0) {
if (Curry._2(cmp, Caml_array.get(a, i31), Caml_array.get(a, i31 + 1 | 0)) < 0) {
x = i31 + 1 | 0;
}
if (Curry._2(cmp, Caml_array.caml_array_get(a, x), Caml_array.caml_array_get(a, i31 + 2 | 0)) < 0) {
if (Curry._2(cmp, Caml_array.get(a, x), Caml_array.get(a, i31 + 2 | 0)) < 0) {
x = i31 + 2 | 0;

@@ -314,3 +314,3 @@ }

}
if ((i31 + 1 | 0) < l && Curry._2(cmp, Caml_array.caml_array_get(a, i31), Caml_array.caml_array_get(a, i31 + 1 | 0)) < 0) {
if ((i31 + 1 | 0) < l && Curry._2(cmp, Caml_array.get(a, i31), Caml_array.get(a, i31 + 1 | 0)) < 0) {
return i31 + 1 | 0;

@@ -333,6 +333,6 @@ }

var j = maxson(l, i$1);
if (Curry._2(cmp, Caml_array.caml_array_get(a, j), e) <= 0) {
return Caml_array.caml_array_set(a, i$1, e);
if (Curry._2(cmp, Caml_array.get(a, j), e) <= 0) {
return Caml_array.set(a, i$1, e);
}
Caml_array.caml_array_set(a, i$1, Caml_array.caml_array_get(a, j));
Caml_array.set(a, i$1, Caml_array.get(a, j));
_i = j;

@@ -345,3 +345,3 @@ continue ;

if (i$2.RE_EXN_ID === Bottom) {
return Caml_array.caml_array_set(a, i$2._1, e);
return Caml_array.set(a, i$2._1, e);
}

@@ -357,3 +357,3 @@ throw i$2;

var j = maxson(l, i$1);
Caml_array.caml_array_set(a, i$1, Caml_array.caml_array_get(a, j));
Caml_array.set(a, i$1, Caml_array.get(a, j));
_i = j;

@@ -386,8 +386,8 @@ continue ;

}
if (Curry._2(cmp, Caml_array.caml_array_get(a, father), e) >= 0) {
return Caml_array.caml_array_set(a, i, e);
if (Curry._2(cmp, Caml_array.get(a, father), e) >= 0) {
return Caml_array.set(a, i, e);
}
Caml_array.caml_array_set(a, i, Caml_array.caml_array_get(a, father));
Caml_array.set(a, i, Caml_array.get(a, father));
if (father <= 0) {
return Caml_array.caml_array_set(a, 0, e);
return Caml_array.set(a, 0, e);
}

@@ -400,7 +400,7 @@ _i = father;

for(var i = ((l + 1 | 0) / 3 | 0) - 1 | 0; i >= 0; --i){
trickle(l, i, Caml_array.caml_array_get(a, i));
trickle(l, i, Caml_array.get(a, i));
}
for(var i$1 = l - 1 | 0; i$1 >= 2; --i$1){
var e = Caml_array.caml_array_get(a, i$1);
Caml_array.caml_array_set(a, i$1, Caml_array.caml_array_get(a, 0));
var e = Caml_array.get(a, i$1);
Caml_array.set(a, i$1, Caml_array.get(a, 0));
trickleup(bubble(i$1, 0), e);

@@ -411,5 +411,5 @@ }

}
var e$1 = Caml_array.caml_array_get(a, 1);
Caml_array.caml_array_set(a, 1, Caml_array.caml_array_get(a, 0));
return Caml_array.caml_array_set(a, 0, e$1);
var e$1 = Caml_array.get(a, 1);
Caml_array.set(a, 1, Caml_array.get(a, 0));
return Caml_array.set(a, 0, e$1);
}

@@ -422,5 +422,5 @@

var _i1 = src1ofs;
var _s1 = Caml_array.caml_array_get(a, src1ofs);
var _s1 = Caml_array.get(a, src1ofs);
var _i2 = src2ofs;
var _s2 = Caml_array.caml_array_get(src2, src2ofs);
var _s2 = Caml_array.get(src2, src2ofs);
var _d = dstofs;

@@ -434,3 +434,3 @@ while(true) {

if (Curry._2(cmp, s1, s2) <= 0) {
Caml_array.caml_array_set(dst, d, s1);
Caml_array.set(dst, d, s1);
var i1$1 = i1 + 1 | 0;

@@ -441,7 +441,7 @@ if (i1$1 >= src1r) {

_d = d + 1 | 0;
_s1 = Caml_array.caml_array_get(a, i1$1);
_s1 = Caml_array.get(a, i1$1);
_i1 = i1$1;
continue ;
}
Caml_array.caml_array_set(dst, d, s2);
Caml_array.set(dst, d, s2);
var i2$1 = i2 + 1 | 0;

@@ -452,3 +452,3 @@ if (i2$1 >= src2r) {

_d = d + 1 | 0;
_s2 = Caml_array.caml_array_get(src2, i2$1);
_s2 = Caml_array.get(src2, i2$1);
_i2 = i2$1;

@@ -460,9 +460,9 @@ continue ;

for(var i = 0; i < len; ++i){
var e = Caml_array.caml_array_get(a, srcofs + i | 0);
var e = Caml_array.get(a, srcofs + i | 0);
var j = (dstofs + i | 0) - 1 | 0;
while(j >= dstofs && Curry._2(cmp, Caml_array.caml_array_get(dst, j), e) > 0) {
Caml_array.caml_array_set(dst, j + 1 | 0, Caml_array.caml_array_get(dst, j));
while(j >= dstofs && Curry._2(cmp, Caml_array.get(dst, j), e) > 0) {
Caml_array.set(dst, j + 1 | 0, Caml_array.get(dst, j));
j = j - 1 | 0;
};
Caml_array.caml_array_set(dst, j + 1 | 0, e);
Caml_array.set(dst, j + 1 | 0, e);
}

@@ -487,3 +487,3 @@

var l2 = l - l1 | 0;
var t = Caml_array.caml_make_vect(l2, Caml_array.caml_array_get(a, 0));
var t = Caml_array.caml_make_vect(l2, Caml_array.get(a, 0));
sortto(l1, t, 0, l2);

@@ -490,0 +490,0 @@ sortto(0, a, l2, l1);

@@ -17,3 +17,11 @@

if (!(i >= 0 && i < arr.length)) {
throw new Error("File \"belt_Array.ml\", line 25, characters 6-12");
throw {
RE_EXN_ID: "Assert_failure",
_1: [
"belt_Array.ml",
27,
4
],
Error: new Error()
};
}

@@ -34,3 +42,11 @@ return arr[i];

if (!(i >= 0 && i < arr.length)) {
throw new Error("File \"belt_Array.ml\", line 31, characters 4-10");
throw {
RE_EXN_ID: "Assert_failure",
_1: [
"belt_Array.ml",
33,
2
],
Error: new Error()
};
}

@@ -37,0 +53,0 @@ arr[i] = v;

@@ -7,10 +7,2 @@

function treeHeight(n) {
if (n !== undefined) {
return n.h;
} else {
return 0;
}
}
function copy(n) {

@@ -34,3 +26,5 @@ if (n !== undefined) {

v: v,
h: hl >= hr ? hl + 1 | 0 : hr + 1 | 0,
h: (
hl >= hr ? hl : hr
) + 1 | 0,
l: l,

@@ -77,3 +71,5 @@ r: r

v: v,
h: hl >= hr ? hl + 1 | 0 : hr + 1 | 0,
h: (
hl >= hr ? hl : hr
) + 1 | 0,
l: l,

@@ -374,5 +370,17 @@ r: r

var r = v.r;
var diff = treeHeight(l) - treeHeight(r) | 0;
var diff = (
l !== undefined ? l.h : 0
) - (
r !== undefined ? r.h : 0
) | 0;
if (!(diff <= 2 && diff >= -2)) {
throw new Error("File \"belt_internalAVLset.ml\", line 288, characters 6-12");
throw {
RE_EXN_ID: "Assert_failure",
_1: [
"belt_internalAVLset.ml",
290,
4
],
Error: new Error()
};
}

@@ -731,3 +739,6 @@ checkInvariantInternal(l);

}
throw new Error("getExn0");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -740,8 +751,11 @@ }

k1.r = k2;
var hlk2 = treeHeight(k2.l);
var hrk2 = treeHeight(k2.r);
var n = k2.l;
var hlk2 = n !== undefined ? n.h : 0;
var n$1 = k2.r;
var hrk2 = n$1 !== undefined ? n$1.h : 0;
k2.h = (
hlk2 > hrk2 ? hlk2 : hrk2
) + 1 | 0;
var hlk1 = treeHeight(k1.l);
var n$2 = k1.l;
var hlk1 = n$2 !== undefined ? n$2.h : 0;
var hk2 = k2.h;

@@ -758,8 +772,11 @@ k1.h = (

k2.l = k1;
var hlk1 = treeHeight(k1.l);
var hrk1 = treeHeight(k1.r);
var n = k1.l;
var hlk1 = n !== undefined ? n.h : 0;
var n$1 = k1.r;
var hrk1 = n$1 !== undefined ? n$1.h : 0;
k1.h = (
hlk1 > hrk1 ? hlk1 : hrk1
) + 1 | 0;
var hrk2 = treeHeight(k2.r);
var n$2 = k2.r;
var hrk2 = n$2 !== undefined ? n$2.h : 0;
var hk1 = k1.h;

@@ -787,4 +804,6 @@ k2.h = (

function heightUpdateMutate(t) {
var hlt = treeHeight(t.l);
var hrt = treeHeight(t.r);
var n = t.l;
var hlt = n !== undefined ? n.h : 0;
var n$1 = t.r;
var hrt = n$1 !== undefined ? n$1.h : 0;
t.h = (

@@ -799,4 +818,4 @@ hlt > hrt ? hlt : hrt

var r = nt.r;
var hl = treeHeight(l);
var hr = treeHeight(r);
var hl = l !== undefined ? l.h : 0;
var hr = r !== undefined ? r.h : 0;
if (hl > (2 + hr | 0)) {

@@ -803,0 +822,0 @@ var ll = l.l;

@@ -590,3 +590,11 @@

if (!(diff <= 2 && diff >= -2)) {
throw new Error("File \"belt_internalAVLtree.ml\", line 373, characters 6-12");
throw {
RE_EXN_ID: "Assert_failure",
_1: [
"belt_internalAVLtree.ml",
373,
4
],
Error: new Error()
};
}

@@ -893,3 +901,6 @@ checkInvariantInternal(l);

}
throw new Error("getExn0");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -896,0 +907,0 @@ }

@@ -66,3 +66,6 @@

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -69,0 +72,0 @@ }

@@ -66,3 +66,6 @@

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -69,0 +72,0 @@ }

@@ -144,3 +144,6 @@

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -147,0 +150,0 @@ }

@@ -144,3 +144,6 @@

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -147,0 +150,0 @@ }

@@ -19,3 +19,6 @@

}
throw new Error("headExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -34,3 +37,6 @@

}
throw new Error("tailExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -69,3 +75,6 @@

if (n < 0) {
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -85,3 +94,6 @@ var _x = x;

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -88,0 +100,0 @@ }

@@ -60,3 +60,6 @@

}
throw new Error("Belt.Queue.Empty");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -93,3 +96,6 @@

}
throw new Error("Empty");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -96,0 +102,0 @@

@@ -21,3 +21,6 @@

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -24,0 +27,0 @@

@@ -9,3 +9,6 @@

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -12,0 +15,0 @@

@@ -572,3 +572,3 @@

var compare = Caml_primitive.caml_bytes_compare;
var compare = Caml_bytes.caml_bytes_compare;

@@ -591,3 +591,3 @@ function uppercase(s) {

var equal = Caml_primitive.caml_bytes_equal;
var equal = Caml_bytes.caml_bytes_equal;

@@ -594,0 +594,0 @@ var unsafe_to_string = Caml_bytes.bytes_to_string;

@@ -58,3 +58,3 @@

function caml_array_set(xs, index, newval) {
function set(xs, index, newval) {
if (index < 0 || index >= xs.length) {

@@ -71,3 +71,3 @@ throw {

function caml_array_get(xs, index) {
function get(xs, index) {
if (index < 0 || index >= xs.length) {

@@ -123,6 +123,6 @@ throw {

caml_array_blit ,
caml_array_get ,
caml_array_set ,
get ,
set ,
}
/* No side effect */
function set(s, i, ch) {
if (i < 0 || i >= s.length) {
throw {
RE_EXN_ID: "Invalid_argument",
_1: "index out of bounds",
Error: new Error()
};
}
s[i] = ch;
}
function get(s, i) {

@@ -93,3 +105,5 @@ if (i < 0 || i >= s.length) {

var tmp_bytes = new Array(next);
caml_blit_bytes(a, offset, tmp_bytes, 0, next);
for(var k = 0; k < next; ++k){
tmp_bytes[k] = a[k + offset | 0];
}
s = s + String.fromCharCode.apply(null, tmp_bytes);

@@ -131,2 +145,72 @@ s_len = s_len - next | 0;

function caml_bytes_compare_aux(s1, s2, _off, len, def) {
while(true) {
var off = _off;
if (off >= len) {
return def;
}
var a = s1[off];
var b = s2[off];
if (a > b) {
return 1;
}
if (a < b) {
return -1;
}
_off = off + 1 | 0;
continue ;
};
}
function caml_bytes_compare(s1, s2) {
var len1 = s1.length;
var len2 = s2.length;
if (len1 === len2) {
return caml_bytes_compare_aux(s1, s2, 0, len1, 0);
} else if (len1 < len2) {
return caml_bytes_compare_aux(s1, s2, 0, len1, -1);
} else {
return caml_bytes_compare_aux(s1, s2, 0, len2, 1);
}
}
function caml_bytes_equal(s1, s2) {
var len1 = s1.length;
var len2 = s2.length;
if (len1 === len2) {
var _off = 0;
while(true) {
var off = _off;
if (off === len1) {
return true;
}
var a = s1[off];
var b = s2[off];
if (a !== b) {
return false;
}
_off = off + 1 | 0;
continue ;
};
} else {
return false;
}
}
function caml_bytes_greaterthan(s1, s2) {
return caml_bytes_compare(s1, s2) > 0;
}
function caml_bytes_greaterequal(s1, s2) {
return caml_bytes_compare(s1, s2) >= 0;
}
function caml_bytes_lessthan(s1, s2) {
return caml_bytes_compare(s1, s2) < 0;
}
function caml_bytes_lessequal(s1, s2) {
return caml_bytes_compare(s1, s2) <= 0;
}
export {

@@ -136,2 +220,3 @@ caml_create_bytes ,

get ,
set ,
bytes_to_string ,

@@ -141,4 +226,10 @@ caml_blit_bytes ,

bytes_of_string ,
caml_bytes_compare ,
caml_bytes_greaterthan ,
caml_bytes_greaterequal ,
caml_bytes_lessthan ,
caml_bytes_lessequal ,
caml_bytes_equal ,
}
/* No side effect */

@@ -52,56 +52,2 @@

function caml_bytes_compare_aux(s1, s2, _off, len, def) {
while(true) {
var off = _off;
if (off >= len) {
return def;
}
var a = s1[off];
var b = s2[off];
if (a > b) {
return 1;
}
if (a < b) {
return -1;
}
_off = off + 1 | 0;
continue ;
};
}
function caml_bytes_compare(s1, s2) {
var len1 = s1.length;
var len2 = s2.length;
if (len1 === len2) {
return caml_bytes_compare_aux(s1, s2, 0, len1, 0);
} else if (len1 < len2) {
return caml_bytes_compare_aux(s1, s2, 0, len1, -1);
} else {
return caml_bytes_compare_aux(s1, s2, 0, len2, 1);
}
}
function caml_bytes_equal(s1, s2) {
var len1 = s1.length;
var len2 = s2.length;
if (len1 === len2) {
var _off = 0;
while(true) {
var off = _off;
if (off === len1) {
return true;
}
var a = s1[off];
var b = s2[off];
if (a !== b) {
return false;
}
_off = off + 1 | 0;
continue ;
};
} else {
return false;
}
}
function caml_bool_min(x, y) {

@@ -208,4 +154,2 @@ if (x) {

export {
caml_bytes_compare ,
caml_bytes_equal ,
caml_int_compare ,

@@ -212,0 +156,0 @@ caml_bool_compare ,

@@ -38,6 +38,2 @@

function caml_sys_random_seed(param) {
return [((Date.now() | 0) ^ 4294967295) * Math.random() | 0];
}
function caml_sys_system_command(_cmd) {

@@ -102,3 +98,2 @@ return 127;

os_type ,
caml_sys_random_seed ,
caml_sys_system_command ,

@@ -105,0 +100,0 @@ caml_sys_getcwd ,

@@ -72,6 +72,6 @@

var methods = Caml_array.caml_make_vect((len << 1) + 2 | 0, /* DummyA */0);
Caml_array.caml_array_set(methods, 0, len);
Caml_array.caml_array_set(methods, 1, ((fit_size(len) << 5) / 8 | 0) - 1 | 0);
Caml_array.set(methods, 0, len);
Caml_array.set(methods, 1, ((fit_size(len) << 5) / 8 | 0) - 1 | 0);
for(var i = 0; i < len; ++i){
Caml_array.caml_array_set(methods, (i << 1) + 3 | 0, Caml_array.caml_array_get(pub_labels, i));
Caml_array.set(methods, (i << 1) + 3 | 0, Caml_array.get(pub_labels, i));
}

@@ -136,3 +136,3 @@ return {

resize(table, label + 1 | 0);
return Caml_array.caml_array_set(table.methods, label, element);
return Caml_array.set(table.methods, label, element);
} else {

@@ -157,3 +157,3 @@ table.hidden_meths = {

if (exn.RE_EXN_ID === "Not_found") {
return Caml_array.caml_array_get(table.methods, label);
return Caml_array.get(table.methods, label);
}

@@ -285,6 +285,6 @@ throw exn;

for(var i = 0; i < nmeths; ++i){
Caml_array.caml_array_set(res, i, get_method_label(table, Caml_array.caml_array_get(meths$1, i)));
Caml_array.set(res, i, get_method_label(table, Caml_array.get(meths$1, i)));
}
for(var i$1 = 0; i$1 < nvals; ++i$1){
Caml_array.caml_array_set(res, i$1 + nmeths | 0, new_variable(table, Caml_array.caml_array_get(vals, i$1)));
Caml_array.set(res, i$1 + nmeths | 0, new_variable(table, Caml_array.get(vals, i$1)));
}

@@ -330,3 +330,3 @@ return res;

table.initializers = List.rev(table.initializers);
return resize(table, 3 + ((Caml_array.caml_array_get(table.methods, 1) << 4) / 32 | 0) | 0);
return resize(table, 3 + ((Caml_array.get(table.methods, 1) << 4) / 32 | 0) | 0);
}

@@ -517,3 +517,3 @@

r = /* Cons */{
key: Caml_array.caml_array_get(keys, i),
key: Caml_array.get(keys, i),
data: r,

@@ -531,3 +531,3 @@ next: /* Empty */0

}
var key = Caml_array.caml_array_get(keys, i);
var key = Caml_array.get(keys, i);
var _tables = tables;

@@ -577,4 +577,4 @@ while(true) {

var n = new_method(table);
var n$1 = n % 2 === 0 || n > (2 + ((Caml_array.caml_array_get(table.methods, 1) << 4) / 32 | 0) | 0) ? n : new_method(table);
Caml_array.caml_array_set(table.methods, n$1, 0);
var n$1 = n % 2 === 0 || n > (2 + ((Caml_array.get(table.methods, 1) << 4) / 32 | 0) | 0) ? n : new_method(table);
Caml_array.set(table.methods, n$1, 0);
return n$1;

@@ -586,3 +586,3 @@ }

i.contents = i.contents + 1 | 0;
return Caml_array.caml_array_get(arr, i.contents);
return Caml_array.get(arr, i.contents);
};

@@ -764,3 +764,3 @@ var clo = next(undefined);

while(i.contents < len) {
var label = Caml_array.caml_array_get(methods, i.contents);
var label = Caml_array.get(methods, i.contents);
var clo = method_impl(table, i, methods);

@@ -767,0 +767,0 @@ set_method(table, label, clo);

@@ -120,3 +120,3 @@

for(var i = 0; i <= 15; ++i){
result[i] = Char.chr($$byte((i << 1)));
Caml_bytes.set(result, i, Char.chr($$byte((i << 1))));
}

@@ -123,0 +123,0 @@ return Caml_bytes.bytes_to_string(result);

@@ -35,3 +35,3 @@

}
buffer.contents[bufpos.contents] = c;
Caml_bytes.set(buffer.contents, bufpos.contents, c);
bufpos.contents = bufpos.contents + 1 | 0;

@@ -38,0 +38,0 @@

@@ -81,3 +81,3 @@

for(var i = 0; i < len; ++i){
Caml_array.caml_array_set(h.data, i, /* Empty */0);
Caml_array.set(h.data, i, /* Empty */0);
}

@@ -186,9 +186,9 @@

var nidx = Curry._2(indexfun, h, key);
var tail = Caml_array.caml_array_get(ndata_tail, nidx);
var tail = Caml_array.get(ndata_tail, nidx);
if (tail) {
tail.next = cell$1;
} else {
Caml_array.caml_array_set(ndata, nidx, cell$1);
Caml_array.set(ndata, nidx, cell$1);
}
Caml_array.caml_array_set(ndata_tail, nidx, cell$1);
Caml_array.set(ndata_tail, nidx, cell$1);
_cell = next;

@@ -199,3 +199,3 @@ continue ;

for(var i = 0; i < osize; ++i){
insert_bucket(Caml_array.caml_array_get(odata, i));
insert_bucket(Caml_array.get(odata, i));
}

@@ -206,3 +206,3 @@ if (!inplace) {

for(var i$1 = 0; i$1 < nsize; ++i$1){
var tail = Caml_array.caml_array_get(ndata_tail, i$1);
var tail = Caml_array.get(ndata_tail, i$1);
if (tail) {

@@ -225,5 +225,5 @@ tail.next = /* Empty */0;

data: data,
next: Caml_array.caml_array_get(h.data, i)
next: Caml_array.get(h.data, i)
};
Caml_array.caml_array_set(h.data, i, bucket);
Caml_array.set(h.data, i, bucket);
h.size = h.size + 1 | 0;

@@ -239,3 +239,3 @@ if (h.size > (h.data.length << 1)) {

var _prec = /* Empty */0;
var _c = Caml_array.caml_array_get(h.data, i);
var _c = Caml_array.get(h.data, i);
while(true) {

@@ -255,3 +255,3 @@ var c = _c;

} else {
return Caml_array.caml_array_set(h.data, i, next);
return Caml_array.set(h.data, i, next);
}

@@ -266,3 +266,3 @@ }

function find(h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (match) {

@@ -326,3 +326,3 @@ var k1 = match.key;

function find_opt(h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (!match) {

@@ -393,3 +393,3 @@ return ;

};
return find_in_bucket(Caml_array.caml_array_get(h.data, key_index(h, key)));
return find_in_bucket(Caml_array.get(h.data, key_index(h, key)));
}

@@ -417,5 +417,5 @@

var i = key_index(h, key);
var l = Caml_array.caml_array_get(h.data, i);
var l = Caml_array.get(h.data, i);
if (replace_bucket(key, data, l)) {
Caml_array.caml_array_set(h.data, i, /* Cons */{
Caml_array.set(h.data, i, /* Cons */{
key: key,

@@ -436,3 +436,3 @@ data: data,

function mem(h, key) {
var _param = Caml_array.caml_array_get(h.data, key_index(h, key));
var _param = Caml_array.get(h.data, key_index(h, key));
while(true) {

@@ -475,3 +475,3 @@ var param = _param;

for(var i = 0 ,i_finish = d.length; i < i_finish; ++i){
do_bucket(Caml_array.caml_array_get(d, i));
do_bucket(Caml_array.get(d, i));
}

@@ -502,3 +502,3 @@ if (!old_trav) {

} else {
return Caml_array.caml_array_set(h.data, i, /* Empty */0);
return Caml_array.set(h.data, i, /* Empty */0);
}

@@ -514,3 +514,3 @@ }

} else {
Caml_array.caml_array_set(h.data, i, slot);
Caml_array.set(h.data, i, slot);
}

@@ -536,3 +536,3 @@ slot.data = Caml_option.valFromOption(data$1);

for(var i = 0 ,i_finish = d.length; i < i_finish; ++i){
filter_map_inplace_bucket(f, h, i, /* Empty */0, Caml_array.caml_array_get(h.data, i));
filter_map_inplace_bucket(f, h, i, /* Empty */0, Caml_array.get(h.data, i));
}

@@ -574,3 +574,3 @@ return ;

for(var i = 0 ,i_finish = d.length; i < i_finish; ++i){
accu = do_bucket(Caml_array.caml_array_get(d, i), accu);
accu = do_bucket(Caml_array.get(d, i), accu);
}

@@ -612,3 +612,3 @@ if (!old_trav) {

var l = bucket_length(0, b);
return Caml_array.caml_array_set(histo, l, Caml_array.caml_array_get(histo, l) + 1 | 0);
return Caml_array.set(histo, l, Caml_array.get(histo, l) + 1 | 0);
}), h.data);

@@ -632,5 +632,5 @@ return {

data: data,
next: Caml_array.caml_array_get(h.data, i)
next: Caml_array.get(h.data, i)
};
Caml_array.caml_array_set(h.data, i, bucket);
Caml_array.set(h.data, i, bucket);
h.size = h.size + 1 | 0;

@@ -645,3 +645,3 @@ if (h.size > (h.data.length << 1)) {

var _prec = /* Empty */0;
var _c = Caml_array.caml_array_get(h.data, i);
var _c = Caml_array.get(h.data, i);
while(true) {

@@ -661,3 +661,3 @@ var c = _c;

} else {
return Caml_array.caml_array_set(h.data, i, next);
return Caml_array.set(h.data, i, next);
}

@@ -671,3 +671,3 @@ }

var find = function (h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (match) {

@@ -730,3 +730,3 @@ var k1 = match.key;

var find_opt = function (h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (!match) {

@@ -796,3 +796,3 @@ return ;

};
return find_in_bucket(Caml_array.caml_array_get(h.data, key_index(h, key)));
return find_in_bucket(Caml_array.get(h.data, key_index(h, key)));
};

@@ -818,5 +818,5 @@ var replace_bucket = function (key, data, _slot) {

var i = key_index(h, key);
var l = Caml_array.caml_array_get(h.data, i);
var l = Caml_array.get(h.data, i);
if (replace_bucket(key, data, l)) {
Caml_array.caml_array_set(h.data, i, /* Cons */{
Caml_array.set(h.data, i, /* Cons */{
key: key,

@@ -836,3 +836,3 @@ data: data,

var mem = function (h, key) {
var _param = Caml_array.caml_array_get(h.data, key_index(h, key));
var _param = Caml_array.get(h.data, key_index(h, key));
while(true) {

@@ -882,5 +882,5 @@ var param = _param;

data: data,
next: Caml_array.caml_array_get(h.data, i)
next: Caml_array.get(h.data, i)
};
Caml_array.caml_array_set(h.data, i, bucket);
Caml_array.set(h.data, i, bucket);
h.size = h.size + 1 | 0;

@@ -895,3 +895,3 @@ if (h.size > (h.data.length << 1)) {

var _prec = /* Empty */0;
var _c = Caml_array.caml_array_get(h.data, i);
var _c = Caml_array.get(h.data, i);
while(true) {

@@ -911,3 +911,3 @@ var c = _c;

} else {
return Caml_array.caml_array_set(h.data, i, next);
return Caml_array.set(h.data, i, next);
}

@@ -921,3 +921,3 @@ }

var find = function (h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (match) {

@@ -980,3 +980,3 @@ var k1 = match.key;

var find_opt = function (h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (!match) {

@@ -1046,3 +1046,3 @@ return ;

};
return find_in_bucket(Caml_array.caml_array_get(h.data, key_index(h, key)));
return find_in_bucket(Caml_array.get(h.data, key_index(h, key)));
};

@@ -1068,5 +1068,5 @@ var replace_bucket = function (key, data, _slot) {

var i = key_index(h, key);
var l = Caml_array.caml_array_get(h.data, i);
var l = Caml_array.get(h.data, i);
if (replace_bucket(key, data, l)) {
Caml_array.caml_array_set(h.data, i, /* Cons */{
Caml_array.set(h.data, i, /* Cons */{
key: key,

@@ -1086,3 +1086,3 @@ data: data,

var mem = function (h, key) {
var _param = Caml_array.caml_array_get(h.data, key_index(h, key));
var _param = Caml_array.get(h.data, key_index(h, key));
while(true) {

@@ -1089,0 +1089,0 @@ var param = _param;

@@ -77,5 +77,5 @@

for(var i = 0 ,i_finish = t.length; i < i_finish; ++i){
var v = Caml_array.caml_array_get(t, i);
var v = Caml_array.get(t, i);
if (v >= 0) {
Caml_array.caml_array_set(t, i, v - s | 0);
Caml_array.set(t, i, v - s | 0);
}

@@ -82,0 +82,0 @@

@@ -112,3 +112,3 @@

/* Semantic_action_computed */4,
Curry._1(Caml_array.caml_array_get(tables.actions, env.rule_number), env)
Curry._1(Caml_array.get(tables.actions, env.rule_number), env)
];

@@ -154,5 +154,5 @@ }

if (typeof tok !== "number") {
return Caml_array.caml_array_get(tables.transl_block, tok.TAG | 0) === curr_char;
return Caml_array.get(tables.transl_block, tok.TAG | 0) === curr_char;
} else {
return Caml_array.caml_array_get(tables.transl_const, tok) === curr_char;
return Caml_array.get(tables.transl_const, tok) === curr_char;
}

@@ -165,3 +165,3 @@ });

function peek_val(env, n) {
return Caml_array.caml_array_get(env.v_stack, env.asp - n | 0);
return Caml_array.get(env.v_stack, env.asp - n | 0);
}

@@ -174,6 +174,6 @@

if (i <= 0) {
return Caml_array.caml_array_get(env.symb_end_stack, env.asp);
return Caml_array.get(env.symb_end_stack, env.asp);
}
var st = Caml_array.caml_array_get(env.symb_start_stack, (env.asp - i | 0) + 1 | 0);
var en = Caml_array.caml_array_get(env.symb_end_stack, (env.asp - i | 0) + 1 | 0);
var st = Caml_array.get(env.symb_start_stack, (env.asp - i | 0) + 1 | 0);
var en = Caml_array.get(env.symb_end_stack, (env.asp - i | 0) + 1 | 0);
if (Caml_obj.caml_notequal(st, en)) {

@@ -188,11 +188,11 @@ return st;

function symbol_end_pos(param) {
return Caml_array.caml_array_get(env.symb_end_stack, env.asp);
return Caml_array.get(env.symb_end_stack, env.asp);
}
function rhs_start_pos(n) {
return Caml_array.caml_array_get(env.symb_start_stack, env.asp - (env.rule_len - n | 0) | 0);
return Caml_array.get(env.symb_start_stack, env.asp - (env.rule_len - n | 0) | 0);
}
function rhs_end_pos(n) {
return Caml_array.caml_array_get(env.symb_end_stack, env.asp - (env.rule_len - n | 0) | 0);
return Caml_array.get(env.symb_end_stack, env.asp - (env.rule_len - n | 0) | 0);
}

@@ -199,0 +199,0 @@

@@ -297,3 +297,3 @@

for(var i = 0 ,i_finish = backtrace.length; i < i_finish; ++i){
var str = format_backtrace_slot(i, Caml_array.caml_array_get(backtrace, i));
var str = format_backtrace_slot(i, Caml_array.get(backtrace, i));
if (str !== undefined) {

@@ -329,3 +329,3 @@ Curry._1(Printf.fprintf(outchan, /* Format */{

for(var i = 0 ,i_finish = backtrace.length; i < i_finish; ++i){
var str = format_backtrace_slot(i, Caml_array.caml_array_get(backtrace, i));
var str = format_backtrace_slot(i, Caml_array.get(backtrace, i));
if (str !== undefined) {

@@ -393,3 +393,3 @@ Curry._1(Printf.bprintf(b, /* Format */{

}
if (usable_slot(Caml_array.caml_array_get(backtrace, i))) {
if (usable_slot(Caml_array.get(backtrace, i))) {
return true;

@@ -396,0 +396,0 @@ }

import * as $$Array from "./array.js";
import * as Curry from "./curry.js";
import * as Int32 from "./int32.js";
import * as Int64 from "./int64.js";
import * as Digest from "./digest.js";
import * as Caml_sys from "./caml_sys.js";
import * as Nativeint from "./nativeint.js";
import * as Caml_array from "./caml_array.js";

@@ -14,2 +11,6 @@ import * as Caml_int64 from "./caml_int64.js";

function random_seed(param) {
return [(Math.floor(Math.random()*0x7fffffff))];
}
function assign(st1, st2) {

@@ -31,3 +32,3 @@ $$Array.blit(st2.st, 0, st1.st, 0, 55);

for(var i = 0; i <= 54; ++i){
Caml_array.caml_array_set(s.st, i, i);
Caml_array.set(s.st, i, i);
}

@@ -40,4 +41,4 @@ var accu = "x";

var k = i$1 % l;
accu = combine(accu, Caml_array.caml_array_get(seed$1, k));
Caml_array.caml_array_set(s.st, j, (Caml_array.caml_array_get(s.st, j) ^ extract(accu)) & 1073741823);
accu = combine(accu, Caml_array.get(seed$1, k));
Caml_array.set(s.st, j, (Caml_array.get(s.st, j) ^ extract(accu)) & 1073741823);
}

@@ -58,3 +59,3 @@ s.idx = 0;

function make_self_init(param) {
return make(Caml_sys.caml_sys_random_seed(undefined));
return make(random_seed(undefined));
}

@@ -73,6 +74,6 @@

s.idx = (s.idx + 1 | 0) % 55;
var curval = Caml_array.caml_array_get(s.st, s.idx);
var newval = Caml_array.caml_array_get(s.st, (s.idx + 24 | 0) % 55) + (curval ^ (curval >>> 25) & 31) | 0;
var curval = Caml_array.get(s.st, s.idx);
var newval = Caml_array.get(s.st, (s.idx + 24 | 0) % 55) + (curval ^ (curval >>> 25) & 31) | 0;
var newval30 = newval & 1073741823;
Caml_array.caml_array_set(s.st, s.idx, newval30);
Caml_array.set(s.st, s.idx, newval30);
return newval30;

@@ -140,6 +141,2 @@ }

var nativeint = Nativeint.size === 32 ? int32 : (function (s, bound) {
return Caml_int64.to_int32(int64(s, Caml_int64.of_int32(bound)));
});
function rawfloat(s) {

@@ -232,6 +229,2 @@ var r1 = bits(s);

function nativeint$1(bound) {
return Curry._2(nativeint, $$default, bound);
}
function int64$1(bound) {

@@ -258,3 +251,3 @@ return int64($$default, bound);

function self_init(param) {
return full_init$1(Caml_sys.caml_sys_random_seed(undefined));
return full_init$1(random_seed(undefined));
}

@@ -277,3 +270,2 @@

int32: int32,
nativeint: nativeint,
int64: int64,

@@ -291,3 +283,2 @@ $$float: $$float,

int32$1 as int32,
nativeint$1 as nativeint,
int64$1 as int64,

@@ -294,0 +285,0 @@ $$float$1 as $$float,

@@ -267,3 +267,3 @@ 'use strict';

var b = $$Buffer.create(200);
var progname = initpos < argv.contents.length ? Caml_array.caml_array_get(argv.contents, initpos) : "(?)";
var progname = initpos < argv.contents.length ? Caml_array.get(argv.contents, initpos) : "(?)";
switch (error.TAG | 0) {

@@ -405,3 +405,3 @@ case /* Unknown */0 :

try {
var s = Caml_array.caml_array_get(argv.contents, current.contents);
var s = Caml_array.get(argv.contents, current.contents);
if (s.length >= 1 && Caml_string.get(s, 0) === /* "-" */45) {

@@ -467,3 +467,3 @@ var match;

if ((current.contents + 1 | 0) < argv.contents.length) {
return Caml_array.caml_array_get(argv.contents, current.contents + 1 | 0);
return Caml_array.get(argv.contents, current.contents + 1 | 0);
}

@@ -622,3 +622,3 @@ throw {

while(current.contents < (argv.contents.length - 1 | 0)) {
Curry._1(f$1, Caml_array.caml_array_get(argv.contents, current.contents + 1 | 0));
Curry._1(f$1, Caml_array.get(argv.contents, current.contents + 1 | 0));
consume_arg(undefined);

@@ -625,0 +625,0 @@ };

@@ -305,6 +305,6 @@ 'use strict';

if ((i31 + 2 | 0) < l) {
if (Curry._2(cmp, Caml_array.caml_array_get(a, i31), Caml_array.caml_array_get(a, i31 + 1 | 0)) < 0) {
if (Curry._2(cmp, Caml_array.get(a, i31), Caml_array.get(a, i31 + 1 | 0)) < 0) {
x = i31 + 1 | 0;
}
if (Curry._2(cmp, Caml_array.caml_array_get(a, x), Caml_array.caml_array_get(a, i31 + 2 | 0)) < 0) {
if (Curry._2(cmp, Caml_array.get(a, x), Caml_array.get(a, i31 + 2 | 0)) < 0) {
x = i31 + 2 | 0;

@@ -314,3 +314,3 @@ }

}
if ((i31 + 1 | 0) < l && Curry._2(cmp, Caml_array.caml_array_get(a, i31), Caml_array.caml_array_get(a, i31 + 1 | 0)) < 0) {
if ((i31 + 1 | 0) < l && Curry._2(cmp, Caml_array.get(a, i31), Caml_array.get(a, i31 + 1 | 0)) < 0) {
return i31 + 1 | 0;

@@ -333,6 +333,6 @@ }

var j = maxson(l, i$1);
if (Curry._2(cmp, Caml_array.caml_array_get(a, j), e) <= 0) {
return Caml_array.caml_array_set(a, i$1, e);
if (Curry._2(cmp, Caml_array.get(a, j), e) <= 0) {
return Caml_array.set(a, i$1, e);
}
Caml_array.caml_array_set(a, i$1, Caml_array.caml_array_get(a, j));
Caml_array.set(a, i$1, Caml_array.get(a, j));
_i = j;

@@ -345,3 +345,3 @@ continue ;

if (i$2.RE_EXN_ID === Bottom) {
return Caml_array.caml_array_set(a, i$2._1, e);
return Caml_array.set(a, i$2._1, e);
}

@@ -357,3 +357,3 @@ throw i$2;

var j = maxson(l, i$1);
Caml_array.caml_array_set(a, i$1, Caml_array.caml_array_get(a, j));
Caml_array.set(a, i$1, Caml_array.get(a, j));
_i = j;

@@ -386,8 +386,8 @@ continue ;

}
if (Curry._2(cmp, Caml_array.caml_array_get(a, father), e) >= 0) {
return Caml_array.caml_array_set(a, i, e);
if (Curry._2(cmp, Caml_array.get(a, father), e) >= 0) {
return Caml_array.set(a, i, e);
}
Caml_array.caml_array_set(a, i, Caml_array.caml_array_get(a, father));
Caml_array.set(a, i, Caml_array.get(a, father));
if (father <= 0) {
return Caml_array.caml_array_set(a, 0, e);
return Caml_array.set(a, 0, e);
}

@@ -400,7 +400,7 @@ _i = father;

for(var i = ((l + 1 | 0) / 3 | 0) - 1 | 0; i >= 0; --i){
trickle(l, i, Caml_array.caml_array_get(a, i));
trickle(l, i, Caml_array.get(a, i));
}
for(var i$1 = l - 1 | 0; i$1 >= 2; --i$1){
var e = Caml_array.caml_array_get(a, i$1);
Caml_array.caml_array_set(a, i$1, Caml_array.caml_array_get(a, 0));
var e = Caml_array.get(a, i$1);
Caml_array.set(a, i$1, Caml_array.get(a, 0));
trickleup(bubble(i$1, 0), e);

@@ -411,5 +411,5 @@ }

}
var e$1 = Caml_array.caml_array_get(a, 1);
Caml_array.caml_array_set(a, 1, Caml_array.caml_array_get(a, 0));
return Caml_array.caml_array_set(a, 0, e$1);
var e$1 = Caml_array.get(a, 1);
Caml_array.set(a, 1, Caml_array.get(a, 0));
return Caml_array.set(a, 0, e$1);
}

@@ -422,5 +422,5 @@

var _i1 = src1ofs;
var _s1 = Caml_array.caml_array_get(a, src1ofs);
var _s1 = Caml_array.get(a, src1ofs);
var _i2 = src2ofs;
var _s2 = Caml_array.caml_array_get(src2, src2ofs);
var _s2 = Caml_array.get(src2, src2ofs);
var _d = dstofs;

@@ -434,3 +434,3 @@ while(true) {

if (Curry._2(cmp, s1, s2) <= 0) {
Caml_array.caml_array_set(dst, d, s1);
Caml_array.set(dst, d, s1);
var i1$1 = i1 + 1 | 0;

@@ -441,7 +441,7 @@ if (i1$1 >= src1r) {

_d = d + 1 | 0;
_s1 = Caml_array.caml_array_get(a, i1$1);
_s1 = Caml_array.get(a, i1$1);
_i1 = i1$1;
continue ;
}
Caml_array.caml_array_set(dst, d, s2);
Caml_array.set(dst, d, s2);
var i2$1 = i2 + 1 | 0;

@@ -452,3 +452,3 @@ if (i2$1 >= src2r) {

_d = d + 1 | 0;
_s2 = Caml_array.caml_array_get(src2, i2$1);
_s2 = Caml_array.get(src2, i2$1);
_i2 = i2$1;

@@ -460,9 +460,9 @@ continue ;

for(var i = 0; i < len; ++i){
var e = Caml_array.caml_array_get(a, srcofs + i | 0);
var e = Caml_array.get(a, srcofs + i | 0);
var j = (dstofs + i | 0) - 1 | 0;
while(j >= dstofs && Curry._2(cmp, Caml_array.caml_array_get(dst, j), e) > 0) {
Caml_array.caml_array_set(dst, j + 1 | 0, Caml_array.caml_array_get(dst, j));
while(j >= dstofs && Curry._2(cmp, Caml_array.get(dst, j), e) > 0) {
Caml_array.set(dst, j + 1 | 0, Caml_array.get(dst, j));
j = j - 1 | 0;
};
Caml_array.caml_array_set(dst, j + 1 | 0, e);
Caml_array.set(dst, j + 1 | 0, e);
}

@@ -487,3 +487,3 @@

var l2 = l - l1 | 0;
var t = Caml_array.caml_make_vect(l2, Caml_array.caml_array_get(a, 0));
var t = Caml_array.caml_make_vect(l2, Caml_array.get(a, 0));
sortto(l1, t, 0, l2);

@@ -490,0 +490,0 @@ sortto(0, a, l2, l1);

@@ -17,3 +17,11 @@ 'use strict';

if (!(i >= 0 && i < arr.length)) {
throw new Error("File \"belt_Array.ml\", line 25, characters 6-12");
throw {
RE_EXN_ID: "Assert_failure",
_1: [
"belt_Array.ml",
27,
4
],
Error: new Error()
};
}

@@ -34,3 +42,11 @@ return arr[i];

if (!(i >= 0 && i < arr.length)) {
throw new Error("File \"belt_Array.ml\", line 31, characters 4-10");
throw {
RE_EXN_ID: "Assert_failure",
_1: [
"belt_Array.ml",
33,
2
],
Error: new Error()
};
}

@@ -37,0 +53,0 @@ arr[i] = v;

@@ -7,10 +7,2 @@ 'use strict';

function treeHeight(n) {
if (n !== undefined) {
return n.h;
} else {
return 0;
}
}
function copy(n) {

@@ -34,3 +26,5 @@ if (n !== undefined) {

v: v,
h: hl >= hr ? hl + 1 | 0 : hr + 1 | 0,
h: (
hl >= hr ? hl : hr
) + 1 | 0,
l: l,

@@ -77,3 +71,5 @@ r: r

v: v,
h: hl >= hr ? hl + 1 | 0 : hr + 1 | 0,
h: (
hl >= hr ? hl : hr
) + 1 | 0,
l: l,

@@ -374,5 +370,17 @@ r: r

var r = v.r;
var diff = treeHeight(l) - treeHeight(r) | 0;
var diff = (
l !== undefined ? l.h : 0
) - (
r !== undefined ? r.h : 0
) | 0;
if (!(diff <= 2 && diff >= -2)) {
throw new Error("File \"belt_internalAVLset.ml\", line 288, characters 6-12");
throw {
RE_EXN_ID: "Assert_failure",
_1: [
"belt_internalAVLset.ml",
290,
4
],
Error: new Error()
};
}

@@ -731,3 +739,6 @@ checkInvariantInternal(l);

}
throw new Error("getExn0");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -740,8 +751,11 @@ }

k1.r = k2;
var hlk2 = treeHeight(k2.l);
var hrk2 = treeHeight(k2.r);
var n = k2.l;
var hlk2 = n !== undefined ? n.h : 0;
var n$1 = k2.r;
var hrk2 = n$1 !== undefined ? n$1.h : 0;
k2.h = (
hlk2 > hrk2 ? hlk2 : hrk2
) + 1 | 0;
var hlk1 = treeHeight(k1.l);
var n$2 = k1.l;
var hlk1 = n$2 !== undefined ? n$2.h : 0;
var hk2 = k2.h;

@@ -758,8 +772,11 @@ k1.h = (

k2.l = k1;
var hlk1 = treeHeight(k1.l);
var hrk1 = treeHeight(k1.r);
var n = k1.l;
var hlk1 = n !== undefined ? n.h : 0;
var n$1 = k1.r;
var hrk1 = n$1 !== undefined ? n$1.h : 0;
k1.h = (
hlk1 > hrk1 ? hlk1 : hrk1
) + 1 | 0;
var hrk2 = treeHeight(k2.r);
var n$2 = k2.r;
var hrk2 = n$2 !== undefined ? n$2.h : 0;
var hk1 = k1.h;

@@ -787,4 +804,6 @@ k2.h = (

function heightUpdateMutate(t) {
var hlt = treeHeight(t.l);
var hrt = treeHeight(t.r);
var n = t.l;
var hlt = n !== undefined ? n.h : 0;
var n$1 = t.r;
var hrt = n$1 !== undefined ? n$1.h : 0;
t.h = (

@@ -799,4 +818,4 @@ hlt > hrt ? hlt : hrt

var r = nt.r;
var hl = treeHeight(l);
var hr = treeHeight(r);
var hl = l !== undefined ? l.h : 0;
var hr = r !== undefined ? r.h : 0;
if (hl > (2 + hr | 0)) {

@@ -803,0 +822,0 @@ var ll = l.l;

@@ -590,3 +590,11 @@ 'use strict';

if (!(diff <= 2 && diff >= -2)) {
throw new Error("File \"belt_internalAVLtree.ml\", line 373, characters 6-12");
throw {
RE_EXN_ID: "Assert_failure",
_1: [
"belt_internalAVLtree.ml",
373,
4
],
Error: new Error()
};
}

@@ -893,3 +901,6 @@ checkInvariantInternal(l);

}
throw new Error("getExn0");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -896,0 +907,0 @@ }

@@ -66,3 +66,6 @@ 'use strict';

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -69,0 +72,0 @@ }

@@ -66,3 +66,6 @@ 'use strict';

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -69,0 +72,0 @@ }

@@ -144,3 +144,6 @@ 'use strict';

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -147,0 +150,0 @@ }

@@ -144,3 +144,6 @@ 'use strict';

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -147,0 +150,0 @@ }

@@ -19,3 +19,6 @@ 'use strict';

}
throw new Error("headExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -34,3 +37,6 @@

}
throw new Error("tailExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -69,3 +75,6 @@

if (n < 0) {
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -85,3 +94,6 @@ var _x = x;

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
};

@@ -88,0 +100,0 @@ }

@@ -60,3 +60,6 @@ 'use strict';

}
throw new Error("Belt.Queue.Empty");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -93,3 +96,6 @@

}
throw new Error("Empty");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -96,0 +102,0 @@

@@ -21,3 +21,6 @@ 'use strict';

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -24,0 +27,0 @@

@@ -9,3 +9,6 @@ 'use strict';

}
throw new Error("getExn");
throw {
RE_EXN_ID: "Not_found",
Error: new Error()
};
}

@@ -12,0 +15,0 @@

@@ -572,3 +572,3 @@ 'use strict';

var compare = Caml_primitive.caml_bytes_compare;
var compare = Caml_bytes.caml_bytes_compare;

@@ -591,3 +591,3 @@ function uppercase(s) {

var equal = Caml_primitive.caml_bytes_equal;
var equal = Caml_bytes.caml_bytes_equal;

@@ -594,0 +594,0 @@ var unsafe_to_string = Caml_bytes.bytes_to_string;

@@ -58,3 +58,3 @@ 'use strict';

function caml_array_set(xs, index, newval) {
function set(xs, index, newval) {
if (index < 0 || index >= xs.length) {

@@ -71,3 +71,3 @@ throw {

function caml_array_get(xs, index) {
function get(xs, index) {
if (index < 0 || index >= xs.length) {

@@ -122,4 +122,4 @@ throw {

exports.caml_array_blit = caml_array_blit;
exports.caml_array_get = caml_array_get;
exports.caml_array_set = caml_array_set;
exports.get = get;
exports.set = set;
/* No side effect */
'use strict';
function set(s, i, ch) {
if (i < 0 || i >= s.length) {
throw {
RE_EXN_ID: "Invalid_argument",
_1: "index out of bounds",
Error: new Error()
};
}
s[i] = ch;
}
function get(s, i) {

@@ -93,3 +105,5 @@ if (i < 0 || i >= s.length) {

var tmp_bytes = new Array(next);
caml_blit_bytes(a, offset, tmp_bytes, 0, next);
for(var k = 0; k < next; ++k){
tmp_bytes[k] = a[k + offset | 0];
}
s = s + String.fromCharCode.apply(null, tmp_bytes);

@@ -131,5 +145,76 @@ s_len = s_len - next | 0;

function caml_bytes_compare_aux(s1, s2, _off, len, def) {
while(true) {
var off = _off;
if (off >= len) {
return def;
}
var a = s1[off];
var b = s2[off];
if (a > b) {
return 1;
}
if (a < b) {
return -1;
}
_off = off + 1 | 0;
continue ;
};
}
function caml_bytes_compare(s1, s2) {
var len1 = s1.length;
var len2 = s2.length;
if (len1 === len2) {
return caml_bytes_compare_aux(s1, s2, 0, len1, 0);
} else if (len1 < len2) {
return caml_bytes_compare_aux(s1, s2, 0, len1, -1);
} else {
return caml_bytes_compare_aux(s1, s2, 0, len2, 1);
}
}
function caml_bytes_equal(s1, s2) {
var len1 = s1.length;
var len2 = s2.length;
if (len1 === len2) {
var _off = 0;
while(true) {
var off = _off;
if (off === len1) {
return true;
}
var a = s1[off];
var b = s2[off];
if (a !== b) {
return false;
}
_off = off + 1 | 0;
continue ;
};
} else {
return false;
}
}
function caml_bytes_greaterthan(s1, s2) {
return caml_bytes_compare(s1, s2) > 0;
}
function caml_bytes_greaterequal(s1, s2) {
return caml_bytes_compare(s1, s2) >= 0;
}
function caml_bytes_lessthan(s1, s2) {
return caml_bytes_compare(s1, s2) < 0;
}
function caml_bytes_lessequal(s1, s2) {
return caml_bytes_compare(s1, s2) <= 0;
}
exports.caml_create_bytes = caml_create_bytes;
exports.caml_fill_bytes = caml_fill_bytes;
exports.get = get;
exports.set = set;
exports.bytes_to_string = bytes_to_string;

@@ -139,2 +224,8 @@ exports.caml_blit_bytes = caml_blit_bytes;

exports.bytes_of_string = bytes_of_string;
exports.caml_bytes_compare = caml_bytes_compare;
exports.caml_bytes_greaterthan = caml_bytes_greaterthan;
exports.caml_bytes_greaterequal = caml_bytes_greaterequal;
exports.caml_bytes_lessthan = caml_bytes_lessthan;
exports.caml_bytes_lessequal = caml_bytes_lessequal;
exports.caml_bytes_equal = caml_bytes_equal;
/* No side effect */

@@ -52,56 +52,2 @@ 'use strict';

function caml_bytes_compare_aux(s1, s2, _off, len, def) {
while(true) {
var off = _off;
if (off >= len) {
return def;
}
var a = s1[off];
var b = s2[off];
if (a > b) {
return 1;
}
if (a < b) {
return -1;
}
_off = off + 1 | 0;
continue ;
};
}
function caml_bytes_compare(s1, s2) {
var len1 = s1.length;
var len2 = s2.length;
if (len1 === len2) {
return caml_bytes_compare_aux(s1, s2, 0, len1, 0);
} else if (len1 < len2) {
return caml_bytes_compare_aux(s1, s2, 0, len1, -1);
} else {
return caml_bytes_compare_aux(s1, s2, 0, len2, 1);
}
}
function caml_bytes_equal(s1, s2) {
var len1 = s1.length;
var len2 = s2.length;
if (len1 === len2) {
var _off = 0;
while(true) {
var off = _off;
if (off === len1) {
return true;
}
var a = s1[off];
var b = s2[off];
if (a !== b) {
return false;
}
_off = off + 1 | 0;
continue ;
};
} else {
return false;
}
}
function caml_bool_min(x, y) {

@@ -207,4 +153,2 @@ if (x) {

exports.caml_bytes_compare = caml_bytes_compare;
exports.caml_bytes_equal = caml_bytes_equal;
exports.caml_int_compare = caml_int_compare;

@@ -211,0 +155,0 @@ exports.caml_bool_compare = caml_bool_compare;

@@ -38,6 +38,2 @@ 'use strict';

function caml_sys_random_seed(param) {
return [((Date.now() | 0) ^ 4294967295) * Math.random() | 0];
}
function caml_sys_system_command(_cmd) {

@@ -101,3 +97,2 @@ return 127;

exports.os_type = os_type;
exports.caml_sys_random_seed = caml_sys_random_seed;
exports.caml_sys_system_command = caml_sys_system_command;

@@ -104,0 +99,0 @@ exports.caml_sys_getcwd = caml_sys_getcwd;

@@ -72,6 +72,6 @@ 'use strict';

var methods = Caml_array.caml_make_vect((len << 1) + 2 | 0, /* DummyA */0);
Caml_array.caml_array_set(methods, 0, len);
Caml_array.caml_array_set(methods, 1, ((fit_size(len) << 5) / 8 | 0) - 1 | 0);
Caml_array.set(methods, 0, len);
Caml_array.set(methods, 1, ((fit_size(len) << 5) / 8 | 0) - 1 | 0);
for(var i = 0; i < len; ++i){
Caml_array.caml_array_set(methods, (i << 1) + 3 | 0, Caml_array.caml_array_get(pub_labels, i));
Caml_array.set(methods, (i << 1) + 3 | 0, Caml_array.get(pub_labels, i));
}

@@ -136,3 +136,3 @@ return {

resize(table, label + 1 | 0);
return Caml_array.caml_array_set(table.methods, label, element);
return Caml_array.set(table.methods, label, element);
} else {

@@ -157,3 +157,3 @@ table.hidden_meths = {

if (exn.RE_EXN_ID === "Not_found") {
return Caml_array.caml_array_get(table.methods, label);
return Caml_array.get(table.methods, label);
}

@@ -285,6 +285,6 @@ throw exn;

for(var i = 0; i < nmeths; ++i){
Caml_array.caml_array_set(res, i, get_method_label(table, Caml_array.caml_array_get(meths$1, i)));
Caml_array.set(res, i, get_method_label(table, Caml_array.get(meths$1, i)));
}
for(var i$1 = 0; i$1 < nvals; ++i$1){
Caml_array.caml_array_set(res, i$1 + nmeths | 0, new_variable(table, Caml_array.caml_array_get(vals, i$1)));
Caml_array.set(res, i$1 + nmeths | 0, new_variable(table, Caml_array.get(vals, i$1)));
}

@@ -330,3 +330,3 @@ return res;

table.initializers = List.rev(table.initializers);
return resize(table, 3 + ((Caml_array.caml_array_get(table.methods, 1) << 4) / 32 | 0) | 0);
return resize(table, 3 + ((Caml_array.get(table.methods, 1) << 4) / 32 | 0) | 0);
}

@@ -517,3 +517,3 @@

r = /* Cons */{
key: Caml_array.caml_array_get(keys, i),
key: Caml_array.get(keys, i),
data: r,

@@ -531,3 +531,3 @@ next: /* Empty */0

}
var key = Caml_array.caml_array_get(keys, i);
var key = Caml_array.get(keys, i);
var _tables = tables;

@@ -577,4 +577,4 @@ while(true) {

var n = new_method(table);
var n$1 = n % 2 === 0 || n > (2 + ((Caml_array.caml_array_get(table.methods, 1) << 4) / 32 | 0) | 0) ? n : new_method(table);
Caml_array.caml_array_set(table.methods, n$1, 0);
var n$1 = n % 2 === 0 || n > (2 + ((Caml_array.get(table.methods, 1) << 4) / 32 | 0) | 0) ? n : new_method(table);
Caml_array.set(table.methods, n$1, 0);
return n$1;

@@ -586,3 +586,3 @@ }

i.contents = i.contents + 1 | 0;
return Caml_array.caml_array_get(arr, i.contents);
return Caml_array.get(arr, i.contents);
};

@@ -764,3 +764,3 @@ var clo = next(undefined);

while(i.contents < len) {
var label = Caml_array.caml_array_get(methods, i.contents);
var label = Caml_array.get(methods, i.contents);
var clo = method_impl(table, i, methods);

@@ -767,0 +767,0 @@ set_method(table, label, clo);

@@ -120,3 +120,3 @@ 'use strict';

for(var i = 0; i <= 15; ++i){
result[i] = Char.chr($$byte((i << 1)));
Caml_bytes.set(result, i, Char.chr($$byte((i << 1))));
}

@@ -123,0 +123,0 @@ return Caml_bytes.bytes_to_string(result);

@@ -35,3 +35,3 @@ 'use strict';

}
buffer.contents[bufpos.contents] = c;
Caml_bytes.set(buffer.contents, bufpos.contents, c);
bufpos.contents = bufpos.contents + 1 | 0;

@@ -38,0 +38,0 @@

@@ -81,3 +81,3 @@ 'use strict';

for(var i = 0; i < len; ++i){
Caml_array.caml_array_set(h.data, i, /* Empty */0);
Caml_array.set(h.data, i, /* Empty */0);
}

@@ -186,9 +186,9 @@

var nidx = Curry._2(indexfun, h, key);
var tail = Caml_array.caml_array_get(ndata_tail, nidx);
var tail = Caml_array.get(ndata_tail, nidx);
if (tail) {
tail.next = cell$1;
} else {
Caml_array.caml_array_set(ndata, nidx, cell$1);
Caml_array.set(ndata, nidx, cell$1);
}
Caml_array.caml_array_set(ndata_tail, nidx, cell$1);
Caml_array.set(ndata_tail, nidx, cell$1);
_cell = next;

@@ -199,3 +199,3 @@ continue ;

for(var i = 0; i < osize; ++i){
insert_bucket(Caml_array.caml_array_get(odata, i));
insert_bucket(Caml_array.get(odata, i));
}

@@ -206,3 +206,3 @@ if (!inplace) {

for(var i$1 = 0; i$1 < nsize; ++i$1){
var tail = Caml_array.caml_array_get(ndata_tail, i$1);
var tail = Caml_array.get(ndata_tail, i$1);
if (tail) {

@@ -225,5 +225,5 @@ tail.next = /* Empty */0;

data: data,
next: Caml_array.caml_array_get(h.data, i)
next: Caml_array.get(h.data, i)
};
Caml_array.caml_array_set(h.data, i, bucket);
Caml_array.set(h.data, i, bucket);
h.size = h.size + 1 | 0;

@@ -239,3 +239,3 @@ if (h.size > (h.data.length << 1)) {

var _prec = /* Empty */0;
var _c = Caml_array.caml_array_get(h.data, i);
var _c = Caml_array.get(h.data, i);
while(true) {

@@ -255,3 +255,3 @@ var c = _c;

} else {
return Caml_array.caml_array_set(h.data, i, next);
return Caml_array.set(h.data, i, next);
}

@@ -266,3 +266,3 @@ }

function find(h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (match) {

@@ -326,3 +326,3 @@ var k1 = match.key;

function find_opt(h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (!match) {

@@ -393,3 +393,3 @@ return ;

};
return find_in_bucket(Caml_array.caml_array_get(h.data, key_index(h, key)));
return find_in_bucket(Caml_array.get(h.data, key_index(h, key)));
}

@@ -417,5 +417,5 @@

var i = key_index(h, key);
var l = Caml_array.caml_array_get(h.data, i);
var l = Caml_array.get(h.data, i);
if (replace_bucket(key, data, l)) {
Caml_array.caml_array_set(h.data, i, /* Cons */{
Caml_array.set(h.data, i, /* Cons */{
key: key,

@@ -436,3 +436,3 @@ data: data,

function mem(h, key) {
var _param = Caml_array.caml_array_get(h.data, key_index(h, key));
var _param = Caml_array.get(h.data, key_index(h, key));
while(true) {

@@ -475,3 +475,3 @@ var param = _param;

for(var i = 0 ,i_finish = d.length; i < i_finish; ++i){
do_bucket(Caml_array.caml_array_get(d, i));
do_bucket(Caml_array.get(d, i));
}

@@ -502,3 +502,3 @@ if (!old_trav) {

} else {
return Caml_array.caml_array_set(h.data, i, /* Empty */0);
return Caml_array.set(h.data, i, /* Empty */0);
}

@@ -514,3 +514,3 @@ }

} else {
Caml_array.caml_array_set(h.data, i, slot);
Caml_array.set(h.data, i, slot);
}

@@ -536,3 +536,3 @@ slot.data = Caml_option.valFromOption(data$1);

for(var i = 0 ,i_finish = d.length; i < i_finish; ++i){
filter_map_inplace_bucket(f, h, i, /* Empty */0, Caml_array.caml_array_get(h.data, i));
filter_map_inplace_bucket(f, h, i, /* Empty */0, Caml_array.get(h.data, i));
}

@@ -574,3 +574,3 @@ return ;

for(var i = 0 ,i_finish = d.length; i < i_finish; ++i){
accu = do_bucket(Caml_array.caml_array_get(d, i), accu);
accu = do_bucket(Caml_array.get(d, i), accu);
}

@@ -612,3 +612,3 @@ if (!old_trav) {

var l = bucket_length(0, b);
return Caml_array.caml_array_set(histo, l, Caml_array.caml_array_get(histo, l) + 1 | 0);
return Caml_array.set(histo, l, Caml_array.get(histo, l) + 1 | 0);
}), h.data);

@@ -632,5 +632,5 @@ return {

data: data,
next: Caml_array.caml_array_get(h.data, i)
next: Caml_array.get(h.data, i)
};
Caml_array.caml_array_set(h.data, i, bucket);
Caml_array.set(h.data, i, bucket);
h.size = h.size + 1 | 0;

@@ -645,3 +645,3 @@ if (h.size > (h.data.length << 1)) {

var _prec = /* Empty */0;
var _c = Caml_array.caml_array_get(h.data, i);
var _c = Caml_array.get(h.data, i);
while(true) {

@@ -661,3 +661,3 @@ var c = _c;

} else {
return Caml_array.caml_array_set(h.data, i, next);
return Caml_array.set(h.data, i, next);
}

@@ -671,3 +671,3 @@ }

var find = function (h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (match) {

@@ -730,3 +730,3 @@ var k1 = match.key;

var find_opt = function (h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (!match) {

@@ -796,3 +796,3 @@ return ;

};
return find_in_bucket(Caml_array.caml_array_get(h.data, key_index(h, key)));
return find_in_bucket(Caml_array.get(h.data, key_index(h, key)));
};

@@ -818,5 +818,5 @@ var replace_bucket = function (key, data, _slot) {

var i = key_index(h, key);
var l = Caml_array.caml_array_get(h.data, i);
var l = Caml_array.get(h.data, i);
if (replace_bucket(key, data, l)) {
Caml_array.caml_array_set(h.data, i, /* Cons */{
Caml_array.set(h.data, i, /* Cons */{
key: key,

@@ -836,3 +836,3 @@ data: data,

var mem = function (h, key) {
var _param = Caml_array.caml_array_get(h.data, key_index(h, key));
var _param = Caml_array.get(h.data, key_index(h, key));
while(true) {

@@ -882,5 +882,5 @@ var param = _param;

data: data,
next: Caml_array.caml_array_get(h.data, i)
next: Caml_array.get(h.data, i)
};
Caml_array.caml_array_set(h.data, i, bucket);
Caml_array.set(h.data, i, bucket);
h.size = h.size + 1 | 0;

@@ -895,3 +895,3 @@ if (h.size > (h.data.length << 1)) {

var _prec = /* Empty */0;
var _c = Caml_array.caml_array_get(h.data, i);
var _c = Caml_array.get(h.data, i);
while(true) {

@@ -911,3 +911,3 @@ var c = _c;

} else {
return Caml_array.caml_array_set(h.data, i, next);
return Caml_array.set(h.data, i, next);
}

@@ -921,3 +921,3 @@ }

var find = function (h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (match) {

@@ -980,3 +980,3 @@ var k1 = match.key;

var find_opt = function (h, key) {
var match = Caml_array.caml_array_get(h.data, key_index(h, key));
var match = Caml_array.get(h.data, key_index(h, key));
if (!match) {

@@ -1046,3 +1046,3 @@ return ;

};
return find_in_bucket(Caml_array.caml_array_get(h.data, key_index(h, key)));
return find_in_bucket(Caml_array.get(h.data, key_index(h, key)));
};

@@ -1068,5 +1068,5 @@ var replace_bucket = function (key, data, _slot) {

var i = key_index(h, key);
var l = Caml_array.caml_array_get(h.data, i);
var l = Caml_array.get(h.data, i);
if (replace_bucket(key, data, l)) {
Caml_array.caml_array_set(h.data, i, /* Cons */{
Caml_array.set(h.data, i, /* Cons */{
key: key,

@@ -1086,3 +1086,3 @@ data: data,

var mem = function (h, key) {
var _param = Caml_array.caml_array_get(h.data, key_index(h, key));
var _param = Caml_array.get(h.data, key_index(h, key));
while(true) {

@@ -1089,0 +1089,0 @@ var param = _param;

@@ -77,5 +77,5 @@ 'use strict';

for(var i = 0 ,i_finish = t.length; i < i_finish; ++i){
var v = Caml_array.caml_array_get(t, i);
var v = Caml_array.get(t, i);
if (v >= 0) {
Caml_array.caml_array_set(t, i, v - s | 0);
Caml_array.set(t, i, v - s | 0);
}

@@ -82,0 +82,0 @@

@@ -112,3 +112,3 @@ 'use strict';

/* Semantic_action_computed */4,
Curry._1(Caml_array.caml_array_get(tables.actions, env.rule_number), env)
Curry._1(Caml_array.get(tables.actions, env.rule_number), env)
];

@@ -154,5 +154,5 @@ }

if (typeof tok !== "number") {
return Caml_array.caml_array_get(tables.transl_block, tok.TAG | 0) === curr_char;
return Caml_array.get(tables.transl_block, tok.TAG | 0) === curr_char;
} else {
return Caml_array.caml_array_get(tables.transl_const, tok) === curr_char;
return Caml_array.get(tables.transl_const, tok) === curr_char;
}

@@ -165,3 +165,3 @@ });

function peek_val(env, n) {
return Caml_array.caml_array_get(env.v_stack, env.asp - n | 0);
return Caml_array.get(env.v_stack, env.asp - n | 0);
}

@@ -174,6 +174,6 @@

if (i <= 0) {
return Caml_array.caml_array_get(env.symb_end_stack, env.asp);
return Caml_array.get(env.symb_end_stack, env.asp);
}
var st = Caml_array.caml_array_get(env.symb_start_stack, (env.asp - i | 0) + 1 | 0);
var en = Caml_array.caml_array_get(env.symb_end_stack, (env.asp - i | 0) + 1 | 0);
var st = Caml_array.get(env.symb_start_stack, (env.asp - i | 0) + 1 | 0);
var en = Caml_array.get(env.symb_end_stack, (env.asp - i | 0) + 1 | 0);
if (Caml_obj.caml_notequal(st, en)) {

@@ -188,11 +188,11 @@ return st;

function symbol_end_pos(param) {
return Caml_array.caml_array_get(env.symb_end_stack, env.asp);
return Caml_array.get(env.symb_end_stack, env.asp);
}
function rhs_start_pos(n) {
return Caml_array.caml_array_get(env.symb_start_stack, env.asp - (env.rule_len - n | 0) | 0);
return Caml_array.get(env.symb_start_stack, env.asp - (env.rule_len - n | 0) | 0);
}
function rhs_end_pos(n) {
return Caml_array.caml_array_get(env.symb_end_stack, env.asp - (env.rule_len - n | 0) | 0);
return Caml_array.get(env.symb_end_stack, env.asp - (env.rule_len - n | 0) | 0);
}

@@ -199,0 +199,0 @@

@@ -297,3 +297,3 @@ 'use strict';

for(var i = 0 ,i_finish = backtrace.length; i < i_finish; ++i){
var str = format_backtrace_slot(i, Caml_array.caml_array_get(backtrace, i));
var str = format_backtrace_slot(i, Caml_array.get(backtrace, i));
if (str !== undefined) {

@@ -329,3 +329,3 @@ Curry._1(Printf.fprintf(outchan, /* Format */{

for(var i = 0 ,i_finish = backtrace.length; i < i_finish; ++i){
var str = format_backtrace_slot(i, Caml_array.caml_array_get(backtrace, i));
var str = format_backtrace_slot(i, Caml_array.get(backtrace, i));
if (str !== undefined) {

@@ -393,3 +393,3 @@ Curry._1(Printf.bprintf(b, /* Format */{

}
if (usable_slot(Caml_array.caml_array_get(backtrace, i))) {
if (usable_slot(Caml_array.get(backtrace, i))) {
return true;

@@ -396,0 +396,0 @@ }

'use strict';
var $$Array = require("./array.js");
var Curry = require("./curry.js");
var Int32 = require("./int32.js");
var Int64 = require("./int64.js");
var Digest = require("./digest.js");
var Caml_sys = require("./caml_sys.js");
var Nativeint = require("./nativeint.js");
var Caml_array = require("./caml_array.js");

@@ -14,2 +11,6 @@ var Caml_int64 = require("./caml_int64.js");

function random_seed(param) {
return [(Math.floor(Math.random()*0x7fffffff))];
}
function assign(st1, st2) {

@@ -31,3 +32,3 @@ $$Array.blit(st2.st, 0, st1.st, 0, 55);

for(var i = 0; i <= 54; ++i){
Caml_array.caml_array_set(s.st, i, i);
Caml_array.set(s.st, i, i);
}

@@ -40,4 +41,4 @@ var accu = "x";

var k = i$1 % l;
accu = combine(accu, Caml_array.caml_array_get(seed$1, k));
Caml_array.caml_array_set(s.st, j, (Caml_array.caml_array_get(s.st, j) ^ extract(accu)) & 1073741823);
accu = combine(accu, Caml_array.get(seed$1, k));
Caml_array.set(s.st, j, (Caml_array.get(s.st, j) ^ extract(accu)) & 1073741823);
}

@@ -58,3 +59,3 @@ s.idx = 0;

function make_self_init(param) {
return make(Caml_sys.caml_sys_random_seed(undefined));
return make(random_seed(undefined));
}

@@ -73,6 +74,6 @@

s.idx = (s.idx + 1 | 0) % 55;
var curval = Caml_array.caml_array_get(s.st, s.idx);
var newval = Caml_array.caml_array_get(s.st, (s.idx + 24 | 0) % 55) + (curval ^ (curval >>> 25) & 31) | 0;
var curval = Caml_array.get(s.st, s.idx);
var newval = Caml_array.get(s.st, (s.idx + 24 | 0) % 55) + (curval ^ (curval >>> 25) & 31) | 0;
var newval30 = newval & 1073741823;
Caml_array.caml_array_set(s.st, s.idx, newval30);
Caml_array.set(s.st, s.idx, newval30);
return newval30;

@@ -140,6 +141,2 @@ }

var nativeint = Nativeint.size === 32 ? int32 : (function (s, bound) {
return Caml_int64.to_int32(int64(s, Caml_int64.of_int32(bound)));
});
function rawfloat(s) {

@@ -232,6 +229,2 @@ var r1 = bits(s);

function nativeint$1(bound) {
return Curry._2(nativeint, $$default, bound);
}
function int64$1(bound) {

@@ -258,3 +251,3 @@ return int64($$default, bound);

function self_init(param) {
return full_init$1(Caml_sys.caml_sys_random_seed(undefined));
return full_init$1(random_seed(undefined));
}

@@ -277,3 +270,2 @@

int32: int32,
nativeint: nativeint,
int64: int64,

@@ -290,3 +282,2 @@ $$float: $$float,

exports.int32 = int32$1;
exports.nativeint = nativeint$1;
exports.int64 = int64$1;

@@ -293,0 +284,0 @@ exports.$$float = $$float$1;

@@ -21,11 +21,11 @@ {

"name": "bs-platform",
"version": "8.2.0",
"description": "bucklescript compiler, ocaml standard libary by bucklescript and its required runtime support",
"version": "8.3.0-dev.1",
"description": "ReScript compiler, OCaml standard libary by ReScript and its required runtime support",
"repository": {
"type": "git",
"url": "git+https://github.com/bucklescript/bucklescript.git"
"url": "git+https://github.com/rescript-lang/rescript-compiler.git"
},
"keywords": [
"ocaml",
"bucklescript",
"rescript",
"stdlib",

@@ -45,5 +45,5 @@ "functional programming"

"bugs": {
"url": "https://github.com/bucklescript/bucklescript/issues"
"url": "https://github.com/rescript-lang/rescript-compiler/issues"
},
"homepage": "https://github.com/bucklescript/bucklescript#readme"
"homepage": "https://github.com/rescript-lang/rescript-compiler#readme"
}

@@ -1,10 +0,10 @@

# [BuckleScript](https://bucklescript.github.io)
# [ReScript](https://rescript-lang.org)
> A JavaScript backend for [OCaml](https://ocaml.org/) focused on smooth integration and clean generated code.
The compiler for ReScript.
[![NPM](https://nodei.co/npm/bs-platform.png?compact=true)](https://nodei.co/npm/bs-platform/) [![Build Status](https://travis-ci.org/BuckleScript/bucklescript.svg?branch=master)](https://travis-ci.org/BuckleScript/bucklescript)
[![npm version](https://badge.fury.io/js/bs-platform.svg)](https://badge.fury.io/js/bs-platform) ![Build Status](https://circleci.com/gh/rescript-lang/rescript-compiler.svg?style=svg)
## Documentation
Please see the [documentation site](https://bucklescript.github.io).
Please see the [documentation site](https://rescript-lang.org).

@@ -18,6 +18,6 @@ ## Contributing

* Thanks to the [OCaml](https://ocaml.org) team, obviously, without such a beautiful yet practical language, this backend would not exist
* Thanks to [ninja-build](https://ninja-build.org), BuckleScript also comes with a blazing fast build tool on top of it, `ninja` is a truly [well engineered](http://aosabook.org/en/posa/ninja.html) scalable build tool
* Thanks to [ninja-build](https://ninja-build.org), ReScript also comes with a blazing fast build tool on top of it, `ninja` is a truly [well engineered](http://aosabook.org/en/posa/ninja.html) scalable build tool
* Thanks to [Bloomberg](https://www.techatbloomberg.com) and [Facebook](https://github.com/facebook/). This project began at Bloomberg and was published in 2016; without the support of Bloomberg, it would not have happened. This project's funded by Facebook since July/2017
## [Roadmap](https://github.com/bucklescript/bucklescript/wiki)
## [Roadmap](https://github.com/rescript-lang/rescript-compiler/wiki)

@@ -28,3 +28,3 @@ ## Licensing

The [`ocaml`](ocaml) directory contains the official [OCaml](https://ocaml.org) compiler (version 4.02.3).
The [`ocaml`](ocaml) directory contains the official [OCaml](https://ocaml.org) compiler (version 4.06.1).
Refer to its copyright and license notices for information about its licensing.

@@ -35,7 +35,7 @@

BuckleScript builds on parts of [js_of_ocaml](https://github.com/ocsigen/js_of_ocaml):
ReScript builds on parts of [js_of_ocaml](https://github.com/ocsigen/js_of_ocaml):
* [`jscomp/core/js_dump.ml`](jscomp/core/js_dump.ml) (pretty printer)
BuckleScript builds on parts of OCaml:
ReScript builds on parts of OCaml:

@@ -50,3 +50,3 @@ * [`jscomp/core/lam_pass_exits.ml`](jscomp/core/lam_pass_exits.ml)

`jscomp/main/js_main.ml` is adapted from [`ocaml/driver/main.ml`](ocaml/driver/main.ml). It is the main entry
`jscomp/main/js_main.ml` is adapted from [`ocaml/driver/main.ml`](ocaml/driver/main.ml). It is the main entry
point of the underlying compiler.

@@ -56,4 +56,3 @@

`jscomp/stdlib-*` is copied from [`ocaml/stdlib`](ocaml/stdlib). It is compiled to JavaScript and
included with BuckleScript.
`jscomp/stdlib-*` is copied from [`ocaml/stdlib`](ocaml/stdlib). It is compiled to JavaScript and included with ReScript.

@@ -64,5 +63,5 @@ * [`jscomp/test`](jscomp/test)

BuckleScript unit test builds on parts of [OUnit](http://ounit.forge.ocamlcore.org/)
ReScript unit test builds on parts of [OUnit](http://ounit.forge.ocamlcore.org/)
* [`jscomp/ounit`](jscomp/ounit) is adapted from ounit, the unit test
utilities are only used for dev purpose, they are not required for distribution

@@ -47,2 +47,3 @@ #!/usr/bin/env node

function hasCamlp4() {
// console.log(`camlp4of ${process.env.PATH}`)
try {

@@ -876,3 +877,3 @@ console.log(cp.execSync(`camlp4of -v`, { encoding: "ascii" }));

var templateRuntimeRules = `
bsc_no_open_flags = ${commonBsFlags} -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:lib/js -bs-package-output es6:lib/es6 -nopervasives -unsafe -w +50 -warn-error A
bsc_no_open_flags = ${commonBsFlags} -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:lib/js -bs-package-output es6:lib/es6 -nopervasives -unsafe -w +50
bsc_flags = $bsc_no_open_flags -open Bs_stdlib_mini

@@ -976,3 +977,3 @@ ${ruleCC(ninjaCwd)}

var templateOthersRules = `
bsc_flags = ${commonBsFlags} -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:lib/js -bs-package-output es6:lib/es6 -nopervasives -unsafe -w +50 -warn-error A -open Bs_stdlib_mini -I ./runtime
bsc_flags = ${commonBsFlags} -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:lib/js -bs-package-output es6:lib/es6 -nopervasives -unsafe -w +50 -open Bs_stdlib_mini -I ./runtime
${ruleCC(ninjaCwd)}

@@ -1104,3 +1105,3 @@ ${

// deprecations diabled due to string_of_float
var warnings = "-w -9-3-106 -warn-error A";
var warnings = "-w -9-3-106";
var templateStdlibRules = `

@@ -1241,3 +1242,3 @@ ${bsc_flags} = ${commonBsFlags} -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:lib/js -bs-package-output es6:lib/es6 ${warnings} -I runtime -I others

var templateTestRules = `
bsc_flags = -absname -bs-no-version-header -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:jscomp/test -w -3-6-26-27-29-30-32..40-44-45-52-60-9-106+104 -warn-error A -I runtime -I $stdlib -I others
bsc_flags = -absname -bs-no-version-header -bs-cross-module-opt -bs-package-name bs-platform -bs-package-output commonjs:jscomp/test -w -3-6-26-27-29-30-32..40-44-45-52-60-9-106+104 -I runtime -I $stdlib -I others
${ruleCC(ninjaCwd)}

@@ -1618,3 +1619,3 @@

command = BS_NATIVE=${!!process.env
.BS_NATIVE} $ocamlopt -safe-string -I +compiler-libs -opaque ${includes} -g -linscan -w A-4-9-40..42-30-48-50 -warn-error A -absname -c $in
.BS_NATIVE} $ocamlopt -safe-string -I +compiler-libs -opaque ${includes} -g -linscan -w A-4-9-40..42-30-48-50 -absname -c $in
description = $out : $in

@@ -1621,0 +1622,0 @@ rule archive

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc