# 
# RandomSource: WELL_512_A
# RNG: Byte-reversed org.apache.commons.rng.core.source32.Well512a
# 
# Java: 1.7.0_201
# Runtime: OpenJDK Runtime Environment (build 1.7.0_201-b00)
# JVM: OpenJDK 64-Bit Server VM (build 24.201-b00, mixed mode)
# OS: Linux 3.13.0-91-generic amd64
# 
# Analyzer: /usr/bin/dieharder -a -g 200 -Y 1 -k 2 
# 
# Start: 2019-04-12 18:13:15
# 
#=============================================================================#
#            dieharder version 3.31.1 Copyright 2003 Robert G. Brown          #
#=============================================================================#
   rng_name    |rands/second|   Seed   |
stdin_input_raw|  7.78e+06  |2124078053|
#=============================================================================#
        test_name   |ntup| tsamples |psamples|  p-value |Assessment
#=============================================================================#
   diehard_birthdays|   0|       100|     100|0.09295008|  PASSED  
      diehard_operm5|   0|   1000000|     100|0.77878977|  PASSED  
  diehard_rank_32x32|   0|     40000|     100|0.27209696|  PASSED  
    diehard_rank_6x8|   0|    100000|     100|0.42557434|  PASSED  
   diehard_bitstream|   0|   2097152|     100|0.05432232|  PASSED  
        diehard_opso|   0|   2097152|     100|0.04819262|  PASSED  
        diehard_oqso|   0|   2097152|     100|0.61807910|  PASSED  
         diehard_dna|   0|   2097152|     100|0.73146218|  PASSED  
diehard_count_1s_str|   0|    256000|     100|0.83867786|  PASSED  
diehard_count_1s_byt|   0|    256000|     100|0.17258068|  PASSED  
 diehard_parking_lot|   0|     12000|     100|0.88217430|  PASSED  
    diehard_2dsphere|   2|      8000|     100|0.14121712|  PASSED  
    diehard_3dsphere|   3|      4000|     100|0.41371041|  PASSED  
     diehard_squeeze|   0|    100000|     100|0.65116482|  PASSED  
        diehard_sums|   0|       100|     100|0.23883530|  PASSED  
        diehard_runs|   0|    100000|     100|0.60091364|  PASSED  
        diehard_runs|   0|    100000|     100|0.71460988|  PASSED  
       diehard_craps|   0|    200000|     100|0.46494496|  PASSED  
       diehard_craps|   0|    200000|     100|0.80092983|  PASSED  
 marsaglia_tsang_gcd|   0|  10000000|     100|0.46159204|  PASSED  
 marsaglia_tsang_gcd|   0|  10000000|     100|0.72322463|  PASSED  
         sts_monobit|   1|    100000|     100|0.53857003|  PASSED  
            sts_runs|   2|    100000|     100|0.41185728|  PASSED  
          sts_serial|   1|    100000|     100|0.34765111|  PASSED  
          sts_serial|   2|    100000|     100|0.10870089|  PASSED  
          sts_serial|   3|    100000|     100|0.99642134|   WEAK   
          sts_serial|   3|    100000|     100|0.10910262|  PASSED  
          sts_serial|   4|    100000|     100|0.55974348|  PASSED  
          sts_serial|   4|    100000|     100|0.83069811|  PASSED  
          sts_serial|   5|    100000|     100|0.99692205|   WEAK   
          sts_serial|   5|    100000|     100|0.10508018|  PASSED  
          sts_serial|   6|    100000|     100|0.96857995|  PASSED  
          sts_serial|   6|    100000|     100|0.56934212|  PASSED  
          sts_serial|   7|    100000|     100|0.12086125|  PASSED  
          sts_serial|   7|    100000|     100|0.09755972|  PASSED  
          sts_serial|   8|    100000|     100|0.26096012|  PASSED  
          sts_serial|   8|    100000|     100|0.59899497|  PASSED  
          sts_serial|   9|    100000|     100|0.49234112|  PASSED  
          sts_serial|   9|    100000|     100|0.92240104|  PASSED  
          sts_serial|  10|    100000|     100|0.13472201|  PASSED  
          sts_serial|  10|    100000|     100|0.43365219|  PASSED  
          sts_serial|  11|    100000|     100|0.17706726|  PASSED  
          sts_serial|  11|    100000|     100|0.37679927|  PASSED  
          sts_serial|  12|    100000|     100|0.18364568|  PASSED  
          sts_serial|  12|    100000|     100|0.36392419|  PASSED  
          sts_serial|  13|    100000|     100|0.18948561|  PASSED  
          sts_serial|  13|    100000|     100|0.48953365|  PASSED  
          sts_serial|  14|    100000|     100|0.25277311|  PASSED  
          sts_serial|  14|    100000|     100|0.64000037|  PASSED  
          sts_serial|  15|    100000|     100|0.24523984|  PASSED  
          sts_serial|  15|    100000|     100|0.75567220|  PASSED  
          sts_serial|  16|    100000|     100|0.66655769|  PASSED  
          sts_serial|  16|    100000|     100|0.71109453|  PASSED  
          sts_serial|   1|    100000|     200|0.50070795|  PASSED  
          sts_serial|   2|    100000|     200|0.71420955|  PASSED  
          sts_serial|   3|    100000|     200|0.57679996|  PASSED  
          sts_serial|   3|    100000|     200|0.08961708|  PASSED  
          sts_serial|   4|    100000|     200|0.94399633|  PASSED  
          sts_serial|   4|    100000|     200|0.97976848|  PASSED  
          sts_serial|   5|    100000|     200|0.55577553|  PASSED  
          sts_serial|   5|    100000|     200|0.03797086|  PASSED  
          sts_serial|   6|    100000|     200|0.65698077|  PASSED  
          sts_serial|   6|    100000|     200|0.75833598|  PASSED  
          sts_serial|   7|    100000|     200|0.17177630|  PASSED  
          sts_serial|   7|    100000|     200|0.19545511|  PASSED  
          sts_serial|   8|    100000|     200|0.84629859|  PASSED  
          sts_serial|   8|    100000|     200|0.92260300|  PASSED  
          sts_serial|   9|    100000|     200|0.33014124|  PASSED  
          sts_serial|   9|    100000|     200|0.58167588|  PASSED  
          sts_serial|  10|    100000|     200|0.17863092|  PASSED  
          sts_serial|  10|    100000|     200|0.20371360|  PASSED  
          sts_serial|  11|    100000|     200|0.65876693|  PASSED  
          sts_serial|  11|    100000|     200|0.83526051|  PASSED  
          sts_serial|  12|    100000|     200|0.71399849|  PASSED  
          sts_serial|  12|    100000|     200|0.50363385|  PASSED  
          sts_serial|  13|    100000|     200|0.37286026|  PASSED  
          sts_serial|  13|    100000|     200|0.90813784|  PASSED  
          sts_serial|  14|    100000|     200|0.37970099|  PASSED  
          sts_serial|  14|    100000|     200|0.61252834|  PASSED  
          sts_serial|  15|    100000|     200|0.85582125|  PASSED  
          sts_serial|  15|    100000|     200|0.18658862|  PASSED  
          sts_serial|  16|    100000|     200|0.92818090|  PASSED  
          sts_serial|  16|    100000|     200|0.96707909|  PASSED  
         rgb_bitdist|   1|    100000|     100|0.99276389|  PASSED  
         rgb_bitdist|   2|    100000|     100|0.69811185|  PASSED  
         rgb_bitdist|   3|    100000|     100|0.64934130|  PASSED  
         rgb_bitdist|   4|    100000|     100|0.16243260|  PASSED  
         rgb_bitdist|   5|    100000|     100|0.74073591|  PASSED  
         rgb_bitdist|   6|    100000|     100|0.09317071|  PASSED  
         rgb_bitdist|   7|    100000|     100|0.66038630|  PASSED  
         rgb_bitdist|   8|    100000|     100|0.31538976|  PASSED  
         rgb_bitdist|   9|    100000|     100|0.30156288|  PASSED  
         rgb_bitdist|  10|    100000|     100|0.05684660|  PASSED  
         rgb_bitdist|  11|    100000|     100|0.42194911|  PASSED  
         rgb_bitdist|  12|    100000|     100|0.36870951|  PASSED  
rgb_minimum_distance|   2|     10000|    1000|0.29984633|  PASSED  
rgb_minimum_distance|   3|     10000|    1000|0.46283332|  PASSED  
rgb_minimum_distance|   4|     10000|    1000|0.43973501|  PASSED  
rgb_minimum_distance|   5|     10000|    1000|0.80367379|  PASSED  
    rgb_permutations|   2|    100000|     100|0.83083159|  PASSED  
    rgb_permutations|   3|    100000|     100|0.64432421|  PASSED  
    rgb_permutations|   4|    100000|     100|0.66341658|  PASSED  
    rgb_permutations|   5|    100000|     100|0.55507845|  PASSED  
      rgb_lagged_sum|   0|   1000000|     100|0.21840125|  PASSED  
      rgb_lagged_sum|   1|   1000000|     100|0.78815343|  PASSED  
      rgb_lagged_sum|   2|   1000000|     100|0.91787687|  PASSED  
      rgb_lagged_sum|   3|   1000000|     100|0.57378444|  PASSED  
      rgb_lagged_sum|   4|   1000000|     100|0.75421104|  PASSED  
      rgb_lagged_sum|   5|   1000000|     100|0.97887013|  PASSED  
      rgb_lagged_sum|   6|   1000000|     100|0.58870151|  PASSED  
      rgb_lagged_sum|   7|   1000000|     100|0.53010750|  PASSED  
      rgb_lagged_sum|   8|   1000000|     100|0.98234778|  PASSED  
      rgb_lagged_sum|   9|   1000000|     100|0.25110795|  PASSED  
      rgb_lagged_sum|  10|   1000000|     100|0.32490594|  PASSED  
      rgb_lagged_sum|  11|   1000000|     100|0.28410105|  PASSED  
      rgb_lagged_sum|  12|   1000000|     100|0.59095575|  PASSED  
      rgb_lagged_sum|  13|   1000000|     100|0.08464701|  PASSED  
      rgb_lagged_sum|  14|   1000000|     100|0.48467725|  PASSED  
      rgb_lagged_sum|  15|   1000000|     100|0.26502285|  PASSED  
      rgb_lagged_sum|  16|   1000000|     100|0.99640864|   WEAK   
      rgb_lagged_sum|  16|   1000000|     200|0.95356857|  PASSED  
      rgb_lagged_sum|  17|   1000000|     100|0.79533786|  PASSED  
      rgb_lagged_sum|  18|   1000000|     100|0.99868140|   WEAK   
      rgb_lagged_sum|  18|   1000000|     200|0.48090571|  PASSED  
      rgb_lagged_sum|  19|   1000000|     100|0.51644836|  PASSED  
      rgb_lagged_sum|  20|   1000000|     100|0.10645571|  PASSED  
      rgb_lagged_sum|  21|   1000000|     100|0.26780053|  PASSED  
      rgb_lagged_sum|  22|   1000000|     100|0.68271433|  PASSED  
      rgb_lagged_sum|  23|   1000000|     100|0.18423411|  PASSED  
      rgb_lagged_sum|  24|   1000000|     100|0.48009411|  PASSED  
      rgb_lagged_sum|  25|   1000000|     100|0.09255297|  PASSED  
      rgb_lagged_sum|  26|   1000000|     100|0.50242418|  PASSED  
      rgb_lagged_sum|  27|   1000000|     100|0.77188191|  PASSED  
      rgb_lagged_sum|  28|   1000000|     100|0.49915139|  PASSED  
      rgb_lagged_sum|  29|   1000000|     100|0.13992829|  PASSED  
      rgb_lagged_sum|  30|   1000000|     100|0.48803004|  PASSED  
      rgb_lagged_sum|  31|   1000000|     100|0.85953858|  PASSED  
      rgb_lagged_sum|  32|   1000000|     100|0.83224041|  PASSED  
     rgb_kstest_test|   0|     10000|    1000|0.95872571|  PASSED  
     dab_bytedistrib|   0|  51200000|       1|0.46172258|  PASSED  
             dab_dct| 256|     50000|       1|0.05884844|  PASSED  
Preparing to run test 207.  ntuple = 0
        dab_filltree|  32|  15000000|       1|0.33914746|  PASSED  
        dab_filltree|  32|  15000000|       1|0.07655319|  PASSED  
Preparing to run test 208.  ntuple = 0
       dab_filltree2|   0|   5000000|       1|0.51936082|  PASSED  
       dab_filltree2|   1|   5000000|       1|0.54704908|  PASSED  
Preparing to run test 209.  ntuple = 0
        dab_monobit2|  12|  65000000|       1|0.13254982|  PASSED  
# 
# End: 2019-04-12 20:28:50
# 
# Exit value: 0
# Numbers used: 65221994496 >= 2^35 (260.9 GB)
# 
# Test duration: 135.59395695408335 minutes
# 
