anchor.diff:          abstract values: unit -> IterableIterator<float>
           [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
   
  -    and [<AllowNullLiteral>] Int8ArrayConstructor =
  -        abstract prototype: Int8Array with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Int8Array
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Int8Array
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Int8Array
  -        abstract ``of``: [<ParamArray>] items: float[] -> Int8Array
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Int8Array
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Int8Array
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Int8Array
  -
  -    and [<AllowNullLiteral>] Uint8Array =
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        abstract buffer: ArrayBuffer with get, set
  -        abstract byteLength: float with get, set
  -        abstract byteOffset: float with get, set
  -        abstract length: float with get, set
  -        [<Emit("$0[$1]{{=$2}}")>] abstract Item: index: int -> float with get, set
  -        [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  -        abstract copyWithin: target: float * start: float * ?``end``: float -> Uint8Array
  -        abstract every: callbackfn: (float->float->Uint8Array->bool) * ?thisArg: obj -> bool
  -        abstract fill: value: float * ?start: float * ?``end``: float -> Uint8Array
  -        abstract filter: callbackfn: (float->float->Uint8Array->bool) * ?thisArg: obj -> Uint8Array
  -        abstract find: predicate: (float->float->ResizeArray<float>->bool) * ?thisArg: obj -> float
  -        abstract findIndex: predicate: (float->bool) * ?thisArg: obj -> float
  -        abstract forEach: callbackfn: (float->float->Uint8Array->unit) * ?thisArg: obj -> unit
  -        abstract indexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract join: ?separator: string -> string
  -        abstract lastIndexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract map: callbackfn: (float->float->Uint8Array->float) * ?thisArg: obj -> Uint8Array
  -        abstract reduce: callbackfn: (float->float->float->Uint8Array->float) * ?initialValue: float -> float
  -        abstract reduce: callbackfn: ('U->float->float->Uint8Array->'U) * initialValue: 'U -> 'U
  -        abstract reduceRight: callbackfn: (float->float->float->Uint8Array->float) * ?initialValue: float -> float
  -        abstract reduceRight: callbackfn: ('U->float->float->Uint8Array->'U) * initialValue: 'U -> 'U
  -        abstract reverse: unit -> Uint8Array
  -        abstract set: index: float * value: float -> unit
  -        abstract set: array: ArrayLike<float> * ?offset: float -> unit
  -        abstract slice: ?start: float * ?``end``: float -> Uint8Array
  -        abstract some: callbackfn: (float->float->Uint8Array->bool) * ?thisArg: obj -> bool
  -        abstract sort: ?compareFn: (float->float->float) -> Uint8Array
  -        abstract subarray: ``begin``: float * ?``end``: float -> Uint8Array
  -        abstract toLocaleString: unit -> string
  -        abstract toString: unit -> string
  -        abstract entries: unit -> IterableIterator<float * float>
  -        abstract keys: unit -> IterableIterator<float>
  -        abstract values: unit -> IterableIterator<float>
  -        [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
  -
  -    and [<AllowNullLiteral>] Uint8ArrayConstructor =
  -        abstract prototype: Uint8Array with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Uint8Array
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Uint8Array
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Uint8Array
  -        abstract ``of``: [<ParamArray>] items: float[] -> Uint8Array
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Uint8Array
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Uint8Array
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Uint8Array
  -
  -    and [<AllowNullLiteral>] Uint8ClampedArray =
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        abstract buffer: ArrayBuffer with get, set
  -        abstract byteLength: float with get, set
  -        abstract byteOffset: float with get, set
  -        abstract length: float with get, set
  -        [<Emit("$0[$1]{{=$2}}")>] abstract Item: index: int -> float with get, set
  -        [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  -        abstract copyWithin: target: float * start: float * ?``end``: float -> Uint8ClampedArray
  -        abstract every: callbackfn: (float->float->Uint8ClampedArray->bool) * ?thisArg: obj -> bool
  -        abstract fill: value: float * ?start: float * ?``end``: float -> Uint8ClampedArray
  -        abstract filter: callbackfn: (float->float->Uint8ClampedArray->bool) * ?thisArg: obj -> Uint8ClampedArray
  -        abstract find: predicate: (float->float->ResizeArray<float>->bool) * ?thisArg: obj -> float
  -        abstract findIndex: predicate: (float->bool) * ?thisArg: obj -> float
  -        abstract forEach: callbackfn: (float->float->Uint8ClampedArray->unit) * ?thisArg: obj -> unit
  -        abstract indexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract join: ?separator: string -> string
  -        abstract lastIndexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract map: callbackfn: (float->float->Uint8ClampedArray->float) * ?thisArg: obj -> Uint8ClampedArray
  -        abstract reduce: callbackfn: (float->float->float->Uint8ClampedArray->float) * ?initialValue: float -> float
  -        abstract reduce: callbackfn: ('U->float->float->Uint8ClampedArray->'U) * initialValue: 'U -> 'U
  -        abstract reduceRight: callbackfn: (float->float->float->Uint8ClampedArray->float) * ?initialValue: float -> float
  -        abstract reduceRight: callbackfn: ('U->float->float->Uint8ClampedArray->'U) * initialValue: 'U -> 'U
  -        abstract reverse: unit -> Uint8ClampedArray
  -        abstract set: index: float * value: float -> unit
  -        abstract set: array: Uint8ClampedArray * ?offset: float -> unit
  -        abstract slice: ?start: float * ?``end``: float -> Uint8ClampedArray
  -        abstract some: callbackfn: (float->float->Uint8ClampedArray->bool) * ?thisArg: obj -> bool
  -        abstract sort: ?compareFn: (float->float->float) -> Uint8ClampedArray
  -        abstract subarray: ``begin``: float * ?``end``: float -> Uint8ClampedArray
  -        abstract toLocaleString: unit -> string
  -        abstract toString: unit -> string
  -        abstract entries: unit -> IterableIterator<float * float>
  -        abstract keys: unit -> IterableIterator<float>
  -        abstract values: unit -> IterableIterator<float>
  -        [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
  -
  -    and [<AllowNullLiteral>] Uint8ClampedArrayConstructor =
  -        abstract prototype: Uint8ClampedArray with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Uint8ClampedArray
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Uint8ClampedArray
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Uint8ClampedArray
  -        abstract ``of``: [<ParamArray>] items: float[] -> Uint8ClampedArray
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Uint8ClampedArray
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Uint8ClampedArray
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Uint8ClampedArray
  -
  -    and [<AllowNullLiteral>] Int16Array =
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        abstract buffer: ArrayBuffer with get, set
  -        abstract byteLength: float with get, set
  -        abstract byteOffset: float with get, set
  -        abstract length: float with get, set
  -        [<Emit("$0[$1]{{=$2}}")>] abstract Item: index: int -> float with get, set
  -        [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  -        abstract copyWithin: target: float * start: float * ?``end``: float -> Int16Array
  -        abstract every: callbackfn: (float->float->Int16Array->bool) * ?thisArg: obj -> bool
  -        abstract fill: value: float * ?start: float * ?``end``: float -> Int16Array
  -        abstract filter: callbackfn: (float->float->Int16Array->bool) * ?thisArg: obj -> Int16Array
  -        abstract find: predicate: (float->float->ResizeArray<float>->bool) * ?thisArg: obj -> float
  -        abstract findIndex: predicate: (float->bool) * ?thisArg: obj -> float
  -        abstract forEach: callbackfn: (float->float->Int16Array->unit) * ?thisArg: obj -> unit
  -        abstract indexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract join: ?separator: string -> string
  -        abstract lastIndexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract map: callbackfn: (float->float->Int16Array->float) * ?thisArg: obj -> Int16Array
  -        abstract reduce: callbackfn: (float->float->float->Int16Array->float) * ?initialValue: float -> float
  -        abstract reduce: callbackfn: ('U->float->float->Int16Array->'U) * initialValue: 'U -> 'U
  -        abstract reduceRight: callbackfn: (float->float->float->Int16Array->float) * ?initialValue: float -> float
  -        abstract reduceRight: callbackfn: ('U->float->float->Int16Array->'U) * initialValue: 'U -> 'U
  -        abstract reverse: unit -> Int16Array
  -        abstract set: index: float * value: float -> unit
  -        abstract set: array: ArrayLike<float> * ?offset: float -> unit
  -        abstract slice: ?start: float * ?``end``: float -> Int16Array
  -        abstract some: callbackfn: (float->float->Int16Array->bool) * ?thisArg: obj -> bool
  -        abstract sort: ?compareFn: (float->float->float) -> Int16Array
  -        abstract subarray: ``begin``: float * ?``end``: float -> Int16Array
  -        abstract toLocaleString: unit -> string
  -        abstract toString: unit -> string
  -        abstract entries: unit -> IterableIterator<float * float>
  -        abstract keys: unit -> IterableIterator<float>
  -        abstract values: unit -> IterableIterator<float>
  -        [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
  -
  -    and [<AllowNullLiteral>] Int16ArrayConstructor =
  -        abstract prototype: Int16Array with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Int16Array
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Int16Array
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Int16Array
  -        abstract ``of``: [<ParamArray>] items: float[] -> Int16Array
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Int16Array
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Int16Array
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Int16Array
  -
  -    and [<AllowNullLiteral>] Uint16Array =
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        abstract buffer: ArrayBuffer with get, set
  -        abstract byteLength: float with get, set
  -        abstract byteOffset: float with get, set
  -        abstract length: float with get, set
  -        [<Emit("$0[$1]{{=$2}}")>] abstract Item: index: int -> float with get, set
  -        [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  -        abstract copyWithin: target: float * start: float * ?``end``: float -> Uint16Array
  -        abstract every: callbackfn: (float->float->Uint16Array->bool) * ?thisArg: obj -> bool
  -        abstract fill: value: float * ?start: float * ?``end``: float -> Uint16Array
  -        abstract filter: callbackfn: (float->float->Uint16Array->bool) * ?thisArg: obj -> Uint16Array
  -        abstract find: predicate: (float->float->ResizeArray<float>->bool) * ?thisArg: obj -> float
  -        abstract findIndex: predicate: (float->bool) * ?thisArg: obj -> float
  -        abstract forEach: callbackfn: (float->float->Uint16Array->unit) * ?thisArg: obj -> unit
  -        abstract indexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract join: ?separator: string -> string
  -        abstract lastIndexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract map: callbackfn: (float->float->Uint16Array->float) * ?thisArg: obj -> Uint16Array
  -        abstract reduce: callbackfn: (float->float->float->Uint16Array->float) * ?initialValue: float -> float
  -        abstract reduce: callbackfn: ('U->float->float->Uint16Array->'U) * initialValue: 'U -> 'U
  -        abstract reduceRight: callbackfn: (float->float->float->Uint16Array->float) * ?initialValue: float -> float
  -        abstract reduceRight: callbackfn: ('U->float->float->Uint16Array->'U) * initialValue: 'U -> 'U
  -        abstract reverse: unit -> Uint16Array
  -        abstract set: index: float * value: float -> unit
  -        abstract set: array: ArrayLike<float> * ?offset: float -> unit
  -        abstract slice: ?start: float * ?``end``: float -> Uint16Array
  -        abstract some: callbackfn: (float->float->Uint16Array->bool) * ?thisArg: obj -> bool
  -        abstract sort: ?compareFn: (float->float->float) -> Uint16Array
  -        abstract subarray: ``begin``: float * ?``end``: float -> Uint16Array
  -        abstract toLocaleString: unit -> string
  -        abstract toString: unit -> string
  -        abstract entries: unit -> IterableIterator<float * float>
  -        abstract keys: unit -> IterableIterator<float>
  -        abstract values: unit -> IterableIterator<float>
  -        [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
  -
  -    and [<AllowNullLiteral>] Uint16ArrayConstructor =
  -        abstract prototype: Uint16Array with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Uint16Array
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Uint16Array
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Uint16Array
  -        abstract ``of``: [<ParamArray>] items: float[] -> Uint16Array
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Uint16Array
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Uint16Array
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Uint16Array
  -
  -    and [<AllowNullLiteral>] Int32Array =
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        abstract buffer: ArrayBuffer with get, set
  -        abstract byteLength: float with get, set
  -        abstract byteOffset: float with get, set
  -        abstract length: float with get, set
  -        [<Emit("$0[$1]{{=$2}}")>] abstract Item: index: int -> float with get, set
  -        [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  -        abstract copyWithin: target: float * start: float * ?``end``: float -> Int32Array
  -        abstract every: callbackfn: (float->float->Int32Array->bool) * ?thisArg: obj -> bool
  -        abstract fill: value: float * ?start: float * ?``end``: float -> Int32Array
  -        abstract filter: callbackfn: (float->float->Int32Array->bool) * ?thisArg: obj -> Int32Array
  -        abstract find: predicate: (float->float->ResizeArray<float>->bool) * ?thisArg: obj -> float
  -        abstract findIndex: predicate: (float->bool) * ?thisArg: obj -> float
  -        abstract forEach: callbackfn: (float->float->Int32Array->unit) * ?thisArg: obj -> unit
  -        abstract indexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract join: ?separator: string -> string
  -        abstract lastIndexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract map: callbackfn: (float->float->Int32Array->float) * ?thisArg: obj -> Int32Array
  -        abstract reduce: callbackfn: (float->float->float->Int32Array->float) * ?initialValue: float -> float
  -        abstract reduce: callbackfn: ('U->float->float->Int32Array->'U) * initialValue: 'U -> 'U
  -        abstract reduceRight: callbackfn: (float->float->float->Int32Array->float) * ?initialValue: float -> float
  -        abstract reduceRight: callbackfn: ('U->float->float->Int32Array->'U) * initialValue: 'U -> 'U
  -        abstract reverse: unit -> Int32Array
  -        abstract set: index: float * value: float -> unit
  -        abstract set: array: ArrayLike<float> * ?offset: float -> unit
  -        abstract slice: ?start: float * ?``end``: float -> Int32Array
  -        abstract some: callbackfn: (float->float->Int32Array->bool) * ?thisArg: obj -> bool
  -        abstract sort: ?compareFn: (float->float->float) -> Int32Array
  -        abstract subarray: ``begin``: float * ?``end``: float -> Int32Array
  -        abstract toLocaleString: unit -> string
  -        abstract toString: unit -> string
  -        abstract entries: unit -> IterableIterator<float * float>
  -        abstract keys: unit -> IterableIterator<float>
  -        abstract values: unit -> IterableIterator<float>
  -        [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
  -
  -    and [<AllowNullLiteral>] Int32ArrayConstructor =
  -        abstract prototype: Int32Array with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Int32Array
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Int32Array
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Int32Array
  -        abstract ``of``: [<ParamArray>] items: float[] -> Int32Array
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Int32Array
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Int32Array
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Int32Array
  -
  -    and [<AllowNullLiteral>] Uint32Array =
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        abstract buffer: ArrayBuffer with get, set
  -        abstract byteLength: float with get, set
  -        abstract byteOffset: float with get, set
  -        abstract length: float with get, set
  -        [<Emit("$0[$1]{{=$2}}")>] abstract Item: index: int -> float with get, set
  -        [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  -        abstract copyWithin: target: float * start: float * ?``end``: float -> Uint32Array
  -        abstract every: callbackfn: (float->float->Uint32Array->bool) * ?thisArg: obj -> bool
  -        abstract fill: value: float * ?start: float * ?``end``: float -> Uint32Array
  -        abstract filter: callbackfn: (float->float->Uint32Array->bool) * ?thisArg: obj -> Uint32Array
  -        abstract find: predicate: (float->float->ResizeArray<float>->bool) * ?thisArg: obj -> float
  -        abstract findIndex: predicate: (float->bool) * ?thisArg: obj -> float
  -        abstract forEach: callbackfn: (float->float->Uint32Array->unit) * ?thisArg: obj -> unit
  -        abstract indexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract join: ?separator: string -> string
  -        abstract lastIndexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract map: callbackfn: (float->float->Uint32Array->float) * ?thisArg: obj -> Uint32Array
  -        abstract reduce: callbackfn: (float->float->float->Uint32Array->float) * ?initialValue: float -> float
  -        abstract reduce: callbackfn: ('U->float->float->Uint32Array->'U) * initialValue: 'U -> 'U
  -        abstract reduceRight: callbackfn: (float->float->float->Uint32Array->float) * ?initialValue: float -> float
  -        abstract reduceRight: callbackfn: ('U->float->float->Uint32Array->'U) * initialValue: 'U -> 'U
  -        abstract reverse: unit -> Uint32Array
  -        abstract set: index: float * value: float -> unit
  -        abstract set: array: ArrayLike<float> * ?offset: float -> unit
  -        abstract slice: ?start: float * ?``end``: float -> Uint32Array
  -        abstract some: callbackfn: (float->float->Uint32Array->bool) * ?thisArg: obj -> bool
  -        abstract sort: ?compareFn: (float->float->float) -> Uint32Array
  -        abstract subarray: ``begin``: float * ?``end``: float -> Uint32Array
  -        abstract toLocaleString: unit -> string
  -        abstract toString: unit -> string
  -        abstract entries: unit -> IterableIterator<float * float>
  -        abstract keys: unit -> IterableIterator<float>
  -        abstract values: unit -> IterableIterator<float>
  -        [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
  -
  -    and [<AllowNullLiteral>] Uint32ArrayConstructor =
  -        abstract prototype: Uint32Array with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Uint32Array
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Uint32Array
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Uint32Array
  -        abstract ``of``: [<ParamArray>] items: float[] -> Uint32Array
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Uint32Array
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Uint32Array
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Uint32Array
  -
  -    and [<AllowNullLiteral>] Float32Array =
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        abstract buffer: ArrayBuffer with get, set
  -        abstract byteLength: float with get, set
  -        abstract byteOffset: float with get, set
  -        abstract length: float with get, set
  -        [<Emit("$0[$1]{{=$2}}")>] abstract Item: index: int -> float with get, set
  -        [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  -        abstract copyWithin: target: float * start: float * ?``end``: float -> Float32Array
  -        abstract every: callbackfn: (float->float->Float32Array->bool) * ?thisArg: obj -> bool
  -        abstract fill: value: float * ?start: float * ?``end``: float -> Float32Array
  -        abstract filter: callbackfn: (float->float->Float32Array->bool) * ?thisArg: obj -> Float32Array
  -        abstract find: predicate: (float->float->ResizeArray<float>->bool) * ?thisArg: obj -> float
  -        abstract findIndex: predicate: (float->bool) * ?thisArg: obj -> float
  -        abstract forEach: callbackfn: (float->float->Float32Array->unit) * ?thisArg: obj -> unit
  -        abstract indexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract join: ?separator: string -> string
  -        abstract lastIndexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract map: callbackfn: (float->float->Float32Array->float) * ?thisArg: obj -> Float32Array
  -        abstract reduce: callbackfn: (float->float->float->Float32Array->float) * ?initialValue: float -> float
  -        abstract reduce: callbackfn: ('U->float->float->Float32Array->'U) * initialValue: 'U -> 'U
  -        abstract reduceRight: callbackfn: (float->float->float->Float32Array->float) * ?initialValue: float -> float
  -        abstract reduceRight: callbackfn: ('U->float->float->Float32Array->'U) * initialValue: 'U -> 'U
  -        abstract reverse: unit -> Float32Array
  -        abstract set: index: float * value: float -> unit
  -        abstract set: array: ArrayLike<float> * ?offset: float -> unit
  -        abstract slice: ?start: float * ?``end``: float -> Float32Array
  -        abstract some: callbackfn: (float->float->Float32Array->bool) * ?thisArg: obj -> bool
  -        abstract sort: ?compareFn: (float->float->float) -> Float32Array
  -        abstract subarray: ``begin``: float * ?``end``: float -> Float32Array
  -        abstract toLocaleString: unit -> string
  -        abstract toString: unit -> string
  -        abstract entries: unit -> IterableIterator<float * float>
  -        abstract keys: unit -> IterableIterator<float>
  -        abstract values: unit -> IterableIterator<float>
  -        [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
  -
  -    and [<AllowNullLiteral>] Float32ArrayConstructor =
  -        abstract prototype: Float32Array with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Float32Array
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Float32Array
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Float32Array
  -        abstract ``of``: [<ParamArray>] items: float[] -> Float32Array
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Float32Array
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Float32Array
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Float32Array
  -
  -    and [<AllowNullLiteral>] Float64Array =
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        abstract buffer: ArrayBuffer with get, set
  -        abstract byteLength: float with get, set
  -        abstract byteOffset: float with get, set
  -        abstract length: float with get, set
  -        [<Emit("$0[$1]{{=$2}}")>] abstract Item: index: int -> float with get, set
  -        [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  -        abstract copyWithin: target: float * start: float * ?``end``: float -> Float64Array
  -        abstract every: callbackfn: (float->float->Float64Array->bool) * ?thisArg: obj -> bool
  -        abstract fill: value: float * ?start: float * ?``end``: float -> Float64Array
  -        abstract filter: callbackfn: (float->float->Float64Array->bool) * ?thisArg: obj -> Float64Array
  -        abstract find: predicate: (float->float->ResizeArray<float>->bool) * ?thisArg: obj -> float
  -        abstract findIndex: predicate: (float->bool) * ?thisArg: obj -> float
  -        abstract forEach: callbackfn: (float->float->Float64Array->unit) * ?thisArg: obj -> unit
  -        abstract indexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract join: ?separator: string -> string
  -        abstract lastIndexOf: searchElement: float * ?fromIndex: float -> float
  -        abstract map: callbackfn: (float->float->Float64Array->float) * ?thisArg: obj -> Float64Array
  -        abstract reduce: callbackfn: (float->float->float->Float64Array->float) * ?initialValue: float -> float
  -        abstract reduce: callbackfn: ('U->float->float->Float64Array->'U) * initialValue: 'U -> 'U
  -        abstract reduceRight: callbackfn: (float->float->float->Float64Array->float) * ?initialValue: float -> float
  -        abstract reduceRight: callbackfn: ('U->float->float->Float64Array->'U) * initialValue: 'U -> 'U
  -        abstract reverse: unit -> Float64Array
  -        abstract set: index: float * value: float -> unit
  -        abstract set: array: ArrayLike<float> * ?offset: float -> unit
  -        abstract slice: ?start: float * ?``end``: float -> Float64Array
  -        abstract some: callbackfn: (float->float->Float64Array->bool) * ?thisArg: obj -> bool
  -        abstract sort: ?compareFn: (float->float->float) -> Float64Array
  -        abstract subarray: ``begin``: float * ?``end``: float -> Float64Array
  -        abstract toLocaleString: unit -> string
  -        abstract toString: unit -> string
  -        abstract entries: unit -> IterableIterator<float * float>
  -        abstract keys: unit -> IterableIterator<float>
  -        abstract values: unit -> IterableIterator<float>
  -        [<Emit("$0[Symbol.iterator]($1...)")>] abstract ``[Symbol.iterator]``: unit -> IterableIterator<float>
  -
       and [<AllowNullLiteral>] Float64ArrayConstructor =
           abstract prototype: Float64Array with get, set
  -        abstract BYTES_PER_ELEMENT: float with get, set
  -        [<Emit("new $0($1...)")>] abstract Create: length: float -> Float64Array
  -        [<Emit("new $0($1...)")>] abstract Create: array: ArrayLike<float> -> Float64Array
  -        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: float * ?length: float -> Float64Array
  +        abstract BYTES_PER_ELEMENT: int with get, set
  +        [<Emit("new $0($1...)")>] abstract Create: length: int -> Float64Array
  +        [<Emit("new $0($1...)")>] abstract Create: array: array<float> -> Float64Array
  +        [<Emit("new $0($1...)")>] abstract Create: buffer: ArrayBuffer * ?byteOffset: int * ?length: int -> Float64Array
           abstract ``of``: [<ParamArray>] items: float[] -> Float64Array
  -        abstract from: arrayLike: ArrayLike<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Float64Array
  -        [<Emit("new $0($1...)")>] abstract Create: elements: Iterable<float> -> Float64Array
  -        abstract from: arrayLike: Iterable<float> * ?mapfn: (float->float->float) * ?thisArg: obj -> Float64Array
  +        abstract from: arrayLike: array<float> * ?mapfn: (float->int->float) * ?thisArg: obj -> Float64Array
  +        [<Emit("new $0($1...)")>] abstract Create: elements: seq<float> -> Float64Array
  +        abstract from: arrayLike: seq<float> * ?mapfn: (float->int->float) * ?thisArg: obj -> Float64Array
   
       and [<AllowNullLiteral>] Symbol =
           [<Emit("$0[Symbol.toStringTag]{{=$1}}")>] abstract ``[Symbol.toStringTag]``: obj with get, set
  
positive.code:         abstract stringify: value: obj * replacer: (string->obj->obj) * space: obj -> string
  
      and [<AllowNullLiteral>] ReadonlyArray<'T> =
          abstract length: float with get, set
          [<Emit("$0[$1]{{=$2}}")>] abstract Item: n: int -> 'T with get, set
          abstract toString: unit -> string
          abstract toLocaleString: unit -> string
          abstract concat: [<ParamArray>] items: 'U[] -> ResizeArray<'T>
          abstract concat: [<ParamArray>] items: 'T[] -> ResizeArray<'T>
          abstract join: ?separator: string -> string
          abstract slice: ?start: float * ?``end``: float -> ResizeArray<'T>
          abstract indexOf: searchElement: 'T * ?fromIndex: float -> float
          abstract lastIndexOf: searchElement: 'T * ?fromIndex: float -> float
          abstract every: callbackfn: ('T->float->ReadonlyArray<'T>->bool) * ?thisArg: obj -> bool
          abstract some: callbackfn: ('T->float->ReadonlyArray<'T>->bool) * ?thisArg: obj -> bool
          abstract forEach: callbackfn: ('T->float->ReadonlyArray<'T>->unit) * ?thisArg: obj -> unit
  
negative.code:         abstract prototype: WeakMap<obj, obj> with get, set
          [<Emit("new $0($1...)")>] abstract Create: unit -> WeakMap<obj, obj>
          [<Emit("new $0($1...)")>] abstract Create: unit -> WeakMap<'K, 'V>
          [<Emit("new $0($1...)")>] abstract Create: iterable: seq<'K * 'V> -> WeakMap<'K, 'V>
  
      and [<AllowNullLiteral>] Set<'T> =
          abstract size: float with get, set
  