# 
# RandomSource: PCG_XSH_RS_32
# RNG: Byte-reversed org.apache.commons.rng.core.source32.PcgXshRs32
# 
# 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
# 
# Analyzer: /usr/bin/dieharder -a -g 200 -Y 1 -k 2 
# 
# Start: 2019-07-22 17:24:46
# 
#=============================================================================#
#            dieharder version 3.31.1 Copyright 2003 Robert G. Brown          #
#=============================================================================#
   rng_name    |rands/second|   Seed   |
stdin_input_raw|  8.28e+06  |1433507583|
#=============================================================================#
        test_name   |ntup| tsamples |psamples|  p-value |Assessment
#=============================================================================#
   diehard_birthdays|   0|       100|     100|0.18373011|  PASSED  
      diehard_operm5|   0|   1000000|     100|0.40683396|  PASSED  
  diehard_rank_32x32|   0|     40000|     100|0.60526295|  PASSED  
    diehard_rank_6x8|   0|    100000|     100|0.15352853|  PASSED  
   diehard_bitstream|   0|   2097152|     100|0.53808149|  PASSED  
        diehard_opso|   0|   2097152|     100|0.80973280|  PASSED  
        diehard_oqso|   0|   2097152|     100|0.27391818|  PASSED  
         diehard_dna|   0|   2097152|     100|0.64142001|  PASSED  
diehard_count_1s_str|   0|    256000|     100|0.14007707|  PASSED  
diehard_count_1s_byt|   0|    256000|     100|0.80169554|  PASSED  
 diehard_parking_lot|   0|     12000|     100|0.53057251|  PASSED  
    diehard_2dsphere|   2|      8000|     100|0.26783460|  PASSED  
    diehard_3dsphere|   3|      4000|     100|0.67169334|  PASSED  
     diehard_squeeze|   0|    100000|     100|0.19397244|  PASSED  
        diehard_sums|   0|       100|     100|0.02016448|  PASSED  
        diehard_runs|   0|    100000|     100|0.42047507|  PASSED  
        diehard_runs|   0|    100000|     100|0.18931045|  PASSED  
       diehard_craps|   0|    200000|     100|0.13880718|  PASSED  
       diehard_craps|   0|    200000|     100|0.69657012|  PASSED  
 marsaglia_tsang_gcd|   0|  10000000|     100|0.57279107|  PASSED  
 marsaglia_tsang_gcd|   0|  10000000|     100|0.40096053|  PASSED  
         sts_monobit|   1|    100000|     100|0.04263310|  PASSED  
            sts_runs|   2|    100000|     100|0.99269588|  PASSED  
          sts_serial|   1|    100000|     100|0.51924436|  PASSED  
          sts_serial|   2|    100000|     100|0.76063840|  PASSED  
          sts_serial|   3|    100000|     100|0.91197568|  PASSED  
          sts_serial|   3|    100000|     100|0.90722893|  PASSED  
          sts_serial|   4|    100000|     100|0.09205969|  PASSED  
          sts_serial|   4|    100000|     100|0.02972959|  PASSED  
          sts_serial|   5|    100000|     100|0.16222627|  PASSED  
          sts_serial|   5|    100000|     100|0.29720110|  PASSED  
          sts_serial|   6|    100000|     100|0.35652542|  PASSED  
          sts_serial|   6|    100000|     100|0.33262207|  PASSED  
          sts_serial|   7|    100000|     100|0.05875386|  PASSED  
          sts_serial|   7|    100000|     100|0.21470070|  PASSED  
          sts_serial|   8|    100000|     100|0.22498064|  PASSED  
          sts_serial|   8|    100000|     100|0.57600469|  PASSED  
          sts_serial|   9|    100000|     100|0.87005432|  PASSED  
          sts_serial|   9|    100000|     100|0.33699327|  PASSED  
          sts_serial|  10|    100000|     100|0.95957918|  PASSED  
          sts_serial|  10|    100000|     100|0.96968005|  PASSED  
          sts_serial|  11|    100000|     100|0.51434944|  PASSED  
          sts_serial|  11|    100000|     100|0.32057668|  PASSED  
          sts_serial|  12|    100000|     100|0.64740766|  PASSED  
          sts_serial|  12|    100000|     100|0.71328742|  PASSED  
          sts_serial|  13|    100000|     100|0.90126701|  PASSED  
          sts_serial|  13|    100000|     100|0.98987710|  PASSED  
          sts_serial|  14|    100000|     100|0.98604249|  PASSED  
          sts_serial|  14|    100000|     100|0.75939672|  PASSED  
          sts_serial|  15|    100000|     100|0.78929814|  PASSED  
          sts_serial|  15|    100000|     100|0.28807349|  PASSED  
          sts_serial|  16|    100000|     100|0.98369466|  PASSED  
          sts_serial|  16|    100000|     100|0.71507085|  PASSED  
         rgb_bitdist|   1|    100000|     100|0.49850324|  PASSED  
         rgb_bitdist|   2|    100000|     100|0.87613613|  PASSED  
         rgb_bitdist|   3|    100000|     100|0.65215214|  PASSED  
         rgb_bitdist|   4|    100000|     100|0.19128843|  PASSED  
         rgb_bitdist|   5|    100000|     100|0.85373748|  PASSED  
         rgb_bitdist|   6|    100000|     100|0.02020745|  PASSED  
         rgb_bitdist|   7|    100000|     100|0.93251088|  PASSED  
         rgb_bitdist|   8|    100000|     100|0.77056653|  PASSED  
         rgb_bitdist|   9|    100000|     100|0.01864465|  PASSED  
         rgb_bitdist|  10|    100000|     100|0.19931976|  PASSED  
         rgb_bitdist|  11|    100000|     100|0.48560092|  PASSED  
         rgb_bitdist|  12|    100000|     100|0.95975949|  PASSED  
rgb_minimum_distance|   2|     10000|    1000|0.54036690|  PASSED  
rgb_minimum_distance|   3|     10000|    1000|0.01637361|  PASSED  
rgb_minimum_distance|   4|     10000|    1000|0.20012359|  PASSED  
rgb_minimum_distance|   5|     10000|    1000|0.15400416|  PASSED  
    rgb_permutations|   2|    100000|     100|0.31502195|  PASSED  
    rgb_permutations|   3|    100000|     100|0.67004546|  PASSED  
    rgb_permutations|   4|    100000|     100|0.18987855|  PASSED  
    rgb_permutations|   5|    100000|     100|0.34641149|  PASSED  
      rgb_lagged_sum|   0|   1000000|     100|0.75837154|  PASSED  
      rgb_lagged_sum|   1|   1000000|     100|0.21301546|  PASSED  
      rgb_lagged_sum|   2|   1000000|     100|0.99541327|   WEAK   
      rgb_lagged_sum|   2|   1000000|     200|0.42602622|  PASSED  
      rgb_lagged_sum|   3|   1000000|     100|0.04413496|  PASSED  
      rgb_lagged_sum|   4|   1000000|     100|0.41463525|  PASSED  
      rgb_lagged_sum|   5|   1000000|     100|0.55595409|  PASSED  
      rgb_lagged_sum|   6|   1000000|     100|0.49312841|  PASSED  
      rgb_lagged_sum|   7|   1000000|     100|0.98602708|  PASSED  
      rgb_lagged_sum|   8|   1000000|     100|0.31601910|  PASSED  
      rgb_lagged_sum|   9|   1000000|     100|0.74112081|  PASSED  
      rgb_lagged_sum|  10|   1000000|     100|0.94142598|  PASSED  
      rgb_lagged_sum|  11|   1000000|     100|0.68092300|  PASSED  
      rgb_lagged_sum|  12|   1000000|     100|0.84434106|  PASSED  
      rgb_lagged_sum|  13|   1000000|     100|0.99378571|  PASSED  
      rgb_lagged_sum|  14|   1000000|     100|0.50231513|  PASSED  
      rgb_lagged_sum|  15|   1000000|     100|0.71393782|  PASSED  
      rgb_lagged_sum|  16|   1000000|     100|0.15029466|  PASSED  
      rgb_lagged_sum|  17|   1000000|     100|0.45122863|  PASSED  
      rgb_lagged_sum|  18|   1000000|     100|0.86755172|  PASSED  
      rgb_lagged_sum|  19|   1000000|     100|0.28095884|  PASSED  
      rgb_lagged_sum|  20|   1000000|     100|0.78834024|  PASSED  
      rgb_lagged_sum|  21|   1000000|     100|0.94491292|  PASSED  
      rgb_lagged_sum|  22|   1000000|     100|0.42381606|  PASSED  
      rgb_lagged_sum|  23|   1000000|     100|0.32549610|  PASSED  
      rgb_lagged_sum|  24|   1000000|     100|0.99429239|  PASSED  
      rgb_lagged_sum|  25|   1000000|     100|0.07705307|  PASSED  
      rgb_lagged_sum|  26|   1000000|     100|0.89741354|  PASSED  
      rgb_lagged_sum|  27|   1000000|     100|0.47104761|  PASSED  
      rgb_lagged_sum|  28|   1000000|     100|0.94479015|  PASSED  
      rgb_lagged_sum|  29|   1000000|     100|0.86223266|  PASSED  
      rgb_lagged_sum|  30|   1000000|     100|0.53877375|  PASSED  
      rgb_lagged_sum|  31|   1000000|     100|0.76724232|  PASSED  
      rgb_lagged_sum|  32|   1000000|     100|0.88176071|  PASSED  
     rgb_kstest_test|   0|     10000|    1000|0.97334480|  PASSED  
     dab_bytedistrib|   0|  51200000|       1|0.02744390|  PASSED  
             dab_dct| 256|     50000|       1|0.24322404|  PASSED  
Preparing to run test 207.  ntuple = 0
        dab_filltree|  32|  15000000|       1|0.93716347|  PASSED  
        dab_filltree|  32|  15000000|       1|0.52462083|  PASSED  
Preparing to run test 208.  ntuple = 0
       dab_filltree2|   0|   5000000|       1|0.47304061|  PASSED  
       dab_filltree2|   1|   5000000|       1|0.16096949|  PASSED  
Preparing to run test 209.  ntuple = 0
        dab_monobit2|  12|  65000000|       1|0.90139831|  PASSED  
# 
# End: 2019-07-22 19:28:21
# 
# Exit value: 0
# Numbers used: 61912025088 >= 2^35 (247.6 GB)
# 
# Test duration: 123.58155189391667 minutes
# 
