diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/README.md b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/README.md new file mode 100644 index 000000000000..410b356b710a --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/README.md @@ -0,0 +1,244 @@ + + +# hingeGradient + +> Compute the [hinge loss gradient][hinge-loss-gradient] with respect to a model parameter for a single-precision floating-point number. + +
+ +The [hinge loss gradient][hinge-loss-gradient] is defined as + + + +```math +\frac{\partial \ell}{\partial w} = \begin{cases} -yx & \text{if } yp \leq t \\ 0 & \text{otherwise} \end{cases} +``` + + + +
+ + + +
+ +## Usage + +```javascript +var hingeGradient = require( '@stdlib/ml/base/loss/float32/hinge-gradient' ); +``` + +#### hingeGradient( x, t, y, p ) + +Computes the [hinge loss gradient][hinge-loss-gradient] with respect to a model parameter for a single-precision floating-point number. + +```javascript +var v = hingeGradient( 3.0, 1.0, 1.0, 0.782 ); +// returns -3.0 + +v = hingeGradient( -1.3, 1.0, 1.0, -0.999 ); +// returns ~1.3 +``` + +The function accepts the following arguments: + +- **x**: input value. +- **t**: margin threshold. +- **y**: true target value. +- **p**: predicted value. + +If any argument is `NaN`, the function returns `NaN`. + +```javascript +var v = hingeGradient( NaN, 1.0, 1.0, 0.782 ); +// returns NaN + +v = hingeGradient( 1.0, 1.0, NaN, 0.782 ); +// returns NaN + +v = hingeGradient( NaN, NaN, 1.0, 0.782 ); +// returns NaN + +v = hingeGradient( NaN, NaN, NaN, NaN ); +// returns NaN +``` + +If `y` is not +1 or -1, the function returns `NaN`. + +```javascript +var v = hingeGradient( 3.0, 1.0, -0.9, 1.0 ); +// returns NaN + +v = hingeGradient( 2.4, 1.0, 0.453, 0.76 ); +// returns NaN +``` + +
+ + + +
+ +## Notes + +- When `t = 1.0`, we get the loss used by SVM; whereas, when `t = 0.0`, we get the loss used by the Perceptron. + +
+ + + +
+ +## Examples + + + +```javascript +var uniform = require( '@stdlib/random/array/uniform' ); +var sample = require( '@stdlib/random/sample' ); +var logEachMap = require( '@stdlib/console/log-each-map' ); +var hingeGradient = require( '@stdlib/ml/base/loss/float32/hinge-gradient' ); + +var y = sample( [ -1.0, 1.0 ], { + 'size': 100 +}); +var opts = { + 'dtype': 'float32' +}; +var x = uniform( 100, -100.0, 100.0, opts ); +var t = uniform( 100, 0.0, 5.0, opts ); +var p = uniform( 100, -5.0, 5.0, opts ); + +logEachMap( 'hingeGradient(%0.4f, %0.4f, %0.4f, %0.4f) = %0.4f', x, t, y, p, hingeGradient ); +``` + +
+ + + + + +* * * + +
+ +## C APIs + + + +
+ +
+ + + + + +
+ +### Usage + +```c +#include "stdlib/ml/base/loss/float32/hinge_gradient.h" +``` + +#### stdlib_base_float32_hinge_gradient( x, t, y, p ) + +Computes the [hinge loss gradient][hinge-loss-gradient] with respect to a model parameter for a single-precision floating-point number. + +```c +float out = stdlib_base_float32_hinge_gradient( 3.0f, 1.0f, 1.0f, 0.782f ); +// returns -3.0f +``` + +The function accepts the following arguments: + +- **x**: `[in] float` input value. +- **t**: `[in] float` margin threshold. +- **y**: `[in] float` true target value. +- **p**: `[in] float` predicted value. + +```c +float stdlib_base_float32_hinge_gradient( const float x, const float t, const float y, const float p ); +``` + +
+ + + + + +
+ +
+ + + + + +
+ +### Examples + +```c +#include "stdlib/ml/base/loss/float32/hinge_gradient.h" +#include + +int main( void ) { + const float x[] = { -10.0f, -9.56f, -8.67f, -7.78f, -6.89f, 6.89f, 7.78f, 8.67f, 9.56f, 10.0f }; + const float t[] = { 0.0f, 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f }; + const float y[] = { -1.0f, -1.0f, -1.0f, -1.0f, -1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f }; + const float p[] = { -5.0f, -3.89f, -2.78f, -1.67f, -0.56f, 0.56f, 1.67f, 2.78f, 3.89f, 5.0f }; + + float v; + int i; + for ( i = 0; i < 10; i++ ) { + v = stdlib_base_float32_hinge_gradient( x[ i ], t[ i ], y[ i ], p[ i ] ); + printf( "hingeGradient(%f, %f, %f, %f) = %f\n", x[ i ], t[ i ], y[ i ], p[ i ], v ); + } +} +``` + +
+ + + +
+ + + + + + + + + + + + + + diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/benchmark.js b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/benchmark.js new file mode 100644 index 000000000000..f6cda59a0632 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/benchmark.js @@ -0,0 +1,65 @@ +/** +* @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 uniform = require( '@stdlib/random/array/uniform' ); +var sample = require( '@stdlib/random/sample' ); +var isnanf = require( '@stdlib/math/base/assert/is-nanf' ); +var pkg = require( './../package.json' ).name; +var hingeGradient = require( './../lib' ); + + +// MAIN // + +bench( pkg, function benchmark( b ) { + var len; + var x; + var y; + var p; + var v; + var i; + + len = 100; + y = sample( [ -1.0, 1.0 ], { + 'size': len + }); + x = uniform( len, -100.0, 100.0, { + 'dtype': 'float32' + }); + p = uniform( len, -2.0, 2.0, { + 'dtype': 'float32' + }); + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + v = hingeGradient( x[ i%x.length ], 1.0, y[ i%y.length ], p[ i%p.length ] ); + if ( isnanf( v ) ) { + b.fail( 'should not return NaN' ); + } + } + b.toc(); + if ( isnanf( v ) ) { + b.fail( 'should not return NaN' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/benchmark.native.js new file mode 100644 index 000000000000..f78d54546858 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/benchmark.native.js @@ -0,0 +1,75 @@ +/** +* @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 resolve = require( 'path' ).resolve; +var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/array/uniform' ); +var sample = require( '@stdlib/random/sample' ); +var isnanf = require( '@stdlib/math/base/assert/is-nanf' ); +var tryRequire = require( '@stdlib/utils/try-require' ); +var format = require( '@stdlib/string/format' ); +var pkg = require( './../package.json' ).name; + + +// VARIABLES // + +var hingeGradient = tryRequire( resolve( __dirname, './../lib/native.js' ) ); +var opts = { + 'skip': ( hingeGradient instanceof Error ) +}; + + +// MAIN // + +bench( format( '%s::native', pkg ), opts, function benchmark( b ) { + var len; + var x; + var y; + var p; + var v; + var i; + + len = 100; + y = sample( [ -1.0, 1.0 ], { + 'size': len + }); + x = uniform( len, -100.0, 100.0, { + 'dtype': 'float32' + }); + p = uniform( len, -2.0, 2.0, { + 'dtype': 'float32' + }); + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + v = hingeGradient( x[ i%x.length ], 1.0, y[ i%y.length ], p[ i%p.length ] ); + if ( isnanf( v ) ) { + b.fail( 'should not return NaN' ); + } + } + b.toc(); + if ( isnanf( v ) ) { + b.fail( 'should not return NaN' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/c/native/Makefile b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/c/native/Makefile new file mode 100644 index 000000000000..979768abbcec --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/c/native/Makefile @@ -0,0 +1,146 @@ +#/ +# @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 := @ +else + QUIET := +endif + +# Determine the OS ([1][1], [2][2]). +# +# [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 +else +ifneq (, $(findstring Windows_NT,$(OS))) + OS := WINNT +endif +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], [2][2]). +# +# [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 includes (e.g., `-I /foo/bar -I /beep/boop/include`): +INCLUDE ?= + +# List of source files: +SOURCE_FILES ?= + +# List of libraries (e.g., `-lopenblas -lpthread`): +LIBRARIES ?= + +# List of library paths (e.g., `-L /foo/bar -L /beep/boop`): +LIBPATH ?= + +# List of C targets: +c_targets := benchmark.out + + +# RULES # + +#/ +# Compiles source files. +# +# @param {string} [C_COMPILER] - C compiler (e.g., `gcc`) +# @param {string} [CFLAGS] - C compiler options +# @param {(string|void)} [fPIC] - compiler flag determining whether to generate position independent code (e.g., `-fPIC`) +# @param {string} [INCLUDE] - list of includes (e.g., `-I /foo/bar -I /beep/boop/include`) +# @param {string} [SOURCE_FILES] - list of source files +# @param {string} [LIBPATH] - list of library paths (e.g., `-L /foo/bar -L /beep/boop`) +# @param {string} [LIBRARIES] - list of libraries (e.g., `-lopenblas -lpthread`) +# +# @example +# make +# +# @example +# make all +#/ +all: $(c_targets) + +.PHONY: all + +#/ +# Compiles C source files. +# +# @private +# @param {string} CC - C compiler (e.g., `gcc`) +# @param {string} CFLAGS - C compiler options +# @param {(string|void)} fPIC - compiler flag determining whether to generate position independent code (e.g., `-fPIC`) +# @param {string} INCLUDE - list of includes (e.g., `-I /foo/bar`) +# @param {string} SOURCE_FILES - list of source files +# @param {string} LIBPATH - list of library paths (e.g., `-L /foo/bar`) +# @param {string} LIBRARIES - list of libraries (e.g., `-lopenblas`) +#/ +$(c_targets): %.out: %.c + $(QUIET) $(CC) $(CFLAGS) $(fPIC) $(INCLUDE) -o $@ $(SOURCE_FILES) $< $(LIBPATH) -lm $(LIBRARIES) + +#/ +# Runs compiled benchmarks. +# +# @example +# make run +#/ +run: $(c_targets) + $(QUIET) ./$< + +.PHONY: run + +#/ +# Removes generated files. +# +# @example +# make clean +#/ +clean: + $(QUIET) -rm -f *.o *.out + +.PHONY: clean diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/c/native/benchmark.c b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/c/native/benchmark.c new file mode 100644 index 000000000000..98d38751a003 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/benchmark/c/native/benchmark.c @@ -0,0 +1,161 @@ +/** +* @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. +*/ + +#include "stdlib/ml/base/loss/float32/hinge_gradient.h" +#include +#include +#include +#include +#include + +#define NAME "hinge_gradient" +#define ITERATIONS 1000000 +#define REPEATS 3 + +/** +* Prints the TAP version. +*/ +static void print_version( void ) { + printf( "TAP version 13\n" ); +} + +/** +* Prints the TAP summary. +* +* @param total total number of tests +* @param passing total number of passing tests +*/ +static void print_summary( int total, int passing ) { + printf( "#\n" ); + printf( "1..%d\n", total ); // TAP plan + printf( "# total %d\n", total ); + printf( "# pass %d\n", passing ); + printf( "#\n" ); + printf( "# ok\n" ); +} + +/** +* Prints benchmarks results. +* +* @param elapsed elapsed time in seconds +*/ +static void print_results( double elapsed ) { + double rate = (double)ITERATIONS / elapsed; + printf( " ---\n" ); + printf( " iterations: %d\n", ITERATIONS ); + printf( " elapsed: %0.9f\n", elapsed ); + printf( " rate: %0.9f\n", rate ); + printf( " ...\n" ); +} + +/** +* Returns a clock time. +* +* @return clock time +*/ +static double tic( void ) { + struct timeval now; + gettimeofday( &now, NULL ); + return (double)now.tv_sec + (double)now.tv_usec/1.0e6; +} + +/** +* Generates a random number on the interval [min,max). +* +* @param min minimum value (inclusive) +* @param max maximum value (exclusive) +* @return random number +*/ +static float random_uniform( const float min, const float max ) { + float v = (float)rand() / ( (float)RAND_MAX + 1.0f ); + return min + ( v*(max-min) ); +} + +/** +* Randomly samples either +1 or -1. +* +* @return randomly sampled value (+1 or -1) +*/ +static float random_sample( void ) { + float v = (float)rand() / ( (float)RAND_MAX ); + if ( v >= 0.5f ) { + return 1.0f; + } + return -1.0f; +} + +/** +* Runs a benchmark. +* +* @return elapsed time in seconds +*/ +static double benchmark( void ) { + double elapsed; + float *x; + float *p; + float *y; + float v; + double t; + int i; + + x = (float *) malloc( 100 * sizeof( float ) ); + p = (float *) malloc( 100 * sizeof( float ) ); + y = (float *) malloc( 100 * sizeof( float ) ); + for ( i = 0; i < 100; i++ ) { + y[ i ] = random_sample(); + x[ i ] = random_uniform( -100.0f, 100.0f ); + p[ i ] = random_uniform( -2.0f, 2.0f ); + } + + t = tic(); + for ( i = 0; i < ITERATIONS; i++ ) { + v = stdlib_base_float32_hinge_gradient( x[ i%100 ], 1.0f, y[ i % 100 ], p[ i % 100 ] ); + if ( v != v ) { + printf( "should not return NaN\n" ); + break; + } + } + elapsed = tic() - t; + if ( v != v ) { + printf( "should not return NaN\n" ); + } + free( x ); + free( y ); + free( p ); + return elapsed; +} + +/** +* Main execution sequence. +*/ +int main( void ) { + double elapsed; + int i; + + // Use the current time to seed the random number generator: + srand( time( NULL ) ); + + print_version(); + for ( i = 0; i < REPEATS; i++ ) { + printf( "# c::native::%s\n", NAME ); + elapsed = benchmark(); + print_results( elapsed ); + printf( "ok %d benchmark finished\n", i+1 ); + } + print_summary( REPEATS, REPEATS ); +} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/binding.gyp b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/binding.gyp new file mode 100644 index 000000000000..0d6508a12e99 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/binding.gyp @@ -0,0 +1,170 @@ +# @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. + +# A `.gyp` file for building a Node.js native add-on. +# +# [1]: https://gyp.gsrc.io/docs/InputFormatReference.md +# [2]: https://gyp.gsrc.io/docs/UserDocumentation.md +{ + # List of files to include in this file: + 'includes': [ + './include.gypi', + ], + + # Define variables to be used throughout the configuration for all targets: + 'variables': { + # Target name should match the add-on export name: + 'addon_target_name%': 'addon', + + # Set variables based on the host OS: + 'conditions': [ + [ + 'OS=="win"', + { + # Define the object file suffix: + 'obj': 'obj', + }, + { + # Define the object file suffix: + 'obj': 'o', + } + ], # end condition (OS=="win") + ], # end conditions + }, # end variables + + # Define compile targets: + 'targets': [ + + # Target to generate an add-on: + { + # The target name should match the add-on export name: + 'target_name': '<(addon_target_name)', + + # Define dependencies: + 'dependencies': [], + + # Define directories which contain relevant include headers: + 'include_dirs': [ + # Local include directory: + '<@(include_dirs)', + ], + + # List of source files: + 'sources': [ + '<@(src_files)', + ], + + # Settings which should be applied when a target's object files are used as linker input: + 'link_settings': { + # Define libraries: + 'libraries': [ + '<@(libraries)', + ], + + # Define library directories: + 'library_dirs': [ + '<@(library_dirs)', + ], + }, + + # C/C++ compiler flags: + 'cflags': [ + # Enable commonly used warning options: + '-Wall', + + # Aggressive optimization: + '-O3', + ], + + # C specific compiler flags: + 'cflags_c': [ + # Specify the C standard to which a program is expected to conform: + '-std=c99', + ], + + # C++ specific compiler flags: + 'cflags_cpp': [ + # Specify the C++ standard to which a program is expected to conform: + '-std=c++11', + ], + + # Linker flags: + 'ldflags': [], + + # Apply conditions based on the host OS: + 'conditions': [ + [ + 'OS=="mac"', + { + # Linker flags: + 'ldflags': [ + '-undefined dynamic_lookup', + '-Wl,-no-pie', + '-Wl,-search_paths_first', + ], + }, + ], # end condition (OS=="mac") + [ + 'OS!="win"', + { + # C/C++ flags: + 'cflags': [ + # Generate platform-independent code: + '-fPIC', + ], + }, + ], # end condition (OS!="win") + ], # end conditions + }, # end target <(addon_target_name) + + # Target to copy a generated add-on to a standard location: + { + 'target_name': 'copy_addon', + + # Declare that the output of this target is not linked: + 'type': 'none', + + # Define dependencies: + 'dependencies': [ + # Require that the add-on be generated before building this target: + '<(addon_target_name)', + ], + + # Define a list of actions: + 'actions': [ + { + 'action_name': 'copy_addon', + 'message': 'Copying addon...', + + # Explicitly list the inputs in the command-line invocation below: + 'inputs': [], + + # Declare the expected outputs: + 'outputs': [ + '<(addon_output_dir)/<(addon_target_name).node', + ], + + # Define the command-line invocation: + 'action': [ + 'cp', + '<(PRODUCT_DIR)/<(addon_target_name).node', + '<(addon_output_dir)/<(addon_target_name).node', + ], + }, + ], # end actions + }, # end target copy_addon + ], # end targets +} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/repl.txt b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/repl.txt new file mode 100644 index 000000000000..5d2f8f79dc4a --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/repl.txt @@ -0,0 +1,47 @@ + +{{alias}}( x, t, y, p ) + Computes the hinge loss gradient with respect to a model parameter for a + single-precision floating-point number. + + If any argument is `NaN`, the function returns `NaN`. + + If `y` is not +1 or -1, the function returns `NaN`. + + When `t = 1.0`, we get the loss used by SVM, whereas when `t = 0.0`, we get + the loss used by the Perceptron. + + Parameters + ---------- + x: number + Input value. + + t: number + Margin threshold. + + y: number + True target value. + + p: number + Predicted value. + + Returns + ------- + v: number + Hinge loss gradient. + + Examples + -------- + > var v = {{alias}}( 3.0, 1.0, 1.0, 0.782 ) + -3.0 + > v = {{alias}}( 2.5, 1.0, 1.0, 0.202 ) + -2.5 + > v = {{alias}}( -1.3, 1.0, 1.0, -0.999 ) + ~1.3 + > v = {{alias}}( -2.0, 1.0, -1.0, 0.2 ) + -2.0 + > v = {{alias}}( NaN, 1.0, 1.0, 0.987 ) + NaN + + See Also + -------- + diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/types/index.d.ts b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/types/index.d.ts new file mode 100644 index 000000000000..dd18a3544988 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/types/index.d.ts @@ -0,0 +1,64 @@ +/* +* @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 + +/** +* Computes the hinge loss gradient with respect to a model parameter for a single-precision floating-point number. +* +* ## Notes +* +* - If `y` is not +1 or -1, the function returns `NaN`. +* - When `t = 1.0`, we get the loss used by SVM, whereas when `t = 0.0`, we get the loss used by the Perceptron. +* +* @param x - input value +* @param t - margin threshold +* @param y - true target value +* @param p - predicted value +* @returns hinge loss gradient +* +* @example +* var v = hingeGradient( 3.0, 1.0, 1.0, 0.782 ); +* // returns -3.0 +* +* @example +* var v = hingeGradient( 2.5, 1.0, 1.0, 0.202 ); +* // returns -2.5 +* +* @example +* var v = hingeGradient( -1.3, 1.0, 1.0, -0.999 ); +* // returns ~1.3 +* +* @example +* var v = hingeGradient( -2.0, 1.0, -1.0, 0.234 ); +* // returns -2.0 +* +* @example +* var v = hingeGradient( -2.0, 1.0, -1.0, 0.2 ); +* // returns -2.0 +* +* @example +* var v = hingeGradient( -1.3, 1.0, 1.0, -0.9 ); +* // returns ~1.3 +*/ +declare function hingeGradient( x: number, t: number, y: number, p: number ): number; + + +// EXPORTS // + +export = hingeGradient; diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/types/test.ts b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/types/test.ts new file mode 100644 index 000000000000..5c849b915d85 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/docs/types/test.ts @@ -0,0 +1,84 @@ +/* +* @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 hingeGradient = require( './index' ); + + +// TESTS // + +// The function returns a number... +{ + hingeGradient( 0.5869, 1.0, 1.0, 0.782 ); // $ExpectType number +} + +// The compiler throws an error if the function is provided a first argument which is not a number... +{ + hingeGradient( true, 1.0, 1.0, 0.782 ); // $ExpectError + hingeGradient( false, 1.0, 1.0, 0.782 ); // $ExpectError + hingeGradient( null, 1.0, 1.0, 0.782 ); // $ExpectError + hingeGradient( undefined, 1.0, 1.0, 0.782 ); // $ExpectError + hingeGradient( '5', 1.0, 1.0, 0.782 ); // $ExpectError + hingeGradient( [], 1.0, 1.0, 0.782 ); // $ExpectError + hingeGradient( {}, 1.0, 1.0, 0.782 ); // $ExpectError + hingeGradient( ( x: number ): number => x, 1.0, 1.0, 0.782 ); // $ExpectError +} + +// The compiler throws an error if the function is provided a second argument which is not a number... +{ + hingeGradient( 0.5869, true, 1.0, 0.782 ); // $ExpectError + hingeGradient( 0.5869, false, 1.0, 0.782 ); // $ExpectError + hingeGradient( 0.5869, null, 1.0, 0.782 ); // $ExpectError + hingeGradient( 0.5869, undefined, 1.0, 0.782 ); // $ExpectError + hingeGradient( 0.5869, '5', 1.0, 0.782 ); // $ExpectError + hingeGradient( 0.5869, [], 1.0, 0.782 ); // $ExpectError + hingeGradient( 0.5869, {}, 1.0, 0.782 ); // $ExpectError + hingeGradient( 0.5869, ( x: number ): number => x, 1.0, 0.782 ); // $ExpectError +} + +// The compiler throws an error if the function is provided a third argument which is not a number... +{ + hingeGradient( 0.5869, 1.0, true, 0.782 ); // $ExpectError + hingeGradient( 0.5869, 1.0, false, 0.782 ); // $ExpectError + hingeGradient( 0.5869, 1.0, null, 0.782 ); // $ExpectError + hingeGradient( 0.5869, 1.0, undefined, 0.782 ); // $ExpectError + hingeGradient( 0.5869, 1.0, '5', 0.782 ); // $ExpectError + hingeGradient( 0.5869, 1.0, [], 0.782 ); // $ExpectError + hingeGradient( 0.5869, 1.0, {}, 0.782 ); // $ExpectError + hingeGradient( 0.5869, 1.0, ( x: number ): number => x, 0.782 ); // $ExpectError +} + +// The compiler throws an error if the function is provided a fourth argument which is not a number... +{ + hingeGradient( 0.5869, 1.0, 1.0, true ); // $ExpectError + hingeGradient( 0.5869, 1.0, 1.0, false ); // $ExpectError + hingeGradient( 0.5869, 1.0, 1.0, null ); // $ExpectError + hingeGradient( 0.5869, 1.0, 1.0, undefined ); // $ExpectError + hingeGradient( 0.5869, 1.0, 1.0, '5' ); // $ExpectError + hingeGradient( 0.5869, 1.0, 1.0, [] ); // $ExpectError + hingeGradient( 0.5869, 1.0, 1.0, {} ); // $ExpectError + hingeGradient( 0.5869, 1.0, 1.0, ( x: number ): number => x ); // $ExpectError +} + +// The compiler throws an error if the function is provided an unsupported number of arguments... +{ + hingeGradient(); // $ExpectError + hingeGradient( 1.0 ); // $ExpectError + hingeGradient( 1.0, 0.900 ); // $ExpectError + hingeGradient( 1.0, 0.900, 0.7873 ); // $ExpectError + hingeGradient( 1.0, 0.900, 1.0, 0.787, 0.7873 ); // $ExpectError +} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/c/Makefile b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/c/Makefile new file mode 100644 index 000000000000..c8f8e9a1517b --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/c/Makefile @@ -0,0 +1,146 @@ +#/ +# @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 := @ +else + QUIET := +endif + +# Determine the OS ([1][1], [2][2]). +# +# [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 +else +ifneq (, $(findstring Windows_NT,$(OS))) + OS := WINNT +endif +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], [2][2]). +# +# [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 includes (e.g., `-I /foo/bar -I /beep/boop/include`): +INCLUDE ?= + +# List of source files: +SOURCE_FILES ?= + +# List of libraries (e.g., `-lopenblas -lpthread`): +LIBRARIES ?= + +# List of library paths (e.g., `-L /foo/bar -L /beep/boop`): +LIBPATH ?= + +# List of C targets: +c_targets := example.out + + +# RULES # + +#/ +# Compiles source files. +# +# @param {string} [C_COMPILER] - C compiler (e.g., `gcc`) +# @param {string} [CFLAGS] - C compiler options +# @param {(string|void)} [fPIC] - compiler flag determining whether to generate position independent code (e.g., `-fPIC`) +# @param {string} [INCLUDE] - list of includes (e.g., `-I /foo/bar -I /beep/boop/include`) +# @param {string} [SOURCE_FILES] - list of source files +# @param {string} [LIBPATH] - list of library paths (e.g., `-L /foo/bar -L /beep/boop`) +# @param {string} [LIBRARIES] - list of libraries (e.g., `-lopenblas -lpthread`) +# +# @example +# make +# +# @example +# make all +#/ +all: $(c_targets) + +.PHONY: all + +#/ +# Compiles C source files. +# +# @private +# @param {string} CC - C compiler (e.g., `gcc`) +# @param {string} CFLAGS - C compiler options +# @param {(string|void)} fPIC - compiler flag determining whether to generate position independent code (e.g., `-fPIC`) +# @param {string} INCLUDE - list of includes (e.g., `-I /foo/bar`) +# @param {string} SOURCE_FILES - list of source files +# @param {string} LIBPATH - list of library paths (e.g., `-L /foo/bar`) +# @param {string} LIBRARIES - list of libraries (e.g., `-lopenblas`) +#/ +$(c_targets): %.out: %.c + $(QUIET) $(CC) $(CFLAGS) $(fPIC) $(INCLUDE) -o $@ $(SOURCE_FILES) $< $(LIBPATH) -lm $(LIBRARIES) + +#/ +# Runs compiled examples. +# +# @example +# make run +#/ +run: $(c_targets) + $(QUIET) ./$< + +.PHONY: run + +#/ +# Removes generated files. +# +# @example +# make clean +#/ +clean: + $(QUIET) -rm -f *.o *.out + +.PHONY: clean diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/c/example.c b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/c/example.c new file mode 100644 index 000000000000..ef9f2204c065 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/c/example.c @@ -0,0 +1,34 @@ +/** +* @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. +*/ + +#include "stdlib/ml/base/loss/float32/hinge_gradient.h" +#include + +int main( void ) { + const float x[] = { -10.0f, -9.56f, -8.67f, -7.78f, -6.89f, 6.89f, 7.78f, 8.67f, 9.56f, 10.0f }; + const float t[] = { 0.0f, 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f }; + const float y[] = { -1.0f, -1.0f, -1.0f, -1.0f, -1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f }; + const float p[] = { -5.0f, -3.89f, -2.78f, -1.67f, -0.56f, 0.56f, 1.67f, 2.78f, 3.89f, 5.0f }; + + float v; + int i; + for ( i = 0; i < 10; i++ ) { + v = stdlib_base_float32_hinge_gradient( x[ i ], t[ i ], y[ i ], p[ i ] ); + printf( "hingeGradient(%f, %f, %f, %f) = %f\n", x[ i ], t[ i ], y[ i ], p[ i ], v ); + } +} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/index.js b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/index.js new file mode 100644 index 000000000000..38381ad05b3b --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/examples/index.js @@ -0,0 +1,36 @@ +/** +* @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 uniform = require( '@stdlib/random/array/uniform' ); +var sample = require( '@stdlib/random/sample' ); +var logEachMap = require( '@stdlib/console/log-each-map' ); +var hingeGradient = require( './../lib' ); + +var y = sample( [ -1.0, 1.0 ], { + 'size': 100 +}); +var opts = { + 'dtype': 'float32' +}; +var x = uniform( 100, -100.0, 100.0, opts ); +var t = uniform( 100, 0.0, 5.0, opts ); +var p = uniform( 100, -5.0, 5.0, opts ); + +logEachMap( 'hingeGradient(%0.4f, %0.4f, %0.4f, %0.4f) = %0.4f', x, t, y, p, hingeGradient ); diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/include.gypi b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/include.gypi new file mode 100644 index 000000000000..bee8d41a2caf --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/include.gypi @@ -0,0 +1,53 @@ +# @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. + +# A GYP include file for building a Node.js native add-on. +# +# Main documentation: +# +# [1]: https://gyp.gsrc.io/docs/InputFormatReference.md +# [2]: https://gyp.gsrc.io/docs/UserDocumentation.md +{ + # Define variables to be used throughout the configuration for all targets: + 'variables': { + # Source directory: + 'src_dir': './src', + + # Include directories: + 'include_dirs': [ + '=0.10.0", + "npm": ">2.7.0" + }, + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "keywords": [ + "stdlib", + "machine learning", + "ml", + "loss", + "float32", + "hinge", + "hinge loss", + "hinge loss gradient", + "gradient", + "single-precision", + "single", + "float" + ], + "__stdlib__": {} +} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/Makefile b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/Makefile new file mode 100644 index 000000000000..2caf905cedbe --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/Makefile @@ -0,0 +1,70 @@ +#/ +# @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 := @ +else + QUIET := +endif + +# Determine the OS ([1][1], [2][2]). +# +# [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 +else +ifneq (, $(findstring Windows_NT,$(OS))) + OS := WINNT +endif +endif +endif +endif + + +# RULES # + +#/ +# Removes generated files for building an add-on. +# +# @example +# make clean-addon +#/ +clean-addon: + $(QUIET) -rm -f *.o *.node + +.PHONY: clean-addon + +#/ +# Removes generated files. +# +# @example +# make clean +#/ +clean: clean-addon + +.PHONY: clean diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/addon.c b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/addon.c new file mode 100644 index 000000000000..630da3e0b54d --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/addon.c @@ -0,0 +1,22 @@ +/** +* @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. +*/ + +#include "stdlib/ml/base/loss/float32/hinge_gradient.h" +#include "stdlib/math/base/napi/quaternary.h" + +STDLIB_MATH_BASE_NAPI_MODULE_FFFF_F( stdlib_base_float32_hinge_gradient ) diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/main.c b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/main.c new file mode 100644 index 000000000000..b268b9f45623 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/src/main.c @@ -0,0 +1,47 @@ +/** +* @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. +*/ + +#include "stdlib/ml/base/loss/float32/hinge_gradient.h" +#include "stdlib/math/base/assert/is_nanf.h" +#include "stdlib/constants/float32/nan.h" + +/** +* Computes the hinge loss gradient with respect to a model parameter for a single-precision floating-point number. +* +* @param x input value +* @param t margin threshold +* @param y true target value +* @param p predicted value +* @return hinge loss gradient +* +* @example +* float out = stdlib_base_float32_hinge_gradient( 2.5f, 1.0f, 1.0f, 0.202f ); +* // returns -2.5f +*/ +float stdlib_base_float32_hinge_gradient( const float x, const float t, const float y, const float p ) { + if ( + stdlib_base_is_nanf( x ) || stdlib_base_is_nanf( t ) || stdlib_base_is_nanf( y ) || stdlib_base_is_nanf( p ) || + ( y != -1.0f && y != 1.0f ) + ) { + return STDLIB_CONSTANT_FLOAT32_NAN; + } + if ( y*p <= t ) { + return -x * y; + } + return 0.0f; +} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/REQUIRE b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/REQUIRE new file mode 100644 index 000000000000..7c8193c06e65 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/REQUIRE @@ -0,0 +1,2 @@ +julia 1.4.2 +JSON 0.21.0 diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/runner.jl b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/runner.jl new file mode 100644 index 000000000000..8e096c7c4cdc --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/runner.jl @@ -0,0 +1,100 @@ +#!/usr/bin/env julia +# +# @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 JSON + +""" + gen( x, t, y, p, name ) + +Generate fixture data and write to file. + +# Arguments + +* `x`: input domain +* `t`: margin threshold +* `y`: response domain +* `p`: prediction domain +* `name::AbstractString`: output filename + +# Examples + +``` julia +julia> x = Float32.( range( -1000.0, 1000.0, 2001 ) ); +julia> t = Float32.( range( 0.0, stop=5.0, length=2001 ) ); +julia> y = Float32.( rand( [-1.0, 1.0], 2001 ) ); +julia> p = Float32.( range( -1000.0, 1000.0, 2001 ) ); +julia> gen( x, t, y, p, "data.json" ); +``` +""" +function gen( x, t, y, p, name ) + x = Float32.( x ); + t = Float32.( t ); + y = Float32.( y ); + p = Float32.( p ); + v = ifelse.( y .* p .<= t, -x .* y, 0.0f0 ); + + # Store data to be written to file as a collection: + data = Dict([ + ("x", x), + ("t", t), + ("y", y), + ("p", p), + ("expected", v) + ]); + + # Based on the script directory, create an output filepath: + filepath = joinpath( dir, name ); + + # Write the data to the output filepath as JSON: + outfile = open( filepath, "w" ); + write( outfile, JSON.json(data) ); + write( outfile, "\n" ); + close( outfile ); +end + +# Get the filename: +file = @__FILE__; + +# Extract the directory in which this file resides: +dir = dirname(file); + +t = Float32.( range( 0.0, stop=5.0, length=503 ) ); + +# Positive tiny values: +y = Float32.( rand( [ -1.0, 1.0 ], 503 ) ); +x = Float32.( range( 0.0, stop=20e-20, length=503 ) ); +p = Float32.( range( 0.0, stop=1e-20, length=503 ) ); +gen( x, t, y, p, "tiny_positive.json" ); + +# Small positive values: +y = Float32.( rand( [ -1.0, 1.0 ], 503 ) ); +x = Float32.( range( 0.0, stop=50, length=503 ) ); +p = Float32.( range( 0.0, stop=2.0, length=503 ) ); +gen( x, t, y, p, "small_positive.json" ); + +# Negative tiny values: +y = Float32.( rand( [ -1.0, 1.0 ], 503 ) ); +x = Float32.( range( 0.0, stop=-20e-20, length=503 ) ); +p = Float32.( range( -1e-20, stop=0.0, length=503 ) ); +gen( x, t, y, p, "tiny_negative.json" ); + +# Small negative values: +y = Float32.( rand( [ -1.0, 1.0 ], 503 ) ); +x = Float32.( range( 0.0, stop=-50, length=503 ) ); +p = Float32.( range( -2.0, stop=0.0, length=503 ) ); +gen( x, t, y, p, "small_negative.json" ); diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/small_negative.json b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/small_negative.json new file mode 100644 index 000000000000..86404632d34e --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/small_negative.json @@ -0,0 +1 @@ +{"expected":[0,0,0.19920319318771362,0,0.39840638637542725,0.49800798296928406,0.5976095795631409,0.6972111463546753,0.7968127727508545,0,0.9960159659385681,1.0956175327301025,1.1952191591262817,0,1.3944222927093506,0,0,1.6932270526885986,0,1.892430305480957,0,2.0916335582733154,2.191235065460205,2.2908365726470947,0,2.490039825439453,2.5896413326263428,2.6892430782318115,2.788844585418701,0,0,3.087649345397949,0,0,3.3864541053771973,3.486055850982666,0,0,3.784860610961914,3.8844621181488037,3.9840638637542725,0,0,4.282868385314941,4.38247013092041,0,4.5816731452941895,4.681274890899658,0,0,0,5.079681396484375,0,0,5.378486156463623,5.478087425231934,0,5.677290916442871,5.77689266204834,0,5.976095676422119,6.075697422027588,0,6.274900436401367,6.374502182006836,6.4741034507751465,0,6.673306941986084,0,6.872509956359863,0,0,0,0,0,0,0,7.669322490692139,7.768924236297607,0,0,8.067728996276855,8.167330741882324,0,8.366534233093262,0,8.565736770629883,8.665338516235352,8.76494026184082,8.864542007446289,0,0,0,9.262948036193848,0,9.462151527404785,9.561753273010254,9.661355018615723,9.760955810546875,9.860557556152344,9.960159301757812,0,0,10.258964538574219,0,10.45816707611084,10.557768821716309,0,0,0,0,0,11.155378341674805,0,11.354581832885742,11.454183578491211,0,11.653386116027832,0,11.85258960723877,0,0,12.151394844055176,12.250995635986328,12.350597381591797,12.450199127197266,0,12.649402618408203,0,12.848605155944824,0,0,13.14741039276123,0,0,0,0,13.645418167114258,0,13.844621658325195,13.944223403930664,14.043825149536133,0,0,-14.342629432678223,14.442231178283691,-14.54183292388916,-14.641434669494629,14.741035461425781,14.84063720703125,-14.940238952636719,15.039840698242188,15.139442443847656,-15.239044189453125,-15.338644981384277,-15.438246726989746,15.537848472595215,15.637450218200684,-15.737051963806152,15.836653709411621,-15.93625545501709,-16.035856246948242,16.13545799255371,-16.23505973815918,-16.33466148376465,16.434263229370117,-16.533864974975586,16.633466720581055,-16.733068466186523,-16.832670211791992,-16.932270050048828,-17.031871795654297,-17.131473541259766,17.231075286865234,-17.330677032470703,-17.430278778076172,-17.52988052368164,17.62948226928711,17.729084014892578,-17.828685760498047,-17.928287506103516,-18.027889251708984,-18.12748908996582,-18.22709083557129,18.326692581176758,-18.426294326782227,-18.525896072387695,18.625497817993164,-18.725099563598633,18.8247013092041,-18.92430305480957,-19.02390480041504,19.123506546020508,19.223108291625977,19.322710037231445,19.42230987548828,19.52191162109375,-19.62151336669922,19.721115112304688,-19.820716857910156,-19.920318603515625,-20.019920349121094,-20.119522094726562,-20.21912384033203,-20.3187255859375,-20.41832733154297,-20.517929077148438,20.617530822753906,-20.717130661010742,-20.81673240661621,-20.91633415222168,-21.01593589782715,-21.115537643432617,21.215139389038086,-21.314741134643555,-21.414342880249023,21.513944625854492,21.61354637145996,21.71314811706543,-21.8127498626709,-21.912349700927734,22.011951446533203,22.111553192138672,22.21115493774414,-22.31075668334961,-22.410358428955078,22.509960174560547,22.609561920166016,22.709163665771484,22.808765411376953,-22.908367156982422,-23.00796890258789,-23.10757064819336,-23.207170486450195,23.306772232055664,23.406373977661133,23.5059757232666,23.60557746887207,-23.70517921447754,23.804780960083008,23.904382705688477,24.003984451293945,-24.103586196899414,24.203187942504883,24.30278968811035,-24.402389526367188,-24.501991271972656,-24.601593017578125,-24.701194763183594,-24.800796508789062,24.90039825439453,-25,-25.09960174560547,25.199203491210938,25.298805236816406,-25.398406982421875,-25.498008728027344,25.597610473632812,-25.69721031188965,25.796812057495117,25.896413803100586,-25.996015548706055,26.095617294311523,-26.195219039916992,-26.29482078552246,26.39442253112793,26.4940242767334,26.593626022338867,-26.693227767944336,-26.792829513549805,26.89242935180664,26.99203109741211,27.091632843017578,27.191234588623047,27.290836334228516,27.390438079833984,27.490039825439453,-27.589641571044922,27.68924331665039,27.78884506225586,27.888446807861328,27.988048553466797,28.087650299072266,28.1872501373291,-28.28685188293457,-28.38645362854004,-28.486055374145508,-28.585657119750977,28.685258865356445,-28.784860610961914,-28.884462356567383,-28.98406410217285,-29.08366584777832,-29.18326759338379,-29.282869338989258,29.382469177246094,29.482070922851562,29.58167266845703,29.6812744140625,-29.78087615966797,29.880477905273438,-29.980079650878906,-30.079681396484375,30.179283142089844,-30.278884887695312,-30.37848663330078,-30.47808837890625,30.57769012451172,-30.677289962768555,-30.776891708374023,-30.876493453979492,30.97609519958496,-31.07569694519043,-31.1752986907959,-31.274900436401367,31.374502182006836,-31.474103927612305,31.573705673217773,31.673307418823242,-31.77290916442871,-31.87251091003418,-31.972110748291016,-32.071712493896484,32.17131423950195,32.27091598510742,-32.37051773071289,-32.47011947631836,-32.56972122192383,32.6693229675293,32.768924713134766,-32.868526458740234,-32.9681282043457,33.06772994995117,-33.16733169555664,-33.26693344116211,-33.36653518676758,-33.46613693237305,33.565738677978516,33.665340423583984,33.76493835449219,33.864540100097656,33.964141845703125,34.063743591308594,34.16334533691406,-34.26294708251953,34.362548828125,-34.46215057373047,34.56175231933594,-34.661354064941406,-34.760955810546875,-34.860557556152344,34.96015930175781,-35.05976104736328,35.15936279296875,35.25896453857422,35.35856628417969,-35.458168029785156,-35.557769775390625,-35.657371520996094,35.75697326660156,35.85657501220703,35.9561767578125,-36.05577850341797,36.15538024902344,36.25497817993164,36.35457992553711,-36.45418167114258,36.55378341674805,-36.653385162353516,36.752986907958984,36.85258865356445,36.95219039916992,-37.05179214477539,-37.15139389038086,-37.25099563598633,37.3505973815918,37.450199127197266,37.549800872802734,37.6494026184082,37.74900436401367,-37.84860610961914,-37.94820785522461,-38.04780960083008,-38.14741134643555,38.247013092041016,38.346614837646484,38.44621658325195,38.54581832885742,38.64542007446289,38.74502182006836,38.84461975097656,-38.94422149658203,39.0438232421875,-39.14342498779297,39.24302673339844,-39.342628479003906,-39.442230224609375,-39.541831970214844,-39.64143371582031,39.74103546142578,39.84063720703125,-39.94023895263672,-40.03984069824219,40.139442443847656,-40.239044189453125,40.338645935058594,40.43824768066406,-40.53784942626953,40.637451171875,40.73705291748047,-40.83665466308594,-40.936256408691406,-41.035858154296875,-41.135459899902344,41.23506164550781,41.334659576416016,41.434261322021484,41.53386306762695,-41.63346481323242,-41.73306655883789,41.83266830444336,-41.93227005004883,-42.0318717956543,-42.131473541259766,-42.231075286865234,-42.3306770324707,-42.43027877807617,42.52988052368164,42.62948226928711,-42.72908401489258,42.82868576049805,42.928287506103516,-43.027889251708984,43.12749099731445,-43.22709274291992,43.32669448852539,-43.42629623413086,43.52589797973633,43.6254997253418,-43.725101470947266,-43.82469940185547,43.92430114746094,-44.023902893066406,-44.123504638671875,44.223106384277344,-44.32270812988281,44.42230987548828,44.52191162109375,-44.62151336669922,44.72111511230469,44.820716857910156,-44.920318603515625,45.019920349121094,-45.11952209472656,45.21912384033203,45.3187255859375,-45.41832733154297,-45.51792907714844,45.617530822753906,45.717132568359375,45.816734313964844,-45.91633605957031,46.01593780517578,-46.11553955078125,46.21514129638672,-46.31473922729492,46.41434097290039,46.51394271850586,-46.61354446411133,46.7131462097168,-46.812747955322266,46.912349700927734,47.0119514465332,47.11155319213867,47.21115493774414,-47.31075668334961,47.41035842895508,47.50996017456055,-47.609561920166016,-47.709163665771484,47.80876541137695,47.90836715698242,-48.00796890258789,-48.10757064819336,48.20717239379883,-48.3067741394043,-48.406375885009766,48.505977630615234,48.6055793762207,-48.70518112182617,-48.804779052734375,-48.904380798339844,49.00398254394531,49.10358428955078,-49.20318603515625,-49.30278778076172,-49.40238952636719,-49.501991271972656,-49.601593017578125,-49.701194763183594,-49.80079650878906,-49.90039825439453,-50],"p":[-2,-1.9960159063339233,-1.9920319318771362,-1.9880478382110596,-1.984063744544983,-1.9800796508789062,-1.9760956764221191,-1.9721115827560425,-1.9681274890899658,-1.9641433954238892,-1.960159420967102,-1.9561753273010254,-1.9521912336349487,-1.948207139968872,-1.944223165512085,-1.9402390718460083,-1.9362549781799316,-1.932270884513855,-1.9282869100570679,-1.9243028163909912,-1.9203187227249146,-1.916334629058838,-1.9123506546020508,-1.9083665609359741,-1.9043824672698975,-1.9003983736038208,-1.8964143991470337,-1.892430305480957,-1.8884462118148804,-1.8844621181488037,-1.8804781436920166,-1.87649405002594,-1.8725099563598633,-1.8685258626937866,-1.8645418882369995,-1.8605577945709229,-1.8565737009048462,-1.8525896072387695,-1.8486056327819824,-1.8446215391159058,-1.840637445449829,-1.8366533517837524,-1.8326693773269653,-1.8286852836608887,-1.824701189994812,-1.8207170963287354,-1.8167331218719482,-1.8127490282058716,-1.808764934539795,-1.8047808408737183,-1.8007968664169312,-1.7968127727508545,-1.7928286790847778,-1.7888445854187012,-1.784860610961914,-1.7808765172958374,-1.7768924236297607,-1.772908329963684,-1.768924355506897,-1.7649402618408203,-1.7609561681747437,-1.756972074508667,-1.7529881000518799,-1.7490040063858032,-1.7450199127197266,-1.74103581905365,-1.7370518445968628,-1.7330677509307861,-1.7290836572647095,-1.7250995635986328,-1.7211155891418457,-1.717131495475769,-1.7131474018096924,-1.7091633081436157,-1.7051793336868286,-1.701195240020752,-1.6972111463546753,-1.6932270526885986,-1.6892430782318115,-1.6852589845657349,-1.6812748908996582,-1.6772907972335815,-1.6733068227767944,-1.6693227291107178,-1.6653386354446411,-1.6613545417785645,-1.6573705673217773,-1.6533864736557007,-1.649402379989624,-1.6454182863235474,-1.6414343118667603,-1.6374502182006836,-1.633466124534607,-1.6294820308685303,-1.6254980564117432,-1.6215139627456665,-1.6175298690795898,-1.6135457754135132,-1.609561800956726,-1.6055777072906494,-1.6015936136245728,-1.597609519958496,-1.593625545501709,-1.5896414518356323,-1.5856573581695557,-1.581673264503479,-1.577689290046692,-1.5737051963806152,-1.5697211027145386,-1.565737009048462,-1.5617530345916748,-1.5577689409255981,-1.5537848472595215,-1.5498007535934448,-1.5458167791366577,-1.541832685470581,-1.5378485918045044,-1.5338644981384277,-1.5298805236816406,-1.525896430015564,-1.5219123363494873,-1.5179282426834106,-1.5139442682266235,-1.5099601745605469,-1.5059760808944702,-1.5019919872283936,-1.4980080127716064,-1.4940239191055298,-1.4900398254394531,-1.4860557317733765,-1.4820717573165894,-1.4780876636505127,-1.474103569984436,-1.4701194763183594,-1.4661355018615723,-1.4621514081954956,-1.458167314529419,-1.4541832208633423,-1.4501992464065552,-1.4462151527404785,-1.4422310590744019,-1.4382469654083252,-1.434262990951538,-1.4302788972854614,-1.4262948036193848,-1.422310709953308,-1.418326735496521,-1.4143426418304443,-1.4103585481643677,-1.406374454498291,-1.402390480041504,-1.3984063863754272,-1.3944222927093506,-1.390438199043274,-1.3864542245864868,-1.3824701309204102,-1.3784860372543335,-1.3745019435882568,-1.3705179691314697,-1.366533875465393,-1.3625497817993164,-1.3585656881332397,-1.3545817136764526,-1.350597620010376,-1.3466135263442993,-1.3426294326782227,-1.3386454582214355,-1.3346613645553589,-1.3306772708892822,-1.3266931772232056,-1.3227092027664185,-1.3187251091003418,-1.3147410154342651,-1.3107569217681885,-1.3067729473114014,-1.3027888536453247,-1.298804759979248,-1.2948206663131714,-1.2908366918563843,-1.2868525981903076,-1.282868504524231,-1.2788844108581543,-1.2749004364013672,-1.2709163427352905,-1.2669322490692139,-1.2629481554031372,-1.25896418094635,-1.2549800872802734,-1.2509959936141968,-1.2470118999481201,-1.243027925491333,-1.2390438318252563,-1.2350597381591797,-1.231075644493103,-1.227091670036316,-1.2231075763702393,-1.2191234827041626,-1.215139389038086,-1.2111554145812988,-1.2071713209152222,-1.2031872272491455,-1.1992031335830688,-1.1952191591262817,-1.191235065460205,-1.1872509717941284,-1.1832668781280518,-1.1792829036712646,-1.175298810005188,-1.1713147163391113,-1.1673306226730347,-1.1633466482162476,-1.159362554550171,-1.1553784608840942,-1.1513943672180176,-1.1474103927612305,-1.1434262990951538,-1.1394422054290771,-1.1354581117630005,-1.1314741373062134,-1.1274900436401367,-1.12350594997406,-1.1195218563079834,-1.1155378818511963,-1.1115537881851196,-1.107569694519043,-1.1035856008529663,-1.0996016263961792,-1.0956175327301025,-1.0916334390640259,-1.0876493453979492,-1.083665370941162,-1.0796812772750854,-1.0756971836090088,-1.0717130899429321,-1.067729115486145,-1.0637450218200684,-1.0597609281539917,-1.055776834487915,-1.051792860031128,-1.0478087663650513,-1.0438246726989746,-1.039840579032898,-1.0358566045761108,-1.0318725109100342,-1.0278884172439575,-1.0239043235778809,-1.0199203491210938,-1.015936255455017,-1.0119521617889404,-1.0079680681228638,-1.0039840936660767,-1,-0.9960159659385681,-0.9920318722724915,-0.9880478382110596,-0.9840637445449829,-0.980079710483551,-0.9760956168174744,-0.9721115827560425,-0.9681274890899658,-0.9641434550285339,-0.9601593613624573,-0.9561753273010254,-0.9521912336349487,-0.9482071995735168,-0.9442231059074402,-0.9402390718460083,-0.9362549781799316,-0.9322709441184998,-0.9282868504524231,-0.9243028163909912,-0.9203187227249146,-0.9163346886634827,-0.912350594997406,-0.9083665609359741,-0.9043824672698975,-0.9003984332084656,-0.8964143395423889,-0.892430305480957,-0.8884462118148804,-0.8844621777534485,-0.8804780840873718,-0.8764940500259399,-0.8725099563598633,-0.8685259222984314,-0.8645418286323547,-0.8605577945709229,-0.8565737009048462,-0.8525896668434143,-0.8486055731773376,-0.8446215391159058,-0.8406374454498291,-0.8366534113883972,-0.8326693177223206,-0.8286852836608887,-0.824701189994812,-0.8207171559333801,-0.8167330622673035,-0.8127490282058716,-0.8087649345397949,-0.804780900478363,-0.8007968068122864,-0.7968127727508545,-0.7928286790847778,-0.788844645023346,-0.7848605513572693,-0.7808765172958374,-0.7768924236297607,-0.7729083895683289,-0.7689242959022522,-0.7649402618408203,-0.7609561681747437,-0.7569721341133118,-0.7529880404472351,-0.7490040063858032,-0.7450199127197266,-0.7410358786582947,-0.737051784992218,-0.7330677509307861,-0.7290836572647095,-0.7250996232032776,-0.7211155295372009,-0.717131495475769,-0.7131474018096924,-0.7091633677482605,-0.7051792740821838,-0.701195240020752,-0.6972111463546753,-0.6932271122932434,-0.6892430186271667,-0.6852589845657349,-0.6812748908996582,-0.6772908568382263,-0.6733067631721497,-0.6693227291107178,-0.6653386354446411,-0.6613546013832092,-0.6573705077171326,-0.6533864736557007,-0.649402379989624,-0.6454183459281921,-0.6414342522621155,-0.6374502182006836,-0.6334661245346069,-0.629482090473175,-0.6254979968070984,-0.6215139627456665,-0.6175298690795898,-0.613545835018158,-0.6095617413520813,-0.6055777072906494,-0.6015936136245728,-0.5976095795631409,-0.5936254858970642,-0.5896414518356323,-0.5856573581695557,-0.5816733241081238,-0.5776892304420471,-0.5737051963806152,-0.5697211027145386,-0.5657370686531067,-0.56175297498703,-0.5577689409255981,-0.5537848472595215,-0.5498008131980896,-0.5458167195320129,-0.541832685470581,-0.5378485918045044,-0.5338645577430725,-0.5298804640769958,-0.525896430015564,-0.5219123363494873,-0.5179283022880554,-0.5139442086219788,-0.5099601745605469,-0.5059760808944702,-0.5019920468330383,-0.49800798296928406,-0.4940239191055298,-0.4900398552417755,-0.48605579137802124,-0.48207172751426697,-0.4780876636505127,-0.4741035997867584,-0.47011953592300415,-0.4661354720592499,-0.4621514081954956,-0.45816734433174133,-0.45418328046798706,-0.4501992166042328,-0.4462151527404785,-0.44223108887672424,-0.43824702501296997,-0.4342629611492157,-0.4302788972854614,-0.42629483342170715,-0.4223107695579529,-0.4183267056941986,-0.41434264183044434,-0.41035857796669006,-0.4063745141029358,-0.4023904502391815,-0.39840638637542725,-0.394422322511673,-0.3904382586479187,-0.38645419478416443,-0.38247013092041016,-0.3784860670566559,-0.3745020031929016,-0.37051793932914734,-0.36653387546539307,-0.3625498116016388,-0.3585657477378845,-0.35458168387413025,-0.350597620010376,-0.3466135561466217,-0.34262949228286743,-0.33864542841911316,-0.3346613645553589,-0.3306773006916046,-0.32669323682785034,-0.32270917296409607,-0.3187251091003418,-0.3147410452365875,-0.31075698137283325,-0.306772917509079,-0.3027888536453247,-0.29880478978157043,-0.29482072591781616,-0.2908366620540619,-0.2868525981903076,-0.28286853432655334,-0.2788844704627991,-0.2749004065990448,-0.2709163427352905,-0.26693227887153625,-0.262948215007782,-0.2589641511440277,-0.25498008728027344,-0.25099602341651917,-0.2470119595527649,-0.24302789568901062,-0.23904383182525635,-0.23505976796150208,-0.2310757040977478,-0.22709164023399353,-0.22310757637023926,-0.21912351250648499,-0.2151394486427307,-0.21115538477897644,-0.20717132091522217,-0.2031872570514679,-0.19920319318771362,-0.19521912932395935,-0.19123506546020508,-0.1872510015964508,-0.18326693773269653,-0.17928287386894226,-0.175298810005188,-0.17131474614143372,-0.16733068227767944,-0.16334661841392517,-0.1593625545501709,-0.15537849068641663,-0.15139442682266235,-0.14741036295890808,-0.1434262990951538,-0.13944223523139954,-0.13545817136764526,-0.131474107503891,-0.12749004364013672,-0.12350597977638245,-0.11952191591262817,-0.1155378520488739,-0.11155378818511963,-0.10756972432136536,-0.10358566045761108,-0.09960159659385681,-0.09561753273010254,-0.09163346886634827,-0.087649405002594,-0.08366534113883972,-0.07968127727508545,-0.07569721341133118,-0.0717131495475769,-0.06772908568382263,-0.06374502182006836,-0.05976095795631409,-0.055776894092559814,-0.05179283022880554,-0.04780876636505127,-0.043824702501297,-0.039840638637542725,-0.03585657477378845,-0.03187251091003418,-0.027888447046279907,-0.023904383182525635,-0.019920319318771362,-0.01593625545501709,-0.011952191591262817,-0.007968127727508545,-0.0039840638637542725,0],"t":[0,0.009960159659385681,0.019920319318771362,0.029880478978157043,0.039840638637542725,0.049800798296928406,0.05976095795631409,0.06972111761569977,0.07968127727508545,0.08964143693447113,0.09960159659385681,0.10956175625324249,0.11952191591262817,0.12948207557201385,0.13944223523139954,0.14940239489078522,0.1593625545501709,0.16932271420955658,0.17928287386894226,0.18924303352832794,0.19920319318771362,0.2091633528470993,0.21912351250648499,0.22908367216587067,0.23904383182525635,0.24900399148464203,0.2589641511440277,0.2689242959022522,0.2788844704627991,0.28884461522102356,0.29880478978157043,0.3087649345397949,0.3187251091003418,0.3286852538585663,0.33864542841911316,0.34860557317733765,0.3585657477378845,0.368525892496109,0.3784860670566559,0.38844621181488037,0.39840638637542725,0.40836653113365173,0.4183267056941986,0.4282868504524231,0.43824702501296997,0.44820716977119446,0.45816734433174133,0.4681274890899658,0.4780876636505127,0.4880478084087372,0.49800798296928406,0.5079681277275085,0.5179283022880554,0.5278884172439575,0.5378485918045044,0.5478087663650513,0.5577689409255981,0.5677290558815002,0.5776892304420471,0.587649405002594,0.5976095795631409,0.607569694519043,0.6175298690795898,0.6274900436401367,0.6374502182006836,0.6474103331565857,0.6573705077171326,0.6673306822776794,0.6772908568382263,0.6872509717941284,0.6972111463546753,0.7071713209152222,0.717131495475769,0.7270916104316711,0.737051784992218,0.7470119595527649,0.7569721341133118,0.7669322490692139,0.7768924236297607,0.7868525981903076,0.7968127727508545,0.8067728877067566,0.8167330622673035,0.8266932368278503,0.8366534113883972,0.8466135263442993,0.8565737009048462,0.8665338754653931,0.8764940500259399,0.886454164981842,0.8964143395423889,0.9063745141029358,0.9163346886634827,0.9262948036193848,0.9362549781799316,0.9462151527404785,0.9561753273010254,0.9661354422569275,0.9760956168174744,0.9860557913780212,0.9960159659385681,1.0059760808944702,1.015936255455017,1.025896430015564,1.0358566045761108,1.0458167791366577,1.055776834487915,1.065737009048462,1.0756971836090088,1.0856573581695557,1.0956175327301025,1.1055777072906494,1.1155378818511963,1.1254980564117432,1.1354581117630005,1.1454182863235474,1.1553784608840942,1.1653386354446411,1.175298810005188,1.1852589845657349,1.1952191591262817,1.2051793336868286,1.215139389038086,1.2250995635986328,1.2350597381591797,1.2450199127197266,1.2549800872802734,1.2649402618408203,1.2749004364013672,1.284860610961914,1.2948206663131714,1.3047808408737183,1.3147410154342651,1.324701189994812,1.3346613645553589,1.3446215391159058,1.3545817136764526,1.3645418882369995,1.3745019435882568,1.3844621181488037,1.3944222927093506,1.4043824672698975,1.4143426418304443,1.4243028163909912,1.434262990951538,1.444223165512085,1.4541832208633423,1.4641433954238892,1.474103569984436,1.484063744544983,1.4940239191055298,1.5039840936660767,1.5139442682266235,1.5239043235778809,1.5338644981384277,1.5438246726989746,1.5537848472595215,1.5637450218200684,1.5737051963806152,1.583665370941162,1.593625545501709,1.6035856008529663,1.6135457754135132,1.62350594997406,1.633466124534607,1.6434262990951538,1.6533864736557007,1.6633466482162476,1.6733068227767944,1.6832668781280518,1.6932270526885986,1.7031872272491455,1.7131474018096924,1.7231075763702393,1.7330677509307861,1.743027925491333,1.7529881000518799,1.7629481554031372,1.772908329963684,1.782868504524231,1.7928286790847778,1.8027888536453247,1.8127490282058716,1.8227092027664185,1.8326693773269653,1.8426294326782227,1.8525896072387695,1.8625497817993164,1.8725099563598633,1.8824701309204102,1.892430305480957,1.902390480041504,1.9123506546020508,1.922310709953308,1.932270884513855,1.9422310590744019,1.9521912336349487,1.9621514081954956,1.9721115827560425,1.9820717573165894,1.9920319318771362,2.0019919872283936,2.0119521617889404,2.0219123363494873,2.031872510910034,2.041832685470581,2.051792860031128,2.061753034591675,2.0717132091522217,2.0816733837127686,2.0916335582733154,2.1015937328338623,2.11155366897583,2.121513843536377,2.131474018096924,2.1414341926574707,2.1513943672180176,2.1613545417785645,2.1713147163391113,2.181274890899658,2.191235065460205,2.201195240020752,2.211155414581299,2.2211155891418457,2.2310757637023926,2.2410359382629395,2.2509961128234863,2.260956287384033,2.270916223526001,2.280876398086548,2.2908365726470947,2.3007967472076416,2.3107569217681885,2.3207170963287354,2.3306772708892822,2.340637445449829,2.350597620010376,2.360557794570923,2.3705179691314697,2.3804781436920166,2.3904383182525635,2.4003984928131104,2.4103586673736572,2.420318841934204,2.430278778076172,2.4402389526367188,2.4501991271972656,2.4601593017578125,2.4701194763183594,2.4800796508789062,2.490039825439453,2.5,2.509960174560547,2.5199203491210938,2.5298805236816406,2.5398406982421875,2.5498008728027344,2.5597610473632812,2.569721221923828,2.579681158065796,2.5896413326263428,2.5996015071868896,2.6095616817474365,2.6195218563079834,2.6294820308685303,2.639442205429077,2.649402379989624,2.659362554550171,2.6693227291107178,2.6792829036712646,2.6892430782318115,2.6992032527923584,2.7091634273529053,2.719123601913452,2.729083776473999,2.739043712615967,2.7490038871765137,2.7589640617370605,2.7689242362976074,2.7788844108581543,2.788844585418701,2.798804759979248,2.808764934539795,2.818725109100342,2.8286852836608887,2.8386454582214355,2.8486056327819824,2.8585658073425293,2.868525981903076,2.878486156463623,2.88844633102417,2.8984062671661377,2.9083664417266846,2.9183266162872314,2.9282867908477783,2.938246965408325,2.948207139968872,2.958167314529419,2.968127489089966,2.9780876636505127,2.9880478382110596,2.9980080127716064,3.0079681873321533,3.0179283618927,3.027888536453247,3.037848711013794,3.0478086471557617,3.0577688217163086,3.0677289962768555,3.0776891708374023,3.087649345397949,3.097609519958496,3.107569694519043,3.11752986907959,3.1274900436401367,3.1374502182006836,3.1474103927612305,3.1573705673217773,3.167330741882324,3.177290916442871,3.187251091003418,3.197211265563965,3.2071712017059326,3.2171313762664795,3.2270915508270264,3.2370517253875732,3.24701189994812,3.256972074508667,3.266932249069214,3.2768924236297607,3.2868525981903076,3.2968127727508545,3.3067729473114014,3.3167331218719482,3.326693296432495,3.336653470993042,3.346613645553589,3.3565738201141357,3.3665337562561035,3.3764939308166504,3.3864541053771973,3.396414279937744,3.406374454498291,3.416334629058838,3.4262948036193848,3.4362549781799316,3.4462151527404785,3.4561753273010254,3.4661355018615723,3.476095676422119,3.486055850982666,3.496016025543213,3.5059762001037598,3.5159361362457275,3.5258963108062744,3.5358564853668213,3.545816659927368,3.555776834487915,3.565737009048462,3.575697183609009,3.5856573581695557,3.5956175327301025,3.6055777072906494,3.6155378818511963,3.625498056411743,3.63545823097229,3.645418405532837,3.655378580093384,3.6653387546539307,3.6752986907958984,3.6852588653564453,3.695219039916992,3.705179214477539,3.715139389038086,3.725099563598633,3.7350597381591797,3.7450199127197266,3.7549800872802734,3.7649402618408203,3.774900436401367,3.784860610961914,3.794820785522461,3.804780960083008,3.8147411346435547,3.8247013092041016,3.8346612453460693,3.844621419906616,3.854581594467163,3.86454176902771,3.874501943588257,3.8844621181488037,3.8944222927093506,3.9043824672698975,3.9143426418304443,3.924302816390991,3.934262990951538,3.944223165512085,3.954183340072632,3.9641435146331787,3.9741036891937256,3.9840638637542725,3.9940237998962402,4.003983974456787,4.013944149017334,4.023904323577881,4.033864498138428,4.043824672698975,4.0537848472595215,4.063745021820068,4.073705196380615,4.083665370941162,4.093625545501709,4.103585720062256,4.113545894622803,4.12350606918335,4.1334662437438965,4.143426418304443,4.15338659286499,4.163346767425537,4.173306941986084,4.183267116546631,4.193227291107178,4.203187465667725,4.2131476402282715,4.22310733795166,4.233067512512207,4.243027687072754,4.252987861633301,4.262948036193848,4.2729082107543945,4.282868385314941,4.292828559875488,4.302788734436035,4.312748908996582,4.322709083557129,4.332669258117676,4.342629432678223,4.3525896072387695,4.362549781799316,4.372509956359863,4.38247013092041,4.392430305480957,4.402390480041504,4.412350654602051,4.422310829162598,4.4322710037231445,4.442231178283691,4.452191352844238,4.462151527404785,4.472111701965332,4.482071876525879,4.492032051086426,4.501992225646973,4.5119524002075195,4.521912574768066,4.531872272491455,4.541832447052002,4.551792621612549,4.561752796173096,4.571712970733643,4.5816731452941895,4.591633319854736,4.601593494415283,4.61155366897583,4.621513843536377,4.631474018096924,4.641434192657471,4.651394367218018,4.6613545417785645,4.671314716339111,4.681274890899658,4.691235065460205,4.701195240020752,4.711155414581299,4.721115589141846,4.731075763702393,4.7410359382629395,4.750996112823486,4.760956287384033,4.77091646194458,4.780876636505127,4.790836811065674,4.800796985626221,4.810757160186768,4.8207173347473145,4.830677509307861,4.840637683868408,4.850597381591797,4.860557556152344,4.870517730712891,4.8804779052734375,4.890438079833984,4.900398254394531,4.910358428955078,4.920318603515625,4.930278778076172,4.940238952636719,4.950199127197266,4.9601593017578125,4.970119476318359,4.980079650878906,4.990039825439453,5],"x":[0,-0.09960159659385681,-0.19920319318771362,-0.29880478978157043,-0.39840638637542725,-0.49800798296928406,-0.5976095795631409,-0.6972111463546753,-0.7968127727508545,-0.8964143395423889,-0.9960159659385681,-1.0956175327301025,-1.1952191591262817,-1.2948206663131714,-1.3944222927093506,-1.4940239191055298,-1.593625545501709,-1.6932270526885986,-1.7928286790847778,-1.892430305480957,-1.9920319318771362,-2.0916335582733154,-2.191235065460205,-2.2908365726470947,-2.3904383182525635,-2.490039825439453,-2.5896413326263428,-2.6892430782318115,-2.788844585418701,-2.88844633102417,-2.9880478382110596,-3.087649345397949,-3.187251091003418,-3.2868525981903076,-3.3864541053771973,-3.486055850982666,-3.5856573581695557,-3.6852588653564453,-3.784860610961914,-3.8844621181488037,-3.9840638637542725,-4.083665370941162,-4.183267116546631,-4.282868385314941,-4.38247013092041,-4.482071876525879,-4.5816731452941895,-4.681274890899658,-4.780876636505127,-4.8804779052734375,-4.980079650878906,-5.079681396484375,-5.1792826652526855,-5.278884410858154,-5.378486156463623,-5.478087425231934,-5.577689170837402,-5.677290916442871,-5.77689266204834,-5.87649393081665,-5.976095676422119,-6.075697422027588,-6.175298690795898,-6.274900436401367,-6.374502182006836,-6.4741034507751465,-6.573705196380615,-6.673306941986084,-6.7729082107543945,-6.872509956359863,-6.972111701965332,-7.071712970733643,-7.171314716339111,-7.27091646194458,-7.370517730712891,-7.470119476318359,-7.569721221923828,-7.669322490692139,-7.768924236297607,-7.868525981903076,-7.968127727508545,-8.067728996276855,-8.167330741882324,-8.266932487487793,-8.366534233093262,-8.466135025024414,-8.565736770629883,-8.665338516235352,-8.76494026184082,-8.864542007446289,-8.964143753051758,-9.06374454498291,-9.163346290588379,-9.262948036193848,-9.362549781799316,-9.462151527404785,-9.561753273010254,-9.661355018615723,-9.760955810546875,-9.860557556152344,-9.960159301757812,-10.059761047363281,-10.15936279296875,-10.258964538574219,-10.358565330505371,-10.45816707611084,-10.557768821716309,-10.657370567321777,-10.756972312927246,-10.856574058532715,-10.956174850463867,-11.055776596069336,-11.155378341674805,-11.254980087280273,-11.354581832885742,-11.454183578491211,-11.55378532409668,-11.653386116027832,-11.7529878616333,-11.85258960723877,-11.952191352844238,-12.051793098449707,-12.151394844055176,-12.250995635986328,-12.350597381591797,-12.450199127197266,-12.549800872802734,-12.649402618408203,-12.749004364013672,-12.848605155944824,-12.948206901550293,-13.047808647155762,-13.14741039276123,-13.2470121383667,-13.346613883972168,-13.44621467590332,-13.545816421508789,-13.645418167114258,-13.745019912719727,-13.844621658325195,-13.944223403930664,-14.043825149536133,-14.143425941467285,-14.243027687072754,-14.342629432678223,-14.442231178283691,-14.54183292388916,-14.641434669494629,-14.741035461425781,-14.84063720703125,-14.940238952636719,-15.039840698242188,-15.139442443847656,-15.239044189453125,-15.338644981384277,-15.438246726989746,-15.537848472595215,-15.637450218200684,-15.737051963806152,-15.836653709411621,-15.93625545501709,-16.035856246948242,-16.13545799255371,-16.23505973815918,-16.33466148376465,-16.434263229370117,-16.533864974975586,-16.633466720581055,-16.733068466186523,-16.832670211791992,-16.932270050048828,-17.031871795654297,-17.131473541259766,-17.231075286865234,-17.330677032470703,-17.430278778076172,-17.52988052368164,-17.62948226928711,-17.729084014892578,-17.828685760498047,-17.928287506103516,-18.027889251708984,-18.12748908996582,-18.22709083557129,-18.326692581176758,-18.426294326782227,-18.525896072387695,-18.625497817993164,-18.725099563598633,-18.8247013092041,-18.92430305480957,-19.02390480041504,-19.123506546020508,-19.223108291625977,-19.322710037231445,-19.42230987548828,-19.52191162109375,-19.62151336669922,-19.721115112304688,-19.820716857910156,-19.920318603515625,-20.019920349121094,-20.119522094726562,-20.21912384033203,-20.3187255859375,-20.41832733154297,-20.517929077148438,-20.617530822753906,-20.717130661010742,-20.81673240661621,-20.91633415222168,-21.01593589782715,-21.115537643432617,-21.215139389038086,-21.314741134643555,-21.414342880249023,-21.513944625854492,-21.61354637145996,-21.71314811706543,-21.8127498626709,-21.912349700927734,-22.011951446533203,-22.111553192138672,-22.21115493774414,-22.31075668334961,-22.410358428955078,-22.509960174560547,-22.609561920166016,-22.709163665771484,-22.808765411376953,-22.908367156982422,-23.00796890258789,-23.10757064819336,-23.207170486450195,-23.306772232055664,-23.406373977661133,-23.5059757232666,-23.60557746887207,-23.70517921447754,-23.804780960083008,-23.904382705688477,-24.003984451293945,-24.103586196899414,-24.203187942504883,-24.30278968811035,-24.402389526367188,-24.501991271972656,-24.601593017578125,-24.701194763183594,-24.800796508789062,-24.90039825439453,-25,-25.09960174560547,-25.199203491210938,-25.298805236816406,-25.398406982421875,-25.498008728027344,-25.597610473632812,-25.69721031188965,-25.796812057495117,-25.896413803100586,-25.996015548706055,-26.095617294311523,-26.195219039916992,-26.29482078552246,-26.39442253112793,-26.4940242767334,-26.593626022338867,-26.693227767944336,-26.792829513549805,-26.89242935180664,-26.99203109741211,-27.091632843017578,-27.191234588623047,-27.290836334228516,-27.390438079833984,-27.490039825439453,-27.589641571044922,-27.68924331665039,-27.78884506225586,-27.888446807861328,-27.988048553466797,-28.087650299072266,-28.1872501373291,-28.28685188293457,-28.38645362854004,-28.486055374145508,-28.585657119750977,-28.685258865356445,-28.784860610961914,-28.884462356567383,-28.98406410217285,-29.08366584777832,-29.18326759338379,-29.282869338989258,-29.382469177246094,-29.482070922851562,-29.58167266845703,-29.6812744140625,-29.78087615966797,-29.880477905273438,-29.980079650878906,-30.079681396484375,-30.179283142089844,-30.278884887695312,-30.37848663330078,-30.47808837890625,-30.57769012451172,-30.677289962768555,-30.776891708374023,-30.876493453979492,-30.97609519958496,-31.07569694519043,-31.1752986907959,-31.274900436401367,-31.374502182006836,-31.474103927612305,-31.573705673217773,-31.673307418823242,-31.77290916442871,-31.87251091003418,-31.972110748291016,-32.071712493896484,-32.17131423950195,-32.27091598510742,-32.37051773071289,-32.47011947631836,-32.56972122192383,-32.6693229675293,-32.768924713134766,-32.868526458740234,-32.9681282043457,-33.06772994995117,-33.16733169555664,-33.26693344116211,-33.36653518676758,-33.46613693237305,-33.565738677978516,-33.665340423583984,-33.76493835449219,-33.864540100097656,-33.964141845703125,-34.063743591308594,-34.16334533691406,-34.26294708251953,-34.362548828125,-34.46215057373047,-34.56175231933594,-34.661354064941406,-34.760955810546875,-34.860557556152344,-34.96015930175781,-35.05976104736328,-35.15936279296875,-35.25896453857422,-35.35856628417969,-35.458168029785156,-35.557769775390625,-35.657371520996094,-35.75697326660156,-35.85657501220703,-35.9561767578125,-36.05577850341797,-36.15538024902344,-36.25497817993164,-36.35457992553711,-36.45418167114258,-36.55378341674805,-36.653385162353516,-36.752986907958984,-36.85258865356445,-36.95219039916992,-37.05179214477539,-37.15139389038086,-37.25099563598633,-37.3505973815918,-37.450199127197266,-37.549800872802734,-37.6494026184082,-37.74900436401367,-37.84860610961914,-37.94820785522461,-38.04780960083008,-38.14741134643555,-38.247013092041016,-38.346614837646484,-38.44621658325195,-38.54581832885742,-38.64542007446289,-38.74502182006836,-38.84461975097656,-38.94422149658203,-39.0438232421875,-39.14342498779297,-39.24302673339844,-39.342628479003906,-39.442230224609375,-39.541831970214844,-39.64143371582031,-39.74103546142578,-39.84063720703125,-39.94023895263672,-40.03984069824219,-40.139442443847656,-40.239044189453125,-40.338645935058594,-40.43824768066406,-40.53784942626953,-40.637451171875,-40.73705291748047,-40.83665466308594,-40.936256408691406,-41.035858154296875,-41.135459899902344,-41.23506164550781,-41.334659576416016,-41.434261322021484,-41.53386306762695,-41.63346481323242,-41.73306655883789,-41.83266830444336,-41.93227005004883,-42.0318717956543,-42.131473541259766,-42.231075286865234,-42.3306770324707,-42.43027877807617,-42.52988052368164,-42.62948226928711,-42.72908401489258,-42.82868576049805,-42.928287506103516,-43.027889251708984,-43.12749099731445,-43.22709274291992,-43.32669448852539,-43.42629623413086,-43.52589797973633,-43.6254997253418,-43.725101470947266,-43.82469940185547,-43.92430114746094,-44.023902893066406,-44.123504638671875,-44.223106384277344,-44.32270812988281,-44.42230987548828,-44.52191162109375,-44.62151336669922,-44.72111511230469,-44.820716857910156,-44.920318603515625,-45.019920349121094,-45.11952209472656,-45.21912384033203,-45.3187255859375,-45.41832733154297,-45.51792907714844,-45.617530822753906,-45.717132568359375,-45.816734313964844,-45.91633605957031,-46.01593780517578,-46.11553955078125,-46.21514129638672,-46.31473922729492,-46.41434097290039,-46.51394271850586,-46.61354446411133,-46.7131462097168,-46.812747955322266,-46.912349700927734,-47.0119514465332,-47.11155319213867,-47.21115493774414,-47.31075668334961,-47.41035842895508,-47.50996017456055,-47.609561920166016,-47.709163665771484,-47.80876541137695,-47.90836715698242,-48.00796890258789,-48.10757064819336,-48.20717239379883,-48.3067741394043,-48.406375885009766,-48.505977630615234,-48.6055793762207,-48.70518112182617,-48.804779052734375,-48.904380798339844,-49.00398254394531,-49.10358428955078,-49.20318603515625,-49.30278778076172,-49.40238952636719,-49.501991271972656,-49.601593017578125,-49.701194763183594,-49.80079650878906,-49.90039825439453,-50],"y":[-1,-1,1,-1,1,1,1,1,1,-1,1,1,1,-1,1,-1,-1,1,-1,1,-1,1,1,1,-1,1,1,1,1,-1,-1,1,-1,-1,1,1,-1,-1,1,1,1,-1,-1,1,1,-1,1,1,-1,-1,-1,1,-1,-1,1,1,-1,1,1,-1,1,1,-1,1,1,1,-1,1,-1,1,-1,-1,-1,-1,-1,-1,-1,1,1,-1,-1,1,1,-1,1,-1,1,1,1,1,-1,-1,-1,1,-1,1,1,1,1,1,1,-1,-1,1,-1,1,1,-1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1,1,-1,-1,1,1,1,1,-1,1,-1,1,-1,-1,1,-1,-1,-1,-1,1,-1,1,1,1,-1,-1,-1,1,-1,-1,1,1,-1,1,1,-1,-1,-1,1,1,-1,1,-1,-1,1,-1,-1,1,-1,1,-1,-1,-1,-1,-1,1,-1,-1,-1,1,1,-1,-1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,1,1,1,1,1,-1,1,-1,-1,-1,-1,-1,-1,-1,-1,1,-1,-1,-1,-1,-1,1,-1,-1,1,1,1,-1,-1,1,1,1,-1,-1,1,1,1,1,-1,-1,-1,-1,1,1,1,1,-1,1,1,1,-1,1,1,-1,-1,-1,-1,-1,1,-1,-1,1,1,-1,-1,1,-1,1,1,-1,1,-1,-1,1,1,1,-1,-1,1,1,1,1,1,1,1,-1,1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,-1,-1,-1,-1,1,1,1,1,-1,1,-1,-1,1,-1,-1,-1,1,-1,-1,-1,1,-1,-1,-1,1,-1,1,1,-1,-1,-1,-1,1,1,-1,-1,-1,1,1,-1,-1,1,-1,-1,-1,-1,1,1,1,1,1,1,1,-1,1,-1,1,-1,-1,-1,1,-1,1,1,1,-1,-1,-1,1,1,1,-1,1,1,1,-1,1,-1,1,1,1,-1,-1,-1,1,1,1,1,1,-1,-1,-1,-1,1,1,1,1,1,1,1,-1,1,-1,1,-1,-1,-1,-1,1,1,-1,-1,1,-1,1,1,-1,1,1,-1,-1,-1,-1,1,1,1,1,-1,-1,1,-1,-1,-1,-1,-1,-1,1,1,-1,1,1,-1,1,-1,1,-1,1,1,-1,-1,1,-1,-1,1,-1,1,1,-1,1,1,-1,1,-1,1,1,-1,-1,1,1,1,-1,1,-1,1,-1,1,1,-1,1,-1,1,1,1,1,-1,1,1,-1,-1,1,1,-1,-1,1,-1,-1,1,1,-1,-1,-1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1]} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/small_positive.json b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/small_positive.json new file mode 100644 index 000000000000..102a329a4e6f --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/small_positive.json @@ -0,0 +1 @@ +{"expected":[0,0.09960159659385681,-0.19920319318771362,0.29880478978157043,0.39840638637542725,-0.49800798296928406,-0.5976095795631409,-0.6972111463546753,0.7968127727508545,0.8964143395423889,0.9960159659385681,-1.0956175327301025,1.1952191591262817,1.2948206663131714,1.3944222927093506,1.4940239191055298,-1.593625545501709,1.6932270526885986,-1.7928286790847778,1.892430305480957,-1.9920319318771362,2.0916335582733154,2.191235065460205,-2.2908365726470947,2.3904383182525635,2.490039825439453,2.5896413326263428,-2.6892430782318115,2.788844585418701,-2.88844633102417,-2.9880478382110596,3.087649345397949,-3.187251091003418,-3.2868525981903076,-3.3864541053771973,-3.486055850982666,-3.5856573581695557,-3.6852588653564453,3.784860610961914,-3.8844621181488037,-3.9840638637542725,4.083665370941162,4.183267116546631,4.282868385314941,4.38247013092041,-4.482071876525879,-4.5816731452941895,-4.681274890899658,-4.780876636505127,4.8804779052734375,-4.980079650878906,5.079681396484375,5.1792826652526855,-5.278884410858154,5.378486156463623,5.478087425231934,5.577689170837402,-5.677290916442871,5.77689266204834,-5.87649393081665,5.976095676422119,-6.075697422027588,6.175298690795898,-6.274900436401367,-6.374502182006836,-6.4741034507751465,6.573705196380615,6.673306941986084,-6.7729082107543945,-6.872509956359863,6.972111701965332,7.071712970733643,-7.171314716339111,7.27091646194458,-7.370517730712891,7.470119476318359,-7.569721221923828,-7.669322490692139,-7.768924236297607,7.868525981903076,7.968127727508545,8.067728996276855,8.167330741882324,-8.266932487487793,8.366534233093262,8.466135025024414,8.565736770629883,8.665338516235352,8.76494026184082,8.864542007446289,-8.964143753051758,9.06374454498291,-9.163346290588379,9.262948036193848,9.362549781799316,9.462151527404785,-9.561753273010254,9.661355018615723,-9.760955810546875,-9.860557556152344,-9.960159301757812,10.059761047363281,10.15936279296875,-10.258964538574219,-10.358565330505371,-10.45816707611084,-10.557768821716309,10.657370567321777,10.756972312927246,-10.856574058532715,10.956174850463867,-11.055776596069336,11.155378341674805,11.254980087280273,-11.354581832885742,-11.454183578491211,-11.55378532409668,11.653386116027832,11.7529878616333,-11.85258960723877,11.952191352844238,12.051793098449707,-12.151394844055176,-12.250995635986328,12.350597381591797,-12.450199127197266,12.549800872802734,-12.649402618408203,-12.749004364013672,-12.848605155944824,12.948206901550293,13.047808647155762,13.14741039276123,13.2470121383667,-13.346613883972168,13.44621467590332,13.545816421508789,-13.645418167114258,-13.745019912719727,-13.844621658325195,13.944223403930664,-14.043825149536133,-14.143425941467285,-14.243027687072754,-14.342629432678223,-14.442231178283691,-14.54183292388916,14.641434669494629,-14.741035461425781,-14.84063720703125,-14.940238952636719,15.039840698242188,-15.139442443847656,15.239044189453125,15.338644981384277,-15.438246726989746,15.537848472595215,-15.637450218200684,-15.737051963806152,15.836653709411621,15.93625545501709,16.035856246948242,16.13545799255371,-16.23505973815918,-16.33466148376465,-16.434263229370117,16.533864974975586,16.633466720581055,-16.733068466186523,-16.832670211791992,16.932270050048828,17.031871795654297,17.131473541259766,-17.231075286865234,-17.330677032470703,17.430278778076172,-17.52988052368164,-17.62948226928711,-17.729084014892578,17.828685760498047,-17.928287506103516,18.027889251708984,-18.12748908996582,-18.22709083557129,18.326692581176758,18.426294326782227,18.525896072387695,-18.625497817993164,18.725099563598633,-18.8247013092041,18.92430305480957,19.02390480041504,-19.123506546020508,19.223108291625977,19.322710037231445,-19.42230987548828,19.52191162109375,19.62151336669922,-19.721115112304688,19.820716857910156,19.920318603515625,20.019920349121094,20.119522094726562,20.21912384033203,20.3187255859375,-20.41832733154297,20.517929077148438,-20.617530822753906,20.717130661010742,-20.81673240661621,-20.91633415222168,21.01593589782715,21.115537643432617,21.215139389038086,21.314741134643555,-21.414342880249023,21.513944625854492,-21.61354637145996,-21.71314811706543,21.8127498626709,-21.912349700927734,-22.011951446533203,-22.111553192138672,22.21115493774414,22.31075668334961,22.410358428955078,22.509960174560547,22.609561920166016,22.709163665771484,22.808765411376953,22.908367156982422,-23.00796890258789,-23.10757064819336,-23.207170486450195,-23.306772232055664,23.406373977661133,-23.5059757232666,-23.60557746887207,-23.70517921447754,23.804780960083008,23.904382705688477,-24.003984451293945,-24.103586196899414,24.203187942504883,24.30278968811035,-24.402389526367188,24.501991271972656,24.601593017578125,24.701194763183594,24.800796508789062,-24.90039825439453,-25,-25.09960174560547,-25.199203491210938,-25.298805236816406,25.398406982421875,25.498008728027344,-25.597610473632812,-25.69721031188965,-25.796812057495117,-25.896413803100586,25.996015548706055,-26.095617294311523,-26.195219039916992,-26.29482078552246,26.39442253112793,26.4940242767334,-26.593626022338867,-26.693227767944336,-26.792829513549805,26.89242935180664,-26.99203109741211,-27.091632843017578,27.191234588623047,27.290836334228516,27.390438079833984,27.490039825439453,27.589641571044922,-27.68924331665039,27.78884506225586,-27.888446807861328,27.988048553466797,-28.087650299072266,-28.1872501373291,-28.28685188293457,28.38645362854004,28.486055374145508,28.585657119750977,28.685258865356445,-28.784860610961914,-28.884462356567383,-28.98406410217285,-29.08366584777832,29.18326759338379,-29.282869338989258,-29.382469177246094,-29.482070922851562,-29.58167266845703,29.6812744140625,-29.78087615966797,29.880477905273438,29.980079650878906,30.079681396484375,-30.179283142089844,30.278884887695312,30.37848663330078,-30.47808837890625,30.57769012451172,-30.677289962768555,30.776891708374023,30.876493453979492,30.97609519958496,-31.07569694519043,-31.1752986907959,-31.274900436401367,-31.374502182006836,-31.474103927612305,-31.573705673217773,31.673307418823242,-31.77290916442871,-31.87251091003418,-31.972110748291016,32.071712493896484,-32.17131423950195,32.27091598510742,32.37051773071289,-32.47011947631836,32.56972122192383,32.6693229675293,-32.768924713134766,32.868526458740234,-32.9681282043457,-33.06772994995117,33.16733169555664,33.26693344116211,-33.36653518676758,-33.46613693237305,33.565738677978516,-33.665340423583984,33.76493835449219,-33.864540100097656,33.964141845703125,-34.063743591308594,34.16334533691406,-34.26294708251953,34.362548828125,34.46215057373047,34.56175231933594,-34.661354064941406,34.760955810546875,34.860557556152344,-34.96015930175781,35.05976104736328,-35.15936279296875,-35.25896453857422,-35.35856628417969,35.458168029785156,35.557769775390625,35.657371520996094,-35.75697326660156,-35.85657501220703,-35.9561767578125,36.05577850341797,36.15538024902344,36.25497817993164,-36.35457992553711,-36.45418167114258,-36.55378341674805,36.653385162353516,36.752986907958984,-36.85258865356445,36.95219039916992,37.05179214477539,37.15139389038086,37.25099563598633,37.3505973815918,37.450199127197266,-37.549800872802734,37.6494026184082,37.74900436401367,-37.84860610961914,-37.94820785522461,-38.04780960083008,-38.14741134643555,38.247013092041016,38.346614837646484,38.44621658325195,-38.54581832885742,-38.64542007446289,38.74502182006836,38.84461975097656,-38.94422149658203,-39.0438232421875,-39.14342498779297,39.24302673339844,39.342628479003906,39.442230224609375,39.541831970214844,39.64143371582031,39.74103546142578,39.84063720703125,-39.94023895263672,-40.03984069824219,40.139442443847656,-40.239044189453125,-40.338645935058594,-40.43824768066406,-40.53784942626953,-40.637451171875,40.73705291748047,-40.83665466308594,40.936256408691406,41.035858154296875,41.135459899902344,-41.23506164550781,41.334659576416016,-41.434261322021484,-41.53386306762695,41.63346481323242,-41.73306655883789,-41.83266830444336,41.93227005004883,42.0318717956543,42.131473541259766,42.231075286865234,-42.3306770324707,42.43027877807617,42.52988052368164,-42.62948226928711,-42.72908401489258,42.82868576049805,42.928287506103516,43.027889251708984,-43.12749099731445,43.22709274291992,-43.32669448852539,-43.42629623413086,43.52589797973633,43.6254997253418,-43.725101470947266,-43.82469940185547,43.92430114746094,-44.023902893066406,44.123504638671875,44.223106384277344,44.32270812988281,-44.42230987548828,-44.52191162109375,-44.62151336669922,44.72111511230469,44.820716857910156,-44.920318603515625,45.019920349121094,45.11952209472656,-45.21912384033203,-45.3187255859375,-45.41832733154297,45.51792907714844,-45.617530822753906,-45.717132568359375,-45.816734313964844,45.91633605957031,46.01593780517578,-46.11553955078125,-46.21514129638672,-46.31473922729492,46.41434097290039,46.51394271850586,-46.61354446411133,46.7131462097168,46.812747955322266,46.912349700927734,47.0119514465332,-47.11155319213867,47.21115493774414,-47.31075668334961,-47.41035842895508,-47.50996017456055,-47.609561920166016,-47.709163665771484,-47.80876541137695,47.90836715698242,48.00796890258789,-48.10757064819336,-48.20717239379883,-48.3067741394043,-48.406375885009766,-48.505977630615234,48.6055793762207,48.70518112182617,-48.804779052734375,-48.904380798339844,-49.00398254394531,49.10358428955078,-49.20318603515625,49.30278778076172,49.40238952636719,49.501991271972656,49.601593017578125,49.701194763183594,-49.80079650878906,49.90039825439453,50],"p":[0,0.0039840638637542725,0.007968127727508545,0.011952191591262817,0.01593625545501709,0.019920319318771362,0.023904383182525635,0.027888447046279907,0.03187251091003418,0.03585657477378845,0.039840638637542725,0.043824702501297,0.04780876636505127,0.05179283022880554,0.055776894092559814,0.05976095795631409,0.06374502182006836,0.06772908568382263,0.0717131495475769,0.07569721341133118,0.07968127727508545,0.08366534113883972,0.087649405002594,0.09163346886634827,0.09561753273010254,0.09960159659385681,0.10358566045761108,0.10756972432136536,0.11155378818511963,0.1155378520488739,0.11952191591262817,0.12350597977638245,0.12749004364013672,0.131474107503891,0.13545817136764526,0.13944223523139954,0.1434262990951538,0.14741036295890808,0.15139442682266235,0.15537849068641663,0.1593625545501709,0.16334661841392517,0.16733068227767944,0.17131474614143372,0.175298810005188,0.17928287386894226,0.18326693773269653,0.1872510015964508,0.19123506546020508,0.19521912932395935,0.19920319318771362,0.2031872570514679,0.20717132091522217,0.21115538477897644,0.2151394486427307,0.21912351250648499,0.22310757637023926,0.22709164023399353,0.2310757040977478,0.23505976796150208,0.23904383182525635,0.24302789568901062,0.2470119595527649,0.25099602341651917,0.25498008728027344,0.2589641511440277,0.262948215007782,0.26693227887153625,0.2709163427352905,0.2749004065990448,0.2788844704627991,0.28286853432655334,0.2868525981903076,0.2908366620540619,0.29482072591781616,0.29880478978157043,0.3027888536453247,0.306772917509079,0.31075698137283325,0.3147410452365875,0.3187251091003418,0.32270917296409607,0.32669323682785034,0.3306773006916046,0.3346613645553589,0.33864542841911316,0.34262949228286743,0.3466135561466217,0.350597620010376,0.35458168387413025,0.3585657477378845,0.3625498116016388,0.36653387546539307,0.37051793932914734,0.3745020031929016,0.3784860670566559,0.38247013092041016,0.38645419478416443,0.3904382586479187,0.394422322511673,0.39840638637542725,0.4023904502391815,0.4063745141029358,0.41035857796669006,0.41434264183044434,0.4183267056941986,0.4223107695579529,0.42629483342170715,0.4302788972854614,0.4342629611492157,0.43824702501296997,0.44223108887672424,0.4462151527404785,0.4501992166042328,0.45418328046798706,0.45816734433174133,0.4621514081954956,0.4661354720592499,0.47011953592300415,0.4741035997867584,0.4780876636505127,0.48207172751426697,0.48605579137802124,0.4900398552417755,0.4940239191055298,0.49800798296928406,0.5019920468330383,0.5059760808944702,0.5099601745605469,0.5139442086219788,0.5179283022880554,0.5219123363494873,0.525896430015564,0.5298804640769958,0.5338645577430725,0.5378485918045044,0.541832685470581,0.5458167195320129,0.5498008131980896,0.5537848472595215,0.5577689409255981,0.56175297498703,0.5657370686531067,0.5697211027145386,0.5737051963806152,0.5776892304420471,0.5816733241081238,0.5856573581695557,0.5896414518356323,0.5936254858970642,0.5976095795631409,0.6015936136245728,0.6055777072906494,0.6095617413520813,0.613545835018158,0.6175298690795898,0.6215139627456665,0.6254979968070984,0.629482090473175,0.6334661245346069,0.6374502182006836,0.6414342522621155,0.6454183459281921,0.649402379989624,0.6533864736557007,0.6573705077171326,0.6613546013832092,0.6653386354446411,0.6693227291107178,0.6733067631721497,0.6772908568382263,0.6812748908996582,0.6852589845657349,0.6892430186271667,0.6932271122932434,0.6972111463546753,0.701195240020752,0.7051792740821838,0.7091633677482605,0.7131474018096924,0.717131495475769,0.7211155295372009,0.7250996232032776,0.7290836572647095,0.7330677509307861,0.737051784992218,0.7410358786582947,0.7450199127197266,0.7490040063858032,0.7529880404472351,0.7569721341133118,0.7609561681747437,0.7649402618408203,0.7689242959022522,0.7729083895683289,0.7768924236297607,0.7808765172958374,0.7848605513572693,0.788844645023346,0.7928286790847778,0.7968127727508545,0.8007968068122864,0.804780900478363,0.8087649345397949,0.8127490282058716,0.8167330622673035,0.8207171559333801,0.824701189994812,0.8286852836608887,0.8326693177223206,0.8366534113883972,0.8406374454498291,0.8446215391159058,0.8486055731773376,0.8525896668434143,0.8565737009048462,0.8605577945709229,0.8645418286323547,0.8685259222984314,0.8725099563598633,0.8764940500259399,0.8804780840873718,0.8844621777534485,0.8884462118148804,0.892430305480957,0.8964143395423889,0.9003984332084656,0.9043824672698975,0.9083665609359741,0.912350594997406,0.9163346886634827,0.9203187227249146,0.9243028163909912,0.9282868504524231,0.9322709441184998,0.9362549781799316,0.9402390718460083,0.9442231059074402,0.9482071995735168,0.9521912336349487,0.9561753273010254,0.9601593613624573,0.9641434550285339,0.9681274890899658,0.9721115827560425,0.9760956168174744,0.980079710483551,0.9840637445449829,0.9880478382110596,0.9920318722724915,0.9960159659385681,1,1.0039840936660767,1.0079680681228638,1.0119521617889404,1.015936255455017,1.0199203491210938,1.0239043235778809,1.0278884172439575,1.0318725109100342,1.0358566045761108,1.039840579032898,1.0438246726989746,1.0478087663650513,1.051792860031128,1.055776834487915,1.0597609281539917,1.0637450218200684,1.067729115486145,1.0717130899429321,1.0756971836090088,1.0796812772750854,1.083665370941162,1.0876493453979492,1.0916334390640259,1.0956175327301025,1.0996016263961792,1.1035856008529663,1.107569694519043,1.1115537881851196,1.1155378818511963,1.1195218563079834,1.12350594997406,1.1274900436401367,1.1314741373062134,1.1354581117630005,1.1394422054290771,1.1434262990951538,1.1474103927612305,1.1513943672180176,1.1553784608840942,1.159362554550171,1.1633466482162476,1.1673306226730347,1.1713147163391113,1.175298810005188,1.1792829036712646,1.1832668781280518,1.1872509717941284,1.191235065460205,1.1952191591262817,1.1992031335830688,1.2031872272491455,1.2071713209152222,1.2111554145812988,1.215139389038086,1.2191234827041626,1.2231075763702393,1.227091670036316,1.231075644493103,1.2350597381591797,1.2390438318252563,1.243027925491333,1.2470118999481201,1.2509959936141968,1.2549800872802734,1.25896418094635,1.2629481554031372,1.2669322490692139,1.2709163427352905,1.2749004364013672,1.2788844108581543,1.282868504524231,1.2868525981903076,1.2908366918563843,1.2948206663131714,1.298804759979248,1.3027888536453247,1.3067729473114014,1.3107569217681885,1.3147410154342651,1.3187251091003418,1.3227092027664185,1.3266931772232056,1.3306772708892822,1.3346613645553589,1.3386454582214355,1.3426294326782227,1.3466135263442993,1.350597620010376,1.3545817136764526,1.3585656881332397,1.3625497817993164,1.366533875465393,1.3705179691314697,1.3745019435882568,1.3784860372543335,1.3824701309204102,1.3864542245864868,1.390438199043274,1.3944222927093506,1.3984063863754272,1.402390480041504,1.406374454498291,1.4103585481643677,1.4143426418304443,1.418326735496521,1.422310709953308,1.4262948036193848,1.4302788972854614,1.434262990951538,1.4382469654083252,1.4422310590744019,1.4462151527404785,1.4501992464065552,1.4541832208633423,1.458167314529419,1.4621514081954956,1.4661355018615723,1.4701194763183594,1.474103569984436,1.4780876636505127,1.4820717573165894,1.4860557317733765,1.4900398254394531,1.4940239191055298,1.4980080127716064,1.5019919872283936,1.5059760808944702,1.5099601745605469,1.5139442682266235,1.5179282426834106,1.5219123363494873,1.525896430015564,1.5298805236816406,1.5338644981384277,1.5378485918045044,1.541832685470581,1.5458167791366577,1.5498007535934448,1.5537848472595215,1.5577689409255981,1.5617530345916748,1.565737009048462,1.5697211027145386,1.5737051963806152,1.577689290046692,1.581673264503479,1.5856573581695557,1.5896414518356323,1.593625545501709,1.597609519958496,1.6015936136245728,1.6055777072906494,1.609561800956726,1.6135457754135132,1.6175298690795898,1.6215139627456665,1.6254980564117432,1.6294820308685303,1.633466124534607,1.6374502182006836,1.6414343118667603,1.6454182863235474,1.649402379989624,1.6533864736557007,1.6573705673217773,1.6613545417785645,1.6653386354446411,1.6693227291107178,1.6733068227767944,1.6772907972335815,1.6812748908996582,1.6852589845657349,1.6892430782318115,1.6932270526885986,1.6972111463546753,1.701195240020752,1.7051793336868286,1.7091633081436157,1.7131474018096924,1.717131495475769,1.7211155891418457,1.7250995635986328,1.7290836572647095,1.7330677509307861,1.7370518445968628,1.74103581905365,1.7450199127197266,1.7490040063858032,1.7529881000518799,1.756972074508667,1.7609561681747437,1.7649402618408203,1.768924355506897,1.772908329963684,1.7768924236297607,1.7808765172958374,1.784860610961914,1.7888445854187012,1.7928286790847778,1.7968127727508545,1.8007968664169312,1.8047808408737183,1.808764934539795,1.8127490282058716,1.8167331218719482,1.8207170963287354,1.824701189994812,1.8286852836608887,1.8326693773269653,1.8366533517837524,1.840637445449829,1.8446215391159058,1.8486056327819824,1.8525896072387695,1.8565737009048462,1.8605577945709229,1.8645418882369995,1.8685258626937866,1.8725099563598633,1.87649405002594,1.8804781436920166,1.8844621181488037,1.8884462118148804,1.892430305480957,1.8964143991470337,1.9003983736038208,1.9043824672698975,1.9083665609359741,1.9123506546020508,1.916334629058838,1.9203187227249146,1.9243028163909912,1.9282869100570679,1.932270884513855,1.9362549781799316,1.9402390718460083,1.944223165512085,1.948207139968872,1.9521912336349487,1.9561753273010254,1.960159420967102,1.9641433954238892,1.9681274890899658,1.9721115827560425,1.9760956764221191,1.9800796508789062,1.984063744544983,1.9880478382110596,1.9920319318771362,1.9960159063339233,2],"t":[0,0.009960159659385681,0.019920319318771362,0.029880478978157043,0.039840638637542725,0.049800798296928406,0.05976095795631409,0.06972111761569977,0.07968127727508545,0.08964143693447113,0.09960159659385681,0.10956175625324249,0.11952191591262817,0.12948207557201385,0.13944223523139954,0.14940239489078522,0.1593625545501709,0.16932271420955658,0.17928287386894226,0.18924303352832794,0.19920319318771362,0.2091633528470993,0.21912351250648499,0.22908367216587067,0.23904383182525635,0.24900399148464203,0.2589641511440277,0.2689242959022522,0.2788844704627991,0.28884461522102356,0.29880478978157043,0.3087649345397949,0.3187251091003418,0.3286852538585663,0.33864542841911316,0.34860557317733765,0.3585657477378845,0.368525892496109,0.3784860670566559,0.38844621181488037,0.39840638637542725,0.40836653113365173,0.4183267056941986,0.4282868504524231,0.43824702501296997,0.44820716977119446,0.45816734433174133,0.4681274890899658,0.4780876636505127,0.4880478084087372,0.49800798296928406,0.5079681277275085,0.5179283022880554,0.5278884172439575,0.5378485918045044,0.5478087663650513,0.5577689409255981,0.5677290558815002,0.5776892304420471,0.587649405002594,0.5976095795631409,0.607569694519043,0.6175298690795898,0.6274900436401367,0.6374502182006836,0.6474103331565857,0.6573705077171326,0.6673306822776794,0.6772908568382263,0.6872509717941284,0.6972111463546753,0.7071713209152222,0.717131495475769,0.7270916104316711,0.737051784992218,0.7470119595527649,0.7569721341133118,0.7669322490692139,0.7768924236297607,0.7868525981903076,0.7968127727508545,0.8067728877067566,0.8167330622673035,0.8266932368278503,0.8366534113883972,0.8466135263442993,0.8565737009048462,0.8665338754653931,0.8764940500259399,0.886454164981842,0.8964143395423889,0.9063745141029358,0.9163346886634827,0.9262948036193848,0.9362549781799316,0.9462151527404785,0.9561753273010254,0.9661354422569275,0.9760956168174744,0.9860557913780212,0.9960159659385681,1.0059760808944702,1.015936255455017,1.025896430015564,1.0358566045761108,1.0458167791366577,1.055776834487915,1.065737009048462,1.0756971836090088,1.0856573581695557,1.0956175327301025,1.1055777072906494,1.1155378818511963,1.1254980564117432,1.1354581117630005,1.1454182863235474,1.1553784608840942,1.1653386354446411,1.175298810005188,1.1852589845657349,1.1952191591262817,1.2051793336868286,1.215139389038086,1.2250995635986328,1.2350597381591797,1.2450199127197266,1.2549800872802734,1.2649402618408203,1.2749004364013672,1.284860610961914,1.2948206663131714,1.3047808408737183,1.3147410154342651,1.324701189994812,1.3346613645553589,1.3446215391159058,1.3545817136764526,1.3645418882369995,1.3745019435882568,1.3844621181488037,1.3944222927093506,1.4043824672698975,1.4143426418304443,1.4243028163909912,1.434262990951538,1.444223165512085,1.4541832208633423,1.4641433954238892,1.474103569984436,1.484063744544983,1.4940239191055298,1.5039840936660767,1.5139442682266235,1.5239043235778809,1.5338644981384277,1.5438246726989746,1.5537848472595215,1.5637450218200684,1.5737051963806152,1.583665370941162,1.593625545501709,1.6035856008529663,1.6135457754135132,1.62350594997406,1.633466124534607,1.6434262990951538,1.6533864736557007,1.6633466482162476,1.6733068227767944,1.6832668781280518,1.6932270526885986,1.7031872272491455,1.7131474018096924,1.7231075763702393,1.7330677509307861,1.743027925491333,1.7529881000518799,1.7629481554031372,1.772908329963684,1.782868504524231,1.7928286790847778,1.8027888536453247,1.8127490282058716,1.8227092027664185,1.8326693773269653,1.8426294326782227,1.8525896072387695,1.8625497817993164,1.8725099563598633,1.8824701309204102,1.892430305480957,1.902390480041504,1.9123506546020508,1.922310709953308,1.932270884513855,1.9422310590744019,1.9521912336349487,1.9621514081954956,1.9721115827560425,1.9820717573165894,1.9920319318771362,2.0019919872283936,2.0119521617889404,2.0219123363494873,2.031872510910034,2.041832685470581,2.051792860031128,2.061753034591675,2.0717132091522217,2.0816733837127686,2.0916335582733154,2.1015937328338623,2.11155366897583,2.121513843536377,2.131474018096924,2.1414341926574707,2.1513943672180176,2.1613545417785645,2.1713147163391113,2.181274890899658,2.191235065460205,2.201195240020752,2.211155414581299,2.2211155891418457,2.2310757637023926,2.2410359382629395,2.2509961128234863,2.260956287384033,2.270916223526001,2.280876398086548,2.2908365726470947,2.3007967472076416,2.3107569217681885,2.3207170963287354,2.3306772708892822,2.340637445449829,2.350597620010376,2.360557794570923,2.3705179691314697,2.3804781436920166,2.3904383182525635,2.4003984928131104,2.4103586673736572,2.420318841934204,2.430278778076172,2.4402389526367188,2.4501991271972656,2.4601593017578125,2.4701194763183594,2.4800796508789062,2.490039825439453,2.5,2.509960174560547,2.5199203491210938,2.5298805236816406,2.5398406982421875,2.5498008728027344,2.5597610473632812,2.569721221923828,2.579681158065796,2.5896413326263428,2.5996015071868896,2.6095616817474365,2.6195218563079834,2.6294820308685303,2.639442205429077,2.649402379989624,2.659362554550171,2.6693227291107178,2.6792829036712646,2.6892430782318115,2.6992032527923584,2.7091634273529053,2.719123601913452,2.729083776473999,2.739043712615967,2.7490038871765137,2.7589640617370605,2.7689242362976074,2.7788844108581543,2.788844585418701,2.798804759979248,2.808764934539795,2.818725109100342,2.8286852836608887,2.8386454582214355,2.8486056327819824,2.8585658073425293,2.868525981903076,2.878486156463623,2.88844633102417,2.8984062671661377,2.9083664417266846,2.9183266162872314,2.9282867908477783,2.938246965408325,2.948207139968872,2.958167314529419,2.968127489089966,2.9780876636505127,2.9880478382110596,2.9980080127716064,3.0079681873321533,3.0179283618927,3.027888536453247,3.037848711013794,3.0478086471557617,3.0577688217163086,3.0677289962768555,3.0776891708374023,3.087649345397949,3.097609519958496,3.107569694519043,3.11752986907959,3.1274900436401367,3.1374502182006836,3.1474103927612305,3.1573705673217773,3.167330741882324,3.177290916442871,3.187251091003418,3.197211265563965,3.2071712017059326,3.2171313762664795,3.2270915508270264,3.2370517253875732,3.24701189994812,3.256972074508667,3.266932249069214,3.2768924236297607,3.2868525981903076,3.2968127727508545,3.3067729473114014,3.3167331218719482,3.326693296432495,3.336653470993042,3.346613645553589,3.3565738201141357,3.3665337562561035,3.3764939308166504,3.3864541053771973,3.396414279937744,3.406374454498291,3.416334629058838,3.4262948036193848,3.4362549781799316,3.4462151527404785,3.4561753273010254,3.4661355018615723,3.476095676422119,3.486055850982666,3.496016025543213,3.5059762001037598,3.5159361362457275,3.5258963108062744,3.5358564853668213,3.545816659927368,3.555776834487915,3.565737009048462,3.575697183609009,3.5856573581695557,3.5956175327301025,3.6055777072906494,3.6155378818511963,3.625498056411743,3.63545823097229,3.645418405532837,3.655378580093384,3.6653387546539307,3.6752986907958984,3.6852588653564453,3.695219039916992,3.705179214477539,3.715139389038086,3.725099563598633,3.7350597381591797,3.7450199127197266,3.7549800872802734,3.7649402618408203,3.774900436401367,3.784860610961914,3.794820785522461,3.804780960083008,3.8147411346435547,3.8247013092041016,3.8346612453460693,3.844621419906616,3.854581594467163,3.86454176902771,3.874501943588257,3.8844621181488037,3.8944222927093506,3.9043824672698975,3.9143426418304443,3.924302816390991,3.934262990951538,3.944223165512085,3.954183340072632,3.9641435146331787,3.9741036891937256,3.9840638637542725,3.9940237998962402,4.003983974456787,4.013944149017334,4.023904323577881,4.033864498138428,4.043824672698975,4.0537848472595215,4.063745021820068,4.073705196380615,4.083665370941162,4.093625545501709,4.103585720062256,4.113545894622803,4.12350606918335,4.1334662437438965,4.143426418304443,4.15338659286499,4.163346767425537,4.173306941986084,4.183267116546631,4.193227291107178,4.203187465667725,4.2131476402282715,4.22310733795166,4.233067512512207,4.243027687072754,4.252987861633301,4.262948036193848,4.2729082107543945,4.282868385314941,4.292828559875488,4.302788734436035,4.312748908996582,4.322709083557129,4.332669258117676,4.342629432678223,4.3525896072387695,4.362549781799316,4.372509956359863,4.38247013092041,4.392430305480957,4.402390480041504,4.412350654602051,4.422310829162598,4.4322710037231445,4.442231178283691,4.452191352844238,4.462151527404785,4.472111701965332,4.482071876525879,4.492032051086426,4.501992225646973,4.5119524002075195,4.521912574768066,4.531872272491455,4.541832447052002,4.551792621612549,4.561752796173096,4.571712970733643,4.5816731452941895,4.591633319854736,4.601593494415283,4.61155366897583,4.621513843536377,4.631474018096924,4.641434192657471,4.651394367218018,4.6613545417785645,4.671314716339111,4.681274890899658,4.691235065460205,4.701195240020752,4.711155414581299,4.721115589141846,4.731075763702393,4.7410359382629395,4.750996112823486,4.760956287384033,4.77091646194458,4.780876636505127,4.790836811065674,4.800796985626221,4.810757160186768,4.8207173347473145,4.830677509307861,4.840637683868408,4.850597381591797,4.860557556152344,4.870517730712891,4.8804779052734375,4.890438079833984,4.900398254394531,4.910358428955078,4.920318603515625,4.930278778076172,4.940238952636719,4.950199127197266,4.9601593017578125,4.970119476318359,4.980079650878906,4.990039825439453,5],"x":[0,0.09960159659385681,0.19920319318771362,0.29880478978157043,0.39840638637542725,0.49800798296928406,0.5976095795631409,0.6972111463546753,0.7968127727508545,0.8964143395423889,0.9960159659385681,1.0956175327301025,1.1952191591262817,1.2948206663131714,1.3944222927093506,1.4940239191055298,1.593625545501709,1.6932270526885986,1.7928286790847778,1.892430305480957,1.9920319318771362,2.0916335582733154,2.191235065460205,2.2908365726470947,2.3904383182525635,2.490039825439453,2.5896413326263428,2.6892430782318115,2.788844585418701,2.88844633102417,2.9880478382110596,3.087649345397949,3.187251091003418,3.2868525981903076,3.3864541053771973,3.486055850982666,3.5856573581695557,3.6852588653564453,3.784860610961914,3.8844621181488037,3.9840638637542725,4.083665370941162,4.183267116546631,4.282868385314941,4.38247013092041,4.482071876525879,4.5816731452941895,4.681274890899658,4.780876636505127,4.8804779052734375,4.980079650878906,5.079681396484375,5.1792826652526855,5.278884410858154,5.378486156463623,5.478087425231934,5.577689170837402,5.677290916442871,5.77689266204834,5.87649393081665,5.976095676422119,6.075697422027588,6.175298690795898,6.274900436401367,6.374502182006836,6.4741034507751465,6.573705196380615,6.673306941986084,6.7729082107543945,6.872509956359863,6.972111701965332,7.071712970733643,7.171314716339111,7.27091646194458,7.370517730712891,7.470119476318359,7.569721221923828,7.669322490692139,7.768924236297607,7.868525981903076,7.968127727508545,8.067728996276855,8.167330741882324,8.266932487487793,8.366534233093262,8.466135025024414,8.565736770629883,8.665338516235352,8.76494026184082,8.864542007446289,8.964143753051758,9.06374454498291,9.163346290588379,9.262948036193848,9.362549781799316,9.462151527404785,9.561753273010254,9.661355018615723,9.760955810546875,9.860557556152344,9.960159301757812,10.059761047363281,10.15936279296875,10.258964538574219,10.358565330505371,10.45816707611084,10.557768821716309,10.657370567321777,10.756972312927246,10.856574058532715,10.956174850463867,11.055776596069336,11.155378341674805,11.254980087280273,11.354581832885742,11.454183578491211,11.55378532409668,11.653386116027832,11.7529878616333,11.85258960723877,11.952191352844238,12.051793098449707,12.151394844055176,12.250995635986328,12.350597381591797,12.450199127197266,12.549800872802734,12.649402618408203,12.749004364013672,12.848605155944824,12.948206901550293,13.047808647155762,13.14741039276123,13.2470121383667,13.346613883972168,13.44621467590332,13.545816421508789,13.645418167114258,13.745019912719727,13.844621658325195,13.944223403930664,14.043825149536133,14.143425941467285,14.243027687072754,14.342629432678223,14.442231178283691,14.54183292388916,14.641434669494629,14.741035461425781,14.84063720703125,14.940238952636719,15.039840698242188,15.139442443847656,15.239044189453125,15.338644981384277,15.438246726989746,15.537848472595215,15.637450218200684,15.737051963806152,15.836653709411621,15.93625545501709,16.035856246948242,16.13545799255371,16.23505973815918,16.33466148376465,16.434263229370117,16.533864974975586,16.633466720581055,16.733068466186523,16.832670211791992,16.932270050048828,17.031871795654297,17.131473541259766,17.231075286865234,17.330677032470703,17.430278778076172,17.52988052368164,17.62948226928711,17.729084014892578,17.828685760498047,17.928287506103516,18.027889251708984,18.12748908996582,18.22709083557129,18.326692581176758,18.426294326782227,18.525896072387695,18.625497817993164,18.725099563598633,18.8247013092041,18.92430305480957,19.02390480041504,19.123506546020508,19.223108291625977,19.322710037231445,19.42230987548828,19.52191162109375,19.62151336669922,19.721115112304688,19.820716857910156,19.920318603515625,20.019920349121094,20.119522094726562,20.21912384033203,20.3187255859375,20.41832733154297,20.517929077148438,20.617530822753906,20.717130661010742,20.81673240661621,20.91633415222168,21.01593589782715,21.115537643432617,21.215139389038086,21.314741134643555,21.414342880249023,21.513944625854492,21.61354637145996,21.71314811706543,21.8127498626709,21.912349700927734,22.011951446533203,22.111553192138672,22.21115493774414,22.31075668334961,22.410358428955078,22.509960174560547,22.609561920166016,22.709163665771484,22.808765411376953,22.908367156982422,23.00796890258789,23.10757064819336,23.207170486450195,23.306772232055664,23.406373977661133,23.5059757232666,23.60557746887207,23.70517921447754,23.804780960083008,23.904382705688477,24.003984451293945,24.103586196899414,24.203187942504883,24.30278968811035,24.402389526367188,24.501991271972656,24.601593017578125,24.701194763183594,24.800796508789062,24.90039825439453,25,25.09960174560547,25.199203491210938,25.298805236816406,25.398406982421875,25.498008728027344,25.597610473632812,25.69721031188965,25.796812057495117,25.896413803100586,25.996015548706055,26.095617294311523,26.195219039916992,26.29482078552246,26.39442253112793,26.4940242767334,26.593626022338867,26.693227767944336,26.792829513549805,26.89242935180664,26.99203109741211,27.091632843017578,27.191234588623047,27.290836334228516,27.390438079833984,27.490039825439453,27.589641571044922,27.68924331665039,27.78884506225586,27.888446807861328,27.988048553466797,28.087650299072266,28.1872501373291,28.28685188293457,28.38645362854004,28.486055374145508,28.585657119750977,28.685258865356445,28.784860610961914,28.884462356567383,28.98406410217285,29.08366584777832,29.18326759338379,29.282869338989258,29.382469177246094,29.482070922851562,29.58167266845703,29.6812744140625,29.78087615966797,29.880477905273438,29.980079650878906,30.079681396484375,30.179283142089844,30.278884887695312,30.37848663330078,30.47808837890625,30.57769012451172,30.677289962768555,30.776891708374023,30.876493453979492,30.97609519958496,31.07569694519043,31.1752986907959,31.274900436401367,31.374502182006836,31.474103927612305,31.573705673217773,31.673307418823242,31.77290916442871,31.87251091003418,31.972110748291016,32.071712493896484,32.17131423950195,32.27091598510742,32.37051773071289,32.47011947631836,32.56972122192383,32.6693229675293,32.768924713134766,32.868526458740234,32.9681282043457,33.06772994995117,33.16733169555664,33.26693344116211,33.36653518676758,33.46613693237305,33.565738677978516,33.665340423583984,33.76493835449219,33.864540100097656,33.964141845703125,34.063743591308594,34.16334533691406,34.26294708251953,34.362548828125,34.46215057373047,34.56175231933594,34.661354064941406,34.760955810546875,34.860557556152344,34.96015930175781,35.05976104736328,35.15936279296875,35.25896453857422,35.35856628417969,35.458168029785156,35.557769775390625,35.657371520996094,35.75697326660156,35.85657501220703,35.9561767578125,36.05577850341797,36.15538024902344,36.25497817993164,36.35457992553711,36.45418167114258,36.55378341674805,36.653385162353516,36.752986907958984,36.85258865356445,36.95219039916992,37.05179214477539,37.15139389038086,37.25099563598633,37.3505973815918,37.450199127197266,37.549800872802734,37.6494026184082,37.74900436401367,37.84860610961914,37.94820785522461,38.04780960083008,38.14741134643555,38.247013092041016,38.346614837646484,38.44621658325195,38.54581832885742,38.64542007446289,38.74502182006836,38.84461975097656,38.94422149658203,39.0438232421875,39.14342498779297,39.24302673339844,39.342628479003906,39.442230224609375,39.541831970214844,39.64143371582031,39.74103546142578,39.84063720703125,39.94023895263672,40.03984069824219,40.139442443847656,40.239044189453125,40.338645935058594,40.43824768066406,40.53784942626953,40.637451171875,40.73705291748047,40.83665466308594,40.936256408691406,41.035858154296875,41.135459899902344,41.23506164550781,41.334659576416016,41.434261322021484,41.53386306762695,41.63346481323242,41.73306655883789,41.83266830444336,41.93227005004883,42.0318717956543,42.131473541259766,42.231075286865234,42.3306770324707,42.43027877807617,42.52988052368164,42.62948226928711,42.72908401489258,42.82868576049805,42.928287506103516,43.027889251708984,43.12749099731445,43.22709274291992,43.32669448852539,43.42629623413086,43.52589797973633,43.6254997253418,43.725101470947266,43.82469940185547,43.92430114746094,44.023902893066406,44.123504638671875,44.223106384277344,44.32270812988281,44.42230987548828,44.52191162109375,44.62151336669922,44.72111511230469,44.820716857910156,44.920318603515625,45.019920349121094,45.11952209472656,45.21912384033203,45.3187255859375,45.41832733154297,45.51792907714844,45.617530822753906,45.717132568359375,45.816734313964844,45.91633605957031,46.01593780517578,46.11553955078125,46.21514129638672,46.31473922729492,46.41434097290039,46.51394271850586,46.61354446411133,46.7131462097168,46.812747955322266,46.912349700927734,47.0119514465332,47.11155319213867,47.21115493774414,47.31075668334961,47.41035842895508,47.50996017456055,47.609561920166016,47.709163665771484,47.80876541137695,47.90836715698242,48.00796890258789,48.10757064819336,48.20717239379883,48.3067741394043,48.406375885009766,48.505977630615234,48.6055793762207,48.70518112182617,48.804779052734375,48.904380798339844,49.00398254394531,49.10358428955078,49.20318603515625,49.30278778076172,49.40238952636719,49.501991271972656,49.601593017578125,49.701194763183594,49.80079650878906,49.90039825439453,50],"y":[1,-1,1,-1,-1,1,1,1,-1,-1,-1,1,-1,-1,-1,-1,1,-1,1,-1,1,-1,-1,1,-1,-1,-1,1,-1,1,1,-1,1,1,1,1,1,1,-1,1,1,-1,-1,-1,-1,1,1,1,1,-1,1,-1,-1,1,-1,-1,-1,1,-1,1,-1,1,-1,1,1,1,-1,-1,1,1,-1,-1,1,-1,1,-1,1,1,1,-1,-1,-1,-1,1,-1,-1,-1,-1,-1,-1,1,-1,1,-1,-1,-1,1,-1,1,1,1,-1,-1,1,1,1,1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,-1,1,1,-1,1,-1,1,1,1,-1,-1,-1,-1,1,-1,-1,1,1,1,-1,1,1,1,1,1,1,-1,1,1,1,-1,1,-1,-1,1,-1,1,1,-1,-1,-1,-1,1,1,1,-1,-1,1,1,-1,-1,-1,1,1,-1,1,1,1,-1,1,-1,1,1,-1,-1,-1,1,-1,1,-1,-1,1,-1,-1,1,-1,-1,1,-1,-1,-1,-1,-1,-1,1,-1,1,-1,1,1,-1,-1,-1,-1,1,-1,1,1,-1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,-1,1,1,1,-1,-1,1,1,-1,-1,1,-1,-1,-1,-1,1,1,1,1,1,-1,-1,1,1,1,1,-1,1,1,1,-1,-1,1,1,1,-1,1,1,-1,-1,-1,-1,-1,1,-1,1,-1,1,1,1,-1,-1,-1,-1,1,1,1,1,-1,1,1,1,1,-1,1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,-1,1,1,1,1,1,1,-1,1,1,1,-1,1,-1,-1,1,-1,-1,1,-1,1,1,-1,-1,1,1,-1,1,-1,1,-1,1,-1,1,-1,-1,-1,1,-1,-1,1,-1,1,1,1,-1,-1,-1,1,1,1,-1,-1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,-1,-1,1,-1,-1,1,1,1,1,-1,-1,-1,1,1,-1,-1,1,1,1,-1,-1,-1,-1,-1,-1,-1,1,1,-1,1,1,1,1,1,-1,1,-1,-1,-1,1,-1,1,1,-1,1,1,-1,-1,-1,-1,1,-1,-1,1,1,-1,-1,-1,1,-1,1,1,-1,-1,1,1,-1,1,-1,-1,-1,1,1,1,-1,-1,1,-1,-1,1,1,1,-1,1,1,1,-1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,1,1,1,1,1,1,-1,-1,1,1,1,1,1,-1,-1,1,1,1,-1,1,-1,-1,-1,-1,-1,1,-1,-1]} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/tiny_negative.json b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/tiny_negative.json new file mode 100644 index 000000000000..e1072f1bb52e --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/tiny_negative.json @@ -0,0 +1 @@ +{"expected":[0,3.9840636205991774e-22,-7.968127241198355e-22,1.1952191366668511e-21,1.593625448239671e-21,-1.9920318607866866e-21,-2.3904382733337023e-21,-2.788844685880718e-21,3.187250896479342e-21,-3.585657510974749e-21,3.984063721573373e-21,-4.382469932171997e-21,-4.7808765466674046e-21,-5.1792827572660285e-21,5.577689371761436e-21,-5.97609558236006e-21,-6.374501792958684e-21,-6.772908407454091e-21,7.171315021949499e-21,-7.569721232548123e-21,7.968127443146746e-21,-8.36653365374537e-21,-8.764939864343994e-21,-9.163346882736185e-21,-9.561753093334809e-21,9.960159303933433e-21,-1.0358565514532057e-20,-1.0756971725130681e-20,-1.1155378743522872e-20,1.1553784954121496e-20,1.195219116472012e-20,1.2350597375318744e-20,1.2749003585917368e-20,-1.3147410604309558e-20,1.3545816814908182e-20,-1.3944223025506806e-20,1.4342630043898997e-20,-1.4741035446704054e-20,-1.5139442465096245e-20,-1.5537847867901302e-20,1.5936254886293493e-20,1.6334661904685684e-20,1.673306730749074e-20,-1.7131474325882932e-20,-1.752987972868799e-20,-1.792828674708018e-20,1.832669376547237e-20,-1.8725099168277427e-20,-1.9123506186669618e-20,-1.9521911589474675e-20,1.9920318607866866e-20,-2.0318725626259057e-20,-2.0717131029064114e-20,-2.1115538047456305e-20,-2.1513943450261362e-20,2.1912350468653553e-20,-2.2310757487045744e-20,2.27091628898508e-20,-2.3107569908242992e-20,-2.350597531104805e-20,2.390438232944024e-20,2.430278934783243e-20,2.4701194750637487e-20,2.5099601769029678e-20,-2.5498007171834735e-20,-2.5896414190226926e-20,-2.6294821208619117e-20,-2.6693226611424174e-20,-2.7091633629816365e-20,-2.749003903262142e-20,-2.788844605101361e-20,-2.8286853069405804e-20,-2.8685260087797994e-20,-2.908366387501592e-20,-2.948207089340811e-20,2.98804779118003e-20,-3.027888493019249e-20,-3.067729194858468e-20,-3.1075695735802604e-20,3.1474102754194795e-20,3.1872509772586986e-20,3.2270916790979177e-20,-3.266932380937137e-20,-3.306772759658929e-20,3.346613461498148e-20,3.386454163337367e-20,3.4262948651765863e-20,3.4661355670158054e-20,-3.505975945737598e-20,3.545816647576817e-20,-3.585657349416036e-20,3.625498051255255e-20,-3.665338753094474e-20,-3.7051791318162664e-20,-3.7450198336554855e-20,-3.7848605354947046e-20,3.8247012373339237e-20,3.864541939173143e-20,3.904382317894935e-20,3.944223019734154e-20,-3.984063721573373e-20,-4.0239044234125923e-20,-4.0637451252518114e-20,-4.103585503973604e-20,4.143426205812823e-20,4.183266907652042e-20,4.223107609491261e-20,-4.26294831133048e-20,-4.3027886900522724e-20,-4.3426293918914915e-20,4.3824700937307106e-20,4.4223107955699296e-20,-4.462151497409149e-20,4.501991876130941e-20,-4.54183257797016e-20,-4.581673279809379e-20,-4.6215139816485983e-20,-4.6613546834878174e-20,-4.70119506220961e-20,4.741035764048829e-20,-4.780876465888048e-20,-4.820717167727267e-20,4.860557869566486e-20,-4.9003982482882784e-20,-4.9402389501274975e-20,4.9800796519667165e-20,5.0199203538059356e-20,-5.059761055645155e-20,5.099601434366947e-20,5.139442136206166e-20,-5.179282838045385e-20,5.219123539884604e-20,-5.2589642417238234e-20,-5.2988046204456157e-20,-5.338645322284835e-20,-5.378486024124054e-20,5.418326725963273e-20,5.458167427802492e-20,5.498007806524284e-20,-5.53784883148093e-20,-5.577689210202723e-20,-5.617529588924515e-20,5.657370613881161e-20,-5.697210992602953e-20,5.737052017559599e-20,5.776892396281391e-20,5.816732775003183e-20,-5.856573799959829e-20,5.896414178681622e-20,5.936255203638268e-20,5.97609558236006e-20,6.015935961081852e-20,6.055776986038498e-20,-6.09561736476029e-20,6.135458389716936e-20,6.175298768438729e-20,6.215139147160521e-20,-6.254980172117167e-20,-6.294820550838959e-20,6.334661575795605e-20,6.374501954517397e-20,-6.41434233323919e-20,-6.454183358195835e-20,6.494023736917628e-20,-6.533864761874274e-20,6.573705140596066e-20,-6.613545519317858e-20,-6.653386544274504e-20,6.693226922996296e-20,-6.733067947952942e-20,-6.772908326674734e-20,-6.812748705396527e-20,6.852589730353173e-20,6.892430109074965e-20,-6.932271134031611e-20,-6.972111512753403e-20,-7.011951891475195e-20,-7.051792916431841e-20,7.091633295153634e-20,7.13147432011028e-20,-7.171314698832072e-20,7.211155077553864e-20,-7.25099610251051e-20,7.290836481232302e-20,-7.330677506188948e-20,7.37051788491074e-20,7.410358263632533e-20,-7.450199288589179e-20,-7.490039667310971e-20,-7.529880692267617e-20,-7.569721070989409e-20,-7.609561449711201e-20,-7.649402474667847e-20,7.68924285338964e-20,7.729083878346285e-20,-7.768924257068078e-20,7.80876463578987e-20,7.848605660746516e-20,7.888446039468308e-20,7.928287064424954e-20,7.968127443146746e-20,-8.007967821868539e-20,8.047808846825185e-20,8.087649225546977e-20,-8.127490250503623e-20,8.167330629225415e-20,-8.207171007947207e-20,-8.247012032903853e-20,-8.286852411625646e-20,8.326693436582291e-20,8.366533815304084e-20,-8.406374194025876e-20,8.446215218982522e-20,-8.486055597704314e-20,8.52589662266096e-20,8.565737001382752e-20,-8.605577380104545e-20,8.645418405061191e-20,8.685258783782983e-20,8.725099808739629e-20,-8.764940187461421e-20,-8.804780566183213e-20,-8.844621591139859e-20,8.884461969861652e-20,-8.924302994818297e-20,8.96414337354009e-20,9.003983752261882e-20,9.043824777218528e-20,-9.08366515594032e-20,9.123506180896966e-20,9.163346559618758e-20,9.203186938340551e-20,9.243027963297197e-20,9.282868342018989e-20,-9.322709366975635e-20,-9.362549745697427e-20,-9.40239012441922e-20,9.442231149375865e-20,-9.482071528097658e-20,-9.521912553054303e-20,9.561752931776096e-20,-9.601593310497888e-20,-9.641434335454534e-20,-9.681274714176326e-20,-9.721115739132972e-20,9.760956117854764e-20,-9.800796496576557e-20,9.840637521533203e-20,9.880477900254995e-20,9.920318925211641e-20,-9.960159303933433e-20,-9.999999682655225e-20,-1.0039840707611871e-19,1.0079681086333664e-19,-1.011952211129031e-19,1.0159362490012102e-19,1.0199202868733894e-19,1.023904389369054e-19,1.0278884272412332e-19,-1.0318725297368978e-19,-1.035856567609077e-19,1.0398406054812563e-19,-1.0438247079769209e-19,1.0478087458491001e-19,-1.0517928483447647e-19,-1.0557768862169439e-19,-1.0597609240891231e-19,-1.0637450265847877e-19,1.067729064456967e-19,-1.0717131669526315e-19,-1.0756972048248108e-19,-1.07968124269699e-19,1.0836653451926546e-19,-1.0876494476883192e-19,1.0916334855604984e-19,-1.0956175234326776e-19,1.0996015613048569e-19,1.103585599177036e-19,-1.107569766296186e-19,1.1115538041683653e-19,-1.1155378420405445e-19,1.1195218799127237e-19,1.123505917784903e-19,1.127490084904053e-19,-1.1314741227762321e-19,1.1354581606484114e-19,1.1394421985205906e-19,1.1434262363927698e-19,-1.1474104035119198e-19,1.151394441384099e-19,-1.1553784792562782e-19,1.1593625171284575e-19,-1.1633465550006367e-19,1.1673307221197866e-19,-1.1713147599919659e-19,-1.175298797864145e-19,-1.1792828357363243e-19,-1.1832668736085036e-19,-1.1872510407276535e-19,-1.1912350785998327e-19,1.195219116472012e-19,1.1992031543441912e-19,-1.2031871922163704e-19,1.2071713593355204e-19,1.2111553972076996e-19,-1.2151394350798788e-19,-1.219123472952058e-19,-1.2231075108242373e-19,1.2270916779433872e-19,-1.2310757158155665e-19,-1.2350597536877457e-19,1.239043791559925e-19,-1.2430278294321042e-19,-1.247011996551254e-19,1.2509960344234333e-19,1.2549800722956126e-19,-1.2589641101677918e-19,1.262948148039971e-19,-1.266932315159121e-19,-1.2709163530313002e-19,-1.2749003909034794e-19,1.2788844287756587e-19,-1.282868466647838e-19,-1.2868526337669878e-19,-1.290836671639167e-19,1.2948207095113463e-19,1.2988047473835255e-19,-1.3027887852557048e-19,-1.3067729523748547e-19,-1.310756990247034e-19,1.3147410281192132e-19,1.3187250659913924e-19,-1.3227091038635716e-19,1.3266932709827216e-19,1.3306773088549008e-19,1.33466134672708e-19,-1.3386453845992593e-19,-1.3426294224714385e-19,-1.3466135895905884e-19,1.3505976274627677e-19,-1.354581665334947e-19,1.3585657032071261e-19,-1.3625497410793054e-19,-1.3665339081984553e-19,1.3705179460706345e-19,1.3745019839428138e-19,1.378486021814993e-19,-1.3824700596871722e-19,-1.3864542268063222e-19,1.3904382646785014e-19,-1.3944223025506806e-19,-1.3984063404228599e-19,-1.402390378295039e-19,-1.406374545414189e-19,-1.4103585832863683e-19,-1.4143426211585475e-19,1.4183266590307267e-19,1.422310696902906e-19,1.426294864022056e-19,1.4302789018942351e-19,1.4342629397664144e-19,-1.4382469776385936e-19,-1.4422310155107728e-19,-1.4462151826299228e-19,1.450199220502102e-19,-1.4541832583742812e-19,1.4581672962464605e-19,-1.4621513341186397e-19,1.4661355012377896e-19,1.4701195391099689e-19,-1.474103576982148e-19,1.4780876148543273e-19,1.4820716527265066e-19,1.4860558198456565e-19,1.4900398577178357e-19,-1.494023895590015e-19,1.4980079334621942e-19,-1.5019919713343734e-19,1.5059761384535234e-19,-1.5099601763257026e-19,-1.5139442141978818e-19,-1.517928252070061e-19,1.5219122899422403e-19,1.5258964570613902e-19,1.5298804949335695e-19,1.5338645328057487e-19,-1.537848570677928e-19,-1.5418326085501072e-19,1.545816775669257e-19,1.5498008135414363e-19,1.5537848514136156e-19,-1.5577688892857948e-19,-1.561752927157974e-19,-1.565737094277124e-19,-1.5697211321493032e-19,-1.5737051700214824e-19,1.5776892078936617e-19,-1.581673245765841e-19,1.5856574128849908e-19,-1.58964145075717e-19,1.5936254886293493e-19,1.5976095265015285e-19,-1.6015935643737078e-19,1.6055777314928577e-19,-1.609561769365037e-19,-1.6135458072372162e-19,-1.6175298451093954e-19,1.6215138829815746e-19,-1.6254980501007246e-19,-1.6294820879729038e-19,1.633466125845083e-19,-1.6374501637172623e-19,1.6414342015894415e-19,-1.6454183687085914e-19,1.6494024065807707e-19,-1.65338644445295e-19,-1.6573704823251291e-19,1.6613545201973084e-19,-1.6653386873164583e-19,1.6693227251886375e-19,1.6733067630608168e-19,1.677290800932996e-19,1.6812748388051752e-19,-1.6852590059243252e-19,1.6892430437965044e-19,-1.6932270816686836e-19,1.6972111195408629e-19,-1.701195157413042e-19,-1.705179324532192e-19,-1.7091633624043713e-19,-1.7131474002765505e-19,1.7171314381487297e-19,1.721115476020909e-19,-1.725099643140059e-19,1.7290836810122381e-19,-1.7330677188844174e-19,1.7370517567565966e-19,1.7410357946287758e-19,1.7450199617479258e-19,1.749003999620105e-19,1.7529880374922842e-19,-1.7569720753644635e-19,1.7609561132366427e-19,1.7649402803557926e-19,1.7689243182279719e-19,-1.772908356100151e-19,1.7768923939723303e-19,1.7808764318445096e-19,1.7848605989636595e-19,1.7888446368358387e-19,-1.792828674708018e-19,-1.7968127125801972e-19,-1.8007967504523764e-19,-1.8047809175715264e-19,1.8087649554437056e-19,-1.8127489933158848e-19,1.816733031188064e-19,1.8207170690602433e-19,1.8247012361793932e-19,-1.8286852740515725e-19,1.8326693119237517e-19,1.836653349795931e-19,1.8406373876681101e-19,1.84462155478726e-19,-1.8486055926594393e-19,-1.8525896305316186e-19,1.8565736684037978e-19,-1.860557706275977e-19,-1.864541873395127e-19,-1.8685259112673062e-19,-1.8725099491394854e-19,-1.8764939870116646e-19,1.880478024883844e-19,1.8844621920029938e-19,-1.888446229875173e-19,1.8924302677473523e-19,-1.8964143056195315e-19,-1.9003983434917107e-19,1.9043825106108607e-19,-1.90836654848304e-19,-1.9123505863552192e-19,-1.9163346242273984e-19,-1.9203186620995776e-19,-1.9243028292187276e-19,1.9282868670909068e-19,-1.932270904963086e-19,-1.9362549428352652e-19,1.9402389807074445e-19,1.9442231478265944e-19,1.9482071856987737e-19,-1.952191223570953e-19,-1.956175261443132e-19,1.9601592993153113e-19,1.9641434664344613e-19,-1.9681275043066405e-19,1.9721115421788197e-19,1.976095580050999e-19,1.9800796179231782e-19,-1.9840637850423282e-19,-1.9880478229145074e-19,1.9920318607866866e-19,-1.9960158986588658e-19,-1.999999936531045e-19],"p":[-9.999999682655225e-21,-9.980079493294329e-21,-9.960159303933433e-21,-9.940239114572537e-21,-9.920318925211641e-21,-9.900398735850745e-21,-9.880477738696282e-21,-9.860557549335385e-21,-9.840637359974489e-21,-9.820717170613593e-21,-9.800796981252697e-21,-9.7808767918918e-21,-9.760955794737338e-21,-9.741035605376441e-21,-9.721115416015545e-21,-9.701195226654649e-21,-9.681275037293753e-21,-9.661354847932857e-21,-9.64143465857196e-21,-9.621513661417498e-21,-9.601593472056601e-21,-9.581673282695705e-21,-9.561753093334809e-21,-9.541832903973913e-21,-9.521912714613017e-21,-9.501991717458554e-21,-9.482071528097658e-21,-9.462151338736761e-21,-9.442231149375865e-21,-9.422310960014969e-21,-9.402390770654073e-21,-9.38246977349961e-21,-9.362549584138714e-21,-9.342629394777818e-21,-9.322709205416921e-21,-9.302789016056025e-21,-9.282868826695129e-21,-9.262947829540666e-21,-9.24302764017977e-21,-9.223107450818874e-21,-9.203187261457978e-21,-9.183267072097081e-21,-9.163346882736185e-21,-9.143426693375289e-21,-9.123505696220826e-21,-9.10358550685993e-21,-9.083665317499034e-21,-9.063745128138137e-21,-9.043824938777241e-21,-9.023904749416345e-21,-9.003983752261882e-21,-8.984063562900986e-21,-8.96414337354009e-21,-8.944223184179194e-21,-8.924302994818297e-21,-8.904382805457401e-21,-8.884461808302938e-21,-8.864541618942042e-21,-8.844621429581146e-21,-8.82470124022025e-21,-8.804781050859354e-21,-8.784860861498457e-21,-8.764939864343994e-21,-8.745019674983098e-21,-8.725099485622202e-21,-8.705179296261306e-21,-8.68525910690041e-21,-8.665338917539514e-21,-8.645418728178617e-21,-8.625497731024154e-21,-8.605577541663258e-21,-8.585657352302362e-21,-8.565737162941466e-21,-8.54581697358057e-21,-8.525896784219674e-21,-8.50597578706521e-21,-8.486055597704314e-21,-8.466135408343418e-21,-8.446215218982522e-21,-8.426295029621626e-21,-8.40637484026073e-21,-8.386453843106267e-21,-8.36653365374537e-21,-8.346613464384474e-21,-8.326693275023578e-21,-8.306773085662682e-21,-8.286852896301786e-21,-8.266931899147323e-21,-8.247011709786427e-21,-8.22709152042553e-21,-8.207171331064634e-21,-8.187251141703738e-21,-8.167330952342842e-21,-8.147409955188379e-21,-8.127489765827483e-21,-8.107569576466586e-21,-8.08764938710569e-21,-8.067729197744794e-21,-8.047809008383898e-21,-8.027888819023002e-21,-8.007967821868539e-21,-7.988047632507643e-21,-7.968127443146746e-21,-7.94820725378585e-21,-7.928287064424954e-21,-7.908366875064058e-21,-7.888445877909595e-21,-7.868525688548699e-21,-7.848605499187803e-21,-7.828685309826906e-21,-7.80876512046601e-21,-7.788844931105114e-21,-7.768923933950651e-21,-7.749003744589755e-21,-7.729083555228859e-21,-7.709163365867963e-21,-7.689243176507066e-21,-7.66932298714617e-21,-7.649401989991707e-21,-7.629481800630811e-21,-7.609561611269915e-21,-7.589641421909019e-21,-7.569721232548123e-21,-7.549801043187226e-21,-7.52988085382633e-21,-7.509959856671867e-21,-7.490039667310971e-21,-7.470119477950075e-21,-7.450199288589179e-21,-7.430279099228283e-21,-7.410358909867386e-21,-7.390437912712923e-21,-7.370517723352027e-21,-7.350597533991131e-21,-7.330677344630235e-21,-7.310757155269339e-21,-7.290836965908442e-21,-7.27091596875398e-21,-7.250995779393083e-21,-7.231075590032187e-21,-7.211155400671291e-21,-7.191235211310395e-21,-7.171315021949499e-21,-7.151394024795035e-21,-7.13147383543414e-21,-7.111553646073243e-21,-7.091633456712347e-21,-7.071713267351451e-21,-7.051793077990555e-21,-7.031872888629659e-21,-7.011951891475195e-21,-6.9920317021143e-21,-6.972111512753403e-21,-6.952191323392507e-21,-6.932271134031611e-21,-6.912350944670715e-21,-6.892429947516252e-21,-6.872509758155355e-21,-6.85258956879446e-21,-6.832669379433563e-21,-6.812749190072667e-21,-6.792829000711771e-21,-6.772908407454091e-21,-6.752988218093195e-21,-6.7330676248355154e-21,-6.713147435474619e-21,-6.693227246113723e-21,-6.6733066528560435e-21,-6.653386463495147e-21,-6.633466274134251e-21,-6.6135456808765715e-21,-6.5936254915156754e-21,-6.573705302154779e-21,-6.5537847088970996e-21,-6.5338645195362034e-21,-6.513944330175307e-21,-6.494023736917628e-21,-6.4741035475567315e-21,-6.454183358195835e-21,-6.434262764938156e-21,-6.4143425755772596e-21,-6.3944223862163634e-21,-6.374501792958684e-21,-6.354581603597788e-21,-6.3346614142368915e-21,-6.314741224875995e-21,-6.294820631618316e-21,-6.2749004422574195e-21,-6.2549802528965234e-21,-6.235059659638844e-21,-6.2151394702779476e-21,-6.1952192809170514e-21,-6.175298687659372e-21,-6.155378498298476e-21,-6.1354583089375795e-21,-6.1155377156799e-21,-6.095617526319004e-21,-6.0756973369581076e-21,-6.055776743700428e-21,-6.035856554339532e-21,-6.015936364978636e-21,-5.996015771720956e-21,-5.97609558236006e-21,-5.956175392999164e-21,-5.936254799741484e-21,-5.916334610380588e-21,-5.896414421019692e-21,-5.876493827762012e-21,-5.856573638401116e-21,-5.83665344904022e-21,-5.816733259679324e-21,-5.796812666421644e-21,-5.776892477060748e-21,-5.756972287699852e-21,-5.737051694442172e-21,-5.717131505081276e-21,-5.69721131572038e-21,-5.6772907224627e-21,-5.657370533101804e-21,-5.637450343740908e-21,-5.617529750483228e-21,-5.597609561122332e-21,-5.577689371761436e-21,-5.557768778503756e-21,-5.53784858914286e-21,-5.517928399781964e-21,-5.498007806524284e-21,-5.478087617163388e-21,-5.458167427802492e-21,-5.4382468345448124e-21,-5.418326645183916e-21,-5.39840645582302e-21,-5.3784858625653405e-21,-5.358565673204444e-21,-5.338645483843548e-21,-5.318725294482652e-21,-5.2988047012249724e-21,-5.278884511864076e-21,-5.25896432250318e-21,-5.2390437292455004e-21,-5.219123539884604e-21,-5.199203350523708e-21,-5.1792827572660285e-21,-5.159362567905132e-21,-5.139442378544236e-21,-5.1195217852865566e-21,-5.0996015959256604e-21,-5.079681406564764e-21,-5.059760813307085e-21,-5.0398406239461885e-21,-5.019920434585292e-21,-4.999999841327613e-21,-4.9800796519667165e-21,-4.9601594626058204e-21,-4.940238869348141e-21,-4.9203186799872446e-21,-4.9003984906263484e-21,-4.880477897368669e-21,-4.860557708007773e-21,-4.8406375186468765e-21,-4.82071732928598e-21,-4.800796736028301e-21,-4.7808765466674046e-21,-4.7609563573065084e-21,-4.741035764048829e-21,-4.721115574687933e-21,-4.7011953853270365e-21,-4.681274792069357e-21,-4.661354602708461e-21,-4.6414344133475645e-21,-4.621513820089885e-21,-4.601593630728989e-21,-4.5816734413680926e-21,-4.561752848110413e-21,-4.541832658749517e-21,-4.521912469388621e-21,-4.501991876130941e-21,-4.482071686770045e-21,-4.462151497409149e-21,-4.442230904151469e-21,-4.422310714790573e-21,-4.402390525429677e-21,-4.382469932171997e-21,-4.362549742811101e-21,-4.342629553450205e-21,-4.322709364089309e-21,-4.302788770831629e-21,-4.282868581470733e-21,-4.262948392109837e-21,-4.243027798852157e-21,-4.223107609491261e-21,-4.203187420130365e-21,-4.183266826872685e-21,-4.163346637511789e-21,-4.143426448150893e-21,-4.123505854893213e-21,-4.103585665532317e-21,-4.083665476171421e-21,-4.063744882913741e-21,-4.043824693552845e-21,-4.023904504191949e-21,-4.0039839109342694e-21,-3.984063721573373e-21,-3.964143532212477e-21,-3.9442229389547974e-21,-3.924302749593901e-21,-3.904382560233005e-21,-3.8844619669753255e-21,-3.864541777614429e-21,-3.844621588253533e-21,-3.8247009949958536e-21,-3.8047808056349574e-21,-3.784860616274061e-21,-3.764940426913165e-21,-3.7450198336554855e-21,-3.725099644294589e-21,-3.705179454933693e-21,-3.6852588616760135e-21,-3.6653386723151174e-21,-3.645418482954221e-21,-3.6254978896965416e-21,-3.6055777003356455e-21,-3.585657510974749e-21,-3.56573691771707e-21,-3.5458167283561735e-21,-3.525896538995277e-21,-3.505975945737598e-21,-3.4860557563767016e-21,-3.4661355670158054e-21,-3.446214973758126e-21,-3.42629478439723e-21,-3.4063745950363335e-21,-3.3864542037270456e-21,-3.3665338124177577e-21,-3.3466136230568615e-21,-3.3266932317475737e-21,-3.3067728404382858e-21,-3.2868526510773896e-21,-3.2669322597681017e-21,-3.247011868458814e-21,-3.2270916790979177e-21,-3.2071712877886298e-21,-3.187250896479342e-21,-3.1673307071184457e-21,-3.147410315809158e-21,-3.1274901264482617e-21,-3.1075697351389738e-21,-3.087649343829686e-21,-3.0677291544687898e-21,-3.047808763159502e-21,-3.027888371850214e-21,-3.007968182489318e-21,-2.98804779118003e-21,-2.968127399870742e-21,-2.948207210509846e-21,-2.928286819200558e-21,-2.908366629839662e-21,-2.888446238530374e-21,-2.868525847221086e-21,-2.84860565786019e-21,-2.828685266550902e-21,-2.808764875241614e-21,-2.788844685880718e-21,-2.76892429457143e-21,-2.749003903262142e-21,-2.729083713901246e-21,-2.709163322591958e-21,-2.6892429312826702e-21,-2.669322741921774e-21,-2.6494023506124862e-21,-2.62948216125159e-21,-2.609561769942302e-21,-2.5896413786330143e-21,-2.569721189272118e-21,-2.5498007979628302e-21,-2.5298804066535423e-21,-2.509960217292646e-21,-2.4900398259833583e-21,-2.4701194346740704e-21,-2.4501992453131742e-21,-2.4302788540038863e-21,-2.41035866464299e-21,-2.3904382733337023e-21,-2.3705178820244144e-21,-2.3505976926635182e-21,-2.3306773013542303e-21,-2.3107569100449425e-21,-2.2908367206840463e-21,-2.2709163293747584e-21,-2.2509959380654705e-21,-2.2310757487045744e-21,-2.2111553573952865e-21,-2.1912349660859986e-21,-2.1713147767251024e-21,-2.1513943854158145e-21,-2.1314741960549184e-21,-2.1115538047456305e-21,-2.0916334134363426e-21,-2.0717132240754464e-21,-2.0517928327661586e-21,-2.0318724414568707e-21,-2.0119522520959745e-21,-1.9920318607866866e-21,-1.9721114694773987e-21,-1.9521912801165026e-21,-1.9322708888072147e-21,-1.9123504974979268e-21,-1.8924303081370306e-21,-1.8725099168277427e-21,-1.8525897274668466e-21,-1.8326693361575587e-21,-1.8127489448482708e-21,-1.7928287554873746e-21,-1.7729083641780868e-21,-1.752987972868799e-21,-1.7330677835079027e-21,-1.713147392198615e-21,-1.6932271018635228e-21,-1.6733068115284308e-21,-1.6533864202191429e-21,-1.6334661298840509e-21,-1.6135458395489588e-21,-1.593625448239671e-21,-1.573705157904579e-21,-1.5537848675694869e-21,-1.5338645772343949e-21,-1.513944185925107e-21,-1.494023895590015e-21,-1.474103605254923e-21,-1.454183314919831e-21,-1.434262923610543e-21,-1.414342633275451e-21,-1.394422342940359e-21,-1.374501951631071e-21,-1.354581661295979e-21,-1.334661370960887e-21,-1.314741080625795e-21,-1.2948206893165071e-21,-1.2749003989814151e-21,-1.254980108646323e-21,-1.2350597173370352e-21,-1.2151394270019432e-21,-1.1952191366668511e-21,-1.1752988463317591e-21,-1.1553784550224712e-21,-1.1354581646873792e-21,-1.1155378743522872e-21,-1.0956174830429993e-21,-1.0756971927079073e-21,-1.0557769023728152e-21,-1.0358566120377232e-21,-1.0159362207284353e-21,-9.960159303933433e-22,-9.760956400582513e-22,-9.561752487489634e-22,-9.362549584138714e-22,-9.163346680787793e-22,-8.964143777436873e-22,-8.764939864343994e-22,-8.565736960993074e-22,-8.366534057642154e-22,-8.167330649420254e-22,-7.968127241198355e-22,-7.7689243378474345e-22,-7.569720929625535e-22,-7.370518026274615e-22,-7.171314618052715e-22,-6.972111714701795e-22,-6.772908306479895e-22,-6.573705403128975e-22,-6.3745019949070755e-22,-6.175298586685176e-22,-5.976095683334256e-22,-5.776892275112356e-22,-5.577689371761436e-22,-5.378485963539536e-22,-5.179283060188616e-22,-4.980079651966717e-22,-4.780876243744817e-22,-4.581673340393897e-22,-4.382469932171997e-22,-4.183267028821077e-22,-3.9840636205991774e-22,-3.7848604648127675e-22,-3.5856573090263576e-22,-3.3864541532399477e-22,-3.1872509974535378e-22,-2.988047841667128e-22,-2.788844685880718e-22,-2.589641530094308e-22,-2.3904381218724085e-22,-2.1912349660859986e-22,-1.9920318102995887e-22,-1.7928286545131788e-22,-1.5936254987267689e-22,-1.394422342940359e-22,-1.1952190609362042e-22,-9.960159051497943e-23,-7.968127493633844e-23,-5.976095304681021e-23,-3.984063746816922e-23,-1.992031873408461e-23,0],"t":[0,0.009960159659385681,0.019920319318771362,0.029880478978157043,0.039840638637542725,0.049800798296928406,0.05976095795631409,0.06972111761569977,0.07968127727508545,0.08964143693447113,0.09960159659385681,0.10956175625324249,0.11952191591262817,0.12948207557201385,0.13944223523139954,0.14940239489078522,0.1593625545501709,0.16932271420955658,0.17928287386894226,0.18924303352832794,0.19920319318771362,0.2091633528470993,0.21912351250648499,0.22908367216587067,0.23904383182525635,0.24900399148464203,0.2589641511440277,0.2689242959022522,0.2788844704627991,0.28884461522102356,0.29880478978157043,0.3087649345397949,0.3187251091003418,0.3286852538585663,0.33864542841911316,0.34860557317733765,0.3585657477378845,0.368525892496109,0.3784860670566559,0.38844621181488037,0.39840638637542725,0.40836653113365173,0.4183267056941986,0.4282868504524231,0.43824702501296997,0.44820716977119446,0.45816734433174133,0.4681274890899658,0.4780876636505127,0.4880478084087372,0.49800798296928406,0.5079681277275085,0.5179283022880554,0.5278884172439575,0.5378485918045044,0.5478087663650513,0.5577689409255981,0.5677290558815002,0.5776892304420471,0.587649405002594,0.5976095795631409,0.607569694519043,0.6175298690795898,0.6274900436401367,0.6374502182006836,0.6474103331565857,0.6573705077171326,0.6673306822776794,0.6772908568382263,0.6872509717941284,0.6972111463546753,0.7071713209152222,0.717131495475769,0.7270916104316711,0.737051784992218,0.7470119595527649,0.7569721341133118,0.7669322490692139,0.7768924236297607,0.7868525981903076,0.7968127727508545,0.8067728877067566,0.8167330622673035,0.8266932368278503,0.8366534113883972,0.8466135263442993,0.8565737009048462,0.8665338754653931,0.8764940500259399,0.886454164981842,0.8964143395423889,0.9063745141029358,0.9163346886634827,0.9262948036193848,0.9362549781799316,0.9462151527404785,0.9561753273010254,0.9661354422569275,0.9760956168174744,0.9860557913780212,0.9960159659385681,1.0059760808944702,1.015936255455017,1.025896430015564,1.0358566045761108,1.0458167791366577,1.055776834487915,1.065737009048462,1.0756971836090088,1.0856573581695557,1.0956175327301025,1.1055777072906494,1.1155378818511963,1.1254980564117432,1.1354581117630005,1.1454182863235474,1.1553784608840942,1.1653386354446411,1.175298810005188,1.1852589845657349,1.1952191591262817,1.2051793336868286,1.215139389038086,1.2250995635986328,1.2350597381591797,1.2450199127197266,1.2549800872802734,1.2649402618408203,1.2749004364013672,1.284860610961914,1.2948206663131714,1.3047808408737183,1.3147410154342651,1.324701189994812,1.3346613645553589,1.3446215391159058,1.3545817136764526,1.3645418882369995,1.3745019435882568,1.3844621181488037,1.3944222927093506,1.4043824672698975,1.4143426418304443,1.4243028163909912,1.434262990951538,1.444223165512085,1.4541832208633423,1.4641433954238892,1.474103569984436,1.484063744544983,1.4940239191055298,1.5039840936660767,1.5139442682266235,1.5239043235778809,1.5338644981384277,1.5438246726989746,1.5537848472595215,1.5637450218200684,1.5737051963806152,1.583665370941162,1.593625545501709,1.6035856008529663,1.6135457754135132,1.62350594997406,1.633466124534607,1.6434262990951538,1.6533864736557007,1.6633466482162476,1.6733068227767944,1.6832668781280518,1.6932270526885986,1.7031872272491455,1.7131474018096924,1.7231075763702393,1.7330677509307861,1.743027925491333,1.7529881000518799,1.7629481554031372,1.772908329963684,1.782868504524231,1.7928286790847778,1.8027888536453247,1.8127490282058716,1.8227092027664185,1.8326693773269653,1.8426294326782227,1.8525896072387695,1.8625497817993164,1.8725099563598633,1.8824701309204102,1.892430305480957,1.902390480041504,1.9123506546020508,1.922310709953308,1.932270884513855,1.9422310590744019,1.9521912336349487,1.9621514081954956,1.9721115827560425,1.9820717573165894,1.9920319318771362,2.0019919872283936,2.0119521617889404,2.0219123363494873,2.031872510910034,2.041832685470581,2.051792860031128,2.061753034591675,2.0717132091522217,2.0816733837127686,2.0916335582733154,2.1015937328338623,2.11155366897583,2.121513843536377,2.131474018096924,2.1414341926574707,2.1513943672180176,2.1613545417785645,2.1713147163391113,2.181274890899658,2.191235065460205,2.201195240020752,2.211155414581299,2.2211155891418457,2.2310757637023926,2.2410359382629395,2.2509961128234863,2.260956287384033,2.270916223526001,2.280876398086548,2.2908365726470947,2.3007967472076416,2.3107569217681885,2.3207170963287354,2.3306772708892822,2.340637445449829,2.350597620010376,2.360557794570923,2.3705179691314697,2.3804781436920166,2.3904383182525635,2.4003984928131104,2.4103586673736572,2.420318841934204,2.430278778076172,2.4402389526367188,2.4501991271972656,2.4601593017578125,2.4701194763183594,2.4800796508789062,2.490039825439453,2.5,2.509960174560547,2.5199203491210938,2.5298805236816406,2.5398406982421875,2.5498008728027344,2.5597610473632812,2.569721221923828,2.579681158065796,2.5896413326263428,2.5996015071868896,2.6095616817474365,2.6195218563079834,2.6294820308685303,2.639442205429077,2.649402379989624,2.659362554550171,2.6693227291107178,2.6792829036712646,2.6892430782318115,2.6992032527923584,2.7091634273529053,2.719123601913452,2.729083776473999,2.739043712615967,2.7490038871765137,2.7589640617370605,2.7689242362976074,2.7788844108581543,2.788844585418701,2.798804759979248,2.808764934539795,2.818725109100342,2.8286852836608887,2.8386454582214355,2.8486056327819824,2.8585658073425293,2.868525981903076,2.878486156463623,2.88844633102417,2.8984062671661377,2.9083664417266846,2.9183266162872314,2.9282867908477783,2.938246965408325,2.948207139968872,2.958167314529419,2.968127489089966,2.9780876636505127,2.9880478382110596,2.9980080127716064,3.0079681873321533,3.0179283618927,3.027888536453247,3.037848711013794,3.0478086471557617,3.0577688217163086,3.0677289962768555,3.0776891708374023,3.087649345397949,3.097609519958496,3.107569694519043,3.11752986907959,3.1274900436401367,3.1374502182006836,3.1474103927612305,3.1573705673217773,3.167330741882324,3.177290916442871,3.187251091003418,3.197211265563965,3.2071712017059326,3.2171313762664795,3.2270915508270264,3.2370517253875732,3.24701189994812,3.256972074508667,3.266932249069214,3.2768924236297607,3.2868525981903076,3.2968127727508545,3.3067729473114014,3.3167331218719482,3.326693296432495,3.336653470993042,3.346613645553589,3.3565738201141357,3.3665337562561035,3.3764939308166504,3.3864541053771973,3.396414279937744,3.406374454498291,3.416334629058838,3.4262948036193848,3.4362549781799316,3.4462151527404785,3.4561753273010254,3.4661355018615723,3.476095676422119,3.486055850982666,3.496016025543213,3.5059762001037598,3.5159361362457275,3.5258963108062744,3.5358564853668213,3.545816659927368,3.555776834487915,3.565737009048462,3.575697183609009,3.5856573581695557,3.5956175327301025,3.6055777072906494,3.6155378818511963,3.625498056411743,3.63545823097229,3.645418405532837,3.655378580093384,3.6653387546539307,3.6752986907958984,3.6852588653564453,3.695219039916992,3.705179214477539,3.715139389038086,3.725099563598633,3.7350597381591797,3.7450199127197266,3.7549800872802734,3.7649402618408203,3.774900436401367,3.784860610961914,3.794820785522461,3.804780960083008,3.8147411346435547,3.8247013092041016,3.8346612453460693,3.844621419906616,3.854581594467163,3.86454176902771,3.874501943588257,3.8844621181488037,3.8944222927093506,3.9043824672698975,3.9143426418304443,3.924302816390991,3.934262990951538,3.944223165512085,3.954183340072632,3.9641435146331787,3.9741036891937256,3.9840638637542725,3.9940237998962402,4.003983974456787,4.013944149017334,4.023904323577881,4.033864498138428,4.043824672698975,4.0537848472595215,4.063745021820068,4.073705196380615,4.083665370941162,4.093625545501709,4.103585720062256,4.113545894622803,4.12350606918335,4.1334662437438965,4.143426418304443,4.15338659286499,4.163346767425537,4.173306941986084,4.183267116546631,4.193227291107178,4.203187465667725,4.2131476402282715,4.22310733795166,4.233067512512207,4.243027687072754,4.252987861633301,4.262948036193848,4.2729082107543945,4.282868385314941,4.292828559875488,4.302788734436035,4.312748908996582,4.322709083557129,4.332669258117676,4.342629432678223,4.3525896072387695,4.362549781799316,4.372509956359863,4.38247013092041,4.392430305480957,4.402390480041504,4.412350654602051,4.422310829162598,4.4322710037231445,4.442231178283691,4.452191352844238,4.462151527404785,4.472111701965332,4.482071876525879,4.492032051086426,4.501992225646973,4.5119524002075195,4.521912574768066,4.531872272491455,4.541832447052002,4.551792621612549,4.561752796173096,4.571712970733643,4.5816731452941895,4.591633319854736,4.601593494415283,4.61155366897583,4.621513843536377,4.631474018096924,4.641434192657471,4.651394367218018,4.6613545417785645,4.671314716339111,4.681274890899658,4.691235065460205,4.701195240020752,4.711155414581299,4.721115589141846,4.731075763702393,4.7410359382629395,4.750996112823486,4.760956287384033,4.77091646194458,4.780876636505127,4.790836811065674,4.800796985626221,4.810757160186768,4.8207173347473145,4.830677509307861,4.840637683868408,4.850597381591797,4.860557556152344,4.870517730712891,4.8804779052734375,4.890438079833984,4.900398254394531,4.910358428955078,4.920318603515625,4.930278778076172,4.940238952636719,4.950199127197266,4.9601593017578125,4.970119476318359,4.980079650878906,4.990039825439453,5],"x":[0,-3.9840636205991774e-22,-7.968127241198355e-22,-1.1952191366668511e-21,-1.593625448239671e-21,-1.9920318607866866e-21,-2.3904382733337023e-21,-2.788844685880718e-21,-3.187250896479342e-21,-3.585657510974749e-21,-3.984063721573373e-21,-4.382469932171997e-21,-4.7808765466674046e-21,-5.1792827572660285e-21,-5.577689371761436e-21,-5.97609558236006e-21,-6.374501792958684e-21,-6.772908407454091e-21,-7.171315021949499e-21,-7.569721232548123e-21,-7.968127443146746e-21,-8.36653365374537e-21,-8.764939864343994e-21,-9.163346882736185e-21,-9.561753093334809e-21,-9.960159303933433e-21,-1.0358565514532057e-20,-1.0756971725130681e-20,-1.1155378743522872e-20,-1.1553784954121496e-20,-1.195219116472012e-20,-1.2350597375318744e-20,-1.2749003585917368e-20,-1.3147410604309558e-20,-1.3545816814908182e-20,-1.3944223025506806e-20,-1.4342630043898997e-20,-1.4741035446704054e-20,-1.5139442465096245e-20,-1.5537847867901302e-20,-1.5936254886293493e-20,-1.6334661904685684e-20,-1.673306730749074e-20,-1.7131474325882932e-20,-1.752987972868799e-20,-1.792828674708018e-20,-1.832669376547237e-20,-1.8725099168277427e-20,-1.9123506186669618e-20,-1.9521911589474675e-20,-1.9920318607866866e-20,-2.0318725626259057e-20,-2.0717131029064114e-20,-2.1115538047456305e-20,-2.1513943450261362e-20,-2.1912350468653553e-20,-2.2310757487045744e-20,-2.27091628898508e-20,-2.3107569908242992e-20,-2.350597531104805e-20,-2.390438232944024e-20,-2.430278934783243e-20,-2.4701194750637487e-20,-2.5099601769029678e-20,-2.5498007171834735e-20,-2.5896414190226926e-20,-2.6294821208619117e-20,-2.6693226611424174e-20,-2.7091633629816365e-20,-2.749003903262142e-20,-2.788844605101361e-20,-2.8286853069405804e-20,-2.8685260087797994e-20,-2.908366387501592e-20,-2.948207089340811e-20,-2.98804779118003e-20,-3.027888493019249e-20,-3.067729194858468e-20,-3.1075695735802604e-20,-3.1474102754194795e-20,-3.1872509772586986e-20,-3.2270916790979177e-20,-3.266932380937137e-20,-3.306772759658929e-20,-3.346613461498148e-20,-3.386454163337367e-20,-3.4262948651765863e-20,-3.4661355670158054e-20,-3.505975945737598e-20,-3.545816647576817e-20,-3.585657349416036e-20,-3.625498051255255e-20,-3.665338753094474e-20,-3.7051791318162664e-20,-3.7450198336554855e-20,-3.7848605354947046e-20,-3.8247012373339237e-20,-3.864541939173143e-20,-3.904382317894935e-20,-3.944223019734154e-20,-3.984063721573373e-20,-4.0239044234125923e-20,-4.0637451252518114e-20,-4.103585503973604e-20,-4.143426205812823e-20,-4.183266907652042e-20,-4.223107609491261e-20,-4.26294831133048e-20,-4.3027886900522724e-20,-4.3426293918914915e-20,-4.3824700937307106e-20,-4.4223107955699296e-20,-4.462151497409149e-20,-4.501991876130941e-20,-4.54183257797016e-20,-4.581673279809379e-20,-4.6215139816485983e-20,-4.6613546834878174e-20,-4.70119506220961e-20,-4.741035764048829e-20,-4.780876465888048e-20,-4.820717167727267e-20,-4.860557869566486e-20,-4.9003982482882784e-20,-4.9402389501274975e-20,-4.9800796519667165e-20,-5.0199203538059356e-20,-5.059761055645155e-20,-5.099601434366947e-20,-5.139442136206166e-20,-5.179282838045385e-20,-5.219123539884604e-20,-5.2589642417238234e-20,-5.2988046204456157e-20,-5.338645322284835e-20,-5.378486024124054e-20,-5.418326725963273e-20,-5.458167427802492e-20,-5.498007806524284e-20,-5.53784883148093e-20,-5.577689210202723e-20,-5.617529588924515e-20,-5.657370613881161e-20,-5.697210992602953e-20,-5.737052017559599e-20,-5.776892396281391e-20,-5.816732775003183e-20,-5.856573799959829e-20,-5.896414178681622e-20,-5.936255203638268e-20,-5.97609558236006e-20,-6.015935961081852e-20,-6.055776986038498e-20,-6.09561736476029e-20,-6.135458389716936e-20,-6.175298768438729e-20,-6.215139147160521e-20,-6.254980172117167e-20,-6.294820550838959e-20,-6.334661575795605e-20,-6.374501954517397e-20,-6.41434233323919e-20,-6.454183358195835e-20,-6.494023736917628e-20,-6.533864761874274e-20,-6.573705140596066e-20,-6.613545519317858e-20,-6.653386544274504e-20,-6.693226922996296e-20,-6.733067947952942e-20,-6.772908326674734e-20,-6.812748705396527e-20,-6.852589730353173e-20,-6.892430109074965e-20,-6.932271134031611e-20,-6.972111512753403e-20,-7.011951891475195e-20,-7.051792916431841e-20,-7.091633295153634e-20,-7.13147432011028e-20,-7.171314698832072e-20,-7.211155077553864e-20,-7.25099610251051e-20,-7.290836481232302e-20,-7.330677506188948e-20,-7.37051788491074e-20,-7.410358263632533e-20,-7.450199288589179e-20,-7.490039667310971e-20,-7.529880692267617e-20,-7.569721070989409e-20,-7.609561449711201e-20,-7.649402474667847e-20,-7.68924285338964e-20,-7.729083878346285e-20,-7.768924257068078e-20,-7.80876463578987e-20,-7.848605660746516e-20,-7.888446039468308e-20,-7.928287064424954e-20,-7.968127443146746e-20,-8.007967821868539e-20,-8.047808846825185e-20,-8.087649225546977e-20,-8.127490250503623e-20,-8.167330629225415e-20,-8.207171007947207e-20,-8.247012032903853e-20,-8.286852411625646e-20,-8.326693436582291e-20,-8.366533815304084e-20,-8.406374194025876e-20,-8.446215218982522e-20,-8.486055597704314e-20,-8.52589662266096e-20,-8.565737001382752e-20,-8.605577380104545e-20,-8.645418405061191e-20,-8.685258783782983e-20,-8.725099808739629e-20,-8.764940187461421e-20,-8.804780566183213e-20,-8.844621591139859e-20,-8.884461969861652e-20,-8.924302994818297e-20,-8.96414337354009e-20,-9.003983752261882e-20,-9.043824777218528e-20,-9.08366515594032e-20,-9.123506180896966e-20,-9.163346559618758e-20,-9.203186938340551e-20,-9.243027963297197e-20,-9.282868342018989e-20,-9.322709366975635e-20,-9.362549745697427e-20,-9.40239012441922e-20,-9.442231149375865e-20,-9.482071528097658e-20,-9.521912553054303e-20,-9.561752931776096e-20,-9.601593310497888e-20,-9.641434335454534e-20,-9.681274714176326e-20,-9.721115739132972e-20,-9.760956117854764e-20,-9.800796496576557e-20,-9.840637521533203e-20,-9.880477900254995e-20,-9.920318925211641e-20,-9.960159303933433e-20,-9.999999682655225e-20,-1.0039840707611871e-19,-1.0079681086333664e-19,-1.011952211129031e-19,-1.0159362490012102e-19,-1.0199202868733894e-19,-1.023904389369054e-19,-1.0278884272412332e-19,-1.0318725297368978e-19,-1.035856567609077e-19,-1.0398406054812563e-19,-1.0438247079769209e-19,-1.0478087458491001e-19,-1.0517928483447647e-19,-1.0557768862169439e-19,-1.0597609240891231e-19,-1.0637450265847877e-19,-1.067729064456967e-19,-1.0717131669526315e-19,-1.0756972048248108e-19,-1.07968124269699e-19,-1.0836653451926546e-19,-1.0876494476883192e-19,-1.0916334855604984e-19,-1.0956175234326776e-19,-1.0996015613048569e-19,-1.103585599177036e-19,-1.107569766296186e-19,-1.1115538041683653e-19,-1.1155378420405445e-19,-1.1195218799127237e-19,-1.123505917784903e-19,-1.127490084904053e-19,-1.1314741227762321e-19,-1.1354581606484114e-19,-1.1394421985205906e-19,-1.1434262363927698e-19,-1.1474104035119198e-19,-1.151394441384099e-19,-1.1553784792562782e-19,-1.1593625171284575e-19,-1.1633465550006367e-19,-1.1673307221197866e-19,-1.1713147599919659e-19,-1.175298797864145e-19,-1.1792828357363243e-19,-1.1832668736085036e-19,-1.1872510407276535e-19,-1.1912350785998327e-19,-1.195219116472012e-19,-1.1992031543441912e-19,-1.2031871922163704e-19,-1.2071713593355204e-19,-1.2111553972076996e-19,-1.2151394350798788e-19,-1.219123472952058e-19,-1.2231075108242373e-19,-1.2270916779433872e-19,-1.2310757158155665e-19,-1.2350597536877457e-19,-1.239043791559925e-19,-1.2430278294321042e-19,-1.247011996551254e-19,-1.2509960344234333e-19,-1.2549800722956126e-19,-1.2589641101677918e-19,-1.262948148039971e-19,-1.266932315159121e-19,-1.2709163530313002e-19,-1.2749003909034794e-19,-1.2788844287756587e-19,-1.282868466647838e-19,-1.2868526337669878e-19,-1.290836671639167e-19,-1.2948207095113463e-19,-1.2988047473835255e-19,-1.3027887852557048e-19,-1.3067729523748547e-19,-1.310756990247034e-19,-1.3147410281192132e-19,-1.3187250659913924e-19,-1.3227091038635716e-19,-1.3266932709827216e-19,-1.3306773088549008e-19,-1.33466134672708e-19,-1.3386453845992593e-19,-1.3426294224714385e-19,-1.3466135895905884e-19,-1.3505976274627677e-19,-1.354581665334947e-19,-1.3585657032071261e-19,-1.3625497410793054e-19,-1.3665339081984553e-19,-1.3705179460706345e-19,-1.3745019839428138e-19,-1.378486021814993e-19,-1.3824700596871722e-19,-1.3864542268063222e-19,-1.3904382646785014e-19,-1.3944223025506806e-19,-1.3984063404228599e-19,-1.402390378295039e-19,-1.406374545414189e-19,-1.4103585832863683e-19,-1.4143426211585475e-19,-1.4183266590307267e-19,-1.422310696902906e-19,-1.426294864022056e-19,-1.4302789018942351e-19,-1.4342629397664144e-19,-1.4382469776385936e-19,-1.4422310155107728e-19,-1.4462151826299228e-19,-1.450199220502102e-19,-1.4541832583742812e-19,-1.4581672962464605e-19,-1.4621513341186397e-19,-1.4661355012377896e-19,-1.4701195391099689e-19,-1.474103576982148e-19,-1.4780876148543273e-19,-1.4820716527265066e-19,-1.4860558198456565e-19,-1.4900398577178357e-19,-1.494023895590015e-19,-1.4980079334621942e-19,-1.5019919713343734e-19,-1.5059761384535234e-19,-1.5099601763257026e-19,-1.5139442141978818e-19,-1.517928252070061e-19,-1.5219122899422403e-19,-1.5258964570613902e-19,-1.5298804949335695e-19,-1.5338645328057487e-19,-1.537848570677928e-19,-1.5418326085501072e-19,-1.545816775669257e-19,-1.5498008135414363e-19,-1.5537848514136156e-19,-1.5577688892857948e-19,-1.561752927157974e-19,-1.565737094277124e-19,-1.5697211321493032e-19,-1.5737051700214824e-19,-1.5776892078936617e-19,-1.581673245765841e-19,-1.5856574128849908e-19,-1.58964145075717e-19,-1.5936254886293493e-19,-1.5976095265015285e-19,-1.6015935643737078e-19,-1.6055777314928577e-19,-1.609561769365037e-19,-1.6135458072372162e-19,-1.6175298451093954e-19,-1.6215138829815746e-19,-1.6254980501007246e-19,-1.6294820879729038e-19,-1.633466125845083e-19,-1.6374501637172623e-19,-1.6414342015894415e-19,-1.6454183687085914e-19,-1.6494024065807707e-19,-1.65338644445295e-19,-1.6573704823251291e-19,-1.6613545201973084e-19,-1.6653386873164583e-19,-1.6693227251886375e-19,-1.6733067630608168e-19,-1.677290800932996e-19,-1.6812748388051752e-19,-1.6852590059243252e-19,-1.6892430437965044e-19,-1.6932270816686836e-19,-1.6972111195408629e-19,-1.701195157413042e-19,-1.705179324532192e-19,-1.7091633624043713e-19,-1.7131474002765505e-19,-1.7171314381487297e-19,-1.721115476020909e-19,-1.725099643140059e-19,-1.7290836810122381e-19,-1.7330677188844174e-19,-1.7370517567565966e-19,-1.7410357946287758e-19,-1.7450199617479258e-19,-1.749003999620105e-19,-1.7529880374922842e-19,-1.7569720753644635e-19,-1.7609561132366427e-19,-1.7649402803557926e-19,-1.7689243182279719e-19,-1.772908356100151e-19,-1.7768923939723303e-19,-1.7808764318445096e-19,-1.7848605989636595e-19,-1.7888446368358387e-19,-1.792828674708018e-19,-1.7968127125801972e-19,-1.8007967504523764e-19,-1.8047809175715264e-19,-1.8087649554437056e-19,-1.8127489933158848e-19,-1.816733031188064e-19,-1.8207170690602433e-19,-1.8247012361793932e-19,-1.8286852740515725e-19,-1.8326693119237517e-19,-1.836653349795931e-19,-1.8406373876681101e-19,-1.84462155478726e-19,-1.8486055926594393e-19,-1.8525896305316186e-19,-1.8565736684037978e-19,-1.860557706275977e-19,-1.864541873395127e-19,-1.8685259112673062e-19,-1.8725099491394854e-19,-1.8764939870116646e-19,-1.880478024883844e-19,-1.8844621920029938e-19,-1.888446229875173e-19,-1.8924302677473523e-19,-1.8964143056195315e-19,-1.9003983434917107e-19,-1.9043825106108607e-19,-1.90836654848304e-19,-1.9123505863552192e-19,-1.9163346242273984e-19,-1.9203186620995776e-19,-1.9243028292187276e-19,-1.9282868670909068e-19,-1.932270904963086e-19,-1.9362549428352652e-19,-1.9402389807074445e-19,-1.9442231478265944e-19,-1.9482071856987737e-19,-1.952191223570953e-19,-1.956175261443132e-19,-1.9601592993153113e-19,-1.9641434664344613e-19,-1.9681275043066405e-19,-1.9721115421788197e-19,-1.976095580050999e-19,-1.9800796179231782e-19,-1.9840637850423282e-19,-1.9880478229145074e-19,-1.9920318607866866e-19,-1.9960158986588658e-19,-1.999999936531045e-19],"y":[-1,1,-1,1,1,-1,-1,-1,1,-1,1,-1,-1,-1,1,-1,-1,-1,1,-1,1,-1,-1,-1,-1,1,-1,-1,-1,1,1,1,1,-1,1,-1,1,-1,-1,-1,1,1,1,-1,-1,-1,1,-1,-1,-1,1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,-1,-1,-1,1,1,1,-1,-1,1,1,1,1,-1,1,-1,1,-1,-1,-1,-1,1,1,1,1,-1,-1,-1,-1,1,1,1,-1,-1,-1,1,1,-1,1,-1,-1,-1,-1,-1,1,-1,-1,1,-1,-1,1,1,-1,1,1,-1,1,-1,-1,-1,-1,1,1,1,-1,-1,-1,1,-1,1,1,1,-1,1,1,1,1,1,-1,1,1,1,-1,-1,1,1,-1,-1,1,-1,1,-1,-1,1,-1,-1,-1,1,1,-1,-1,-1,-1,1,1,-1,1,-1,1,-1,1,1,-1,-1,-1,-1,-1,-1,1,1,-1,1,1,1,1,1,-1,1,1,-1,1,-1,-1,-1,1,1,-1,1,-1,1,1,-1,1,1,1,-1,-1,-1,1,-1,1,1,1,-1,1,1,1,1,1,-1,-1,-1,1,-1,-1,1,-1,-1,-1,-1,1,-1,1,1,1,-1,-1,-1,1,-1,1,1,1,1,-1,-1,1,-1,1,-1,-1,-1,-1,1,-1,-1,-1,1,-1,1,-1,1,1,-1,1,-1,1,1,1,-1,1,1,1,-1,1,-1,1,-1,1,-1,-1,-1,-1,-1,-1,1,1,-1,1,1,-1,-1,-1,1,-1,-1,1,-1,-1,1,1,-1,1,-1,-1,-1,1,-1,-1,-1,1,1,-1,-1,-1,1,1,-1,1,1,1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,-1,-1,-1,1,-1,1,-1,1,1,-1,1,1,1,1,-1,1,-1,1,-1,-1,-1,1,1,1,1,-1,-1,1,1,1,-1,-1,-1,-1,-1,1,-1,1,-1,1,1,-1,1,-1,-1,-1,1,-1,-1,1,-1,1,-1,1,-1,-1,1,-1,1,1,1,1,-1,1,-1,1,-1,-1,-1,-1,1,1,-1,1,-1,1,1,1,1,1,-1,1,1,1,-1,1,1,1,1,-1,-1,-1,-1,1,-1,1,1,1,-1,1,1,1,1,-1,-1,1,-1,-1,-1,-1,-1,1,1,-1,1,-1,-1,1,-1,-1,-1,-1,-1,1,-1,-1,1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1]} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/tiny_positive.json b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/tiny_positive.json new file mode 100644 index 000000000000..440572a70622 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/fixtures/julia/tiny_positive.json @@ -0,0 +1 @@ +{"expected":[0,-3.9840636205991774e-22,-7.968127241198355e-22,-1.1952191366668511e-21,1.593625448239671e-21,-1.9920318607866866e-21,2.3904382733337023e-21,-2.788844685880718e-21,3.187250896479342e-21,3.585657510974749e-21,-3.984063721573373e-21,-4.382469932171997e-21,4.7808765466674046e-21,-5.1792827572660285e-21,5.577689371761436e-21,5.97609558236006e-21,6.374501792958684e-21,-6.772908407454091e-21,-7.171315021949499e-21,-7.569721232548123e-21,7.968127443146746e-21,-8.36653365374537e-21,-8.764939864343994e-21,9.163346882736185e-21,9.561753093334809e-21,-9.960159303933433e-21,1.0358565514532057e-20,1.0756971725130681e-20,1.1155378743522872e-20,1.1553784954121496e-20,-1.195219116472012e-20,1.2350597375318744e-20,1.2749003585917368e-20,-1.3147410604309558e-20,-1.3545816814908182e-20,1.3944223025506806e-20,1.4342630043898997e-20,-1.4741035446704054e-20,-1.5139442465096245e-20,1.5537847867901302e-20,1.5936254886293493e-20,1.6334661904685684e-20,-1.673306730749074e-20,-1.7131474325882932e-20,-1.752987972868799e-20,-1.792828674708018e-20,1.832669376547237e-20,1.8725099168277427e-20,-1.9123506186669618e-20,1.9521911589474675e-20,1.9920318607866866e-20,-2.0318725626259057e-20,-2.0717131029064114e-20,-2.1115538047456305e-20,2.1513943450261362e-20,-2.1912350468653553e-20,-2.2310757487045744e-20,-2.27091628898508e-20,2.3107569908242992e-20,-2.350597531104805e-20,2.390438232944024e-20,-2.430278934783243e-20,2.4701194750637487e-20,-2.5099601769029678e-20,-2.5498007171834735e-20,2.5896414190226926e-20,2.6294821208619117e-20,-2.6693226611424174e-20,2.7091633629816365e-20,-2.749003903262142e-20,2.788844605101361e-20,2.8286853069405804e-20,-2.8685260087797994e-20,-2.908366387501592e-20,2.948207089340811e-20,2.98804779118003e-20,3.027888493019249e-20,3.067729194858468e-20,3.1075695735802604e-20,3.1474102754194795e-20,-3.1872509772586986e-20,-3.2270916790979177e-20,3.266932380937137e-20,3.306772759658929e-20,-3.346613461498148e-20,3.386454163337367e-20,3.4262948651765863e-20,-3.4661355670158054e-20,3.505975945737598e-20,3.545816647576817e-20,-3.585657349416036e-20,-3.625498051255255e-20,3.665338753094474e-20,-3.7051791318162664e-20,3.7450198336554855e-20,3.7848605354947046e-20,3.8247012373339237e-20,-3.864541939173143e-20,-3.904382317894935e-20,-3.944223019734154e-20,-3.984063721573373e-20,-4.0239044234125923e-20,-4.0637451252518114e-20,4.103585503973604e-20,4.143426205812823e-20,4.183266907652042e-20,4.223107609491261e-20,-4.26294831133048e-20,4.3027886900522724e-20,4.3426293918914915e-20,-4.3824700937307106e-20,-4.4223107955699296e-20,-4.462151497409149e-20,4.501991876130941e-20,4.54183257797016e-20,4.581673279809379e-20,-4.6215139816485983e-20,-4.6613546834878174e-20,-4.70119506220961e-20,-4.741035764048829e-20,-4.780876465888048e-20,4.820717167727267e-20,-4.860557869566486e-20,4.9003982482882784e-20,4.9402389501274975e-20,4.9800796519667165e-20,-5.0199203538059356e-20,-5.059761055645155e-20,-5.099601434366947e-20,-5.139442136206166e-20,-5.179282838045385e-20,5.219123539884604e-20,5.2589642417238234e-20,-5.2988046204456157e-20,-5.338645322284835e-20,5.378486024124054e-20,-5.418326725963273e-20,5.458167427802492e-20,5.498007806524284e-20,5.53784883148093e-20,-5.577689210202723e-20,-5.617529588924515e-20,5.657370613881161e-20,5.697210992602953e-20,5.737052017559599e-20,-5.776892396281391e-20,5.816732775003183e-20,5.856573799959829e-20,5.896414178681622e-20,-5.936255203638268e-20,5.97609558236006e-20,-6.015935961081852e-20,-6.055776986038498e-20,-6.09561736476029e-20,-6.135458389716936e-20,-6.175298768438729e-20,-6.215139147160521e-20,-6.254980172117167e-20,-6.294820550838959e-20,6.334661575795605e-20,-6.374501954517397e-20,-6.41434233323919e-20,-6.454183358195835e-20,6.494023736917628e-20,6.533864761874274e-20,-6.573705140596066e-20,6.613545519317858e-20,6.653386544274504e-20,-6.693226922996296e-20,6.733067947952942e-20,6.772908326674734e-20,-6.812748705396527e-20,6.852589730353173e-20,6.892430109074965e-20,-6.932271134031611e-20,6.972111512753403e-20,7.011951891475195e-20,-7.051792916431841e-20,-7.091633295153634e-20,-7.13147432011028e-20,7.171314698832072e-20,-7.211155077553864e-20,7.25099610251051e-20,7.290836481232302e-20,-7.330677506188948e-20,-7.37051788491074e-20,-7.410358263632533e-20,-7.450199288589179e-20,7.490039667310971e-20,7.529880692267617e-20,7.569721070989409e-20,-7.609561449711201e-20,7.649402474667847e-20,7.68924285338964e-20,7.729083878346285e-20,7.768924257068078e-20,-7.80876463578987e-20,7.848605660746516e-20,7.888446039468308e-20,-7.928287064424954e-20,7.968127443146746e-20,8.007967821868539e-20,8.047808846825185e-20,-8.087649225546977e-20,8.127490250503623e-20,-8.167330629225415e-20,-8.207171007947207e-20,-8.247012032903853e-20,8.286852411625646e-20,-8.326693436582291e-20,8.366533815304084e-20,-8.406374194025876e-20,-8.446215218982522e-20,8.486055597704314e-20,-8.52589662266096e-20,-8.565737001382752e-20,-8.605577380104545e-20,-8.645418405061191e-20,-8.685258783782983e-20,-8.725099808739629e-20,8.764940187461421e-20,-8.804780566183213e-20,8.844621591139859e-20,-8.884461969861652e-20,8.924302994818297e-20,8.96414337354009e-20,-9.003983752261882e-20,-9.043824777218528e-20,-9.08366515594032e-20,-9.123506180896966e-20,9.163346559618758e-20,-9.203186938340551e-20,9.243027963297197e-20,-9.282868342018989e-20,9.322709366975635e-20,-9.362549745697427e-20,9.40239012441922e-20,9.442231149375865e-20,-9.482071528097658e-20,-9.521912553054303e-20,-9.561752931776096e-20,9.601593310497888e-20,9.641434335454534e-20,-9.681274714176326e-20,9.721115739132972e-20,-9.760956117854764e-20,-9.800796496576557e-20,9.840637521533203e-20,-9.880477900254995e-20,9.920318925211641e-20,-9.960159303933433e-20,9.999999682655225e-20,-1.0039840707611871e-19,-1.0079681086333664e-19,-1.011952211129031e-19,-1.0159362490012102e-19,-1.0199202868733894e-19,-1.023904389369054e-19,-1.0278884272412332e-19,1.0318725297368978e-19,1.035856567609077e-19,1.0398406054812563e-19,-1.0438247079769209e-19,-1.0478087458491001e-19,1.0517928483447647e-19,1.0557768862169439e-19,-1.0597609240891231e-19,-1.0637450265847877e-19,-1.067729064456967e-19,-1.0717131669526315e-19,-1.0756972048248108e-19,-1.07968124269699e-19,1.0836653451926546e-19,-1.0876494476883192e-19,1.0916334855604984e-19,-1.0956175234326776e-19,1.0996015613048569e-19,-1.103585599177036e-19,-1.107569766296186e-19,1.1115538041683653e-19,-1.1155378420405445e-19,1.1195218799127237e-19,-1.123505917784903e-19,-1.127490084904053e-19,-1.1314741227762321e-19,1.1354581606484114e-19,1.1394421985205906e-19,-1.1434262363927698e-19,-1.1474104035119198e-19,-1.151394441384099e-19,-1.1553784792562782e-19,-1.1593625171284575e-19,1.1633465550006367e-19,-1.1673307221197866e-19,-1.1713147599919659e-19,1.175298797864145e-19,1.1792828357363243e-19,-1.1832668736085036e-19,-1.1872510407276535e-19,1.1912350785998327e-19,-1.195219116472012e-19,1.1992031543441912e-19,1.2031871922163704e-19,1.2071713593355204e-19,1.2111553972076996e-19,1.2151394350798788e-19,-1.219123472952058e-19,1.2231075108242373e-19,-1.2270916779433872e-19,-1.2310757158155665e-19,1.2350597536877457e-19,1.239043791559925e-19,-1.2430278294321042e-19,-1.247011996551254e-19,1.2509960344234333e-19,1.2549800722956126e-19,-1.2589641101677918e-19,-1.262948148039971e-19,-1.266932315159121e-19,-1.2709163530313002e-19,-1.2749003909034794e-19,-1.2788844287756587e-19,-1.282868466647838e-19,-1.2868526337669878e-19,-1.290836671639167e-19,-1.2948207095113463e-19,1.2988047473835255e-19,-1.3027887852557048e-19,-1.3067729523748547e-19,1.310756990247034e-19,1.3147410281192132e-19,1.3187250659913924e-19,1.3227091038635716e-19,1.3266932709827216e-19,1.3306773088549008e-19,-1.33466134672708e-19,1.3386453845992593e-19,-1.3426294224714385e-19,-1.3466135895905884e-19,1.3505976274627677e-19,-1.354581665334947e-19,-1.3585657032071261e-19,-1.3625497410793054e-19,1.3665339081984553e-19,1.3705179460706345e-19,-1.3745019839428138e-19,-1.378486021814993e-19,-1.3824700596871722e-19,-1.3864542268063222e-19,1.3904382646785014e-19,1.3944223025506806e-19,1.3984063404228599e-19,1.402390378295039e-19,-1.406374545414189e-19,-1.4103585832863683e-19,1.4143426211585475e-19,1.4183266590307267e-19,-1.422310696902906e-19,1.426294864022056e-19,1.4302789018942351e-19,1.4342629397664144e-19,1.4382469776385936e-19,1.4422310155107728e-19,1.4462151826299228e-19,-1.450199220502102e-19,-1.4541832583742812e-19,-1.4581672962464605e-19,-1.4621513341186397e-19,1.4661355012377896e-19,1.4701195391099689e-19,1.474103576982148e-19,1.4780876148543273e-19,-1.4820716527265066e-19,1.4860558198456565e-19,-1.4900398577178357e-19,-1.494023895590015e-19,1.4980079334621942e-19,1.5019919713343734e-19,1.5059761384535234e-19,1.5099601763257026e-19,-1.5139442141978818e-19,-1.517928252070061e-19,-1.5219122899422403e-19,1.5258964570613902e-19,1.5298804949335695e-19,-1.5338645328057487e-19,1.537848570677928e-19,1.5418326085501072e-19,-1.545816775669257e-19,-1.5498008135414363e-19,-1.5537848514136156e-19,1.5577688892857948e-19,-1.561752927157974e-19,1.565737094277124e-19,1.5697211321493032e-19,1.5737051700214824e-19,1.5776892078936617e-19,1.581673245765841e-19,1.5856574128849908e-19,-1.58964145075717e-19,-1.5936254886293493e-19,-1.5976095265015285e-19,-1.6015935643737078e-19,1.6055777314928577e-19,1.609561769365037e-19,-1.6135458072372162e-19,-1.6175298451093954e-19,-1.6215138829815746e-19,-1.6254980501007246e-19,1.6294820879729038e-19,1.633466125845083e-19,-1.6374501637172623e-19,1.6414342015894415e-19,1.6454183687085914e-19,1.6494024065807707e-19,-1.65338644445295e-19,1.6573704823251291e-19,-1.6613545201973084e-19,-1.6653386873164583e-19,-1.6693227251886375e-19,-1.6733067630608168e-19,-1.677290800932996e-19,1.6812748388051752e-19,1.6852590059243252e-19,1.6892430437965044e-19,1.6932270816686836e-19,-1.6972111195408629e-19,1.701195157413042e-19,1.705179324532192e-19,1.7091633624043713e-19,-1.7131474002765505e-19,1.7171314381487297e-19,1.721115476020909e-19,-1.725099643140059e-19,1.7290836810122381e-19,1.7330677188844174e-19,1.7370517567565966e-19,-1.7410357946287758e-19,-1.7450199617479258e-19,1.749003999620105e-19,1.7529880374922842e-19,-1.7569720753644635e-19,1.7609561132366427e-19,1.7649402803557926e-19,1.7689243182279719e-19,-1.772908356100151e-19,1.7768923939723303e-19,1.7808764318445096e-19,1.7848605989636595e-19,-1.7888446368358387e-19,-1.792828674708018e-19,-1.7968127125801972e-19,-1.8007967504523764e-19,1.8047809175715264e-19,1.8087649554437056e-19,-1.8127489933158848e-19,-1.816733031188064e-19,-1.8207170690602433e-19,-1.8247012361793932e-19,-1.8286852740515725e-19,-1.8326693119237517e-19,1.836653349795931e-19,1.8406373876681101e-19,1.84462155478726e-19,1.8486055926594393e-19,-1.8525896305316186e-19,-1.8565736684037978e-19,1.860557706275977e-19,1.864541873395127e-19,1.8685259112673062e-19,-1.8725099491394854e-19,1.8764939870116646e-19,1.880478024883844e-19,-1.8844621920029938e-19,1.888446229875173e-19,-1.8924302677473523e-19,1.8964143056195315e-19,-1.9003983434917107e-19,-1.9043825106108607e-19,1.90836654848304e-19,1.9123505863552192e-19,1.9163346242273984e-19,1.9203186620995776e-19,-1.9243028292187276e-19,1.9282868670909068e-19,-1.932270904963086e-19,1.9362549428352652e-19,1.9402389807074445e-19,1.9442231478265944e-19,-1.9482071856987737e-19,1.952191223570953e-19,1.956175261443132e-19,1.9601592993153113e-19,1.9641434664344613e-19,-1.9681275043066405e-19,-1.9721115421788197e-19,-1.976095580050999e-19,-1.9800796179231782e-19,1.9840637850423282e-19,-1.9880478229145074e-19,-1.9920318607866866e-19,-1.9960158986588658e-19,-1.999999936531045e-19],"p":[0,1.992031873408461e-23,3.984063746816922e-23,5.976095304681021e-23,7.968127493633844e-23,9.960159051497943e-23,1.1952190609362042e-22,1.394422342940359e-22,1.5936254987267689e-22,1.7928286545131788e-22,1.9920318102995887e-22,2.1912349660859986e-22,2.3904381218724085e-22,2.589641530094308e-22,2.788844685880718e-22,2.988047841667128e-22,3.1872509974535378e-22,3.3864541532399477e-22,3.5856573090263576e-22,3.7848604648127675e-22,3.9840636205991774e-22,4.183267028821077e-22,4.382469932171997e-22,4.581673340393897e-22,4.780876243744817e-22,4.980079651966717e-22,5.179283060188616e-22,5.378485963539536e-22,5.577689371761436e-22,5.776892275112356e-22,5.976095683334256e-22,6.175298586685176e-22,6.3745019949070755e-22,6.573705403128975e-22,6.772908306479895e-22,6.972111714701795e-22,7.171314618052715e-22,7.370518026274615e-22,7.569720929625535e-22,7.7689243378474345e-22,7.968127241198355e-22,8.167330649420254e-22,8.366534057642154e-22,8.565736960993074e-22,8.764939864343994e-22,8.964143777436873e-22,9.163346680787793e-22,9.362549584138714e-22,9.561752487489634e-22,9.760956400582513e-22,9.960159303933433e-22,1.0159362207284353e-21,1.0358566120377232e-21,1.0557769023728152e-21,1.0756971927079073e-21,1.0956174830429993e-21,1.1155378743522872e-21,1.1354581646873792e-21,1.1553784550224712e-21,1.1752988463317591e-21,1.1952191366668511e-21,1.2151394270019432e-21,1.2350597173370352e-21,1.254980108646323e-21,1.2749003989814151e-21,1.2948206893165071e-21,1.314741080625795e-21,1.334661370960887e-21,1.354581661295979e-21,1.374501951631071e-21,1.394422342940359e-21,1.414342633275451e-21,1.434262923610543e-21,1.454183314919831e-21,1.474103605254923e-21,1.494023895590015e-21,1.513944185925107e-21,1.5338645772343949e-21,1.5537848675694869e-21,1.573705157904579e-21,1.593625448239671e-21,1.6135458395489588e-21,1.6334661298840509e-21,1.6533864202191429e-21,1.6733068115284308e-21,1.6932271018635228e-21,1.713147392198615e-21,1.7330677835079027e-21,1.752987972868799e-21,1.7729083641780868e-21,1.7928287554873746e-21,1.8127489448482708e-21,1.8326693361575587e-21,1.8525897274668466e-21,1.8725099168277427e-21,1.8924303081370306e-21,1.9123504974979268e-21,1.9322708888072147e-21,1.9521912801165026e-21,1.9721114694773987e-21,1.9920318607866866e-21,2.0119522520959745e-21,2.0318724414568707e-21,2.0517928327661586e-21,2.0717132240754464e-21,2.0916334134363426e-21,2.1115538047456305e-21,2.1314741960549184e-21,2.1513943854158145e-21,2.1713147767251024e-21,2.1912349660859986e-21,2.2111553573952865e-21,2.2310757487045744e-21,2.2509959380654705e-21,2.2709163293747584e-21,2.2908367206840463e-21,2.3107569100449425e-21,2.3306773013542303e-21,2.3505976926635182e-21,2.3705178820244144e-21,2.3904382733337023e-21,2.41035866464299e-21,2.4302788540038863e-21,2.4501992453131742e-21,2.4701194346740704e-21,2.4900398259833583e-21,2.509960217292646e-21,2.5298804066535423e-21,2.5498007979628302e-21,2.569721189272118e-21,2.5896413786330143e-21,2.609561769942302e-21,2.62948216125159e-21,2.6494023506124862e-21,2.669322741921774e-21,2.6892429312826702e-21,2.709163322591958e-21,2.729083713901246e-21,2.749003903262142e-21,2.76892429457143e-21,2.788844685880718e-21,2.808764875241614e-21,2.828685266550902e-21,2.84860565786019e-21,2.868525847221086e-21,2.888446238530374e-21,2.908366629839662e-21,2.928286819200558e-21,2.948207210509846e-21,2.968127399870742e-21,2.98804779118003e-21,3.007968182489318e-21,3.027888371850214e-21,3.047808763159502e-21,3.0677291544687898e-21,3.087649343829686e-21,3.1075697351389738e-21,3.1274901264482617e-21,3.147410315809158e-21,3.1673307071184457e-21,3.187250896479342e-21,3.2071712877886298e-21,3.2270916790979177e-21,3.247011868458814e-21,3.2669322597681017e-21,3.2868526510773896e-21,3.3067728404382858e-21,3.3266932317475737e-21,3.3466136230568615e-21,3.3665338124177577e-21,3.3864542037270456e-21,3.4063745950363335e-21,3.42629478439723e-21,3.446214973758126e-21,3.4661355670158054e-21,3.4860557563767016e-21,3.505975945737598e-21,3.525896538995277e-21,3.5458167283561735e-21,3.56573691771707e-21,3.585657510974749e-21,3.6055777003356455e-21,3.6254978896965416e-21,3.645418482954221e-21,3.6653386723151174e-21,3.6852588616760135e-21,3.705179454933693e-21,3.725099644294589e-21,3.7450198336554855e-21,3.764940426913165e-21,3.784860616274061e-21,3.8047808056349574e-21,3.8247009949958536e-21,3.844621588253533e-21,3.864541777614429e-21,3.8844619669753255e-21,3.904382560233005e-21,3.924302749593901e-21,3.9442229389547974e-21,3.964143532212477e-21,3.984063721573373e-21,4.0039839109342694e-21,4.023904504191949e-21,4.043824693552845e-21,4.063744882913741e-21,4.083665476171421e-21,4.103585665532317e-21,4.123505854893213e-21,4.143426448150893e-21,4.163346637511789e-21,4.183266826872685e-21,4.203187420130365e-21,4.223107609491261e-21,4.243027798852157e-21,4.262948392109837e-21,4.282868581470733e-21,4.302788770831629e-21,4.322709364089309e-21,4.342629553450205e-21,4.362549742811101e-21,4.382469932171997e-21,4.402390525429677e-21,4.422310714790573e-21,4.442230904151469e-21,4.462151497409149e-21,4.482071686770045e-21,4.501991876130941e-21,4.521912469388621e-21,4.541832658749517e-21,4.561752848110413e-21,4.5816734413680926e-21,4.601593630728989e-21,4.621513820089885e-21,4.6414344133475645e-21,4.661354602708461e-21,4.681274792069357e-21,4.7011953853270365e-21,4.721115574687933e-21,4.741035764048829e-21,4.7609563573065084e-21,4.7808765466674046e-21,4.800796736028301e-21,4.82071732928598e-21,4.8406375186468765e-21,4.860557708007773e-21,4.880477897368669e-21,4.9003984906263484e-21,4.9203186799872446e-21,4.940238869348141e-21,4.9601594626058204e-21,4.9800796519667165e-21,4.999999841327613e-21,5.019920434585292e-21,5.0398406239461885e-21,5.059760813307085e-21,5.079681406564764e-21,5.0996015959256604e-21,5.1195217852865566e-21,5.139442378544236e-21,5.159362567905132e-21,5.1792827572660285e-21,5.199203350523708e-21,5.219123539884604e-21,5.2390437292455004e-21,5.25896432250318e-21,5.278884511864076e-21,5.2988047012249724e-21,5.318725294482652e-21,5.338645483843548e-21,5.358565673204444e-21,5.3784858625653405e-21,5.39840645582302e-21,5.418326645183916e-21,5.4382468345448124e-21,5.458167427802492e-21,5.478087617163388e-21,5.498007806524284e-21,5.517928399781964e-21,5.53784858914286e-21,5.557768778503756e-21,5.577689371761436e-21,5.597609561122332e-21,5.617529750483228e-21,5.637450343740908e-21,5.657370533101804e-21,5.6772907224627e-21,5.69721131572038e-21,5.717131505081276e-21,5.737051694442172e-21,5.756972287699852e-21,5.776892477060748e-21,5.796812666421644e-21,5.816733259679324e-21,5.83665344904022e-21,5.856573638401116e-21,5.876493827762012e-21,5.896414421019692e-21,5.916334610380588e-21,5.936254799741484e-21,5.956175392999164e-21,5.97609558236006e-21,5.996015771720956e-21,6.015936364978636e-21,6.035856554339532e-21,6.055776743700428e-21,6.0756973369581076e-21,6.095617526319004e-21,6.1155377156799e-21,6.1354583089375795e-21,6.155378498298476e-21,6.175298687659372e-21,6.1952192809170514e-21,6.2151394702779476e-21,6.235059659638844e-21,6.2549802528965234e-21,6.2749004422574195e-21,6.294820631618316e-21,6.314741224875995e-21,6.3346614142368915e-21,6.354581603597788e-21,6.374501792958684e-21,6.3944223862163634e-21,6.4143425755772596e-21,6.434262764938156e-21,6.454183358195835e-21,6.4741035475567315e-21,6.494023736917628e-21,6.513944330175307e-21,6.5338645195362034e-21,6.5537847088970996e-21,6.573705302154779e-21,6.5936254915156754e-21,6.6135456808765715e-21,6.633466274134251e-21,6.653386463495147e-21,6.6733066528560435e-21,6.693227246113723e-21,6.713147435474619e-21,6.7330676248355154e-21,6.752988218093195e-21,6.772908407454091e-21,6.792829000711771e-21,6.812749190072667e-21,6.832669379433563e-21,6.85258956879446e-21,6.872509758155355e-21,6.892429947516252e-21,6.912350944670715e-21,6.932271134031611e-21,6.952191323392507e-21,6.972111512753403e-21,6.9920317021143e-21,7.011951891475195e-21,7.031872888629659e-21,7.051793077990555e-21,7.071713267351451e-21,7.091633456712347e-21,7.111553646073243e-21,7.13147383543414e-21,7.151394024795035e-21,7.171315021949499e-21,7.191235211310395e-21,7.211155400671291e-21,7.231075590032187e-21,7.250995779393083e-21,7.27091596875398e-21,7.290836965908442e-21,7.310757155269339e-21,7.330677344630235e-21,7.350597533991131e-21,7.370517723352027e-21,7.390437912712923e-21,7.410358909867386e-21,7.430279099228283e-21,7.450199288589179e-21,7.470119477950075e-21,7.490039667310971e-21,7.509959856671867e-21,7.52988085382633e-21,7.549801043187226e-21,7.569721232548123e-21,7.589641421909019e-21,7.609561611269915e-21,7.629481800630811e-21,7.649401989991707e-21,7.66932298714617e-21,7.689243176507066e-21,7.709163365867963e-21,7.729083555228859e-21,7.749003744589755e-21,7.768923933950651e-21,7.788844931105114e-21,7.80876512046601e-21,7.828685309826906e-21,7.848605499187803e-21,7.868525688548699e-21,7.888445877909595e-21,7.908366875064058e-21,7.928287064424954e-21,7.94820725378585e-21,7.968127443146746e-21,7.988047632507643e-21,8.007967821868539e-21,8.027888819023002e-21,8.047809008383898e-21,8.067729197744794e-21,8.08764938710569e-21,8.107569576466586e-21,8.127489765827483e-21,8.147409955188379e-21,8.167330952342842e-21,8.187251141703738e-21,8.207171331064634e-21,8.22709152042553e-21,8.247011709786427e-21,8.266931899147323e-21,8.286852896301786e-21,8.306773085662682e-21,8.326693275023578e-21,8.346613464384474e-21,8.36653365374537e-21,8.386453843106267e-21,8.40637484026073e-21,8.426295029621626e-21,8.446215218982522e-21,8.466135408343418e-21,8.486055597704314e-21,8.50597578706521e-21,8.525896784219674e-21,8.54581697358057e-21,8.565737162941466e-21,8.585657352302362e-21,8.605577541663258e-21,8.625497731024154e-21,8.645418728178617e-21,8.665338917539514e-21,8.68525910690041e-21,8.705179296261306e-21,8.725099485622202e-21,8.745019674983098e-21,8.764939864343994e-21,8.784860861498457e-21,8.804781050859354e-21,8.82470124022025e-21,8.844621429581146e-21,8.864541618942042e-21,8.884461808302938e-21,8.904382805457401e-21,8.924302994818297e-21,8.944223184179194e-21,8.96414337354009e-21,8.984063562900986e-21,9.003983752261882e-21,9.023904749416345e-21,9.043824938777241e-21,9.063745128138137e-21,9.083665317499034e-21,9.10358550685993e-21,9.123505696220826e-21,9.143426693375289e-21,9.163346882736185e-21,9.183267072097081e-21,9.203187261457978e-21,9.223107450818874e-21,9.24302764017977e-21,9.262947829540666e-21,9.282868826695129e-21,9.302789016056025e-21,9.322709205416921e-21,9.342629394777818e-21,9.362549584138714e-21,9.38246977349961e-21,9.402390770654073e-21,9.422310960014969e-21,9.442231149375865e-21,9.462151338736761e-21,9.482071528097658e-21,9.501991717458554e-21,9.521912714613017e-21,9.541832903973913e-21,9.561753093334809e-21,9.581673282695705e-21,9.601593472056601e-21,9.621513661417498e-21,9.64143465857196e-21,9.661354847932857e-21,9.681275037293753e-21,9.701195226654649e-21,9.721115416015545e-21,9.741035605376441e-21,9.760955794737338e-21,9.7808767918918e-21,9.800796981252697e-21,9.820717170613593e-21,9.840637359974489e-21,9.860557549335385e-21,9.880477738696282e-21,9.900398735850745e-21,9.920318925211641e-21,9.940239114572537e-21,9.960159303933433e-21,9.980079493294329e-21,9.999999682655225e-21],"t":[0,0.009960159659385681,0.019920319318771362,0.029880478978157043,0.039840638637542725,0.049800798296928406,0.05976095795631409,0.06972111761569977,0.07968127727508545,0.08964143693447113,0.09960159659385681,0.10956175625324249,0.11952191591262817,0.12948207557201385,0.13944223523139954,0.14940239489078522,0.1593625545501709,0.16932271420955658,0.17928287386894226,0.18924303352832794,0.19920319318771362,0.2091633528470993,0.21912351250648499,0.22908367216587067,0.23904383182525635,0.24900399148464203,0.2589641511440277,0.2689242959022522,0.2788844704627991,0.28884461522102356,0.29880478978157043,0.3087649345397949,0.3187251091003418,0.3286852538585663,0.33864542841911316,0.34860557317733765,0.3585657477378845,0.368525892496109,0.3784860670566559,0.38844621181488037,0.39840638637542725,0.40836653113365173,0.4183267056941986,0.4282868504524231,0.43824702501296997,0.44820716977119446,0.45816734433174133,0.4681274890899658,0.4780876636505127,0.4880478084087372,0.49800798296928406,0.5079681277275085,0.5179283022880554,0.5278884172439575,0.5378485918045044,0.5478087663650513,0.5577689409255981,0.5677290558815002,0.5776892304420471,0.587649405002594,0.5976095795631409,0.607569694519043,0.6175298690795898,0.6274900436401367,0.6374502182006836,0.6474103331565857,0.6573705077171326,0.6673306822776794,0.6772908568382263,0.6872509717941284,0.6972111463546753,0.7071713209152222,0.717131495475769,0.7270916104316711,0.737051784992218,0.7470119595527649,0.7569721341133118,0.7669322490692139,0.7768924236297607,0.7868525981903076,0.7968127727508545,0.8067728877067566,0.8167330622673035,0.8266932368278503,0.8366534113883972,0.8466135263442993,0.8565737009048462,0.8665338754653931,0.8764940500259399,0.886454164981842,0.8964143395423889,0.9063745141029358,0.9163346886634827,0.9262948036193848,0.9362549781799316,0.9462151527404785,0.9561753273010254,0.9661354422569275,0.9760956168174744,0.9860557913780212,0.9960159659385681,1.0059760808944702,1.015936255455017,1.025896430015564,1.0358566045761108,1.0458167791366577,1.055776834487915,1.065737009048462,1.0756971836090088,1.0856573581695557,1.0956175327301025,1.1055777072906494,1.1155378818511963,1.1254980564117432,1.1354581117630005,1.1454182863235474,1.1553784608840942,1.1653386354446411,1.175298810005188,1.1852589845657349,1.1952191591262817,1.2051793336868286,1.215139389038086,1.2250995635986328,1.2350597381591797,1.2450199127197266,1.2549800872802734,1.2649402618408203,1.2749004364013672,1.284860610961914,1.2948206663131714,1.3047808408737183,1.3147410154342651,1.324701189994812,1.3346613645553589,1.3446215391159058,1.3545817136764526,1.3645418882369995,1.3745019435882568,1.3844621181488037,1.3944222927093506,1.4043824672698975,1.4143426418304443,1.4243028163909912,1.434262990951538,1.444223165512085,1.4541832208633423,1.4641433954238892,1.474103569984436,1.484063744544983,1.4940239191055298,1.5039840936660767,1.5139442682266235,1.5239043235778809,1.5338644981384277,1.5438246726989746,1.5537848472595215,1.5637450218200684,1.5737051963806152,1.583665370941162,1.593625545501709,1.6035856008529663,1.6135457754135132,1.62350594997406,1.633466124534607,1.6434262990951538,1.6533864736557007,1.6633466482162476,1.6733068227767944,1.6832668781280518,1.6932270526885986,1.7031872272491455,1.7131474018096924,1.7231075763702393,1.7330677509307861,1.743027925491333,1.7529881000518799,1.7629481554031372,1.772908329963684,1.782868504524231,1.7928286790847778,1.8027888536453247,1.8127490282058716,1.8227092027664185,1.8326693773269653,1.8426294326782227,1.8525896072387695,1.8625497817993164,1.8725099563598633,1.8824701309204102,1.892430305480957,1.902390480041504,1.9123506546020508,1.922310709953308,1.932270884513855,1.9422310590744019,1.9521912336349487,1.9621514081954956,1.9721115827560425,1.9820717573165894,1.9920319318771362,2.0019919872283936,2.0119521617889404,2.0219123363494873,2.031872510910034,2.041832685470581,2.051792860031128,2.061753034591675,2.0717132091522217,2.0816733837127686,2.0916335582733154,2.1015937328338623,2.11155366897583,2.121513843536377,2.131474018096924,2.1414341926574707,2.1513943672180176,2.1613545417785645,2.1713147163391113,2.181274890899658,2.191235065460205,2.201195240020752,2.211155414581299,2.2211155891418457,2.2310757637023926,2.2410359382629395,2.2509961128234863,2.260956287384033,2.270916223526001,2.280876398086548,2.2908365726470947,2.3007967472076416,2.3107569217681885,2.3207170963287354,2.3306772708892822,2.340637445449829,2.350597620010376,2.360557794570923,2.3705179691314697,2.3804781436920166,2.3904383182525635,2.4003984928131104,2.4103586673736572,2.420318841934204,2.430278778076172,2.4402389526367188,2.4501991271972656,2.4601593017578125,2.4701194763183594,2.4800796508789062,2.490039825439453,2.5,2.509960174560547,2.5199203491210938,2.5298805236816406,2.5398406982421875,2.5498008728027344,2.5597610473632812,2.569721221923828,2.579681158065796,2.5896413326263428,2.5996015071868896,2.6095616817474365,2.6195218563079834,2.6294820308685303,2.639442205429077,2.649402379989624,2.659362554550171,2.6693227291107178,2.6792829036712646,2.6892430782318115,2.6992032527923584,2.7091634273529053,2.719123601913452,2.729083776473999,2.739043712615967,2.7490038871765137,2.7589640617370605,2.7689242362976074,2.7788844108581543,2.788844585418701,2.798804759979248,2.808764934539795,2.818725109100342,2.8286852836608887,2.8386454582214355,2.8486056327819824,2.8585658073425293,2.868525981903076,2.878486156463623,2.88844633102417,2.8984062671661377,2.9083664417266846,2.9183266162872314,2.9282867908477783,2.938246965408325,2.948207139968872,2.958167314529419,2.968127489089966,2.9780876636505127,2.9880478382110596,2.9980080127716064,3.0079681873321533,3.0179283618927,3.027888536453247,3.037848711013794,3.0478086471557617,3.0577688217163086,3.0677289962768555,3.0776891708374023,3.087649345397949,3.097609519958496,3.107569694519043,3.11752986907959,3.1274900436401367,3.1374502182006836,3.1474103927612305,3.1573705673217773,3.167330741882324,3.177290916442871,3.187251091003418,3.197211265563965,3.2071712017059326,3.2171313762664795,3.2270915508270264,3.2370517253875732,3.24701189994812,3.256972074508667,3.266932249069214,3.2768924236297607,3.2868525981903076,3.2968127727508545,3.3067729473114014,3.3167331218719482,3.326693296432495,3.336653470993042,3.346613645553589,3.3565738201141357,3.3665337562561035,3.3764939308166504,3.3864541053771973,3.396414279937744,3.406374454498291,3.416334629058838,3.4262948036193848,3.4362549781799316,3.4462151527404785,3.4561753273010254,3.4661355018615723,3.476095676422119,3.486055850982666,3.496016025543213,3.5059762001037598,3.5159361362457275,3.5258963108062744,3.5358564853668213,3.545816659927368,3.555776834487915,3.565737009048462,3.575697183609009,3.5856573581695557,3.5956175327301025,3.6055777072906494,3.6155378818511963,3.625498056411743,3.63545823097229,3.645418405532837,3.655378580093384,3.6653387546539307,3.6752986907958984,3.6852588653564453,3.695219039916992,3.705179214477539,3.715139389038086,3.725099563598633,3.7350597381591797,3.7450199127197266,3.7549800872802734,3.7649402618408203,3.774900436401367,3.784860610961914,3.794820785522461,3.804780960083008,3.8147411346435547,3.8247013092041016,3.8346612453460693,3.844621419906616,3.854581594467163,3.86454176902771,3.874501943588257,3.8844621181488037,3.8944222927093506,3.9043824672698975,3.9143426418304443,3.924302816390991,3.934262990951538,3.944223165512085,3.954183340072632,3.9641435146331787,3.9741036891937256,3.9840638637542725,3.9940237998962402,4.003983974456787,4.013944149017334,4.023904323577881,4.033864498138428,4.043824672698975,4.0537848472595215,4.063745021820068,4.073705196380615,4.083665370941162,4.093625545501709,4.103585720062256,4.113545894622803,4.12350606918335,4.1334662437438965,4.143426418304443,4.15338659286499,4.163346767425537,4.173306941986084,4.183267116546631,4.193227291107178,4.203187465667725,4.2131476402282715,4.22310733795166,4.233067512512207,4.243027687072754,4.252987861633301,4.262948036193848,4.2729082107543945,4.282868385314941,4.292828559875488,4.302788734436035,4.312748908996582,4.322709083557129,4.332669258117676,4.342629432678223,4.3525896072387695,4.362549781799316,4.372509956359863,4.38247013092041,4.392430305480957,4.402390480041504,4.412350654602051,4.422310829162598,4.4322710037231445,4.442231178283691,4.452191352844238,4.462151527404785,4.472111701965332,4.482071876525879,4.492032051086426,4.501992225646973,4.5119524002075195,4.521912574768066,4.531872272491455,4.541832447052002,4.551792621612549,4.561752796173096,4.571712970733643,4.5816731452941895,4.591633319854736,4.601593494415283,4.61155366897583,4.621513843536377,4.631474018096924,4.641434192657471,4.651394367218018,4.6613545417785645,4.671314716339111,4.681274890899658,4.691235065460205,4.701195240020752,4.711155414581299,4.721115589141846,4.731075763702393,4.7410359382629395,4.750996112823486,4.760956287384033,4.77091646194458,4.780876636505127,4.790836811065674,4.800796985626221,4.810757160186768,4.8207173347473145,4.830677509307861,4.840637683868408,4.850597381591797,4.860557556152344,4.870517730712891,4.8804779052734375,4.890438079833984,4.900398254394531,4.910358428955078,4.920318603515625,4.930278778076172,4.940238952636719,4.950199127197266,4.9601593017578125,4.970119476318359,4.980079650878906,4.990039825439453,5],"x":[0,3.9840636205991774e-22,7.968127241198355e-22,1.1952191366668511e-21,1.593625448239671e-21,1.9920318607866866e-21,2.3904382733337023e-21,2.788844685880718e-21,3.187250896479342e-21,3.585657510974749e-21,3.984063721573373e-21,4.382469932171997e-21,4.7808765466674046e-21,5.1792827572660285e-21,5.577689371761436e-21,5.97609558236006e-21,6.374501792958684e-21,6.772908407454091e-21,7.171315021949499e-21,7.569721232548123e-21,7.968127443146746e-21,8.36653365374537e-21,8.764939864343994e-21,9.163346882736185e-21,9.561753093334809e-21,9.960159303933433e-21,1.0358565514532057e-20,1.0756971725130681e-20,1.1155378743522872e-20,1.1553784954121496e-20,1.195219116472012e-20,1.2350597375318744e-20,1.2749003585917368e-20,1.3147410604309558e-20,1.3545816814908182e-20,1.3944223025506806e-20,1.4342630043898997e-20,1.4741035446704054e-20,1.5139442465096245e-20,1.5537847867901302e-20,1.5936254886293493e-20,1.6334661904685684e-20,1.673306730749074e-20,1.7131474325882932e-20,1.752987972868799e-20,1.792828674708018e-20,1.832669376547237e-20,1.8725099168277427e-20,1.9123506186669618e-20,1.9521911589474675e-20,1.9920318607866866e-20,2.0318725626259057e-20,2.0717131029064114e-20,2.1115538047456305e-20,2.1513943450261362e-20,2.1912350468653553e-20,2.2310757487045744e-20,2.27091628898508e-20,2.3107569908242992e-20,2.350597531104805e-20,2.390438232944024e-20,2.430278934783243e-20,2.4701194750637487e-20,2.5099601769029678e-20,2.5498007171834735e-20,2.5896414190226926e-20,2.6294821208619117e-20,2.6693226611424174e-20,2.7091633629816365e-20,2.749003903262142e-20,2.788844605101361e-20,2.8286853069405804e-20,2.8685260087797994e-20,2.908366387501592e-20,2.948207089340811e-20,2.98804779118003e-20,3.027888493019249e-20,3.067729194858468e-20,3.1075695735802604e-20,3.1474102754194795e-20,3.1872509772586986e-20,3.2270916790979177e-20,3.266932380937137e-20,3.306772759658929e-20,3.346613461498148e-20,3.386454163337367e-20,3.4262948651765863e-20,3.4661355670158054e-20,3.505975945737598e-20,3.545816647576817e-20,3.585657349416036e-20,3.625498051255255e-20,3.665338753094474e-20,3.7051791318162664e-20,3.7450198336554855e-20,3.7848605354947046e-20,3.8247012373339237e-20,3.864541939173143e-20,3.904382317894935e-20,3.944223019734154e-20,3.984063721573373e-20,4.0239044234125923e-20,4.0637451252518114e-20,4.103585503973604e-20,4.143426205812823e-20,4.183266907652042e-20,4.223107609491261e-20,4.26294831133048e-20,4.3027886900522724e-20,4.3426293918914915e-20,4.3824700937307106e-20,4.4223107955699296e-20,4.462151497409149e-20,4.501991876130941e-20,4.54183257797016e-20,4.581673279809379e-20,4.6215139816485983e-20,4.6613546834878174e-20,4.70119506220961e-20,4.741035764048829e-20,4.780876465888048e-20,4.820717167727267e-20,4.860557869566486e-20,4.9003982482882784e-20,4.9402389501274975e-20,4.9800796519667165e-20,5.0199203538059356e-20,5.059761055645155e-20,5.099601434366947e-20,5.139442136206166e-20,5.179282838045385e-20,5.219123539884604e-20,5.2589642417238234e-20,5.2988046204456157e-20,5.338645322284835e-20,5.378486024124054e-20,5.418326725963273e-20,5.458167427802492e-20,5.498007806524284e-20,5.53784883148093e-20,5.577689210202723e-20,5.617529588924515e-20,5.657370613881161e-20,5.697210992602953e-20,5.737052017559599e-20,5.776892396281391e-20,5.816732775003183e-20,5.856573799959829e-20,5.896414178681622e-20,5.936255203638268e-20,5.97609558236006e-20,6.015935961081852e-20,6.055776986038498e-20,6.09561736476029e-20,6.135458389716936e-20,6.175298768438729e-20,6.215139147160521e-20,6.254980172117167e-20,6.294820550838959e-20,6.334661575795605e-20,6.374501954517397e-20,6.41434233323919e-20,6.454183358195835e-20,6.494023736917628e-20,6.533864761874274e-20,6.573705140596066e-20,6.613545519317858e-20,6.653386544274504e-20,6.693226922996296e-20,6.733067947952942e-20,6.772908326674734e-20,6.812748705396527e-20,6.852589730353173e-20,6.892430109074965e-20,6.932271134031611e-20,6.972111512753403e-20,7.011951891475195e-20,7.051792916431841e-20,7.091633295153634e-20,7.13147432011028e-20,7.171314698832072e-20,7.211155077553864e-20,7.25099610251051e-20,7.290836481232302e-20,7.330677506188948e-20,7.37051788491074e-20,7.410358263632533e-20,7.450199288589179e-20,7.490039667310971e-20,7.529880692267617e-20,7.569721070989409e-20,7.609561449711201e-20,7.649402474667847e-20,7.68924285338964e-20,7.729083878346285e-20,7.768924257068078e-20,7.80876463578987e-20,7.848605660746516e-20,7.888446039468308e-20,7.928287064424954e-20,7.968127443146746e-20,8.007967821868539e-20,8.047808846825185e-20,8.087649225546977e-20,8.127490250503623e-20,8.167330629225415e-20,8.207171007947207e-20,8.247012032903853e-20,8.286852411625646e-20,8.326693436582291e-20,8.366533815304084e-20,8.406374194025876e-20,8.446215218982522e-20,8.486055597704314e-20,8.52589662266096e-20,8.565737001382752e-20,8.605577380104545e-20,8.645418405061191e-20,8.685258783782983e-20,8.725099808739629e-20,8.764940187461421e-20,8.804780566183213e-20,8.844621591139859e-20,8.884461969861652e-20,8.924302994818297e-20,8.96414337354009e-20,9.003983752261882e-20,9.043824777218528e-20,9.08366515594032e-20,9.123506180896966e-20,9.163346559618758e-20,9.203186938340551e-20,9.243027963297197e-20,9.282868342018989e-20,9.322709366975635e-20,9.362549745697427e-20,9.40239012441922e-20,9.442231149375865e-20,9.482071528097658e-20,9.521912553054303e-20,9.561752931776096e-20,9.601593310497888e-20,9.641434335454534e-20,9.681274714176326e-20,9.721115739132972e-20,9.760956117854764e-20,9.800796496576557e-20,9.840637521533203e-20,9.880477900254995e-20,9.920318925211641e-20,9.960159303933433e-20,9.999999682655225e-20,1.0039840707611871e-19,1.0079681086333664e-19,1.011952211129031e-19,1.0159362490012102e-19,1.0199202868733894e-19,1.023904389369054e-19,1.0278884272412332e-19,1.0318725297368978e-19,1.035856567609077e-19,1.0398406054812563e-19,1.0438247079769209e-19,1.0478087458491001e-19,1.0517928483447647e-19,1.0557768862169439e-19,1.0597609240891231e-19,1.0637450265847877e-19,1.067729064456967e-19,1.0717131669526315e-19,1.0756972048248108e-19,1.07968124269699e-19,1.0836653451926546e-19,1.0876494476883192e-19,1.0916334855604984e-19,1.0956175234326776e-19,1.0996015613048569e-19,1.103585599177036e-19,1.107569766296186e-19,1.1115538041683653e-19,1.1155378420405445e-19,1.1195218799127237e-19,1.123505917784903e-19,1.127490084904053e-19,1.1314741227762321e-19,1.1354581606484114e-19,1.1394421985205906e-19,1.1434262363927698e-19,1.1474104035119198e-19,1.151394441384099e-19,1.1553784792562782e-19,1.1593625171284575e-19,1.1633465550006367e-19,1.1673307221197866e-19,1.1713147599919659e-19,1.175298797864145e-19,1.1792828357363243e-19,1.1832668736085036e-19,1.1872510407276535e-19,1.1912350785998327e-19,1.195219116472012e-19,1.1992031543441912e-19,1.2031871922163704e-19,1.2071713593355204e-19,1.2111553972076996e-19,1.2151394350798788e-19,1.219123472952058e-19,1.2231075108242373e-19,1.2270916779433872e-19,1.2310757158155665e-19,1.2350597536877457e-19,1.239043791559925e-19,1.2430278294321042e-19,1.247011996551254e-19,1.2509960344234333e-19,1.2549800722956126e-19,1.2589641101677918e-19,1.262948148039971e-19,1.266932315159121e-19,1.2709163530313002e-19,1.2749003909034794e-19,1.2788844287756587e-19,1.282868466647838e-19,1.2868526337669878e-19,1.290836671639167e-19,1.2948207095113463e-19,1.2988047473835255e-19,1.3027887852557048e-19,1.3067729523748547e-19,1.310756990247034e-19,1.3147410281192132e-19,1.3187250659913924e-19,1.3227091038635716e-19,1.3266932709827216e-19,1.3306773088549008e-19,1.33466134672708e-19,1.3386453845992593e-19,1.3426294224714385e-19,1.3466135895905884e-19,1.3505976274627677e-19,1.354581665334947e-19,1.3585657032071261e-19,1.3625497410793054e-19,1.3665339081984553e-19,1.3705179460706345e-19,1.3745019839428138e-19,1.378486021814993e-19,1.3824700596871722e-19,1.3864542268063222e-19,1.3904382646785014e-19,1.3944223025506806e-19,1.3984063404228599e-19,1.402390378295039e-19,1.406374545414189e-19,1.4103585832863683e-19,1.4143426211585475e-19,1.4183266590307267e-19,1.422310696902906e-19,1.426294864022056e-19,1.4302789018942351e-19,1.4342629397664144e-19,1.4382469776385936e-19,1.4422310155107728e-19,1.4462151826299228e-19,1.450199220502102e-19,1.4541832583742812e-19,1.4581672962464605e-19,1.4621513341186397e-19,1.4661355012377896e-19,1.4701195391099689e-19,1.474103576982148e-19,1.4780876148543273e-19,1.4820716527265066e-19,1.4860558198456565e-19,1.4900398577178357e-19,1.494023895590015e-19,1.4980079334621942e-19,1.5019919713343734e-19,1.5059761384535234e-19,1.5099601763257026e-19,1.5139442141978818e-19,1.517928252070061e-19,1.5219122899422403e-19,1.5258964570613902e-19,1.5298804949335695e-19,1.5338645328057487e-19,1.537848570677928e-19,1.5418326085501072e-19,1.545816775669257e-19,1.5498008135414363e-19,1.5537848514136156e-19,1.5577688892857948e-19,1.561752927157974e-19,1.565737094277124e-19,1.5697211321493032e-19,1.5737051700214824e-19,1.5776892078936617e-19,1.581673245765841e-19,1.5856574128849908e-19,1.58964145075717e-19,1.5936254886293493e-19,1.5976095265015285e-19,1.6015935643737078e-19,1.6055777314928577e-19,1.609561769365037e-19,1.6135458072372162e-19,1.6175298451093954e-19,1.6215138829815746e-19,1.6254980501007246e-19,1.6294820879729038e-19,1.633466125845083e-19,1.6374501637172623e-19,1.6414342015894415e-19,1.6454183687085914e-19,1.6494024065807707e-19,1.65338644445295e-19,1.6573704823251291e-19,1.6613545201973084e-19,1.6653386873164583e-19,1.6693227251886375e-19,1.6733067630608168e-19,1.677290800932996e-19,1.6812748388051752e-19,1.6852590059243252e-19,1.6892430437965044e-19,1.6932270816686836e-19,1.6972111195408629e-19,1.701195157413042e-19,1.705179324532192e-19,1.7091633624043713e-19,1.7131474002765505e-19,1.7171314381487297e-19,1.721115476020909e-19,1.725099643140059e-19,1.7290836810122381e-19,1.7330677188844174e-19,1.7370517567565966e-19,1.7410357946287758e-19,1.7450199617479258e-19,1.749003999620105e-19,1.7529880374922842e-19,1.7569720753644635e-19,1.7609561132366427e-19,1.7649402803557926e-19,1.7689243182279719e-19,1.772908356100151e-19,1.7768923939723303e-19,1.7808764318445096e-19,1.7848605989636595e-19,1.7888446368358387e-19,1.792828674708018e-19,1.7968127125801972e-19,1.8007967504523764e-19,1.8047809175715264e-19,1.8087649554437056e-19,1.8127489933158848e-19,1.816733031188064e-19,1.8207170690602433e-19,1.8247012361793932e-19,1.8286852740515725e-19,1.8326693119237517e-19,1.836653349795931e-19,1.8406373876681101e-19,1.84462155478726e-19,1.8486055926594393e-19,1.8525896305316186e-19,1.8565736684037978e-19,1.860557706275977e-19,1.864541873395127e-19,1.8685259112673062e-19,1.8725099491394854e-19,1.8764939870116646e-19,1.880478024883844e-19,1.8844621920029938e-19,1.888446229875173e-19,1.8924302677473523e-19,1.8964143056195315e-19,1.9003983434917107e-19,1.9043825106108607e-19,1.90836654848304e-19,1.9123505863552192e-19,1.9163346242273984e-19,1.9203186620995776e-19,1.9243028292187276e-19,1.9282868670909068e-19,1.932270904963086e-19,1.9362549428352652e-19,1.9402389807074445e-19,1.9442231478265944e-19,1.9482071856987737e-19,1.952191223570953e-19,1.956175261443132e-19,1.9601592993153113e-19,1.9641434664344613e-19,1.9681275043066405e-19,1.9721115421788197e-19,1.976095580050999e-19,1.9800796179231782e-19,1.9840637850423282e-19,1.9880478229145074e-19,1.9920318607866866e-19,1.9960158986588658e-19,1.999999936531045e-19],"y":[1,1,1,1,-1,1,-1,1,-1,-1,1,1,-1,1,-1,-1,-1,1,1,1,-1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1,1,1,-1,-1,1,1,-1,-1,-1,1,1,1,1,-1,-1,1,-1,-1,1,1,1,-1,1,1,1,-1,1,-1,1,-1,1,1,-1,-1,1,-1,1,-1,-1,1,1,-1,-1,-1,-1,-1,-1,1,1,-1,-1,1,-1,-1,1,-1,-1,1,1,-1,1,-1,-1,-1,1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,1,1,1,-1,-1,-1,1,1,1,1,1,-1,1,-1,-1,-1,1,1,1,1,1,-1,-1,1,1,-1,1,-1,-1,-1,1,1,-1,-1,-1,1,-1,-1,-1,1,-1,1,1,1,1,1,1,1,1,-1,1,1,1,-1,-1,1,-1,-1,1,-1,-1,1,-1,-1,1,-1,-1,1,1,1,-1,1,-1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,-1,-1,1,-1,-1,1,-1,-1,-1,1,-1,1,1,1,-1,1,-1,1,1,-1,1,1,1,1,1,1,-1,1,-1,1,-1,-1,1,1,1,1,-1,1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,-1,1,-1,1,-1,1,1,1,1,1,1,1,-1,-1,-1,1,1,-1,-1,1,1,1,1,1,1,-1,1,-1,1,-1,1,1,-1,1,-1,1,1,1,-1,-1,1,1,1,1,1,-1,1,1,-1,-1,1,1,-1,1,-1,-1,-1,-1,-1,1,-1,1,1,-1,-1,1,1,-1,-1,1,1,1,1,1,1,1,1,1,1,-1,1,1,-1,-1,-1,-1,-1,-1,1,-1,1,1,-1,1,1,1,-1,-1,1,1,1,1,-1,-1,-1,-1,1,1,-1,-1,1,-1,-1,-1,-1,-1,-1,1,1,1,1,-1,-1,-1,-1,1,-1,1,1,-1,-1,-1,-1,1,1,1,-1,-1,1,-1,-1,1,1,1,-1,1,-1,-1,-1,-1,-1,-1,1,1,1,1,-1,-1,1,1,1,1,-1,-1,1,-1,-1,-1,1,-1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,-1,1,-1,-1,1,-1,-1,-1,1,1,-1,-1,1,-1,-1,-1,1,-1,-1,-1,1,1,1,1,-1,-1,1,1,1,1,1,1,-1,-1,-1,-1,1,1,-1,-1,-1,1,-1,-1,1,-1,1,-1,1,1,-1,-1,-1,-1,1,-1,1,-1,-1,-1,1,-1,-1,-1,-1,1,1,1,1,-1,1,1,1,1]} diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/test.js b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/test.js new file mode 100644 index 000000000000..d9897d7be6e7 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/test.js @@ -0,0 +1,166 @@ +/** +* @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 isnanf = require( '@stdlib/math/base/assert/is-nanf' ); +var isAlmostSameValue = require( '@stdlib/number/float32/base/assert/is-almost-same-value' ); +var hingeGradient = require( './../lib' ); + + +// FIXTURES // + +var tinyPositive = require( './fixtures/julia/tiny_positive.json' ); +var smallPositive = require( './fixtures/julia/small_positive.json' ); +var tinyNegative = require( './fixtures/julia/tiny_negative.json' ); +var smallNegative = require( './fixtures/julia/small_negative.json' ); + + +// TESTS // + +tape( 'main export is a function', function test( t ) { + t.ok( true, __filename ); + t.strictEqual( typeof hingeGradient, 'function', 'main export is a function' ); + t.end(); +}); + +tape( 'the function computes the hinge loss gradient for tiny positive values', function test( t ) { + var expected; + var th; + var x; + var y; + var p; + var v; + var i; + + x = tinyPositive.x; + th = tinyPositive.t; + y = tinyPositive.y; + p = tinyPositive.p; + expected = tinyPositive.expected; + for ( i = 0; i < y.length; i++ ) { + v = hingeGradient( x[ i ], th[ i ], y[ i ], p[ i ] ); + + // Add 0.0 to normalize signed zero differences: + t.strictEqual( isAlmostSameValue( v + 0.0, expected[ i ], 0 ), true, 'returns expected value' ); + } + t.end(); +}); + +tape( 'the function computes the hinge loss gradient for small positive values', function test( t ) { + var expected; + var th; + var x; + var y; + var p; + var v; + var i; + + x = smallPositive.x; + th = smallPositive.t; + y = smallPositive.y; + p = smallPositive.p; + expected = smallPositive.expected; + for ( i = 0; i < y.length; i++ ) { + v = hingeGradient( x[ i ], th[ i ], y[ i ], p[ i ] ); + + // Add 0.0 to normalize signed zero differences: + t.strictEqual( isAlmostSameValue( v + 0.0, expected[ i ], 0 ), true, 'returns expected value' ); + } + t.end(); +}); + +tape( 'the function computes the hinge loss gradient for tiny negative values', function test( t ) { + var expected; + var th; + var x; + var y; + var p; + var v; + var i; + + x = tinyNegative.x; + th = tinyNegative.t; + y = tinyNegative.y; + p = tinyNegative.p; + expected = tinyNegative.expected; + for ( i = 0; i < y.length; i++ ) { + v = hingeGradient( x[ i ], th[ i ], y[ i ], p[ i ] ); + + // Add 0.0 to normalize signed zero differences: + t.strictEqual( isAlmostSameValue( v + 0.0, expected[ i ], 0 ), true, 'returns expected value' ); + } + t.end(); +}); + +tape( 'the function computes the hinge loss gradient for small negative values', function test( t ) { + var expected; + var th; + var x; + var y; + var p; + var v; + var i; + + x = smallNegative.x; + th = smallNegative.t; + y = smallNegative.y; + p = smallNegative.p; + expected = smallNegative.expected; + for ( i = 0; i < y.length; i++ ) { + v = hingeGradient( x[ i ], th[ i ], y[ i ], p[ i ] ); + + // Add 0.0 to normalize signed zero differences: + t.strictEqual( isAlmostSameValue( v + 0.0, expected[ i ], 0 ), true, 'returns expected value' ); + } + t.end(); +}); + +tape( 'the function returns `NaN` if provided `NaN`', function test( t ) { + var v; + + v = hingeGradient( NaN, 1.0, 1.0, 0.782 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( 1.0, NaN, 1.0, 0.782 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( NaN, NaN, 1.0, 0.782 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( NaN, NaN, NaN, 0.782 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( NaN, NaN, NaN, NaN ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + t.end(); +}); + +tape( 'the function returns `NaN` if y is not +1 or -1', function test( t ) { + var v; + + v = hingeGradient( 3.0, 1.0, -0.9, 1.0 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( 2.4, 1.0, 0.453, 0.76 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + t.end(); +}); diff --git a/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/test.native.js b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/test.native.js new file mode 100644 index 000000000000..5262f2c7c053 --- /dev/null +++ b/lib/node_modules/@stdlib/ml/base/loss/float32/hinge-gradient/test/test.native.js @@ -0,0 +1,175 @@ +/** +* @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 resolve = require( 'path' ).resolve; +var tape = require( 'tape' ); +var isnanf = require( '@stdlib/math/base/assert/is-nanf' ); +var isAlmostSameValue = require( '@stdlib/number/float32/base/assert/is-almost-same-value' ); +var tryRequire = require( '@stdlib/utils/try-require' ); + + +// FIXTURES // + +var tinyPositive = require( './fixtures/julia/tiny_positive.json' ); +var smallPositive = require( './fixtures/julia/small_positive.json' ); +var tinyNegative = require( './fixtures/julia/tiny_negative.json' ); +var smallNegative = require( './fixtures/julia/small_negative.json' ); + + +// VARIABLES // + +var hingeGradient = tryRequire( resolve( __dirname, './../lib/native.js' ) ); +var opts = { + 'skip': ( hingeGradient instanceof Error ) +}; + + +// TESTS // + +tape( 'main export is a function', opts, function test( t ) { + t.ok( true, __filename ); + t.strictEqual( typeof hingeGradient, 'function', 'main export is a function' ); + t.end(); +}); + +tape( 'the function computes the hinge loss gradient for tiny positive values', opts, function test( t ) { + var expected; + var th; + var x; + var y; + var p; + var v; + var i; + + x = tinyPositive.x; + th = tinyPositive.t; + y = tinyPositive.y; + p = tinyPositive.p; + expected = tinyPositive.expected; + for ( i = 0; i < y.length; i++ ) { + v = hingeGradient( x[ i ], th[ i ], y[ i ], p[ i ] ); + + // Add 0.0 to normalize signed zero differences: + t.strictEqual( isAlmostSameValue( v + 0.0, expected[ i ], 0 ), true, 'returns expected value' ); + } + t.end(); +}); + +tape( 'the function computes the hinge loss gradient for small positive values', opts, function test( t ) { + var expected; + var th; + var x; + var y; + var p; + var v; + var i; + + x = smallPositive.x; + th = smallPositive.t; + y = smallPositive.y; + p = smallPositive.p; + expected = smallPositive.expected; + for ( i = 0; i < y.length; i++ ) { + v = hingeGradient( x[ i ], th[ i ], y[ i ], p[ i ] ); + + // Add 0.0 to normalize signed zero differences: + t.strictEqual( isAlmostSameValue( v + 0.0, expected[ i ], 0 ), true, 'returns expected value' ); + } + t.end(); +}); + +tape( 'the function computes the hinge loss gradient for tiny negative values', opts, function test( t ) { + var expected; + var th; + var x; + var y; + var p; + var v; + var i; + + x = tinyNegative.x; + th = tinyNegative.t; + y = tinyNegative.y; + p = tinyNegative.p; + expected = tinyNegative.expected; + for ( i = 0; i < y.length; i++ ) { + v = hingeGradient( x[ i ], th[ i ], y[ i ], p[ i ] ); + + // Add 0.0 to normalize signed zero differences: + t.strictEqual( isAlmostSameValue( v + 0.0, expected[ i ], 0 ), true, 'returns expected value' ); + } + t.end(); +}); + +tape( 'the function computes the hinge loss gradient for small negative values', opts, function test( t ) { + var expected; + var th; + var x; + var y; + var p; + var v; + var i; + + x = smallNegative.x; + th = smallNegative.t; + y = smallNegative.y; + p = smallNegative.p; + expected = smallNegative.expected; + for ( i = 0; i < y.length; i++ ) { + v = hingeGradient( x[ i ], th[ i ], y[ i ], p[ i ] ); + + // Add 0.0 to normalize signed zero differences: + t.strictEqual( isAlmostSameValue( v + 0.0, expected[ i ], 0 ), true, 'returns expected value' ); + } + t.end(); +}); + +tape( 'the function returns `NaN` if provided `NaN`', opts, function test( t ) { + var v; + + v = hingeGradient( NaN, 1.0, 1.0, 0.782 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( 1.0, NaN, 1.0, 0.782 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( NaN, NaN, 1.0, 0.782 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( NaN, NaN, NaN, 0.782 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( NaN, NaN, NaN, NaN ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + t.end(); +}); + +tape( 'the function returns `NaN` if y is not +1 or -1', opts, function test( t ) { + var v; + + v = hingeGradient( 3.0, 1.0, -0.9, 1.0 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + + v = hingeGradient( 2.4, 1.0, 0.453, 0.76 ); + t.strictEqual( isnanf( v ), true, 'returns expected value' ); + t.end(); +});