diff --git a/base/dtype/README.md b/base/dtype/README.md
new file mode 100644
index 00000000..6cd7de15
--- /dev/null
+++ b/base/dtype/README.md
@@ -0,0 +1,147 @@
+
+
+# dtype
+
+> Return the data type of a provided [ndarray][@stdlib/ndarray/base/ctor].
+
+
+
+
+
+
+
+
+
+
+
+## Usage
+
+```javascript
+var dtype = require( '@stdlib/ndarray/base/dtype' );
+```
+
+#### dtype( x )
+
+Returns the data type of a provided [ndarray][@stdlib/ndarray/base/ctor].
+
+```javascript
+var zeros = require( '@stdlib/ndarray/zeros' );
+
+var x = zeros( [ 3, 2, 3 ], {
+ 'dtype': 'float64'
+});
+// returns
+
+var dt = dtype( x );
+// returns 'float64'
+```
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## Examples
+
+
+
+
+
+```javascript
+var zeros = require( '@stdlib/ndarray/zeros' );
+var slice = require( '@stdlib/ndarray/slice' );
+var E = require( '@stdlib/slice/multi' );
+var S = require( '@stdlib/slice/ctor' );
+var dtype = require( '@stdlib/ndarray/base/dtype' );
+
+// Create an array:
+var x = zeros( [ 10, 10, 10, 10 ] );
+// returns
+
+// Define some slices:
+var slices = [
+ // :,:,:,:
+ E( null, null, null, null ),
+
+ // 5:10,4,2:4,::-1
+ E( S( 5, 10 ), 4, S( 2, 4 ), S( null, null, -1 ) ),
+
+ // :,:,2,:
+ E( null, null, 2, null ),
+
+ // 1,2,3,:
+ E( 1, 2, 3, null ),
+
+ // 1,3,::2,4::2
+ E( 1, 3, S( null, null, 2 ), S( 4, null, 2 ) )
+];
+
+// Determine the data type for each slice...
+var s;
+var i;
+for ( i = 0; i < slices.length; i++ ) {
+ s = slice( x, slices[ i ] );
+ console.log( '%s => %s', s.dtype, dtype( s ) );
+}
+```
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+[@stdlib/ndarray/base/ctor]: https://github.com/stdlib-js/ndarray/tree/main/base/ctor
+
+
+
+
diff --git a/base/dtype/benchmark/benchmark.js b/base/dtype/benchmark/benchmark.js
new file mode 100644
index 00000000..41849e17
--- /dev/null
+++ b/base/dtype/benchmark/benchmark.js
@@ -0,0 +1,57 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2023 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+'use strict';
+
+// MODULES //
+
+var bench = require( '@stdlib/bench' );
+var isString = require( '@stdlib/assert/is-string' ).isPrimitive;
+var typedarray = require( '@stdlib/array/typed' );
+var ndarray = require( './../../../ctor' );
+var pkg = require( './../package.json' ).name;
+var dtype = require( './../lib' );
+
+
+// MAIN //
+
+bench( pkg, function benchmark( b ) {
+ var values;
+ var dt;
+ var i;
+
+ values = [
+ ndarray( 'float64', typedarray( 20000, 'float64' ), [ 10, 10, 10, 1 ], [ 1000, 100, 10, 1 ], 100, 'row-major' ),
+ ndarray( 'int32', typedarray( 20000, 'int32' ), [ 5, 5, 5, 1, 1 ], [ 125, 25, 5, 1, 1 ], 50, 'row-major' ),
+ ndarray( 'uint8', typedarray( 20000, 'uint8' ), [ 3, 4, 5 ], [ 20, 5, 1 ], 72, 'row-major' )
+ ];
+
+ b.tic();
+ for ( i = 0; i < b.iterations; i++ ) {
+ dt = dtype( values[ i%values.length ] );
+ if ( typeof dt !== 'string' ) {
+ b.fail( 'should return a string' );
+ }
+ }
+ b.toc();
+ if ( !isString( dt ) ) {
+ b.fail( 'should return a string' );
+ }
+ b.pass( 'benchmark finished' );
+ b.end();
+});
diff --git a/base/dtype/docs/repl.txt b/base/dtype/docs/repl.txt
new file mode 100644
index 00000000..0a73b9ec
--- /dev/null
+++ b/base/dtype/docs/repl.txt
@@ -0,0 +1,23 @@
+
+{{alias}}( x )
+ Returns the data type of a provided ndarray.
+
+ Parameters
+ ----------
+ x: ndarray
+ Input ndarray.
+
+ Returns
+ -------
+ dt: string
+ Data type.
+
+ Examples
+ --------
+ > var opts = { 'dtype': 'float64' };
+ > var dt = {{alias}}( {{alias:@stdlib/ndarray/zeros}}( [ 3, 3, 3 ], opts ) )
+ 'float64'
+
+ See Also
+ --------
+
diff --git a/base/dtype/docs/types/index.d.ts b/base/dtype/docs/types/index.d.ts
new file mode 100644
index 00000000..df1b26e2
--- /dev/null
+++ b/base/dtype/docs/types/index.d.ts
@@ -0,0 +1,46 @@
+/*
+* @license Apache-2.0
+*
+* Copyright (c) 2023 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+// TypeScript Version: 4.1
+
+///
+
+import { ndarray, DataType } from '@stdlib/types/ndarray';
+
+/**
+* Returns the data type of a provided ndarray.
+*
+* @param x - input ndarray
+* @returns data type
+*
+* @example
+* var zeros = require( `@stdlib/ndarray/zeros` );
+*
+* var x = zeros( [ 3, 3, 3 ], {
+* 'dtype': 'float64'
+* });
+*
+* var dt = dtype( x );
+* // returns 'float64'
+*/
+declare function dtype( x: ndarray ): DataType;
+
+
+// EXPORTS //
+
+export = dtype;
diff --git a/base/dtype/docs/types/test.ts b/base/dtype/docs/types/test.ts
new file mode 100644
index 00000000..57bf954f
--- /dev/null
+++ b/base/dtype/docs/types/test.ts
@@ -0,0 +1,47 @@
+/*
+* @license Apache-2.0
+*
+* Copyright (c) 2023 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+import zeros = require( './../../../../zeros' );
+import dtype = require( './index' );
+
+
+// TESTS //
+
+// The function returns a data type...
+{
+ dtype( zeros( [ 3, 2, 1 ] ) ); // $ExpectType DataType
+}
+
+// The compiler throws an error if the function is provided a value other than an ndarray...
+{
+ dtype( '5' ); // $ExpectError
+ dtype( 5 ); // $ExpectError
+ dtype( true ); // $ExpectError
+ dtype( false ); // $ExpectError
+ dtype( null ); // $ExpectError
+ dtype( undefined ); // $ExpectError
+ dtype( [ '1', '2' ] ); // $ExpectError
+ dtype( {} ); // $ExpectError
+ dtype( ( x: number ): number => x ); // $ExpectError
+}
+
+// The compiler throws an error if the function is provided an unsupported number of arguments...
+{
+ dtype(); // $ExpectError
+ dtype( zeros( [ 2, 2 ] ), {} ); // $ExpectError
+}
diff --git a/base/dtype/examples/index.js b/base/dtype/examples/index.js
new file mode 100644
index 00000000..7e060286
--- /dev/null
+++ b/base/dtype/examples/index.js
@@ -0,0 +1,57 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2023 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+/* eslint-disable new-cap */
+
+'use strict';
+
+var zeros = require( './../../../zeros' );
+var slice = require( './../../../slice' );
+var E = require( '@stdlib/slice/multi' );
+var S = require( '@stdlib/slice/ctor' );
+var dtype = require( './../lib' );
+
+// Create an array:
+var x = zeros( [ 10, 10, 10, 10 ] );
+// returns
+
+// Define some slices:
+var slices = [
+ // :,:,:,:
+ E( null, null, null, null ),
+
+ // 5:10,4,2:4,::-1
+ E( S( 5, 10 ), 4, S( 2, 4 ), S( null, null, -1 ) ),
+
+ // :,:,2,:
+ E( null, null, 2, null ),
+
+ // 1,2,3,:
+ E( 1, 2, 3, null ),
+
+ // 1,3,::2,4::2
+ E( 1, 3, S( null, null, 2 ), S( 4, null, 2 ) )
+];
+
+// Determine the data type of each slice...
+var s;
+var i;
+for ( i = 0; i < slices.length; i++ ) {
+ s = slice( x, slices[ i ] );
+ console.log( '%s => %s', s.dtype, dtype( s ) );
+}
diff --git a/base/dtype/lib/index.js b/base/dtype/lib/index.js
new file mode 100644
index 00000000..6e501d3d
--- /dev/null
+++ b/base/dtype/lib/index.js
@@ -0,0 +1,45 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2023 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+'use strict';
+
+/**
+* Return the data type of a provided ndarray.
+*
+* @module @stdlib/ndarray/base/dtype
+*
+* @example
+* var zeros = require( '@stdlib/ndarray/zeros' );
+* var dtype = require( '@stdlib/ndarray/base/dtype' );
+*
+* var x = zeros( [ 3, 3, 3 ], {
+* 'dtype': 'float64'
+* });
+*
+* var dt = dtype( x );
+* // returns 'float64'
+*/
+
+// MODULES //
+
+var main = require( './main.js' );
+
+
+// EXPORTS //
+
+module.exports = main;
diff --git a/base/dtype/lib/main.js b/base/dtype/lib/main.js
new file mode 100644
index 00000000..a92cfdd2
--- /dev/null
+++ b/base/dtype/lib/main.js
@@ -0,0 +1,46 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2023 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+'use strict';
+
+// MAIN //
+
+/**
+* Returns the data type of a provided ndarray.
+*
+* @param {ndarrayLike} x - input ndarray
+* @returns {string} data type
+*
+* @example
+* var zeros = require( '@stdlib/ndarray/zeros' );
+*
+* var x = zeros( [ 3, 3, 3 ], {
+* 'dtype': 'float64'
+* });
+*
+* var dt = dtype( x );
+* // returns 'float64'
+*/
+function dtype( x ) {
+ return x.dtype;
+}
+
+
+// EXPORTS //
+
+module.exports = dtype;
diff --git a/base/dtype/package.json b/base/dtype/package.json
new file mode 100644
index 00000000..c44c2cf7
--- /dev/null
+++ b/base/dtype/package.json
@@ -0,0 +1,70 @@
+{
+ "name": "@stdlib/ndarray/base/dtype",
+ "version": "0.0.0",
+ "description": "Return the data type of a provided ndarray.",
+ "license": "Apache-2.0",
+ "author": {
+ "name": "The Stdlib Authors",
+ "url": "https://github.com/stdlib-js/stdlib/graphs/contributors"
+ },
+ "contributors": [
+ {
+ "name": "The Stdlib Authors",
+ "url": "https://github.com/stdlib-js/stdlib/graphs/contributors"
+ }
+ ],
+ "main": "./lib",
+ "directories": {
+ "benchmark": "./benchmark",
+ "doc": "./docs",
+ "example": "./examples",
+ "lib": "./lib",
+ "test": "./test"
+ },
+ "types": "./docs/types",
+ "scripts": {},
+ "homepage": "https://github.com/stdlib-js/stdlib",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/stdlib-js/stdlib.git"
+ },
+ "bugs": {
+ "url": "https://github.com/stdlib-js/stdlib/issues"
+ },
+ "dependencies": {},
+ "devDependencies": {},
+ "engines": {
+ "node": ">=0.10.0",
+ "npm": ">2.7.0"
+ },
+ "os": [
+ "aix",
+ "darwin",
+ "freebsd",
+ "linux",
+ "macos",
+ "openbsd",
+ "sunos",
+ "win32",
+ "windows"
+ ],
+ "keywords": [
+ "stdlib",
+ "stdtypes",
+ "types",
+ "base",
+ "ndarray",
+ "data type",
+ "dtype",
+ "type",
+ "memory",
+ "layout",
+ "multidimensional",
+ "array",
+ "utilities",
+ "utility",
+ "utils",
+ "util"
+ ],
+ "__stdlib__": {}
+}
diff --git a/base/dtype/test/test.js b/base/dtype/test/test.js
new file mode 100644
index 00000000..18b51df6
--- /dev/null
+++ b/base/dtype/test/test.js
@@ -0,0 +1,120 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2023 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+'use strict';
+
+// MODULES //
+
+var tape = require( 'tape' );
+var zeros = require( './../../../zeros' );
+var dtype = require( './../lib' );
+
+
+// TESTS //
+
+tape( 'main export is a function', function test( t ) {
+ t.ok( true, __filename );
+ t.strictEqual( typeof dtype, 'function', 'main export is a function' );
+ t.end();
+});
+
+tape( 'the function returns the data type of a provided ndarray', function test( t ) {
+ var expected;
+ var values;
+ var actual;
+ var i;
+
+ values = [
+ zeros( [], {
+ 'dtype': 'float64'
+ }),
+ zeros( [ 3, 3, 3 ], {
+ 'dtype': 'float32'
+ }),
+ zeros( [ 1, 1 ], {
+ 'dtype': 'int32'
+ }),
+ zeros( [ 3, 3, 0, 3 ], {
+ 'dtype': 'uint32'
+ }),
+ zeros( [ 1, 2, 3, 4 ], {
+ 'dtype': 'int8'
+ }),
+ zeros( [ 5 ], {
+ 'dtype': 'uint8'
+ })
+ ];
+
+ expected = [
+ 'float64',
+ 'float32',
+ 'int32',
+ 'uint32',
+ 'int8',
+ 'uint8'
+ ];
+
+ for ( i = 0; i < values.length; i++ ) {
+ actual = dtype( values[ i ] );
+ t.strictEqual( actual, expected[ i ], 'returns expected value' );
+ }
+ t.end();
+});
+
+tape( 'the function accepts minimal ndarray-like objects (dtype)', function test( t ) {
+ var expected;
+ var values;
+ var actual;
+ var i;
+
+ values = [
+ {
+ 'dtype': 'float64'
+ },
+ {
+ 'dtype': 'float32'
+ },
+ {
+ 'dtype': 'int32'
+ },
+ {
+ 'dtype': 'uint32'
+ },
+ {
+ 'dtype': 'int8'
+ },
+ {
+ 'dtype': 'uint8'
+ }
+ ];
+
+ expected = [
+ 'float64',
+ 'float32',
+ 'int32',
+ 'uint32',
+ 'int8',
+ 'uint8'
+ ];
+
+ for ( i = 0; i < values.length; i++ ) {
+ actual = dtype( values[ i ] );
+ t.strictEqual( actual, expected[ i ], 'returns expected value' );
+ }
+ t.end();
+});
diff --git a/base/lib/index.js b/base/lib/index.js
index 4eca8658..2785e426 100644
--- a/base/lib/index.js
+++ b/base/lib/index.js
@@ -175,6 +175,15 @@ setReadOnly( ns, 'clampIndex', require( './../../base/clamp-index' ) );
*/
setReadOnly( ns, 'ndarray', require( './../../base/ctor' ) );
+/**
+* @name dtype
+* @memberof ns
+* @readonly
+* @type {Function}
+* @see {@link module:@stdlib/ndarray/base/dtype}
+*/
+setReadOnly( ns, 'dtype', require( './../../base/dtype' ) );
+
/**
* @name dtypeChar
* @memberof ns
diff --git a/base/offset/lib/main.js b/base/offset/lib/main.js
index 49d7ce9b..f13309b5 100644
--- a/base/offset/lib/main.js
+++ b/base/offset/lib/main.js
@@ -26,7 +26,7 @@ var strides2offset = require( './../../../base/strides2offset' );
// MAIN //
/**
-* Return the index offset specifying the underlying buffer index of the first iterated ndarray element.
+* Returns the index offset specifying the underlying buffer index of the first iterated ndarray element.
*
* @param {ndarrayLike} x - input ndarray
* @returns {NonNegativeInteger} index offset
diff --git a/dist/index.js b/dist/index.js
index e2aefdc5..c964ae77 100644
--- a/dist/index.js
+++ b/dist/index.js
@@ -1,4 +1,4 @@
-"use strict";var A=function(r,e){return function(){return e||r((e={exports:{}}).exports,e),e.exports}};var dt=A(function(Jz,ft){"use strict";function Rh(r){var e,a,i,s;for(e=r.length,a=[],s=0;s=0;s--)a[s]=i,i*=r[s];return a}function Ch(r){var e,a,i;for(e=[],a=1,i=0;i=0;s--)e[s]=i,i*=r[s];return e}function zh(r,e){var a,i;for(a=1,i=0;is&&(i=!1),i||e)s=t;else return 0;return i&&e?3:i?1:2}gt.exports=Fh});var Le=A(function(rP,wt){"use strict";var Yh=bt();wt.exports=Yh});var jt=A(function(eP,St){"use strict";function Kh(r){var e,a,i;if(e=r.length,e===0)return 0;for(a=1,i=0;i0?t+=v*(r[o]-1):v<0&&(s+=v*(r[o]-1))}return[s,t]}Wt.exports=pq});var $t=A(function(xP,Ht){"use strict";function mq(r,e,a,i){var s,t,v,o,u;for(s=r.length,t=a,v=a,u=0;u0?v+=o*(r[u]-1):o<0&&(t+=o*(r[u]-1))}return i[0]=t,i[1]=v,i}Ht.exports=mq});var ue=A(function(hP,es){"use strict";var xq=require("@stdlib/utils/define-nonenumerable-read-only-property"),rs=Qt(),hq=$t();xq(rs,"assign",hq);es.exports=rs});var is=A(function(qP,as){"use strict";var qq=ue();function gq(r,e,a,i){var s=qq(e,a,i);return s[0]>=0&&s[1]=0;v--)t=r%a[v],r-=t,r/=a[v],s+=t*e[v];return this._accessors?this._buffer.get(s):this._buffer[s]}gs.exports=Rq});var Ss=A(function(AP,ws){"use strict";function Cq(r,e){var a,i,s,t,v,o;if(s=this._ndims,s===0)return this._accessors?this._buffer.set(r,this._offset):this._buffer[this._offset]=r,this;if(this._flags.ROW_MAJOR_CONTIGUOUS||this._flags.COLUMN_MAJOR_CONTIGUOUS){if(this._iterationOrder===1)return this._accessors?this._buffer.set(e,this._offset+r):this._buffer[this._offset+r]=e,this;if(this._iterationOrder===-1)return this._accessors?this._buffer.set(e,this._offset-r):this._buffer[this._offset-r]=e,this}if(i=this._shape,a=this._strides,t=this._offset,this._order==="column-major"){for(o=0;o=0;o--)v=r%i[o],r-=v,r/=i[o],t+=v*a[o];return this._accessors?this._buffer.set(e,t):this._buffer[t]=e,this}ws.exports=Cq});var _s=A(function(NP,js){"use strict";function Dq(){var r,e;for(r=this._offset,e=0;e=0;v--)t=this.iget(this._length-1-v),r+=Ga(t)+", "+Za(t),v>0&&(r+=", ");else for(v=2;v>=0;v--)r+=this.iget(this._length-1-v),v>0&&(r+=", ")}if(a=Bq[this.dtype],i+=Mq(a,"{{data}}",r),i+=", ",e===0?i+="[]":i+="[ "+this._shape.join(", ")+" ]",i+=", ",i+="[ ",e===0)i+="0";else for(v=0;ve?e:r}$s.exports=Lg});var Wa=A(function(JP,ev){"use strict";var zg=rv();ev.exports=zg});var iv=A(function(XP,av){"use strict";function Pg(r,e){var a=e+1;return r<0?(r+=a,r<0&&(r%=a,r!==0&&(r+=a)),r):(r>e&&(r-=a,r>e&&(r%=a)),r)}av.exports=Pg});var Qa=A(function(WP,tv){"use strict";var Vg=iv();tv.exports=Vg});var vv=A(function(QP,sv){"use strict";var Mg=Wa(),Bg=Qa(),Ug=require("@stdlib/string/format");function Fg(r,e,a){if(a==="clamp")return Mg(r,e);if(a==="wrap")return Bg(r,e);if(r<0||r>e)throw new RangeError(Ug("invalid argument. Index must be on the interval: [0, %d]. Value: `%d`.",e,r));return r}sv.exports=Fg});var _e=A(function(HP,ov){"use strict";var Yg=vv();ov.exports=Yg});var fv=A(function($P,uv){"use strict";var Kg=require("@stdlib/assert/is-integer").isPrimitive,Gg=_e(),Zg=re(),Jg=require("@stdlib/string/format"),nv=Zg.prototype.iget;function Xg(r){if(this._ndims>0){if(!Kg(r))throw new TypeError(Jg("invalid argument. Index must be an integer. Value: `%s`.",r));return r=Gg(r,this._length-1,this._mode),nv.call(this,r)}return nv.call(this)}uv.exports=Xg});var cv=A(function(rV,lv){"use strict";var Wg=require("@stdlib/assert/is-integer").isPrimitive,Qg=_e(),Hg=re(),$g=require("@stdlib/string/format"),dv=Hg.prototype.iset;function r4(r,e){if(this._flags.READONLY)throw new Error("invalid invocation. Cannot write to a read-only array.");if(this._ndims>0){if(!Wg(r))throw new TypeError($g("invalid argument. Index must be an integer. Value: `%s`.",r));r=Qg(r,this._length-1,this._mode),dv.call(this,r,e)}else dv.call(this,r);return this}lv.exports=r4});var mv=A(function(eV,pv){"use strict";var e4=require("@stdlib/assert/is-integer").isPrimitive,a4=_e(),yv=require("@stdlib/string/format");function i4(){var r,e,a,i;if(arguments.length!==this._ndims)throw new RangeError(yv("invalid arguments. Number of indices must match the number of dimensions. ndims: `%u`. nargs: `%u`.",this._ndims,arguments.length));for(r=this._offset,a=this._submode.length,i=0;i0))throw new TypeError(ee("invalid argument. Third argument must be an array-like object containing nonnegative integers. Value: `%s`.",a));if(o=a.length,o>Nv)throw new RangeError(ee("invalid argument. Number of dimensions must not exceed %u due to stack limits. Value: `%u`.",Nv,o));if(!h4(i))throw new TypeError(ee("invalid argument. Fourth argument must be an array-like object containing integers. Value: `%s`.",i));if(o>0){if(i.length!==o)throw new RangeError(ee("invalid argument. Fourth argument length must match the number of dimensions. Expected number of dimensions: `%u`. Strides length: `%u`.",o,i.length))}else{if(i.length!==1)throw new RangeError("invalid argument. Fourth argument length must be equal to 1 when creating a zero-dimensional ndarray.");if(i[0]!==0)throw new RangeError(ee("invalid argument. Fourth argument must contain a single element equal to 0. Value: `%d`.",i[0]))}if(!x4(s))throw new TypeError(ee("invalid argument. Fifth argument must be a nonnegative integer. Value: `%s`.",s));if(!q4(t))throw new TypeError(ee("invalid argument. Sixth argument must be a supported order. Value: `%s`.",t));if(o>0&&!b4(e.length,a,i,s)&&w4(a)>0)throw new Error("invalid arguments. Input buffer is incompatible with the specified meta data. Ensure that the offset is valid with regard to the strides array and that the buffer has enough elements to satisfy the desired array shape.");if(u={},u.mode=k4,u.readonly=A4,arguments.length>6&&(f=I4(u,v),f))throw f;return this._mode=u.mode,u.submode===void 0&&(u.submode=[this._mode]),this._submode=u.submode,n=Av(a,o),d=Av(i,o||1),Rv.call(this,r,e,n,d,s,t),this._flags.READONLY=u.readonly,this}j4(ae,Rv);Be(ae,"name","ndarray");Be(ae.prototype,"get",O4);Be(ae.prototype,"iget",_4);Be(ae.prototype,"set",T4);Be(ae.prototype,"iset",E4);Cv.exports=ae});var ie=A(function(nV,Lv){"use strict";var N4=Dv();Lv.exports=N4});var zv=A(function(uV,R4){R4.exports=["none","equiv","safe","same-kind","unsafe"]});var Vv=A(function(fV,Pv){"use strict";var C4=zv();function D4(){return C4.slice()}Pv.exports=D4});var Bv=A(function(dV,Mv){"use strict";function L4(){return{none:0,equiv:1,safe:2,"same-kind":3,unsafe:4}}Mv.exports=L4});var $a=A(function(lV,Fv){"use strict";var z4=require("@stdlib/utils/define-nonenumerable-read-only-property"),Uv=Vv(),P4=Bv();z4(Uv,"enum",P4);Fv.exports=Uv});var Gv=A(function(cV,Kv){"use strict";var V4=$a(),Yv=V4(),M4=Yv.length;function B4(r){var e;for(e=0;e0}no.exports=db});var Fe=A(function(_V,fo){"use strict";var lb=uo();fo.exports=lb});var lo=A(function(EV,cb){cb.exports={float64:{float64:1,float32:1,int32:0,int16:0,int8:0,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:1,complex64:0,binary:0,generic:1},float32:{float64:1,float32:1,int32:0,int16:0,int8:0,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:1,complex64:1,binary:0,generic:1},int32:{float64:1,float32:0,int32:1,int16:1,int8:1,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:1,complex64:0,binary:0,generic:1},int16:{float64:1,float32:1,int32:1,int16:1,int8:1,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:1,complex64:1,binary:0,generic:1},int8:{float64:1,float32:1,int32:1,int16:1,int8:1,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:1,complex64:1,binary:0,generic:1},uint32:{float64:1,float32:0,int32:0,int16:0,int8:0,uint32:1,uint16:1,uint8:1,uint8c:1,complex128:1,complex64:0,binary:0,generic:1},uint16:{float64:1,float32:1,int32:1,int16:0,int8:0,uint32:1,uint16:1,uint8:1,uint8c:1,complex128:1,complex64:1,binary:0,generic:1},uint8:{float64:1,float32:1,int32:1,int16:1,int8:0,uint32:1,uint16:1,uint8:1,uint8c:1,complex128:1,complex64:1,binary:0,generic:1},uint8c:{float64:1,float32:1,int32:1,int16:1,int8:0,uint32:1,uint16:1,uint8:1,uint8c:1,complex128:1,complex64:1,binary:0,generic:1},complex128:{float64:0,float32:0,int32:0,int16:0,int8:0,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:1,complex64:1,binary:0,generic:0},complex64:{float64:0,float32:0,int32:0,int16:0,int8:0,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:1,complex64:1,binary:0,generic:0},generic:{float64:0,float32:0,int32:0,int16:0,int8:0,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:0,complex64:0,binary:0,generic:1},binary:{float64:0,float32:0,int32:0,int16:0,int8:0,uint32:0,uint16:0,uint8:0,uint8c:0,complex128:0,complex64:0,binary:1,generic:0}}});var po=A(function(OV,yo){"use strict";var co=require("@stdlib/utils/keys"),yb=require("@stdlib/assert/has-own-property"),pb=te(),fa=lo(),ua;function mb(){var r,e,a,i,s,t,v,o,u;for(a={},r=co(fa),e=r.length,u=0;u0}xo.exports=wb});var da=A(function(kV,qo){"use strict";var Sb=ho();qo.exports=Sb});var bo=A(function(AV,go){"use strict";var jb=Fe(),_b=da();function Eb(r,e,a){return a==="unsafe"||r===e?!0:a==="none"||a==="equiv"?!1:a==="safe"?jb(r,e):_b(r,e)}go.exports=Eb});var ii=A(function(NV,wo){"use strict";var Ob=bo();wo.exports=Ob});var jo=A(function(RV,So){"use strict";var Tb=require("@stdlib/buffer/ctor"),Ib=require("@stdlib/array/float64"),kb=require("@stdlib/array/float32"),Ab=require("@stdlib/array/int16"),Nb=require("@stdlib/array/int32"),Rb=require("@stdlib/array/int8"),Cb=require("@stdlib/array/uint16"),Db=require("@stdlib/array/uint32"),Lb=require("@stdlib/array/uint8"),zb=require("@stdlib/array/uint8c"),Pb=require("@stdlib/array/complex64"),Vb=require("@stdlib/array/complex128"),Mb={binary:Tb,float64:Ib,float32:kb,generic:Array,int16:Ab,int32:Nb,int8:Rb,uint16:Cb,uint32:Db,uint8:Lb,uint8c:zb,complex64:Pb,complex128:Vb};So.exports=Mb});var Eo=A(function(CV,_o){"use strict";var Bb=jo();function Ub(r){return Bb[r]||null}_o.exports=Ub});var Ye=A(function(DV,Oo){"use strict";var Fb=Eo();Oo.exports=Fb});var Io=A(function(LV,To){"use strict";function Yb(r){var e;for(e=0;e=0&&r.length=t5(e)}fn.exports=s5});var cn=A(function($V,ln){"use strict";var v5=dn();ln.exports=v5});var mn=A(function(r9,pn){"use strict";var yn=require("@stdlib/math/base/special/abs");function o5(r){var e,a,i,s;if(e=r.length,e===0)return!1;for(a=yn(r[0]),s=1;sa)return!1;a=i}return!0}Qn.exports=J5});var ni=A(function(S9,$n){"use strict";var X5=Hn();$n.exports=X5});var eu=A(function(j9,ru){"use strict";var W5=Ke(),Q5=se(),H5=ni();function $5(r,e,a){return Q5(e)!==0&&H5(e)&&W5(r,e,a)}ru.exports=$5});var iu=A(function(_9,au){"use strict";var rw=eu();au.exports=rw});var su=A(function(E9,tu){"use strict";var ew=require("@stdlib/array/base/assert/contains").factory,aw=Fr(),iw=ew(aw("signed_integer"));tu.exports=iw});var ma=A(function(O9,vu){"use strict";var tw=su();vu.exports=tw});var nu=A(function(T9,ou){"use strict";var sw=require("@stdlib/array/base/assert/contains").factory,vw=Fr(),ow=sw(vw("unsigned_integer"));ou.exports=ow});var xa=A(function(I9,uu){"use strict";var nw=nu();uu.exports=nw});var du=A(function(k9,fu){"use strict";var Pr=require("@stdlib/utils/define-read-only-property"),zr={};Pr(zr,"isAllowedDataTypeCast",ii());Pr(zr,"isBufferLengthCompatible",Ka());Pr(zr,"isBufferLengthCompatibleShape",cn());Pr(zr,"isCastingMode",ri());Pr(zr,"isColumnMajor",ti());Pr(zr,"isColumnMajorContiguous",jn());Pr(zr,"isComplexFloatingPointDataType",Ge());Pr(zr,"isContiguous",An());Pr(zr,"isDataType",ze());Pr(zr,"isFloatingPointDataType",Ze());Pr(zr,"isIndexMode",Me());Pr(zr,"isIntegerDataType",si());Pr(zr,"isNumericDataType",vi());Pr(zr,"isOrder",$r());Pr(zr,"isReadOnly",ce());Pr(zr,"isRealDataType",pa());Pr(zr,"isRealFloatingPointDataType",oi());Pr(zr,"isRowMajor",ni());Pr(zr,"isRowMajorContiguous",iu());Pr(zr,"isSafeDataTypeCast",Fe());Pr(zr,"isSameKindDataTypeCast",da());Pr(zr,"isSignedIntegerDataType",ma());Pr(zr,"isSingleSegmentCompatible",Ke());Pr(zr,"isUnsignedIntegerDataType",xa());fu.exports=zr});var cu=A(function(A9,lu){"use strict";function uw(r,e){var a,i,s,t,v,o,u,f,n,d;for(s=1,t=1,d=1;d=0&&(n=r[v],i=n<0?-n:n,!(i<=a));)r[v+1]=n,e[o+1]=e[o],v-=1,o-=1;r[v+1]=u,e[o+1]=f,s+=1,t+=1}}lu.exports=uw});var mu=A(function(N9,pu){"use strict";var fw=require("@stdlib/array/base/zero-to"),dw=require("@stdlib/array/base/copy-indexed"),ha=require("@stdlib/array/base/take"),lw=require("@stdlib/array/base/filled"),ui=Le(),cw=cu(),yu=3;function yw(r,e,a,i){var s,t,v,o,u,f,n,d,y,x;if(s=fw(r.length),f=ui(e),n=ui(a),d=ui(i),t=lw([],4),t[f].push(e),t[n].push(a),t[d].push(i),v=t[0].length,v===yu)u=e;else if(v===yu-1){for(y=1;y<4;y++)if(t[y].length){u=t[y][0];break}}else{for(x=0,y=1;y<4;y++)o=t[y].length,o>=v&&(v=o,x=y);u=t[x][0]}return u=dw(u),cw(u,s),r=ha(r,s),e=e===u?u:ha(e,s),a=a===u?u:ha(a,s),i=i===u?u:ha(i,s),{sh:r,sx:e,sy:a,sz:i}}pu.exports=yw});var hu=A(function(R9,xu){"use strict";var pw=mu();xu.exports=pw});var gu=A(function(C9,qu){"use strict";var mw={BLOCK_SIZE_IN_BYTES:64,BLOCK_SIZE_IN_ELEMENTS:8};qu.exports=mw});var wu=A(function(D9,bu){"use strict";var fi=fe(),qa=gu();function xw(r,e,a){var i,s,t;return i=fi(r),s=fi(e),t=fi(a),i===null||s===null||t===null?qa.BLOCK_SIZE_IN_ELEMENTS:i>s&&i>t?qa.BLOCK_SIZE_IN_BYTES/i|0:s>t?qa.BLOCK_SIZE_IN_BYTES/s|0:qa.BLOCK_SIZE_IN_BYTES/t|0}bu.exports=xw});var ju=A(function(L9,Su){"use strict";var hw=wu();Su.exports=hw});var Ou=A(function(z9,Eu){"use strict";var qw=require("@stdlib/string/format"),ga=require("@stdlib/math/base/special/trunc"),_u=require("@stdlib/math/base/special/abs");function gw(r,e,a,i,s,t){var v,o,u,f,n,d;for(v=r.length,o=1,d=0;d=o&&(s=o-1);else if(t==="wrap")s<0?(s+=o,s<0&&(s%=o,s!==0&&(s+=o))):s>=o&&(s-=o,s>=o&&(s%=o));else if(s<0||s>=o)throw new RangeError(qw("invalid argument. Linear index must not exceed array dimensions. Number of array elements: `%u`. Value: `%d`.",o,s));if(u=0,i==="column-major"){for(d=v-1;d>=0;d--)n=e[d],n<0?(f=ga(s/n),s-=f*n,f+=r[d]-1):(f=ga(s/n),s-=f*n),u+=f*_u(n);return u}for(d=0;d=0;f--)if(n=o-v+f,!(n<0)){if(u=s[n],i=e[f],i!==0&&if&&(f=e[n]);for(n=0;n=0;){for(t=e[0]-f+n,t>=0?i=s[t]:i=1,d=1;d=0?o=r[d][v]:o=1,i===1){i=o;continue}if(!(o===1||i===o))return null}a[n]=i,n-=1}return a}Pu.exports=Cw});var Bu=A(function(Y9,Mu){"use strict";var Dw=Vu();Mu.exports=Dw});var Fu=A(function(K9,Uu){"use strict";var Lw=Ue(),zw=la();function Pw(r){var e=zw(r);return e?Lw(e):null}Uu.exports=Pw});var Ku=A(function(G9,Yu){"use strict";var Vw=Fu();Yu.exports=Vw});var Zu=A(function(Z9,Gu){"use strict";function Mw(){return{binary:"r",bool:"x",complex64:"c",complex128:"z",float16:"h",bfloat16:"e",float32:"f",float64:"d",float128:"g",generic:"o",int8:"s",int16:"k",int32:"i",int64:"l",int128:"m",int256:"n",uint8:"b",uint8c:"a",uint16:"t",uint32:"u",uint64:"v",uint128:"w",uint256:"y"}}Gu.exports=Mw});var Wu=A(function(J9,Xu){"use strict";var Bw=te(),Ju=Zu(),di;function Uw(r){return arguments.length===0?Ju():(di===void 0&&(di=Ju()),di[Bw(r)]||null)}Xu.exports=Uw});var li=A(function(X9,Qu){"use strict";var Fw=Wu();Qu.exports=Fw});var ef=A(function(W9,rf){"use strict";var Hu=require("@stdlib/utils/object-inverse"),$u=li(),ci;function Yw(r){return arguments.length===0?Hu($u()):(ci===void 0&&(ci=Hu($u())),ci[r]||null)}rf.exports=Yw});var tf=A(function(Q9,af){"use strict";var Kw=ef();af.exports=Kw});var vf=A(function(H9,sf){"use strict";function Gw(){return{binary:"byte",bool:"boolean",complex64:"single-precision floating-point complex number",complex128:"double-precision floating-point complex number",float16:"half-precision floating-point number",bfloat16:"brain floating-point number",float32:"single-precision floating-point number",float64:"double-precision floating-point number",float128:"quadruple-precision floating-point number",generic:"generic array value",int8:"signed 8-bit integer",int16:"signed 16-bit integer",int32:"signed 32-bit integer",int64:"signed 64-bit integer",int128:"signed 128-bit integer",int256:"signed 256-bit integer",uint8:"unsigned 8-bit integer",uint8c:"unsigned 8-bit integer (clamped)",uint16:"unsigned 16-bit integer",uint32:"unsigned 32-bit integer",uint64:"unsigned 64-bit integer",uint128:"unsigned 128-bit integer",uint256:"unsigned 256-bit integer"}}sf.exports=Gw});var uf=A(function($9,nf){"use strict";var Zw=te(),of=vf(),yi;function Jw(r){return arguments.length===0?of():(yi===void 0&&(yi=of()),yi[Zw(r)]||null)}nf.exports=Jw});var df=A(function(rM,ff){"use strict";var Xw=uf();ff.exports=Xw});var cf=A(function(eM,lf){"use strict";var Ww=va(),Qw=Ue();function Hw(r){var e=typeof r;return e==="number"?Ww(r)?r:null:e==="string"?Qw(r):null}lf.exports=Hw});var pi=A(function(aM,yf){"use strict";var $w=cf();yf.exports=$w});var pf=A(function(iM,rS){rS.exports={binary:null,bool:"bool",complex64:"stdlib_complex64_t",complex128:"stdlib_complex128_t",float16:null,bfloat16:null,float32:"float",float64:"double",float128:null,generic:null,int8:"int8_t",int16:"int16_t",int32:"int32_t",int64:"int64_t",int128:null,int256:null,uint8:"uint8_t",uint8c:null,uint16:"uint16_t",uint32:"uint32_t",uint64:"uint64_t",uint128:null,uint256:null}});var xf=A(function(tM,mf){"use strict";var eS=te(),aS=pf();function iS(r){return aS[eS(r)]||null}mf.exports=iS});var qf=A(function(sM,hf){"use strict";var tS=xf();hf.exports=tS});var wf=A(function(vM,bf){"use strict";var sS=require("@stdlib/assert/is-array-like-object"),gf=require("@stdlib/assert/is-nonnegative-integer").isPrimitive,vS=te(),mi=require("@stdlib/string/format");function oS(r,e,a){var i,s,t,v,o,u,f,n;if(!sS(r))throw new TypeError(mi("invalid argument. First argument must be an array-like object. Value: `%s`.",r));if(!gf(e))throw new TypeError(mi("invalid argument. Second argument must be a nonnegative integer. Value: `%s`.",e));if(!gf(a))throw new TypeError(mi("invalid argument. Third argument must be a nonnegative integer. Value: `%s`.",a));if(i=r.length,i===0)throw new RangeError("invalid argument. First argument must contain at least one element.");if(o=e+a,i%o!==0)throw new RangeError("invalid arguments. Length of the first argument is incompatible with the second and third arguments.");for(s=[],t=[],u=2*o,n=2*e,f=0;f<=u;f++)f===0?f===n?t.push("() => ("):t.push("("):f===u?f===n?t.push(") => ()"):t.push(")"):f===n?t.push(") => ("):f%2===1?t.push(""):t.push(", ");for(f=0;f0?(t=lS(e),v=uS(e,a)):(t=1,v=[0]),r==="binary"?s=yS(t):s=cS(t,r),new dS(r,s,e,v,fS(e,v),a)}jf.exports=pS});var Of=A(function(uM,Ef){"use strict";var mS=_f();Ef.exports=mS});var If=A(function(fM,Tf){"use strict";var xS=Yr(),hS=Kr(),qS=Dr(),gS=require("@stdlib/array/empty"),bS=require("@stdlib/buffer/alloc-unsafe");function wS(r){var e,a,i,s,t,v,o;return o=r.dtype,t=r.shape,s=r.order,e=t.length,e>0?(a=qS(t),v=xS(t,s)):(a=1,v=[0]),o==="binary"?i=bS(a):i=gS(a,o),new r.constructor(o,i,t,v,hS(t,v),s)}Tf.exports=wS});var Af=A(function(dM,kf){"use strict";var SS=If();kf.exports=SS});var Cf=A(function(lM,Rf){"use strict";var jS=ce(),Nf=require("@stdlib/string/format");function _S(r,e){var a,i,s,t,v,o,u;if(t=r.shape,v=r.strides,s=r.order,o=t.length,a=[],i=[],e<0){if(e<-o-1)throw new RangeError(Nf("invalid argument. Specified axis is out-of-bounds. Must be on the interval: [-%u-1, %u]. Value: `%d`.",o,o,e));e+=o+1}else if(e>o)throw new RangeError(Nf("invalid argument. Specified axis is out-of-bounds. Must be on the interval: [-%u-1, %u]. Value: `%d`.",o,o,e));if(e===0)for(i.push(1),a.push(v[0]),u=0;u=u&&(s=u-1);else if(t==="wrap")s<0?(s+=u,s<0&&(s%=u,s!==0&&(s+=u))):s>=u&&(s-=u,s>=u&&(s%=u));else if(s<0||s>=u)throw new RangeError(DS("invalid argument. Linear index must not exceed array dimensions. Number of array elements: `%u`. Value: `%d`.",u,s));if(a===0){if(i==="column-major"){for(d=0;d=0;d--)n=s%r[d],s-=n,s/=r[d],v[d]=n;return v}if(i==="column-major"){for(d=o-1;d>=0;d--)n=e[d],n<0?(f=wa(s/n),s-=f*n,v[d]=r[d]-1+f):(f=wa(s/n),s-=f*n,v[d]=f);return v}for(d=0;d0&&(s+=e[t]*(r[t]-1))}return s}Gf.exports=BS});var Xf=A(function(gM,Jf){"use strict";var US=Zf();Jf.exports=US});var Hf=A(function(bM,Qf){"use strict";var Wf=ba();function FS(r,e){var a,i,s;if(i=e.length,a=r.shape,a.length===i){for(s=0;si;t--)s[t]=a[t];for(t=i;t>=0&&(v=(a[t]+1)%e[t],s[t]=v,!(v>0));t--);for(t-=1;t>=0;t--)s[t]=a[t];return s}function u8(r,e,a,i,s){var t,v;for(t=0;t0));t++);for(t+=1;t=t)return null;return e===o8?n8(t,r,a,i,s):u8(t,r,a,i,s)}pd.exports=f8});var xd=A(function(NM,md){"use strict";var d8=require("@stdlib/array/base/zeros"),l8=bi();function c8(r,e,a,i){return l8(r,e,a,i,d8(r.length))}md.exports=c8});var be=A(function(RM,qd){"use strict";var y8=require("@stdlib/utils/define-nonenumerable-read-only-property"),hd=xd(),p8=bi();y8(hd,"assign",p8);qd.exports=hd});var bd=A(function(CM,gd){"use strict";function m8(r){var e,a;for(e=0,a=0;a=0&&(n=r[v],i=n<0?-n:n,!(i<=a));)r[v+1]=n,e[o+1]=e[o],v-=1,o-=1;r[v+1]=u,e[o+1]=f,s+=1,t+=1}}jd.exports=h8});var Od=A(function(zM,Ed){"use strict";var q8=require("@stdlib/array/base/zero-to"),g8=require("@stdlib/array/base/copy-indexed"),b8=require("@stdlib/array/base/take"),w8=_d();function S8(r,e){var a;return a=q8(r.length),e=g8(e),w8(e,a),r=b8(r,a),{sh:r,sx:e}}Ed.exports=S8});var Mr=A(function(PM,Td){"use strict";var j8=Od();Td.exports=j8});var kd=A(function(VM,Id){"use strict";var _8={BLOCK_SIZE_IN_BYTES:64,BLOCK_SIZE_IN_ELEMENTS:8};Id.exports=_8});var Rd=A(function(MM,Nd){"use strict";var E8=fe(),Ad=kd();function O8(r){var e=E8(r);return e===null?Ad.BLOCK_SIZE_IN_ELEMENTS:Ad.BLOCK_SIZE_IN_BYTES/e|0}Nd.exports=O8});var Br=A(function(BM,Cd){"use strict";var T8=Rd();Cd.exports=T8});var Ld=A(function(UM,Dd){"use strict";var I8=Mr(),k8=Br();function A8(r,e){var a,i,s,t,v,o,u,f,n,d,y,x,q,p,g,m,b;for(b=I8(r.shape,r.strides),u=b.sh,d=b.sx,a=k8(r.dtype),y=r.offset,i=r.data,t=d[0],s=r.accessors[1],m=u[1];m>0;)for(m0;)for(g0;)for(E0;)for(h0;)for(w0;)for(S0;)for(O0;)for(l0;)for(_0;)for(I0;)for(R0;)for(N0;)for(T0;)for(k0;)for(V0;)for(z0;)for(C0;)for(L0;)for(D0;)for(I0;)for(F0;)for(U0;)for(B0;)for(M0;)for(P0;)for(V0;)for(z0;)for(G0;)for(J0;)for(K0;)for(Z0;)for(Y0;)for(F0;)for(U0;)for(B0;)for(H0;)for($0;)for(W0;)for(Q0;)for(X0;)for(G0;)for(J0;)for(K0;)for(Z0;)for(ar0;)for(sr0;)for(er0;)for(ir0;)for(rr0;)for(H0;)for($0;)for(W0;)for(Q0;)for(X0;)for(g0;)for(p0;)for(h0;)for(w0;)for(j0;)for(O0;)for(l0;)for(_0;)for(c0;)for(R0;)for(N0;)for(T0;)for(k0;)for(S0;)for(z0;)for(C0;)for(L0;)for(D0;)for(I0;)for(R0;)for(U0;)for(B0;)for(M0;)for(P0;)for(V0;)for(z0;)for(C0;)for(J0;)for(K0;)for(Z0;)for(Y0;)for(F0;)for(U0;)for(B0;)for(M0;)for($0;)for(W0;)for(Q0;)for(X0;)for(G0;)for(J0;)for(K0;)for(Z0;)for(Y0;)for(sr0;)for(er0;)for(ir0;)for(rr0;)for(H0;)for($0;)for(W0;)for(Q0;)for(X0;)for(G=o&&(s=o-1);else if(t==="wrap")s<0?(s+=o,s<0&&(s%=o,s!==0&&(s+=o))):s>=o&&(s-=o,s>=o&&(s%=o));else if(s<0||s>=o)throw new RangeError(Mj("invalid argument. Linear index must not exceed array dimensions. Number of array elements: `%u`. Value: `%d`.",o,s));if(u=a,i==="column-major"){for(n=0;n=0;n--)f=s%r[n],s-=f,s/=r[n],u+=f*e[n];return u}V0.exports=Bj});var ye=A(function(hB,B0){"use strict";var Uj=M0();B0.exports=Uj});var F0=A(function(qB,U0){"use strict";var Fj=Dr(),Yj=ye(),Kj="throw";function Gj(r,e){var a,i,s,t,v,o,u,f,n;for(v=r.shape,s=Fj(v),a=r.data,o=r.strides,u=r.offset,i=r.order,t=r.accessors[1],n=0;n0&&(y=x7(y.length))}else y=Sc(x);return jc(y)===0?g7(d,v,_i(y,f),u,!i):(t=h7(x,s,t),y=_i(y,f),y.length===0?new d(v,r.data,[],[0],t,u,{readonly:!i}):(s=q7(x,s,f),new d(v,r.data,y,s,t,u,{readonly:!i})))}Ec.exports=b7});var me=A(function(fU,Tc){"use strict";var w7=Oc();Tc.exports=w7});var kc=A(function(dU,Ic){"use strict";function S7(r,e){var a,i,s,t,v,o,u,f,n,d;for(s=1,t=1,d=1;d=0&&(n=r[v],i=n<0?-n:n,!(i<=a));)r[v+1]=n,e[o+1]=e[o],v-=1,o-=1;r[v+1]=u,e[o+1]=f,s+=1,t+=1}}Ic.exports=S7});var Rc=A(function(lU,Nc){"use strict";var j7=require("@stdlib/array/base/zero-to"),_7=require("@stdlib/array/base/copy-indexed"),Ac=require("@stdlib/array/base/take"),E7=kc();function O7(r,e,a){var i;return i=j7(r.length),e=_7(e),E7(e,i),r=Ac(r,i),a=Ac(a,i),{sh:r,sx:e,sy:a}}Nc.exports=O7});var kr=A(function(cU,Cc){"use strict";var T7=Rc();Cc.exports=T7});var Lc=A(function(yU,Dc){"use strict";var I7={BLOCK_SIZE_IN_BYTES:64,BLOCK_SIZE_IN_ELEMENTS:8};Dc.exports=I7});var Vc=A(function(pU,Pc){"use strict";var zc=fe(),Ei=Lc();function k7(r,e){var a,i;return a=zc(r),i=zc(e),a===null||i===null?Ei.BLOCK_SIZE_IN_ELEMENTS:a>i?Ei.BLOCK_SIZE_IN_BYTES/a|0:Ei.BLOCK_SIZE_IN_BYTES/i|0}Pc.exports=k7});var Ar=A(function(mU,Mc){"use strict";var A7=Vc();Mc.exports=A7});var Uc=A(function(xU,Bc){"use strict";var N7=kr(),R7=Ar();function C7(r,e,a){var i,s,t,v,o,u,f,n,d,y,x,q,p,g,m,b,j,w,h,E,c,_,l,O,S;for(S=N7(r.shape,r.strides,e.strides),q=S.sh,m=S.sx,b=S.sy,i=R7(r.dtype,e.dtype),j=r.offset,w=e.offset,s=r.data,t=e.data,u=m[0],n=b[0],v=r.accessors[0],o=e.accessors[1],O=q[1];O>0;)for(O0;)for(l0;)for(D0;)for(I0;)for(R0;)for(B0;)for(M0;)for(P0;)for(V0;)for(G0;)for(J0;)for(K0;)for(Z0;)for(Y0;)for(ir0;)for(rr0;)for(H0;)for($0;)for(W0;)for(Q0;)for(nr0;)for(or0;)for(vr0;)for(tr0;)for(ar0;)for(sr0;)for(er0;)for(pr0;)for(lr0;)for(yr0;)for(cr0;)for(dr0;)for(fr0;)for(ur0;)for(nr0;)for(Sr0;)for(wr0;)for(qr0;)for(jr0;)for(gr0;)for(br0;)for(hr0;)for(pr0;)for(lr0;)for(Lr0;)for(Cr0;)for(Ir0;)for(Tr0;)for(Or0;)for(Er0;)for(_r0;)for(Sr0;)for(wr0;)for(qr0;)for(_0;)for(c0;)for(R0;)for(N0;)for(T0;)for(P0;)for(V0;)for(z0;)for(C0;)for(K0;)for(Z0;)for(Y0;)for(F0;)for(U0;)for(H0;)for($0;)for(W0;)for(Q0;)for(X0;)for(G0;)for(vr0;)for(tr0;)for(ar0;)for(sr0;)for(er0;)for(ir0;)for(rr0;)for(yr0;)for(cr0;)for(dr0;)for(fr0;)for(ur0;)for(nr0;)for(or0;)for(vr0;)for(qr0;)for(jr0;)for(gr0;)for(br0;)for(hr0;)for(pr0;)for(lr0;)for(yr0;)for(cr0;)for(Ir0;)for(Tr0;)for(Or0;)for(Er0;)for(_r0;)for(Sr0;)for(wr0;)for(qr0;)for(jr0;)for(gr=v)throw new RangeError(Ii("invalid argument. Dimension index exceeds the number of dimensions. Number of dimensions: %d. Value: `%d`.",v,e));return t=lI(null,v),t[o]=a,a=uI.apply(null,t),dI(r,a,i,s)}Ay.exports=cI});var Cy=A(function(fF,Ry){"use strict";var yI=Ny();Ry.exports=yI});var Ly=A(function(dF,Dy){"use strict";var pI=require("@stdlib/array/base/copy-indexed");function mI(r,e){var a=r.strides;return e?pI(a):a}Dy.exports=mI});var Py=A(function(lF,zy){"use strict";var xI=Ly();zy.exports=xI});var My=A(function(cF,Vy){"use strict";var hI=require("@stdlib/string/format");function qI(){var r,e,a,i,s,t,v,o,u,f,n,d;for(i=arguments[0],r=arguments[1],e=arguments[2],s=i.length,t=arguments[3+s],a=t.length,o=e,d=0;d=u&&(n=u-1);else if(v==="wrap")n<0?(n+=u,n<0&&(n%=u,n!==0&&(n+=u))):n>=u&&(n-=u,n>=u&&(n%=u));else if(n<0||n>=u)throw new RangeError(hI("invalid argument. Subscripts must not exceed array dimensions. Subscript: `%u`. Value: `%d`.",d,n));f=r[d],f<0&&e===0?o-=n*f:o+=n*f}return o}Vy.exports=qI});var ki=A(function(yF,By){"use strict";var gI=My();By.exports=gI});var Yy=A(function(pF,Fy){"use strict";function Uy(r,e,a,i,s,t){var v,o,u,f,n;if(t>=e.length)return r.accessors[0](r.data,i);for(u=[],f=e[t],v=a[t],n=0;n0;)for(k0;)for(S0;)for(C0;)for(L0;)for(D0;)for(F0;)for(U0;)for(B0;)for(M0;)for(Q0;)for(X0;)for(G0;)for(J0;)for(K0;)for(sr0;)for(er0;)for(ir0;)for(rr0;)for(H0;)for($0;)for(fr0;)for(ur0;)for(nr0;)for(or0;)for(vr0;)for(tr0;)for(ar0;)for(br0;)for(hr0;)for(pr0;)for(lr0;)for(yr0;)for(cr0;)for(dr0;)for(fr0;)for(Er0;)for(_r0;)for(Sr0;)for(wr0;)for(qr0;)for(jr0;)for(gr0;)for(br0;)for(hr0;)for(Gr0;)for(Ur0;)for(Lr0;)for(Cr0;)for(Ir0;)for(Tr0;)for(Or0;)for(Er0;)for(_r0;)for(Sr0;)for(O0;)for(l0;)for(D0;)for(I0;)for(R0;)for(B0;)for(M0;)for(P0;)for(V0;)for(G0;)for(J0;)for(K0;)for(Z0;)for(Y0;)for(ir0;)for(rr0;)for(H0;)for($0;)for(W0;)for(Q0;)for(nr0;)for(or0;)for(vr0;)for(tr0;)for(ar0;)for(sr0;)for(er0;)for(pr0;)for(lr0;)for(yr0;)for(cr0;)for(dr0;)for(fr0;)for(ur0;)for(nr0;)for(Sr0;)for(wr0;)for(qr0;)for(jr0;)for(gr0;)for(br0;)for(hr0;)for(pr0;)for(lr0;)for(Lr0;)for(Cr0;)for(Ir0;)for(Tr0;)for(Or0;)for(Er0;)for(_r0;)for(Sr0;)for(wr0;)for(qr0?(t=dN(e),v=vN(e,a)):(t=1,v=[0]),s=nN(r,t),s===null)throw new TypeError(uN("invalid argument. First argument must be a recognized data type. Value: `%s`.",r));return new fN(r,s,e,v,oN(e,v),a)}Y2.exports=lN});var Z2=A(function(cY,G2){"use strict";var cN=K2();G2.exports=cN});var X2=A(function(yY,J2){"use strict";var yN=Yr(),pN=Kr(),mN=Wr(),xN=require("@stdlib/string/format"),hN=Dr();function qN(r){var e,a,i,s,t,v,o;if(o=r.dtype,t=r.shape,s=r.order,e=t.length,e>0?(a=hN(t),v=yN(t,s)):(a=1,v=[0]),i=mN(o,a),i===null)throw new TypeError(xN("invalid argument. First argument must have a recognized data type. Value: `%s`.",o));return new r.constructor(o,i,t,v,pN(t,v),s)}J2.exports=qN});var Q2=A(function(pY,W2){"use strict";var gN=X2();W2.exports=gN});var $2=A(function(mY,H2){"use strict";var xr=require("@stdlib/utils/define-read-only-property"),mr={};xr(mr,"assert",du());xr(mr,"binaryLoopOrder",hu());xr(mr,"binaryBlockSize",ju());xr(mr,"bind2vind",Iu());xr(mr,"broadcastArray",ba());xr(mr,"broadcastScalar",zu());xr(mr,"broadcastShapes",Bu());xr(mr,"buffer",Wr());xr(mr,"bufferCtors",Ye());xr(mr,"bufferDataType",la());xr(mr,"bufferDataTypeEnum",Ku());xr(mr,"bytesPerElement",fe());xr(mr,"char2dtype",tf());xr(mr,"clampIndex",Wa());xr(mr,"ndarray",re());xr(mr,"dtypeChar",li());xr(mr,"dtypeDesc",df());xr(mr,"dtypeEnum2Str",va());xr(mr,"dtypeResolveEnum",pi());xr(mr,"dtypeResolveStr",te());xr(mr,"dtypeStr2Enum",Ue());xr(mr,"dtype2c",qf());xr(mr,"dtypes2signatures",xi());xr(mr,"empty",Of());xr(mr,"emptyLike",Af());xr(mr,"expandDimensions",Lf());xr(mr,"scalar2ndarray",Mf());xr(mr,"ind",_e());xr(mr,"ind2sub",Sa());xr(mr,"iterationOrder",se());xr(mr,"maxViewBufferIndex",Xf());xr(mr,"maybeBroadcastArray",rd());xr(mr,"metaDataProps",td());xr(mr,"minViewBufferIndex",nd());xr(mr,"minmaxViewBufferIndex",ue());xr(mr,"ndarraylike2object",Xe());xr(mr,"ndims",gi());xr(mr,"nextCartesianIndex",be());xr(mr,"nonsingletonDimensions",Sd());xr(mr,"nullary",hl());xr(mr,"nullaryLoopOrder",Mr());xr(mr,"nullaryBlockSize",Br());xr(mr,"numel",Dr());xr(mr,"offset",wl());xr(mr,"outputPolicyEnum2Str",_a());xr(mr,"outputPolicyResolveEnum",Bl());xr(mr,"outputPolicyResolveStr",Kl());xr(mr,"outputPolicyStr2Enum",Ea());xr(mr,"prependSingletonDimensions",Xl());xr(mr,"removeSingletonDimensions",$l());xr(mr,"serializeMetaData",oc());xr(mr,"shape",dc());xr(mr,"shape2strides",Yr());xr(mr,"singletonDimensions",pc());xr(mr,"slice",me());xr(mr,"sliceAssign",Oa());xr(mr,"sliceDimension",Cy());xr(mr,"strides",Py());xr(mr,"strides2offset",Kr());xr(mr,"strides2order",Le());xr(mr,"sub2ind",ki());xr(mr,"ndarray2array",Ai());xr(mr,"transpose",Qy());xr(mr,"unary",Oi());xr(mr,"unaryBy",V2());xr(mr,"unaryLoopOrder",kr());xr(mr,"unaryOutputDataType",F2());xr(mr,"unaryBlockSize",Ar());xr(mr,"vind2bind",ye());xr(mr,"wrapIndex",Qa());xr(mr,"zeros",Z2());xr(mr,"zerosLike",Q2());H2.exports=mr});var em=A(function(xY,rm){"use strict";var bN=require("@stdlib/assert/is-ndarray-like"),wN=require("@stdlib/assert/is-collection"),SN=require("@stdlib/assert/is-nonnegative-integer").isPrimitive,ea=require("@stdlib/array/base/copy-indexed"),aa=require("@stdlib/string/format");function jN(r,e){var a,i,s,t,v,o,u,f,n;if(!bN(r))throw new TypeError(aa("invalid argument. First argument must be an ndarray. Value: `%s`.",r));if(!wN(e))throw new TypeError(aa("invalid argument. Second argument must be an array of nonnegative integers. Value: `%s`.",e));if(v=e.length,s=r.shape,o=s.length,v=0;f--)if(n=o-v+f,!(n<0)){if(u=s[n],i=e[f],!SN(i))throw new TypeError(aa("invalid argument. Second argument must be an array of nonnegative integers. Value: `%s`.","["+e.join(",")+"]"));if(i!==0&&i1){if(e=arguments[1],!LN(e))throw new TypeError(Ri("invalid argument. Options argument must be an object. Value: `%s`.",e));Ta(e,"dtype")?a=e.dtype:a=lm,Ta(e,"order")?i=e.order:i=cm,Ta(e,"mode")&&(t.mode=e.mode),Ta(e,"submode")&&(t.submode=e.submode)}else a=lm,i=cm;if(typeof r=="number")f=[r];else if(zN(r))f=r;else throw new TypeError(Ri("invalid argument. First argument must be either a nonnegative integer or an array of nonnegative integers. Value: `%s`.",r));if(s=f.length,s>0){if(o=UN(f),o!==o||o<0)throw new TypeError(Ri("invalid argument. First argument must be either a nonnegative integer or an array of nonnegative integers. Value: `%s`.",r));u=PN(f,i)}else o=1,u=[0];return a==="binary"?v=BN(o):v=MN(o,a),new FN(a,v,f,u,VN(f,u),i,t)}pm.exports=YN});var hm=A(function(SY,xm){"use strict";var KN=mm();xm.exports=KN});var gm=A(function(jY,qm){"use strict";var GN=require("@stdlib/assert/is-ndarray-like"),ZN=require("@stdlib/assert/is-plain-object"),JN=require("@stdlib/assert/is-nonnegative-integer-array").primitives,ia=require("@stdlib/assert/has-own-property"),XN=Yr(),WN=Kr(),QN=Dr(),HN=ie(),$N=require("@stdlib/array/empty"),rR=require("@stdlib/buffer/alloc-unsafe"),Ci=require("@stdlib/string/format");function eR(r){var e,a,i,s,t,v,o,u,f;if(!GN(r))throw new TypeError(Ci("invalid argument. First argument must be an ndarray-like object. Value: `%s`.",r));if(t={},arguments.length>1){if(e=arguments[1],!ZN(e))throw new TypeError(Ci("invalid argument. Options argument must be an object. Value: `%s`.",e));if(ia(e,"dtype")?a=e.dtype:a=r.dtype,ia(e,"shape")){if(f=e.shape,typeof f=="number"&&(f=[f]),!JN(f))throw new TypeError(Ci("invalid option. `%s` option must be a nonnegative integer or an array of nonnegative integers. Option: `%s`.","shape",f))}else f=r.shape;ia(e,"order")?i=e.order:i=r.order,ia(e,"mode")&&(t.mode=e.mode),ia(e,"submode")&&(t.submode=e.submode)}else a=r.dtype,f=r.shape,i=r.order;return s=f.length,s>0?(o=QN(f),o<0&&(o=0),u=XN(f,i)):(o=1,u=[0]),a==="binary"?v=rR(o):v=$N(o,a),new HN(a,v,f,u,WN(f,u),i,t)}qm.exports=eR});var wm=A(function(_Y,bm){"use strict";var aR=gm();bm.exports=aR});var Di=A(function(EY,Sm){"use strict";var iR=/^-?[0-9]+$/;Sm.exports=iR});var Li=A(function(OY,jm){"use strict";var tR=/:/;jm.exports=tR});var Em=A(function(TY,_m){"use strict";var sR=require("@stdlib/string/base/trim"),vR=require("@stdlib/string/base/replace"),zi=require("@stdlib/slice/multi"),oR=require("@stdlib/slice/base/str2multislice"),nR=require("@stdlib/slice/base/seq2multislice"),uR=require("@stdlib/slice/base/str2slice"),we=require("@stdlib/string/format"),fR=Di(),dR=Li();function lR(r,e){var a,i,s,t;if(i=sR(e),s=i[0],s==="S"){if(t=uR(e),t===null)throw new Error(we("invalid operation. Unsupported slice operation. Value: `%s`.",e));t=new zi(t)}else if(s==="M"){if(t=oR(i),t===null)throw new Error(we("invalid operation. Unsupported slice operation. Value: `%s`.",e))}else if(fR.test(i))t=parseInt(i,10),t=new zi(t);else if(dR.test(i)){if(a=r.shape,t=nR(i,a,!0),t.code)throw t.code==="ERR_SLICE_INVALID_INCREMENT"?new Error(we("invalid operation. A subsequence increment must be a non-zero integer. Value: `%s`.",e)):t.code==="ERR_SLICE_INVALID_ELLIPSIS"?new Error(we("invalid operation. A subsequence may only include a single ellipsis. Value: `%s`.",e)):t.code==="ERR_SLICE_INVALID_SUBSEQUENCE"?new Error(we("invalid operation. Unsupported slice operation. Value: `%s`.",e)):new RangeError(we("invalid operation. Number of slice dimensions does not match the number of array dimensions. Array shape: (%s). Slice dimensions: %u.",a.join(","),vR(i,/\.\.\.,/,"").split(",").length))}else if(i.length===0||i==="...")t=new zi;else throw new Error(we("invalid operation. Unsupported slice operation. Value: `%s`.",e));return t}_m.exports=lR});var km=A(function(IY,Im){"use strict";var cR=require("@stdlib/string/base/trim"),yR=require("@stdlib/string/base/replace"),Om=require("@stdlib/slice/multi"),pR=require("@stdlib/slice/base/str2multislice"),Tm=require("@stdlib/slice/base/seq2multislice"),mR=require("@stdlib/slice/base/str2slice"),he=require("@stdlib/string/format"),xR=Di();function hR(r,e,a){var i,s,t,v;if(s=cR(e),t=s[0],t==="S"){if(v=mR(e),v===null)throw new Error(he("invalid operation. Unsupported slice operation. Value: `%s`.",e));v=new Om(v)}else if(t==="M"){if(v=pR(s),v===null)throw new Error(he("invalid operation. Unsupported slice operation. Value: `%s`.",e))}else if(xR.test(s))v=parseInt(s,10),v=new Om(v);else if(s.length>0){if(i=r.shape,v=Tm(s,i,!0),v.code){if(v.code==="ERR_SLICE_INVALID_INCREMENT")throw new Error(he("invalid operation. A subsequence increment must be a non-zero integer. Value: `%s`.",e));if(v.code==="ERR_SLICE_INVALID_ELLIPSIS")throw new Error(he("invalid operation. A subsequence may only include a single ellipsis. Value: `%s`.",e));if(v.code==="ERR_SLICE_INVALID_SUBSEQUENCE")throw new Error(he("invalid operation. Unsupported slice operation. Value: `%s`.",e));if(v.code==="ERR_SLICE_TOO_MANY_DIMENSIONS")throw new RangeError(he("invalid operation. Number of slice dimensions does not match the number of array dimensions. Array shape: (%s). Slice dimensions: %u.",r.shape.join(","),yR(s,/\.\.\.,/,"").split(",").length));if(v.code==="ERR_SLICE_OUT_OF_BOUNDS"){if(a)throw new RangeError(he("invalid operation. Slice exceeds array bounds. Array shape: (%s).",i.join(",")));v=Tm(s,i,!1)}}}else throw new RangeError(he("invalid operation. Number of slice dimensions does not match the number of array dimensions. Array shape: (%s). Slice dimensions: %u.",r.shape.join(","),0));return v}Im.exports=hR});var Rm=A(function(kY,Nm){"use strict";var qR=require("@stdlib/string/base/trim"),gR=require("@stdlib/slice/base/str2multislice"),Am=require("@stdlib/slice/base/seq2multislice"),bR=require("@stdlib/slice/base/sargs2multislice"),ke=require("@stdlib/string/format"),wR=Li();function SR(r,e,a){var i,s,t,v;if(s=qR(e),t=s[0],t==="M"){if(v=gR(s),v===null)throw new Error(ke("invalid operation. Unsupported slice operation. Value: `%s`.",e))}else if(wR.test(s)||s==="..."){if(i=r.shape,v=Am(s,i,!0),v.code){if(v.code==="ERR_SLICE_INVALID_INCREMENT")throw new Error(ke("invalid operation. A subsequence increment must be a non-zero integer. Value: `%s`.",e));if(v.code==="ERR_SLICE_INVALID_ELLIPSIS")throw new Error(ke("invalid operation. A subsequence may only include a single ellipsis. Value: `%s`.",e));if(v.code==="ERR_SLICE_INVALID_SUBSEQUENCE")throw new Error(ke("invalid operation. Unsupported slice operation. Value: `%s`.",e));if(v.code==="ERR_SLICE_OUT_OF_BOUNDS"){if(a)throw new RangeError(ke("invalid operation. Slice exceeds array bounds. Array shape: (%s).",i.join(",")));v=Am(s,i,!1)}}}else if(v=bR(s),v===null)throw new Error(ke("invalid operation. Unsupported slice operation. Value: `%s`.",e));return v}Nm.exports=SR});var Pi=A(function(AY,Cm){"use strict";var jR=require("@stdlib/utils/properties-in"),_R=require("@stdlib/array/base/assert/contains").factory,ER=ie(),OR=ve(),TR=_R(jR(new ER("generic",[0],[],[0],0,OR.get("order"))));Cm.exports=TR});var Lm=A(function(NY,Dm){"use strict";var IR=require("@stdlib/assert/is-function");function kR(r,e,a){var i=r[e];if(IR(i))return s;return i;function s(){var t,v;for(t=[],v=0;v