# 
# RandomSource: WELL_19937_C
# RNG: org.apache.commons.rng.core.source32.Well19937c
# Seed: ad5695a6bed874031cbc51f4e744a8ffbcf19e286418cab591b3e1c6a80288f4fa921b823bdf00d3272e5e9378a2a11adaf683f49ee2a671aa49b4738bd4f6ee569b43d22d7ba70693493cfd8c628912a1aa39a8f61fcc548b4cf0b106b102820fa3c38066249e9797b1ddf6e962b06d47d0301902f4d017bdf322d817caebf7b87883151637be04f9a2fcad2593b09e91ed6b8c530e1717d9f1f01e384eefb333bceeace242c91f67db343237b44a0a33580c62f0bd4ac28674e535a51d1a55f7eb78d555292865352b53730eabfc34e8410a45c588c741f03c82b0df7e2bf2cd3f9114887d13a173520f7e45880478e117533f06d542e2a3ade696f61d0034502ba3cf69e55ed8e68e07a2b06fcba4a61c910ac97115ffc81727bd9601a08e7eb26f4f849d12465d8269ab6fc7a896fa9c73f3cb5a47f7f3b30e979c40cba8c96dd797ca04134bf11c29922c8f6d8f1d3d01f10e6b24f32bf5e44a8820b94caf81be8c1aedbb72c652e0598d743a6e661f79200d83187a64bc2176428fc2edc0a8d9e48e8cd49fda3f6516ad9511dbc4a289b760afc6dd4ef38322ea0baedb8ad1c5d4ece58c3d6a06fe3f7aceacc535d0d61ad9aae958007f91336c91ccd607a2b022a8a6890e9933ba17b03b9b06cce43eaeabe0112d2f91b78cbac10bf75e4d381c4fe244f1c48f39350386f74d0f677b4edd047738ffb9d33b29d5c976
# 
# Java: 1.8.0_202
# Runtime: Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
# JVM: Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)
# OS: Linux 3.13.0-91-generic amd64
# Native byte-order: LITTLE_ENDIAN
# Output byte-order: LITTLE_ENDIAN
# 
# Analyzer: /home/ah403/git/commons-rng/commons-rng-examples/examples-stress/stdin2testu01 BigCrush 
# 
# Start: 2019-10-08 02:09:48
# 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                 Starting BigCrush
                 Version: TestU01 1.2.3
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


***********************************************************
Test smarsa_SerialOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  0,   d =  256,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =           16777216
       Expected number per cell =   59.604645
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0083558402,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 16711680
Value of the statistic                : 1.67e+7
p-value of test                       :    0.02


-----------------------------------------------
CPU time used                    :  00:01:58.90

Generator state:
N/A



***********************************************************
Test smarsa_SerialOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r = 22,   d =  256,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =           16777216
       Expected number per cell =   59.604645
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0083558402,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 16711680
Value of the statistic                : 1.67e+7
p-value of test                       :    0.27


-----------------------------------------------
CPU time used                    :  00:02:05.59

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d = 2097152,   t =  2,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1381
p-value of test                       :    0.33

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334501
  j =  1                              :        599997238
  j =  2                              :             1381
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:03:31.30

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  9,   d = 2097152,   t =  2,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1317
p-value of test                       :    0.90

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334437
  j =  1                              :        599997366
  j =  2                              :             1317
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:03:55.09

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d = 16384,   t =  3,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1411
p-value of test                       :    0.11

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334531
  j =  1                              :        599997178
  j =  2                              :             1411
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:04:49.78

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 16,   d = 16384,   t =  3,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1291
p-value of test                       :    0.98

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334411
  j =  1                              :        599997418
  j =  2                              :             1291
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:02.25

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =   64,   t =  7,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1355
p-value of test                       :    0.59

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334475
  j =  1                              :        599997290
  j =  2                              :             1355
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:03.92

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 24,   d =   64,   t =  7,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1404
p-value of test                       :    0.14

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334524
  j =  1                              :        599997192
  j =  2                              :             1404
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:12.27

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =    8,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1383
p-value of test                       :    0.31

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334503
  j =  1                              :        599997234
  j =  2                              :             1383
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:05.48

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 27,   d =    8,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1345
p-value of test                       :    0.69

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334465
  j =  1                              :        599997310
  j =  2                              :             1345
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:13.34

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r =  0,   d =    4,   t = 21,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1403
p-value of test                       :    0.15

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334523
  j =  1                              :        599997194
  j =  2                              :             1403
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:06.92

Generator state:
N/A



***********************************************************
Test smarsa_CollisionOver calling smultin_MultinomialOver

***********************************************************
HOST = tallinn, Linux

stdin


smultin_MultinomialOver test:
-----------------------------------------------
   N = 30,  n = 20000000,  r = 28,   d =    4,   t = 21,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellSerial
       Number of cells = d^t =      4398046511104
       Expected number per cell =  1 /  219902.33
       EColl = n^2 / (2k) =  45.47473509
       Hashing =   TRUE

       Collision test

       CollisionOver:   density = n / k =  1 /  219902.33
       Expected number of collisions = Mu =      45.47


-----------------------------------------------
Results of CollisionOver test:

POISSON approximation                 :
Expected number of collisions = N*Mu  :     1364.24
Observed number of collisions         :     1427
p-value of test                       :    0.05

-----------------------------
Total number of cells containing j balls

  j =  0                              :  131940795334547
  j =  1                              :        599997146
  j =  2                              :             1427
  j =  3                              :                0
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:11.92

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 100,  n = 10000000,  r =  0,    d = 2147483648,    t = 2,    p = 1


      Number of cells = d^t = 4611686018427387904
      Lambda = Poisson mean =      54.2101


----------------------------------------------------
Total expected number = N*Lambda      :    5421.01
Total observed number                 :    5568
p-value of test                       :    0.02


-----------------------------------------------
CPU time used                    :  00:05:30.82

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,    d = 2097152,    t = 3,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4221
p-value of test                       :    0.96


-----------------------------------------------
CPU time used                    :  00:02:25.94

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 14,    d = 65536,    t = 4,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7250
p-value of test                       :    0.79


-----------------------------------------------
CPU time used                    :  00:04:03.84

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,    d = 512,    t = 7,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4232
p-value of test                       :    0.94


-----------------------------------------------
CPU time used                    :  00:03:05.76

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  7,    d = 512,    t = 7,    p = 1


      Number of cells = d^t = 9223372036854775808
      Lambda = Poisson mean =     216.8404


----------------------------------------------------
Total expected number = N*Lambda      :    4336.81
Total observed number                 :    4291
p-value of test                       :    0.75


-----------------------------------------------
CPU time used                    :  00:03:10.71

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 14,    d = 256,    t = 8,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7239
p-value of test                       :    0.82


-----------------------------------------------
CPU time used                    :  00:05:09.94

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 22,    d = 256,    t = 8,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7321
p-value of test                       :    0.49


-----------------------------------------------
CPU time used                    :  00:05:13.31

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r =  0,    d = 16,    t = 16,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7375
p-value of test                       :    0.26


-----------------------------------------------
CPU time used                    :  00:07:08.39

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_BirthdaySpacings test:
-----------------------------------------------
   N = 20,  n = 30000000,  r = 26,    d = 16,    t = 16,    p = 1


      Number of cells = d^t = 18446744073709551616
      Lambda = Poisson mean =     365.9182


----------------------------------------------------
Total expected number = N*Lambda      :    7318.36
Total observed number                 :    7243
p-value of test                       :    0.81


-----------------------------------------------
CPU time used                    :  00:07:29.56

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 30,  n = 6000000,  r =  0,  t = 3,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    2.12
p-value of test                       :    0.08


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    1.33
p-value of test                       :    0.22

Test on the Nm values of W_{n,i}(mNP1):    0.54
p-value of test                       :    0.71

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     900
Number of jumps of Y                  :     893
p-value of test                       :    0.58

Stat. AD (mNP2)                       :    0.31
p-value of test                       :    0.93

Stat. AD after spacings (mNP2-S)      :    2.97
p-value of test                       :    0.03

-----------------------------------------------
CPU time used                    :  00:03:48.22

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 20,  n = 4000000,  r =  0,  t = 5,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    1.43
p-value of test                       :    0.19


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    2.76
p-value of test                       :    0.04

Test on the Nm values of W_{n,i}(mNP1):    0.55
p-value of test                       :    0.70

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     600
Number of jumps of Y                  :     596
p-value of test                       :    0.55

Stat. AD (mNP2)                       :    4.45
p-value of test                       :  5.3e-3

Stat. AD after spacings (mNP2-S)      :    2.32
p-value of test                       :    0.06

-----------------------------------------------
CPU time used                    :  00:02:29.64

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N = 10,  n = 3000000,  r =  0,  t = 9,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    1.53
p-value of test                       :    0.17


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    0.78
p-value of test                       :    0.49

Test on the Nm values of W_{n,i}(mNP1):    0.35
p-value of test                       :    0.90

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     300
Number of jumps of Y                  :     295
p-value of test                       :    0.60

Stat. AD (mNP2)                       :    3.20
p-value of test                       :    0.02

Stat. AD after spacings (mNP2-S)      :    0.90
p-value of test                       :    0.42

-----------------------------------------------
CPU time used                    :  00:03:53.36

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


snpair_ClosePairs test:
-----------------------------------------------
   N =  5,  n = 2000000,  r =  0,  t = 16,  p = 0,  m = 30,  Torus =  TRUE


---------------------------------------
Test based on the 2 nearest points (NP):

Stat. AD on the N values (NP)         :    1.12
p-value of test                       :    0.30


A2 test based on the spacings between the
   successive jump times of process Y_n(t):

A2 test on the values of A2 (m-NP)    :    1.04
p-value of test                       :    0.34

Test on the Nm values of W_{n,i}(mNP1):    1.34
p-value of test                       :    0.22

Test on the jump times of Y
   (superposition of Yn):

Expected number of jumps of Y = mN    :     150
Number of jumps of Y                  :     135
p-value of test                       :    0.88

Stat. AD (mNP2)                       :    0.69
p-value of test                       :    0.57

Stat. AD after spacings (mNP2-S)      :    0.73
p-value of test                       :    0.53

-----------------------------------------------
CPU time used                    :  00:04:16.92

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 400000000,  r =  0,   d =    8,   k =    8


-----------------------------------------------
Number of degrees of freedom          :    7
Chi-square statistic                  :    5.95
p-value of test                       :    0.55

-----------------------------------------------
CPU time used                    :  00:01:45.71

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 400000000,  r = 27,   d =    8,   k =    8


-----------------------------------------------
Number of degrees of freedom          :    7
Chi-square statistic                  :   18.94
p-value of test                       :  8.4e-3

-----------------------------------------------
CPU time used                    :  00:02:05.59

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   d =   32,   k =   32


-----------------------------------------------
Number of degrees of freedom          :   18
Chi-square statistic                  :   21.22
p-value of test                       :    0.27

-----------------------------------------------
CPU time used                    :  00:01:46.57

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_SimpPoker test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 25,   d =   32,   k =   32


-----------------------------------------------
Number of degrees of freedom          :   18
Chi-square statistic                  :   14.18
p-value of test                       :    0.72

-----------------------------------------------
CPU time used                    :  00:02:03.85

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r =  0,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   62.76
p-value of test                       :    0.19

-----------------------------------------------
CPU time used                    :  00:02:29.86

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 10,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   38.49
p-value of test                       :    0.95

-----------------------------------------------
CPU time used                    :  00:02:54.63

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 20,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   67.46
p-value of test                       :    0.10

-----------------------------------------------
CPU time used                    :  00:02:56.10

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_CouponCollector test:
-----------------------------------------------
   N =  1,  n = 200000000,  r = 27,   d =    8


-----------------------------------------------
Number of degrees of freedom          :   54
Chi-square statistic                  :   50.12
p-value of test                       :    0.62

-----------------------------------------------
CPU time used                    :  00:02:59.02

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  0,   Alpha =        0,   Beta  =   0.0625


-----------------------------------------------
Number of degrees of freedom          :  232
Chi-square statistic                  :  297.99
p-value of test                       :  2.2e-3

-----------------------------------------------
CPU time used                    :  00:03:19.23

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 300000000,  r = 25,   Alpha =        0,   Beta  =  0.03125


-----------------------------------------------
Number of degrees of freedom          :  434
Chi-square statistic                  :  469.38
p-value of test                       :    0.12

-----------------------------------------------
CPU time used                    :  00:04:35.98

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   Alpha =        0,   Beta  = 0.0078125


-----------------------------------------------
Number of degrees of freedom          : 1437
Chi-square statistic                  : 1499.46
p-value of test                       :    0.12

-----------------------------------------------
CPU time used                    :  00:05:01.73

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Gap test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 20,   Alpha =        0,   Beta  = 0.000976562


-----------------------------------------------
Number of degrees of freedom          : 7046
Chi-square statistic                  : 7110.43
p-value of test                       :    0.29

-----------------------------------------------
CPU time used                    :  00:04:47.93

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Run test:
-----------------------------------------------
   N =  5,  n = 1000000000,  r =  0,   Up = FALSE


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.24
p-value of test                       :    0.50

Kolmogorov-Smirnov- statistic = D-    :    0.23
p-value of test                       :    0.52

Anderson-Darling statistic = A2       :    0.40
p-value of test                       :    0.84

Test on the sum of all N observations
Number of degrees of freedom          :   30
Chi-square statistic                  :   30.58
p-value of test                       :    0.44

-----------------------------------------------
CPU time used                    :  00:02:30.57

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_Run test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r = 15,   Up =  TRUE


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.062
p-value of test                       :    0.89

Kolmogorov-Smirnov- statistic = D-    :    0.45
p-value of test                       :    0.01

Anderson-Darling statistic = A2       :    2.45
p-value of test                       :    0.05

Test on the sum of all N observations
Number of degrees of freedom          :   60
Chi-square statistic                  :   75.99
p-value of test                       :    0.08

-----------------------------------------------
CPU time used                    :  00:05:54.20

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  5,   t =  3,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =                  6
       Expected number per cell =  1.6666667e+08
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  2.5000002e-09,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          :    5
Value of the statistic                :    2.58
p-value of test                       :    0.76


-----------------------------------------------
CPU time used                    :  00:01:54.50

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r =  5,   t =  5,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =                120
       Expected number per cell =   8333333.3
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  5.9500005e-08,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          :  119
Value of the statistic                :  116.35
p-value of test                       :    0.55


-----------------------------------------------
CPU time used                    :  00:03:18.17

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  5,   t =  7,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =               5040
       Expected number per cell =   99206.349
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =  5.0390004e-06,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 5039
Value of the statistic                : 5089.49
p-value of test                       :    0.31


-----------------------------------------------
CPU time used                    :  00:02:29.60

Generator state:
N/A



***********************************************************
Test sknuth_Permutation calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N =  1,  n = 500000000,  r = 10,   t = 10,
       Sparse =  FALSE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =            3628800
       Expected number per cell =    137.7866
       Hashing =  FALSE

   For Delta > -1, we use the ChiSquare approximation
   Correction factor of the ChiSquare: 
       Delta =     1,    Mu =   0.0036287993,    Sigma =          1

-----------------------------------------------
Test Results for Delta =   1.0000

Number of degrees of freedom          : 3628799
Value of the statistic                : 3.63e+6
p-value of test                       :    0.12


-----------------------------------------------
CPU time used                    :  00:04:17.45

Generator state:
N/A



***********************************************************
Test sknuth_CollisionPermut calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N = 20,  n = 20000000,  r =  0,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =        87178291200
       Expected number per cell =  1 /  4358.9146
       EColl = n^2 / (2k) =   2294.14912
       Hashing =   TRUE

       Collision test,    Mu =      2293.9736,    Sigma =    47.8841

-----------------------------------------------
Test Results for Collisions

For the total number of collisions, we use
      the Poisson approximation:
Expected number of collisions = N*Mu  :    45879.47
Observed number of collisions         :    45959
p-value of test                       :    0.36


-----------------------------
Total number of cells containing j balls

  j =  0                              :    1743165869959
  j =  1                              :        399908084
  j =  2                              :            45955
  j =  3                              :                2
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:32.67

Generator state:
N/A



***********************************************************
Test sknuth_CollisionPermut calling smultin_Multinomial

***********************************************************
HOST = tallinn, Linux

stdin


smultin_Multinomial test:
-----------------------------------------------
   N = 20,  n = 20000000,  r = 10,   t = 14,
       Sparse =   TRUE

       GenerCell = smultin_GenerCellPermut
       Number of cells = t! =        87178291200
       Expected number per cell =  1 /  4358.9146
       EColl = n^2 / (2k) =   2294.14912
       Hashing =   TRUE

       Collision test,    Mu =      2293.9736,    Sigma =    47.8841

-----------------------------------------------
Test Results for Collisions

For the total number of collisions, we use
      the Poisson approximation:
Expected number of collisions = N*Mu  :    45879.47
Observed number of collisions         :    45855
p-value of test                       :    0.54


-----------------------------
Total number of cells containing j balls

  j =  0                              :    1743165869855
  j =  1                              :        399908295
  j =  2                              :            45845
  j =  3                              :                5
  j =  4                              :                0
  j =  5                              :                0

-----------------------------------------------
CPU time used                    :  00:05:53.76

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 40,  n = 10000000,  r =  0,   d = 100000,   t =  8

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :   0.077
p-value of test                       :    0.59

Kolmogorov-Smirnov- statistic = D-    :    0.11
p-value of test                       :    0.32

Anderson-Darling statistic = A2       :    0.65
p-value of test                       :    0.60

Test on the sum of all N observations
Number of degrees of freedom          : 3999960
Chi-square statistic                  : 4.00e+6
p-value of test                       :    0.37


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :    0.11
p-value of test                       :    0.35

Kolmogorov-Smirnov- statistic = D-    :   0.053
p-value of test                       :    0.77

Anderson-Darling statistic = A2       :    0.71
p-value of test                       :    0.55


-----------------------------------------------
CPU time used                    :  00:04:36.26

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 30,  n = 10000000,  r =  0,   d = 100000,   t = 16

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :    0.12
p-value of test                       :    0.42

Kolmogorov-Smirnov- statistic = D-    :    0.11
p-value of test                       :    0.42

Anderson-Darling statistic = A2       :    1.17
p-value of test                       :    0.28

Test on the sum of all N observations
Number of degrees of freedom          : 2999970
Chi-square statistic                  : 3.00e+6
p-value of test                       :    0.27


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :    0.21
p-value of test                       :    0.07

Kolmogorov-Smirnov- statistic = D-    :   0.043
p-value of test                       :    0.87

Anderson-Darling statistic = A2       :    1.44
p-value of test                       :    0.19


-----------------------------------------------
CPU time used                    :  00:04:25.55

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   d = 100000,   t = 24

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :   0.049
p-value of test                       :    0.88

Kolmogorov-Smirnov- statistic = D-    :    0.17
p-value of test                       :    0.26

Anderson-Darling statistic = A2       :    0.63
p-value of test                       :    0.62

Test on the sum of all N observations
Number of degrees of freedom          : 1999980
Chi-square statistic                  : 2.00e+6
p-value of test                       :    0.25


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :    0.21
p-value of test                       :    0.16

Kolmogorov-Smirnov- statistic = D-    :   0.036
p-value of test                       :    0.93

Anderson-Darling statistic = A2       :    1.42
p-value of test                       :    0.20


-----------------------------------------------
CPU time used                    :  00:03:34.59

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sknuth_MaxOft test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   d = 100000,   t = 32

      Number of categories = 100000
      Expected number per category  = 100.00


-----------------------------------------------
Test results for chi2 with 99999 degrees of freedom:

Kolmogorov-Smirnov+ statistic = D+    :   0.090
p-value of test                       :    0.69

Kolmogorov-Smirnov- statistic = D-    :    0.14
p-value of test                       :    0.44

Anderson-Darling statistic = A2       :    0.43
p-value of test                       :    0.82

Test on the sum of all N observations
Number of degrees of freedom          : 1999980
Chi-square statistic                  : 2.00e+6
p-value of test                       :    0.38


-----------------------------------------------
Test results for Anderson-Darling:

Kolmogorov-Smirnov+ statistic = D+    :   0.044
p-value of test                       :    0.90

Kolmogorov-Smirnov- statistic = D-    :    0.20
p-value of test                       :    0.19

Anderson-Darling statistic = A2       :    1.32
p-value of test                       :    0.22


-----------------------------------------------
CPU time used                    :  00:04:11.20

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 40,  n = 10000000,  r =  0,   t = 8


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.19
p-value of test                       :    0.04

Kolmogorov-Smirnov- statistic = D-    :   0.042
p-value of test                       :    0.84

Anderson-Darling statistic = A2       :    1.11
p-value of test                       :    0.31

-----------------------------------------------
CPU time used                    :  00:03:39.07

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   t = 16


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.24
p-value of test                       :    0.09

Kolmogorov-Smirnov- statistic = D-    :   0.024
p-value of test                       :    0.96

Anderson-Darling statistic = A2       :    2.46
p-value of test                       :    0.05

-----------------------------------------------
CPU time used                    :  00:02:44.45

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleProd test:
-----------------------------------------------
   N = 20,  n = 10000000,  r =  0,   t = 24


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.017
p-value of test                       :    0.98

Kolmogorov-Smirnov- statistic = D-    :    0.32
p-value of test                       :    0.01

Anderson-Darling statistic = A2       :    3.29
p-value of test                       :    0.02

-----------------------------------------------
CPU time used                    :  00:03:37.68

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleMean test:
-----------------------------------------------
   N = 20000000,  n = 30,  r =  0


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    : 3.09e-5
p-value of test                       :    0.96

Kolmogorov-Smirnov- statistic = D-    : 1.41e-4
p-value of test                       :    0.45

Anderson-Darling statistic = A2       :    0.65
p-value of test                       :    0.60

-----------------------------------------------
CPU time used                    :  00:00:49.02

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleMean test:
-----------------------------------------------
   N = 20000000,  n = 30,  r = 10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    : 1.76e-4
p-value of test                       :    0.29

Kolmogorov-Smirnov- statistic = D-    : 5.68e-5
p-value of test                       :    0.88

Anderson-Darling statistic = A2       :    0.70
p-value of test                       :    0.56

-----------------------------------------------
CPU time used                    :  00:00:47.36

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleCorr test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   k = 1


-----------------------------------------------
Normal statistic                      :  -0.088
p-value of test                       :    0.54

-----------------------------------------------
CPU time used                    :  00:00:51.53

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SampleCorr test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   k = 2


-----------------------------------------------
Normal statistic                      :    0.18
p-value of test                       :    0.43

-----------------------------------------------
CPU time used                    :  00:00:52.45

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_AppearanceSpacings test:
-----------------------------------------------
   N =  1,   Q = 10000000,   K = 1000000000,   r = 0,   s = 3,   L = 15

   Sequences of n = (K + Q)L =  15150000000 bits
   Q = 10000000 initialization blocks
   K = 1000000000 blocks for the test
   the blocks have L = 15 bits



-----------------------------------------------
Normal statistic                      :    2.21
p-value of test                       :    0.01

-----------------------------------------------
CPU time used                    :  00:02:46.26

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_AppearanceSpacings test:
-----------------------------------------------
   N =  1,   Q = 10000000,   K = 1000000000,   r = 27,   s = 3,   L = 15

   Sequences of n = (K + Q)L =  15150000000 bits
   Q = 10000000 initialization blocks
   K = 1000000000 blocks for the test
   the blocks have L = 15 bits



-----------------------------------------------
Normal statistic                      :    1.03
p-value of test                       :    0.15

-----------------------------------------------
CPU time used                    :  00:02:48.72

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r =  0,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   64.51
p-value of test                       :    0.56

-----------------------------------------------
CPU time used                    :  00:01:59.70

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 20,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   91.52
p-value of test                       :    0.02

-----------------------------------------------
CPU time used                    :  00:02:24.56

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 28,  k = 256,  Alpha =      0,  Beta =   0.25


-----------------------------------------------
Number of degrees of freedom          :   67
Chi-square statistic                  :   66.32
p-value of test                       :    0.50

-----------------------------------------------
CPU time used                    :  00:02:26.18

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r =  0,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   34.15
p-value of test                       :    0.60

-----------------------------------------------
CPU time used                    :  00:02:01.38

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 10,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   25.03
p-value of test                       :    0.93

-----------------------------------------------
CPU time used                    :  00:02:26.52

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_WeightDistrib test:
-----------------------------------------------
   N =  1,  n = 20000000,  r = 26,  k = 256,  Alpha =      0,  Beta = 0.0625


-----------------------------------------------
Number of degrees of freedom          :   37
Chi-square statistic                  :   40.49
p-value of test                       :    0.32

-----------------------------------------------
CPU time used                    :  00:02:25.42

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


svaria_SumCollector test:
-----------------------------------------------
   N =  1,  n = 500000000,  r =  0,   g = 10


-----------------------------------------------
Number of degrees of freedom          :   29
Chi-square statistic                  :   17.75
p-value of test                       :    0.95

-----------------------------------------------
CPU time used                    :  00:04:10.18

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N = 10,  n = 1000000,  r =  0,    s = 5,    L = 30,    k = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.29
p-value of test                       :    0.15

Kolmogorov-Smirnov- statistic = D-    :   0.018
p-value of test                       :    0.98

Anderson-Darling statistic = A2       :    1.62
p-value of test                       :    0.15

Test on the sum of all N observations
Number of degrees of freedom          :   40
Chi-square statistic                  :   27.19
p-value of test                       :    0.94

-----------------------------------------------
CPU time used                    :  00:01:55.20

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N = 10,  n = 1000000,  r = 25,    s = 5,    L = 30,    k = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.14
p-value of test                       :    0.64

Kolmogorov-Smirnov- statistic = D-    :    0.14
p-value of test                       :    0.64

Anderson-Darling statistic = A2       :    0.28
p-value of test                       :    0.95

Test on the sum of all N observations
Number of degrees of freedom          :   40
Chi-square statistic                  :   39.85
p-value of test                       :    0.48

-----------------------------------------------
CPU time used                    :  00:01:54.68

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 5000,  r =  0,    s = 4,    L = 1000,    k = 1000


-----------------------------------------------
Number of degrees of freedom          :    3
Chi-square statistic                  :    0.86
p-value of test                       :    0.83

-----------------------------------------------
CPU time used                    :  00:03:04.03

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 5000,  r = 26,    s = 4,    L = 1000,    k = 1000


-----------------------------------------------
Number of degrees of freedom          :    3
Chi-square statistic                  :    0.37
p-value of test                       :    0.95

-----------------------------------------------
CPU time used                    :  00:02:54.43

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 80,  r = 15,    s = 15,    L = 5000,    k = 5000


-----------------------------------------------
Number of degrees of freedom          :    2
Chi-square statistic                  :    3.42
p-value of test                       :    0.18

-----------------------------------------------
CPU time used                    :  00:02:30.94

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_MatrixRank test:
-----------------------------------------------
   N =  1,  n = 80,  r =  0,    s = 30,    L = 5000,    k = 5000


-----------------------------------------------
Number of degrees of freedom          :    2
Chi-square statistic                  :    1.06
p-value of test                       :    0.59

-----------------------------------------------
CPU time used                    :  00:02:09.93

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_Savir2 test:
-----------------------------------------------
   N = 10,  n = 10000000,  r = 10,    m = 1048576,    t = 30


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.10
p-value of test                       :    0.75

Kolmogorov-Smirnov- statistic = D-    :    0.26
p-value of test                       :    0.21

Anderson-Darling statistic = A2       :    0.88
p-value of test                       :    0.42

Test on the sum of all N observations
Number of degrees of freedom          :  130
Chi-square statistic                  :  140.67
p-value of test                       :    0.25

-----------------------------------------------
CPU time used                    :  00:01:22.93

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


smarsa_GCD test:
-----------------------------------------------
   N = 10,  n = 50000000,  r =  0,   s = 30


-----------------------------------------------
Test results for GCD values:

Kolmogorov-Smirnov+ statistic = D+    :   0.084
p-value of test                       :    0.83

Kolmogorov-Smirnov- statistic = D-    :    0.27
p-value of test                       :    0.19

Anderson-Darling statistic = A2       :    1.39
p-value of test                       :    0.20

Test on the sum of all N observations
Number of degrees of freedom          : 17430
Chi-square statistic                  :17676.04
p-value of test                       :    0.09



-----------------------------------------------
CPU time used                    :  00:02:03.55

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 100000000,  r =  0,   s = 5,   L0 =   50,   L1 =   50



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :   36
ChiSquare statistic                   :   43.56
p-value of test                       :    0.18


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :   35
ChiSquare statistic                   :   34.02
p-value of test                       :    0.52


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :   25
ChiSquare statistic                   :   22.62
p-value of test                       :    0.60


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :   24
ChiSquare statistic                   :   29.99
p-value of test                       :    0.18


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   17
ChiSquare statistic                   :   19.17
p-value of test                       :    0.32


-----------------------------------------------
CPU time used                    :  00:01:15.87

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 25,   s = 5,   L0 =   50,   L1 =   50



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :   36
ChiSquare statistic                   :   27.31
p-value of test                       :    0.85


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :   35
ChiSquare statistic                   :   34.26
p-value of test                       :    0.50


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :   25
ChiSquare statistic                   :   23.69
p-value of test                       :    0.54


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :   24
ChiSquare statistic                   :   25.27
p-value of test                       :    0.39


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   17
ChiSquare statistic                   :   14.98
p-value of test                       :    0.60


-----------------------------------------------
CPU time used                    :  00:01:14.39

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 10000000,  r =  0,   s = 10,   L0 = 1000,   L1 = 1000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  146
ChiSquare statistic                   :  132.39
p-value of test                       :    0.78


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  146
ChiSquare statistic                   :  160.14
p-value of test                       :    0.20


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :  500
ChiSquare statistic                   :  494.29
p-value of test                       :    0.56


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  136
ChiSquare statistic                   :  123.10
p-value of test                       :    0.78


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   74
ChiSquare statistic                   :   74.78
p-value of test                       :    0.45


-----------------------------------------------
CPU time used                    :  00:01:29.31

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 20,   s = 10,   L0 = 1000,   L1 = 1000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  146
ChiSquare statistic                   :  134.79
p-value of test                       :    0.74


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  146
ChiSquare statistic                   :  142.05
p-value of test                       :    0.58


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          :  500
ChiSquare statistic                   :  515.52
p-value of test                       :    0.31


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  136
ChiSquare statistic                   :  126.88
p-value of test                       :    0.70


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :   74
ChiSquare statistic                   :   84.19
p-value of test                       :    0.20


-----------------------------------------------
CPU time used                    :  00:01:29.30

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 1000000,  r =  0,   s = 15,   L0 = 10000,   L1 = 10000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  384
ChiSquare statistic                   :  385.25
p-value of test                       :    0.47


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  384
ChiSquare statistic                   :  356.69
p-value of test                       :    0.84


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          : 5000
ChiSquare statistic                   : 5084.33
p-value of test                       :    0.20


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  378
ChiSquare statistic                   :  363.53
p-value of test                       :    0.69


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :  200
ChiSquare statistic                   :  213.36
p-value of test                       :    0.25


-----------------------------------------------
CPU time used                    :  00:01:29.93

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


swalk_RandomWalk1 test:
-----------------------------------------------
   N =  1,  n = 1000000,  r = 15,   s = 15,   L0 = 10000,   L1 = 10000



-----------------------------------------------
Test on the values of the Statistic H

Number of degrees of freedom          :  384
ChiSquare statistic                   :  364.57
p-value of test                       :    0.75


-----------------------------------------------
Test on the values of the Statistic M

Number of degrees of freedom          :  384
ChiSquare statistic                   :  404.12
p-value of test                       :    0.23


-----------------------------------------------
Test on the values of the Statistic J

Number of degrees of freedom          : 5000
ChiSquare statistic                   : 5104.94
p-value of test                       :    0.15


-----------------------------------------------
Test on the values of the Statistic R

Number of degrees of freedom          :  378
ChiSquare statistic                   :  429.46
p-value of test                       :    0.03


-----------------------------------------------
Test on the values of the Statistic C

Number of degrees of freedom          :  200
ChiSquare statistic                   :  177.19
p-value of test                       :    0.88


-----------------------------------------------
CPU time used                    :  00:01:25.77

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LinearComp test:
-----------------------------------------------
   N =  1,  n = 400020,  r =  0,    s = 1



-----------------------------------------------
Number of degrees of freedom          :   12
Chi2 statistic for size of jumps      :   13.95
p-value of test                       :    0.30


-----------------------------------------------
Normal statistic for number of jumps  : -403.06
p-value of test                       : 1 - eps1    *****



-----------------------------------------------
CPU time used                    :  00:00:10.04

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LinearComp test:
-----------------------------------------------
   N =  1,  n = 400020,  r = 29,    s = 1



-----------------------------------------------
Number of degrees of freedom          :   12
Chi2 statistic for size of jumps      :    9.51
p-value of test                       :    0.66


-----------------------------------------------
Normal statistic for number of jumps  : -402.54
p-value of test                       : 1 - eps1    *****



-----------------------------------------------
CPU time used                    :  00:00:11.21

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LempelZiv test:
-----------------------------------------------
   N = 10,  n = 134217728,  r =  0,   s =   30,   k =   27


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.28
p-value of test                       :    0.17

Kolmogorov-Smirnov- statistic = D-    :   0.065
p-value of test                       :    0.88

Anderson-Darling statistic = A2       :    1.02
p-value of test                       :    0.34

Tests on the sum of all N observations
Standardized normal statistic         :   -1.02
p-value of test                       :    0.85

Sample variance                       :    0.85
p-value of test                       :    0.57

-----------------------------------------------
CPU time used                    :  00:01:24.94

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


scomp_LempelZiv test:
-----------------------------------------------
   N = 10,  n = 134217728,  r = 15,   s =   15,   k =   27


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.11
p-value of test                       :    0.73

Kolmogorov-Smirnov- statistic = D-    :    0.29
p-value of test                       :    0.16

Anderson-Darling statistic = A2       :    1.20
p-value of test                       :    0.27

Tests on the sum of all N observations
Standardized normal statistic         :    1.41
p-value of test                       :    0.08

Sample variance                       :    1.00
p-value of test                       :    0.44

-----------------------------------------------
CPU time used                    :  00:01:20.75

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sspectral_Fourier3 test:
-----------------------------------------------
   N = 100000,  n = 16384,  r =  0,   s =    3,   k =   14


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    : 5.84e-3
p-value of test                       :    0.75

Kolmogorov-Smirnov- statistic = D-    : 7.52e-3
p-value of test                       :    0.63

Anderson-Darling statistic = A2       :    0.19
p-value of test                       :    0.9931

-----------------------------------------------
CPU time used                    :  00:00:59.03

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sspectral_Fourier3 test:
-----------------------------------------------
   N = 100000,  n = 16384,  r = 27,   s =    3,   k =   14


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :   0.018
p-value of test                       :    0.08

Kolmogorov-Smirnov- statistic = D-    : 3.75e-3
p-value of test                       :    0.89

Anderson-Darling statistic = A2       :    1.14
p-value of test                       :    0.29

-----------------------------------------------
CPU time used                    :  00:00:58.93

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_LongestHeadRun test:
-----------------------------------------------
   N =  1,  n = 1000,  r =  0,   s = 3,   L = 10000020


-----------------------------------------------
Number of degrees of freedom          :    8
Chi-square statistic                  :    7.65
p-value of test                       :    0.47

-----------------------------------------------
Global longest run of 1               :   33.00
p-value of test                       :    0.44



-----------------------------------------------
CPU time used                    :  00:02:11.98

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_LongestHeadRun test:
-----------------------------------------------
   N =  1,  n = 1000,  r = 27,   s = 3,   L = 10000020


-----------------------------------------------
Number of degrees of freedom          :    8
Chi-square statistic                  :   16.32
p-value of test                       :    0.04

-----------------------------------------------
Global longest run of 1               :   35.00
p-value of test                       :    0.14



-----------------------------------------------
CPU time used                    :  00:02:10.54

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_PeriodsInStrings test:
-----------------------------------------------
   N = 10,  n = 500000000,  r =  0,   s =   10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.12
p-value of test                       :    0.71

Kolmogorov-Smirnov- statistic = D-    :    0.27
p-value of test                       :    0.19

Anderson-Darling statistic = A2       :    0.82
p-value of test                       :    0.46

Test on the sum of all N observations
Number of degrees of freedom          :  200
Chi-square statistic                  :  218.51
p-value of test                       :    0.18

-----------------------------------------------
CPU time used                    :  00:04:14.62

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_PeriodsInStrings test:
-----------------------------------------------
   N = 10,  n = 500000000,  r = 20,   s =   10


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.20
p-value of test                       :    0.39

Kolmogorov-Smirnov- statistic = D-    :    0.14
p-value of test                       :    0.62

Anderson-Darling statistic = A2       :    0.48
p-value of test                       :    0.76

Test on the sum of all N observations
Number of degrees of freedom          :  200
Chi-square statistic                  :  196.90
p-value of test                       :    0.55

-----------------------------------------------
CPU time used                    :  00:04:29.27

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingWeight2 test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r =  0,   s = 3,   L = 1000000


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.22
p-value of test                       :    0.32

Kolmogorov-Smirnov- statistic = D-    :    0.17
p-value of test                       :    0.52

Anderson-Darling statistic = A2       :    0.50
p-value of test                       :    0.74

Test on the sum of all N observations
Number of degrees of freedom          : 10000
Chi-square statistic                  :10009.56
p-value of test                       :    0.47

-----------------------------------------------
CPU time used                    :  00:01:34.18

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingWeight2 test:
-----------------------------------------------
   N = 10,  n = 1000000000,  r = 27,   s = 3,   L = 1000000


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.42
p-value of test                       :    0.02

Kolmogorov-Smirnov- statistic = D-    :   0.091
p-value of test                       :    0.80

Anderson-Darling statistic = A2       :    2.66
p-value of test                       :    0.04

Test on the sum of all N observations
Number of degrees of freedom          : 10000
Chi-square statistic                  : 9787.58
p-value of test                       :    0.93

-----------------------------------------------
CPU time used                    :  00:01:35.93

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 1000000000,  r = 10,   s = 10,   L = 30



-----------------------------------------------
Normal statistic                      :   -0.53
p-value of test                       :    0.70

-----------------------------------------------
CPU time used                    :  00:01:54.77

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 10,   s = 10,   L = 300



-----------------------------------------------
Normal statistic                      :    0.95
p-value of test                       :    0.17

-----------------------------------------------
CPU time used                    :  00:01:43.16

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingCorr test:
-----------------------------------------------
   N =  1,  n = 100000000,  r = 10,   s = 10,   L = 1200



-----------------------------------------------
Normal statistic                      :   -1.44
p-value of test                       :    0.93

-----------------------------------------------
CPU time used                    :  00:06:42.13

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N = 10,  n = 30000000,  r =  0,   s = 3,   L = 30,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.11
p-value of test                       :    0.73

Kolmogorov-Smirnov- statistic = D-    :    0.24
p-value of test                       :    0.27

Anderson-Darling statistic = A2       :    0.73
p-value of test                       :    0.53

Test on the sum of all N observations
Number of degrees of freedom          : 4890
Chi-square statistic                  : 4938.12
p-value of test                       :    0.31

-----------------------------------------------
CPU time used                    :  00:02:56.50

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N = 10,  n = 30000000,  r = 27,   s = 3,   L = 30,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.21
p-value of test                       :    0.37

Kolmogorov-Smirnov- statistic = D-    :   0.055
p-value of test                       :    0.91

Anderson-Darling statistic = A2       :    0.79
p-value of test                       :    0.49

Test on the sum of all N observations
Number of degrees of freedom          : 4890
Chi-square statistic                  : 4777.80
p-value of test                       :    0.87

-----------------------------------------------
CPU time used                    :  00:02:59.13

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 30000000,  r =  0,   s = 4,   L = 300,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 4117
Chi-square statistic                  : 4139.97
p-value of test                       :    0.40

-----------------------------------------------
CPU time used                    :  00:02:09.34

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 30000000,  r = 26,   s = 4,   L = 300,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 4117
Chi-square statistic                  : 4001.55
p-value of test                       :    0.90

-----------------------------------------------
CPU time used                    :  00:02:11.77

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 10000000,  r =  0,   s = 5,   L = 1200,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 11825
Chi-square statistic                  :11778.03
p-value of test                       :    0.62

-----------------------------------------------
CPU time used                    :  00:02:19.27

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_HammingIndep test:
-----------------------------------------------
   N =  1,  n = 10000000,  r = 25,   s = 5,   L = 1200,   d = 0



Counters with expected numbers >= 10
-----------------------------------------------
Number of degrees of freedom          : 11825
Chi-square statistic                  :11677.13
p-value of test                       :    0.83

-----------------------------------------------
CPU time used                    :  00:02:24.47

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_Run test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r =  0,   s =    3


-----------------------------------------------
Total number of 1 runs:  2000000000

Number of degrees of freedom          :   54
Chi2 statistic for number of runs     :   60.34
p-value of test                       :    0.26


-----------------------------------------------
Total number of bits:  8000234769

Normal statistic for number of bits   :    1.86
p-value of test                       :    0.03



-----------------------------------------------
CPU time used                    :  00:02:01.79

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_Run test:
-----------------------------------------------
   N =  1,  n = 2000000000,  r = 27,   s =    3


-----------------------------------------------
Total number of 1 runs:  2000000000

Number of degrees of freedom          :   54
Chi2 statistic for number of runs     :   67.68
p-value of test                       :    0.10


-----------------------------------------------
Total number of bits:  8000104638

Normal statistic for number of bits   :    0.83
p-value of test                       :    0.20



-----------------------------------------------
CPU time used                    :  00:02:03.22

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000030,  r =  0,   s = 3,   d = 1


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.22
p-value of test                       :    0.35

Kolmogorov-Smirnov- statistic = D-    :   0.027
p-value of test                       :    0.96

Anderson-Darling statistic = A2       :    0.71
p-value of test                       :    0.55

Tests on the sum of all N observations
Standardized normal statistic         :   -1.10
p-value of test                       :    0.87

Sample variance                       :    0.92
p-value of test                       :    0.51

-----------------------------------------------
CPU time used                    :  00:03:37.84

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000029,  r =  0,   s = 3,   d = 3


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.28
p-value of test                       :    0.18

Kolmogorov-Smirnov- statistic = D-    :    0.12
p-value of test                       :    0.71

Anderson-Darling statistic = A2       :    1.39
p-value of test                       :    0.20

Tests on the sum of all N observations
Standardized normal statistic         :   -1.06
p-value of test                       :    0.85

Sample variance                       :    1.77
p-value of test                       :    0.07

-----------------------------------------------
CPU time used                    :  00:03:12.63

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000030,  r = 27,   s = 3,   d = 1


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.18
p-value of test                       :    0.48

Kolmogorov-Smirnov- statistic = D-    :    0.28
p-value of test                       :    0.18

Anderson-Darling statistic = A2       :    1.21
p-value of test                       :    0.26

Tests on the sum of all N observations
Standardized normal statistic         :   -0.13
p-value of test                       :    0.55

Sample variance                       :    2.11
p-value of test                       :    0.03

-----------------------------------------------
CPU time used                    :  00:03:38.13

Generator state:
N/A



***********************************************************
HOST = tallinn, Linux

stdin


sstring_AutoCor test:
-----------------------------------------------
   N = 10,  n = 1000000029,  r = 27,   s = 3,   d = 3


-----------------------------------------------

Kolmogorov-Smirnov+ statistic = D+    :    0.15
p-value of test                       :    0.57

Kolmogorov-Smirnov- statistic = D-    :    0.13
p-value of test                       :    0.66

Anderson-Darling statistic = A2       :    0.37
p-value of test                       :    0.88

Tests on the sum of all N observations
Standardized normal statistic         :   -0.46
p-value of test                       :    0.68

Sample variance                       :    1.11
p-value of test                       :    0.35

-----------------------------------------------
CPU time used                    :  00:03:11.06

Generator state:
N/A




========= Summary results of BigCrush =========

 Version:          TestU01 1.2.3
 Generator:        stdin
 Number of statistics:  160
 Total CPU time:   05:23:06.52
 The following tests gave p-values outside [0.001, 0.9990]:
 (eps  means a value < 1.0e-300):
 (eps1 means a value < 1.0e-15):

       Test                          p-value
 ----------------------------------------------
 80  LinearComp, r = 0              1 - eps1
 81  LinearComp, r = 29             1 - eps1
 ----------------------------------------------
 All other tests were passed



# 
# End: 2019-10-08 08:25:18
# 
# Exit value: 0
# Bytes used: 1428429889536 >= 2^40 (1.4 TB)
# 
# Test duration: 375.50662192886665 minutes
# 
