From 23c6125747c0d706fc52cf155e1278aaee7e9484 Mon Sep 17 00:00:00 2001 From: 0PrashantYadav0 Date: Sat, 17 Oct 2026 21:37:31 +0530 Subject: [PATCH 1/2] fix: correct MGF in `stats/base/dists/negative-binomial/mgf` --- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown_pkg_readmes status: passed - task: lint_markdown_docs status: na - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: passed - task: lint_javascript_src status: passed - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: passed - task: lint_javascript_benchmarks status: passed - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: missing_dependencies - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: passed - task: lint_license_headers status: passed --- --- .../dists/negative-binomial/ctor/README.md | 2 +- .../negative-binomial/ctor/docs/repl.txt | 2 +- .../dists/negative-binomial/ctor/lib/main.js | 2 +- .../dists/negative-binomial/mgf/README.md | 30 ++++---- .../mgf/benchmark/benchmark.js | 2 +- .../mgf/benchmark/benchmark.native.js | 2 +- .../dists/negative-binomial/mgf/docs/repl.txt | 14 ++-- .../mgf/docs/types/index.d.ts | 26 +++---- .../negative-binomial/mgf/lib/factory.js | 10 +-- .../dists/negative-binomial/mgf/lib/index.js | 14 ++-- .../dists/negative-binomial/mgf/lib/main.js | 18 ++--- .../dists/negative-binomial/mgf/lib/native.js | 10 +-- .../dists/negative-binomial/mgf/manifest.json | 12 +-- .../dists/negative-binomial/mgf/src/main.c | 10 +-- .../mgf/test/fixtures/julia/REQUIRE | 3 + .../mgf/test/fixtures/julia/data.json | 1 + .../mgf/test/fixtures/julia/runner.jl | 77 +++++++++++++++++++ .../mgf/test/test.factory.js | 34 ++++---- .../negative-binomial/mgf/test/test.mgf.js | 32 ++++---- .../negative-binomial/mgf/test/test.native.js | 31 ++++---- 20 files changed, 213 insertions(+), 119 deletions(-) create mode 100644 lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/REQUIRE create mode 100644 lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/data.json create mode 100644 lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/runner.jl diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/README.md b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/README.md index 39cceeb992d3..c6688e73db48 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/README.md +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/README.md @@ -204,7 +204,7 @@ Evaluates the [moment-generating function][mgf] (MGF). var nbinomial = new NegativeBinomial( 4.0, 0.2 ); var y = nbinomial.mgf( 0.1 ); -// returns ~1.66 +// returns ~8.878 ``` #### NegativeBinomial.prototype.pmf( x ) diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/docs/repl.txt b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/docs/repl.txt index 77b059c22331..3180847f7bad 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/docs/repl.txt +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/docs/repl.txt @@ -81,7 +81,7 @@ > nbinomial.logpmf( 3.0 ) ~-2.837 > nbinomial.mgf( 0.2 ) - ~36.675 + ~7.405 > nbinomial.pmf( 3.0 ) ~0.059 > nbinomial.quantile( 0.8 ) diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/lib/main.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/lib/main.js index 021ebde1818c..d06fd49b3c36 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/lib/main.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/ctor/lib/main.js @@ -329,7 +329,7 @@ setReadOnly( NegativeBinomial.prototype, 'logpmf', negativeBinomialLogPMF ); * var nbinomial = new NegativeBinomial( 4.0, 0.2 ); * * var v = nbinomial.mgf( 0.1 ); -* // returns ~1.66 +* // returns ~8.878 */ setReadOnly( NegativeBinomial.prototype, 'mgf', negativeBinomialMGF ); diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/README.md b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/README.md index 13ccf548f2bd..37b2f9979fe5 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/README.md +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/README.md @@ -28,20 +28,20 @@ limitations under the License. The [moment-generating function][mgf] for a [negative binomial][negative-binomial-distribution] random variable is - + ```math -M_X(t) := \mathbb{E}\!\left[e^{tX}\right] = \biggl(\frac{\left( 1- p \right) e^t }{1 - p e^t}\biggr)^{\!r} \text{ for }t<-\log p +M_X(t) := \mathbb{E}\!\left[e^{tX}\right] = \biggl(\frac{p}{1 - \left( 1-p \right) e^t}\biggr)^{\!r} \text{ for }t<-\log(1-p) ``` - -where `r > 0` is the number of failures until the experiment is stopped and `0 <= p <= 1` is the success probability. +where `r > 0` is the number of successes until the experiment is stopped and `0 <= p <= 1` is the success probability. @@ -63,26 +63,26 @@ Evaluates the [moment-generating function][mgf] for a [negative binomial][negati ```javascript var y = mgf( 0.05, 20.0, 0.8 ); -// returns ~267.839 +// returns ~1.294 -y = mgf( 0.1, 20.0, 0.1 ); -// returns ~9.347 +y = mgf( 0.1, 20.0, 0.9 ); +// returns ~1.265 ``` While `r` can be interpreted as the number of successes until the experiment is stopped, the [negative binomial][negative-binomial-distribution] distribution is also defined for non-integers `r`. In this case, `r` denotes shape parameter of the [gamma mixing distribution][negative-binomial-mixture-representation]. ```javascript var y = mgf( 0.1, 15.5, 0.5 ); -// returns ~26.375 +// returns ~5.598 -y = mgf( 0.5, 7.4, 0.4 ); -// returns ~2675.677 +y = mgf( 0.5, 7.4, 0.8 ); +// returns ~3.704 ``` -If `t >= -ln( p )`, the function returns `NaN`. +If `t >= -ln( 1-p )`, the function returns `NaN`. ```javascript -var y = mgf( 0.7, 15.5, 0.5 ); // -ln( p ) = ~0.693 +var y = mgf( 0.7, 15.5, 0.5 ); // -ln( 1-p ) = ~0.693 // returns NaN ``` @@ -126,10 +126,10 @@ Returns a function for evaluating the [moment-generating function][mgf] of a [ne ```javascript var myMGF = mgf.factory( 4.3, 0.4 ); var y = myMGF( 0.2 ); -// returns ~4.696 +// returns ~5.672 y = myMGF( 0.4 ); -// returns ~30.83 +// returns ~315.814 ``` @@ -203,7 +203,7 @@ Evaluates the [moment-generating function][mgf] for a [negative binomial][negati ```c double out = stdlib_base_dists_negative_binomial_mgf( 0.05, 20.0, 0.8 ); -// returns ~267.839 +// returns ~1.294 ``` The function accepts the following arguments: diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.js index 0a1a5c490832..af152a63d364 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.js @@ -82,7 +82,7 @@ bench( format( '%s::factory', pkg ), function benchmark( b ) { len = 100; t = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - t[ i ] = uniform( 0.0, -ln( p ) ); + t[ i ] = uniform( 0.0, -ln( 1.0 - p ) ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.native.js index 2762517f62e5..021557b7e170 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.native.js @@ -57,7 +57,7 @@ bench( format( '%s::native', pkg ), opts, function benchmark( b ) { p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { p[ i ] = uniform( EPS, 1.0 ); - t[ i ] = uniform( 0.0, -ln( p[ i ] ) ); + t[ i ] = uniform( 0.0, -ln( 1.0 - p[ i ] ) ); r[ i ] = discreteUniform( 1, 100 ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/docs/repl.txt b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/docs/repl.txt index 38ee6a8e4c88..3d3c47f339bf 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/docs/repl.txt +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/docs/repl.txt @@ -31,11 +31,11 @@ Examples -------- > var y = {{alias}}( 0.05, 20.0, 0.8 ) - ~267.839 - > y = {{alias}}( 0.1, 20.0, 0.1 ) - ~9.347 - > y = {{alias}}( 0.5, 10.0, 0.4 ) - ~42822.023 + ~1.294 + > y = {{alias}}( 0.1, 20.0, 0.9 ) + ~1.265 + > y = {{alias}}( 0.5, 10.0, 0.8 ) + ~5.868 > y = {{alias}}( 0.1, 0.0, 0.5 ) NaN @@ -77,9 +77,9 @@ -------- > var myMGF = {{alias}}.factory( 4.3, 0.4 ); > var y = myMGF( 0.2 ) - ~4.696 + ~5.672 > y = myMGF( 0.4 ) - ~30.83 + ~315.814 See Also -------- diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/docs/types/index.d.ts b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/docs/types/index.d.ts index 6d394632e0a9..a96edb18f593 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/docs/types/index.d.ts +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/docs/types/index.d.ts @@ -45,15 +45,15 @@ interface MGF { * * @example * var y = mgf( 0.05, 20.0, 0.8 ); - * // returns ~267.839 + * // returns ~1.294 * * @example - * var y = mgf( 0.1, 20.0, 0.1 ); - * // returns ~9.347 + * var y = mgf( 0.1, 20.0, 0.9 ); + * // returns ~1.265 * * @example - * var y = mgf( 0.5, 10.0, 0.4 ); - * // returns ~42822.023 + * var y = mgf( 0.5, 10.0, 0.8 ); + * // returns ~5.868 * * @example * var y = mgf( 0.1, 0.0, 0.5 ); @@ -95,7 +95,7 @@ interface MGF { * @example * var myMGF = mgf.factory( 4.3, 0.4 ); * var y = myMGF( 0.2 ); - * // returns ~4.696 + * // returns ~5.672 */ factory( r: number, p: number ): Unary; } @@ -110,20 +110,20 @@ interface MGF { * * @example * var y = mgf( 0.05, 20.0, 0.8 ); -* // returns ~267.839 +* // returns ~1.294 * -* y = mgf( 0.1, 20.0, 0.1 ); -* // returns ~9.347 +* y = mgf( 0.1, 20.0, 0.9 ); +* // returns ~1.265 * -* y = mgf( 0.5, 10.0, 0.4 ); -* // returns ~42822.023 +* y = mgf( 0.5, 10.0, 0.8 ); +* // returns ~5.868 * * var myMGF = mgf.factory( 4.3, 0.4 ); * y = myMGF( 0.2 ); -* // returns ~4.696 +* // returns ~5.672 * * y = myMGF( 0.4 ); -* // returns ~30.83 +* // returns ~315.814 */ declare var mgf: MGF; diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/factory.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/factory.js index cb9e5c465b9d..523c39217fa1 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/factory.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/factory.js @@ -22,9 +22,9 @@ var constantFunction = require( '@stdlib/utils/constant-function' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); -var exp = require( '@stdlib/math/base/special/exp' ); +var expm1 = require( '@stdlib/math/base/special/expm1' ); var pow = require( '@stdlib/math/base/special/pow' ); -var ln = require( '@stdlib/math/base/special/ln' ); +var log1p = require( '@stdlib/math/base/special/log1p' ); // MAIN // @@ -39,7 +39,7 @@ var ln = require( '@stdlib/math/base/special/ln' ); * @example * var mgf = factory( 4.3, 0.4 ); * var y = mgf( 0.2 ); -* // returns ~4.696 +* // returns ~5.672 */ function factory( r, p ) { if ( @@ -65,10 +65,10 @@ function factory( r, p ) { * // returns */ function mgf( t ) { - if ( isnan( t ) || t >= -ln( p ) ) { + if ( isnan( t ) || t >= -log1p( -p ) ) { return NaN; } - return pow( ( (1.0 - p) * exp( t ) ) / ( 1.0 - (p * exp( t )) ), r ); + return pow( p / ( p - ((1.0 - p) * expm1( t )) ), r ); } } diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/index.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/index.js index b269b9a13f39..e44d39430afe 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/index.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/index.js @@ -27,20 +27,20 @@ * var mgf = require( '@stdlib/stats/base/dists/negative-binomial/mgf' ); * * var y = mgf( 0.05, 20.0, 0.8 ); -* // returns ~267.839 +* // returns ~1.294 * -* y = mgf( 0.1, 20.0, 0.1 ); -* // returns ~9.347 +* y = mgf( 0.1, 20.0, 0.9 ); +* // returns ~1.265 * -* y = mgf( 0.5, 10.0, 0.4 ); -* // returns ~42822.023 +* y = mgf( 0.5, 10.0, 0.8 ); +* // returns ~5.868 * * var myMGF = mgf.factory( 4.3, 0.4 ); * y = myMGF( 0.2 ); -* // returns ~4.696 +* // returns ~5.672 * * y = myMGF( 0.4 ); -* // returns ~30.83 +* // returns ~315.814 */ // MODULES // diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/main.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/main.js index d4e2ea5c5206..a36bb5e723bb 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/main.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/main.js @@ -21,9 +21,9 @@ // MODULES // var isnan = require( '@stdlib/math/base/assert/is-nan' ); -var exp = require( '@stdlib/math/base/special/exp' ); +var expm1 = require( '@stdlib/math/base/special/expm1' ); var pow = require( '@stdlib/math/base/special/pow' ); -var ln = require( '@stdlib/math/base/special/ln' ); +var log1p = require( '@stdlib/math/base/special/log1p' ); // MAIN // @@ -38,15 +38,15 @@ var ln = require( '@stdlib/math/base/special/ln' ); * * @example * var y = mgf( 0.05, 20.0, 0.8 ); -* // returns ~267.839 +* // returns ~1.294 * * @example -* var y = mgf( 0.1, 20.0, 0.1 ); -* // returns ~9.347 +* var y = mgf( 0.1, 20.0, 0.9 ); +* // returns ~1.265 * * @example -* var y = mgf( 0.5, 10.0, 0.4 ); -* // returns ~42822.023 +* var y = mgf( 0.5, 10.0, 0.8 ); +* // returns ~5.868 * * @example * var y = mgf( 0.1, 0.0, 0.5 ); @@ -84,11 +84,11 @@ function mgf( t, r, p ) { r <= 0.0 || p < 0.0 || p > 1.0 || - t >= -ln( p ) + t >= -log1p( -p ) ) { return NaN; } - return pow( ( (1.0 - p) * exp( t ) ) / ( 1.0 - (p * exp( t )) ), r ); + return pow( p / ( p - ((1.0 - p) * expm1( t )) ), r ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/native.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/native.js index 0e4bef593ebf..08a069f46f09 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/lib/native.js @@ -36,15 +36,15 @@ var addon = require( './../src/addon.node' ); * * @example * var y = mgf( 0.05, 20.0, 0.8 ); -* // returns ~267.839 +* // returns ~1.294 * * @example -* var y = mgf( 0.1, 20.0, 0.1 ); -* // returns ~9.347 +* var y = mgf( 0.1, 20.0, 0.9 ); +* // returns ~1.265 * * @example -* var y = mgf( 0.5, 10.0, 0.4 ); -* // returns ~42822.023 +* var y = mgf( 0.5, 10.0, 0.8 ); +* // returns ~5.868 * * @example * var y = mgf( 0.1, 0.0, 0.5 ); diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/manifest.json b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/manifest.json index c82926d08d89..5d9343c532b6 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/manifest.json +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/manifest.json @@ -40,9 +40,9 @@ "dependencies": [ "@stdlib/math/base/napi/ternary", "@stdlib/math/base/assert/is-nan", - "@stdlib/math/base/special/exp", + "@stdlib/math/base/special/expm1", "@stdlib/math/base/special/pow", - "@stdlib/math/base/special/ln" + "@stdlib/math/base/special/log1p" ] }, { @@ -58,9 +58,9 @@ "libpath": [], "dependencies": [ "@stdlib/math/base/assert/is-nan", - "@stdlib/math/base/special/exp", + "@stdlib/math/base/special/expm1", "@stdlib/math/base/special/pow", - "@stdlib/math/base/special/ln" + "@stdlib/math/base/special/log1p" ] }, { @@ -76,9 +76,9 @@ "libpath": [], "dependencies": [ "@stdlib/math/base/assert/is-nan", - "@stdlib/math/base/special/exp", + "@stdlib/math/base/special/expm1", "@stdlib/math/base/special/pow", - "@stdlib/math/base/special/ln" + "@stdlib/math/base/special/log1p" ] } ] diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/src/main.c b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/src/main.c index 694daeae5ec2..9f02a4bb9630 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/src/main.c +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/src/main.c @@ -18,8 +18,8 @@ #include "stdlib/stats/base/dists/negative-binomial/mgf.h" #include "stdlib/math/base/assert/is_nan.h" -#include "stdlib/math/base/special/exp.h" -#include "stdlib/math/base/special/ln.h" +#include "stdlib/math/base/special/expm1.h" +#include "stdlib/math/base/special/log1p.h" #include "stdlib/math/base/special/pow.h" /** @@ -32,7 +32,7 @@ * * @example * double y = stdlib_base_dists_negative_binomial_mgf( 0.05, 20.0, 0.8 ); -* // returns ~267.839 +* // returns ~1.294 */ double stdlib_base_dists_negative_binomial_mgf( const double t, const double r, const double p ) { if ( @@ -42,9 +42,9 @@ double stdlib_base_dists_negative_binomial_mgf( const double t, const double r, r <= 0.0 || p < 0.0 || p > 1.0 || - t >= -stdlib_base_ln( p ) + t >= -stdlib_base_log1p( -p ) ) { return 0.0 / 0.0; // NaN } - return stdlib_base_pow( ( ( 1.0 - p ) * stdlib_base_exp( t ) ) / ( 1.0 - ( p * stdlib_base_exp( t ) ) ), r ); + return stdlib_base_pow( p / ( p - ( ( 1.0 - p ) * stdlib_base_expm1( t ) ) ), r ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/REQUIRE b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/REQUIRE new file mode 100644 index 000000000000..67010df15256 --- /dev/null +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/REQUIRE @@ -0,0 +1,3 @@ +Distributions 0.25.131 +julia 1.13 +JSON 1.11 diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/data.json b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/data.json new file mode 100644 index 000000000000..f99f12de271e --- /dev/null +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/data.json @@ -0,0 +1 @@ +{"expected":[0.06890934575151222,0.4941781295922668,1.3394958557710335,23.18397998816791,0.02815127079737662,0.6377452044732435,0.1994435451594667,0.08242985085845353,8593.050182097037,0.5977310596257505,0.047435674266251254,0.07799322574180961,2.164230910919319,0.671960268093534,1.4632378544151379,0.513040457470329,0.19934759230543114,0.7094991946800381,0.3437455987255384,0.39202981062907216,0.5955934598841374,0.10379048609479638,1.2260000166728937,8.493876064162695,155.19281402767746,0.009669463763447312,0.6312322344800922,1.4953552477019647,1.2016186528681267,5.896527788705739,26.370143305977837,0.4944117135503037,1.7138843853915295,0.882195686081171,0.014426838921468855,0.2240589180118839,0.9325623930146314,0.056663812425535955,0.9531071245998249,0.13270001742168358,0.025192828575167536,700.0579321058585,1.1187140493445304,5.968794911664068,0.09599068832489559,41.27926330575226,0.04713882419423173,0.522048398461613,1.9642249628591746,0.03485297089020545,2514.2048514364806,33.145715614015664,1.813007363376206e-5,2.3940311641282226,9646.062393630815,0.36534514286258984,0.7700328268920564,2.109286783555107,6.109139374063561,0.06769308570652909,2.1575714099279533,3.312523669619963,0.8618679737850661,0.45095971031013304,0.012871198977444558,0.013037916481886914,0.2468267872679239,72.9940959133736,1.814219099153404,0.8314751397098924,0.004440613422671804,0.6581043042322426,0.00022615116625839492,0.0028410107643892005,0.023395818841026993,0.3898176301061028,0.3020906745626764,0.14165650068035762,0.0943486227015525,0.3822255014397336,0.4611654392758874,0.0200683774174844,0.08136621484067783,0.13682212224973406,0.3534460279639,0.0627096037570452,0.6516791816639018,0.6109430344348472,11.356341930462076,1.4370780056386079,0.005961554553054288,7.482410902146766,0.38376831528450284,4.72192150403054,5.909099223777797,0.22186601075743187,2.2669809710256156e-5,0.02129019435151617,0.3465431875250685,0.15600459602050404,0.38854429811956476,0.835029973263071,103.14801548960857,0.18287136338524354,6.369509509690719,0.1142326997385906,0.12628183448524125,0.020514942087673144,0.9150743181010346,8.299153979651965,0.011171343511078931,0.8841168671039246,0.4750067306283507,14.364345846391656,0.6705249045184359,0.5682226158416114,1.387530527611275,0.003417124509606575,0.932699104937332,0.03728356368492467,23.44749979279943,0.5204825508892417,2.8061995134117974,1.2438897649092544,0.6341039667119958,1.1884453527432308,0.08322741874780688,7.885976138038255,0.0024352377991217096,0.863521381740556,4.387871591814542,0.9758760630444892,0.8465497045936348,0.08544303563733652,29.807453466320553,0.4471206425621383,0.6724146625969892,0.1345053637076971,0.03616757748628392,11059.71802147351,1.1379530284418353,1.867283677712406,2.0338159152929776,1.6754493221128792,0.0013582497516695918,0.22226638424174866,0.013327224469361857,0.15163575871128857,0.4856245690237708,1.1087742060179908,0.018003793587560143,6018.364803023151,0.9512172175542476,192.58220148013302,614.1021817357722,3389.067979973575,0.645972491934482,0.008827678163834818,2.111765140329444,0.40611654648214407,1.0833777728584055,10.321353642279766,12.47152605358008,0.09566936575654285,102.04115558275899,105.79988443387073,158.9722737851258,5.219258909221754,18.73088377133263,0.27203310475904363,5.77522163894722,0.8502588460159756,0.22255404512225793,2.0031338810663417,0.08545559719481309,2.545011963554441,271.1809767944452,1.9813028957058954,0.00038103710712917167,0.6784594826944097,1.230987664378313,0.6638644393800703,8.798266070313097,0.09550114182053021,0.31369649200275296,6.693548096976819,3509.503089440216,5.244553160549046,42.1005834814392,0.00016717419552957712,1.1925674994816424,0.9138402989079608,1.1185257937072632,18.46303170735112,0.0059352080628391184,1.415359228660431,0.008132594358151264,0.5233533779617635,1.1787263735878557,0.00044556538417746196,0.9638463459212073,0.0017993220869667835,15.581161563485727,18.9531491109302,0.036586963470411585,1.826756912817175,0.0006819391373000953,2.5138472890371664,1.4879144465911092,0.045490076912439587,34.205885386290845,1.691902607765415,15.087044538179377,0.11099469334770765,3.8800014761898884,0.0007186316871694612,0.028482554099345418,0.6017099643835627,0.15195434884893147,0.2128180128979773,0.4155005488993551,0.018581408276697017,0.04055476987603633,0.0008499414010618114,0.904411132209085,228.84541435587863,1.1586793729200053,10.943365861682397,0.02293798749733916,0.0005076354005945967,1.0202278098593724,0.08602077371889402,1.0709142657924786,45.48811431666724,0.6913300835003605,1.4889539745916018,2.0036170126631165,0.00372200147103615,0.3037270366269534,0.6006777482398109,0.7881613382658348,1.1223714261705269,0.1844820171444708,1.507816198045954,1.7265491742041077,0.4144517406765377,0.002569094632671344,0.026174986025088186,441.54521367520397,1.45980001791579,0.07817394815673655,1.2356932767215663,42.82074640566988,0.10012761889882953,5.607642253260505,0.010822322943944128,10.169115987167283,0.2715947340006616,0.005038655413484173,0.004919885770388897,0.0012766913222257697,0.6763462184507504,0.13643604032841591,0.2283808635260007,2.2698634640767756,2.470277848131726,0.0005727371535467336,0.24990705188768045,0.0004203668966591203,0.052060752890647745,0.004460624896836613,0.08199496094129624,1.3915152742784227,1.0097643856044074,0.0033420608309873393,1.8644425621494212,0.9991006540816595,0.8777443960762947,756.0783609906875,0.09947070517348974,5.18971359679838,1.8759057408691089,0.010253694643738468,0.7481376616082047,0.69030556381875,1.036639028060259,0.008169892976104867,0.6259760837854199,0.24511822747337478,1.479320573510683,0.9507147072234615,0.9462068618090894,0.5121870401483425,0.33543432284244223,0.005095759539898711,0.7629239551333034,0.029038657467535287,1.3697032142725636,0.6808880652908573,0.051379848698874166,60.87772392827235,0.27182094802579804,0.9286666867787196,9.197323224367809,33.68147559980529,0.8266037141848357,0.0030659602971502137,0.5803992166571735,0.17503444143472185,0.4074821035348843,0.165040864698928,5.504936722474674,0.9611713258319092,0.15448411017201127,0.34020625985150266,0.024416045142376337,1.1322092779531991,0.10278045173072746,1.5544015954648287,0.0013625663841903212,0.11951485580274981,0.7240575688816892,2.4671746465259043,0.04066685178637748,0.034985806238646486,0.964066322136914,18.082988732583956,0.22741121299873032,0.6974169401925545,0.0013676593059408777,0.00685380941795314,1.0884603696409922,0.3127157671783958,0.33885745452934696,1.5016450906342325,0.5368887461043981,0.5380054367674482,1.6136168808420663,1.1321210389138483,0.46039325499330086,2.352002506671021,253.31322329235886,0.3065744363772094,0.8598530117815342,1.0696390681617247,0.003311685982419418,1.431720243342713,1.5106732203482338,0.19643217774105445,0.0003271058607636131,0.5032466683287304,0.0157332276592999,2.083421436879855,1.1934967901380402,0.3458618685678564,1.1066142434339366,0.2645240695499595,0.6783001442857165,0.0082734125205041,0.05553923053302083,0.0009443671425182974,0.003083459012929388,0.02116577344150347,0.00385156609213922,34.31030337536341,0.13263615991494188,0.8203712309181302,0.07134699546849249,0.5522461078837612,0.3081665858860573,0.116909919847599,0.10432038574117569,0.004432002638264532,0.6974974532837932,7.807163743657232e-5,0.007355751289839017,0.8083495007403215,0.06872276826233142,0.26741563808582725,0.47263898414432554,0.01745389443812018,0.8851356971156545,0.3031641996653174,0.04665732953615786,0.5377734940254639,0.30112910029832063,0.8868980544158949,0.697963468806,2.0195348307366747,0.03912979098032045,0.3293199906688596,0.2796237799127316,1.7554672299680658,0.08732353328870142,0.9738015915729313,0.8929437183424361,0.2370179168439173,0.0011321537836210894,0.07592379479740487,0.04349826604068429,0.11639176301749853,0.007027570830798669,0.7847176209719805,0.004455328917174466,0.9615952278396577,3.3957042158094164,7.160883978068158,0.6247603519420033,0.026052713051246432,0.36161349758748446,28.30946884338114,3.4326238418646366,1.075759854176735,0.31175103485769723,0.6802697655018441,0.43064353546970596,0.7674123599413901,1.9531071769132589,0.01775508636321293,0.007213320466860633,0.5304627187808016,1.0235376597814354,0.3000981103862205,0.2717033811414566,0.5323170256358585,7.423424097142367e-6,0.4861746472865713,1545.5604825421483,240.26045411510012,1508.0914056783988,1.4197191963617442,0.33816254523863654,0.8287327743850381,0.08297733516503117,0.09976255052873599,0.43548406846482146,0.1431258951809782,0.05110648456116707,1.1661461267703086,0.1889738626628406,0.6770489002805555,373.89124524785643,0.02611355804541676,0.012325019246133459,0.4972574460295775,22.32807879393308,0.0002679475611939453,1.238975425034787,0.425788832236604,1.3298987297979328,0.049949028661197235,0.9893021065762282,0.8543416751640652,0.01601751726253593,0.007266279714821802,29.755135076067432,2.917180797740777,0.002097291182767244,0.002587788208088004,0.8392834895509794,0.0457383679206238,0.33820434031929353,0.24206792539976915,0.968596319247106,117.29178226221154,2.0540161578094787,0.9706906650891454,0.9172498786011977,0.00016352034928837823,71.00160023721031,0.8933524101751191,0.7533999360668512,0.1965384109087791,2422.742035192434,26.90400638178338,3190.9114780965942,2.771078261251964,11.613312380345786,0.0021998227991278426,3.2630919989180045,4.620193974201098,0.33817748717094936,0.8292067076880747,0.0049477427757711094,8914.275128559857,0.2276415274834783,0.24885853051723028,0.9347940430933737,25.59878187157427,1.0959291343544904,1.4461312865500668,0.22111855438050487,1.695838801123509,0.050368984620962516,1803.4943228443722,0.7415154813588294,0.2774803176387611,40044.43402662779,0.3018622785371634,0.4078748387067376,0.0033721032361189876,1.1070731672428074,0.03662287888035687,0.9690700388981095,0.8287893571477846,0.22721994207869364,2.425944028131011,0.0016793345459165177,63.22665287080016,4.655441924503851,33.134286681552986,0.3225717099870514,0.7909953610426356,0.28498658496427576,0.703316888595218,0.09712245842962117,4.493318249918333,0.002006372734253284,1.654290984443964,0.17055996401427362,82.63510887120391,2.1891320617786456,0.2006197985115212,1.0643088035785977,0.2186390753611665,89.49553272983972,1.222789624848259,0.10847420374333856,0.3241835523718765,0.006414352843195939,0.0004600858765588765,0.0034066318126586455,0.006940229689465212,0.00922358226825178,0.5817067273043054,0.09158716864311335,0.7409215226225208,1.01919941101372,0.8380915773694798,0.03280768036552571,0.8925636334250149,1.5508113737620721,3.0032103821822953,9.771487334397506,3.075197523176134,2.8730175396790168e-5,0.2971333162300026,0.042816991652174174,0.546225013272885,1.6861706940292425,0.00244615729344846,1.7277115257221245,4.319549817329653,0.14904998062939687,0.034023120611256855,6094.314131378952,0.0031741485238579656,0.0744667162475985,0.5137545827028603,9.09985713608941,57.22089688079996,15.521159340291463,0.28572454594561053,0.0062998461794896285,0.030202204842915328,0.010913996268550592,32.21404606942416,0.007464479327418758,0.33626382888376843,1.4212571881226836,0.010202702819619212,11.761525379928536,0.610101807184175,0.0007256159582653477,0.48232383911302085,0.19783168770787013,0.20356468668043537,406163.4913985648,1.731464728296069,0.546146141027573,9.668079647813327,2.847513364128758,86.79965445467604,191.7281220689679,1189.8220493957429,0.08125239729790888,0.5156620746479479,0.009109667048233664,0.010932203779377848,136.08369226050576,0.609235830460021,0.33756210834862377,4.80969932029175,2.9877427741509783e-5,0.013566820570216536,0.024325173860236166,0.026695994217271878,0.8856464663422844,0.005326709611292918,0.2168034721649602,0.02181339603369357,0.09867181004269823,0.1744406112741416,1.0131341310289048,1.098639487474066,2.3490403506366024,0.34761901894983244,1.8007188744433793,10.361809604999124,0.06633878216260619,0.27100249473617616,1.1291405262646836,0.10445677671240332,0.6745292098453302,2.412925068842547,441.9394609333885,0.462840693733637,0.10677291542514027,0.8051399926808802,0.666881957274279,21.283148902295885,0.04607262339583868,0.2209769376367943,376.70324299183164,1270.165414945412,0.08852356742097899,1.6770451800947597,2.0435631871496267,0.718647920727504,0.7532820990412006,0.06907455341991359,110.3025380583252,0.9882268637173628,0.23640299831710102,0.0517486672824538,3.42221490298282,0.05673539856095228,0.7739587955552514,0.659483560709679,0.015040718515166916,0.0029769142367251115,0.03961496525397337,1.834512913950593,1.0175478150102992,0.02186346480520811,0.5785794405192547,0.9324573536177015,0.028248930749377177,0.15440071039188324,38.55727555116301,0.002884677085123482,0.812723389516837,0.6759222047013337,0.31023763903908325,0.01598388742267228,4.137381821243871,0.0605885381965861,0.002843258336196513,0.7748381225736184,12.941065257529416,140.1423718118509,25.74312687256236,27.147346156110526,1.0262725040111394e-5,0.05608308375554221,3.815162532523026e-5,0.18016392581596422,0.4564134174858102,2.1090823951259385,0.003111862900191867,0.1117906417779243,0.07245630282704707,12.829193883618098,0.0006079895535591794,0.0009494133904133808,1.9880231182360537,38023.077171779856,1.0030256122403327,0.2876797617897024,0.0004082422121761558,0.9203401345272347,0.7582341127694514,0.7088870311890779,0.9575213759779312,1.2370898181693923,0.20419325460600707,74.86873330869075,0.02851876870769731,0.02293074011955749,90.17477170830779,2.625393817717338,0.21257463559044873,0.41323211716810754,1041.6190414389214,240.27715253958377,41.92365490562606,0.07268660223126766,0.003790903513640757,0.16340492681875715,0.2838141791739804,2.020084653678909,22952.350551516814,0.025517605994429336,0.0074734845766574525,24.147950715674366,0.22139063692240338,3.541740656252146,0.5295332235325195,0.9355427803209905,0.4439167220770773,295.1954123883718,0.29359810818739807,0.12024771096222484,5.150542081710298,5.087914617740865e-5,0.8995086857304111,0.08423309161173538,25.546340231802148,0.23668783348709244,0.8228321989610132,0.03390217417545377,3.3067606252954005,0.007400479400841055,2.3964172177351997,2.9684317611980586,1.576646668159002,0.10179489102613289,158.96429526707877,0.19419099644591675,0.27569836073860726,0.24968004284972747,0.03090814232506129,1.4072585071137065e-5,57.596600592817715,18.762688444421975,0.3609574545397426,0.004204131212302034,0.20287073500711517,6.263007429851707,0.8335157550452577,0.32632052173900933,1.636199143978379,1.1342933275381424,0.43412768350427333,11.35355044424954,0.37803386559973334,63.47633564297242,0.7347756315555299,0.6783776458113066,0.2671262147269625,1.6915697637061103e-5,0.17992330211613156,0.5010398812803729,1.0456715401104293,0.5690942183404625,59.797828768265795,0.6138949464159568,0.8561618456748199,7081.578512737264,0.7194988925291591,0.9842018422982471,0.6007577686976423,1.3605603562016668,0.0018357989682998156,0.4211386586704868,7.533163991376264,0.009624727263192958,0.02408693670975208,0.13651959504419348,13874.187043640404,0.09553262485159518,0.057570070176361524,1.4299885718239396,1.1144676434398715,0.8833474723702537,43.968417136673196,0.985282671476762,0.003597596416067779,1.3051715246608286,0.009201428746821623,0.12011257869377509,1.5094328065845772,76.37063632666123,10.219950885319376,0.28159827514833385,0.04617589939853405,1.0660160636901592,0.4475286866530799,0.0038869859950618406,4.0291750628907765,0.6120685412381931,0.12739461681971356,20.861300040927095,2.201538070439305,75.2105272275929,4.7387126944762847e-5,0.2667293050706575,0.7510058971812543,6.01068942769035,5.795344445350683,2.3023384632826853,0.7368206408096534,240.7618562670959,0.9738225226058582,0.7111493278910064,34.305374178100394,9580.173989364479,0.19520301075675103,1.8249718912085495,0.3967760874531224,111.18459311468165,94.94665373846065,5.804832061022105,2.249205282127255,0.43134129753375183,0.1035566655708678,0.6589144479179275,0.698771786474478,0.27871451854570944,0.5007768088668886,2.381755708741653,0.6634756753650365,0.013323706078533339,8.937037510104767,0.6556167184694806,0.00014633112634889156,0.9563980789846123,1.3724400386985223,0.27724861686725777,0.396951205943139,1063.5011934831025,0.2090408651153312,0.08888158932715352,0.8343870918048588,0.37409600216191474,0.0047008573955776645,16.065927211860135,0.022088836559887717,0.6840477446313722,0.05410445833367392,0.5168073139864332,0.0010314797744052499,2.6957840809176385,10.219069346915301,5.656318571654988,0.7297204618581671,0.5287721059786595,0.4437207805739449,0.004438290448112827,7.393354403755922,0.03965589880024837,0.053903070529029574,0.11410757258652669,8.345386692945754,0.4380160332775308,2230.1243181624504,1.1075917765252472,0.017178894861344732,0.02745909461235386,0.44671524278666097,0.6125734995906795,0.7968063154173556,0.890045262770368,0.008560811809239115,34413.988356086265,1.7648103134430306,1.002715765316021,0.008703155526811036,0.8522102093930679,0.8130578910843035,85.43356516054206,0.11501622166929626,0.46629652490261525,14.39003972555203,0.05235367670683635,0.9592225356904645,0.39132633995622945,1.0885217148999375,0.0025163594317433573,0.08048946416771093,0.2815866687941084,0.06330950224575112,0.01248373871722596,0.6677172866905486,0.03307225249076512,0.26071154136527225,0.1638413992532128,0.643613094274411,4.056035015351941,2.491269126084427,0.1581135918518563,0.02742795425078816,0.16779528839464003,0.8589168921770698,0.0171706542980718,0.09194091370588353,0.4850004504299992,0.07124150475526411,0.20163984218770453,0.0013041679596019866,18.311574778115137,16.50411410833485,0.4494914091931417,0.4955197559910851,0.40385829051945205,5.4047529731207025,0.11382024519437545,0.5926027736175553,0.002549112061477817,0.5892360274212586,1.6432762035217925,0.0027027659563750002,0.5869429281009135,0.015690675373300454,0.568610266952247,0.11680584592615736,69.8579536468467,0.4697633972036315,0.04695239479195029,461.3435230797117,0.0005825351726754219,0.10222811393651043,0.08628034583121011,238.51988676749127,1.1350360250932967,0.17600754831241996,18.763578860710947,0.7012304219638013,0.08630448173354667,3.247107043208574,1.1345000465603283,0.5473714946317535,0.04066902948125323,1.2099360136779083,0.01234439616078077,1.8599074906375588,0.07140505498452139,0.6941185419010764,1.3183414821913424,33.69501159480491,0.2681450278254464,252.48862459135213,0.036496895908130815,0.8415744669632408,0.24217454025569077,0.012465219036918931,0.07912488932259375,1.0156620961458636,0.2547125049641358,4.067237871674445,0.040158071994842164,0.8283406527693238,0.7802851046792068,11.775185508996834,1.0454362130785415,1.7270117004950647,0.03219699715542746,1.0122061552721326,3.171711617877947,568.1244025978071,0.8330348312091183,0.3706704909605839,0.00038617429096055267,28.51161927437798,0.21345993011851608,1.8203386575766003,1.1930693889684363,0.14254168608363943,0.9265328129881787,0.01649170950944142,1.6287084082308119,2.494526981373925,0.037645764507610834,1.100217017877016,0.0008160611841922809,0.007838498503929278,0.0781737091253048,1.5238132213139075,0.07557039539650386,0.05414773898056518,0.6500321576259037,0.7808272907334894,0.42252958320525486,0.2690461963114733,0.564898222449363,2.9458358960024995,5.670754187970302,0.48005359158956945,0.31344002001729726,0.8823872399527184,7.844979661741625,0.17116879282130812,0.3344256666281366,1.2572583493027565,0.5075455751804536,2.645341783306422,0.031443424829882695,0.8718834107893405,0.05320213060033045,3349.481786389516],"p":[0.6294764248815244,0.9582569216499875,0.8203479925869585,0.6681878853984997,0.5806286157009722,0.2462393572573235,0.7911184723056671,0.7047428240933356,0.20473921450857147,0.3069589521323286,0.7847328572604408,0.2837895450412353,0.6496357677707674,0.9052417082608366,0.11876378803566956,0.9075135822313262,0.6765782787507627,0.9097534079218497,0.22640160829887424,0.6905071671782118,0.03437515757548282,0.0020135826266325374,0.9345246328379159,0.9100599532547432,0.6057934333815055,0.593577345919604,0.8969398873493817,0.8198416804871221,0.00962595185112125,0.9020029721884265,0.5921178942623254,0.013788262175087551,0.7675792851654227,0.8351480169963109,0.5163353727489697,0.1768702885719421,0.9840248845797606,0.32906968054839936,0.9837210900719876,0.8836242340919858,0.12012480648925439,0.5351341852446009,0.664318402175009,0.6337434417884925,0.189540425092235,0.8230543586697696,0.6478599133724604,0.5457044018314661,0.8484283593093576,0.647551067638917,0.5289248703840036,0.5271680020966442,0.1032120263572146,0.023575941393920496,0.46924599740479467,0.14577372953672185,0.9396542217376056,0.586349144863227,0.09009030517466399,0.7134559671151056,0.9265337467484762,0.6038645651176426,0.35792029764038247,0.7894505487636673,0.23763718625571018,0.37783161313917657,0.7351936062218603,0.03293584369367131,0.3822957842242557,0.8983168615157501,0.23361944072287677,0.7059238805659345,0.06576687708798845,0.13568081493021056,0.07429340399718243,0.7738467464269488,0.780826515460733,0.17145821658966265,0.8592080996746805,0.11695528485520457,0.17454448283061408,0.6593656462006209,0.49826808438617,0.7533432862665308,0.5714745081477525,0.16125746305112965,0.9427471489755392,0.6523209935068864,0.5435603215409989,0.2999462117256272,0.49205168380528586,0.8157994074059427,0.7436609554179794,0.4063494714952981,0.5240475778148931,0.14109676016581418,0.08040938759973992,0.5403116030086856,0.9160039367004632,0.7324965645373607,0.8982039182420027,0.4267326299745181,0.0135661996384554,0.36418472160722326,0.41885825667670973,0.5827255742235367,0.8298517333290414,0.6472012987982276,0.9836358857105454,0.9540038820378695,0.2866640900525371,0.9443274679544841,0.9204252966231856,0.0377696786896321,0.8859359348739133,0.9126387166919785,0.24380087064612832,0.38921165846025796,0.7916199651909843,0.742015090267528,0.10341447553274397,0.25259726508912805,0.7603972508846151,0.8280670833017537,0.8774322911364132,0.27917698213336306,0.6960313526421575,0.3100103922186874,0.06277800067757144,0.9769539638551497,0.5612295195751177,0.8904398435068075,0.7316175537179447,0.3194155721373162,0.494926356432669,0.8375317939016478,0.9740408225016851,0.6652475713947157,0.17737056627038872,0.012169966088517947,0.9865673322609123,0.8031565635050547,0.2733158668113196,0.8561272504032882,0.12516804928532654,0.2721550734277982,0.1563778953407048,0.8452695872225585,0.10713881459620644,0.09155989245800089,0.19213087815597307,0.005286834662813766,0.9750351165202586,0.5191615153997075,0.014586615103692968,0.5115070648309343,0.7202723453876392,0.5397612144745204,0.07873155331374004,0.5961820826618618,0.9478679953822061,0.3180752150317666,0.37383091285916636,0.3809369584993043,0.21922941564949894,0.269140072019849,0.46838350749450297,0.04414400578175626,0.5772501145771882,0.8469603030035421,0.1290921932344936,0.3333337934029932,0.7663295249866081,0.7282829969904424,0.753089405245679,0.42986509241719184,0.4437717619255104,0.0037639214133403653,0.43881109746865943,0.9429186306028169,0.8234559016207397,0.03184739452781904,0.7962266312972103,0.5269761105114347,0.8983980988208297,0.1877944087334562,0.2631640819395359,0.08240318160979443,0.4996322400850599,0.15089015284388652,0.7295075913787914,0.44635433671909297,0.8080323813253865,0.16374238340554614,0.40038696608605795,0.8459152030850338,0.6208508943742214,0.06659303590548837,0.10027082872161175,0.015080031171682329,0.6360013155409951,0.5469682939590765,0.12747714425746826,0.8117675476626225,0.14036176360601926,0.7550459379290145,0.30569436199266686,0.4882269162276165,0.5566695456631623,0.18411288018266503,0.3375529583717616,0.4547678956945006,0.7788607167911025,0.1995605698556041,0.7425372148016803,0.3743881718474754,0.4646942081346219,0.7879514851365107,0.419716405656131,0.09523574757070752,0.24279009303501697,0.12867326523061728,0.6381449159074658,0.24268058855973185,0.7173932415793288,0.13557828791394544,0.2847821519147491,0.7111698728235246,0.4568978101567349,0.43124885363589527,0.6860603395978342,0.03401729970709677,0.34592627913036245,0.8638789990840139,0.7106926152477683,0.9316669054780081,0.3976960506287397,0.04111858935966772,0.04942456683684315,0.23017591274398075,0.905874362290744,0.05710191430092404,0.8453310135474202,0.9272287771800667,0.25979966810963995,0.2340440768395573,0.26683430102349204,0.03993659586098186,0.2670880562646919,0.4820734395360553,0.3744400116134322,0.6001314668552512,0.11194677452936153,0.45465056392324954,0.0127773560663339,0.009678213629831456,0.028200693052559456,0.5878723460745291,0.365421296954454,0.03568231104147368,0.0453834730454622,0.7365515488912393,0.03024689378157086,0.6201576754476583,0.9673008911818308,0.7126185500195746,0.026834806239037667,0.5096573174315091,0.37189014459488656,0.05303959415595527,0.24591900107760645,0.8173741635210918,0.8174349716146103,0.23535886221412905,0.1315078909243541,0.7499003392069464,0.9758005538368042,0.460677443684396,0.630480769428008,0.7719683747765088,0.05603896556866084,0.846728211129331,0.21504880644376778,0.8372952064143845,0.3395621187162605,0.9534724105618743,0.00954739432155649,0.8798936689492012,0.7565502832598178,0.5929643146973724,0.9638531442538533,0.8427032991352964,0.8353148490971016,0.9020060706526922,0.09251522409368795,0.17147043212741142,0.13394676748719803,0.6220777778137943,0.6854804335301372,0.6936759156986294,0.6055893850411698,0.07857811525387881,0.9163601617430494,0.4110625408780688,0.700717638191532,0.5265223001473273,0.269937799023767,0.698482836809329,0.38352848908043224,0.7738658986050178,0.48654110380425053,0.8319649756194788,0.5550040564330104,0.7547715046500459,0.7548017688293466,0.139283088729102,0.532452303719582,0.8506000910797522,0.7288108993938505,0.34147120273447074,0.39309714632349146,0.44944001109222,0.15711434753893727,0.02624508899066169,0.24293034622436194,0.9870050804068096,0.15407934184198024,0.8056317316272452,0.7539255310400906,0.09465347826244275,0.03268496812894339,0.6328947307003545,0.16534936232748587,0.06508123131610843,0.7602890000246718,0.4156724011537549,0.9326762683585448,0.586355054624446,0.1993910476980788,0.5406615839481121,0.05395457240999202,0.46874819120807176,0.8753557630009772,0.15290536230083618,0.8106503678825149,0.47512404714324186,0.9256943407204979,0.9207271530441143,0.9101340508676389,0.11026152305642445,0.8999175166906731,0.09183497148921205,0.2726757737441641,0.970156181714346,0.9286300385307504,0.5516252065578915,0.17317755604945606,0.8258652683559201,0.4823654483485028,0.6413620087304962,0.12999884438551956,0.5284516091824817,0.7809345450101933,0.24585019193463842,0.46750495473494713,0.5581230713881257,0.9854159821384165,0.37186273164351513,0.16717264413895472,0.11572488534695047,0.4772071278639761,0.8475248734252568,0.03102470884796915,0.7650235302989551,0.038271836198601084,0.1522577299810548,0.9861557561302247,0.41299564299979796,0.41058433068681943,0.24184748576027537,0.47583512484426815,0.9768845671670267,0.8423626267552081,0.33209740524459974,0.14150733520158731,0.9017448707193944,0.8931574013814333,0.9583845465230791,0.7334730339310176,0.7611385408395652,0.8686225983457768,0.5479880923727952,0.4914212487321089,0.6323573926154018,0.8573698398198578,0.4236760794957356,0.3493488649144746,0.5129535290644548,0.4390392718364109,0.5334415603422088,0.5634677397396595,0.5677339445046603,0.3105828857603131,0.5438073445600585,0.9389491363950369,0.9193844965341428,0.04203105862416745,0.488001629234215,0.5613933374913668,0.8382145184956822,0.16994663670933807,0.36617544415587877,0.872157461251975,0.30135849483728205,0.035369536934063195,0.7611173247540803,0.4397891431421034,0.297415256445947,0.2472687398645762,0.5979423469243993,0.7983005943621998,0.4907495300589668,0.21396273789985798,0.3138696190004161,0.45661750754281827,0.06144893277271335,0.938807471264225,0.08449056609230832,0.07332462109073978,0.5262677882832714,0.9294961172569024,0.38348560710051194,0.9509513769266982,0.6353594142712513,0.12969871372304576,0.6421353521428627,0.7643611199378199,0.6086661557179817,0.6972556594134097,0.27636839663771773,0.5735775046026309,0.6998991064735798,0.47512078524083234,0.21907035905542138,0.8208387737498345,0.7195042929206343,0.09091909378465401,0.37793585866745083,0.7905538907772871,0.4326692356140682,0.4558542296064594,0.9139784581182498,0.09666396254712839,0.2966073827343868,0.15802693860513073,0.1622157269186676,0.3029487083793747,0.00568909249383831,0.6360573570623422,0.6656583216526855,0.42529569465805983,0.7487302867710173,0.1272280163264301,0.9673741458795041,0.004379184930577873,0.6746729060409439,0.5512750931534082,0.8708335405509691,0.25782843545883183,0.6704007099486371,0.19715466112150692,0.6058597398941549,0.36887872839367153,0.48228438206134694,0.27083485417476905,0.47907545147059116,0.8312822709639386,0.45657432192383185,0.4518074518596623,0.31652434600347723,0.2826532543380379,0.6698643850140211,0.5084503409711135,0.428060929634167,0.2617304121811145,0.7555250086407854,0.35610432723936125,0.9031528497806344,0.19879298382181632,0.3274350676115044,0.016861786947606983,0.42604060632824503,0.14995000055352514,0.3626494507598277,0.3726896262967121,0.9603184875240446,0.0695404018510718,0.0254655929549491,0.7087368947978329,0.930977195058982,0.20874552644513578,0.4507861940821851,0.34830060553351705,0.9938699858325536,0.7781785299780434,0.4585751105959589,0.4736688961051594,0.535525241371281,0.34262606440809806,0.8038391847144825,0.03790287027457162,0.7912677188641687,0.9229044144267171,0.012493008634936742,0.9018763229513024,0.7823257483700778,0.014727378086251353,0.5621109508053145,0.2336244207181134,0.25910384420975585,0.10774357186569794,0.6998042597864994,0.16586831482715725,0.38109334578671294,0.3140010341971452,0.6661172966465277,0.13070856787000584,0.2890030576783821,0.5867596424827994,0.36889584727075275,0.36214406703894586,0.3041063480295655,0.23505362312743916,0.6714971941831289,0.47320201965388997,0.5427237459472335,0.9147945858136651,0.6571163841585729,0.520679190666347,0.3314257069857681,0.9900689052135394,0.21424884549771583,0.7623309449885134,0.753466759926213,0.9848293449296662,0.03913849196082264,0.7185611851240378,0.005205027017579744,0.9590454864050023,0.5283131740191319,0.5520614545703412,0.8444210007267785,0.16552860395402547,0.5666204316751324,0.31667918388066507,0.05436332664190502,0.1318957876082465,0.7139318028718856,0.5925785353492234,0.6007894468719014,0.8419209716186093,0.35165265662764267,0.2678759793269062,0.010154128584179856,0.11029771461953286,0.13555935789534468,0.5142509453995722,0.5932382542156366,0.5199662765319867,0.9695754033352505,0.15257805987466122,0.7851400901710076,0.6065193647439843,0.29437935346297806,0.6921003379065488,0.42784906049542126,0.30595337511605736,0.19949025070229642,0.5677057153028986,0.9388211609356849,0.10576092304391238,0.9026120675670787,0.7028468836574796,0.18049435703287098,0.15951723112789196,0.25717741565127605,0.18875933817116264,0.5892887440118394,0.18328527356764324,0.7821077229080177,0.6814084761280833,0.7628606122130579,0.7903374406604632,0.018316067360525712,0.37465256712439887,0.6630848119732171,0.4196811306286873,0.4220333638108993,0.2992144998452213,0.0811823248941681,0.04314783547056522,0.45037781167651514,0.2219755579378464,0.993868896569296,0.5690415565814527,0.6861136865745332,0.6307260844875807,0.7482541513852847,0.08140116666126751,0.1718313115655209,0.33957711001701263,0.9657337460027804,0.7328832246295249,0.7386500202056382,0.7532456852258111,0.546255680562831,0.5507838975825158,0.3544121107579209,0.9460690045995437,0.5716594943646203,0.3423323299385236,0.27570494843995486,0.03406675967997186,0.36131499219958463,0.2308879604022408,0.38096792570140614,0.816181453499995,0.23823641909052595,0.837487297201698,0.981627935058483,0.8063244931024675,0.054966859045207594,0.6878091389268405,0.688519622657863,0.6040961768349415,0.6406611691103993,0.2405103423203483,0.4297464234820437,0.8880584766664633,0.6817114133762717,0.33775505828013497,0.3713716288947868,0.8539375324318844,0.8185332384607544,0.15657797960437136,0.8643467937604372,0.6127466947850663,0.11783276815558597,0.32665285940614175,0.9195894444319164,0.12814441544300403,0.374923688807275,0.5468352752153774,0.005707978659496238,0.740194061594834,0.916029225673365,0.5555695451994472,0.606390827563516,0.8647036854932206,0.9526656824049375,0.6065291917213661,0.5257677152848161,0.4830664360979896,0.07380038143373835,0.0632238283924067,0.04253621685294151,0.6205057229386486,0.9096058114621141,0.9775796916380344,0.2791857177305712,0.7789307017146464,0.37598787082832064,0.16685269534128655,0.23811216862640272,0.566019076968818,0.8929607065746329,0.3024777157577443,0.9990370896797309,0.4203751646964151,0.33196294963476225,0.5826275522843307,0.7211038072035411,0.5002940518351817,0.9873253617037656,0.9443493154972594,0.8542002490167481,0.2595199936349655,0.7195896298899442,0.015889948298760004,0.7386947490368033,0.8950778813642037,0.1877109384145893,0.47177015701876923,0.16717871991475808,0.15677842059745695,0.31711415660259323,0.6421530856879809,0.522685237329565,0.12995732967615725,0.373110966992671,0.5551297223363266,0.05075571289149072,0.6981667924736512,0.33776583388730597,0.8041089692584346,0.4918618303151264,0.8277200003162071,0.8296724662948042,0.9958364728552309,0.20589676939864432,0.1335562607373838,0.15229616697755222,0.15270115369337622,0.2959189481188286,0.029580546604676572,0.9620238817550739,0.5144224277969667,0.4273941312688483,0.053168592546348314,0.9096036581221265,0.09176895705953836,0.04733801043376873,0.01921492712419537,0.0975906433347754,0.15481217498016675,0.4693139776813171,0.3134416314083104,0.08130288770139094,0.4923554561299399,0.356179591780698,0.8933262960750168,0.7675709803027709,0.2598624823046146,0.1502970692006519,0.17374831085735798,0.33584104131411185,0.5133381979675796,0.8883572764010277,0.1477487897901164,0.5403150800569907,0.8044325620118085,0.851890655232748,0.8394665420463786,0.5542558189162926,0.4643293207724627,0.7862253339141981,0.8589902565846009,0.8905937089542701,0.6795202934024771,0.08318943552481473,0.02823863208345312,0.18766549272576205,0.01831201181644826,0.7829329676552106,0.8271348734689167,0.330555571898724,0.01746221458697661,0.6287231380984669,0.4498907232418714,0.7595221677777628,0.9860362878625331,0.7442972939226074,0.2135094779085186,0.3790472360188438,0.24316827896973459,0.4445945119114957,0.4326446620242421,0.1613866036932109,0.7097544246446695,0.4239968597812034,0.7805851064140524,0.3122977681193402,0.8671507020750437,0.7340456567832166,0.8720907501662619,0.39400565934595744,0.9963650511522956,0.14086734685285152,0.79912930070074,0.5358507655625518,0.44245848842247226,0.5497355148985861,0.3404169792129408,0.12469318965597054,0.10055094511065199,0.7535191420284967,0.5994677571727615,0.35385009011071666,0.04350627675074725,0.5404729145478865,0.7255338265189881,0.47729241076129936,0.09684397583037896,0.638940013914631,0.4620314014337433,0.03555569176425277,0.8880725340804545,0.535299852876608,0.027621539678526097,0.4812667279115289,0.677383009740146,0.28213355900542014,0.07906086207555862,0.9680190058573073,0.9752183435685869,0.22857057284985804,0.07215896070333216,0.7088484107555039,0.6796667902599012,0.3858344351375266,0.046877686488299486,0.6088240163153601,0.015378688862088152,0.9330914669772429,0.8819599486421911,0.8307124210747368,0.7636627156380654,0.5841937737816686,0.14328451686048171,0.3390636823692763,0.9179628402220339,0.07270632282170042,0.6523474420596747,0.7109147726497871,0.6466947166691956,0.3473251650903757,0.6421917250406572,0.756201905923219,0.6008465876532395,0.2575917970062753,0.14578584544500672,0.870238811933746,0.17787040734496928,0.5751685303963819,0.42899452111496994,0.5367128589538841,0.504344222350017,0.3067220376513773,0.90055380445573,0.09867850299785086,0.13050947790520362,0.047776421992012374,0.14109349131836468,0.6070861451346583,0.5825341547368119,0.8250468755134273,0.28146226625028725,0.6009451898863882,0.3106305652208642,0.7385412933812838,0.7363854895664081,0.4872655984577544,0.7031038859262011,0.5670160320247524,0.686988630573517,0.2307941775493474,0.9329616088711934,0.40372538332337693,0.12468303456441943,0.8481094952621102,0.5077334792426483,0.7799756387057005,0.4240937169300929,0.3226001389269981,0.44253108495799254,0.4031760137514263,0.5711264643837076,0.22686266349898943,0.43134533989730006,0.7480384550185848,0.3857110701278199,0.7207433638313355,0.8147804920877141,0.5112830287554178,0.004333978647473646,0.9949091908814396,0.045487337161459696,0.19525198223860918,0.5032713558224617,0.21270620455001177,0.34224317420087536,0.16772226532160983,0.33561449030094404,0.7407894477319571,0.36907708285987206,0.28413433512660746,0.006190847573718683,0.43363056315036375,0.3875225754987258,0.49365643818207783,0.8438302904455092,0.02001737431001538,0.30447361765466685,0.8915504080708407,0.5600512473810577,0.6340423808109864,0.47013343505761296,0.03543908472612434,0.07156593345739337,0.17069977511862622,0.22702520798707115,0.3101307446298259,0.13559869799503688,0.40459010421276353,0.03721483229703104,0.7981097639633744,0.4857362160413242,0.3492131425761963,0.5406015927739065,0.8269513136254238,0.5836095666924638,0.18403605679384027,0.829339152453162,0.27570734536602504,0.6112157367507887,0.3568303801344489,0.02168259211682355,0.3703871792569621,0.46303108939408,0.6866185076174633,0.5364047101182613,0.7860684104207335,0.24095947271099194,0.6286680588102294,0.6675474487121547,0.6257816010048617,0.1164657951657263,0.17794188947759704,0.29406995148001036,0.15849965346757,0.956977640998562,0.9355767282482536,0.2915835992472181,0.7635900209613161,0.3446210183561492,0.24572881836841287,0.2614608745806596,0.540483617617275,0.7169748875715547,0.5829520000676922,0.41487664066431407,0.6895007769963226,0.18990257028703417,0.24935138818374647,0.14269149075707088,0.2391509585220527,0.3565134063868306,0.40440277251053225,0.15128181622322534,0.8756415530905506,0.2822044161810039,0.3812995956722496,0.7762766920555416,0.6106718855242373,0.5494682186873335,0.96350699702333,0.19680054668320712,0.2853430865988045,0.5107480949497618,0.3239915258873076,0.9287665337558265,0.47468991694021234,0.39979949902652645,0.3540609882885908,0.5151657301566178,0.14563035776476974,0.12185143078843352,0.7574796365592547,0.30333105661190496,0.13106385039869384,0.8411470768170143,0.8248835388860992,0.40204194331643095,0.9059296365930153,0.5178005542733373,0.18143287116247908,0.38237756128665057,0.8944877809993159,0.734962580225074,0.5561974269385088,0.1725688873373208,0.9824733475961147,0.8516071983505892,0.19585237405247613,0.866469664314758,0.5252837841401061,0.8189956933244157,0.04449756139777805,0.6882274828395984,0.3547361113211185,0.8936188568420311,0.6528513205859209,0.48125082631269367,0.03405159968265248,0.6147428433485524,0.06476331703420646,0.5500581108894581,0.8577955015334296,0.7391628296362222,0.21085118374812073],"r":[19.227872525642923,17.443058107991988,14.58984116068516,14.460395289142875,11.550626274215558,1.8191710374171595,8.961464528049763,12.921936782145465,17.806410693730555,1.1234118657645227,20.083408294060458,4.755477464969291,2.7560319943218543,13.38284089029699,2.946903685920576,13.569206604392086,10.225673398655983,4.989314088244645,2.8072265716621687,12.444764399991652,0.9073188563384722,8.49893234954917,7.771473634232608,14.656722335337076,14.630155694073315,14.44710308062786,5.567794715911962,13.033707542282087,5.346889667475212,9.584197017042575,12.98281569106248,1.5885079311319856,1.7543304595475457,1.40273327713855,18.15396922343358,7.27301895553285,17.796066872586067,8.9216066929476,15.956636832747485,18.596306498080114,7.9546691292308465,16.019529379828608,1.487983636985894,7.1322989886008195,16.960907490883237,12.189955750358747,13.036902666752487,18.02880169808168,10.280306723988236,12.001115966407522,19.49295141414193,15.161901807440147,17.531264201144833,13.86853242719178,20.471242882584846,4.044039284471463,9.28871805174416,9.874226701413944,3.3343972370730164,17.47209559171892,13.08906275039551,3.1139360333738226,0.7516986764485885,5.133425292032931,9.030342866791102,19.29549502731016,19.271113004234753,8.65903511566007,12.251478260294967,7.6822752940600365,13.65816136299874,1.7278892627673499,13.588943566697091,12.631016798146765,12.994228230155432,5.24849121623484,7.614129425016977,5.534932711773523,19.823557285956685,14.543218606477666,12.390804785345132,15.905383358158629,9.893041916564462,16.339357218789264,3.7718103138842314,7.954183995301462,15.602473531661582,20.46796285224264,13.764965314161081,7.843064361610843,17.176355695047015,13.34897327029714,4.570194355015076,4.564553530084782,10.28391272345682,7.702358707612997,18.630649359320536,18.21033475228345,19.045793430174857,10.063423246485323,19.670711129851007,11.42719076664312,9.775140766759991,7.4675445169815635,6.618726528577256,6.987138999530031,15.442361300289571,14.937699907286046,10.706120826418596,13.59488914937555,13.57737609243704,2.805171967464279,11.69478770177405,14.690916537629185,4.873073372372556,7.160147294115346,2.1618102703531235,12.18557789343572,0.7727669405525623,16.80846084056057,4.949143988986146,2.048931484176428,6.344480613415868,3.405328636800273,5.582615521839118,3.2215016804448378,15.250988816551265,3.4590997286765863,13.656943057796642,9.87860795742404,6.8944733843249075,0.7760396269274357,15.700339747873477,5.911487407601474,7.908116842469232,5.776712236208998,19.044747138039284,12.906055918567699,18.616120258268612,19.739357063377426,14.769757256630204,10.0875934073709,2.702687279040507,15.806204093852882,11.228838474291262,2.834917858126244,16.30328639746852,13.354988803202925,1.7507807917784808,4.107816914113233,8.359169744129694,20.184979958072468,17.880604672849845,18.771796742574836,19.074205293739,16.966377997764216,4.3090728534886225,18.078420992346825,9.235055969074912,3.5536351907680825,5.3034175370412635,19.158175691486278,9.13985844040132,11.194912972828147,10.984521249938329,11.051190009725865,11.601636103104651,8.181366682322981,11.389816733721343,9.521865225405566,7.545070998497693,2.620618332066444,10.55126622168785,2.5068738518327067,13.489636360492057,2.2038390686004434,11.85923270840305,3.2272414182938753,18.202710360336095,7.98317661053407,1.9105105853635358,1.7208379048951912,8.372811476921735,6.520444036223866,12.008205177106348,6.025885664733243,14.004768262453746,5.227923548843423,12.37157724775603,18.456186957655863,16.39455191167328,4.629456132097815,9.427741091007801,4.741522259791902,17.086566666326533,3.300702998542788,18.22292236813134,1.629835942425188,18.716013400194175,16.95038380034215,0.84031041207784,19.06517056261759,5.278755925933393,15.50870995703405,17.89389109821301,3.4024669911538292,15.393286429043936,15.586794600646433,6.658043575813938,6.654671567133059,17.564217304060385,1.416736117214103,7.416474581126386,8.131651936638333,17.698798201641242,19.129242611199633,12.554277170030073,3.0788086827321077,14.976106690480124,14.344880182094354,2.868330264118803,10.586800035115303,12.399289533648805,13.865461060425543,0.7182959716201216,18.361606194484384,0.7623502888758211,11.266716340437446,10.345273721417609,18.081310727368543,4.798815402264355,5.68587934496848,7.020732248983007,14.256497921658628,5.155805140828491,18.33065014534285,3.2398401107157233,13.011466451128255,3.6095015671163506,9.255232641434931,3.1652153491902975,2.27931219473334,15.742868057989936,12.176903682255393,7.0172060135776055,2.6870095246707577,14.285943974573149,16.57248919013204,18.459205178892297,11.028889360639242,14.342230514324676,3.892021064015598,18.304061459350503,6.738510207743067,4.407470158909742,8.07412624944311,13.996877359019823,11.842610112743081,13.160898026824256,8.376819796291255,11.123602325317565,2.3083875275264694,7.665277091677,9.246079549271128,16.879199545046315,8.449208464922899,15.46444110749829,19.641105374127424,18.229840586137467,4.773885765850361,14.394266244056752,18.281376244856485,3.058482766686303,7.900152252323915,15.961184647210043,17.917146670794736,0.9716655323645735,1.1601964256143833,18.958589767298626,18.029557010905595,15.892437316477373,2.943123227668358,13.079024180888386,4.021434515642692,1.9379916516649471,1.683219529440016,12.255016992216543,5.978960464043228,10.969278957051841,1.7728023482394257,2.887009214699598,5.137577513613622,4.907027269718434,14.753621344692897,20.420292586191437,0.9081815061750271,20.046260043956703,3.454700578508729,2.394690818387832,12.915690186769563,10.01068426133432,3.304267468079751,5.067349679844368,17.736966429039423,10.770167821499372,0.5719663917313462,18.536005105056038,2.971239835589345,6.828811886163058,8.420009706595492,8.62348573175627,13.499029370666902,2.509725557642652,13.674679328658724,9.088523692027943,9.988095776663245,3.8996348444547753,17.523995761833856,11.18621402444844,17.9132357041463,7.926515806112772,1.358543057997181,4.553287304380344,7.6180123036515,6.278598869800364,4.195790340685779,6.028734304733871,8.79085623490187,1.9646998747233475,12.004390809559276,7.742127390806319,17.752443098637528,8.8541742913789,2.754357561841216,1.254178930115943,12.178561119878479,12.154410668533847,5.4986490811143565,6.576526797585391,18.956403185017752,7.179045839642304,11.421674567634366,15.668108764442296,0.8576454483435532,1.9683569369718064,13.777497388821473,8.965927399277637,10.108515275769584,19.523545076441117,18.848733858900893,7.733778800754791,9.598196202687083,17.687906215167395,3.5297098443456716,17.124535838296662,1.0502995700883484,5.345278686499432,2.6695379034238793,13.056860863110298,19.48196107623584,17.4610894979462,16.713589581211778,19.841824496410066,12.842874029162715,16.769573297251718,11.194154055828168,15.681680545474606,10.132306288658057,9.498531007246067,1.944975785365572,13.378550669135064,18.717422488985445,8.341230487030973,19.281265125137068,16.06203969864622,10.692414267289216,15.748563186575815,11.950231470789909,17.195107318379915,10.095989998036337,10.925302858201675,10.352294461163416,19.378477690614126,13.084025225313622,2.2790632044483234,14.552903247414152,1.845704385596247,8.824741323127485,3.4355886990265967,19.760038236836987,17.421344740313582,3.9457421158136436,1.1228381055617094,8.53904430524604,0.5043063965569057,5.064017952646102,7.300048553471543,17.482653558455336,8.547222809975793,11.664793956390437,8.909857305086463,14.34878876300158,16.355609722583445,20.042074167125865,0.818313201765752,17.54463950357592,11.465703154484363,5.625246569778161,13.225587691844904,13.657573299325252,11.498041683127418,14.70784442872871,3.581414302409524,9.669271127754353,14.632277102865931,12.146367105688881,2.179953109911194,1.6522541882412773,7.325180715065626,16.123018987891133,12.855364490204249,18.776571685157737,6.3482455701631135,17.14070107588588,15.828639263042556,18.866411012890833,15.4042972021346,13.761631117466031,19.451090651257587,14.228552221951043,6.890323559615066,15.328411572971163,3.966783473552022,19.189781891555896,5.1150435104810805,6.18939745503579,11.05589166996806,16.115040153216675,3.4727255190316915,4.437624012573164,1.6889527326514737,16.2500734415376,15.935383395421074,7.7662127481555245,7.661079583198475,15.329524993426977,13.241256984836165,6.59913880706908,11.304121306105198,0.9352735557341769,18.3808352862484,1.0346830811421643,0.5663694684701399,13.694386541479993,16.01940104920064,8.43460609331955,7.797681118176067,19.49621455577765,19.45136531225778,0.6977455469377687,12.853548424098532,8.997467973177102,2.2776940070625713,1.4958663211546903,16.421918047911475,18.011509800369055,9.005831390336988,1.1038137220422057,20.20481573722999,19.42372586123838,1.867999586398736,18.82239291892957,6.62514904478326,17.66817873444311,14.766025655901643,18.615629690861613,9.385520871365959,5.8508617308197,18.33664512467735,3.100933670769112,10.588391146253947,5.979202926527666,0.8041905254838717,13.848197416507828,19.47488756776763,14.87845192841542,6.533740193759876,2.568955365193186,7.847879690081358,1.0041074786446575,16.359211013425565,4.757762342648368,6.3343786897394745,7.590817156084103,16.323891759563846,7.751635397787726,2.0375905018178115,18.869457107546637,13.000271243296876,14.785845726795824,11.89758424015665,3.364846052243697,11.657353021141889,11.830641272857605,2.214060667820183,6.534430411880807,3.037980915414224,19.135636391585642,17.9669749952052,19.229037233246345,6.2944576123288405,10.834610627513626,3.940046491764799,8.576079280848141,7.144530583884263,14.507394776062007,11.913477316070118,17.213132050071366,6.5643284865817915,7.868858754837779,17.168719332909117,2.518354350046103,16.986173827307276,3.3420062043404326,3.0828504019902487,16.890979140955043,3.680356192615579,5.608416632275603,9.165604703308137,11.367588983159964,20.381443171656645,11.05424820634748,19.422052089839163,16.527145161648615,2.3881079455751704,7.684353901859821,4.688399017607097,13.215661494253698,18.681770195190246,7.449690865860186,11.595618669857195,19.74803594914405,9.544040975512239,13.272148263873738,11.973938860768854,19.406956719691944,5.350919499553095,4.916977346394919,15.283567144326444,3.754296247756663,16.364853166168338,3.7821830810652597,14.004585049319715,5.427049126213592,8.77580841987977,19.82935096661199,10.941630475266596,18.171548121644644,16.736251725205474,17.73305458429219,12.660629759359523,14.997072129273192,5.271565470957116,11.75074751374653,6.212499539504467,8.023510278007423,11.268097583747663,15.305155970929766,12.361188961398115,16.660810981258813,9.896413806736792,8.067142674818632,1.6279058758619165,17.084420069317797,17.011675430089248,5.4541752318802335,7.893364405355141,20.301723434428162,19.766844234583157,10.859303178828359,19.50465578825608,14.602564112108471,17.788720392495037,19.960805818739594,16.697357895043645,9.274094992762368,2.2775050581700236,18.447171466775472,15.927998738895301,14.155633983828498,2.4519770303547013,6.539443242789422,6.800532410043285,20.02586218439101,9.26379615405293,16.6830101020693,13.446507864191458,0.6723287805135909,16.406401253263123,6.061552797735507,6.640179237882062,7.057415799645243,17.329014834447904,13.861079115397258,1.375954139096109,1.9752633622949074,9.121120084748757,2.5984154390726206,8.94553528785793,7.086123199586041,3.950890146464791,2.5520545117151867,13.133369514616327,2.580187412575487,9.454419684303176,19.547501665372817,2.7139294438910784,8.461345532676136,14.585716229056652,5.42450048959054,17.07138222235455,9.095549118001033,8.933031342917731,11.880922709241988,18.460770109466527,18.755933029906053,14.175235025610593,2.6220977792555518,3.3991217170198325,16.40779000983112,18.289121679853306,20.338591530153444,8.715185368940684,7.943154213470365,9.546189446309192,12.09900888341825,7.2149311792856885,0.7928533391198229,8.12693413336827,19.935476674160675,12.348174835515508,8.058513337953958,9.468351766492496,0.9323083463305144,9.444354951583476,7.871332184969088,0.769299138104877,16.81749850586835,14.814698686105675,15.238225263080679,13.266021127056232,0.7806260428427398,1.213507969438203,18.56846078179198,19.306930919364753,10.873337372371754,18.198768563487576,18.294615838836098,17.034521898954363,18.094932779358842,10.54013963636135,19.641055965928217,14.337975607108001,18.88770052873775,5.651839002525149,18.90145587360562,5.590212965040126,9.239622690504154,9.728279894078014,10.960480972535713,17.00481045912739,19.096177208488758,10.860545006401887,18.539132242853412,19.496959268532997,6.043350253300298,19.656096482592627,1.1234934712629636,19.19770080849252,19.12814089448616,0.8361601301389894,1.159767297862699,3.3906100356528963,3.8407340010791686,9.273729187495935,13.376085247961818,14.359700360589207,19.194732151658613,9.097036656660158,20.130431778402354,4.538691277979389,6.955208742885256,4.748617069022805,12.428990316402297,11.892245279492535,11.268580235217618,13.62798176306453,15.373002649021172,12.928147998843569,3.180687145202869,15.824631816424574,20.018861198372772,19.144924795400463,11.753281620524046,19.032573647696637,7.371897650681746,14.975879699575444,7.7686266526483205,17.639033445338278,1.514147828662213,13.673484467492854,10.041846505457778,5.47980408844797,7.174790102365651,15.893035970979138,17.061134549472854,10.511298122331013,12.674610707231235,18.046844886104232,10.874278789493477,18.027870814116824,4.666220007770534,20.11197504124995,7.553489567419165,2.000549131223403,0.8624252260993144,4.484634564536753,9.225947689884476,7.226996444891487,15.406063742655327,15.148044781399648,18.870151457244738,20.362926449338225,12.898174598712824,19.65347569998849,2.0685398927304206,17.120690148189794,18.721639679283513,6.295777413518297,0.5321986779985073,15.700574013042853,14.553422476035614,16.469470598478463,3.3739939237284107,7.811723766627307,11.652524873096635,14.871830900777782,17.84880099423905,9.637932325260593,5.907276976079269,18.082560425761255,6.045576272957993,3.938771076949587,17.225072861900998,6.909444283584498,7.236063508718361,7.876172162041721,2.6907086883818305,16.837051489211344,8.013348004091899,8.843802976949329,6.072732736034542,0.8407454524023446,16.788652027530933,8.793781076748644,20.135312821883453,15.117779194949684,7.1502060201803115,8.529976758992392,19.720909845076253,17.184231907550558,8.680009309755325,8.255755941745239,15.831521891555123,1.1727147960910695,13.194194548206674,4.111476903172342,11.776373398517542,16.353012350131635,12.535579404003737,5.540022839508847,1.4966719278850555,15.126927505649785,12.202278174552657,3.1535142016612956,15.28954556713849,4.7614965100731395,6.023883033148489,11.495886778541584,8.723927763524568,3.507551037798859,5.552225291493675,5.30703293037852,18.65713310665394,18.67093867478256,19.902288152752604,19.27545567329279,16.643078619997805,16.365971882864677,10.76218463341281,9.660906423029472,8.882855904306405,19.59718694755584,0.8553258157243655,14.033285739352241,9.109913315801991,19.52950494186824,13.12322942127849,18.679415773366458,2.2591567003246866,9.179968646579365,18.305658642518193,3.6290225917810743,5.4556000885604785,16.7022121503091,14.645186006749658,5.91542273357273,1.845106272701584,3.792047133310687,19.51084893420601,17.047740876574636,1.452026382004354,17.608561304342306,12.134385101820602,7.903634566680837,20.346236053039394,1.5154670062045068,2.6178641123430353,13.445425385840132,2.083632910243289,11.071954574131237,16.063904139008685,6.751841123832622,5.145473772996837,3.849307015831686,16.986334944735457,17.75025793285066,11.586128924648314,4.114303628141222,4.655494470901289,2.0428190909468786,13.90482819757572,7.931240448315011,7.480677362623964,16.765199846751543,6.850791369981749,2.513792371870511,8.041735488592847,16.695795872363302,6.818525653757023,14.510782811075764,10.250823433878875,14.637079283238684,16.28010317707829,6.574285380531257,13.816922321966153,13.666956617181507,10.505685623029507,14.6685271209317,13.246534289198445,11.506871848147702,3.779987479976869,2.899232401760054,12.895310189857184,18.90020158519319,8.436503847302813,0.9461052477265537,15.228976544096568,17.50084390945056,1.0253196863395093,9.845261155154729,10.389392900648236,12.873629134507008,7.974628395734378,4.409044924318654,8.70017439064642,11.96721962926744,3.8535456174964895,15.94855318920964,6.299819705347384,14.386998055700218,10.698376788429488,11.164052771621078,3.1366974798788956,7.883787822856894,5.444585546590199,16.608010762451205,1.6467727283056184,11.304978887950341,12.147774851676564,14.1321745360667,11.729581213539818,8.073300853669377,3.536748998989889,16.67801081881921,19.0550110159848,3.386066305134669,7.067127147948817,8.170159054669343,12.014143432691771,5.19406612041152,12.055875287815194,12.282509742188266,3.721264534829271,1.4733159551963433,11.794035869893541,6.051071875485112,1.3351676865936786,15.94493784276948,11.722031098013579,3.0258289861864958,12.538944225265169,4.003255673685228,20.0301022567736,9.705434383365896,12.9743322032729,11.886015751780299,16.38387396398352,16.539408154865033,19.30218706189188,19.808291429378073,18.24983339589895,19.421502239964603,12.748640685657357,6.044204844301075,15.261269195850579,4.96859884990511,7.8572803511006075,12.73330167532676,3.864215774300461,8.818298322785092,10.870862645897601,8.670443324484891,6.495923951909816,14.880205398558063,9.761488013756756,5.368836329231348,2.8169174498810974,1.222321177856886,10.924464459954702,6.444829480113425,12.522067671208491,10.36451726057195,12.923448883922577,2.666064133549972,12.401251196253742,15.364041879925825,15.107413418725297,6.259759954713406,17.746158501885525,13.74153694104734,1.5394475453039353,15.86195654370989,10.295627758626885,13.299164599931753,13.9389069469031,10.779058516374398,2.8410358369335738,16.80702569162069,19.52654789729819,5.200868837698051,3.576465400477182,19.475835809364327,6.909839429186491,13.042183828221685,20.489530659607322,5.946634478865519,10.752643763033229,0.695504557786188,15.094812945273429,10.884368529024513,15.697681860965107,9.046875670963958,7.694707141174719,19.304050718012654,12.54979155620316,20.47563794595271,3.6259740796368884,11.8987656272942,18.29912690975102,11.969618571727674,14.461556762294355,6.675934661485146,16.60564141674106,9.962829463684661,5.398476662514049,9.877270083347707,4.0626184290887135,14.325121364380593,2.736799305180117,19.409731966899347,16.032206453327742,2.8674157444061406,7.9633646024494915,7.206372949297847,1.4734008295200858,12.186961194244658,2.7128698400947466,14.845449551159735,13.303243346937094],"t":[-0.2924627153471725,-2.9305588762386066,0.08670181994074187,0.3317795660008222,-0.6960503541913019,-0.09611434701946125,-1.3724577510973057,-0.7103850508486913,0.09772188594592554,-0.29753182423048685,-0.9101104637821538,-0.3303217236160794,0.3736374897534059,-0.3397440118239246,0.016198850713401488,-0.682579372001808,-0.4421739299465418,-1.2652156348550905,-0.14555913072580426,-0.19159420716968226,-0.027803571875663326,-0.0006164825927400026,0.31433785214878573,0.8646617576767247,0.37031192288243625,-0.8051532509988788,-1.385120685051317,0.1295689681994767,0.0003281491193994858,0.9382907778438697,0.2802194780989587,-0.00783252796213654,0.6276900614847798,-0.6415378233433405,-0.32955685268635687,-0.05031111511445112,-0.2772556618500587,-0.20599035228444246,-0.20108871759095745,-2.04850623656521,-0.08375217410831177,0.3267018995610124,0.1342803974394411,0.32454596903870975,-0.03526725417792908,0.7990555355938729,-0.6650751519910397,-0.04509940746606206,0.3043735900145451,-0.8987820547164901,0.31584732904516666,0.20691372464342747,-0.10474744026413864,0.0014719294737752407,0.27712909420033227,-0.04944979911762298,-0.5875058293412931,0.09820906056715425,0.04063445909449142,-0.5359446627094071,0.5420874315339836,0.39658093849168974,-0.12998642109303624,-0.992156592428967,-0.214498068917894,-0.1662532405466549,-0.23452986524613095,0.013219263034057457,0.02894740285132073,-0.24182102936477512,-0.16062216590860515,-1.0719711378343648,-0.06205522420887897,-0.09732622441387015,-0.027260184392552456,-1.117076462405061,-0.9326919028351738,-0.09171147779608099,-1.477550447139424,-0.009095972031241135,-0.01372348628769089,-0.7748462820087454,-0.33778736067422516,-0.5031607530642119,-0.5506290807548284,-0.08345310736671463,-0.612804418972599,-0.046794641960100934,0.17622222059384038,0.019173321728383416,-0.4103638215277283,0.48231482188536506,-1.1280444847319586,0.18008546041281293,0.1609950806863035,-0.03611103557768097,-0.07020932573209303,-0.3239050947240318,-0.9781502184303157,-0.8101356024641507,-0.5698741027642101,-0.011908000025280693,0.00518053633303808,-0.15821303195866715,0.16201455590796152,-0.7102527135546969,-1.2017947227264838,-0.7878041989443321,-0.6938600423777391,1.3837341764921849,-0.1716040069912945,-1.4327413643395848,-1.4280284924471338,0.006490362777347107,-1.0903843933652373,-1.9527640124145156,0.04432836504213276,-0.475302339908248,-0.4438306012162474,-0.9720145602290955,0.052940758207514635,-0.1356513447035406,0.38957134302907176,0.26158146915398506,-0.9381554705987569,0.020008376091521094,-0.5199136948900468,0.18396775372074461,-0.037793214226558576,-1.0061632596799617,0.2206869884470401,-0.30085090990067975,-0.0295092757750585,-0.2773434403319583,0.2941664072217989,-1.4729701875914725,-1.5613088195898304,-0.40678250278238487,-0.043000487853673414,0.004622317466046609,0.49458792067376045,0.2190784761962882,0.08331470086793301,0.17492121979539324,-0.12159534738113471,-0.3033395662821446,-0.057851079342912955,-1.7645005993184126,-0.06323891320707917,0.00249873275686593,-0.15868731542878622,0.0018597330526045565,-0.11585427390798397,0.2341804320022444,0.004221602876198812,0.335459235788673,-0.3213499813190176,-0.4318865780002581,0.0066229445987397864,-0.5553264399160869,0.24097878762880012,0.052122377729816115,0.13456038491076708,-0.1549199084147245,0.09211947039941062,0.1193209702153818,0.2714464269261284,0.008410288822884911,0.2698248241504674,-1.664995859834724,0.03027660682733524,-0.03244847636808578,-0.6969996925248844,0.5000093893913979,-0.9418471717249969,0.23149961518278578,0.2626699960338806,0.0007211001659745826,-0.5500921810764805,-1.7289640401387936,0.3925433997453763,-0.008881374965796492,0.6385540906362003,-0.6598324751067672,-2.2657638394929225,0.06068172313462338,0.1464880644525765,0.024103180810485483,0.23151497041408295,-0.11312554967956831,0.028408073993952572,-0.015971162292152046,0.048517735571767244,0.086121094171549,-0.2661320901499104,0.43723752881554995,-0.6829001040110583,-0.03541940383538337,0.0009743711570310182,-0.008866262217058914,-0.08150240731458472,-0.6435535763373433,0.05757010305838255,0.5568549243364743,-0.03371831866683611,0.40563788311621224,-0.31023450244181033,0.053335796391143366,0.07022476297148539,-0.1431422267817484,0.08877137715243975,0.23002216652929305,0.7320308372959209,-0.080546438958637,0.19283752508732965,-0.32190461229719003,-0.3347336694442491,-1.0983328446491445,-0.10200116976803149,-0.012061376179224311,-0.12201850556362119,-0.06989321168988943,-0.734381712258054,-0.23971807666198022,-0.4798135541759614,0.03938651820831163,0.06761227000256925,0.3860211750883443,-0.4627792208614299,-0.5029153065756476,0.009059422962216937,-0.019180922337998615,0.0051228959091534675,0.9126320111975715,-0.201294402669036,0.25688195733798674,0.11997976077245137,-0.02330067093605221,-0.020547630024004084,-0.017072941341731058,-1.3932477530414222,0.002986429442552785,-0.9661173180952096,0.352447291586273,0.025940693499137878,-0.12616318566246315,-0.20896569375370863,-0.010279551098432189,0.0975005768213404,0.030902544606047883,-0.12376418115966438,0.07643262166546619,0.02312222485238055,-0.41457126392033006,0.004181377828423291,-0.007373105945672001,0.004421536090686148,-0.18147948481541373,-0.3353779058737144,-0.033331455940140385,-0.039782198738946575,-0.7258824191038347,-0.009298778973149575,-0.3323181030447149,0.8764204471041868,0.22449896839885483,-0.01725780499065281,-0.07907954437132982,-0.3781705462975899,-0.049202352678148514,-0.1611818568795368,-1.06765573371387,0.377390571660592,0.00037828700123446917,-0.06721519309262755,0.09754420810678684,-0.03807176484113099,-0.10714898283107728,0.40772912483441337,-0.6204616224533529,0.005826172900652779,0.7242386957462655,-0.12203515456669764,-0.48620367385869756,-0.11468864049671636,0.3600776187378138,-0.004640956682731002,-0.9089735715428662,-0.5533546042488628,0.25364992876873815,-0.6366116743467027,-0.05971972819783033,-1.3507408145970123,-1.2288176871287482,-0.0305390493561133,-0.07454587558412223,-0.03031924451308537,0.13389349653204768,-0.4771457823608651,-0.8798158578508566,0.4166672441421182,-0.04208250051649813,-0.17575891857133502,0.07888162706079886,0.5021477710903709,-0.5786079174431877,-0.14560136568708792,-0.6263893909029179,-0.19951728867471544,-0.4861965973601835,-0.24866411225008625,0.46227562831816643,-0.020036053103401164,-0.5986077059507767,-0.490595073349052,-0.07564053959012339,0.03506850023266322,-1.5573998599761658,0.09885748486915352,-0.2625745489647927,-0.2219851719770542,-0.2471979317376167,0.03298427710080529,-0.014183210074691768,-0.25678264012629987,-1.094675294383777,0.06715230241073167,-1.4294268756759336,-0.9592378660208124,-0.07963222195176002,-0.03099915669210341,0.008178648837843616,-0.028187427676898243,-0.034075623991560784,0.6302837965479323,-0.037986018356989955,-1.2905282913981033,0.1116625839027572,0.004644465102527782,-0.050411858193602735,0.006384859264457769,0.2918153891958222,-0.7994866368200705,-0.03536633917521507,0.1344872602601682,-0.6252682618569232,0.397971824648589,0.38150180687551905,-2.123646161254108,-0.06803896154120247,-1.8011166049704168,-0.05628438511530061,0.015124344756533277,0.9512502278904941,-1.7852297051789543,0.10716815838740958,-0.060984647110672606,-1.355839699403659,-0.5335477646895164,-0.33693131451732006,-0.07606307793507727,-0.6220842402110648,-1.446220097146478,-0.19429330877294196,0.15433761802002702,-0.2874185791565975,-1.955673860535745,-0.193857673402716,-0.013032794328426968,-0.11522638770711721,-0.1729787180823555,-1.2498076602101111,-0.029730143677526293,-0.06336915957079718,-0.03243123939397182,-0.11063660695586136,-3.4694612838883265,-0.19444113539436533,-0.05713671441662034,-0.024887130072789677,-0.5228198364888701,-0.695240557651412,-0.41468496914988956,-0.14069663648414094,-0.05294056120147959,-1.5558374578155978,-0.8248134834584475,-3.1649419566799852,0.41154781080527386,-0.8391618795480947,-0.5713984214426282,-0.6201756391934083,0.3227221901422917,-0.8402775256327164,-0.3929174686872154,-0.016762527823398432,-0.12448308907604012,-0.6917017631044752,-0.3223196567674503,-0.43470387792680876,-0.4345032944763013,-0.7810687800438846,-0.006750020011061557,-0.46151791018209687,-1.4020992515001183,0.5696317466841757,0.006898171004944924,-0.08678818902482645,-0.5217066332280139,-0.5118285609682862,0.05036768734837022,0.0454220169465944,0.12900749102940087,-0.05684467113083773,-0.0009787223483935204,-0.25985520561292147,-0.10687821388554647,0.1319210019451616,-0.2758113228041855,-0.7596407797675586,-0.22325519890681658,0.0011925750287428436,-0.058506576500572255,-0.03680035728862173,-0.034745702879461084,-0.058658786354267085,-1.3293225484420383,0.03745163950986158,0.0192463777244225,0.36929243787628047,0.503066128519162,-0.0466630332934215,-2.817673428046661,-0.27619005570017097,-0.08865637330145634,-0.29831585724554,-0.9770900818389251,-0.37865005213885455,0.09505017530281998,-0.19119066057116924,-0.4298569433038721,0.5379366527414372,-0.26483493938460856,-0.24024704774479422,-0.5752870216121704,0.3855626734923325,-0.09005151618461482,0.01922531716331609,-0.35116806796197125,0.1826437718556137,-0.16057668772135958,-0.11768372517906713,-0.034889484960952614,-0.16087372804828917,-0.06993743835641038,0.062156311557147445,0.05425813872325484,-0.0021311434610060413,-0.9841158287310273,-0.8400361006349952,-0.22405489350540592,-0.48055539780004064,-0.13463879195283734,-1.019569463235877,0.0011070987981049829,0.0781109578712556,-0.004073010347751457,-0.7957556972944979,-0.2075761858294193,0.33703646366653073,-0.015400087219175691,-0.023575286916218983,-0.17755581231347953,0.28685832900320674,0.07160653499835438,0.28023914240430076,0.4101428758837627,0.2528188163909324,-0.3952731169601812,0.13701718463644386,0.05166944223535606,-0.5164892668916966,-0.31643239502482934,-0.43028018136199375,0.12423795357786992,-0.39040265791368106,-0.14064154966142048,-0.28503814958594176,0.08063572956887731,0.04157195442541184,0.0003823449987049296,-0.32442188431486485,0.014013634068917728,-0.3208957848455494,0.19786064351687344,-3.0346617276360752,-0.06771707039301145,0.011166554887214969,-0.2676804001855097,-1.854021398427919,-0.17657424439671926,0.024147230191679327,-0.19274931805079026,-0.5641248005844062,-0.3718333213580465,-0.2428296165236376,0.2051440489511029,-0.6107168914418734,0.10203290943805393,0.27383819570456297,0.016665895375081546,-0.5400385858803751,-1.3241983795070555,-0.001996162284053988,-0.6238214497819898,-0.9853307742663616,0.0017696489085020006,-0.8160602294682009,0.022253048559326874,-0.09226874523597764,0.027009909980874547,0.48445376741925006,-0.019919894510141877,0.011312618381693439,-0.34501791589626857,0.3825897229378432,0.007965115512110094,-0.22005769040893175,-0.20540287230817814,-0.39581608867399837,-0.30108895938816355,-0.34765795235457847,-0.09388979465322686,-1.108925248943426,-0.25975128824221444,-0.5675498263395155,-1.2348095021221683,0.002751998992881272,-0.010372664319421387,-0.34039188455299957,-4.016257259571135,0.005973667153016205,0.2994233624904304,0.3935969855237111,1.9188890355553638,-0.02951636226701771,-1.0497502238910943,-0.004709679401972079,-2.9027387071095783,0.13585021964958355,-0.7924438328308948,0.548465517019077,0.01948734890741114,-0.7969054596806929,-0.24563996267654367,0.020239334754403582,-0.11104494662524103,-0.4836646118203566,-0.06086156227701639,0.16229596820615333,0.8990009284253552,0.08676069948147469,-0.10330697753586648,-0.005546044199987363,-0.09848561761065118,-0.12619789981095186,0.24745761713642375,-0.7985348530334464,-0.10518149568180013,0.5100479416709537,-0.11217011136831802,0.6739930670031405,-0.7910950956373415,-0.24811821324575573,-0.10362672535450614,-0.2993231579897269,-0.10368878535149552,0.11090696590675027,0.03533787488761072,-2.1120191945546543,0.012903748505028621,0.4952675583942373,0.42192577826002825,0.049730924419068595,0.06353961134453034,-0.11386051160648884,-0.0817844735766707,-0.5381823371834688,-0.0764121030489577,0.7191202672529075,-0.6520762484086154,-0.8702590795645834,0.5751439559580064,-0.012814669380890813,-0.43681113452857184,-0.6754520509219144,-0.25314939849284623,-0.15613096778238186,-0.17492974364086203,-0.02567248324625464,-0.03576151143283477,-0.38312958140605397,-0.0307143971812068,0.14195907830833743,0.08365909650968127,0.56944133433234,-0.23544929679111568,0.47131259794915203,0.020177004741298243,-0.10179447896395111,-0.22484561587190893,0.8371923537190352,-0.723479832762809,-0.6272534270992455,0.24024165286988483,0.2793865682890803,-0.5149364518192405,-0.18168516184812453,-0.3046493302773985,-0.10925028622803826,0.08191675142828986,-0.16636881995450048,-0.0065148361482898895,0.20076066044543464,0.0920007190221988,-0.08874768322055493,0.14758674706834546,0.07196088925384093,-0.7466349649136284,-2.667899956320988,-1.0644195470540294,0.01193677558600588,-0.003000398304278948,-0.5799884030753945,-0.8096409547950347,0.15903615035049637,-0.16801779092824556,-0.33899529483864493,-0.539506941290329,-0.6969348466945023,-0.36655316309804586,-0.344062601182182,0.3096240415086084,0.08008800744747287,-0.09720922565074151,-0.613768498092347,-0.1631963427239943,-0.032065004521272776,-0.0674230551703136,1.234654933870083,-0.0849379076146952,-0.2015028930400218,-0.6155966766842784,-0.00037357115651250934,-1.141509082815086,0.8482670164245041,-0.23345739191167475,-0.8722472080873682,-0.10140356106942121,1.2962431382225084,0.4555422643765787,0.1561398467182981,0.1757908815656446,-0.06902712585097465,-0.04590877948678234,-0.03218948151569079,-0.8834271457088623,-2.221282056744823,1.4397541674131775,-0.3126873602805796,-0.6627327051028223,-0.09297080088815146,0.04107916456203568,-0.16658672111110878,-0.8198402330086402,0.6400651641675302,0.165564734840745,1.3313395777086459,-0.04985118404955419,-0.2881203993692915,-0.1574709445139589,-1.1935408992437613,-0.11308689383185332,-2.1661214983741277,0.3256157344567564,-1.3426754413487656,0.0870748116872617,-0.7391739710045047,-0.008339994449410566,0.4488349739271882,0.9686183158466712,-0.05935188827955287,-0.201732668602256,0.08247040773494622,0.06641182264325575,0.1231323823384601,-0.4790731816173351,-0.6514243461671979,-0.022723511109426876,-0.34128911075731705,0.05281259583211351,0.020870718737275237,-0.67045411920269,-0.30596129053017906,0.49004091002527284,-0.2480604646680517,0.32862174268778716,-0.5368203285144769,-2.35570463208494,-0.20337553161022567,0.05112453928925495,-0.02359634241136028,-0.0888797948911094,0.08235265503938657,-0.026649552174460106,-0.17166526108815608,-0.3301120449476698,0.15562594673053434,-0.004678632920548839,-0.20098034838289994,-0.0210859378445092,0.011171979351399677,-0.005427284428760657,0.011746807171379962,0.07403045560127575,0.3094973869831055,-0.3614447662342424,0.03672544381944603,-0.2835347134083605,-0.04946097159097954,-1.6262408802313868,-1.1029468564184253,-0.29652014978547964,0.04659798347339595,0.028725657147919133,-0.3884621912211997,-0.5061895707234193,-1.230025161558043,0.04289157759686767,-0.6530899428973407,-0.36256066776483026,0.17507925803094523,0.03908299885893052,-0.4290559349091439,0.20839163790318588,-0.38597201230706657,0.9096809097368609,-0.15288977755971692,-0.09114236917810374,-0.022982329991608926,-0.02459497451036233,-0.0788130533849908,-0.003583914879820767,0.009296051413932298,-0.5221234560543185,0.1932894836138986,-0.0011364811362166423,-0.10604023184750593,0.2887628973541191,-0.14208597177478513,-0.13612157303779923,-0.29408221571141097,0.0799623644862432,-0.32570166421939073,-0.03376645011771472,0.07360762435310744,-0.3204470350270059,-0.14111887255836142,-1.0300003392149548,0.24863063196653573,-0.7359279552341389,-0.19460911877264456,0.24431553063885636,0.018654647341977176,-1.4298450251062056,0.1502215935425475,-4.631743731000426,-0.10585914622545195,0.06228772635406381,-0.7415212769148544,-0.4617569972995943,0.25745599527258384,0.12099026328148589,0.0244075362482698,-0.056879971737357295,-1.1428824812518406,0.019763679272662954,-0.08142151103941644,-0.02863382350742589,0.16011060270218064,-0.5060247009053684,-0.5281357620575737,0.045675877786872016,0.07072894991516109,0.16331912886194738,-0.02422554533651047,-0.8279567778775323,-0.02019268698561893,0.0029441670585863174,0.13081039664483354,0.16010912511785197,-0.013843079670359333,0.02073770679813771,-3.0667267291166778,-3.4291815379696753,0.09102760058519109,0.02871909028411443,-0.38973314142681975,0.06507746703048226,-0.38215707688596956,0.019551028039200155,0.29471428174527287,0.005980789854934635,1.0734460086075235,-0.4874095151530194,-1.724789926117845,-0.269315045582347,-0.35845125638865444,-0.06935145762609006,-0.018683916571595464,0.44171064254435705,-0.025933406738921732,-0.7370957023311977,0.3408336852157099,-0.10583998737672348,-0.34130585939484837,-0.05507131099308002,0.302557004252055,-0.16333936696534834,-0.21520242716343208,0.0767032573980598,-1.159497061317307,-0.09792547764928332,-0.049702919779607266,-0.2467236986222324,-0.5617890143984957,0.13745351015002014,-0.18922905335844162,-2.0840448259564552,-0.10023136687633169,-0.05895765471757102,-0.032626282540266796,0.019123525477203696,0.3454617400713189,0.1284106483267561,-0.2509819063812539,-0.11992252097873606,-0.17449106641256956,-0.1896140771204336,0.5413127268287766,-1.1901864876516675,-0.3758124741980513,-0.4757274349546303,0.1484326189274393,-0.3476244857632866,0.12072259469512699,0.0986394643164923,-0.38537428622799735,-0.040364845257934726,-0.4311219847460398,-0.04591604877686639,-0.24788526316419338,-0.030653658716951786,-0.23908734431963138,0.2904756603147796,0.04304743565153841,0.003804678897388398,-0.11344561387343241,-0.006987601601144354,-1.090646060628033,0.20558105272201763,-0.9094708461642205,-0.3127660291185262,0.26031594474389996,-0.004153917486200473,-2.771417595959018,-0.0038940163134523393,0.005268182083551392,-0.6187372587290215,-0.14255374902134058,-0.04909872516234373,-0.06113577958791454,-0.2782742768098858,-0.49878095570899905,-0.380467505846673,-0.11784015950864496,-0.0007170582733124579,-0.26775271471285594,0.07111755689436389,0.0681942807493817,-1.3995479485919569,-0.007355642617933629,-0.11465149878584946,-0.4481872434715608,-0.4327982878733723,-0.2628918315122992,-0.23748782166899646,-0.016792921345810712,-0.016830347105297794,-0.16481937311761177,0.11858302423158239,0.08918011124569777,-0.010608699156001444,-0.152112953754136,-0.03342365265780036,0.42327789208599476,-0.5244466048532086,-0.29765591479185344,-0.7649170510120735,-0.24918870712059932,0.19242142204968138,-0.14607421226791467,-1.177077083992687,-0.09183276159244126,-0.09889429161454613,-0.1051983257282038,0.006636036763463655,-0.028155735248092367,-0.19256944132975282,0.4678109249284847,-0.7510967138068119,-0.6715506007910206,-0.043622456478670496,0.4643917403489869,0.040797724215276616,-0.22516082252286768,0.05709299332906124,-0.010052149570918602,-0.09252896277096187,0.04829885810691266,0.2746322355112262,-1.7589811582431967,-0.20320660764266454,0.08927256941317811,-0.1992561422201441,0.019866496305962843,-0.2546186219106893,-0.17766053346811903,0.4138607438176536,0.3255470591460776,-0.175133117627012,0.5838517676554995,-0.0923517058338916,-0.004473111041647757,-0.12428371396450046,-0.14308629415192825,-0.10476126742763968,0.0006978584359345772,-0.04450035968099736,0.428679276092914,-0.10940391524960132,-0.08359979934519822,-0.05625049613983634,0.2882463932353168,0.004059786826079684,0.7005857066530391,-0.09649372496257874,0.0016999596819744173,0.06699381192601436,0.12479618643773711,-0.627562106848695,-0.3410797028545877,-0.4021661300557679,0.19111811537230133,-0.14337168044442838,0.004899142313618382,0.004050402430572077,-0.9685893119158374,-0.051807303623587896,-0.04828372084359351,0.20869125446248588,0.23622946631331032,-0.3478134099727857,0.11225127695887645,-0.6505825114238395,-0.11040778332811954,-0.08563372226215786,0.6573954545049591,-1.115423299109576,-0.24398862356105794,-0.007671163507629516,-3.4181812283138724,-1.5629339498955466,-0.020240854339222562,-0.48262721939172726,0.18290085367317335,0.5475592254623057,-0.00926264386108525,-0.2060585977863947,-0.02605419055928826,0.6129127048416144,-0.24702432884914732,-0.5648911012446517,0.0009985083771847354,-0.17132934181637163,0.032917953257495046,-0.5130083415008584,-0.3749527651858883,-0.9653807605021589,0.11513819750237987]} diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/runner.jl b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/runner.jl new file mode 100644 index 000000000000..2d4a861afe26 --- /dev/null +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/fixtures/julia/runner.jl @@ -0,0 +1,77 @@ +#!/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 Distributions: mgf, NegativeBinomial +import JSON + +""" + gen( t, r, p, name ) + +Generate fixture data and write to file. + +# Arguments + +* `t`: input value +* `r`: number of successes until experiment is stopped +* `p`: success probability +* `name::AbstractString`: output filename + +# Examples + +``` julia +julia> p = rand( 1000 ); +julia> t = ( rand( 1000 ) .- 1.0 ) .* -log1p.( -p ); +julia> r = ( rand( 1000 ) .* 20 ) .+ 0.5; +julia> gen( t, r, p, "data.json" ); +``` +""" +function gen( t, r, p, name ) + z = Array{Float64}( undef, length(t) ); + for i in eachindex(t) + z[ i ] = mgf( NegativeBinomial( r[i], p[i] ), t[i] ); + end + + # Store data to be written to file as a collection: + data = Dict([ + ("t", t), + ("r", r), + ("p", p), + ("expected", z) + ]); + + # 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 ); + +# Generate fixtures (`t` must be less than `-ln(1-p)`): +p = rand( 1000 ); +t = ( ( rand( 1000 ) .* 1.5 ) .- 1.0 ) .* -log1p.( -p ); +r = ( rand( 1000 ) .* 20 ) .+ 0.5; +gen( t, r, p, "data.json" ); diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.factory.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.factory.js index 463733b98b4b..18625c35ccdc 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.factory.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.factory.js @@ -21,15 +21,18 @@ // MODULES // var tape = require( 'tape' ); -var isNumber = require( '@stdlib/assert/is-number' ); +var isAlmostSameValue = require( '@stdlib/assert/is-almost-same-value' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); -var randu = require( '@stdlib/random/base/randu' ); -var ln = require( '@stdlib/math/base/special/ln' ); var PINF = require( '@stdlib/constants/float64/pinf' ); var NINF = require( '@stdlib/constants/float64/ninf' ); var factory = require( './../lib/factory.js' ); +// FIXTURES // + +var data = require( './fixtures/julia/data.json' ); + + // TESTS // tape( 'main export is a function', function test( t ) { @@ -121,36 +124,37 @@ tape( 'if provided a success probability `p` outside `[0,1]`, the created functi t.end(); }); -tape( 'the created function returns `NaN` if provided `t >= -ln( p )`', function test( t ) { +tape( 'the created function returns `NaN` if provided `t >= -ln( 1-p )`', function test( t ) { var mgf; var y; - mgf = factory( 10, 0.5 ); // -ln( p ) = ~0.693 + mgf = factory( 10, 0.5 ); // -ln( 1-p ) = ~0.693 y = mgf( 0.7 ); t.strictEqual( isnan( y ), true, 'returns expected value' ); - mgf = factory( 10, 0.2 ); // -ln( p ) = ~1.609 + mgf = factory( 10, 0.2 ); // -ln( 1-p ) = ~0.223 y = mgf( 1.7 ); t.strictEqual( isnan( y ), true, 'returns expected value' ); t.end(); }); tape( 'the created function evaluates the mgf', function test( t ) { + var expected; var mgf; var r; var p; - var i; var x; var y; + var i; - // TODO: Add test fixtures (function is not available in R and Julia) - r = 10; - p = 0.5; - mgf = factory( r, p ); - for ( i = 0; i < 100; i++ ) { - x = ln( p ) - randu(); - y = mgf( x ); - t.strictEqual( !isnan( y ) && isNumber( y ), true, 'returns expected value' ); + expected = data.expected; + x = data.t; + r = data.r; + p = data.p; + for ( i = 0; i < x.length; i++ ) { + mgf = factory( r[ i ], p[ i ] ); + y = mgf( x[ i ] ); + t.strictEqual( isAlmostSameValue( y, expected[ i ], 40 ), true, 'returns expected value' ); } t.end(); }); diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.mgf.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.mgf.js index d70bf3beadd3..d6b22a6cfe61 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.mgf.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.mgf.js @@ -21,15 +21,18 @@ // MODULES // var tape = require( 'tape' ); -var isNumber = require( '@stdlib/assert/is-number' ); +var isAlmostSameValue = require( '@stdlib/assert/is-almost-same-value' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); -var randu = require( '@stdlib/random/base/randu' ); -var ln = require( '@stdlib/math/base/special/ln' ); var PINF = require( '@stdlib/constants/float64/pinf' ); var NINF = require( '@stdlib/constants/float64/ninf' ); var mgf = require( './../lib' ); +// FIXTURES // + +var data = require( './fixtures/julia/data.json' ); + + // TESTS // tape( 'main export is a function', function test( t ) { @@ -84,28 +87,29 @@ tape( 'if provided a success probability `p` outside of `[0,1]`, the function re t.end(); }); -tape( 'if provided `t >= -ln( p )`, the function returns `NaN`', function test( t ) { - var y = mgf( 0.7, 10.0, 0.5 ); // -ln( p ) = ~0.693 +tape( 'if provided `t >= -ln( 1-p )`, the function returns `NaN`', function test( t ) { + var y = mgf( 0.7, 10.0, 0.5 ); // -ln( 1-p ) = ~0.693 t.strictEqual( isnan( y ), true, 'returns expected value' ); - y = mgf( 1.7, 10.0, 0.2 ); // -ln( p ) = ~1.609 + y = mgf( 1.7, 10.0, 0.2 ); // -ln( 1-p ) = ~0.223 t.strictEqual( isnan( y ), true, 'returns expected value' ); t.end(); }); tape( 'the function evaluates the mgf', function test( t ) { - var i; + var expected; var r; var p; var x; var y; + var i; - // TODO: Add test fixtures (function is not available in R and Julia) - for ( i = 0; i < 100; i++ ) { - r = randu() * 20.0; - p = randu(); - x = ln( p ) - randu(); - y = mgf( x, r, p ); - t.strictEqual( !isnan( y ) && isNumber( y ), true, 'returns expected value' ); + expected = data.expected; + x = data.t; + r = data.r; + p = data.p; + for ( i = 0; i < x.length; i++ ) { + y = mgf( x[ i ], r[ i ], p[ i ] ); + t.strictEqual( isAlmostSameValue( y, expected[ i ], 40 ), true, 'returns expected value' ); } t.end(); }); diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.native.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.native.js index 42d3858c4873..a85f128d0d1a 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/test/test.native.js @@ -23,14 +23,17 @@ var resolve = require( 'path' ).resolve; var tape = require( 'tape' ); var tryRequire = require( '@stdlib/utils/try-require' ); -var isNumber = require( '@stdlib/assert/is-number' ); +var isAlmostSameValue = require( '@stdlib/assert/is-almost-same-value' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); -var randu = require( '@stdlib/random/base/randu' ); -var ln = require( '@stdlib/math/base/special/ln' ); var PINF = require( '@stdlib/constants/float64/pinf' ); var NINF = require( '@stdlib/constants/float64/ninf' ); +// FIXTURES // + +var data = require( './fixtures/julia/data.json' ); + + // VARIABLES // var mgf = tryRequire( resolve( __dirname, './../lib/native.js' ) ); @@ -93,27 +96,29 @@ tape( 'if provided a success probability `p` outside of `[0,1]`, the function re t.end(); }); -tape( 'if provided `t >= -ln( p )`, the function returns `NaN`', opts, function test( t ) { - var y = mgf( 0.7, 10.0, 0.5 ); // -ln( p ) = ~0.693 +tape( 'if provided `t >= -ln( 1-p )`, the function returns `NaN`', opts, function test( t ) { + var y = mgf( 0.7, 10.0, 0.5 ); // -ln( 1-p ) = ~0.693 t.strictEqual( isnan( y ), true, 'returns expected value' ); - y = mgf( 1.7, 10.0, 0.2 ); // -ln( p ) = ~1.609 + y = mgf( 1.7, 10.0, 0.2 ); // -ln( 1-p ) = ~0.223 t.strictEqual( isnan( y ), true, 'returns expected value' ); t.end(); }); tape( 'the function evaluates the mgf', opts, function test( t ) { - var i; + var expected; var r; var p; var x; var y; + var i; - for ( i = 0; i < 100; i++ ) { - r = randu() * 20.0; - p = randu(); - x = ln( p ) - randu(); - y = mgf( x, r, p ); - t.strictEqual( !isnan( y ) && isNumber( y ), true, 'returns expected value' ); + expected = data.expected; + x = data.t; + r = data.r; + p = data.p; + for ( i = 0; i < x.length; i++ ) { + y = mgf( x[ i ], r[ i ], p[ i ] ); + t.strictEqual( isAlmostSameValue( y, expected[ i ], 50 ), true, 'returns expected value' ); } t.end(); }); From 5ce9dfdbfe132f297886b67d769d552b8b44a60c Mon Sep 17 00:00:00 2001 From: 0PrashantYadav0 Date: Sat, 17 Oct 2026 22:23:37 +0530 Subject: [PATCH 2/2] bench: fix input range for `t` --- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown_pkg_readmes status: na - task: lint_markdown_docs status: na - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: na - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: na - task: lint_javascript_benchmarks status: passed - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: na - task: lint_license_headers status: passed --- --- .../base/dists/negative-binomial/mgf/benchmark/benchmark.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.js index af152a63d364..cefdbf1536a5 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/negative-binomial/mgf/benchmark/benchmark.js @@ -48,7 +48,7 @@ bench( pkg, function benchmark( b ) { p = new Float64Array( len ); for ( i = 0; i < len; i++ ) { p[ i ] = uniform( EPS, 1.0 ); - t[ i ] = uniform( 0.0, -ln( p[ i ] ) ); + t[ i ] = uniform( 0.0, -ln( 1.0 - p[ i ] ) ); r[ i ] = discreteUniform( 1, 100 ); }