diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/README.md b/lib/node_modules/@stdlib/number/int16/base/mul/README.md
new file mode 100644
index 000000000000..88ae7dcbca51
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/README.md
@@ -0,0 +1,101 @@
+
+
+# mul
+
+> Perform C-like multiplication of two signed 16-bit integers.
+
+
+
+
+
+
+
+## Usage
+
+```javascript
+var mul = require( '@stdlib/number/int16/base/mul' );
+```
+
+#### mul( a, b )
+
+Performs C-like multiplication of two signed 16-bit integers.
+
+```javascript
+var v = mul( -10|0, 4|0 );
+// returns -40
+```
+
+
+
+
+
+
+
+
+
+## Notes
+
+- The function emulates C-like multiplication of two signed 16-bit integers.
+
+
+
+
+
+
+
+## Examples
+
+
+
+```javascript
+var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
+var logEachMap = require( '@stdlib/console/log-each-map' );
+var INT16_MIN = require( '@stdlib/constants/int16/min' );
+var INT16_MAX = require( '@stdlib/constants/int16/max' );
+var mul = require( '@stdlib/number/int16/base/mul' );
+
+var x = discreteUniform( 100, INT16_MIN, INT16_MAX );
+var y = discreteUniform( 100, INT16_MIN, INT16_MAX );
+
+logEachMap( '%d x %d = %d', x, y, mul );
+```
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/benchmark/benchmark.js b/lib/node_modules/@stdlib/number/int16/base/mul/benchmark/benchmark.js
new file mode 100644
index 000000000000..06d5cadfa44c
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/benchmark/benchmark.js
@@ -0,0 +1,95 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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 minstd = require( '@stdlib/random/base/minstd' );
+var isnan = require( '@stdlib/math/base/assert/is-nan' );
+var format = require( '@stdlib/string/format' );
+var pkg = require( './../package.json' ).name;
+var mul = require( './../lib' );
+var polyfill = require( './../lib/polyfill.js' );
+
+
+// MAIN //
+
+bench( pkg, function benchmark( b ) {
+ var x;
+ var y;
+ var i;
+
+ b.tic();
+ for ( i = 0; i < b.iterations; i++ ) {
+ x = minstd();
+ y = mul( x|0, x|0 );
+ if ( isnan( y ) ) {
+ b.fail( 'should not return NaN' );
+ }
+ }
+ b.toc();
+ if ( isnan( y ) ) {
+ b.fail( 'should not return NaN' );
+ }
+ b.pass( 'benchmark finished' );
+ b.end();
+});
+
+bench( format( '%s::polyfill', pkg ), function benchmark( b ) {
+ var x;
+ var y;
+ var i;
+
+ b.tic();
+ for ( i = 0; i < b.iterations; i++ ) {
+ x = minstd();
+ y = polyfill( x|0, x|0 );
+ if ( isnan( y ) ) {
+ b.fail( 'should not return NaN' );
+ }
+ }
+ b.toc();
+ if ( isnan( y ) ) {
+ b.fail( 'should not return NaN' );
+ }
+ b.pass( 'benchmark finished' );
+ b.end();
+});
+
+bench( format( '%s::naive_multiplication', pkg ), function benchmark( b ) {
+ var x;
+ var y;
+ var i;
+
+ b.tic();
+ for ( i = 0; i < b.iterations; i++ ) {
+ x = minstd();
+ y = ( x|0 ) * ( x|0 );
+ if ( isnan( y ) ) {
+ b.fail( 'should not return NaN' );
+ }
+ }
+ b.toc();
+ if ( isnan( y ) ) {
+ b.fail( 'should not return NaN' );
+ }
+ b.pass( 'benchmark finished' );
+ b.end();
+});
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/docs/repl.txt b/lib/node_modules/@stdlib/number/int16/base/mul/docs/repl.txt
new file mode 100644
index 000000000000..a1fec2f3be72
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/docs/repl.txt
@@ -0,0 +1,25 @@
+
+{{alias}}( a, b )
+ Performs C-like multiplication of two signed 16-bit integers.
+
+ Parameters
+ ----------
+ a: integer
+ Signed 16-bit integer.
+
+ b: integer
+ Signed 16-bit integer.
+
+ Returns
+ -------
+ out: integer
+ Product.
+
+ Examples
+ --------
+ > var v = {{alias}}( -10|0, 4|0 )
+ -40
+
+ See Also
+ --------
+
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/docs/types/index.d.ts b/lib/node_modules/@stdlib/number/int16/base/mul/docs/types/index.d.ts
new file mode 100644
index 000000000000..ac3060e06c3c
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/docs/types/index.d.ts
@@ -0,0 +1,37 @@
+/*
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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
+
+/**
+* Performs C-like multiplication of two signed 16-bit integers.
+*
+* @param a - signed 16-bit integer
+* @param b - signed 16-bit integer
+* @returns product
+*
+* @example
+* var v = mul( -10|0, 4|0 );
+* // returns -40
+*/
+declare function mul( a: number, b: number ): number;
+
+
+// EXPORTS //
+
+export = mul;
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/docs/types/test.ts b/lib/node_modules/@stdlib/number/int16/base/mul/docs/types/test.ts
new file mode 100644
index 000000000000..eb78d8de9f2d
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/docs/types/test.ts
@@ -0,0 +1,55 @@
+/*
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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 mul = require( './index' );
+
+
+// TESTS //
+
+// The function returns a number...
+{
+ mul( -10, 4 ); // $ExpectType number
+}
+
+// The compiler throws an error if the function is provided values other than two numbers...
+{
+ mul( true, 3 ); // $ExpectError
+ mul( false, 2 ); // $ExpectError
+ mul( '5', 1 ); // $ExpectError
+ mul( [], 1 ); // $ExpectError
+ mul( {}, 2 ); // $ExpectError
+ mul( ( x: number ): number => x, 2 ); // $ExpectError
+
+ mul( 9, true ); // $ExpectError
+ mul( 9, false ); // $ExpectError
+ mul( 5, '5' ); // $ExpectError
+ mul( 8, [] ); // $ExpectError
+ mul( 9, {} ); // $ExpectError
+ mul( 8, ( x: number ): number => x ); // $ExpectError
+ mul( [], true ); // $ExpectError
+ mul( {}, false ); // $ExpectError
+ mul( false, '5' ); // $ExpectError
+ mul( {}, [] ); // $ExpectError
+ mul( '5', ( x: number ): number => x ); // $ExpectError
+}
+
+// The compiler throws an error if the function is provided insufficient arguments...
+{
+ mul(); // $ExpectError
+ mul( 3 ); // $ExpectError
+}
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/examples/index.js b/lib/node_modules/@stdlib/number/int16/base/mul/examples/index.js
new file mode 100644
index 000000000000..c18ae37d1649
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/examples/index.js
@@ -0,0 +1,30 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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';
+
+var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
+var logEachMap = require( '@stdlib/console/log-each-map' );
+var INT16_MIN = require( '@stdlib/constants/int16/min' );
+var INT16_MAX = require( '@stdlib/constants/int16/max' );
+var mul = require( './../lib' );
+
+var x = discreteUniform( 100, INT16_MIN, INT16_MAX );
+var y = discreteUniform( 100, INT16_MIN, INT16_MAX );
+
+logEachMap( '%d x %d = %d', x, y, mul );
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/lib/index.js b/lib/node_modules/@stdlib/number/int16/base/mul/lib/index.js
new file mode 100644
index 000000000000..addb9d37fc88
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/lib/index.js
@@ -0,0 +1,45 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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';
+
+/**
+* Perform C-like multiplication of two signed 16-bit integers.
+*
+* @module @stdlib/number/int16/base/mul
+*
+* @example
+* var mul = require( '@stdlib/number/int16/base/mul' );
+*
+* var v = mul( -10|0, 4|0 );
+* // returns -40
+*/
+
+// MODULES //
+
+var polyfill = require( './polyfill.js' );
+
+
+// MAIN //
+
+var main = polyfill;
+
+
+// EXPORTS //
+
+module.exports = main;
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/lib/polyfill.js b/lib/node_modules/@stdlib/number/int16/base/mul/lib/polyfill.js
new file mode 100644
index 000000000000..b91b41ad8b89
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/lib/polyfill.js
@@ -0,0 +1,132 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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';
+
+// VARIABLES //
+
+// Define a mask for the least significant 8 bits (low word): 255 => 0x00ff => 0000000011111111
+var LOW_WORD_MASK = 0x00ff; // asm type annotation
+
+
+// MAIN //
+
+/**
+* Performs C-like multiplication of two signed 16-bit integers.
+*
+* ## Method
+*
+* - To emulate C-like multiplication without the aid of 64-bit integers, we recognize that a 16-bit integer can be split into two 8-bit bytes
+*
+* ```tex
+* a = w_h*2^{8} + w_l
+* ```
+*
+* where \\( w_h \\) is the most significant 8 bits and \\( w_l \\) is the least significant 8 bits. For example, consider the maximum signed 16-bit integer \\( 2^{15}-1 \\)
+*
+* ```binarystring
+* 0111111111111111
+* ```
+*
+* The 8-bit high word is then
+*
+* ```binarystring
+* 01111111
+* ```
+*
+* and the 8-bit low word
+*
+* ```binarystring
+* 11111111
+* ```
+*
+* If we cast the high word to 16-bit precision and multiply by \\( 2^{8} \\) (equivalent to a 8-bit left shift), then the bit sequence is
+*
+* ```binarystring
+* 0111111100000000
+* ```
+*
+* Similarly, upon casting the low word to 16-bit precision, the bit sequence is
+*
+* ```binarystring
+* 0000000011111111
+* ```
+*
+* From the rules of binary addition, we recognize that adding the two 16-bit values for the high and low words will return our original value \\( 2^{15}-1 \\).
+*
+* - Accordingly, the multiplication of two 16-bit integers can be expressed
+*
+* ```tex
+* \begin{align*}
+* a \cdot b &= ( a_h \cdot 2^{8} + a_l) \cdot ( b_h \cdot 2^{8} + b_l) \\
+* &= a_l \cdot b_l + a_h \cdot b_l \cdot 2^{8} + a_l \cdot b_h \cdot 2^{8} + (a_h \cdot b_h) \cdot 2^{16} \\
+* &= a_l \cdot b_l + (a_h \cdot b_l + a_l \cdot b_h) \cdot 2^{8} + (a_h \cdot b_h) \cdot 2^{16}
+* \end{align*}
+* ```
+*
+* - We note that multiplying (dividing) an integer by \\( 2^n \\) is equivalent to performing a left (right) shift of \\( n \\) bits.
+*
+* - Further, as we want to return an integer of the same precision, for a 16-bit integer, the return value will be modulo \\( 2^{16} \\). Stated another way, we only care about the low word of a 32-bit result.
+*
+* - Accordingly, the last term, being evenly divisible by \\( 2^{16} \\), drops from the equation leaving the remaining two terms as the remainder.
+*
+* ```tex
+* a \cdot b = a_l \cdot b_l + (a_h \cdot b_l + a_l \cdot b_h) << 8
+* ```
+*
+* - Lastly, the second term in the above equation contributes to the middle bits and may cause the product to "overflow". However, we can disregard overflow bits due to modulo arithmetic, as discussed earlier with regard to the term involving the partial product of high bytes.
+*
+* @param {integer16} a - integer
+* @param {integer16} b - integer
+* @returns {integer16} product
+*
+* @example
+* var v = mul( -10, 4 );
+* // returns -40
+*/
+function mul( a, b ) {
+ var lbits;
+ var mbits;
+ var ha;
+ var hb;
+ var la;
+ var lb;
+
+ a |= 0; // asm type annotation
+ b |= 0; // asm type annotation
+
+ // Isolate the most significant 8-bits:
+ ha = ( a << 16 ) >> 24; // asm type annotation
+ hb = ( b << 16 ) >> 24; // asm type annotation
+
+ // Isolate the least significant 8 bits:
+ la = ( a & LOW_WORD_MASK )>>>0; // asm type annotation
+ lb = ( b & LOW_WORD_MASK )>>>0; // asm type annotation
+
+ // Shift by zero (`>>>0`) sets the sign on the high part of the low word (i.e., "mid-bits"):
+ lbits = ( la*lb )>>>0; // asm type annotation; no integer overflow possible
+ mbits = ( ((ha*lb) + (la*hb))<<8 )>>>0; // asm type annotation; possible integer overflow
+
+ // The final `|0` converts from an "unsigned integer" (possible integer overflow during sum) to a signed integer:
+ return ( ( (lbits + mbits) & 0xFFFF ) ^ 0x8000 ) - 0x8000; // asm type annotation
+}
+
+
+// EXPORTS //
+
+module.exports = mul;
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/package.json b/lib/node_modules/@stdlib/number/int16/base/mul/package.json
new file mode 100644
index 000000000000..fcead7a1bc4e
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/package.json
@@ -0,0 +1,186 @@
+{
+ "name": "@stdlib/number/int16/base/mul",
+ "version": "0.0.0",
+ "description": "Perform C-like multiplication of two signed 16-bit integers.",
+ "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",
+ "stdmath",
+ "mathematics",
+ "math",
+ "multiplication",
+ "multiply",
+ "mult",
+ "integer",
+ "int",
+ "int16",
+ "16-bit",
+ "16bit",
+ "long",
+ "emulate",
+ "emulation"
+ ],
+ "__stdlib__": {
+ "scaffold": {
+ "$schema": "math/base@v1.0",
+ "base_alias": "mul",
+ "alias": "mul",
+ "pkg_desc": "perform multiplication",
+ "desc": "performs multiplication",
+ "short_desc": "multiplication",
+ "parameters": [
+ {
+ "name": "x",
+ "desc": "first input value",
+ "type": {
+ "javascript": "number",
+ "jsdoc": "integer",
+ "c": "int16_t",
+ "dtype": "int16"
+ },
+ "domain": [
+ {
+ "min": "-infinity",
+ "max": "infinity"
+ }
+ ],
+ "rand": {
+ "prng": "random/base/discrete-uniform",
+ "parameters": [
+ 0,
+ 10
+ ]
+ },
+ "example_values": [
+ 1,
+ 27,
+ 0,
+ 10,
+ 9,
+ 8,
+ 1,
+ 125,
+ 20,
+ 11,
+ 12,
+ 3,
+ 2,
+ 15,
+ 16,
+ 17,
+ 125,
+ 19,
+ 101,
+ 21
+ ]
+ },
+ {
+ "name": "y",
+ "desc": "second input value",
+ "type": {
+ "javascript": "number",
+ "jsdoc": "integer",
+ "c": "int16_t",
+ "dtype": "int16"
+ },
+ "domain": [
+ {
+ "min": "-infinity",
+ "max": "infinity"
+ }
+ ],
+ "rand": {
+ "prng": "random/base/discrete-uniform",
+ "parameters": [
+ 0,
+ 10
+ ]
+ },
+ "example_values": [
+ 51,
+ 2,
+ 10,
+ 14,
+ 90,
+ 88,
+ 1,
+ 12,
+ 120,
+ 71,
+ 62,
+ 31,
+ 2,
+ 45,
+ 26,
+ 37,
+ 25,
+ 59,
+ 11,
+ 41
+ ]
+ }
+ ],
+ "output_policy": "same",
+ "returns": {
+ "desc": "result",
+ "type": {
+ "javascript": "number",
+ "jsdoc": "integer",
+ "c": "int16_t",
+ "dtype": "int16"
+ }
+ },
+ "keywords": [
+ "multiplication",
+ "multiply",
+ "product"
+ ],
+ "extra_keywords": []
+ }
+ }
+}
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/Makefile b/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/Makefile
new file mode 100644
index 000000000000..ae61922f1f28
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/Makefile
@@ -0,0 +1,131 @@
+#/
+# @license Apache-2.0
+#
+# Copyright (c) 2026 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.
+#/
+
+# VARIABLES #
+
+ifndef VERBOSE
+ QUIET := @
+endif
+
+# Determine the OS:
+#
+# [1]: https://en.wikipedia.org/wiki/Uname#Examples
+# [2]: http://stackoverflow.com/a/27776822/2225624
+OS ?= $(shell uname)
+ifneq (, $(findstring MINGW,$(OS)))
+ OS := WINNT
+else
+ifneq (, $(findstring MSYS,$(OS)))
+ OS := WINNT
+else
+ifneq (, $(findstring CYGWIN,$(OS)))
+ OS := WINNT
+endif
+endif
+endif
+
+# Define the program used for compiling C source files:
+ifdef C_COMPILER
+ CC := $(C_COMPILER)
+else
+ CC := gcc
+endif
+
+# Define the command-line options when compiling C files:
+CFLAGS ?= \
+ -std=c99 \
+ -O3 \
+ -Wall \
+ -pedantic
+
+# Determine whether to generate [position independent code][1]:
+#
+# [1]: https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#Code-Gen-Options
+# [2]: http://stackoverflow.com/questions/5311515/gcc-fpic-option
+ifeq ($(OS), WINNT)
+ fPIC ?=
+else
+ fPIC ?= -fPIC
+endif
+
+# List of C targets:
+c_targets := runner.out
+
+
+# RULES #
+
+#/
+# Compiles C source files.
+#
+# @param {string} [C_COMPILER] - C compiler
+# @param {string} [CFLAGS] - C compiler flags
+# @param {(string|void)} [fPIC] - flag indicating whether to generate position independent code
+#
+# @example
+# make
+#
+# @example
+# make all
+#/
+all: $(c_targets)
+
+.PHONY: all
+
+#/
+# Compiles C source files.
+#
+# @private
+# @param {string} CC - C compiler
+# @param {string} CFLAGS - C compiler flags
+# @param {(string|void)} fPIC - flag indicating whether to generate position independent code
+#/
+$(c_targets): %.out: %.c
+ $(QUIET) $(CC) $(CFLAGS) $(fPIC) -o $@ $< -lm
+
+#/
+# Generates test fixtures.
+#
+# @example
+# make run
+#/
+run: $(c_targets)
+ $(QUIET) ./$<
+
+.PHONY: run
+
+#/
+# Removes generated files.
+#
+# @example
+# make clean
+#/
+clean:
+ $(QUIET) -rm -f *.o *.out
+
+.PHONY: clean
+
+#/
+# Removes generated test fixtures.
+#
+# @example
+# make clean-fixtures
+#/
+clean-fixtures:
+ $(QUIET) -rm -f *.json
+
+.PHONY: clean-fixtures
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/data.json b/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/data.json
new file mode 100644
index 000000000000..fbc37dbaeb74
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/data.json
@@ -0,0 +1 @@
+{"a":[22293,-6923,18552,19557,26976,-19822,-10800,17577,-14565,3536,-1482,8445,-8862,877,29636,27274,8893,14240,-23489,7009,-31700,-16851,-23775,19933,-22501,-6493,-24263,-25638,32696,-18465,847,22223,7381,-13368,9013,1591,-422,30982,-13598,17782,1752,17688,-6540,25658,-14201,-9670,20166,27460,-28197,29446,1703,-27129,-20172,10696,25573,-9904,-28563,-31456,-2773,-28634,-17153,30842,26358,22997,-15293,2605,-8179,17054,821,10991,2070,-30194,-4088,28299,28232,14479,-14137,15631,9173,-9566,12310,-21891,-3926,24907,21573,-11120,-17763,25779,-9808,12232,29914,5808,10308,23505,-3962,27784,-6657,20627,12072,26932,-1148,-18624,29506,27532,-23092,24972,9245,-4460,7837,-14349,18742,-12619,-3472,-17951,-20479,-14665,3698,-5473,-21653,26659,-26007,-24506,-300,17069,31767,28507,12087,-7656,16368,-8608,-13491,-17547,5536,-16751,-22782,15213,-24546,19232,-22014,16060,-27884,29497,-29326,1412,-21221,-17036,19515,15246,10259,30630,9138,17021,-26642,-23928,1323,-27642,-28187,-19356,-2529,20949,4804,16748,-29365,-22427,32766,-19378,25555,-24546,32622,-29226,24282,-28028,-32496,27725,6152,-20948,-22078,-7099,27067,20950,-9235,3439,5204,-3109,12279,-26239,2018,16861,-12827,32257,5043,24746,16239,8447,-30447,16239,21838,27876,24461,21694,31419,15977,26434,31691,10936,-181,-22023,21626,25489,-27723,9810,-16513,8484,-17752,13147,-12003,-11222,-17602,-27908,8720,-18111,9903,699,30897,-14416,3021,14369,-25345,-1870,6064,29117,-3218,-10726,22784,-4293,-32557,-10163,6453,21838,-17440,11499,-1118,-1185,-12783,13898,-20805,7983,-30090,-5638,12843,11398,9019,-10020,-20669,7149,8332,15120,-11248,15756,-19516,27584,12107,10034,-15909,2125,-27025,-15697,24731,12197,-26625,-25476,-9071,5025,6108,10914,-13843,18071,-13870,-11165,-20333,31742,-32534,21455,-11045,-20435,-4163,30056,27454,17357,13045,-24829,12174,-7614,17974,29034,27279,23717,-19429,19244,3147,-13286,26536,26845,24508,-123,4993,-22102,-14818,23892,-499,-2382,22867,-265,-13694,-20945,12069,14912,-23655,6756,-498,22159,14695,-21090,-18222,-98,-24822,-23709,-9147,-11482,28303,26769,8001,22073,20847,-258,-10816,-6926,10408,7135,-15801,-22858,-28014,-25701,9646,-8940,-13877,-11051,-26795,-4764,28474,5476,-15371,10402,17155,-825,-22462,25101,8234,1160,-19147,3771,-4838,21622,-6922,-16757,-11403,15030,9086,31773,-10602,26053,-23851,-5848,-32414,18564,17981,-13522,-25254,23954,14483,-29547,-3336,31880,13624,-18948,-1712,23931,-26613,-26244,-7675,-12992,10296,20256,-24137,-29393,-29267,-2772,18406,12587,-3765,-24963,5873,5152,1958,6228,-9050,-12827,25474,-1536,-21639,7190,1686,7793,6303,-17456,21613,-28175,-26291,27768,-21651,-1198,-17991,21414,-13709,-9360,24789,-10208,20637,10429,-30388,-15895,18235,8254,22026,-12573,-18285,-19791,7368,-25577,11442,18497,14381,-19638,-6477,-12082,-4326,-17630,-7488,2152,-22629,3629,-31813,-7851,-7723,-12754,15558,-15700,9807,3428,27497,12188,20301,12965,-12325,9560,-32375,2159,22537,7761,9350,1212,-6508,-9035,14342,19784,11652,-22750,-30613,-28603,12170,-20473,7795,13126,4444,-32695,-32394,-12765,-15626,10181,23431,-20896,-10398,10966,24837,10046,-12241,25231,-20562,-22470,226,21557,11510,26486,-20244,-6914,13504,24176,3105,15659,28342,-17491,27955,3370,28403,-368,3444,28777,19636,20586,6192,10301,32458,28563,-11500,24529,5842,9028,16994,18049,19326,-15547,6839,-1930,-21827,19364,23925,24445,10774,-5736,7338,6349,9541,2526,-23047,5178,-30608,13166,1189,21797,985,-25386,-669,677,-29590,20600,-7560,9020,-3139,-23333,-5697,-16579,-6111,-31624,14259,4830,20508,5418,-3491,-1485,32450,-28920,-27902,9224,6374,-18180,-18365,8534,27754,15592,-2435,-4027,22975,29664,29418,26153,17498,-10908,2407,-18407,-1472,29478,-2218,25185,30622,-20725,-2751,18363,17461,26526,-15888,17144,30375,-11021,-6399,3983,3567,8005,-20250,-1445,-9169,10084,27296,-18961,6981,23948,-25574,-8288,-19727,9601,6074,11569,6313,-28911,3988,4168,-16868,-31529,-10235,-32174,27766,6646,17738,25374,28394,-21427,-3410,-806,19347,9109,30517,-22589,-13574,25047,-8781,26176,16228,-1587,-14878,29270,-24752,23964,8073,14329,27821,-20706,-14269,-21813,-19466,8265,-21219,-24467,-17856,29288,-31860,-22229,-24905,-2501,9734,27210,-26159,7485,-28145,-6964,-235,-4157,-13555,-16773,27025,4335,-20270,-30493,-4468,20571,16604,-9413,32633,-30431,1542,-19599,10602,13092,-11298,25515,9614,-10389,-29481,17477,19878,13022,11921,26487,-12260,16545,-13243,20274,-20378,5970,-29266,-26120,-22461,-16768,-23845,5839,-28964,25528,29195,-29097,27866,-2029,-15928,5701,-21704,5542,-1551,20679,27921,1737,5389,15033,-18008,-15456,8753,2501,-31677,28279,-9992,-19287,1482,-6490,-12638,11789,9510,-3714,-15138,13315,-10952,-18710,16986,-15853,12030,-31708,22617,23094,6602,-11700,11006,1757,22805,-16371,-15977,-27969,942,25545,7300,2033,21057,30077,15514,-10227,-9180,-29891,-31205,-32436,-836,-13574,13647,20980,485,-2133,-27640,-20252,-1073,27745,-29925,-27237,-16722,13850,7289,-26683,30248,24081,-21884,-1577,16860,18185,-32311,5151,15496,15972,27692,-26451,18850,29256,-26118,-14753,-17085,20298,-26540,16168,-14601,-21411,28685,17095,-26432,31528,22626,-10386,12612,-2851,-4300,10093,-11536,6585,-24251,-27443,-7996,-23793,10477,-25267,24947,5402,-18950,11030,1892,-12299,29046,17576,-24768,-30261,978,-6600,-18904,-3104,-22272,-12568,-4342,-32412,9815,-24497,-2495,-27251,18365,18738,12102,26883,24063,-28661,-29676,1773,-21160,28039,-25591,-7341,6303,9070,13128,2582,-6121,21129,5090,27625,-18238,18955,-8245,-7741,-26379,20181,-7385,16204,28453,22889,21721,14052,8860,1057,8168,156,5164,11261,-30837,16772,6533,-23659,-23335,-19930,18179,22561,15420,-20708,10924,-12257,-25850,25455,-26069,-1326,-15053,-19680,-13912,10330,29293,-18225,452,18248,28595,-23455,-13462,3997,9470,24471,-17509,11402,8477,21793,20511,17910,-30904,5924,7705,17285,17984,-14138,-27738,24903,-21449,-21039,-9190,-3734,-7950,9667,-26170,-11423,24210,7051,-25941,20039,16364,-6635,-8731,-6932,-14931,6529,-28297,26314,-4444,24983,11458,-2580,-1860,-13604,-18061,-16642,5027,-13031,-24506,16346,-1302,-927,-20154,23517,-24027,-13556,-20672,-32583,26264,-13845,20224,9861,12289,-21273,-29837,30127,18025,-25365,23675,-19186,32386,2366,11003,-2240,21530,25710,13886,-6209,-20088,22149,-22630,11379,-11545,-10015,2130,-2803,9198,14226,-2618,2695,-32386,-15160,-20210,12672,-3665,-17279,10032,-18406,-9876,940,-4824,-10256,-29461,-26587,20273,24838,31891,1392,-14138,-20963,-9225,-3999,23184,11998,18754,-7452,-23571,-4814,-25993,6579,30649,-25610,24187,-22327,19830,-12244,-6837,-2905,2119,16056,30803,30063,-26967,-31424,-29290,26074,26182,-30166,-5300,-20723,-18360,18243,8046,-27943,-2525,-5966,-2627,6672,21988,4149,-19515,19871,11308,-28094,30312,-1629,-7570,-9292,28235,27317,-26002,26272,24614,-20201,27616,28092,-26893,21031,30695,576,-32459,-20432,-13948,8356,-15606,16296,-30377,14536,-9798,24380,-14081,3455,11484,29995,8129,9030,-4400,-32207,32507,-8932,27879,-26262,-15426,19727,-13694,-20577,15052,-7819,-32313,12981,25526,-32003,25318,-21188,9121,-23054,27876,11513,24250,-14688,3127,-22597,21535,-18156,-25369,-3102,23643,2999,-2540,23384,26836,-7428,29890,-21357,-20468,-16570,-9165,27353,8380,-8709,7568,1139,-7944,119,12719,-31589,9834,7828,12693,1317,25909,-16947,11489,14677,-2335,18888,-21191,-11458,-10879,9037,-20841,-16809,-31158,-23717,-5397,-18857,-7519,18206,-24271,-31906,-23269,16065,2001,1555,-16582,-18047,2735,26020,22550,-17339,-5429,15692,-1518,-26707,-2397,28916,24950,9180,-15309,-18695,-14549,-3381,-2736,-12939,5670,24636,972,30920,10076,9470,31782,19575,-7232,1017,-11637,8955,15739,23866,2208,5523,-26239,29548,-11551,5011,-29926,18820,1160,27793,-4766,18620,-23669,13453,-17527,6363,-32252,20911,-1767,1489,19064,-24458,-21808,18080,27885,3728,-13670,-16518,-20083,-30697,-25418,14894,7594,-18889,11675,28811,18890,14518,14865,-12716,9544,-22667,-26862,18643,23555,-11621,-7760,24071,-23476,23241,-7207,28357,31551,3754,13671,26669,-25284,-32765,-22615,-12599,-30694,-15265,-30472,9669,-1386,13971,5713,-15262,-4278,-12188,4791,-27501,-2086,10698,23911,-11298,31845,-16616,-19993,-24397,-26141,5569,-28806,-27357,-23444,17633,32081,-15960,17636,-23301,4210,19710,-5797,6506,-3388,25585,-12289,-30441,-22443,16201,-9860,15116,21469,20823,-6952,12614,-23241,-7873,28766,-10466,498,-30141,27872,4460,-24730,-28338,-10673,-25415,-11529,-25804,-15947,25449,26675,11024,-811,-9479,3842,19668,-7152,14168,3103,15757,-3482,-8195,3813,22334,-28347,13340,-18306,-32347,-29892,14960,-29720,30749,-13346,-21682,-30356,8749,-14328,-9116,15714,2493,-16433,9622,-19250,15524,-32624,17361,2426,-7007,-1238,-27238,-24016,28048,-2664,12565,17615,1757,-6861,32077,2178,-3985,14271,5226,-6003,-31841,16313,-3590,9677,-30781,20062,-7376,4480,-29137,-30520,17999,19156,-30375,2593,-11185,-4614,-31411,-5655,4138,29405,24450,-16063,14254,-6560,9844,13564,28387,-26908,-4931,847,-142,-4004,-15606,29036,-27093,-13619,16332,-1701,23630,19964,547,8862,6353,2941,-21311,27936,31095,-19954,-10485,2467,-23315,-18802,19172,23707,7407,-3750,4505,3028,2110,32342,-28891,-30798,-4428,-11729,31007,1247,7421,14572,32315,-1715,1770,96,-25619,-24644,-29730,-14162,-29474,-31401,-1347,-7191,3834,8106,6776,-9760,-954,-18583,19258,-29216,17214,-11398,-29640,21091,-9427,-1299,-23404,-11187,32717,16785,-29381,32265,-17697,5157,-405,-10547,13281,2633,8059,16575,4001,-26055,-23382,-24932,14819,16162,-1923,-18901,30348,-15431,-15348,14795,5940,-12219,3119,29281,19250,12484,-14673,19200,-3498,-11286,18699,11574,26639,-14473,-31740,7154,20929,9088,-9037,-7837,15801,349,0,-2146,-16255,30846,11722,-18674,-17352,29142,28889,21357,-15844,-758,17871,-29360,-21041,-29569,22609,8230,-8086,8542,-12962,-14213,26837,-11933,25710,15000,29923,-16094,-25603,12958,17023,7166,-21954,-31999,5245,22536,-17904,20662,18912,-21782,9252,-29698,10229,-5644,-26290,21957,-2444,29088,-2580,22238,4863,17226,-24741,-1066,-27474,-31798,-18833,-30317,-15124,-11667,15409,-30867,28267,26224,-30098,745,15993,-15233,-11360,2138,-4247,30661,5209,-26784,-7750,11687,27941,22575,8008,-7406,12046,-19896,-22946,20074,11806,-17651,21044,25742,-15200,-26846,-18692,-32557,-24945,-23192,26435,-22274,10322,9662,-4739,31731,-20966,23783,29625,17011,29767,-10891,-4068,24941,-21083,-28826,-15231,23732,-15953,-5408,11040,28622,9709,-683,21597,27278,5240,-29861,27490,13063,-20284,21159,23557,22807,-1946,-13948,21771,9857,-22932,18630,-5898,-25931,-25027,22802,31779,-13341,26744,-16219,-22375,-21975,11142,21433,-26120,-11916,-12017,28246,-17404,25991,31153,-22681,6288,-21897,31246,-2921,-31857,-3466,15899,22683,-26376,25736,8546,494,32573,16288,-9470,31586,-29820,-15492,-17400,-19427,-4699,26510,-30761,1949,-18172,-10009,-2572,-2808,-16784,-4186,7280,22272,6686,5759,-13415,7597,-30474,-30283,-2487,-24081,28222,-26707,9181,28029,22349,32479,26848,25298,-15779,-23318,-26896,12290,-29574,-24888,-18528,-14978,-2129,11669,14983,13855,-25283,-10504,3361,14171,28023,22714,-10999,30318,25200,19282,-26530,20655,25344,15420,15918,14926,15133,9999,7457,32122,19449,13330,11645,22643,21210,25886,-25101,-13685,4788,22650,-32597,12273,-20621,3533,-6322,-25364,-6519,15447,-27812,-14086,1963,-21574,-26197,-5460,26614,22489,-23300,8981,-278,16926,8336,-13596,-2511,-12785,-23719,-14067,-19666,-16052,5016,17891,-26169,5188,-2602,-14021,-24046,23844,-6616,2203,6524,-1660,20886,-24279,9535,27458,3030,3383,17180,12499,-20403,-15864,-3342,20702,3308,26916,-24850,12357,-19918,-11747,29074,17867,-26622,-29861,-9712,3544,-11113,-989,-5378,15039,-31552,-31620,-19387,22102,-23131,22916,16793,12668,-6468,1207,-7600,5898,18111,21826,-6167,-11347,15976,1752,-31756,28826,22774,30086,13927,28920,-32542,-28552,-302,-10887,3227,27088,-28614,4443,28236,-15233,-6221,-27661,-25083,-22194,17775,1218,11781,-22592,-25651,-2874,32003,951,18547,15212,-30063,19560,11272,25479,16879,-7568,21633,17106,-3351,-11436,-26548,32645,-17114,-22393,4322,-21644,-4858,30869,-16536,2828,-24092,-31528,-28721,20458,-21351,-21603,-15182,-22114,12116,-29401,25866,14821,22927,4372,7533,7039,29573,-3600,-8622,-6545,17733,-2401,-6667,-32148,7974,30424,-21023,-29650,28526,-4791,5947,-28332,-3551,9994,24895,7867,21159,-23054,18521,509,-19687,11621,-17437,-29526,-16773,22865,10281,-19967,-13502,-31107,6257,-28536,-739,32358,-27915,-25532,30015,-16170,-22413,25775,11807,16302,30212,-24510,-6470,22340,16125,-18078,32054,1880,15199,-20399,-19265,30531,-17156,-3270,20629,25893,9531,-25639,27555,-16979,-21407,-5951,-17387,-16553,1286,-20138,45,11642,-27129,-20914,-4823,-29684,-12656,21475,25424,-29297,-29369,24712,5352,18598,-28453,18855,16362,-12841,-17181,4225,-19714,25118,11354,-24925,-24627,22716,1892,-9245,-26603,-29588,3386,6210,14822,9025,18065,-22767,12110,-27357,31476,4768,-23886,-30659,-3287,14235,20707,1029,324,4303,20956,15911,-24238,-31524,8263,19885,-23681,16405,9834,10980,-25607,15999,14161,10548,-10557,-3784,-13193,-25259,6217,31685,-19848,4927,3686,-10965,7037,-32367,-29496,-5022,1430,3596,32049,-10380,-13259,-24955,-9136,27772,27698,-48,11411,4766,-21835,18573,-12001,25094,-3646,10210,-11456,15929,17720,27530,14848,30641,-309,-14233,-13090,-26039,-13832,-9818,1707,20367,26547,990,-22780,-19479,8803,853,-24473,3735,-31962,19706,-24266,-21029,5512,-3499,-28701,-30901,-26055,-7389,17797,24433,-12625,-122,22308,19834,18413,-23549,26563,-28185,-598,-4496,24950,-6817,29262,-30596,6472,5299,3025,14768,-23733,3831,1707,-15231,15571,-25548,14039,19638,-23680,20752,-20517,26885,12418,-373,-6003,1960,-13306,-20356,11179,-19509,-15772,-22185,8763,-23588,3766,5259,-21416,-22528,-22209,14377,25008,-13173,-14558,-6052,4365,-31754,1169,-14363,20653,10258,-26378,-32630,4377,18809,-235,31142,-11998,19228,-21980,31950,32487,-4984,-23001,8484,4196,13533,-19024,15548,23774,-8464,-2841,16015,11132,15370,-22803,-17270,16385,11135,1135,4271,-11374,7526,4410,25771,-6431,-28592,24147,14340,23404,-30600,13524,23125,-2816,23291,-1158,-31386,4058,12587,16931,-4935,-28643,-18676,-21686,15257,29462,-11721,30755,13080,32183,-876,-15415,-11958,-26116,21763,-18953,221,25940,-27573,-18205,16577,-25404,28087,6936,4549,18612,-26988,5931,-10096,18367,-9905,17738,22493,4188,28821,4983,883,-15666,2971,-18803,-16250,-30671,-1450,4560,-24019,-12454,18375,8971,-19281,23571,23535,30065,30935,18856,4235,2718,4701,10015,-24118,27374,-4384,-1254,12346,-14658,-29833,8400,23093,3819,25502,-6702,17784,-23515,-4605,-16433,13814,4145,3882,-577,-19650,17370,-9772,-28882,14668,-11603,22742,-13864,23883,-5323,28920,32533,-10716,-8231,-1487,-31137,9879,1449,10032,205,-27499,2768,26272,23053,12022,-11100,-26146,-6931,25814,10504,25261,-26603,-4892,-17278,-22717,-22991,3887,-32742,-4086,-4996,-5297,-7933,-5230,16756,16604,26052,18388,-6283,-5266,-4347,26690,3,31189,20196,-9710,10444,-23671,-3087,-29253,-30623,-25349,28777,-24458,2527,-21267,-14406,12304,15389,-14380,-24548,-22374,13092,287,5165,-2919,-15875,-1550,-17298,10610,25953,11124,4534,-6811,9547,-8037,16248,-12775,1061,-19606,-9259,3206,-12187,-13249,11517,23108,-1748,29879,2646,-19126,-17267,10866,-8731,28593,-21613,29202,-7092,-4720,-5114,8379,-26876,-11928,-13264,10426,14029,29052,-30377,-2489,-16490,3452,10673,7019,-26108,31255,26539,18177,21597,-7976,15290,-8524,5667,30791,-30424,29704,26617,-19269,26140,-13242,8780,-11741,27905,14672,9099,-18125,-7668,-9638,-21840,-5276,20641,-5562,30944,-1452,-31309,-27930,-2963,27998,23015,-14133,-12744,5538,10111,25692,3562,12455,22630,-2587,25954,16003,16939,1968,-28505,12078,-16126,13363,26721,8975,-29042,-27886,-29068,24368,-679,-30891,-9850,781,-26053,19955,-3987,29731,-26945,16038,2503,15935,8963,-26702,-4377,-1174,3480,-11189,-17937,-12348,23548,-13673,32499,-25345,32458,26453,16398,-29350,31336,20098,27787,-2110,21976,-14830,31440,28692,-27641,-5314,25657,-21817,-22043,-4607,26886,19688,1460,-10257,-14252,-27827,11322,580,-7406,2103,19675,-7674,9527,19367,-13988,-6842,22786,-15418,-19510,17806,15240,-30301,-29790,13913,31160,-24662,-24167,24050,-13711,-13442,-13324,-19592,-26520,20904,2919,-8004,25846,-18525,25345,-14327,16347,12253,10767,-6893,-1146,29548,19034,-11127,-18637,32293,-26087,29372,-30775,-23108,10519,-32381,-15002,19120,24437,4056,-27088,-21653,17233,-20840,32020,-12614,3925,25099,1629,-3497,-21994,-14790,-24011,21542,11086,7612,18324,-2646,29253,32455,-3120,-29600,29061,-1126,-19940,6814,-739,-2173,-6833,-9068,-30884,-1153,2047,19117,10775,1301,-26264,-18066,-6367,8134,11205,4407,26113,19963,-6817,4432,-5192,-21260,-30980,-8705,-21571,-1332,-5537,-25277,30310,7292,14305,-3195,-27648,-25294,20505,-25763,6322,-10214,26122,-15669,23855,32627,-967,-15279,7995,-22529,21897,1341,30202,-17686,-26993,-7757,-6178,-25205,16306,5019,6231,-21997,12511,3775,18063,-5950,-32187,23184,1524,21087,30189,-24921,-21894,23545,-7821,-30806,23405,23980,-13316,-1366,-31316,-24185,32744,31655,-9103,-27016,-8868,17488,-19452,-25328,-10260,19548,-14557,-30515,-9444,-29260,-3697,-8862,26692,30595,-20541,24114,-27092,-9667,14893,-2145,-7704,5532,-10931,11749,-28601,-9478,20332,-28624,-10590,-21537,-22871,13311,28720,-9555,20751,-14307,-22773,-26573,-12053,552,-23064,17018,24458,-29139,14846,-28850,27744,20523,-5748,9870,-14388,19316,-17365,7449,-1702,-13197,30740,-14136,-9053,-12617,-2904,845,-32073,-6951,24059,21447,11511,-31481,27642,32226,1839,-28188,16477,-6469,-24559,-1443,-2550,-29581,-13686,24471,13058,4694,11020,28462,-20623,-23448,-17502,-22650,-4815,6214,-2499,25049,-25708,-1803,-14668,31119,-13123,29611,32407,-18247,29070,1479,-13667,12781,27779,-5457,-21429,-7537,-2269,-2347,-15833,-21978,-30419,27955,-26283,-18274,-28259,-11016,-8156,-305,27966,22114,-8023,-30508,-12455,10077,-32156,7191,6922,-32515,21712,3226,1732,-24721,-16760,-3255,2591,-5420,21976,-32445,25002,-26624,-21654,27351,-31435,-15169,-23689,-26925,6584,923,5538,1783,-9729,30284,4043,10584,7594,4656,-14992,-18250,4909,-26046,17744,-26125,-17999,-31782,3389,17361,-4434,-7402,17684,-12198,-1258,28799,-17613,76,-19136,-8534,5919,20216,25158,-21310,-10768,-17338,-23793,26044,26015,16570,-2066,-21744,31089,-29923,-15021,16066,-23280,-251,17053,12877,-15657,-20147,-27291,-30739,423,4220,30828,15578,-28471,-21075,-25722,10217,31909,32204,21676,-11625,-17901,30651,-18347,-24653,14455,12355,-13628,12777,15200,4119,-3923,24689,-28899,-19637,4800,-11788,-7016,10278,-9759,26176,-18269,-11697,8988,-13971,-4,16034,29014,-861,15471,17923,20282,30339,15808,-30831,-27080,-2503,14292,-7940,-22493,-3274,28947,6353,-11351,-32718,19485,26217,-11737,-20297,3728,11272,-26887,18228,32344,14869,-28510,-427,-1864,-32263,31480,-19159,18429,18996,-21586,1470,20933,-15898,31735,2459,8930,-23524,31953,5111,15598,-12165,5161,2316,-18714,26192,14788,17783,4698,20669,3244,4276,2771,7502,-28918,-31859,8008,-30204,-18249,-6330,21561,-7067,27909,9728,9803,26878,-20580,-14033,-29413,-21393,23847,18954,-789,-3758,-11496,13266,-10332,-29475,-1718,27134,23962,-31240,-1357,-6033,9031,2494,-5123,-15727,5059,9396,10711,-6147,-30437,5854,-29185,12134,-35,-16997,30870,3321,-5621,21950,-10492,26358,-14575,10780,6857,7861,14074,-27627,2229,5269,-26098,-31894,32005,15701,3368,-5885,32742,-24339,-29255,10687,2283,-26924,-16225,5866,17979,16508,21638,16082,-12938,-16750,5266,9339,-23158,23459,-12647,16468,-1447,-31340,21609,-31984,6698,28280,-31110,5937,11214,5027,-32714,11190,13456,-29201,-10889,-17027,-23356,5654,21607,27391,-10605,10478,10707,9226,26496,-16794,-14201,-29428,-26101,5920,19808,5221,7349,8651,6005,-18720,4164,7664,19986,-17388,-20076,20040,26570,26149,23607,-17085,-23645,-32516,21337,30731,27644,-22034,8443,5585,19961,2172,21559,-27007,5513,28226,11682,-7446,681,-13736,-31562,-26081,313,5370,14351,-12468,20750,27044,-25195,14554,20427,31181,30237,29551,31434,18808,27515,26311,29542,3191,-870,16736,-27403,-12078,22498,10878,-16618,1413,-29335,16831,20446,-28128,23519,-12007,10011,5104,8294,-2005,-618,15868,-20218,-12958,14282,-22747,-16174,12950,28829,-21425,6495,25605,14534,-27142,9574,19900,-6451,-694,-1988,9699,-32047,1446,-6236,21168,6086,-15483,-23606,-16670,22390,17457,14093,-10995,558,26644,8815,-17926,-28870,25410,27792,32728,-28782,1520,25566,18521,7147,2374,5655,-32071,-31086,-29100,10397,-30365,5114,-28605,23571,-21566,-11320,32734,-5467,-21697,17424,-24141,76,-14785,-30263,-23875,58,-26364,-31231,-4916,-26403,-27245,29373,31932,24045,3753,1539,-3066,4450,3222,602,-17920,5625,-27050,-13757,-3571,-15848,7692,-3603,11454,18763,-18946,20081,-13927,-962,22587,-5033,31864,28991,-3496,-5819,-30178,2027,-9213,-31013,-6694,27309,3295,23008,-1008,-26250,-9156,13841,12143,-3437,-32682,-24194,13483,7779,4971,-7830,-6224,18794,-20515,12617,-14934,-30694,-25183,-15836,31065,4089,11114,-31880,-26650,-30865,-30125,-575,29212,5939,-10333,-4562,12457,13279,-23487,-8166,-22925,-23400,408,23327,17147,-27387,-17269,-21844,24176,-5015,23542,-23525,-2941,31128,-6593,-4642,2450,-28245,-3754,8569,-26342,-1110,-24772,-29897,-27938,-2337,-1691,17288,-21824,7591,-23645,-11980,16959,9532,-21420,1339,14914,-5920,12264,6323,21834,3039,15567,-13873,1401,-23792,14253,-28915,-19269,-22267,12422,-12843,9392,20418,-9971,14223,-14685,21107,-1255,-3741,-4069,7868,17047,-19877,-15366,28396,14231,32316,-10290,-6271,5873,-21223,29537,-11326,-2327,-1829,-2350,-20840,2024,11150,-10338,-18321,31076,31822,-30669,-11662,13279,-12586,-23321,-20743,16442,5378,19894,722,18270,-28239,-3648,-265,-28690,18830,26232,9952,30376,23002,31394,-4717,-11594,-3723,7211,23198,-25339,29641,-27889,-27030,28697,-25789,-5923,9209,-5606,3524,21235,-21931,-23864,8362,11560,27175,12892,-24855,-5857,16971,26744,-12391,-5844,24354,-22155,-7217,-13130,-980,21829,26849,-10548,29258,23724,-5669,-30539,19654,1310,-3693,-3903,28473,32599,-15435,-26225,-24031,25696,18103,-29623,5822,26017,-2711,-9974,19995,17667,16950,11582,28281,-23034,31220,-5466,31563,25303,16754,28054,16260,-21681,30284,3148,12398,-6175,32013,8104,-6342,-16188,14647,2395,-23258,-16,5541,15332,-6765,-29936,-27409,-19537,20500,22309,24813,16014,32044,23267,-22219,30840,15804,27304,26128,-702,-27144,23646,-30321,18023,-15296,-31074,-6640,11131,-14493,-24759,-19241,-4983,7994,19069,-22417,-31538,21902,-17058,-18307,9635,-27515,-26260,-7118,-28238,29776,3432,-30164,12813,-2030,28733,-20655,3595,19613,-18208,-11149,-28449,-16514,14980,15450,1761,22989,28978,29547,-1784,15280,-25637,-553,4415,-9926,13908,-18716,-4672,20417,6934,-141,17427,-22400,2463,-2527,8338,-1570,9586,-20834,-14723,24147,786,-10404,-25133,-17001,-27720,9397,-26778,-31509,6177,4206,16540,13309,-29114,-11811,-29384,17563,2241,-1287,5214,-23591,31340,-10126,-13223,1037,20116,27884,32235,-3064,-25716,-15254,-11684,7838,7110,-4048,23606,12158,-27418,29596,13418,11528,1036,-2809,-7930,4691,18148,-4545,-10513,-12378,26936,27470,-3201,25509,-15423,16345,-6220,-28074,11462,-6751,1631,18515,10763,22716,-6413,-14894,-14099,-15574,30033,-8749,-18745,10684,-29988,15060,-24891,-5149,-13016,26025,23074,9239,-19119,17244,3943,10449,9986,21288,-5973,-29000,25983,-27277,-2983,-5153,24006,-24987,-15204,-15174,-7112,3466,2021,-9846,27485,16045,-31928,30266,-1662,-24050,-7650,18090,-30791,-17342,-5437,-17142,32670,31274,26075,9890,19796,-12664,13658,13012,-7173,-22092,-24907,-15933,-14311,-7342,1662,11345,28892,-29084,-31267,23611,19729,-30426,21110,-14699,-21708,-19306,-29376,-19731,-3880,-2045,-4104,-3976,-3537,-10795,-26853,-16508,9309,19573,29273,-30630,30250,-28400,-13795,-16828,-2973,20635,27286,-6847,24320,28788,-16003,11283,31131,-27659,29352,-23343,-14196,32744,-10306,14692,-2067,18359,-22051,27165,-25203,-16135,-22109,16874,-29329,-25603,19012,-31845,-21234,-27549,-15905,8561,25855,-21385,-31052,17408,-25363,-14287,-4076,-26999,-9177,-7491,-17574,9395,-7513,4889,-8679,23189,-9519,2039,17587,-1953,18672,28246,-17845,22112,-30123,-31600,23035,-18588,-26380,-25636,22742,32243,-14253,24458,16884,-6847,-22595,-19958,-1078,996,5320,14117,-22375,30576,-13761,1714,20998,9489,-29014,5819,-25230,22427,1298,-10307,11772,3944,-9139,2040,18124,-2750,9172,8099,-3274,27688,-210,-19156,-11926,9964,-6345,19765,-21807,31743,1115,-11413,29553,20123,23069,17784,-3155,26824,-9163,4384,16485,24904,26845,-4510,-3919,-15060,30299,-18561,14958,6704,22306,-21083,1626,-10670,-7470,22468,32063,18953,9466,-22511,17930,-22186,-1155,14716,30705,-10853,-266,-5216,-16795,23339,31936,32458,15476,26014,-4818,-21210,-21812,-7286,-7002,25914,32187,-17462,-27935,1046,4637,-2637,-9253,3933,-16451,-32553,14191,-31288,-21971,-19731,16196,-24032,2184,-16837,3521,18158,-26264,2691,17850,21980,-4061,-19734,-31996,6895,5748,-6230,42,5168,9076,4875,-26553,-19053,-30528,-3037,17648,-14211,-2822,-928,-12730,7976,12109,-29300,16713,-18473,-13368,-12533,32453,-6864,22926,17537,-17650,-13901,30571,-16878,25762,3553,9661,-6962,-24046,-14029,30681,-17830,-314,-32613,11902,-15433,-14055,-23687,16407,5983,17058,-4251,9452,1004,10045,28852,21239,9732,-10778,11399,-5498,4340,30267,-7693,20231,23262,28628,-2875,-16467,-28184,15865,-18552,-13245,-17216,-18396,31425,120,317,-25028,-16239,-26467,24799,12279,15753,-6964,-10443,11839,-18491,32057,-31706,25677,-6207,5403,23177,18868,-7133,13673,14730,22761,29974,19315,5860,-21344,-26696,21412,-6972,-28037,-11234,26113,-20296,5295,32415,-28264,-15193,15402,-2460,7133,-5526,11817,6424,-4463,4728,-32550,-31826,-4862,19087,-6190,-23956,1051,-16196,-26748,-12401,22432,-15323,-6329,11078,10473,-1597,32613,3820,10875,5142,3468,15379,22718,-13896,-19848,-2916,13346,24738,-29259,-23883,-3301,-29041,-22941,24606,22815,3637,-32117,-8901,20210,-26096,11466,9876,-8651,-27629,-11812,-30944,3542,-11966,5644,-18349,25944,-23654,29798,15895,-4782,-22816,-19787,-24202,-30844,-16278,-15316,-1376,-12550,-5489,-9537,-22502,30917,-8885,1366,18361,-2213,-19935,-4529,21905,-14795,16427,23729,21516,-28305,-3394,-29600,30408,5721,-32568,13537,-31828,-22616,26518,-23262,-20692,-22526,-5810,10701,-2307,21470,-31603,7960,19621,-7719,-23441,5216,22837,-10608,-32080,11975,7366,17116,2937,-3885,21579,32312,-716,19221,5266,-516,-9,6206,9636,-6257,15713,21713,3986,-22863,-353,-31088,31376,813,9640,18230,25862,18967,-9320,15933,-24407,-8632,-4859,15728,-24283,30847,-20923,30065,30392,11129,16519,2892,-22153,-16256,-23668,20252,10255,24813,9198,-18526,-30816,-23921,-16845,-32207,9661,25563,18792,2757,11764,-23295,-14077,20126,842,13833,3087,9327,11913,14932,6626,9539,-6705,-9622,-20336,3910,6890,-11235,-8605,-15621,-19189,-32174,-1378,-17236,-23326,14545,-16674,19103,7342,-30648,-10906,-13661,-21175,7785,-26301,12435,-11149,9554,-11004,-32002,-8280,28390,10305,17783,-13998,22738,-11074,25661,-21264,13089,-22727,-7684,13684,8664,7849,23126,-9558,23943,9463,30553,26063,31325,-15874,-27878,6344,-9407,17326,27963,-32620,-26445,28729,-8131,-30821,6268,-23115,-12051,-3760,-1421,-19157,7745,-21099,-9115,-32706,25354,32317,7911,15713,-10007,-912,-7590,-12221,-7616,-9031,4674,-2726,30081,28035,-18166,25277,28184,-11843,21240,-12714,-9895,-5258,-3061,10823,23751,28287,24435,-1271,-25579,-17447,-1209,32543,-17896,-26064,15490,4866,5792,-24866,25413,30945,-1129,-2680,-4547,-3815,-7411,10055,-11304,-11994,30981,-22830,8060,-11681,4680,-27767,31911,-4336,-32247,23579,27161,-25057,-26635,-6814,-25280,-11762,-109,22979,25872,-27083,30881,18519,-28905,-3015,-16927,-683,25939,8430,-23395,-18132,29205,-25180,-8194,4499,-4092,29255,9500,-4948,-7847,10022,-14136,-13452,17734,-8002,12503,25222,13004,-20373,15434,6109,-14688,13548,-8138,-10824,-22233,7703,21261,-29061,-16633,30635,-14424,-20194,-27312,10150,17073,1364,6639,-6193,29185,31560,-28937,-17718,-14658,21565,7048,30613,14020,-12715,-22527,-3312,26163,-4446,-22530,-14741,17499,-11995,25731,5994,-8287,-23669,3863,10057,-11094,9319,-12559,-26788,-22083,26848,-212,-25664,25642,3619,-10614,-21783,-7582,29202,-23937,-26329,-16279,-13695,3127,-22883,14628,13366,-4856,-639,-31396,-11891,-27412,-6915,-2791,9219,-29624,18883,-14228,-9415,24864,-3542,-15333,-8115,3562,-22458,28273,25716,-11472,-12076,22152,-2640,-5636,-26894,16433,30260,-17008,-1705,10859,10905,30424,12232,31782,-29755,-27449,-3776,12233,-24305,-17660,30774,-951,-25563,-5535,16485,-909,30796,26795,-5402,23745,-17443,15291,13131,12685,-23112,19005,-3648,-25618,-30769,27415,18010,12904,25072,-2525,11919,28086,2794,-24623,7553,11258,-9514,5560,-22459,-2309,-32742,26794,29551,30823,20822,-8617,21801,-29387,-26093,2166,16066,-16436,-11596,-20349,-9286,-9596,-25701,-24042,-29459,32140,6201,15229,27460,-23771,23374,2246,20256,-18907,-24960,30565,11553,-24933,24592,8338,-26877,12648,32489,27693,16029,-26370,-2908,-672,-10038,18265,11748,13445,-24098,18816,22171,-20788,18190,-4394,27209,12883,4603,17817,-17637,-7908,31679,-9829,-10110,10466,-1993,-18284,-13962,3898,27132,-14240,-1176,10394,-7841,28685,-23044,14889,14183,21472,-4432,22854,7521,-15028,-30701,-7056,13347,29277,-26939,-14817,14327,-11807,10044,13240,11133,32703,-9060,-23627,-18348,9746,13039,-23982,28275,-20903,19180,-12333,-24985,28905,-30211,21967,17610,-1874,12054,-7635,15866,14121,18078,-3553,10631,23907,14398,-7808,-20667,-8324,-27334,23234,-8387,-3626,32376,6034,-26647,12648,14820,-31139,24514,1234,-10703,32297,-2628,-8145,21498,-17784,22749,785,7349,5849,-17860,-7340,-30471,25539,-16199,16696,-15035,-4097,-24395,-9601,-13630,-13,19541,-14020,-26746,25663,31396,20842,27293,23144,-10691,-16177,22675,19449,8446,11406,-31101,-1572,-20576,9016,-28490,-5668,-31090,-26192,-12895,-14521,23272,4839,14151,31645,28006,-32246,-1134,14781,-13497,4888,7678,-14868,-7037,2204,-24490,15040,18795,30953,1723,-5525,9592,3390,25671,21785,-20360,29950,-16649,-18682,-29009,3225,-434,27032,-24703,-19050,25911,-29463,-18527,-7990,18087,744,29666,-7002,18645,-10138,27971,26924,-27864,14000,25110,6628,-24292,1936,-22748,-31387,-9045,-10340,31332,7074,3747,-30443,-22467,-29453,29357,-14402,-15734,22501,-11096,-1492,-18256,-25775,32021,-21357,-9,17900,1274,-4804,12057,6178,-23571,4400,-19960,-15094,-26430,-9940,-13712,-2707,12488,-15147,-28399,-16531,-12821,-18098,-13216,-16231,269,3818,-26497,21941,-30440,-11984,28934,-31186,-572,-3841,19482,-32065,24124,-1228,6882,-32214,-29594,19691,-14539,-23256,-23016,4517,6806,22241,22139,11175,-27057,-23449,25846,-7504,-6911,-6652,29083,-640,-17477,31411,20145,-21309,-32541,-13194,7619,19709,-12490,-1024,-14285,27161,-469,-11111,14085,17761,-1598,23838,-10489,-27559,13312,-21116,16385,19023,-11797,9465,-21247,14060,-29953,-24931,-19346,-14662,-26286,-31967,-3202,-26059,-12392,-28349,26418,7887,3395,-20634,2281,-29840,1024,-16400,20689,32195,-25329,-22566,-28130,20751,-10913,21023,7008,10059,-2278,18529,-8647,537,26367,4776,18643,-32686,5577,-17325,-25977,25953,-12906,-32325,1073,23258,-20190,-29412,26187,13602,-13044,14110,13030,-5605,24313,17668,-17620,-19367,5925,22156,23460,-29120,7919,-17954,4186,1519,19590,-9937,1602,-7599,5506,8393,-14412,25369,8836,19430,15860,21415,22786,9280,2250,-23024,-9376,-17486,4140,-17830,-32584,19288,-4429,6110,8678,-13735,9759,-16170,1080,-18822,18118,-12096,4009,-13047,13074,-23251,28115,31430,-30649,4185,18093,17979,-7167,8113,-5507,27852,17857,17886,-22401,-10769,-32711,-22216,-24248,-4371,16662,17198,14663,-6345,-31738,-17023,7601,19149,3649,-21156,-26665,-16044],"b":[-11639,-31316,-17380,-9520,5637,-32053,-24307,31239,8828,2955,26324,-6081,-11926,-28843,15918,-11868,-18290,24438,16529,31140,8870,-1575,-7972,9901,14170,32398,-3717,-14947,-21525,2387,1778,-396,3839,17166,22853,-23290,17881,31314,-24818,-6057,1502,-31260,20630,22345,-27334,3782,-22290,-12856,-4546,27007,-14483,-28442,-7334,10314,14227,-25930,9946,-22257,-8108,21190,12898,26438,-11973,-16030,10838,-21887,-6551,-4047,-23339,1399,22664,10931,2908,10528,509,8342,-18456,10987,28254,9766,5228,-18995,14092,30663,24088,-4448,-28034,1267,6064,-3373,-10310,-13805,-9702,10486,2934,-31630,21368,29151,-2909,30797,-2216,-13011,8962,-32075,30286,-23296,9035,-20936,20460,4523,21598,-7078,18296,2923,-9182,9617,31244,-4447,-21882,4541,24948,576,23505,-17520,-21704,-6327,-16381,32432,-9942,13479,30462,20610,-32298,6657,21304,30756,16130,-2427,-22947,3824,-30671,31420,29514,20393,1577,-12434,-2756,55,15887,8130,-28170,8069,-24060,28103,23318,-12996,-10990,-25830,-13331,11836,20417,-15635,-320,20887,23791,-11783,18877,7155,18559,28699,-21788,20657,27353,-25040,8283,-3837,-4706,-27239,28986,-21585,13659,-31951,19253,22367,28921,9804,-23395,-14836,16743,-3957,29769,4394,13176,-3318,-7485,4201,17668,-21374,-21411,3461,-25442,-10431,-8649,-30855,-2703,32403,-1923,25360,-27603,-5704,-28992,18825,-4886,23029,8426,-8731,67,17799,9202,-15957,-18925,6204,21205,27020,-29880,-19047,-1546,20557,-7653,9811,-8749,-326,32148,15370,1588,-3321,15006,32433,-10728,20172,-6037,-6951,6230,21845,-16689,-18111,-19652,16147,32457,22318,-32577,-19235,-4244,21397,-24982,-1356,-30416,6241,-13566,-5300,-16715,10454,27143,-17333,-6943,-4036,12115,-24703,-4370,-31380,28238,22361,-5563,1701,11440,10517,16359,24556,-6103,16050,14108,-5911,29583,-22903,-17280,-28165,8509,-14928,10845,27712,12540,26898,5399,6916,-23201,31225,-29886,21682,-26244,-1488,23071,-30773,-11894,-15258,3697,32314,28028,-12711,24104,-10841,-29427,5445,16016,-32611,15310,31504,-28007,-8947,-16190,15607,-14001,29119,9738,24167,3268,19306,22625,6151,8222,29150,-28104,-1473,31145,-7229,16037,2075,-7681,11299,22133,-16344,-32309,25474,21870,16476,25632,4414,15214,30394,28235,31792,13234,-18532,28144,-9794,-27132,-1354,-23254,28262,-27970,17736,24645,-23305,-16504,23023,2234,32302,-7668,27321,10834,-18302,-21789,11294,-25594,-32686,-4997,-32728,4496,-22549,30434,-35,-23524,10902,14201,-28146,-31659,19837,3269,-22145,15332,8068,28360,7211,17531,-20911,-2533,-13002,-21375,22568,-18447,22228,-28500,-7468,755,-21326,-7386,28527,-21285,29879,-26788,-23617,-2923,-17544,20053,-21489,-12921,21163,31117,23116,31787,13683,-1582,27381,-11873,-16818,-26296,18363,2948,-14903,8164,17270,-25442,12432,-22965,8082,23875,2418,3843,-30176,-470,9823,-21025,29375,25048,31797,-24880,-20639,20193,-26530,-30289,19214,19922,897,13828,-24718,16847,20300,26414,-12971,-27369,1811,-28468,-20042,-18523,-18665,20809,-27414,16522,-8115,-24822,-16715,-31058,-13079,-20106,26759,-14049,-12218,-26647,-26622,-5979,-24167,25361,-18823,9498,6422,-10773,-6422,-6044,-17126,13376,-645,17454,17676,12082,31700,31780,124,-28481,15536,24778,-20535,31589,26488,-845,-21283,20481,17875,-732,26602,24022,26058,-30332,16616,-25532,11935,-9729,-3536,-27253,16996,12107,18891,-16416,-3206,3801,28434,-4272,2815,-4208,15,-14416,-12197,12249,-15593,-18476,-21362,-4107,-30761,29281,27929,28609,20536,21220,31046,4385,28457,10215,27425,-7846,15730,11654,-28506,1855,28007,1057,-27111,23675,29553,8473,-13300,-3199,26826,7271,-23716,-21533,21564,-12310,7128,23571,-15795,2290,19414,-28025,-9256,17694,9129,-13566,-4858,3787,11357,-21895,-17325,15619,12728,-22085,-16091,18386,-31177,-19305,-5907,-11708,10265,-11848,28331,19318,-612,17129,-25758,-26251,7933,-8785,8808,-5420,-4041,32321,-20493,-27679,-14011,7418,8877,30114,18291,24321,12966,-1747,-30531,29644,-16127,-28939,-22427,10735,-7878,20607,31656,-12314,7158,-1723,-27952,14168,4795,12750,-27383,-19164,-25436,1344,-19609,-13160,6434,-852,27026,-17455,-3504,12551,-25901,-23304,-21963,-23663,-26427,-5321,-19833,-16085,-27353,5057,-28245,-28464,25512,11681,2581,30329,-6917,-25390,10312,-1532,-11786,17644,32581,1374,-28283,6249,-32245,31511,21562,-2980,11296,28430,6484,22101,-27999,12825,-15986,-15064,29508,-10571,22762,-31503,-6266,15507,12946,29084,13069,-26737,-29073,-9386,4499,-8090,-24508,4314,26052,-20022,-22203,26576,-21277,32128,-9170,22787,27791,30082,12121,32561,10141,28904,-15270,6882,-14433,-25275,8148,12069,23000,-11673,8387,3303,-5642,12083,26686,31626,-28774,-30589,3174,30047,-17843,13740,23857,-6352,13101,-18080,-16332,8126,-20765,28558,7920,22145,24696,25419,-3739,-22504,-32623,-28358,22334,23146,-7263,-2046,-6318,19864,-22730,-12398,18724,-18735,-10219,-10868,-21454,4707,-29895,-30364,31124,15974,-15675,-17974,-8666,-3671,-22182,32022,-14293,-30253,24675,14736,-19989,24820,19146,-30421,15200,-20883,301,-23884,31750,10340,-3514,17707,24374,19035,-25927,-29847,-9024,-23054,-27442,-10667,25689,-10348,4128,-15744,18749,14714,-16488,-28310,17229,-24580,19195,30009,-32526,5574,32356,15442,17460,-109,24326,16443,-22535,-11954,1384,-30928,-25685,8225,-28006,-1941,17940,-22680,20161,10862,-260,-8478,27886,-14277,-26531,-21368,-9819,23466,-13180,-23391,20709,-12938,14952,20298,-30262,-354,-12578,26833,-16678,-2345,-17888,17475,-504,-10805,-7066,4258,20023,-21893,14347,7417,21737,-18680,31707,16856,-188,-27590,28257,22761,28645,-17690,32139,16587,2141,14325,4119,4647,-18796,24309,-1286,-2706,-10802,13594,-17997,21463,-29977,7705,-7046,22814,18580,-25466,-2536,7550,-11377,-3595,-8360,21203,1584,-12870,11198,-2538,2209,10571,-18717,-28416,-7871,18170,9000,6101,9713,-25053,-29371,31680,21309,-14599,20376,24101,25874,-19436,14148,11688,-12133,-21154,-13528,9258,8020,10880,-2305,-23163,30779,-23873,7068,222,19467,21119,4574,-21171,6522,-19193,17699,-16532,-11478,21097,-17619,-22935,-26269,-30010,-31601,32374,-16677,15316,11295,3958,26930,30535,-19550,2184,8649,10914,11789,6662,19809,-13909,-25883,6510,-25557,11459,18108,13733,25035,3040,29969,-19210,-8629,-20416,-9376,-2129,-17657,-8208,-2521,-1566,-25659,-23992,-30375,-31495,-26223,-17157,3457,15194,26525,-17520,-10910,13568,1339,-4025,-12688,8551,-25332,-27347,-10483,32471,8462,-13280,-19505,32601,-928,3887,-2294,14183,28447,27953,-20149,-29978,-28806,-17756,-28705,-22261,-2144,7521,25702,-8385,22770,-17975,-27583,-8657,10769,-7503,32662,18205,-2082,-10587,17909,-26387,8902,31173,-26552,-24793,2293,3922,22159,-2026,-891,-30756,764,3072,-15744,4828,13579,14881,-20417,6515,-26271,-30414,21308,-21085,-6302,-689,4180,-6406,-15251,-30668,15775,-30108,-24286,-8089,-31702,-18070,-113,3360,18621,-10720,-31433,-15037,-8708,2100,20803,8316,-25839,1616,-9569,-13488,-24635,-3071,-11133,29442,8612,15333,-4014,-19975,-23839,13503,-17874,24705,16164,-9392,-16151,17231,5306,16504,-12176,-8839,-26983,-10840,8893,-2923,24028,-3070,-27373,30958,31314,-4174,-15297,-26088,25523,6338,-29412,1369,-11095,-658,14163,-2166,-19921,29057,-10228,29011,-13102,6390,13475,24973,-9873,-31467,-16633,-4088,-9538,25028,25758,-18277,-10809,31153,-20086,-12261,-5787,-2614,-5580,-13030,-29042,-2224,21107,-7369,29887,2504,23234,-22801,-1206,-19760,-26557,18461,19398,19687,10667,-23241,20989,26803,5440,-21316,19065,-1569,-6824,-24510,-3182,5858,-4003,23800,-29522,23186,-21997,-25796,-11804,31879,-396,-14684,1616,-9929,-4717,-32356,3080,1495,18873,-10288,-11584,-3226,-761,-23361,-9190,-28087,-11909,-22892,3112,14035,-14634,32698,-12873,14132,23732,-9627,4552,-31032,-2654,25516,-31919,29718,-21934,2466,-12977,6118,2878,22871,-25154,-11015,-20183,-3969,18527,11825,5438,-23429,16506,26298,-13553,-13149,7566,4582,-13217,27462,-14052,-22252,-14931,23268,-20515,15183,16018,-19665,12134,26852,15569,31926,203,-14319,22031,7818,7435,-30919,-28918,-6805,13675,9289,2534,-2586,2820,21750,17034,-22381,-6435,-28949,-27685,12281,-18432,-9848,2783,-6178,-27431,-13966,6925,17472,-19880,-10272,16631,13091,8177,5895,-11858,-17154,7745,-8007,8809,-11347,-31485,-21423,18836,4103,-32439,3103,14491,-6105,6922,19574,-26590,21259,-23040,8961,-17686,-17703,27763,22007,32538,-24883,-21032,16402,20976,19914,-10469,-23648,-30007,30045,1114,11571,-14069,2397,22917,-28000,-26266,23246,7872,20994,-15626,-17972,7801,-9448,-29480,17530,32282,-14398,32596,27278,-25158,32367,-30371,-13421,16003,23373,-26273,-27233,32494,-23511,-29955,841,20829,-11255,-29528,10979,-6486,-23026,1459,-31380,30736,18601,-16584,5771,-23613,-13296,-9465,-24098,5075,-9636,-29586,12686,-10035,-27189,32034,-26799,28952,-27006,-21263,28680,-17749,-18449,-3246,-29686,3065,-6,14061,29348,9737,-17247,30736,7707,-31412,-18614,-19288,-22257,858,4015,-13587,-26833,27148,-10404,18621,-15653,-4825,17888,-9684,-8639,23650,1822,-12726,-26865,16142,16797,-23782,-13560,-15975,23047,-16979,26530,-26966,-19009,1471,-25610,-4855,14952,-15098,28772,-13800,4084,-30828,-19418,26448,20561,-2303,-11144,5683,20782,12986,-3433,-10162,-32507,2471,-26787,17059,11457,-7578,-31683,1737,8211,27616,7540,21971,-3680,14698,-15651,-21495,32369,-19645,-2526,3686,-17705,10825,-2633,-29910,-24244,18992,8541,29306,-789,-27659,-13622,-527,7580,-7641,-16235,-13730,17549,-15150,20776,-7006,-20300,-4451,-17801,8789,-22519,-684,20062,-22917,12439,-15230,13537,27503,28364,-21862,30361,-28647,29898,6136,-32107,-3657,11245,-12961,28584,-13941,12167,-20417,5098,-3050,-2798,-6893,22713,9670,21425,-27855,-14308,31674,4229,-27012,-24009,-16098,-9473,22296,-21361,-13876,-32333,-23766,-9755,30334,15138,-9093,-6090,-6383,10714,-10272,12445,-9885,2079,-15224,19833,32049,10652,9779,8952,-689,14693,27412,-1781,-13844,-32366,6978,2826,-9071,-3492,14234,9821,-3056,23236,-32700,-5489,5607,-9025,21190,31993,-31077,-21849,11671,-8194,12998,29215,-21127,12280,7101,21421,-11534,-26355,3347,-16888,4632,22271,-16486,-21157,-7669,7211,8119,-26202,-15734,-27703,29803,-15666,-424,2644,8078,-12001,1870,9769,-1082,-19226,-31191,-20850,-22777,-19550,24198,17093,-30895,-20102,23506,5220,-4222,-4629,-5275,12060,6983,19824,-13495,-17664,26391,3539,-12599,23427,20642,19746,-6696,-4047,-25021,27943,-27045,6666,-24049,-25468,18584,-14058,-12249,10016,-29731,-10376,22682,26543,27613,-14307,-10852,-10428,30521,28900,-23371,-15740,-21530,-29746,20568,-1360,26450,8443,-14381,-13012,-28371,-6633,-17836,-22647,-32734,-9117,-15346,18618,9594,5174,-4133,12631,27566,-14218,6408,22413,4243,28324,-20782,1998,24458,-11384,19027,-29839,-8362,6828,1569,-14678,-17496,19957,5078,-13098,-19443,20010,-2976,-19409,-21873,14446,31977,20490,-13147,-4922,355,-18347,13628,-26004,-28701,-14895,-30446,-16714,19872,26780,4670,6132,29710,29077,-19806,-1488,-18368,-4534,-14298,19479,15137,-973,6722,-20606,12387,17618,26609,11598,5342,-19305,-26091,-27070,-4884,20306,-20305,-816,-27355,-17982,15239,25285,-23968,-12857,-1349,-27025,-16546,11613,4256,-2145,-25687,22726,-15433,22218,-11013,24058,-31154,-31393,8909,28223,12973,-18515,-23849,19651,-12817,4036,7190,-353,-29546,12603,14433,18462,5122,23233,-27162,-28994,28977,-10940,15387,466,19683,22468,-9574,-28517,11920,12181,28310,13534,13557,4453,8990,-6236,18706,17910,-19352,-26877,-10820,20606,5538,-7598,443,-12795,-21903,-27202,-22328,-16296,-23427,-26118,5532,24728,7116,-7551,14430,30310,-3299,-6417,9725,-7756,-25649,-9485,29465,16109,17047,15404,1253,30464,21296,23201,18304,-5933,-17163,-14020,14041,-6298,-8453,24481,10174,888,31131,-17060,-7150,5480,8158,-25486,3024,-27908,865,-20018,-2895,7985,3266,-6197,-8672,-12453,-23559,25349,-14756,30506,15783,-29219,-8193,31388,-10470,-26919,-7676,13846,30330,-30268,-18033,28694,-14559,7586,1408,26367,14868,-28335,31227,-17033,-15584,-4434,23720,20450,22138,-17718,-24770,31347,-25136,-6758,29087,23416,-3208,-11873,22038,19090,-6024,-18405,170,-8461,-15904,14905,-12533,2305,-10275,21644,-4095,-28174,26078,-5634,-12438,-22273,22700,-21484,30946,12071,-6434,-26591,10652,1198,-580,6973,-8152,28981,27868,-18881,15305,-10923,-4517,-17292,13385,12347,30382,-31915,-18114,-12660,22498,10560,-8065,15809,-27841,12265,26304,27628,23550,24483,6933,-15651,30661,-15181,18316,-2685,24560,-22603,-6471,19662,-8715,-23933,-24028,19536,-8457,22126,-883,-10842,22980,13771,9267,12711,-8436,-31565,-4247,-3508,13469,-10710,-8646,4252,-18993,31055,21370,-21099,-16892,6919,8985,-25098,17085,-30253,27332,-24397,-21417,-29462,27908,2895,25432,-5742,24822,15645,-24738,1322,-4411,-405,2526,24111,28856,-16772,-19365,-12557,20249,-5590,-14268,8852,6080,1608,-16995,-17702,9279,-32677,-15186,3844,-24305,-3835,7150,-29164,31828,-185,-2138,23883,-17306,5893,-7562,11052,-27278,27732,2396,-31189,-21806,15799,-10978,31211,-22557,7522,7297,16291,-23636,23070,31358,18411,23161,-16594,-10511,31625,12339,29407,-30306,11400,-3544,325,2517,11918,-26549,27724,-9797,-21058,22690,25368,-19479,-31883,8400,2312,32097,18611,-22932,6627,2136,-13799,-3069,728,-28155,-12674,16902,-5897,-13816,-3526,-9257,-11354,-24892,19968,21740,10394,-881,27959,5351,22091,-25866,-4725,14692,-12576,-3840,-9674,22504,-4509,-23830,32341,-30648,11075,-14225,-948,-20964,-9612,19146,28706,17259,-27436,-7586,-24764,-6022,290,27972,-17049,-22082,-5675,-21856,16037,-16350,-14953,-21455,31110,5240,7474,-11331,-5023,-29801,-2392,-5449,-27680,-24084,13094,4140,-12279,-29284,-9481,-16340,20744,-4149,8842,28749,22598,-23634,23955,-27217,-12948,-14487,-16304,-29677,1931,1512,-18363,275,-26015,21879,21713,1731,24847,-13445,29051,29935,-4760,9378,1308,15729,12863,24596,32158,841,-12319,8234,-3177,-22488,17368,-11989,-16936,-28346,6293,-472,-25254,-24542,-31726,-10849,8502,-24973,-21736,-2552,9526,-29656,16772,5810,-32487,-20755,-17578,1589,27742,28054,-6581,27133,-3872,13868,2600,25720,24149,-12798,-19035,-25554,-8375,20027,6743,-860,28253,7785,21059,3988,15581,32092,-31330,-7660,-30330,18210,30918,-30049,30223,-19426,4309,25199,-24139,30496,19566,4757,11598,-10601,-2289,2980,9370,11444,10195,-31771,-1296,-15828,137,-5809,24725,-11570,30948,7539,-12245,32386,32648,-9806,17830,30800,-7087,15287,-21393,29990,7719,-12764,27720,-5482,24762,6551,16686,-10293,-23235,-6710,-31615,19728,-5713,-142,-28867,27193,26817,28627,-17144,24999,3400,3380,24618,3281,26342,9682,1314,-13511,-7798,12690,-16287,32690,32695,-21334,-5558,24691,17986,-21639,-18369,27519,4420,-17216,14481,31475,15410,18382,25902,9461,14242,-24008,1693,-15124,12140,-6455,20925,5716,-29540,-10527,24974,-4569,-30603,-24080,-4646,-30675,-12645,22564,26784,-27426,-31841,-24351,-32673,5347,-8799,14576,4056,-26155,192,-2809,16074,-18332,5951,-14999,-688,-14675,11314,-12529,23810,14543,9713,16017,-22793,11878,24705,5329,13972,-20706,-4873,7989,-15364,-3945,16406,-15268,-31365,-25159,32077,5459,-18546,-497,-30116,30297,13939,8604,-17469,-19515,26698,26614,725,17741,8390,-22329,992,18365,22318,-7069,-9072,3523,4993,18824,-21254,22398,-17888,27921,-25636,-16485,-30005,-26326,21743,-15782,5946,24396,-18252,-12882,234,-2952,372,-5835,-9105,-31669,-20860,32053,-21230,12901,17652,-31678,-26935,-24187,4613,10826,27406,16128,457,-23249,11282,7589,-6966,14046,14032,-17989,31033,-12789,-26359,-19986,7098,6643,9831,-25296,-31959,-32041,-24197,-20050,-32754,-12658,25619,17666,-11568,31452,26248,25814,9512,20887,9175,-22797,30407,-12309,17561,-9325,-31029,-1174,5454,-32763,18806,11863,-19980,-6862,-14260,22619,610,-13450,23347,9181,-732,23362,29292,-7879,8262,-15043,-9193,1743,-21996,-32448,-10136,19948,-22477,-12496,-25127,27852,10947,-23388,-6088,-16365,-23383,-20048,28267,-10594,5858,-18760,-20742,-26299,558,-30161,15651,32595,25969,12176,-8051,1464,29902,15524,-29559,-24860,15845,-6926,27856,26137,13346,-30037,21223,-8473,-20656,-17632,7931,-11270,-4911,3431,10904,-31820,17440,22930,-25350,-14768,25538,23069,-14940,18741,2479,9778,-12562,-386,-7464,-9352,7522,-24385,16490,2612,-31015,-2930,5343,22976,21366,17455,-27422,-3470,-26582,435,32730,17090,1383,17403,7254,8802,-30131,26,-896,-12303,-14000,-31184,30244,6206,1199,-9986,29623,-24046,-1603,13346,11334,151,-22350,-16089,-9640,31784,-31400,-4293,-4452,-25214,28910,-4489,24645,-2473,-19852,-867,-26438,-17215,31927,5435,3251,-14840,7020,729,24135,-24548,23511,20992,-15825,-10858,1571,28277,22061,11990,-20578,-20345,11008,-19210,8130,-26211,-11655,4274,2069,-19777,-30966,14985,12125,-24635,30539,11285,13569,1024,29214,-12178,-31013,20583,-3957,25267,8808,12986,-18358,-22387,8497,-29063,22371,20687,-16640,612,-31290,24258,7170,-10176,-4235,-23528,2815,-2432,24226,-17827,5702,21999,26227,-13496,-9743,22675,7095,-7988,10491,-29629,-15488,-13467,16125,-1078,-3086,-8145,2628,-13481,-20224,18756,19900,-18745,10248,-5697,3847,-26753,3543,-26104,3584,-4997,-11163,-23481,-15765,-17702,-4208,7260,-27794,-29879,32041,15466,-26740,-16214,-30768,22154,15477,-1086,-18757,-14662,18202,-6213,-28672,5335,7811,14344,32406,-21109,20359,3183,-14445,-8824,30954,7161,464,-17577,22227,29024,22452,27202,31913,21726,9901,-27593,-27255,11902,27330,20991,-21950,-24194,-26438,29020,2362,-22341,1588,-22594,24771,1227,-10935,12363,-28357,7389,-29228,-30169,-18217,4005,-14978,-28756,262,-25292,31215,-591,29202,8350,4585,-30819,-12514,-852,22940,-1696,7722,29271,-5443,-22682,-25837,28913,-12508,31703,-2626,9326,11299,1786,-16051,14840,4385,-1499,-13922,22176,2514,19109,29652,962,-14249,26088,-23454,23105,28037,-3200,-10514,18211,27872,29976,14715,-10337,-25472,21647,-14191,-5212,20583,15952,-28652,-884,-15029,-11935,-18810,22125,19334,36,11534,-10919,-13621,8420,22812,4899,1741,32126,-4763,-2989,-3841,17491,-17545,-8735,14701,29939,13696,21997,18820,32274,-15981,6637,15459,-11865,-27014,-32337,8968,-13056,22557,-4464,19749,1324,17385,-26639,-23023,7431,11028,11486,6790,-26502,-24269,-29817,23758,-9045,-5783,5692,-11873,-24854,-5077,-25819,-25347,11710,13586,22881,32613,19340,23313,8815,-26482,13103,-28416,26036,-18340,21738,32165,-8594,-3598,10427,-29874,-29574,16694,-21374,-26623,7685,2349,362,-19389,23245,8277,8302,30194,15699,-12755,11013,5813,-12908,-2413,-3641,28675,3874,-23305,-32507,-2857,-8876,21999,-3459,15299,-14365,-25799,18194,-11171,23663,29588,-5025,-1418,-830,28106,11961,-10352,3616,-12503,-12925,-13452,7510,30857,25130,27371,-4323,-11278,23279,32319,-1814,23541,-3305,22078,12774,26005,4611,31177,-32560,-9962,-12760,23872,-13141,14984,-10313,18797,10323,-31118,-24322,-18827,-10853,-4478,490,29426,-6388,-7147,24030,22057,14344,14543,21610,-20237,5317,-14461,-30925,-14676,-21223,6454,-16265,-21015,29260,3744,-29909,-16647,-14039,-7454,-30617,29053,-5803,-22170,-22540,16112,6121,10719,12772,32501,-29195,4035,21792,17918,-14189,10636,30449,23897,28943,32292,-23545,-25046,5980,-7041,-13292,2474,29471,-10433,18595,-17334,14882,20747,-21047,-23688,31346,-10818,25193,4701,32669,5198,4435,-29292,-23534,-6539,21394,-4954,-28670,19076,-13823,-32493,18602,-4600,-24771,-8184,21128,-5295,27058,17832,17040,12887,-32268,-844,868,-20546,8236,-552,1404,662,-28618,1306,-26906,8586,4782,-17671,-30719,-6591,10143,-26620,-20281,29089,-26345,31089,-8278,-18347,-9861,-19917,9126,-15570,30684,-6600,30086,31185,25324,-1812,-22128,794,30404,12045,-31310,-30980,-19416,-25448,10375,18135,-10351,12424,-21223,32561,18572,-8735,28883,24995,-10412,-12161,-26119,12495,691,15776,29694,-1391,-23590,27013,-2973,-31033,-7565,7668,2530,-9928,-13054,3988,-8139,299,11308,-30531,-14333,-31809,14661,-2787,-32014,467,21246,29638,-7304,-21932,-15290,-654,23331,18170,-17644,20258,-15988,-8466,14505,13808,-6730,-25827,-11291,28568,-2986,8424,-211,21643,-24044,-21669,23881,-5608,-20709,5776,24373,-19955,-26524,12853,-23084,-1060,23690,-5605,31055,14254,-20202,-19356,1745,-3422,4946,-16517,-22381,30984,-9576,-903,26786,20207,-25246,-6192,9083,-16521,4908,197,10639,16968,-26794,2246,29781,-20549,-17667,-26069,11160,-26744,1095,9448,20278,13661,22860,-10743,-22527,-4960,5509,-12140,-6742,28701,19726,-12723,16142,27248,13854,-7542,-22040,-14004,25424,21367,-29803,31399,-9153,32747,-21917,5948,-26089,22011,11972,7774,-1307,-516,-11331,-11213,21509,-1090,16595,-5749,19539,-22914,-9814,6498,-2868,-26439,980,-21781,-1212,11708,-3017,-8555,309,-52,-9922,23924,-72,929,-2894,6608,-9826,-23688,-18384,21635,8564,3053,-22344,-2694,-30804,27019,24326,21504,-28661,-18255,-4765,1240,-11925,28983,12227,19631,7925,-23556,-21690,-24532,9161,1156,32160,-23677,-30681,-3500,15699,-7739,5580,30083,-18870,-18622,370,-8446,11452,2335,-14193,3012,-8928,-10085,17526,19075,23923,-27166,15292,3384,25234,-9550,12596,-29223,-1314,-11010,4702,-1920,-1919,6789,27349,-18986,31818,162,-21669,-19818,14308,11469,4504,-7006,-18963,23080,28774,4878,-19772,13533,-8813,-28615,19136,-26288,7537,11603,-3070,-12633,15149,28385,9126,-12916,-6302,-25560,26641,-11720,-11777,25693,21211,-678,-26892,2753,-21975,10381,28515,-8169,695,24523,29477,13691,5290,-12103,17845,-8340,-5623,-7384,-29504,24076,12751,18414,19695,-10890,-27269,-19373,-3681,32141,1676,17310,25067,-9880,-16134,30943,25642,-5341,8558,21390,19259,-23514,13147,15969,22946,-14330,-28900,8024,10098,-1754,-32127,13363,-10444,13393,-990,-23516,-30264,4510,-10121,-1176,3884,24324,-16632,-3816,-18323,2,-5639,-25448,27430,-29848,28711,13923,-20593,9091,-2874,-30414,27530,994,10379,4862,32009,11021,-14542,-11202,-8353,17237,-1949,-5848,-11020,20698,25744,25632,12256,-23655,-10950,26701,9116,16179,-31513,3780,19099,29967,-15064,31275,6291,14830,-31906,1055,-16943,11242,-26850,-17701,-10504,-8623,3866,13912,-24153,-30850,-24702,-2404,22617,-31725,-9538,2106,-22611,12280,-3959,19273,-4308,-2703,-9713,-17975,-5503,7991,-19467,-31978,-9946,-18604,1845,5879,25406,7764,20947,-17864,31910,-7953,28817,-25009,-6034,-28652,5355,-16184,-27608,28585,18691,-17451,8098,-18034,-30944,-28977,12031,-7889,-14183,-26239,-32665,-882,-25449,-9842,13283,9165,28806,5922,-15837,16987,20827,-16694,-23733,16878,-8935,3001,20994,29189,19586,26154,25007,5510,-24063,339,20244,-22238,4131,-491,2641,22716,6038,2745,-10932,13358,25671,-30416,-10243,21711,8275,6688,5931,-3664,22762,14966,-19553,-18939,-14799,-31326,-22517,-27980,27597,-30276,10299,-29233,2832,-2223,-18703,-25804,30054,16707,29681,3326,-13314,-14018,-16083,-20409,-11665,6442,-31465,29378,-19636,7234,-7053,-29640,-10566,6163,-15811,7403,7605,-5559,12192,2435,-3066,-10276,5971,32534,20270,20037,-26036,17558,3978,-29122,-11883,23433,-10371,4803,-29743,10732,-21521,-28440,7344,-8389,11563,-32475,-5260,-31770,6456,11697,8401,-18705,-26628,-12174,16499,3074,10319,-10296,2842,-2178,-23026,9574,-17386,13721,13221,3499,4387,-29917,-24464,7412,13584,-13216,11741,-11838,11164,-9463,-11544,-26863,-8464,27680,17603,32705,-23792,23743,-12235,25476,-5949,30852,-17587,29661,-4092,-7845,6469,11290,-26890,-13077,-17977,10265,-10225,-9672,-15089,-29407,9880,29420,-8477,-11723,-12809,12747,-5818,11495,7661,-20981,11434,16638,-30005,31967,9347,-3185,30053,24528,-6290,-6805,-16083,-32588,-28281,-10205,-12896,-13490,-32706,9647,9606,-15027,13008,-13280,-18373,-28235,7765,1586,17281,-30819,-19685,-7825,-19032,24517,-23953,-16268,23718,18162,13315,21005,9924,-25741,-18567,26610,-25560,-14079,-16361,-5688,5200,-16299,-28807,-17960,1443,16970,1528,15838,21503,-23474,-15343,6018,-21524,-2260,30961,-7787,-10509,-25759,8713,-19557,25172,-10738,-31319,2330,-3711,-17117,-3827,3498,1572,12581,30578,-25995,29051,-30996,-11187,-2273,18742,23109,-19202,7479,32404,-1776,-19270,-21886,28733,-21075,3095,-14542,-14065,-20958,-1331,-21659,1072,118,13439,30130,15770,-23154,861,-15425,22195,-1328,-8651,18479,445,12931,-16561,-13579,3273,-2994,26669,2911,27998,-25367,13794,23965,-13673,-15878,-23344,5030,-4068,8093,16139,29773,-24555,-3188,27136,23983,6426,-4769,-24208,-4146,26672,-91,-18433,-5649,-19927,-2226,13540,16115,27549,7443,-13740,22781,14844,-32712,13979,-31596,-15822,23404,6203,12879,-1269,-10424,9886,6944,19156,4256,-1839,-7185,32255,6721,21438,26160,-26136,-29762,-12255,-13294,781,-31482,-29945,-4436,8730,-10916,-14422,-9192,-10860,32325,-8020,6087,22963,30952,-13800,-11073,-12239,28854,28639,-25850,343,-5966,-266,-169,-32012,-11594,-6775,-25379,-8587,13738,-5905,24963,15025,-3081,-12240,-9012,18771,6106,14564,-24855,5665,-26222,14000,-4139,-28036,-32567,17556,-7507,29055,13429,-588,-3368,-25304,31914,29232,-24547,-12446,-10309,-17158,11735,-29338,9706,3932,18456,-26142,24460,-23322,25398,-2200,24011,-32224,-29302,30558,14545,-672,-30245,14746,-15883,-4984,11035,30315,27196,-25100,-27756,26344,-28634,-19534,-18868,-6175,-3924,25636,-2744,-26984,-3199,-17055,-20357,-11505,-7608,-27725,19063,-16364,-27181,22529,-18573,20132,-10910,-16049,2112,5976,11735,-19619,3524,6165,-11950,8537,-257,-7816,21772,13643,18777,-14918,6513,-16733,-9134,-29453,-1020,3278,-8190,24141,8321,-21894,-24990,13909,-32131,-10794,1275,-10273,5926,-29380,28472,-15106,-16230,-770,23828,4588,-24999,-9195,29541,29541,-28318,15551,-18144,10963,31586,5490,14279,-2200,-23998,-26678,-10826,17091,-15803,-3047,-1767,-15165,18928,32276,7331,-7913,-29870,3036,9750,-13332,-30501,811,24025,-22732,24385,20799,-25957,28835,3584,-11333,7031,2404,26926,-11457,-32563,-29839,-5366,-10620,20020,11600,19102,-14513,29203,5263,-15003,3767,30119,-12104,-25963,7102,7332,-23695,-24853,-1409,-13658,32300,-13377,-6847,28369,22975,14588,2634,-7388,8748,23946,-7182,11677,-14187,14967,-1069,30182,1302,17187,26619,-26201,-30583,-2380,-28849,-9919,4425,11022,30182,13498,18938,-3994,32609,18472,15397,-7005,14074,5606,-25183,-16059,30986,16333,-24880,-8963,-4756,-6298,-26762,26943,-8882,7308,11364,-15030,13876,13549,15358,17795,-29136,-12983,-3949,-31721,-32251,-17777,-2946,-32409,-32072,-20315,-6646,14770,18059,940,31480,16278,-15494,-26166,-25451,12519,304,-19445,6696,24190,20632,-14707,-23606,1741,31611,24520,-13230,-30292,-21229,15589,-29244,-20712,30580,579,-20353,31277,13032,5770,13281,-1676,-26057,11994,-18165,-8782,18596,-10847,-29029,-13866,2476,10435,-22443,-9659,28496,-13281,24851,27340,-21527,-21146,29817,-9988,27212,-32193,2069,25025,1154,14485,23536,-18581,-12512,4050,12511,-5800,-16723,27115,18187,-30893,-16499,21926,-11991,18746,-406,-1666,-23679,-4676,17822,-31595,-10102,29064,-19973,-13052,-13690,-25528,-12476,21147,32266,21446,2865,23035,-29902,23121,-5681,15378,-15445,10364,9726,-30024,12239,25996,24670,-32518,11975,-8502,-1416,21064,19590,-16360,22238,-23279,-20063,-30501,-3562,-985,-23260,16730,-12605,-23761,5410,23029,32043,8277,13384,-6404,-9112,30707,-28807,-32152,-32084,16201,26612,25355,16451,5820,-15914,-17731,-5882,-29090,-1323,-16410,-19600,11383,-14143,9606,-22369,-4635,-6430,-2205,4373,31749,-11943,3650,7259,-31326,30014,30916,32150,-31559,31532,-32700,17411,25377,25423,1095,-1569,-23257,16133,25318,-19579,-17957,-23859,-6411,26195,-5234,-29571,-28940,22900,-3233,1623,-5493,-4251,22449,30925,-29758,23892,28173,-31609,23276,29382,32691,23344,14026,25302,16000,-17645,-9034,25511,31256,-16483,-26834,-19467,-7573,-477,-26039,19961,2720,-22211,10095,32256,12181,-28165,-4761,1864,-30006,-1751,-7010,30935,-591,-16501,27551,-667,-25924,8810,-8132,22845,23934,15603,15590,22423,31889,21524,-29810,-8451,-11720,-23081,-21256,23769,-12523,21607,23258,32427,26210,-14269,1525,28972,16748,27283,27141,-16609,-21985,21925,15492,-15141,-2031,-25406,-25063,-10864,22966,23295,-21208,22088,12053,-18249,-19130,-32434,-8561,-7618,24104,11684,-18777,14595,11345,-25334,-32440,-19897,-29128,17077,-25381,30782,-32299,-14597,19940,15961,3030,-14858,23324,10736,7047,13524,1265,18608,2845,-19449,-32408,16483,-19114,-8201,-23901,-27777,-29283,-9910,19587,14830,-2475,19915,27702,1166,4225,-30445,-819,4694,-12274,-13645,-12111,23524,4266,-21553,1494,-21454,24739,-30008,29922,-5183,-16689,30282,-21466,-3034,-10685,-12598,1957,-7200,10260,-11223,-25136,-24981,-24074,-30201,8953,12919,-27878,-24632,-15153,-7384,-5509,5505,-16626,31525,16720,17637,-22696,8693,20397,-25540,-29256,-29058,-28024,-17954,676,-5941,2216,-30133,19627,-20290,-8587,27259,-12503,107,29827,29219,-19740,-30818,-28180,-2125,-5433,-921,-29386,10710,-2162,20102,-4420,7911,-3971,-16789,15139,-459,-13078,19883,14356,20366,-18824,-16194,23002,-31964,-3716,-18352,28064,16550,14523,25124,13002,27551,27075,17590,-7340,-11124,-16097,-3958,32354,14509,-16622,-4832,-10347,12175,11147,-27974,-21050,30837,24677,26074,18437,-26913,-22887,8672,-26109,6165,23089,-30811,-10051,4845,27082,-29816,-370,21390,20543,25059,-22500,-28320,-11665,-22913,18957,4482,5023,-24156,-16109,-16596,-19362,-4391,-18525,-27451,-11084,32680,-21596,-1203,8586,-14936,-27804,-1092,-12978,-5087,-29013,-18663,-2134,3386,-30039,-14357,-4321,-19771,-9909,16782,-9915,-23718,-11503,27877,-15105,5157,-21486,-1699,-32001,-7242,3619,-10316,-7329,14792,21249,-31509,32625,26214,168,-13120,-11639,3923,985,18996,-25457,3715,-28128,2990,16712,-5268,-12995,-25969,3782,8271,-30859,21445,-19338,-19576,-13020,-18571,5950,23368,3881,31390,5393,-7636,32650,5251,-14188,51,24900,6941,-28792,-6881,-6829,-21481,29602,-2189,14277,13548,25311,-31484,20347,-3673,9556,22257,-14995,22986,-30085,4753,-28351,8633,-4645,8299,7257,-32019,-32103,7140,6001,-13523,-25576,-1865,26187,-21600,24022,-13409,-10312,20857,17170,-28801,1639,9715,-27517,-10780,-26725,14808,-21289,-8952,5027,-18606,28570,9445,22795,-8841,-15023,-2714,-8092,-14358,-28341,30678,4887,-21148,-3954,-1692,-9979,-12699,17667,12477,-24608,2071,16444,9800,-20981,21696,31788,-14937,3737,-22268,8880,-24002,-8106,4684,18212,-18077,28611,-29578,11978,-12248,-11167,16406,-14336,26488,28026,14478,-7970,-14719,-30987,-23070,30527,-22826,11769,14205,19742,23557,3134,18764,-24147,-25895,29264,17501,-17128,-11608,-10581,-31683,3084,-14737,-28492,-17705,5783,-6891,31469,24216,-13169,26729,5928,11629,-20756,7709,21327,-22996,17651,330,23977,4627,-8879,-5656,-9376,-257,1218,-12878,-15522,16858,8282,6665,17943,-21400,24696,22219,-6337,-2287,-17438,-7634,-10838,2161,-13671,27858,-18977,-1659,2801,-30416,8113,-12314,2683,-676,25081,26572,26436,-17062,-6451,-5112,2828,10795,-21021,-21656,-15306,29691,-10288,-23377,19144,16144,7105,-31061,-24256,29036,3868,-5159,24127,17659,25951,-5838,20012,1298,14616,-10072,-32145,6930,-16266,27060,22637,10051,-10819,-7302,-11920,929,3810,5542,-2147,26291,14933,-15769,9668,-10728,-14062,18180,-14459,22575,-19745,-23098,7468,-26560,3832,-5287,7506,-14319,17409,8129,25380,-31623,2422,15250,11196,24372,-24818,32044,-7466,11760,4819,23155,5285,-13014,-25380,-17814,9026,-6674,-32400,27335,-16865,-19376,-28529,23371,-13168,8071,-14682,27106,26521,-30039,2469,19135,-28894,-27875,1618,15070,29265,9568,14347,-10968,-11438,-13600,-20579,26615,6154,-13191,-23965,-17586,12904,-23597,-23017,28807,-10205,-18778,19412,9395,22062,-28037,3735,15817,-25308,-26563,2185,-21434,-21670,-28963,26405,-25171,13374,7986,-3371,-30831,27154,8819,28553,542,28397,-28179,15725,8534,-19007,25476,4575,3557,-26068,-8780,-19814,28762,-4048,16689,11812,3413,22895,-18770,14747,-31541,-14964,8385,-23944,31178,-16396,5454,-32420,-22008,-18494,28902,11303,-22864,-32043,-5739,18439,-18282,-13029,-9752,18044,-6329,14236,30998,-10333,-22578,14921,-31288,13603,5050,-17289,-4416,6277,515,-28797,15101,-1074,-12424,-12212,-725,-1664,2063,-4590,-23127,11968,-3864,3902,-2360,10622,23641,20656,-4100,-15454,2126,-5869,6981,12317,-23714,8461,-6847,14104,23941,21506,-12386,-8310,25477],"expected":[-11203,7580,3360,5136,20192,-16954,-21616,27295,1812,28656,-18248,26179,-21356,1585,17720,-5528,7382,960,-14417,25380,-29560,-1755,4188,27737,-6530,10346,8035,22194,9704,29773,-1362,-18484,24107,31984,-5559,-26550,-9142,-24596,30300,-29926,10064,352,18424,19082,406,-2852,11284,16672,-4854,-31238,-23013,-17846,26696,21456,-28801,-24864,10962,-4896,4636,-22172,10142,1884,-28494,-1910,-4990,685,-27819,-8130,-24807,-24551,-9296,-11318,-25888,5216,17704,970,13656,-32059,-20938,-32756,328,-6375,-12808,32333,15480,-17920,25414,25065,30976,29144,-924,-28912,-280,-7466,-24636,29840,31880,4877,9848,1188,-11936,30272,-4988,8700,-29656,15360,-29825,-14240,-21572,-19887,-26156,-8286,-19328,23563,15394,167,344,24575,-14334,13527,-16236,-25216,26388,-8112,-32248,-8717,-12891,16512,-4768,-28512,13414,-16022,-19520,30865,11888,29524,-24004,-14432,3770,6208,-14636,-14372,6388,24612,23379,13272,21716,-13438,-3299,-14900,7948,-21007,-1096,16312,-17742,32616,-13542,-8664,28595,29676,-24124,26876,25152,18579,-14814,3550,-8761,9850,10130,-27246,15912,-29372,1680,-11152,-29992,30340,24508,-27075,32606,-7350,15935,24383,-11932,-5307,-18625,-18356,-25190,1116,-989,23179,-17909,9700,-9976,22262,27123,-2937,23352,31688,29241,-21322,-19606,1961,27438,-28685,-3272,-32239,13973,30112,21629,-6376,14720,-19977,31464,2760,20782,6129,-30978,29618,26168,-12112,-2605,30980,11159,-26164,-18048,-379,2230,-5965,24262,-12784,-6201,492,30984,31232,-1540,-12603,-3706,-31835,13136,-2432,-16839,-27566,23018,4261,-11818,-32645,11268,20674,-16054,-24390,14330,-6673,-7984,-17665,-10718,-26000,-23808,-9712,32536,18992,-20800,16562,-14754,-24791,-8275,20996,16317,-3301,-20122,-25964,-2616,-2711,29797,-30516,10080,-31375,-9407,-1128,-17445,24630,8648,25850,-12895,-5325,8832,6991,25032,28832,17273,6464,5876,-27140,-16914,-13608,26710,15383,31114,5830,-19120,-29680,-9434,-13768,-3038,5352,4021,-5830,-28584,1134,27936,-29829,-28406,-7585,15600,12730,-302,-18096,20544,25541,-56,26498,-735,19161,15404,30846,7416,-14300,-3965,32227,32372,-254,-28232,11007,-9055,29837,-8778,-29888,-16626,28408,-22805,-25832,-6062,-7132,21402,2696,29312,23082,-30074,8642,-31668,-3360,-13432,-29620,4576,18234,-29412,4844,30498,-9028,-4880,16360,6247,27670,-5968,18346,-14082,-27386,27784,-11762,-31926,-14292,4015,-20234,-10512,29028,-30868,31112,22496,10142,-6428,17383,-11188,3408,5192,-9968,23724,-13296,-19545,-20363,18032,9620,-9728,-7832,-31648,-29465,3573,27518,6956,19440,1659,1052,-13316,-15980,23136,-9876,6264,-23046,-281,2542,-10240,-1465,20686,-22448,-30331,17745,-25936,20175,19133,-27428,22568,-27913,-5308,22541,31258,2314,-22656,-12649,-12160,7237,11092,11528,-22066,8496,-22998,18356,-25495,23670,30483,26880,28102,526,-8801,-3181,20592,30479,-13472,24282,-11038,17024,26392,-27782,10730,-28101,29524,-9254,25906,9416,12008,-1221,26620,-10293,-20400,-25154,-26791,14765,32280,-25798,19414,23221,32298,18110,-24632,-13132,-8082,-1238,-7240,-19944,11250,-26410,-31623,13178,25975,9819,21276,31208,-32765,23004,15788,27388,-2752,25821,-10944,-32104,-22580,-16604,-29512,-10556,-1871,-28768,32196,12146,-20503,3408,32642,19388,17662,14912,-2112,23850,-16142,10652,23092,-18888,5928,-27923,-24208,11712,9731,24144,1294,-8688,-18336,10820,-25189,-31896,4176,-4306,21056,-7234,-16464,13770,12413,-13455,7096,-20266,32756,12355,-10147,31270,920,25904,-16236,-12834,926,-29727,5718,26224,-15700,25210,4702,-29002,29354,6613,-5307,-11686,-13912,-8456,11484,2268,-3237,2230,-25205,28380,-24984,-13836,-16148,-29792,-21986,24569,7222,-13268,-712,-16464,24816,-7722,17912,22674,9010,-25982,-9816,-18809,16847,4168,-31584,1490,11426,-13482,11772,3163,26788,28736,-14000,10866,-15434,2632,9987,15842,-29833,-24991,15106,-22144,9568,3553,-21581,-2829,-13905,26731,5474,5998,1174,-3555,17252,25536,29187,-13839,28560,13850,-15328,-16107,-21393,-9692,-17585,25064,18502,-27592,27496,28352,-9496,9639,-28676,32294,-27496,31592,23936,15910,-22088,14620,31352,25814,-7259,23184,-5803,-20466,-31672,-15345,-21952,10228,-9717,32302,2674,-10960,9884,-22141,-30128,14472,26590,2943,19443,-30158,-2078,14376,-3148,14720,6112,-5956,-2870,7187,-31181,-20926,6822,27994,-23060,-10784,-2264,-16412,7615,7469,-24573,-8338,-28584,19912,-30081,11256,-28245,30504,-18719,21762,8476,-32690,-7393,-16138,-1512,26234,22050,-17992,8478,-22628,-27790,-31810,-22944,-18797,-10624,29960,-17693,13963,4452,3446,9394,26038,2240,29582,11520,25349,6347,-3536,12696,3144,-23807,10766,-17115,15920,6847,14224,28028,-1542,3541,16582,24983,-14615,-16052,-28376,3584,-14947,1760,7580,25938,-3096,31934,6496,-602,-25616,-31537,28158,21456,-32322,31662,-21616,228,-30566,-5082,16220,18784,-20026,7372,14952,-18420,-10538,-24100,-32230,12039,6047,-30308,24216,28694,-1644,27946,-27738,15493,-2012,-5602,6668,26695,-911,-22848,-876,13896,-6570,22524,31968,-21041,3432,-22448,10970,32228,-28830,-6135,-13644,-16578,23921,14029,-512,-7918,-31176,-20893,-10884,-24524,-14048,-29312,13416,-88,3616,13474,-29766,14048,15390,-27097,26966,25916,-10032,-25904,1580,-25497,29518,9181,-11584,11824,-11824,26272,5228,12413,-29368,4751,6848,8744,-25851,-28138,-18192,-2754,2134,26815,-20793,-21040,13346,28316,32656,-17131,24206,11632,12800,31150,26036,-22896,9904,6624,-5632,-19240,9536,27948,-31560,-9819,486,29498,-101,24326,22530,30699,14615,23896,28956,1272,-19616,-9066,-663,28299,-2245,-16172,24,32626,2139,27677,-5810,-11649,-17368,-6521,-13762,-24374,-4570,6818,837,-13100,15459,2369,-19606,-19784,-7632,17734,-4672,-1848,-30572,17953,-21304,18380,-6416,11074,-13298,-11452,-16157,6827,4404,-9216,428,-18362,2800,-19365,22907,-6474,15807,-18432,-31480,-9334,-27720,-18453,29640,12704,8332,-4952,18734,-11098,12720,-5434,21468,-5888,-9757,32549,-219,-8566,2016,4408,-18669,6395,11136,12686,-27876,-9231,24197,17196,-30140,-1926,20618,-4357,-12910,-14586,7054,7186,14921,12236,19860,18606,17338,12660,3706,-27512,-29329,12244,-27052,-24694,20354,-28508,-26580,-22904,14929,9082,-588,24093,-25214,15552,-25718,-18122,-23678,-6336,29920,24884,-30016,-11152,-20184,-11146,-13568,-152,14681,18607,-18653,-6507,-12311,21406,13423,4576,-26684,-10752,-12583,-27968,-18592,-27070,-28440,-6253,15336,8115,1132,12896,3529,1337,-10560,-16285,2380,-17986,-25350,32471,3562,-25680,12972,-18944,18545,17035,-12800,-19494,-12024,-17580,-4144,-1168,-23637,1227,19521,24870,-5342,-21072,9652,30385,5731,8653,11104,-298,-13680,11452,18897,-6140,17017,-25246,20253,-16024,-2284,27648,9984,-560,24889,24455,-9863,9384,12915,22190,6812,6080,-29332,-8122,-4360,-22268,24412,30372,-25416,-3028,23196,-2737,28094,-1100,-30829,4608,-30380,21664,-1965,-21603,30544,-15000,-6856,19188,-23730,-8128,24213,-8304,10406,-6496,-21646,-18642,-1152,32044,10710,-8465,-28665,-21056,-18042,-14288,-11632,32576,1050,-25384,-27338,-25152,24928,-12452,-30105,-31144,22124,11783,26332,-372,-13968,398,19046,-7816,-22311,9712,22490,-12962,-16328,10567,-16212,-32442,-11131,-1902,-9622,-20867,-19768,-22924,-31214,9868,-23252,7717,-17242,27424,24193,-29224,-11006,18256,4754,6614,-32323,-26489,31432,8776,20388,18136,2920,15854,20136,20448,16617,24479,-25532,16152,1824,-18083,12208,7856,-5939,-25201,-15364,-30836,-1145,-3085,-13727,-425,-21184,13932,-17831,-13000,-30568,13820,13970,-14342,-805,-22456,-16820,10214,32113,26980,18532,2258,-22476,-9160,14960,5239,-1533,18068,-20016,20567,-24713,20800,7296,-32130,2701,27572,-8748,-5547,-27823,-31472,-15760,-2476,29858,30698,-12611,-4548,15424,-20183,-11344,-26912,-23784,32352,-30692,17876,44,-28082,2112,-3914,-2390,9805,4170,-19094,416,-31763,16095,32684,-30850,-27743,-13724,488,7160,-21421,-14756,-11032,29845,19854,5116,-31716,-3916,17884,8597,-2433,-30608,-2134,16096,-6528,31101,6752,-22498,1818,-15037,3686,22994,13886,7844,23549,9929,-23645,25980,8580,-23740,-11080,-22320,-4049,-26998,-7247,28561,19907,-32768,-7496,5684,6478,-26895,186,-6349,-11648,-1688,-3488,-19228,6505,19737,-18817,-17492,-26046,-10504,-21667,-19578,2647,22515,-1278,28872,-3396,-29393,-7731,-16130,28102,-31994,-28588,32106,-504,-13824,6579,-26754,-21863,-5170,-31803,18168,1581,31064,-25136,-17984,-21234,31238,-10048,18035,-21118,26856,17923,9973,-25509,297,12192,-15512,-17496,-13376,-32594,-26736,-9784,-30465,744,14160,31820,20116,-9274,-9856,25064,24092,25810,8627,-20165,-14747,10916,3883,-9417,-1686,9616,-20351,23553,5562,17268,27264,-31992,-6506,-13386,31570,-4164,18000,2030,16920,-19660,-15878,-27056,8868,7456,-30664,-9108,356,-3260,11132,19119,30992,-18524,816,-20486,-23073,-13136,29082,-9956,-8672,-3542,30122,-23494,25058,27304,-11344,-22640,-26240,-23753,-1932,-2334,17784,11395,-31820,-8991,20947,17782,18588,-10716,5013,29918,-29893,22944,-31704,20272,-19712,-3454,31184,-18527,17304,-11115,2650,18296,-19350,-18661,6005,8340,-15166,11262,29823,-9420,-1696,-6368,10728,-24404,3424,-18652,-27988,4844,8384,-10710,-23188,40,1239,680,-3554,11778,25288,-21073,8978,19181,-30057,27009,-17728,19803,8446,21969,-28768,-27548,-25334,29312,-9426,6227,-3030,4745,21628,-21444,2628,6675,-6718,-6484,182,29748,24528,9449,14456,-3031,-12879,6308,14944,-8852,19876,-6090,-1052,-29114,-674,-1400,-17038,26568,30530,32200,5984,-12682,-3212,19276,27296,18834,-13324,-25288,6637,-548,21650,-27532,2949,-17470,-29832,10583,-28305,30067,6843,23352,-27057,-21849,-18441,-6290,-25494,11858,28475,28378,14504,-24845,-25726,-10836,1086,22204,13212,-18796,-12086,25804,-1672,25153,20044,-14858,-13272,4491,-5632,364,-5778,24658,-17770,966,31008,-18828,-3946,-4513,-9216,10139,31475,15804,4999,0,-28734,-21531,5080,29102,-16664,-28688,-5332,-17542,-4931,14864,24068,5683,5376,-10116,-11844,24383,8266,-30954,-5452,18542,-15239,-11021,-6043,30500,400,15741,17170,-28648,2214,7379,-11748,-19674,-14829,27112,-12096,-18960,22396,-23904,-5106,524,-11118,21982,1416,10302,7511,14680,-12544,-5776,4388,31713,-31092,1939,-26236,-5036,-10406,-23662,-22523,-24232,11022,-3147,21629,-26114,-10272,-21768,338,24083,6939,-31360,-12554,21232,24109,768,14752,32334,14879,239,32190,-12400,-20176,8622,6360,24146,-1106,-9940,12227,4816,-23472,-31296,-22994,17280,-14553,27656,16528,-29747,3398,-24246,5576,4148,-29157,28456,-21677,-8860,-31662,7714,-4040,27456,4074,-7993,31506,4908,16292,-24391,-11904,-3040,-9892,22183,-4442,29586,19884,-20144,11225,16462,-25662,-26024,-7112,25025,-26571,-2728,1608,-17446,-24438,28000,-11214,26262,-23602,-32004,-6318,-32450,-25096,4824,18670,-9242,30741,-2052,-18080,-23416,1996,7282,5190,-26584,1027,19174,9173,-22576,-26908,-5656,15077,29375,12876,12594,-32,-2272,-5904,-24728,-3324,-1151,-31936,1120,18560,3112,-7064,17592,-6467,-15393,7836,-3026,25015,-10936,8823,-11176,7408,5136,-31586,-2848,13312,-24676,-20271,2128,-1279,-28564,21875,30765,-2144,22578,-17057,2771,30438,16377,15200,17184,25250,19438,8518,-18080,-17930,-32476,4336,17504,-7706,9745,-6223,3643,4617,-7817,18824,-956,-18990,3817,-19204,-11757,-4178,2336,-348,-5410,22586,31232,892,-13768,28218,-25910,5709,-31676,24420,4035,-31200,27841,15714,8460,-8778,29663,-17078,26448,660,-17582,-4632,-7335,-19572,14436,-22184,-13854,27277,-5940,-17830,14314,14672,4808,-14852,-29636,21820,30112,11196,2026,-10492,22880,26580,-8769,-12333,5012,28803,16554,1132,-3144,-16667,4660,12500,31232,-9200,16722,-29184,-3336,4183,21776,22756,-9276,-28365,-12897,-22276,3664,-179,-13808,23254,-4024,15088,-22588,15968,20560,17060,29060,9141,10642,-27142,-13114,-15520,-22858,31875,29264,2464,4550,-11819,-15546,-6847,25856,-26472,15485,17752,2606,-32536,6692,16452,5160,-9065,18080,-18688,-28095,-25304,22969,20383,-13736,25344,-30760,15632,29484,1500,-15546,25616,-26234,-1664,9300,-217,424,2432,-4602,4050,-8360,13192,6113,16222,21695,-3520,-25673,4694,23301,4288,30748,-27450,-8234,27570,-29414,-4424,11887,5600,-12128,9518,-5015,-736,31905,23032,-16802,13744,19996,19656,-4386,-14332,-11362,23060,-20226,25335,6944,-27028,3980,-9520,-21317,29868,-32340,-9318,-20864,25954,-19884,8601,-13286,-22080,21716,3544,12135,-22933,-31791,-16976,15190,-12876,31567,13840,26937,18444,22676,13496,23587,-11656,31328,16239,-12966,-17596,30310,23976,10229,27457,-7695,-27304,31291,965,-12948,23281,-27330,19076,-15628,32127,-14937,10106,-6294,-8204,-27113,-19128,734,-25266,15599,-13296,23309,20666,-8930,5564,-28527,11728,-3512,-16532,29970,18168,18050,-15254,-5742,30288,-14223,10808,20100,-32559,11060,-22870,27250,-14892,23580,25024,6104,3097,17562,27519,23415,-22238,28184,31242,24033,9580,-25972,-1640,-25249,25544,-11216,8306,8336,32234,13620,9360,-17376,-3672,-2359,20734,29254,562,-20639,-13981,19260,-18146,25422,24196,-13306,17544,-31540,-17333,-314,31148,-3574,13606,-9382,-29922,26888,11432,3590,20767,2904,29920,25816,14735,11630,30742,24136,10125,24596,-30672,19168,-26681,-9130,-19248,-29195,7032,11623,-15297,15728,-8588,8846,13562,-14553,20896,-466,32264,-21974,-5356,15872,-16996,7216,-15311,-31254,-18995,2975,-17578,-26472,10312,-26816,19456,8790,-21216,15999,3986,-31088,25312,-18666,27440,-4188,27976,31748,322,22046,-30078,23720,10492,-8960,20266,26992,21160,22016,-20898,-15897,-22944,-12522,15794,-1720,12486,20610,30472,-30730,-11034,-1916,-24209,-19720,5059,32544,27188,2468,-9480,-29978,-28556,-27080,26268,21016,19833,-19270,-24185,-17826,-11826,16765,-21862,-26832,-25334,14864,-12231,-21535,-17320,-28974,8784,-5706,10793,-5714,-8588,-15560,-7423,-4501,-25776,-14984,13390,4532,31217,11757,-19440,-11342,486,13184,19616,-25811,-20280,-3152,15449,20472,16368,20350,-25760,14622,-16138,15112,-28663,-11406,25556,-3312,13912,4752,16384,17276,-28030,14896,-10577,-17556,17164,-16698,4132,-25477,31313,-14496,-20712,-32144,10416,-9395,-3854,16777,980,16562,-10380,31292,-17416,23531,-3128,-1483,17616,-27052,-6036,-28000,-18768,27188,11232,-19798,-3887,-19388,4396,-19663,-27690,-7755,30944,-9294,987,8316,-25814,-1946,-10612,-30886,14400,25449,10132,11584,25760,17780,15675,-26368,7162,10408,31442,-13922,8662,32664,27042,17358,-11328,6762,-8865,-20854,22314,26453,32608,-28808,18104,-24566,-21338,-22712,-4511,-28965,24418,24404,-11344,-467,5362,-10572,13247,11544,4191,10656,20108,-19688,19776,25942,7551,-17284,1098,-1992,14381,5414,-1386,20494,-2362,29131,-7940,10282,-19294,30624,-18875,-18650,-14151,2540,1856,20163,10717,27666,-8702,-31696,24839,-22020,-8616,-18429,-12744,-12696,-12832,-25550,-12536,968,3479,864,1043,-22169,-15840,7892,-2536,10343,-32660,-1696,852,8559,-27670,-22047,-14342,-8678,-26944,-32560,6204,448,15322,-27536,22860,-23285,11704,30608,-29100,1122,18399,-28738,15385,-16103,-11728,-19509,-1698,29392,18592,-12924,-21804,23100,-17162,-8116,6714,-31056,-5588,-1257,1220,11546,-17991,13870,-31295,3416,3962,25524,-27868,-27063,23898,2952,-10392,13332,-16700,-23426,12930,13152,18106,1418,-11937,20544,1462,-19764,-3640,9562,20234,-31200,19371,11580,12658,2517,994,32422,1440,14738,-272,-19536,-5460,-16664,4744,20836,-6995,-30541,486,-4936,16026,-21038,-13116,14712,14346,14819,11143,-21160,-21190,-20218,5632,28477,-21862,794,-14437,-11358,-24840,-17472,-32595,-3290,22062,-6667,18428,24418,19971,-9691,28000,29740,-23568,11490,-30182,16952,-10320,-6256,29556,-20336,-24944,-24520,-25766,-25232,12324,13991,26769,-28388,-21475,24883,-24429,-27713,-7824,29868,22916,12066,-24031,25120,-11888,26092,-31111,20152,-21948,-9948,12599,20772,13984,-7004,3931,20296,18802,-27184,-21028,13972,-10368,6912,2416,6825,-31456,2405,-12568,24821,-20980,-9152,6918,28375,-25792,23758,-24302,-12788,-30056,-25164,9295,14778,18768,-28203,7658,-1054,-18000,23917,32200,3652,28552,-21484,26304,-10851,-23974,17632,31301,30678,3921,-9125,9621,-21328,5824,-6115,-18810,22899,4766,-16600,1160,4864,9670,14182,-31424,10488,2331,21164,14283,-14826,-13158,-12028,-8628,6080,752,19510,6590,-29840,-4184,-1456,15128,32281,-896,-21178,13961,24618,-4494,-13572,-20936,10056,16670,15820,-27777,13180,-6648,106,-10858,384,-24154,-12240,-26288,-18192,5876,-8098,20084,17254,-16388,15208,25510,1612,3711,25072,31974,-10600,-6704,19416,-30710,8368,-17680,12464,9496,-19773,2020,-13448,4855,-31046,27337,-18035,10479,7293,-9576,16008,-20852,-21770,-8452,-811,-9728,15511,-23000,18043,-30996,-3317,-12926,-28940,25296,-22784,6544,-24480,5023,17225,-6736,-7516,-28474,27730,-2589,25289,-31245,3698,15042,-25803,-26624,-12508,-31032,-19556,-2202,-17545,-11483,-21376,-16960,26738,-23598,-19620,14510,-17097,4845,-3840,20944,32040,14398,-3074,-23744,-19069,-4616,-8552,27392,24802,26350,-6690,21849,14451,-2152,30063,28912,-6008,21104,-18156,-29251,-10880,-18820,-24093,-14370,-16788,-17724,-24124,14643,0,840,22364,-7349,-27248,-6810,24646,24501,-23175,10648,7680,-277,11847,-3143,-28093,-14350,-15712,-15336,-12686,-29429,-30578,-12402,-11432,17646,-22608,4158,-26133,29118,13429,10484,24066,5936,16384,-26167,7751,32056,-4228,13619,24741,-13642,14999,16224,-27560,-17062,18368,-32287,23608,5536,26228,31472,-20036,32096,16052,-400,-5812,7496,26246,8499,5432,-3432,27110,-11976,872,17585,17820,-30948,-7292,607,2005,23445,30840,-18516,3268,28643,13217,-14046,13096,-20416,-22068,-21428,30919,-2481,17248,-26938,-14937,1225,30794,30276,564,-18688,26640,-5258,-21278,238,6106,2158,-8832,-739,20968,-30460,24804,26440,1007,-16072,7834,-9569,-12200,-21248,-18250,8691,4896,26458,25649,424,-14826,15239,-30893,10368,24172,-7194,7456,-7840,-24145,23333,25728,24051,11178,-30036,-25210,28976,7208,-20728,-10108,-20882,11046,-4024,-21300,-28968,-27218,-20906,25695,17732,30768,14463,22052,-22686,-16495,31857,-22423,2043,-31998,-8473,14809,-14345,24704,24323,14764,20494,19481,20529,14613,1226,-17038,22749,27048,-31232,30409,23424,14644,-10604,-22674,8258,-32455,-15924,9716,7846,26712,2806,-21250,25707,-160,-15650,10852,-6140,24184,28346,18229,19620,30328,-18758,4084,-26624,14034,27284,-20603,-21295,21506,-17987,14336,-20484,13880,27078,1115,-17240,2278,-3256,22476,-5408,5536,5228,-13523,-16566,-240,-20066,3411,14738,1345,17358,9852,-8670,15492,12226,27278,-17300,-32695,-14572,8128,-30572,10985,-32040,16586,10664,27408,6702,-22163,22964,-6809,8980,10614,-5136,-1964,23491,578,-30972,3744,12445,21328,32672,3439,25447,-14140,-32098,10847,11352,17188,27314,-30462,-2429,14842,13050,-3863,-3756,18856,6826,-13297,-29391,-6211,16752,-18118,29816,-6912,675,19200,-11919,-12631,-4957,-5910,-15254,4544,8892,25904,-10052,10418,-29952,20831,4994,1916,9064,7364,5908,-19294,9583,13773,-30823,5880,6603,-14720,-15257,-28424,31468,31872,-25004,-31733,22950,-26426,1047,-3451,4762,30862,6932,30352,18319,-16528,-16608,2637,-14140,25864,15264,10940,29391,31904,8553,-10184,-18841,-23148,22380,-29044,8776,1211,28152,262,-13627,25502,24020,-28566,-25394,-5062,-12397,-29128,-16552,7348,-26928,-15308,-23813,-24724,-17849,3952,31912,-31633,124,-1924,22298,-3808,-19964,-4971,17532,-24632,10001,-14296,12288,-2373,11932,19040,18544,14893,18636,-7316,2536,23402,-17896,-11200,13240,-24040,1694,-15484,3636,20228,32400,-6629,-8081,-16633,-254,-6156,-4425,-32605,-8148,5863,28930,-4617,10922,-26675,-20956,20662,-460,9424,-26794,17915,-14552,6064,20576,27322,9584,17205,25306,-1512,-6328,30584,8851,13762,29962,23208,28237,23720,17828,-2266,21335,21963,7084,23701,26676,-28527,-9826,-3104,-20728,-17434,13524,9294,-9610,27006,-1727,27016,-24346,-7560,-15192,-3468,10148,-26973,18112,-24318,2920,-15610,10549,7254,22038,-7550,-21868,22368,29960,4364,-31698,4936,-10494,-26986,-24340,-9082,-12248,-9174,-1382,-30720,-25980,29771,4028,15240,17600,7936,12481,-1465,6620,32151,-31264,-20896,14416,30240,23588,-4988,21536,-3886,28580,11332,6686,16433,-5692,-14978,-5134,24176,20302,9430,32754,15779,16180,-24392,13976,2497,-27196,-2498,24468,-22448,16456,31386,-13740,-3875,-15962,-24008,30600,8404,25460,-2345,-27790,-31463,-16200,-9624,-16439,-20720,-30896,-32081,-19948,21142,9335,-10176,-10528,11684,-31372,-11110,14564,11678,2118,22512,-414,2476,-29440,23860,720,-4467,-5456,-16758,1685,12978,20596,1896,26574,-15090,-25004,26908,-17362,908,21331,-17939,-26599,17652,7438,9314,1012,-31002,-4828,-7432,-29468,-24311,-24712,-29812,-31040,17256,-14957,-32622,26314,15368,3294,-21788,5208,-5906,28136,-11984,-19892,4400,3168,-12880,-14880,12330,-15232,3532,-30004,-29799,12708,-29696,-21005,-1294,-12676,-18312,16225,-23370,12297,-27395,7338,-12064,16564,29788,4471,22592,30432,-29980,-21607,14324,-13241,9890,17200,1923,31480,25594,11894,-30598,-5616,-19277,14439,-17588,-20800,13910,-23260,14350,-29184,21202,14632,-23128,1386,25776,26224,-25883,22724,-11158,-20668,-20352,-12775,22582,-10473,5050,6832,-22050,-4792,-22418,29880,-17617,-11064,25238,-4910,32008,-20262,-30144,7232,29406,17012,-26167,-22208,-22288,25590,-32294,25942,31893,4815,-21974,19488,2040,-16998,12136,12362,6576,29791,-26860,20771,-19830,32008,-12936,4054,-4061,31513,-21417,-13820,21105,25487,-2534,-31686,-21465,-22795,12536,-2037,32704,20992,-22668,13301,-4698,18885,-14520,-28720,31243,-19510,-28193,-13916,-11312,15061,-12240,-10092,3061,12316,-22901,9004,-18868,18132,-6614,28394,-29569,-4374,-10960,-4864,27240,-19562,-24136,24511,-25868,-29424,-23637,-19260,16256,-27328,8570,5478,30616,-27500,-1988,29384,22912,3241,7706,-797,26360,13796,17800,-26928,-15354,8515,-1235,-494,-23178,-12678,16998,-26967,-18808,4687,22431,-25388,19752,10761,-25108,1194,-27352,29108,14154,-13680,16448,-11552,11235,-23148,17336,-30368,-24758,1938,18172,26508,-4462,-30984,-21210,-20211,-3852,-15918,5159,16730,-30252,30036,-602,-18672,-26879,-12928,-16664,-28094,5604,-28432,-3968,104,4910,-1988,27470,7934,25688,25347,8462,-22564,30905,25569,-19654,22169,30821,25217,-32154,-13860,-24496,-11953,-23037,-15248,-23608,-8200,-29048,14248,15239,-25969,-16603,-23664,18420,31588,-11632,7752,9383,19490,-2916,20650,-14898,28032,30166,14164,27189,7213,1478,3858,-19574,-25129,670,16165,30449,-3878,32610,31008,20749,-2317,-2580,18731,-12130,-11270,-25981,-32762,22286,24956,21978,-15334,-9800,-2394,17489,4556,-3292,23426,11732,18943,-48,2184,19326,3020,7254,26520,25824,7604,20345,26753,-32576,-29360,13936,7784,8130,-28944,-11605,-16769,4264,1687,20644,29110,30800,27217,731,-20608,-4996,-10200,27456,4684,14312,11902,12258,-30926,-14464,-14394,-12688,-16299,24894,15503,-14098,940,25844,-13785,-29624,-20052,-22134,23398,1727,4927,-5139,-18560,-30826,4652,9408,-20296,-19512,342,22746,1052,15734,14062,-23546,31328,-28021,1507,-18182,29124,3320,-18673,-20024,19040,-12631,15448,20592,-22468,5162,-4920,25370,-9580,-10532,18688,21490,-21790,25318,-1571,9216,-12506,-1218,29692,-23436,-4148,4718,-10863,14449,-25226,26004,-5040,14316,21376,-32,-24306,-27370,16156,-21026,-31392,-20787,5536,30624,29096,-25125,28432,-17465,-26762,26340,8260,2760,31173,22073,-1456,9188,-7337,10448,-32632,-15026,388,-21138,-20326,27264,-2774,-31426,-29552,3024,26110,-7512,-31852,-23667,-604,-13083,29972,3765,-12618,-31052,-24728,16626,30205,18475,28709,26448,-1192,6130,9422,-2764,11033,-5287,5600,7496,28378,-27506,27918,1442,9168,-8608,10205,-532,-7412,30056,-28603,24375,-25800,-25273,12368,20147,-8161,-31312,202,-17518,-8954,2312,-31508,-31576,-15865,-29770,27112,735,-4918,-21528,-24384,-11838,9848,9840,32719,30180,-11496,-27898,7352,11692,6562,-29412,32168,11064,32041,-27542,-9959,-20790,30862,21870,16860,-30500,-20364,-15920,-25510,30460,-8513,-10872,-28812,21551,-17886,14458,-17270,16556,8748,-17892,16798,-26137,27358,-15062,-16328,22096,-3128,20524,-22464,4905,-15512,-14954,-14456,32752,-10845,-23543,-16112,18136,-4573,-23974,-374,-23572,27458,27376,4167,-192,29311,25717,18110,579,20736,9988,-14555,-30262,22591,28395,-24144,24121,1944,-18104,11538,28584,17552,5546,-15316,-26935,30735,-8475,-13729,10744,-2560,-29965,12008,21893,-31712,-11094,-3632,7381,-7423,21017,-17708,-18432,-6380,-7037,-26556,-20181,716,3273,30360,-30936,29981,-4492,21218,11740,1579,-19655,29873,-23624,-23520,-9024,-3044,-1024,18277,29296,12293,-18332,-24296,-7872,26608,27482,17075,-20556,13668,9350,13611,-5448,26244,6640,17616,-2184,-14988,20784,596,12894,28722,-28824,-31760,-11899,-15662,6194,14510,32110,-25436,-2480,6142,-17080,4720,-32532,-12172,-23625,-1106,6800,-5134,24964,-12726,-28236,2640,4668,-1341,-32730,-14068,30307,-26735,30566,4592,-11048,-20020,17672,25252,-11616,-30949,5608,9316,-14672,10408,16184,-18672,10595,20508,28944,3892,-10605,6620,-16140,-11912,23136,14494,-11284,24732,1686,6672,-31438,-5728,18648,4478,19339,-17856,12768,1474,-21721,17920,19790,-17284,15624,17880,-5128,4320,26236,3436,18744,15963,-29768,-29788,13360,-16584,-18381,-773,20911,787,2680,32669,-8,2948,27223,-24764,-19360,-6368,-5738,-16497,11136,5056,-9467,25234,-6032,-1313,22772,4196,-2543,31328,19960,-16818,-19280,1608,31451,-22731,32022,-12736,17548,-18144,-3846,31538,11360,-13988,-25264,-3439,13660,20486,-25651,31544,-18270,14124,-3456,-27932,-2662,24548,-14084,12708,12354,31050,-29499,-13679,17628,9070,352,25051,-27532,-19924,17789,30000,17198,27834,-6906,-16507,19099,-5678,-25123,-12348,-1728,5828,29340,-29903,22856,-19544,-8806,30088,8380,-29463,-12805,-24980,29790,-26324,-19129,-17625,-20480,32739,-22472,9516,-21888,-804,-13171,23800,2914,-16656,19316,18960,16290,-12743,-27861,-16908,-20247,-32503,-5501,20728,-14818,-28634,-27740,-32277,-22077,22604,-29518,-9204,23542,41,2806,17869,26736,9792,32224,10288,-31320,-30394,23654,9877,-10872,-24259,28122,31504,-26667,-7378,32572,20805,-20856,9639,-18664,-22439,10896,26076,1132,1524,-15110,1170,-16160,-5145,10164,-12568,13690,15264,-15623,-26682,-7922,2896,27063,16284,-6648,8626,-2198,-856,-4508,21048,-6352,-28576,9324,-28740,7398,-2064,22173,-6015,-29991,-31249,31938,26946,27731,27112,9991,-32396,-20704,-29266,-22672,-31400,28706,-26920,-16576,30094,12942,11840,18321,-14912,4556,-880,-853,30900,-7840,-11273,-4560,-26552,312,19268,-20192,10600,-16792,-6260,13006,22971,-23505,-24080,-28742,-30725,-12300,-18183,-5254,-11961,-17178,10596,-10356,-24523,6356,-20352,-17832,-11379,1512,5456,468,6520,-22648,498,-30840,20722,30920,19164,16963,-11978,23373,10800,-19447,-8592,4965,11264,18554,-6288,7296,20091,-24638,-7308,-30917,4407,-28766,-4360,12744,-4942,8668,28668,-23452,-21436,30836,31510,27784,-22037,10312,-5466,-32584,11840,21808,17858,-26640,-3242,8930,-2690,-5352,-10157,-6174,21016,-27028,9504,-15208,-16463,-31044,32638,-4176,-30449,-890,-31840,-14472,-15616,21792,584,21503,-11763,11418,-5140,10592,1820,-12050,-26285,17587,14870,26760,23,-15868,-25528,-28428,-18384,-31426,-28351,-31720,-10092,-1007,25616,-32074,-32631,-29180,32412,-1456,4516,-21012,-12767,-22030,-12592,3101,20434,1204,3796,-18390,-4478,474,-20981,-10394,10504,-26548,-9231,-27342,23150,-16564,15650,-11493,-12264,-27376,250,-13144,11002,11783,16809,-31362,27162,-8524,-17743,24912,-11411,16269,-21324,8792,-22920,-2284,-11016,-31978,-3359,-10211,11549,-17121,-27527,-4996,-18808,12840,9031,-28568,-15966,21372,17040,-27910,-13058,22400,25908,23214,-3685,-16512,25991,-5446,26421,5959,22479,-8786,22202,18464,-9205,25615,-20992,32048,-6082,-11787,25088,-7174,7826,-27252,10071,11923,-4498,21091,10104,-18228,19120,-25560,-17611,-15852,14961,-24630,23137,6639,12540,8702,30401,6520,-13407,-1528,24152,30192,78,-7244,-8992,17660,-7409,5205,-6924,7520,3847,3965,12691,-6247,16952,-16488,23367,-31758,27640,11591,12416,-31642,-8103,10880,-26488,-31945,-12321,10106,-15962,7614,-27264,-2512,-28372,12341,-16592,-23867,29514,12152,-21151,2680,16917,-31817,29210,21510,-11281,10032,-16563,-11496,-19436,11540,-22592,-16271,27440,32236,-2768,4430,7544,6944,18962,-10796,26737,-30894,22324,8351,10084,-11753,18624,23132,2258,-19248,28578,-26217,7927,11391,-21926,31578,10872,-10818,27456,-19396,10271,6200,-23378,14541,-25912,30096,-31433,-2730,1772,32014,-18896,-9729,-4440,20425,-7200,32064,-26069,15776,-1238,-2606,-4995,22269,20197,16068,-19256,-22171,-16232,-26093,7082,-10590,-19499,-22336,2577,11520,-7908,-32576,4568,28712,9196,-21048,8956,14216,-3403,-18024,-1853,-28629,-7982,19393,23628,1702,4696,11523,13204,-21612,23976,26172,32635,-17323,20728,-2526,-10680,-26466,-26944,-7464,7773,-19047,31950,9106,-1179,16904,-32496,-20336,-2192,19072,-22264,-21484,6628,13616,-17152,-7840,16738,-27197,26208,-15408,-614,17423,-24198,-5888,-27156,-12335,-28632,-26452,30037,-27238,6432,19913,8509,5444,-28098,7140,-9163,-463,-23490,6263,-14381,23288,-11680,21824,6790,-15201,9939,-8078,-1464,-18592,-15464,-19118,-8972,-12394,-6317,-7652,6080,28362,5704,32129,5750,32294,-2328,16445,-30028,21908,22975,-30693,19913,4444,6000,-13752,-19364,-14072,-23304,-23896,-6928,-30662,11478,-26545,22188,5338,-11438,30692,-31241,-8078,27742,20064,28038,14464,18562,12849,17575,-4112,7450,-24010,6856,-17385,-12546,9591,-7016,13532,21248,22218,25267,23972,-5378,14768,8192,32499,-24540,25822,24440,-9529,19065,25952,-7938,31384,-21552,28547,-13419,-28532,-8770,29219,1508,-11164,-23344,-19600,13280,15152,10576,-22217,23046,-20036,12556,-2426,27552,32192,-14094,-28988,23964,-6376,-9840,13913,-15781,-6230,-5907,8723,12140,9540,26336,30735,9369,-4304,-5275,8132,19508,20181,-19342,11827,30545,-27676,15665,21967,-9803,-3531,16732,-31958,-20330,-11760,17963,-15298,-9056,28180,-2495,14856,30411,11868,24192,8899,3764,-6994,16072,9455,-19824,-10552,-14704,1115,11088,-20696,17713,-28842,-30818,31361,-32426,32112,29686,13374,9648,25307,-20572,-25498,-572,32556,18468,-18453,14071,-30496,-25592,31788,22968,-4665,-29888,-11944,-2427,17613,-16144,-2016,9538,-19688,-24712,-30444,7736,-23689,4970,19966,12008,-10178,21556,22528,-23776,-11712,-14064,-16940,-36,6630,7520,29087,-24742,13224,-9269,-10926,-10735,18100,29944,-11350,-23755,9264,20408,21968,31456,9601,32044,-29688,-1728,-12484,-10833,2637,-3641,-8168,-24368,-26711,3905,23232,30246,-4684,28590,-15103,24652,7178,7664,10537,1570,-32409,-15320,-26784,21814,9870,-12976,-19716,-9380,15074,-2154,8965,18912,-1344,32144,-662,-19420,-20808,31712,-3608,2453,-12237,-21000,20764,-4822,9587,-3856,-19155,8018,-9441,-29112,-32198,11644,5280,28536,1264,-31096,-15364,6833,-7419,3040,29884,-29228,17232,18238,-27864,-7424,4104,-9810,12928,2704,-19392,6245,28984,-28457,-30129,-26550,-412,-29316,-30464,31848,3747,-17804,-30070,-32700,-24776,3984,28526,-17428,2496,-29345,-25868,29402,-20788,23900,8458,13030,15384,-22520,-24902,-21344,-3464,-2741,29866,14086,-13276,4544,-4472,-19249,13516,-29264,10497,-6908,-5428,-11904,6962,15126,-31492,29852,2410,-15800,1794,-22992,-27262,13312,1247,27930,-24332,12634,-8630,17710,1760,-12718,15321,-4144,3072,-15956,-13168,-16215,-8094,-15150,-13159,31180,-29349,-18141,26780,20754,2116,12446,9950,31968,11144,29048,17412,19232,-4329,17770,12570,10224,-29696,-13536,-22808,-12103,-10663,-7178,18970,14778,-30804,-14419,11072,-22775,11350,-3799,13572,22517,5751,-1552,-29906,17098,1293,11031,-10062,-29710,-9778,6123,-27278,-15378,-30414,-16056,-4753,29306,10780,25108,-666,9964,17383,-3948,-23664,-23660,-22974,-21192,-4416,31296,19356,-842,24838,-3470,11042,29765,13848,-16623,22768,-8294,-23664,16030,-5264,6960,24296,14346,-6322,27648,-7150,14160,-96,-5556,-3932,11152,-22240,19816,-5612,-1260,-16526,-7522,-6953,-10960,11176,-23900,19978,4096,-1331,31003,12342,28537,16586,-22832,9492,-19469,-25728,-2699,-2542,217,21440,-10016,13246,-5776,17794,17431,-2256,-9440,-6256,13366,-9566,-2714,-13045,-5326,31310,-32063,-12392,21889,28802,25288,8934,-4956]}
\ No newline at end of file
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/runner.c b/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/runner.c
new file mode 100644
index 000000000000..fd4299dfa310
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/test/fixtures/c/runner.c
@@ -0,0 +1,328 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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.
+*/
+
+/**
+* Generate C test fixtures.
+*
+* ## Notes
+*
+* - Run this script from the directory in which fixtures should be written.
+*
+*/
+
+#include
+#include
+#include
+
+/**
+* Generates a linearly spaced numeric array of doubles.
+*
+* ## Notes
+*
+* - Assumes that the output array has at least 2 elements.
+* - Output array is guaranteed to include both the start and end values.
+*
+*
+* @param out output array
+* @param len array length
+* @param start first value
+* @param end last value
+*/
+void linspace_f64( double *out, const unsigned int len, const double start, const double end ) {
+ unsigned int i;
+ double incr;
+
+ incr = (end-start) / (len-1);
+ for ( i = 0; i < len-1; i++ ) {
+ out[ i ] = start + (incr*i);
+ }
+ out[ i ] = end;
+}
+
+/**
+* Generates a linearly spaced numeric array of integers.
+*
+* ## Notes
+*
+* - Assumes that the output array has at least 2 elements.
+* - Output array is guaranteed to include both the start and end values.
+*
+*
+* @param out output array
+* @param len array length
+* @param start first value
+* @param end last value
+*/
+void linspace_i32( int *out, const unsigned int len, const int start, const int end ) {
+ unsigned int i;
+ int incr;
+
+ incr = (end-start) / (len-1);
+ for ( i = 0; i < len-1; i++ ) {
+ out[ i ] = start + (incr*i);
+ }
+ out[ i ] = end;
+}
+
+/**
+* Generates a random number on the interval [0,1].
+*
+* @return random number
+*/
+double rand_double() {
+ int r = rand();
+ return (double)r / ( (double)RAND_MAX + 1.0 );
+}
+
+/**
+* Generates an array of pseudorandom doubles drawn from a uniform distribution.
+*
+* @param out output array
+* @param len array length
+* @param a lower bound (inclusive)
+* @param b upper bound (exclusive)
+*/
+void rand_array_f64( double *out, const unsigned int len, const double a, const double b ) {
+ unsigned int i;
+ double delta;
+
+ delta = b - a;
+
+ for ( i = 0; i < len; i++ ) {
+ out[ i ] = a + ( rand_double()*delta );
+ }
+}
+
+/**
+* Generates an array of pseudorandom integers drawn from a uniform distribution.
+*
+* ## Notes
+*
+* - WARNING: the method used here is not particularly robust, as some integer values may be sampled more frequently than others.
+*
+*
+* @param out output array
+* @param len array length
+* @param a lower bound (inclusive)
+* @param b upper bound (exclusive)
+*/
+void rand_array_i16( int16_t *out, const unsigned int len, const int a, const int b ) {
+ unsigned int i;
+ unsigned int r;
+ double delta;
+
+ delta = (double)b - (double)a;
+
+ for ( i = 0; i < len; i++ ) {
+ r = (unsigned int)( delta * rand_double() ); // truncation
+ out[ i ] = (int)( a + r );
+ }
+}
+
+/**
+* Casts an array of integers to an array of doubles.
+*
+* @param out output array
+* @param x input array
+* @param len array length
+*/
+void i32_to_f64( double *out, const int *x, unsigned int len ) {
+ unsigned int i;
+
+ for ( i = 0; i < len; i++ ) {
+ out[ i ] = (double) x[ i ];
+ }
+}
+
+/**
+* Casts an array of doubles to an array of integers.
+*
+* @param out output array
+* @param x input array
+* @param len array length
+*/
+void f64_to_i32( int *out, const double *x, unsigned int len ) {
+ unsigned int i;
+
+ for ( i = 0; i < len; i++ ) {
+ out[ i ] = (int) x[ i ];
+ }
+}
+
+/**
+* Writes an array of doubles to a file as a series of comma-separated values.
+*
+* @param f file to write to
+* @param x array of doubles
+* @param len array length
+*/
+void write_array_f64( FILE *f, const double *x, const unsigned int len ) {
+ unsigned int i;
+
+ for ( i = 0; i < len; i++ ) {
+ fprintf( f, "%.17g", x[ i ] );
+ if ( i < len-1 ) {
+ fprintf( f, "," );
+ }
+ }
+}
+
+/**
+* Writes an array of integers to a file as a series of comma-separated values.
+*
+* @param f file to write to
+* @param x array of integers
+* @param len array length
+*/
+void write_array_i16( FILE *f, const int16_t *x, const unsigned int len ) {
+ unsigned int i;
+
+ for ( i = 0; i < len; i++ ) {
+ fprintf( f, "%d", x[ i ] );
+ if ( i < len-1 ) {
+ fprintf( f, "," );
+ }
+ }
+}
+
+/**
+* Writes a named array of doubles to a file as JSON.
+*
+* @param f file to write to
+* @param name array name
+* @param x data
+* @param len array length
+*/
+void write_named_array_f64( FILE *f, const char *name, const double *x, const unsigned int len ) {
+ fprintf( f, "\"%s\":[", name );
+ write_array_f64( f, x, len );
+ fprintf( f, "]" );
+}
+
+/**
+* Writes a named array of integers to a file as JSON.
+*
+* @param f file to write to
+* @param name array name
+* @param x data
+* @param len array length
+*/
+void write_named_array_i16( FILE *f, const char *name, const int16_t *x, const unsigned int len ) {
+ fprintf( f, "\"%s\":[", name );
+ write_array_i16( f, x, len );
+ fprintf( f, "]" );
+}
+
+/**
+* Writes data to a file as JSON.
+*
+* ## Notes
+*
+* - This function SHOULD be tailored to the input data (e.g., input types, output types, number of arguments, etc) and may vary from use case to use case.
+*
+*
+* @param f file to write to
+* @param a domain
+* @param b domain
+* @param y results
+* @param len array length
+*/
+void write_data_as_json( FILE *f, const int16_t *a, const int16_t *b, const int16_t *y, const unsigned int len ) {
+ fprintf( f, "{" );
+ write_named_array_i16( f, "a", a, len );
+ fprintf( f, "," );
+ write_named_array_i16( f, "b", b, len );
+ fprintf( f, "," );
+ write_named_array_i16( f, "expected", y, len );
+ fprintf( f, "}" );
+}
+
+/**
+* Generates test fixtures.
+*
+* @param a domain
+* @param b domain
+* @param len number of values in the domain
+* @param name output filename
+*/
+void generate( const int16_t *a, const int16_t *b, const unsigned int len, const char *name ) {
+ unsigned int i;
+ int16_t *y;
+ FILE *f;
+
+ // Allocate an output array:
+ y = (int16_t*) malloc( len * sizeof(int16_t) );
+ if ( y == NULL ) {
+ printf( "Error allocating memory.\n" );
+ exit( 1 );
+ }
+
+ // Generate fixture data:
+ for ( i = 0; i < len; i++ ) {
+ y[ i ] = a[ i ] * b[ i ];
+ }
+ // Open a new file:
+ f = fopen( name, "w" );
+ if ( f == NULL ) {
+ printf( "Error opening file.\n" );
+ exit( 1 );
+ }
+ // Write data as JSON:
+ write_data_as_json( f, a, b, y, len );
+
+ // Close the file:
+ fclose( f );
+
+ // Free allocated memory:
+ free( y );
+}
+
+/**
+* Main execution.
+*/
+int main( void ) {
+ unsigned int len;
+ int16_t *a;
+ int16_t *b;
+
+ // Define the array length:
+ len = 5000;
+
+ // Allocate arrays:
+ a = (int16_t*) malloc( len * sizeof(int16_t) );
+ if ( a == NULL ) {
+ printf( "Error allocating memory.\n" );
+ exit( 1 );
+ }
+ b = (int16_t*) malloc( len * sizeof(int16_t) );
+ if ( b == NULL ) {
+ printf( "Error allocating memory.\n" );
+ exit( 1 );
+ }
+
+ // Generate fixture data:
+ rand_array_i16( a, len, -32768, 32767 );
+ rand_array_i16( b, len, -32768, 32767 );
+ generate( a, b, len, "data.json" );
+
+ // Free allocated memory:
+ free( a );
+ free( b );
+
+ return 0;
+}
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/test/test.js b/lib/node_modules/@stdlib/number/int16/base/mul/test/test.js
new file mode 100644
index 000000000000..db8f1a448b0a
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/test/test.js
@@ -0,0 +1,55 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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 mul = require( './../lib' );
+
+
+// FIXTURES //
+
+var data = require( './fixtures/c/data.json' );
+
+
+// TESTS //
+
+tape( 'main export is a function', function test( t ) {
+ t.ok( true, __filename );
+ t.strictEqual( typeof mul, 'function', 'main export is a function' );
+ t.end();
+});
+
+tape( 'the function emulates C-like multiplication of two signed 16-bit integers', function test( t ) {
+ var expected;
+ var actual;
+ var a;
+ var b;
+ var i;
+
+ a = data.a;
+ b = data.b;
+ expected = data.expected;
+ for ( i = 0; i < expected.length; i++ ) {
+ actual = mul( a[ i ], b[ i ] );
+ t.strictEqual( actual, expected[ i ], 'returns expected value. a: '+a[i]+'. b: '+b[i]+'. expected: '+expected[i]+'. actual: '+actual+'.' );
+ }
+ t.end();
+});
diff --git a/lib/node_modules/@stdlib/number/int16/base/mul/test/test.polyfill.js b/lib/node_modules/@stdlib/number/int16/base/mul/test/test.polyfill.js
new file mode 100644
index 000000000000..0b3d2d310e99
--- /dev/null
+++ b/lib/node_modules/@stdlib/number/int16/base/mul/test/test.polyfill.js
@@ -0,0 +1,55 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2026 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 mul = require( './../lib/polyfill.js' );
+
+
+// FIXTURES //
+
+var data = require( './fixtures/c/data.json' );
+
+
+// TESTS //
+
+tape( 'main export is a function', function test( t ) {
+ t.ok( true, __filename );
+ t.strictEqual( typeof mul, 'function', 'main export is a function' );
+ t.end();
+});
+
+tape( 'the function emulates C-like multiplication of two signed 16-bit integers', function test( t ) {
+ var expected;
+ var actual;
+ var a;
+ var b;
+ var i;
+
+ a = data.a;
+ b = data.b;
+ expected = data.expected;
+ for ( i = 0; i < expected.length; i++ ) {
+ actual = mul( a[ i ], b[ i ] );
+ t.strictEqual( actual, expected[ i ], 'returns expected value. a: '+a[i]+'. b: '+b[i]+'. expected: '+expected[i]+'. actual: '+actual+'.' );
+ }
+ t.end();
+});