├── DAG_braidpool_simulator.py ├── LICENSE ├── README.md ├── chain_work.cpp ├── difficulty_jump.cpp ├── exponential_function_for_integers.cpp ├── fed_sux.pl ├── hash_attack_w_bad_timestamps.pl ├── seed_words ├── BIP39.txt ├── adjectives.txt ├── generate_random_seed_words.py ├── harry_potter.txt ├── nouns.txt ├── seed_words.html └── words_16k.txt ├── test_DAs.cpp ├── test_DAs_README.md ├── test_DAs_example ├── aa_test_DAs______OPEN_THIS_________.html ├── blocks_DGW_.txt ├── blocks_DIGISHIELD_.txt ├── blocks_DIGISHIELD_impoved_.txt ├── blocks_EMA_.txt ├── blocks_LWMA1_.txt ├── blocks_LWMA4_.txt ├── blocks_SMA_.txt ├── blocks_TSA.txt ├── gif_DGW_16.gif ├── gif_DGW_8.gif ├── gif_DIGISHIELD_12.gif ├── gif_DIGISHIELD_4.gif ├── gif_DIGISHIELD_impoved_13.gif ├── gif_DIGISHIELD_impoved_5.gif ├── gif_EMA_14.gif ├── gif_EMA_6.gif ├── gif_LWMA1_10.gif ├── gif_LWMA1_2.gif ├── gif_LWMA4_11.gif ├── gif_LWMA4_3.gif ├── gif_SMA_15.gif ├── gif_SMA_7.gif ├── gif_TSA1.gif ├── gif_TSA9.gif ├── plot_DGW_16.txt ├── plot_DGW_8.txt ├── plot_DIGISHIELD_12.txt ├── plot_DIGISHIELD_4.txt ├── plot_DIGISHIELD_impoved_13.txt ├── plot_DIGISHIELD_impoved_5.txt ├── plot_EMA_14.txt ├── plot_EMA_6.txt ├── plot_LWMA1_10.txt ├── plot_LWMA1_2.txt ├── plot_LWMA4_11.txt ├── plot_LWMA4_3.txt ├── plot_SMA_15.txt ├── plot_SMA_7.txt ├── plot_TSA1.txt └── plot_TSA9.txt ├── test_DAs_gnuplot.txt └── timespan_attack.cpp /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 zawy12 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # difficulty-algorithms 2 | See the Issues for difficulty algorithms 3 | 4 | This is a mish-mash of code I've done related to difficulty algorithms. The primary content of this repository is in the issues. 5 | -------------------------------------------------------------------------------- /chain_work.cpp: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2020, 2021 by Zawy, MIT license. 2 | 3 | Just compile and run this to see the results. 4 | 5 | See https://github.com/zawy12/difficulty-algorithms/issues/58 6 | 7 | Chain work does not correctly determine the number of hashes performed. Chain work is the 8 | sum of difficulties (multiplied by a scaling factor such as 2^32 for BTC). For a large 9 | number of blocks it's usually pretty accurate, but to be precise when determining a leading 10 | tip, the number of hashes for N blocks is 11 | 12 | Hashes = sum(difficulty) * (N-1)/N 13 | 14 | This is precise only at the moment the last block is solved. 15 | 16 | The factor (N-1)/N corrects an error caused by the exponential distribution of solvetimes 17 | having 70% more faster-than-average solvetimes than it does slower-than-average. As more 18 | blocks are found (N is larger), some will have substantially longer solvetimes that cancel 19 | the effect of the fast solvetime luck. At N=100, the error is reduced to 1%. This correction 20 | is the result of the Erlang distribution of N exponential solvetimes. 21 | 22 | Sum(Difficulty) * (N-1)/N is perfect only if difficulty is constant. 23 | 24 | The only adjustment to HR I have been able to think of that includes the "time since last block" works like this. 25 | > If a new block shows up now and it decreases the HR from the current estimate, then assume it just showed up and apply that adjustment." 26 | This means doing the following. 27 | 28 | tslb = time since last block 29 | if .... 30 | N/(sum ST/D)*(N-1)/N > (N+1)/(sum ST/D + tslb/current_D)*N/(N+1) 31 | then .... 32 | HR = (N+1)/(sum ST/D + tslb/current_D)*N/(N+1) 33 | 34 | */ 35 | #include 36 | #include 37 | #include 38 | #include // for vectors 39 | #include 40 | #include 41 | #include 42 | using namespace std; 43 | typedef double d; 44 | 45 | d TARGET_TIME=0; 46 | d fRand(d fMin, d fMax) { d f=(d)rand() / RAND_MAX; return fMin+f*(fMax-fMin); } 47 | d print_out (d work, d HR, d H, string name) { 48 | cout << work << ", " << HR << " (" << int(10000*(HR -H)/H)/100 << "% error), " << name << "\n"; 49 | return 0; 50 | } 51 | 52 | d run_simulation( long int TIPS, vectorD, vectorHR, d tslb) { 53 | // Back of vector D is the difficulty that's not yet solved. 54 | d current_D = D.back(); D.pop_back(); 55 | d current_HR = HR.back(); HR.pop_back(); 56 | assert ( D.size() == HR.size() ); 57 | 58 | d N = D.size(), sum_Ds=0, avg_HR=0, ST=0, avg_ST=0; 59 | d sum_ST=0, sum_actual_work=0, sum_TT_inv_HR=0; 60 | d avg_Z_HR=0, avg_Z_work=0, actual_work=0, avg_actual_HR=0, avg_actual_work=0; 61 | d avg_chain_work_HR=0, harmonic_sum=0, avg_H_work=0, avg_H_HR=0; // Harmonic difficulties 62 | d sum_TT_easiness=0, avg_TT_work=0, avg_TT_HR=0; // target*time 63 | d sum_S_easiness=0, avg_S_easiness=0, avg_S_HR_ease=0; // entropy 64 | d sum_harmonic_work=0, avg_harmonic_work=0, avg_harmonic_HR=0; 65 | d m_A_w=0, m_A_hr=0, m_TT_hr=0, sd_A_w=0, TT_w=0, sd_A_hr=0, sd_TT_hr=0; 66 | 67 | // Get avg solvetime to adjust D's to get same-age tips. 68 | for ( long int i=1; i <= TIPS ; i++) { 69 | sum_ST = 0; 70 | for (int j = 0; j < N; j++ ) { 71 | ST = D[j]/HR[j] * log(1/fRand(0,1)); 72 | sum_ST += ST; 73 | } 74 | avg_ST += sum_ST / TIPS; // avg TIP ST 75 | } 76 | for (int j = 0; j < N; j++ ) { 77 | D[j] = D[j]*TARGET_TIME/(avg_ST+tslb); 78 | sum_Ds += D[j]; 79 | } 80 | current_D = current_D*TARGET_TIME/(avg_ST+tslb); 81 | // Adjust D and HR so that sum_D=5 without changing TARGET_TIME. 82 | for (int j = 0; j < N; j++) { 83 | D[j] = D[j]*5/sum_Ds; 84 | HR[j] = HR[j]*5/sum_Ds; 85 | } 86 | current_D = current_D*5/sum_Ds; 87 | current_HR = current_HR*5/sum_Ds; 88 | avg_ST=0; 89 | sum_Ds=0; 90 | 91 | cout <<"----- Difficulties and Hashrates: -----\nD: "; 92 | for ( int j=0; j (N+1)/(sum_TT_easiness + tslb/current_D)*((N+1)-1)/(N+1) ) { 158 | 159 | avg_Z_work += (sum_Ds + current_D) / TIPS; // for code symmetry 160 | avg_Z_HR += (sum_Ds + current_D)/(sum_ST+tslb)*((N+1)-1)/(N+1)/ TIPS; 161 | 162 | avg_H_work += (N+1)*(N+1)/(harmonic_sum + 1/current_D)/ TIPS; 163 | avg_H_HR += (N+1)*(N+1)/(harmonic_sum + 1/current_D)/(sum_ST+tslb)*((N+1)-1)/(N+1)/ TIPS; 164 | 165 | avg_TT_work += (N+1)/(sum_TT_easiness + tslb/current_D) * sum_ST/ TIPS; 166 | avg_TT_HR += (N+1)/(sum_TT_easiness + tslb/current_D)*((N+1)-1)/(N+1)/ TIPS; 167 | 168 | avg_S_HR_ease += (sum_S_easiness + log(tslb/current_D))/log(2)*N/(N+1) / TIPS; 169 | } 170 | else { 171 | avg_Z_work += sum_Ds / TIPS; // for code symmetry 172 | avg_Z_HR += sum_Ds / sum_ST * (N-1)/N / TIPS ; 173 | 174 | avg_H_work += N*N/harmonic_sum / TIPS; // is smaller than sum Ds if Ds vary. 175 | avg_H_HR += N*N/harmonic_sum/sum_ST*(N-1)/N / TIPS; 176 | 177 | avg_TT_work += N/sum_TT_easiness * sum_ST / TIPS ; 178 | avg_TT_HR += N/sum_TT_easiness*(N-1)/N / TIPS; 179 | 180 | avg_S_HR_ease += sum_S_easiness / log(2) *(N-1)/N / TIPS; 181 | } 182 | } 183 | cout << int(N) << " blocks took " << avg_ST << " solvetimes.\n"; 184 | cout << "Time since last block: " << tslb << " solvetimes.\n"; 185 | cout << "A total of " << avg_ST+tslb << " solvetimes since split.\n"; 186 | if (tslb*current_HR/current_D > avg_ST*avg_actual_HR/avg_actual_work) { 187 | cout << "\nInterpretation warning: Last block delay is > 50% unlikely.\nActual values are not averages for the given HR.\n"; 188 | } 189 | cout << "\n" << avg_actual_work << " (work), " << 190 | avg_actual_HR << " (HR) Input data" << endl; 191 | print_out(sum_Ds, avg_chain_work_HR, avg_actual_HR, "HR = (sum Ds)/(sum STs)"); 192 | print_out(avg_Z_work, avg_Z_HR, avg_actual_HR, "HR = (sum Ds)/(sum STs)*(N-1)/N incl. delay"); 193 | // print_out(avg_H_work, avg_H_HR, avg_actual_HR, "harmonic_mean_Ds/avg_STs *(N-1)/N incl. delay"); 194 | print_out(avg_TT_work, avg_TT_HR, avg_actual_HR, "harmean(D/ST)*(N-1)/N incl. delay (Best HR, work is iffy)"); 195 | // print_out(0, avg_S_HR_ease, avg_S_HR_ease, "entropy of harmean(D/ST)*(N-1)/N. Lower entropy = earlier tip."); 196 | cout << "\n"; 197 | return 0; 198 | } 199 | 200 | int main() { 201 | srand(time(0)); // seed fRand(); 202 | long int TIPS = 1e5; // how many "runs" to do 203 | cout << fixed << setprecision(2); 204 | cout << "Hashreate (HR) = 1 hash/(target solvetime)\nTarget solvetime = 1\n"; 205 | cout << "Difficulty = 2^256/target = avg # hashes to solution = 1/(Probability per hash)\n"; 206 | 207 | // The following should be 0 except in advanced testing. 208 | d tslb = 0; // Time Since Last Block as fraction of target solvetime 209 | 210 | // TARGET_TIME is current time minus time of split. It is used to 211 | // adjust the difficulties so that all the tips have the same current time. 212 | // It will also adjust HRs so that chain work = 1. This allows 213 | // much easier comparison between the different HR metrics. 214 | // Setting this first run to all 1's for D and HR can set the 215 | // TARGET_TIME. 216 | 217 | TARGET_TIME = 0; 218 | 219 | // Last element of vector D and HR are an unsolved block 220 | // The last element is used if tslb != 0 221 | // These difficulties & hashrates are scaled in the outputs for tslb reasons. 222 | vectorD = {1,1,1, 1}; // Difficulties 223 | vectorHR = {1,1,1, 1}; // Hashrate 224 | 225 | for (int i=0; i ts, std::vector ct, 66 | arith_uint256 numerator, arith_uint256 denominator, arith_uint256 W, arith_uint256 T, arith_uint256 past ) { 67 | 68 | if (ts.size() < 2*W || ct.size() < 2*W ) { exit; } // error. a vector was too small 69 | if (ts.size() < past+W || ct.size() < past+W ) { past = min(ct.size(), ts.size()) - W; } // past was too small, adjust 70 | 71 | arith_uint256 K = 1e6; // K is a scaling factor for integer divisions 72 | int ii=0; 73 | 74 | if ( ts[0]-ts[W+1] < T*numerator/denominator ) { 75 | bnTarget = ((ct[0]-ct[W])/K)*min(K,(K*(nTime-ts[0])*(ts[0]-ts[W])*denominator/numerator)/T/T); 76 | } 77 | 78 | /* Check past blocks for any sum of W STs < T*numerator/denominator triggers. This is messy 79 | because the blockchain does not allow us to store a variable to know 80 | if we are currently in a triggered state that is making a sequence of 81 | adjustments to prevTargets, so we have to look for them. 82 | 83 | Nested loops do this: if block emission has not slowed to be back on track at 84 | any time since most recent trigger and we are at current block, aggressively 85 | adust prevTarget. */ 86 | 87 | for ( int j=past-1; j>= 1; j--) { 88 | if ( ts[j]-ts[j+W+1] < T*numerator/denominator ) { 89 | ii=0; 90 | for ( int i = j-1; i >= 0; i-- ) { 91 | ii++; 92 | // Check if emission caught up. If yes, "trigger stopped at i". 93 | // Break loop to try more recent j's to see if trigger activates again. 94 | if ( ts[i]-ts[j+W] > (ii+W)*T ) { break; } 95 | 96 | /* We're here, so there was a TS[j]-TS[j+W] < T*numer/denom trigger in the past 97 | and emission rate has not yet slowed up to be back on track so the 98 | "trigger is still active", aggressively adjusting target here at block "i" . */ 99 | 100 | if (i == 0) { 101 | 102 | /* We made it all the way to current block. Emission rate since 103 | last trigger never slowed enough to get back on track, so adjust again. 104 | If avg last 3 STs = T, this increases target to prevTarget as ST increases to T. 105 | This biases it towards ST=~1.75*T to get emission back on track. 106 | If avg last 3 STs = T/2, target increases to prevTarget at 2*T. 107 | Rarely, last 3 STs can be 1/2 speed => target = prevTarget at T/2, & 1/2 at T.*/ 108 | 109 | bnTarget = ((ct[0]-ct[W])/W/K)*(K*(nTime-TS[0])*(ts[0]-ts[W]))/W/T/T; 110 | j=0; // It needed adjusting, we adjusted it, we're finished, so break out of j loop. 111 | } 112 | } 113 | } 114 | } 115 | return bnTarget; 116 | } 117 | 118 | -------------------------------------------------------------------------------- /exponential_function_for_integers.cpp: -------------------------------------------------------------------------------- 1 | // Exponential Function for Integers 2 | // Copyright (c) Zawy 2019 3 | // MIT License 4 | 5 | #include // for cout & endl 6 | #include // for exp, pow, abs. 7 | 8 | // The above includes are only needed for the testing the function. The function does not need them. 9 | 10 | uint64_t exponential_function_for_integers (uint64_t x_times_10k) { 11 | 12 | // This calculates e^x without decimals by passing it an integer x_times_10k and getting 13 | // in return 10,000*e^(x_times_1k/10,00). e^24,9999 (x=24.9999) is highest value it accepts. 14 | // Error is < +/-0.015%, avg = +/- 0.005%. The math: let x = N.nnnn so that e^x = e^N * e^0.nnnn because series expansion 15 | // for e^0.nnnn is a lot more accurate than e^N values which can be more easily stored or calculated. 16 | uint64_t k = 1e4, R=0; 17 | uint64_t exx = k; 18 | uint64_t exp_of_integers[25] = { 10000, 27183, 73891, 200855, 545982, 1484132, 4034288, 10966332, 29809580, 81030839, 19 | 220264658, 598741417, 1627547914, 4424133920, 12026042842, 32690173725, 88861105205, 241549527536, 20 | 656599691373, 1784823009632, 4851651954098, 13188157344832, 35849128461316, 97448034462489, 264891221298435 }; 21 | // for (u i = 1; i <= x_times_10k/k; i++ ) { exx = (exx*27183)/k; } // loop method can replace the above if k is changed 22 | 23 | exx = exp_of_integers[x_times_10k/k]; 24 | R = x_times_10k % k; 25 | exx = (exx*(k+(R*(k+(R*(k+(R*(k+(R*(k+(R*(k+(R*k)/6/k))/5/k))/4/k))/3/k))/2/k))/k))/(k-1); // (k-1) fudge helped center error. 26 | if ( x_times_10k/k > 24 ) { exx = exp_of_integers[24]; } 27 | return exx; 28 | } 29 | 30 | int main () { 31 | 32 | // The following simply demonstrates the above function's accuracy. 33 | 34 | uint64_t k = 1e4, estimate_10k, j; 35 | double accurate, sumerr=0, err, mini=200000000, maxi=-200000000, max=-200000000, i, minerror=11111, maxerror=11111, sqerr=0; 36 | 37 | // generate list of exponent values. 38 | // for (int p=0; p<25; p++) { cout << static_cast(exp(p)*k+.5) << ", "; } exit(0); 39 | 40 | for (i = 0.002; i< 25; i = i+.002 ) { 41 | accurate = std::exp(i); 42 | estimate_10k = exponential_function_for_integers(static_cast(k*i)); 43 | // cout << "e^" << i << " 10k estimate: " << estimate_10k << " accurate: " << accurate << endl; 44 | err = 100*((estimate_10k/accurate)/k - 1); 45 | if ( err > max) { max = err; maxerror=i; } 46 | if ( err < mini) { mini = err; minerror = i; } 47 | std::cout << err << "% error at e^" << i << std::endl; 48 | sqerr += err*err; 49 | j++; 50 | sumerr +=abs(err); 51 | } 52 | sqerr /= (j-1); 53 | sqerr = pow(sqerr,0.5); 54 | std::cout << "\n" << sumerr/j << " avg error. \n" << sqerr << " Std Dev.\n" << mini << "% min error.\n" << 55 | max << "% max error.\nMin error found at: e^" << minerror << "\nMax error found at: e^" << maxerror << std::endl; 56 | 57 | return(0); 58 | } 59 | -------------------------------------------------------------------------------- /fed_sux.pl: -------------------------------------------------------------------------------- 1 | #!usr/bin/perl 2 | 3 | # Copyright (c) 2023 by Zawy under MIT license. 4 | 5 | # #### The Fed Sux #### 6 | # A decentralized proof of truth. 7 | 8 | # If a lot of decentralized non-profit societal value is spent 9 | # in the creation of a message, it's evidence the message is true. 10 | 11 | # This hashes a message with a changing nonce until a max number of hex 12 | # symbols in the hash REPEAT. It makes the hash look like it has more 13 | # order ("truth") than the "leading zeros" in normal proof of work. 14 | 15 | # If everyone wants to work on the same message, nonce ranges need 16 | # be assigned to workers. 17 | 18 | # This has a difficulty algorithm for demonstration and monitoring. 19 | # There's no blockchain, only a single message for which I want 20 | # to find the nonce that has the "most ordered" hash. 21 | 22 | # ### Usage: ### 23 | # Install Perl's Crypto::Digest module 24 | # $ cpan install Crypt:Digest:SHA256 25 | # Run script: 26 | # $ perl sha256_fed_sux.pl 27 | # The best hashes and nonces are appeneded to "fed_sux.txt". 28 | 29 | # The following is a 1-liner to do it without the full program. It only 30 | # searches and displays best winners. It doesn't have the difficulty 31 | # algorithm that allows a steady slow stream of non-winners. It writes to the 32 | # same fed_sux.txt file. Don't forget to change the nonce if you're running 33 | # several threads that need to be working on different nonces. 34 | 35 | # perl -e 'use Crypt::Digest::SHA256 sha256_hex;$|=1;$nonce=1;$w=14;while(1){$nonce++;$m="The Fed Sux \$8.$nonce trillion'\''s worth.";$k=$j=sha256_hex($m);next if $k!~/^.?(.)\1+.?(.)\2+/;$k=~s/(.)\1+/\1/g;$s=64-length($k);next if $s<$w;$w=$s;print "$j $s $m\n\07";open(F,">>fed_sux.txt");print F "$j $s $m\n";close F;}' 36 | 37 | use Crypt::Digest::SHA256 sha256_hex; 38 | 39 | $|=1; # immediately flush output buffer 40 | 41 | ######## MESSAGE TO HASH ######## 42 | $message_before_nonce = 'The Fed Sux $8.'; 43 | $message_after_nonce = " trillion's worth."; 44 | 45 | ####### The STARTING NONCE ######### 46 | # Find the highest-valued nonce attempted to not duplicate prior work 47 | $nonce=2e12; 48 | 49 | ####### BLOCK TIME ######## 50 | # increase this to slow the steady stream of non-winners 51 | $T = 5; # in seconds 52 | 53 | $D = 15; # Initial DIFFICULTY. Scale depends on metric. Default: $D=15 takes 1 second, 20 takes a day. 54 | 55 | $begin= time(); # Seconds since 1970 56 | print "Message being hashed: '$message_before_nonce(nonce)$message_after_nonce'\n"; 57 | print "Time = $begin, Difficulty = $D, Block time = $T seconds"; 58 | print ' 59 | Filter used: 60 | $hash=~s/(.)\1+/\1/g; 61 | 62 | Scoring function used (difficulty): 63 | score = 64-length(hash) where hash has repeat chars 64 | removed with regex hash=~s/(.)\1+/\1/g; 65 | 66 | '; 67 | print "height clock hash score next_difficulty best_solution time nonce (in Millions) avg_block_time {mid-block difficulty adjust}\n"; 68 | $nonce=0; # increase if necessary to prevent multiple threads on same message from doing identical work. 69 | while(1) { 70 | $nonce++; 71 | $message = $message_before_nonce . $nonce . $message_after_nonce; #### THE MESSAGE #### 72 | 73 | $hash=$hash2=sha256_hex($message); ##### HASH THE MESSAGE #### 74 | 75 | # print "$now\n" if ($i % 1e7 == 0); # for testing. Print the time every 10 M loops. 76 | 77 | ##### FOR SPEED, FILTER OUT HASHES THAT WOULD PROBABALY LOSE ######### 78 | next if $hash!~/^.?(.)\1+.?(.)\2+/; # "xAAxBBxxxxx" is min requirement. A, B, & x are "any hex". 79 | 80 | # next; # for testing the above filter's speed. 81 | 82 | $now = time()-$begin; # time since genesis 83 | 84 | #### REGEX TO REMOVE SEQUENTIAL REPEATS. ####### 85 | #### THE MORE REMOVED, THE BETTER THE SCORE ########## 86 | $hash=~s/(.)\1+/\1/g; # Remove all sequential repeats. Gives a twin a score of 1 & a triple 2. 87 | 88 | $score=64-length($hash); # This is the measure of success, aka difficulty, the number removed. 89 | if($now-$t>3*$T){ $D-=0.05; $t=$now; print "(-0.1)"; } # RTT: make difficulty easier if winners are slow 90 | next if $score<$D; # try again if it's not a winner. 91 | $height++; 92 | $D*=(1+1/100-($now-$timestamp)/$T/100); # difficulty algorithm WTEMA =~ ASERT to maintain blocktime 93 | # if ($now-$timestamp)>$T) { $D+=0.04; } else {$D-=0.1;} # alternate difficulty algo 94 | $timestamp = $t = $now; 95 | print "\n$height $now $hash2 $score " . sprintf("%.2f",$D) . " $best $timestamp $nonce (" . int($nonce/1e6) . " M) "; 96 | print sprintf("%.1f",$now/$height) . " s"; # average block time 97 | if ($score>=$best) { 98 | $new_record="$height $hash2 $score '$message'\n"; 99 | open(F,">>fed_sux.txt"); print F $new_record; close F; # file also 100 | if ($score>$best) { print "\07\nBEST SCORE: $score '$message'"; } # 07 causes a beep on computer 101 | $best=$score; 102 | } 103 | } 104 | 105 | # Another interesting 1-liner that does a difficulty adjustment. It doesn't remember best winners. 106 | # perl -e 'use Crypt::Digest::SHA256 sha256_hex;$t=time();$d=55;for ($i=1;$i<1e8;$i++){$k=$j=sha256_hex($i); $k=~s/(.)\1+/\1/g; if(time()-$t>3){ $d+=1;$t=time();} if (length($k) < $d){print"$j\n"; time()-$t>1?$d+=1:$d-=1; $t=time();}}' 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | -------------------------------------------------------------------------------- /hash_attack_w_bad_timestamps.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | use JSON; 3 | 4 | # Copyright (c) 2018 Zpalmtree (Turtle coin) and Zawy 5 | # MIT license 6 | # 7 | # Perl script to simulate hash attacks and timestamp manipulation on testnet for Cryptonote coins. 8 | # 9 | # Hash Attack instructions. 10 | # The computer running this script should be the only miner on the network. 11 | # Change settings in this file and run script after node is running: 12 | # >perl hash_attack_w_bad_timestamps.pl 13 | # CTRL-C to start and stop the attack. CTRL-C does not stop this script. 14 | # "Stopping attack" means allowing 1-thread to mine only a fraction of the time. 15 | # "Starting attack" means allowing continuous mining with 4 threads. 16 | # 100x attacker can be simulated with the $AS setting. 17 | # "pkill hash_attack_w_bad_timestamps.pl" to stop this script. 18 | # 19 | # Timestamp manipulation instructions (optional). 20 | # What you need: 21 | # You need 1 or more other nodes & exactly 1 other 1-thread miner on 1 of them to see effect 22 | # of > 50% timestamp attacker, provided attacker here has 4 threads. The other miner throws off 23 | # this script's attack size calculation. Use $AS=100 to get 4x baseline attack = 4/5 threads = 80% of 24 | # network as the hash rate timestamp manipulator. 25 | # If attacker here is less than 50% of network hash rate, then results are instructive but less harmful. 26 | # The other node(s) will have the valid chain because their clock is correct. 27 | # Get difficulties and timestamps from those nodes for analysis. 28 | # Bad timestamp testing procedure: 29 | # 0) Select the linux system of this node in the settings below and save script. 30 | # 1) Turn off automatic time updates on this node. 31 | # 2) Select 1 of the 4 recommended timestamp adjustments below, save. 32 | # 3) Run this script in attack mode for > 10 blocks. 33 | # 4) "pkill hash_attack_w_bad_timestamps.pl" to stop this script. 34 | # 5) Turn on automatic time update to fix this node's system clock. 35 | # 6) Repeat 1) to 5) above for each of the 4 recommended bad timestamp settings. 36 | # 7) Analyze difficulties and timestamps from the other nodes to see the results. 37 | 38 | ############## BEGIN SETTINGS ############# 39 | $port = '31898'; 40 | $address='TRTLv1eJUEeV3uHbMpjbDefuhTdphfnDTij2skBJJMDi5EPcmEWpGTsJvRLpUA3F1T5wrjCjGS3GYCHyQiRxXaGR8FW8cjjv8Wi'; 41 | 42 | $T = 30; # coin's target solvetime 43 | $AS = 10; # attack size as multiple of dedicated miner's hashrate 44 | 45 | # This will help by allowing dedicated miner to run longer fraction of block time 46 | # The settings must be 4 and 1 47 | $attacker_threads = 4; 48 | $dedicated_threads = 1; 49 | 50 | # optional timestamp manipulation settings 51 | $use_timestamp_manipulation = 0; # if 1 then attacker will send sequence of bad timestamps. 52 | $bad_timestamp_size = 0.5*$T; # Recommended settings to try: 0.5*$T, -0.5*$T, 3*$T, and -3*$T; 53 | # Non-ubuntu systems need root privilidges to change time. 54 | $linux_system = 0; # 0 = not linux, 1 = ubuntu, 2 = other GNU, 3 = BSD 55 | 56 | ############ END SETTINGS ############# 57 | 58 | $dedicated_miner_off_time = int((1-$attack_threads/$dedicated_threads/($AS+1))*$T); 59 | print "Dedicated miner on-time is " . $T - $dedicated_miner_off_time . " seconds per block\n"; 60 | 61 | start_miner($dedicated_threads); 62 | $last_height = get_height(); 63 | 64 | $SIG{INT} = sub { $interrupted = 1; }; 65 | 66 | while ( 1 ) { 67 | sleep 1; 68 | if ($interrupted) { 69 | $interrupted = 0; 70 | print "Starting attack.\n"; 71 | &start_miner($attacker_threads); 72 | 73 | while(!$interrupted) { 74 | sleep 1; 75 | $height = get_height(); 76 | if ($height != $last_height) { 77 | $last_height = $height; 78 | print "Attacker found $height.\n"; 79 | if ( $use_timestamp_manipulation == 1 ) { 80 | $secs=time; 81 | $secs+=$bad_timestamp_size; 82 | if ( $linux_system == 1 ) { $temp =`sudo date -s '\@$secs'`; } 83 | elsif ( $linux_system == 2 ) { $temp =`date -s '\@$secs'`; } 84 | elsif ( $linux_system == 3 ) { 85 | $temp =`date "$(date -r $secs +'%y%m%d%H%M.%S')"`; # untested 86 | } 87 | print "$secs\n"; 88 | } 89 | } 90 | } 91 | $interrupted = 0; 92 | print "Attack Stopped.\n"; 93 | } 94 | 95 | $height = get_height(); 96 | 97 | if ($height != $last_height) { 98 | $last_height = $height; 99 | print "Dedicated miner found $height.\n"; 100 | `pkill miner`; 101 | print "Miner sleeping for $dedicated_miner_off_time seconds.\n"; 102 | sleep $dedicated_miner_off_time; 103 | print "Starting dedicated miner.\n"; 104 | start_miner($dedicated_threads); 105 | } 106 | } 107 | 108 | sub get_height { 109 | my $height=`curl -s -X POST http://127.0.0.1:$port/json_rpc -d '{"params": {},"jsonrpc":"2.0","id":"test","method":"getblockcount"}' -H 'Content-Type: application/json'`; 110 | $decoded = decode_json($height); 111 | $height = $decoded->{'result'}{'count'}; 112 | return $height; 113 | } 114 | 115 | sub start_miner { 116 | my $threads = $_[0]; 117 | system("./miner --threads $threads --address $address --daemon-rpc-port $port &"); 118 | } 119 | -------------------------------------------------------------------------------- /seed_words/generate_random_seed_words.py: -------------------------------------------------------------------------------- 1 | # This generates 12 random seed words in adjective-noun pairs and from BIP39. Requires 3 files in same location as this program. 2 | import os 3 | import random 4 | 5 | # find current file path 6 | current_path = os.path.dirname(os.path.realpath(__file__)) 7 | os.chdir(current_path) 8 | 9 | # load the 3 lists of 2048 words 10 | nouns = open("nouns.txt", "r").read().split("\n") 11 | adjectives = open("adjectives.txt", "r").read().split("\n") 12 | BIP39 = open("BIP39.txt", "r").read().split("\n") 13 | 14 | # get 12 random numbers 0 to 2047 15 | seeds = [random.randint(0,2047) for _ in range(12)] 16 | 17 | # print the adjective-noun pairs matching those random numbers 18 | for i in range(0,12): 19 | if i % 2==0: 20 | print(adjectives[seeds[i]], end = " ") 21 | else: 22 | print(nouns[seeds[i]], end = " ") 23 | print() 24 | 25 | # print the BIP39 words for those random numbers 26 | for i in range(0,12): 27 | print (BIP39[seeds[i]], end = " ") 28 | -------------------------------------------------------------------------------- /seed_words/nouns.txt: -------------------------------------------------------------------------------- 1 | abe 2 | ace 3 | ache 4 | acid 5 | acne 6 | act 7 | actor 8 | adult 9 | age 10 | agent 11 | agony 12 | aid 13 | aim 14 | air 15 | al 16 | alert 17 | alex 18 | alien 19 | alley 20 | alloy 21 | ally 22 | altar 23 | ammo 24 | amy 25 | andy 26 | angel 27 | anger 28 | angle 29 | ankle 30 | ann 31 | ant 32 | anvil 33 | ape 34 | apex 35 | apple 36 | april 37 | apron 38 | arc 39 | arch 40 | area 41 | arena 42 | argon 43 | arm 44 | armor 45 | army 46 | aroma 47 | array 48 | arrow 49 | arson 50 | art 51 | ash 52 | assay 53 | asset 54 | atm 55 | atom 56 | attic 57 | audio 58 | audit 59 | aunt 60 | aura 61 | auto 62 | award 63 | awe 64 | axe 65 | axiom 66 | axis 67 | axle 68 | aztec 69 | babe 70 | baby 71 | back 72 | bacon 73 | badge 74 | bag 75 | bait 76 | baker 77 | ball 78 | balls 79 | balm 80 | band 81 | bang 82 | bank 83 | bar 84 | barge 85 | bark 86 | barn 87 | baron 88 | bart 89 | base 90 | basis 91 | bat 92 | batch 93 | bath 94 | baton 95 | bay 96 | beach 97 | bead 98 | beam 99 | bean 100 | bear 101 | beard 102 | beast 103 | bed 104 | bee 105 | beef 106 | beep 107 | beer 108 | belch 109 | bell 110 | belly 111 | belt 112 | bench 113 | bend 114 | bent 115 | berry 116 | best 117 | bet 118 | bias 119 | bib 120 | bible 121 | bicep 122 | bid 123 | biden 124 | bigot 125 | bike 126 | bile 127 | bill 128 | bin 129 | bind 130 | binge 131 | birch 132 | bird 133 | birth 134 | bison 135 | bit 136 | bitch 137 | bite 138 | biter 139 | biz 140 | blade 141 | blame 142 | blank 143 | blast 144 | blaze 145 | blend 146 | blind 147 | blink 148 | bliss 149 | bloat 150 | blob 151 | block 152 | blog 153 | bloke 154 | blood 155 | bloom 156 | blot 157 | blow 158 | bluff 159 | blur 160 | boa 161 | board 162 | boast 163 | boat 164 | bob 165 | body 166 | boil 167 | bolt 168 | bomb 169 | bond 170 | bone 171 | bongo 172 | bonus 173 | booby 174 | book 175 | boom 176 | boon 177 | boost 178 | boot 179 | booth 180 | booty 181 | booze 182 | bore 183 | bosom 184 | boss 185 | bound 186 | bow 187 | bowl 188 | box 189 | boxer 190 | boy 191 | brace 192 | brain 193 | brake 194 | brand 195 | brass 196 | brave 197 | brawl 198 | bread 199 | break 200 | breed 201 | brew 202 | brick 203 | bride 204 | brief 205 | brig 206 | brim 207 | brink 208 | broil 209 | brook 210 | broom 211 | brow 212 | brush 213 | brute 214 | buck 215 | bud 216 | buddy 217 | bug 218 | buggy 219 | bugle 220 | build 221 | built 222 | bulb 223 | bulge 224 | bulk 225 | bull 226 | bully 227 | bum 228 | bump 229 | bun 230 | bunch 231 | bunk 232 | burn 233 | burst 234 | bus 235 | bush 236 | bust 237 | butt 238 | buyer 239 | buzz 240 | cab 241 | cabin 242 | cable 243 | cache 244 | cadet 245 | cafe 246 | cage 247 | cake 248 | calf 249 | call 250 | calm 251 | camel 252 | camp 253 | can 254 | candy 255 | cane 256 | canoe 257 | canon 258 | cap 259 | cape 260 | car 261 | card 262 | care 263 | cargo 264 | carl 265 | cart 266 | case 267 | cash 268 | cask 269 | cast 270 | cat 271 | catch 272 | cave 273 | cell 274 | ceo 275 | cfo 276 | chad 277 | chain 278 | chair 279 | chalk 280 | champ 281 | chant 282 | chap 283 | charm 284 | chart 285 | chase 286 | chasm 287 | chat 288 | check 289 | cheek 290 | cheer 291 | chef 292 | chest 293 | chick 294 | chief 295 | child 296 | chili 297 | chill 298 | chimp 299 | chin 300 | china 301 | chip 302 | choir 303 | chop 304 | chord 305 | chore 306 | chow 307 | chump 308 | chunk 309 | cigar 310 | city 311 | claim 312 | clam 313 | clan 314 | clap 315 | clash 316 | class 317 | claw 318 | clay 319 | clear 320 | clerk 321 | click 322 | cliff 323 | climb 324 | clip 325 | cloak 326 | clock 327 | clod 328 | close 329 | clot 330 | cloth 331 | cloud 332 | clout 333 | clove 334 | clown 335 | club 336 | cluck 337 | clue 338 | clump 339 | coach 340 | coal 341 | coast 342 | coat 343 | cobra 344 | cock 345 | code 346 | coil 347 | coin 348 | coke 349 | cold 350 | cole 351 | colon 352 | color 353 | colt 354 | comb 355 | combo 356 | comet 357 | comic 358 | comma 359 | con 360 | cone 361 | cook 362 | cool 363 | cop 364 | copy 365 | coral 366 | cord 367 | core 368 | cork 369 | corn 370 | cost 371 | couch 372 | cough 373 | count 374 | court 375 | cover 376 | cow 377 | crab 378 | crack 379 | craft 380 | cramp 381 | crank 382 | crap 383 | crash 384 | crate 385 | crawl 386 | craze 387 | cream 388 | creek 389 | crest 390 | crew 391 | crib 392 | crime 393 | crisp 394 | crook 395 | crop 396 | crow 397 | crowd 398 | crown 399 | crush 400 | crust 401 | crux 402 | cry 403 | crypt 404 | cub 405 | cuba 406 | cube 407 | cuff 408 | cult 409 | cup 410 | curb 411 | cure 412 | curse 413 | curve 414 | cut 415 | cycle 416 | dad 417 | daddy 418 | dairy 419 | dam 420 | damn 421 | dan 422 | dance 423 | dark 424 | darn 425 | dash 426 | data 427 | date 428 | dawn 429 | day 430 | dead 431 | deal 432 | dean 433 | dear 434 | death 435 | debt 436 | debut 437 | decay 438 | deck 439 | deed 440 | deep 441 | deer 442 | delay 443 | demon 444 | den 445 | dent 446 | depot 447 | depth 448 | desk 449 | devil 450 | dew 451 | dial 452 | diary 453 | dice 454 | dick 455 | die 456 | diet 457 | diety 458 | dig 459 | digit 460 | dill 461 | dime 462 | dingo 463 | dip 464 | dirt 465 | disc 466 | dish 467 | disk 468 | ditch 469 | ditty 470 | diva 471 | dive 472 | diver 473 | dock 474 | dog 475 | dogma 476 | doll 477 | dome 478 | don 479 | donor 480 | doom 481 | door 482 | dope 483 | dose 484 | dot 485 | doubt 486 | doug 487 | dough 488 | dove 489 | dozen 490 | draft 491 | drag 492 | drain 493 | drama 494 | draw 495 | dread 496 | dream 497 | drier 498 | drift 499 | drill 500 | drink 501 | drive 502 | drone 503 | drop 504 | drove 505 | drug 506 | drum 507 | drunk 508 | dryer 509 | duck 510 | duct 511 | dud 512 | dude 513 | due 514 | duel 515 | duet 516 | duke 517 | dump 518 | dune 519 | dung 520 | duo 521 | dusk 522 | dust 523 | duty 524 | dwarf 525 | eagle 526 | ear 527 | earl 528 | earth 529 | ease 530 | easel 531 | east 532 | ebony 533 | echo 534 | ed 535 | edge 536 | eel 537 | egg 538 | ego 539 | egypt 540 | elbow 541 | elder 542 | elite 543 | elk 544 | elm 545 | elvis 546 | emu 547 | end 548 | enemy 549 | entry 550 | envy 551 | epic 552 | epoch 553 | era 554 | error 555 | essay 556 | eve 557 | event 558 | evil 559 | exile 560 | exit 561 | eye 562 | fable 563 | face 564 | fact 565 | fad 566 | fade 567 | fair 568 | fairy 569 | faith 570 | fake 571 | faker 572 | fall 573 | fame 574 | fan 575 | fancy 576 | farce 577 | fare 578 | farm 579 | fast 580 | fat 581 | fate 582 | fault 583 | favor 584 | fawn 585 | fear 586 | feast 587 | feat 588 | fee 589 | feed 590 | feel 591 | feet 592 | fella 593 | felon 594 | felt 595 | fence 596 | fern 597 | ferry 598 | fever 599 | few 600 | fiat 601 | fiber 602 | field 603 | fig 604 | fight 605 | fiji 606 | file 607 | filly 608 | film 609 | filth 610 | fin 611 | final 612 | find 613 | fine 614 | fire 615 | first 616 | fish 617 | fist 618 | fit 619 | fix 620 | flag 621 | flame 622 | flank 623 | flash 624 | flask 625 | flat 626 | flaw 627 | flax 628 | fleet 629 | flesh 630 | flex 631 | flint 632 | flock 633 | flood 634 | floor 635 | flop 636 | flora 637 | flour 638 | flow 639 | flu 640 | fluff 641 | fluid 642 | fluke 643 | flush 644 | flute 645 | flux 646 | fly 647 | foam 648 | foe 649 | fog 650 | foil 651 | fold 652 | folk 653 | folks 654 | folly 655 | food 656 | fool 657 | foot 658 | foray 659 | force 660 | ford 661 | fore 662 | forge 663 | fork 664 | form 665 | fort 666 | forum 667 | fowl 668 | fox 669 | foyer 670 | frame 671 | fraud 672 | fray 673 | freak 674 | fred 675 | frock 676 | frog 677 | front 678 | frost 679 | froth 680 | fruit 681 | fuel 682 | full 683 | fun 684 | fund 685 | funds 686 | fur 687 | furor 688 | fury 689 | fuse 690 | fuss 691 | fuzz 692 | gab 693 | gable 694 | gag 695 | gain 696 | gait 697 | gal 698 | gala 699 | gale 700 | gall 701 | game 702 | gang 703 | gap 704 | garb 705 | gas 706 | gash 707 | gasp 708 | gate 709 | gauge 710 | gauze 711 | gaze 712 | gazer 713 | gear 714 | geese 715 | gel 716 | gem 717 | genie 718 | genre 719 | germ 720 | ghost 721 | ghoul 722 | giant 723 | gift 724 | gig 725 | gilt 726 | gin 727 | girl 728 | girth 729 | gist 730 | giver 731 | gland 732 | glare 733 | glass 734 | glaze 735 | gleam 736 | glee 737 | glint 738 | glitz 739 | globe 740 | gloom 741 | glory 742 | gloss 743 | glove 744 | glow 745 | glue 746 | glum 747 | goal 748 | goat 749 | gob 750 | god 751 | gold 752 | golf 753 | goose 754 | gout 755 | gown 756 | grab 757 | grade 758 | graft 759 | grain 760 | gram 761 | grant 762 | grape 763 | graph 764 | grasp 765 | grass 766 | grate 767 | grave 768 | gravy 769 | greed 770 | greg 771 | grid 772 | grill 773 | grin 774 | grip 775 | grist 776 | grit 777 | groan 778 | groin 779 | groom 780 | group 781 | grove 782 | growl 783 | grub 784 | grunt 785 | guard 786 | guest 787 | guide 788 | guild 789 | guilt 790 | gulf 791 | gull 792 | gully 793 | gulp 794 | gum 795 | gun 796 | gunk 797 | guru 798 | gus 799 | gush 800 | gust 801 | gusto 802 | gut 803 | guy 804 | gwen 805 | gym 806 | gypsy 807 | habit 808 | hack 809 | hair 810 | hal 811 | half 812 | hall 813 | halo 814 | halt 815 | ham 816 | hand 817 | hank 818 | harem 819 | harm 820 | harp 821 | hash 822 | haste 823 | hat 824 | hatch 825 | hate 826 | haul 827 | haunt 828 | hawk 829 | hay 830 | haze 831 | head 832 | heap 833 | heart 834 | heat 835 | heave 836 | heck 837 | hedge 838 | heel 839 | hell 840 | hello 841 | helm 842 | help 843 | hem 844 | hen 845 | herb 846 | herd 847 | hero 848 | hex 849 | hide 850 | hike 851 | hill 852 | hinge 853 | hint 854 | hip 855 | hit 856 | hitch 857 | hive 858 | hobby 859 | hog 860 | hold 861 | hole 862 | holy 863 | home 864 | homer 865 | honey 866 | honor 867 | hood 868 | hoof 869 | hook 870 | hoop 871 | hoot 872 | hop 873 | hope 874 | horn 875 | horse 876 | hose 877 | host 878 | hotel 879 | hound 880 | hour 881 | house 882 | hovel 883 | howl 884 | hub 885 | hubby 886 | hug 887 | hulk 888 | hull 889 | hum 890 | human 891 | humor 892 | hunch 893 | hunk 894 | hunt 895 | hurry 896 | hurt 897 | hush 898 | hut 899 | hyena 900 | hype 901 | ian 902 | ice 903 | icon 904 | idaho 905 | idea 906 | ideal 907 | idiot 908 | idler 909 | idol 910 | igloo 911 | ill 912 | image 913 | inca 914 | inch 915 | index 916 | ink 917 | inlet 918 | inn 919 | input 920 | inset 921 | iowa 922 | iran 923 | iraq 924 | irish 925 | iron 926 | irony 927 | islam 928 | isle 929 | issue 930 | italy 931 | itch 932 | item 933 | ivory 934 | ivy 935 | jab 936 | jack 937 | jade 938 | jag 939 | jail 940 | jam 941 | japan 942 | jar 943 | java 944 | jaw 945 | jay 946 | jazz 947 | jeans 948 | jeep 949 | jelly 950 | jerk 951 | jest 952 | jesus 953 | jet 954 | jew 955 | jewel 956 | jfk 957 | jiffy 958 | jill 959 | jim 960 | jinx 961 | jive 962 | job 963 | joe 964 | john 965 | join 966 | joint 967 | joke 968 | joker 969 | jolt 970 | jot 971 | joust 972 | jowl 973 | joy 974 | judge 975 | judy 976 | jug 977 | juice 978 | juke 979 | july 980 | jumbo 981 | jump 982 | june 983 | junk 984 | juror 985 | jury 986 | karma 987 | kava 988 | kayak 989 | keep 990 | keg 991 | kelp 992 | ken 993 | key 994 | khan 995 | kick 996 | kid 997 | kill 998 | kim 999 | kin 1000 | kind 1001 | king 1002 | kiosk 1003 | kiss 1004 | kit 1005 | kite 1006 | klutz 1007 | knack 1008 | knee 1009 | knife 1010 | knob 1011 | knock 1012 | knoll 1013 | knot 1014 | kyiv 1015 | lab 1016 | labor 1017 | lace 1018 | lack 1019 | lad 1020 | lady 1021 | lag 1022 | lake 1023 | lamb 1024 | lamp 1025 | land 1026 | lane 1027 | lap 1028 | lapse 1029 | lard 1030 | lash 1031 | lasso 1032 | last 1033 | latch 1034 | latex 1035 | laugh 1036 | lava 1037 | law 1038 | lawn 1039 | layer 1040 | leaf 1041 | leak 1042 | leap 1043 | lease 1044 | leash 1045 | ledge 1046 | lee 1047 | leg 1048 | lemon 1049 | lenin 1050 | lens 1051 | lever 1052 | lice 1053 | lid 1054 | lie 1055 | life 1056 | lifer 1057 | lift 1058 | light 1059 | limb 1060 | limbo 1061 | lime 1062 | limit 1063 | limp 1064 | line 1065 | linen 1066 | liner 1067 | lingo 1068 | link 1069 | lint 1070 | lion 1071 | lip 1072 | list 1073 | liver 1074 | llama 1075 | load 1076 | loaf 1077 | loan 1078 | lobby 1079 | local 1080 | lock 1081 | lodge 1082 | loft 1083 | log 1084 | logic 1085 | logo 1086 | loin 1087 | look 1088 | loom 1089 | loon 1090 | loop 1091 | loot 1092 | lord 1093 | lore 1094 | loser 1095 | loss 1096 | lot 1097 | lou 1098 | love 1099 | lover 1100 | luck 1101 | lucy 1102 | lug 1103 | luke 1104 | lump 1105 | lunch 1106 | lung 1107 | lust 1108 | lyric 1109 | madam 1110 | mafia 1111 | magic 1112 | maid 1113 | mail 1114 | main 1115 | maine 1116 | maker 1117 | male 1118 | mall 1119 | mama 1120 | man 1121 | mania 1122 | manor 1123 | map 1124 | maple 1125 | march 1126 | mark 1127 | marx 1128 | mary 1129 | mash 1130 | mask 1131 | mast 1132 | mat 1133 | match 1134 | mate 1135 | math 1136 | matt 1137 | max 1138 | maxim 1139 | may 1140 | mayor 1141 | meal 1142 | mean 1143 | meat 1144 | medal 1145 | media 1146 | meet 1147 | meg 1148 | melon 1149 | memo 1150 | men 1151 | menu 1152 | mercy 1153 | merit 1154 | mesh 1155 | messi 1156 | metal 1157 | meter 1158 | mice 1159 | midst 1160 | might 1161 | mike 1162 | mile 1163 | milk 1164 | mill 1165 | mind 1166 | mine 1167 | miner 1168 | mint 1169 | mist 1170 | mix 1171 | mixer 1172 | mob 1173 | mode 1174 | model 1175 | molar 1176 | mold 1177 | mole 1178 | mom 1179 | money 1180 | monk 1181 | month 1182 | mood 1183 | moon 1184 | moose 1185 | mop 1186 | moral 1187 | moses 1188 | motel 1189 | moth 1190 | motor 1191 | mound 1192 | mouse 1193 | mouth 1194 | move 1195 | mover 1196 | movie 1197 | muck 1198 | mud 1199 | muff 1200 | mug 1201 | mulch 1202 | mule 1203 | music 1204 | must 1205 | myth 1206 | nacho 1207 | nail 1208 | name 1209 | nap 1210 | nato 1211 | navel 1212 | navy 1213 | nazi 1214 | neck 1215 | need 1216 | neon 1217 | nerve 1218 | nest 1219 | net 1220 | newt 1221 | niche 1222 | nick 1223 | niece 1224 | night 1225 | nip 1226 | nixon 1227 | nod 1228 | node 1229 | noise 1230 | nomad 1231 | noon 1232 | noose 1233 | norm 1234 | north 1235 | nose 1236 | notch 1237 | note 1238 | noun 1239 | novel 1240 | nudge 1241 | nun 1242 | nurse 1243 | nut 1244 | nyc 1245 | oaf 1246 | oak 1247 | oasis 1248 | oath 1249 | obama 1250 | ocean 1251 | ode 1252 | odor 1253 | offer 1254 | ohio 1255 | oil 1256 | olive 1257 | omen 1258 | onion 1259 | onset 1260 | ooze 1261 | opal 1262 | open 1263 | opera 1264 | opium 1265 | orb 1266 | orbit 1267 | order 1268 | organ 1269 | orgy 1270 | otter 1271 | ounce 1272 | oval 1273 | oven 1274 | owl 1275 | owner 1276 | ox 1277 | oxen 1278 | ozone 1279 | ozzy 1280 | pace 1281 | pack 1282 | pact 1283 | pad 1284 | pagan 1285 | page 1286 | pain 1287 | paint 1288 | pair 1289 | pal 1290 | palm 1291 | pam 1292 | pan 1293 | pane 1294 | panel 1295 | panic 1296 | pansy 1297 | paper 1298 | park 1299 | part 1300 | party 1301 | past 1302 | pat 1303 | patch 1304 | path 1305 | patio 1306 | patsy 1307 | pause 1308 | paw 1309 | pawn 1310 | pay 1311 | peace 1312 | peach 1313 | peak 1314 | pear 1315 | pearl 1316 | pecan 1317 | pedal 1318 | peer 1319 | peg 1320 | pele 1321 | pen 1322 | penny 1323 | peril 1324 | peru 1325 | pest 1326 | pet 1327 | pete 1328 | phase 1329 | phil 1330 | phone 1331 | phony 1332 | photo 1333 | piano 1334 | pie 1335 | pier 1336 | pig 1337 | pike 1338 | pile 1339 | pill 1340 | pilot 1341 | pimp 1342 | pin 1343 | pinch 1344 | pine 1345 | pink 1346 | pint 1347 | pipe 1348 | pit 1349 | pitch 1350 | pity 1351 | pivot 1352 | pizza 1353 | place 1354 | plain 1355 | plan 1356 | plane 1357 | plant 1358 | plasm 1359 | plate 1360 | plato 1361 | plea 1362 | plot 1363 | plow 1364 | pluck 1365 | plug 1366 | plum 1367 | plume 1368 | plush 1369 | poem 1370 | poet 1371 | point 1372 | poker 1373 | pole 1374 | polio 1375 | poll 1376 | polo 1377 | pond 1378 | pony 1379 | pool 1380 | pop 1381 | pope 1382 | poppy 1383 | porch 1384 | pore 1385 | pork 1386 | port 1387 | pose 1388 | post 1389 | pot 1390 | pouch 1391 | pound 1392 | pout 1393 | power 1394 | prank 1395 | prey 1396 | price 1397 | prick 1398 | pride 1399 | prime 1400 | print 1401 | prize 1402 | pro 1403 | probe 1404 | proof 1405 | prop 1406 | proxy 1407 | prune 1408 | pub 1409 | puke 1410 | pull 1411 | pulp 1412 | pulse 1413 | pump 1414 | pun 1415 | punch 1416 | punk 1417 | pup 1418 | pupil 1419 | puppy 1420 | purge 1421 | purse 1422 | push 1423 | pussy 1424 | putin 1425 | putt 1426 | putty 1427 | quack 1428 | quad 1429 | quake 1430 | qualm 1431 | quart 1432 | que 1433 | queen 1434 | query 1435 | quest 1436 | quick 1437 | quiet 1438 | quill 1439 | quilt 1440 | quip 1441 | quirk 1442 | quiz 1443 | quote 1444 | race 1445 | rack 1446 | radar 1447 | radio 1448 | raft 1449 | rag 1450 | rage 1451 | raid 1452 | rail 1453 | rain 1454 | raise 1455 | rake 1456 | rally 1457 | ram 1458 | ramp 1459 | ranch 1460 | range 1461 | rank 1462 | rap 1463 | rape 1464 | rasp 1465 | rat 1466 | rate 1467 | ratio 1468 | ray 1469 | razor 1470 | relic 1471 | rent 1472 | rest 1473 | rice 1474 | right 1475 | rise 1476 | road 1477 | rob 1478 | robe 1479 | rod 1480 | roll 1481 | romeo 1482 | ron 1483 | room 1484 | rope 1485 | rose 1486 | route 1487 | rug 1488 | ruler 1489 | rumor 1490 | run 1491 | sack 1492 | safe 1493 | saga 1494 | sage 1495 | sail 1496 | saint 1497 | salad 1498 | sale 1499 | salon 1500 | salt 1501 | salve 1502 | salvo 1503 | sam 1504 | sand 1505 | santa 1506 | sap 1507 | satin 1508 | sauce 1509 | saver 1510 | saw 1511 | sax 1512 | scale 1513 | scalp 1514 | scan 1515 | scar 1516 | scare 1517 | scarf 1518 | scene 1519 | scent 1520 | scoop 1521 | scope 1522 | score 1523 | scorn 1524 | scout 1525 | scrap 1526 | screw 1527 | scrub 1528 | sea 1529 | seal 1530 | seam 1531 | seat 1532 | sect 1533 | sedan 1534 | seed 1535 | self 1536 | sell 1537 | sense 1538 | serum 1539 | set 1540 | setup 1541 | sewer 1542 | shack 1543 | shade 1544 | shaft 1545 | shag 1546 | shake 1547 | shame 1548 | shank 1549 | shape 1550 | share 1551 | shark 1552 | shed 1553 | sheep 1554 | sheet 1555 | shelf 1556 | shell 1557 | shift 1558 | shin 1559 | shine 1560 | ship 1561 | shirt 1562 | shit 1563 | shock 1564 | shoe 1565 | shop 1566 | shore 1567 | shot 1568 | shout 1569 | show 1570 | shrug 1571 | shunt 1572 | sid 1573 | side 1574 | sigh 1575 | sight 1576 | sign 1577 | silk 1578 | sin 1579 | sink 1580 | sip 1581 | siren 1582 | site 1583 | size 1584 | ski 1585 | skid 1586 | skill 1587 | skin 1588 | skirt 1589 | skit 1590 | skull 1591 | sky 1592 | slab 1593 | slack 1594 | slang 1595 | slant 1596 | slat 1597 | slate 1598 | slave 1599 | sleep 1600 | slice 1601 | slick 1602 | slide 1603 | slip 1604 | slit 1605 | slob 1606 | slope 1607 | slot 1608 | slug 1609 | slum 1610 | slump 1611 | small 1612 | smash 1613 | smear 1614 | smell 1615 | smile 1616 | smirk 1617 | smog 1618 | smoke 1619 | snack 1620 | snail 1621 | snake 1622 | snap 1623 | snare 1624 | sneak 1625 | sneer 1626 | snore 1627 | snort 1628 | snow 1629 | soap 1630 | sock 1631 | sod 1632 | soda 1633 | sofa 1634 | soil 1635 | sole 1636 | solid 1637 | solo 1638 | son 1639 | sonar 1640 | song 1641 | soot 1642 | sort 1643 | soul 1644 | sound 1645 | soup 1646 | south 1647 | soy 1648 | spa 1649 | space 1650 | spade 1651 | spain 1652 | span 1653 | spark 1654 | spasm 1655 | spat 1656 | spear 1657 | speck 1658 | speed 1659 | spell 1660 | spice 1661 | spike 1662 | spin 1663 | spine 1664 | spit 1665 | spite 1666 | split 1667 | spoke 1668 | spoof 1669 | spoon 1670 | sport 1671 | spot 1672 | spout 1673 | spray 1674 | spree 1675 | spur 1676 | spurt 1677 | spy 1678 | squad 1679 | squat 1680 | stab 1681 | stack 1682 | staff 1683 | stag 1684 | stage 1685 | stain 1686 | stair 1687 | stake 1688 | stall 1689 | stamp 1690 | stan 1691 | star 1692 | stare 1693 | start 1694 | state 1695 | steak 1696 | steam 1697 | steel 1698 | steep 1699 | stem 1700 | step 1701 | stern 1702 | stew 1703 | stick 1704 | stiff 1705 | stink 1706 | stint 1707 | stock 1708 | stone 1709 | stool 1710 | stoop 1711 | stop 1712 | store 1713 | storm 1714 | story 1715 | stove 1716 | strap 1717 | straw 1718 | stray 1719 | strip 1720 | strut 1721 | stub 1722 | stud 1723 | study 1724 | stuff 1725 | stump 1726 | style 1727 | sub 1728 | sugar 1729 | suit 1730 | suite 1731 | sum 1732 | sun 1733 | super 1734 | surf 1735 | surge 1736 | swamp 1737 | swan 1738 | swarm 1739 | sway 1740 | sweat 1741 | sweep 1742 | swig 1743 | swim 1744 | swipe 1745 | swirl 1746 | swoop 1747 | sword 1748 | syrup 1749 | tab 1750 | table 1751 | taboo 1752 | tack 1753 | tact 1754 | taffy 1755 | tag 1756 | tail 1757 | taint 1758 | taker 1759 | tale 1760 | talk 1761 | tally 1762 | tank 1763 | tape 1764 | tar 1765 | tart 1766 | task 1767 | taste 1768 | taunt 1769 | tax 1770 | taxes 1771 | taxi 1772 | tea 1773 | team 1774 | tear 1775 | tease 1776 | ted 1777 | teen 1778 | teeth 1779 | tempo 1780 | tent 1781 | term 1782 | tesla 1783 | test 1784 | texas 1785 | text 1786 | thaw 1787 | theft 1788 | theme 1789 | thief 1790 | thigh 1791 | thing 1792 | third 1793 | thong 1794 | thorn 1795 | throw 1796 | thud 1797 | thug 1798 | thumb 1799 | thump 1800 | tia 1801 | tibet 1802 | tic 1803 | tick 1804 | tide 1805 | tie 1806 | tiger 1807 | tile 1808 | tilt 1809 | tim 1810 | time 1811 | tin 1812 | tina 1813 | tint 1814 | tip 1815 | tire 1816 | title 1817 | toad 1818 | toady 1819 | toast 1820 | tod 1821 | toe 1822 | toil 1823 | token 1824 | tokyo 1825 | toll 1826 | tom 1827 | tomb 1828 | ton 1829 | tone 1830 | toner 1831 | tonic 1832 | tony 1833 | tool 1834 | tooth 1835 | top 1836 | topic 1837 | torch 1838 | torso 1839 | tot 1840 | total 1841 | touch 1842 | tour 1843 | tow 1844 | towel 1845 | tower 1846 | town 1847 | toxin 1848 | toy 1849 | trace 1850 | track 1851 | tract 1852 | trade 1853 | trail 1854 | train 1855 | trait 1856 | tramp 1857 | trap 1858 | trash 1859 | tray 1860 | tread 1861 | treat 1862 | tree 1863 | trend 1864 | triad 1865 | trial 1866 | tribe 1867 | trick 1868 | trill 1869 | trim 1870 | trio 1871 | trip 1872 | trot 1873 | trout 1874 | truce 1875 | truck 1876 | trump 1877 | trunk 1878 | trust 1879 | truth 1880 | try 1881 | tub 1882 | tuba 1883 | tube 1884 | tug 1885 | tulip 1886 | tumor 1887 | tune 1888 | turf 1889 | turn 1890 | tutor 1891 | twin 1892 | twist 1893 | type 1894 | udder 1895 | ulcer 1896 | uncle 1897 | union 1898 | unit 1899 | unity 1900 | urge 1901 | urine 1902 | urn 1903 | usage 1904 | user 1905 | usher 1906 | utah 1907 | valet 1908 | valor 1909 | value 1910 | valve 1911 | van 1912 | vapor 1913 | vase 1914 | vast 1915 | vault 1916 | vegan 1917 | venom 1918 | vent 1919 | verb 1920 | verge 1921 | verse 1922 | vest 1923 | veto 1924 | video 1925 | view 1926 | vigor 1927 | vine 1928 | vip 1929 | virus 1930 | visa 1931 | visit 1932 | voice 1933 | void 1934 | vote 1935 | voter 1936 | vow 1937 | vowel 1938 | wage 1939 | wager 1940 | wagon 1941 | waist 1942 | wait 1943 | walk 1944 | wall 1945 | walt 1946 | waltz 1947 | wand 1948 | war 1949 | ward 1950 | warp 1951 | wart 1952 | wash 1953 | wasp 1954 | waste 1955 | watch 1956 | water 1957 | wave 1958 | wax 1959 | way 1960 | wear 1961 | weave 1962 | web 1963 | wedge 1964 | week 1965 | well 1966 | west 1967 | whack 1968 | whale 1969 | wheat 1970 | wheel 1971 | whiff 1972 | whim 1973 | whip 1974 | whir 1975 | whirl 1976 | whole 1977 | whore 1978 | wick 1979 | widow 1980 | width 1981 | wife 1982 | wig 1983 | will 1984 | wilt 1985 | win 1986 | wind 1987 | wine 1988 | wing 1989 | wink 1990 | wire 1991 | wish 1992 | wisp 1993 | wit 1994 | witch 1995 | woe 1996 | wolf 1997 | woman 1998 | womb 1999 | wood 2000 | wool 2001 | word 2002 | work 2003 | world 2004 | worm 2005 | worry 2006 | worth 2007 | wound 2008 | wrath 2009 | wreck 2010 | wrist 2011 | wrong 2012 | xenon 2013 | xmas 2014 | xray 2015 | yacht 2016 | yahoo 2017 | yak 2018 | yard 2019 | yarn 2020 | yawn 2021 | year 2022 | yeast 2023 | yell 2024 | yelp 2025 | yield 2026 | yoga 2027 | yoke 2028 | yolk 2029 | young 2030 | youth 2031 | yoyo 2032 | zany 2033 | zap 2034 | zeal 2035 | zebra 2036 | zen 2037 | zero 2038 | zest 2039 | zilch 2040 | zinc 2041 | zing 2042 | zip 2043 | zit 2044 | zoey 2045 | zone 2046 | zoo 2047 | zoom 2048 | zulu 2049 | -------------------------------------------------------------------------------- /test_DAs_README.md: -------------------------------------------------------------------------------- 1 | # difficulty-algorithms 2 | See the Issues for difficulty algorithms. 3 | 4 | test_DAs.cpp and test_DAs_gnuplot allows CN coins to test and compare DA algorithms on Linux. 5 | You have to have gnuplot to see the outputs. 6 | To modify the settings for the simulations, go to main() at the bottom of test_DAs.cpp. 7 | The output charts can be easily seen by opening test_DAs.html after the simulation is run. 8 | -------------------------------------------------------------------------------- /test_DAs_example/aa_test_DAs______OPEN_THIS_________.html: -------------------------------------------------------------------------------- 1 | Difficulty Plots 2 | TSA Target ST/avgST= 100/98.227 N= 60 attack_size: 300 start/start: 120/160 StdDev: 0.132913 3 |

4 | LWMA1_ Target ST/avgST= 100/100.074 N= 60 attack_size: 300 start/start: 120/160 StdDev: 0.152922 5 |

6 | LWMA4_ Target ST/avgST= 100/100.021 N= 60 attack_size: 300 start/start: 120/160 StdDev: 0.144899 7 |

8 | DIGISHIELD_ Target ST/avgST= 100/84.993 N= 17 attack_size: 300 start/start: 120/160 StdDev: 0.127158 9 |

10 | DIGISHIELD_impoved_ Target ST/avgST= 100/102.054 N= 17 attack_size: 300 start/start: 120/160 StdDev: 0.118404 11 |

12 | EMA_ Target ST/avgST= 100/98.377 N= 40 attack_size: 300 start/start: 120/160 StdDev: 0.105927 13 |

14 | SMA_ Target ST/avgST= 100/101.295 N= 45 attack_size: 300 start/start: 120/160 StdDev: 0.189391 15 |

16 | DGW_ Target ST/avgST= 100/104.961 N= 24 attack_size: 300 start/start: 120/160 StdDev: 0.278889 17 |

18 | TSA Target ST/avgST= 100/100.639 N= 60 attack_size: 100 start/start: 120/160 StdDev: 0.0999199 19 |

20 | LWMA1_ Target ST/avgST= 100/99.85 N= 60 attack_size: 100 start/start: 120/160 StdDev: 0.112775 21 |

22 | LWMA4_ Target ST/avgST= 100/102.026 N= 60 attack_size: 100 start/start: 120/160 StdDev: 0.131377 23 |

24 | DIGISHIELD_ Target ST/avgST= 100/99.466 N= 17 attack_size: 100 start/start: 120/160 StdDev: 0.107339 25 |

26 | DIGISHIELD_impoved_ Target ST/avgST= 100/100.929 N= 17 attack_size: 100 start/start: 120/160 StdDev: 0.104077 27 |

28 | EMA_ Target ST/avgST= 100/100.357 N= 40 attack_size: 100 start/start: 120/160 StdDev: 0.101635 29 |

30 | SMA_ Target ST/avgST= 100/101.569 N= 45 attack_size: 100 start/start: 120/160 StdDev: 0.127302 31 |

32 | DGW_ Target ST/avgST= 100/101.068 N= 24 attack_size: 100 start/start: 120/160 StdDev: 0.172811 33 |

34 | -------------------------------------------------------------------------------- /test_DAs_example/blocks_DGW_.txt: -------------------------------------------------------------------------------- 1 | 0 287 40001 2 | 1 24 40001 3 | 2 8 40001 4 | 3 21 40001 5 | 4 11 40001 6 | 5 2 40001 7 | 6 17 40001 8 | 7 233 40001 9 | 8 73 40001 10 | 9 172 40001 11 | 10 64 40001 12 | 11 145 40001 13 | 12 224 40001 14 | 13 60 40001 15 | 14 19 40001 16 | 15 212 40001 17 | 16 119 40001 18 | 17 56 40001 19 | 18 103 40001 20 | 19 28 40001 21 | 20 27 40001 22 | 21 122 40001 23 | 22 26 40001 24 | 23 47 40001 25 | 24 65 45715 26 | 25 322 51423 27 | 26 161 44906 28 | 27 81 42166 29 | 28 0 41198 30 | 29 24 41439 31 | 30 78 41119 32 | 31 291 40145 33 | 32 54 39226 34 | 33 94 39494 35 | 34 15 40745 36 | 35 79 41617 37 | 36 109 42878 38 | 37 40 45259 39 | 38 65 45918 40 | 39 19 45232 41 | 40 16 49801 42 | 41 320 52980 43 | 42 304 47175 44 | 43 1 43504 45 | 44 50 44150 46 | 45 11 43898 47 | 46 264 46214 48 | 47 6 42079 49 | 48 82 42862 50 | 49 82 42454 51 | 50 43 46592 52 | 51 183 49254 53 | 52 33 47319 54 | 53 93 46900 55 | 54 19 45746 56 | 55 135 47137 57 | 56 80 50941 58 | 57 319 50870 59 | 58 29 46517 60 | 59 73 46486 61 | 60 15 46808 62 | 61 172 48908 63 | 62 62 46385 64 | 63 93 46462 65 | 64 52 45128 66 | 65 89 44298 67 | 66 11 48388 68 | 67 1 55548 69 | 68 271 56151 70 | 69 94 51097 71 | 70 23 49567 72 | 71 533 55528 73 | 72 63 44736 74 | 73 11 45140 75 | 74 654 46532 76 | 75 149 37382 77 | 76 20 37409 78 | 77 209 37244 79 | 78 176 35580 80 | 79 111 33600 81 | 80 48 33435 82 | 81 16 33227 83 | 82 64 36018 84 | 83 102 35251 85 | 84 111 34544 86 | 85 90 33095 87 | 86 38 33466 88 | 87 17 33305 89 | 88 73 33717 90 | 89 73 33095 91 | 90 89 32895 92 | 91 97 31540 93 | 92 31 29806 94 | 93 6 31369 95 | 94 24 31650 96 | 95 98 31000 97 | 96 89 35655 98 | 97 37 34889 99 | 98 112 34091 100 | 99 72 43258 101 | 100 236 45432 102 | 101 240 40968 103 | 102 63 40531 104 | 103 39 43151 105 | 104 0 45329 106 | 105 73 47181 107 | 106 13 46490 108 | 107 27 48365 109 | 108 56 51191 110 | 109 465 53837 111 | 110 306 45077 112 | 111 159 40403 113 | 112 14 38374 114 | 113 57 39502 115 | 114 65 40032 116 | 115 207 40736 117 | 116 11 39305 118 | 117 189 40008 119 | 118 6 37573 120 | 119 111 38055 121 | 120 55 38134 122 | 121 125 38726 123 | 122 48 37606 124 | 123 149 38652 125 | 124 151 37386 126 | 125 105 38288 127 | 126 70 40253 128 | 127 57 40130 129 | 128 1 39723 130 | 129 26 39485 131 | 130 254 39924 132 | 131 203 36137 133 | 132 12 33513 134 | 133 40 33410 135 | 134 21 38431 136 | 135 16 43248 137 | 136 219 46494 138 | 137 39 42527 139 | 138 45 43017 140 | 139 25 43553 141 | 140 38 47703 142 | 141 38 47480 143 | 142 872 51750 144 | 143 49 35795 145 | 144 116 36544 146 | 145 58 35666 147 | 146 31 36452 148 | 147 161 36643 149 | 148 36 36401 150 | 149 41 38016 151 | 150 71 38990 152 | 151 142 38923 153 | 152 7 37581 154 | 153 238 37409 155 | 154 69 34473 156 | 155 196 36728 157 | 156 82 36850 158 | 157 5 36003 159 | 158 34 36584 160 | 159 85 36332 161 | 160 31 35146 162 | 161 25 37328 163 | 162 65 37329 164 | 163 53 36806 165 | 164 88 36135 166 | 165 107 34992 167 | 166 74 33616 168 | 167 75 47035 169 | 168 1 46983 170 | 169 339 50615 171 | 170 126 44424 172 | 171 37 42833 173 | 172 26 45758 174 | 173 131 46449 175 | 174 140 44865 176 | 175 293 43713 177 | 176 17 41082 178 | 177 0 41056 179 | 178 163 45885 180 | 179 73 44438 181 | 180 53 47452 182 | 181 40 48645 183 | 182 35 48434 184 | 183 70 48981 185 | 184 28 49951 186 | 185 210 50743 187 | 186 45 47157 188 | 187 188 48023 189 | 188 233 45750 190 | 189 110 43485 191 | 190 56 43772 192 | 191 20 44496 193 | 192 238 45398 194 | 193 242 41310 195 | 194 101 42505 196 | 195 74 42847 197 | 196 99 42234 198 | 197 22 40942 199 | 198 405 42477 200 | 199 94 38393 201 | 200 14 41110 202 | 201 110 41158 203 | 202 247 39500 204 | 203 39 38090 205 | 204 39 38328 206 | 205 95 38192 207 | 206 29 37074 208 | 207 62 36749 209 | 208 92 36417 210 | 209 3 35130 211 | 210 359 37280 212 | 211 0 33007 213 | 212 32 34697 214 | 213 24 36970 215 | 214 55 37983 216 | 215 68 37767 217 | 216 3 36789 218 | 217 143 40162 219 | 218 38 41910 220 | 219 262 43113 221 | 220 50 39651 222 | 221 125 40389 223 | 222 8 38623 224 | 223 37 46131 225 | 224 114 47891 226 | 225 136 45870 227 | 226 173 45520 228 | 227 30 47519 229 | 228 274 48212 230 | 229 155 43537 231 | 230 204 42622 232 | 231 2 39801 233 | 232 55 40929 234 | 233 154 41766 235 | 234 45 39509 236 | 235 158 45284 237 | 236 55 42756 238 | 237 110 42681 239 | 238 29 41418 240 | 239 4 42003 241 | 240 123 43320 242 | 241 26 41490 243 | 242 5 43597 244 | 243 588 44285 245 | 244 59 38902 246 | 245 64 38743 247 | 246 71 39586 248 | 247 67 38688 249 | 248 26 37983 250 | 249 168 38883 251 | 250 51 38148 252 | 251 103 39701 253 | 252 73 38283 254 | 253 70 41082 255 | 254 275 42487 256 | 255 17 41214 257 | 256 22 41015 258 | 257 127 41592 259 | 258 50 42065 260 | 259 10 42084 261 | 260 70 44779 262 | 261 29 44566 263 | 262 14 46352 264 | 263 253 46915 265 | 264 0 42175 266 | 265 75 44442 267 | 266 110 43619 268 | 267 55 41705 269 | 268 19 53523 270 | 269 301 55504 271 | 270 75 49921 272 | 271 214 50326 273 | 272 14 47501 274 | 273 83 48195 275 | 274 212 50577 276 | 275 100 47539 277 | 276 512 47948 278 | 277 40 40529 279 | 278 7 40962 280 | 279 30 45456 281 | 280 18 45387 282 | 281 76 45643 283 | 282 248 46798 284 | 283 125 43370 285 | 284 435 41557 286 | 285 149 36469 287 | 286 159 34831 288 | 287 16 32957 289 | 288 63 35045 290 | 289 21 34113 291 | 290 27 34376 292 | 291 341 35019 293 | 292 48 31767 294 | 293 38 30832 295 | 294 163 32681 296 | 295 48 31216 297 | 296 174 32316 298 | 297 52 30181 299 | 298 152 29902 300 | 299 1 29812 301 | 300 37 30212 302 | 301 34 35309 303 | 302 162 35183 304 | 303 57 32878 305 | 304 140 32067 306 | 305 80 30171 307 | 306 5 29569 308 | 307 132 31730 309 | 308 313 31183 310 | 309 12 32330 311 | 310 3 34095 312 | 311 13 36571 313 | 312 92 36793 314 | 313 236 36377 315 | 314 141 33159 316 | 315 76 31582 317 | 316 115 35215 318 | 317 92 34330 319 | 318 134 33685 320 | 319 23 34153 321 | 320 183 34657 322 | 321 6 34623 323 | 322 22 35533 324 | 323 38 37990 325 | 324 58 37716 326 | 325 8 37697 327 | 326 150 38266 328 | 327 40 38627 329 | 328 87 39210 330 | 329 110 40566 331 | 330 46 40481 332 | 331 388 40214 333 | 332 407 36255 334 | 333 20 35085 335 | 334 57 35083 336 | 335 145 34377 337 | 336 163 32598 338 | 337 63 31602 339 | 338 82 33542 340 | 339 161 34344 341 | 340 99 33327 342 | 341 93 33460 343 | 342 329 33414 344 | 343 31 31059 345 | 344 70 30858 346 | 345 128 32021 347 | 346 228 30530 348 | 347 28 28267 349 | 348 43 28037 350 | 349 95 27853 351 | 350 56 26740 352 | 351 28 27199 353 | 352 113 26923 354 | 353 104 26276 355 | 354 72 25849 356 | 355 20 25138 357 | 356 152 28077 358 | 357 48 30741 359 | 358 73 30204 360 | 359 48 29803 361 | 360 10 30849 362 | 361 380 32939 363 | 362 43 28801 364 | 363 9 29066 365 | 364 17 30757 366 | 365 216 31779 367 | 366 204 30037 368 | 367 5 31579 369 | 368 53 31978 370 | 369 66 32279 371 | 370 204 33240 372 | 371 17 33752 373 | 372 22 34195 374 | 373 196 34844 375 | 374 61 33536 376 | 375 150 33773 377 | 376 95 32256 378 | 377 51 32748 379 | 378 14 33825 380 | 379 14 35106 381 | 380 21 35668 382 | 381 127 38361 383 | 382 63 37279 384 | 383 3 37797 385 | 384 74 39022 386 | 385 17 38224 387 | 386 42 46492 388 | 387 64 47535 389 | 388 118 47108 390 | 389 301 45461 391 | 390 248 44202 392 | 391 159 43941 393 | 392 260 41404 394 | 393 41 38208 395 | 394 210 38864 396 | 395 12 39003 397 | 396 32 39308 398 | 397 168 39357 399 | 398 20 40020 400 | 399 151 41013 401 | 400 49 41310 402 | 401 11 42552 403 | 402 343 43761 404 | 403 92 38500 405 | 404 511 37486 406 | 405 50 31649 407 | 406 48 32230 408 | 407 94 32223 409 | 408 221 31103 410 | 409 69 29459 411 | 410 134 28732 412 | 411 11 27434 413 | 412 28 27268 414 | 413 28 27413 415 | 414 15 29312 416 | 415 164 31249 417 | 416 54 30733 418 | 417 56 32792 419 | 418 28 32390 420 | 419 13 34587 421 | 420 47 34388 422 | 421 17 33969 423 | 422 218 36005 424 | 423 34 32934 425 | 424 66 34238 426 | 425 134 33690 427 | 426 49 31658 428 | 427 153 35371 429 | 428 82 34269 430 | 429 111 42200 431 | 430 93 41389 432 | 431 781 40896 433 | 432 106 30448 434 | 433 63 31827 435 | 434 76 31999 436 | 435 113 32899 437 | 436 2 31788 438 | 437 5 32299 439 | 438 47 32795 440 | 439 280 32516 441 | 440 87 31129 442 | 441 25 30758 443 | 442 10 31043 444 | 443 1 31205 445 | 444 77 31219 446 | 445 29 30743 447 | 446 175 30481 448 | 447 11 30773 449 | 448 129 30964 450 | 449 16 30100 451 | 450 26 31367 452 | 451 21 31644 453 | 452 40 33252 454 | 453 18 33809 455 | 454 76 34842 456 | 455 228 34814 457 | 456 557 46039 458 | 457 4 36946 459 | 458 133 38257 460 | 459 88 37520 461 | 460 115 38191 462 | 461 38 36519 463 | 462 84 36168 464 | 463 54 35727 465 | 464 227 39838 466 | 465 24 37681 467 | 466 21 38016 468 | 467 245 38143 469 | 468 29 34608 470 | 469 91 35445 471 | 470 193 34740 472 | 471 292 34659 473 | 472 207 31258 474 | 473 1 30406 475 | 474 334 30579 476 | 475 55 27535 477 | 476 27 27108 478 | 477 147 27024 479 | 478 76 25751 480 | 479 10 25473 481 | 480 5 26986 482 | 481 300 32183 483 | 482 34 28605 484 | 483 46 29297 485 | 484 13 29451 486 | 485 262 30285 487 | 486 35 27618 488 | 487 12 27801 489 | 488 1 27940 490 | 489 12 30024 491 | 490 110 29858 492 | 491 90 28489 493 | 492 51 29937 494 | 493 35 29469 495 | 494 14 29918 496 | 495 40 32164 497 | 496 84 36262 498 | 497 46 39028 499 | 498 37 38541 500 | 499 264 46481 501 | 500 2 42015 502 | 501 25 43487 503 | 502 237 47821 504 | 503 340 44710 505 | 504 25 38585 506 | 505 184 38769 507 | 506 73 41348 508 | 507 85 41182 509 | 508 137 40981 510 | 509 22 39196 511 | 510 137 44447 512 | 511 186 43066 513 | 512 19 40398 514 | 513 10 40628 515 | 514 36 41135 516 | 515 46 43049 517 | 516 7 44619 518 | 517 138 46260 519 | 518 80 44853 520 | 519 9 44204 521 | 520 214 45359 522 | 521 36 43245 523 | 522 176 43609 524 | 523 44 41376 525 | 524 124 45164 526 | 525 413 42991 527 | 526 125 36968 528 | 527 30 38114 529 | 528 47 42850 530 | 529 7 42632 531 | 530 21 46236 532 | 531 57 47583 533 | 532 39 48513 534 | 533 4 51235 535 | 534 53 52295 536 | 535 97 54991 537 | 536 314 58313 538 | 537 236 51068 539 | 538 8 46606 540 | 539 115 47403 541 | 540 5 46219 542 | 541 175 46324 543 | 542 67 45621 544 | 543 29 45898 545 | 544 236 45591 546 | 545 153 45193 547 | 546 91 43215 548 | 547 308 44674 549 | 548 58 40511 550 | 549 9 41333 551 | 550 2 48572 552 | 551 44 51873 553 | 552 60 52172 554 | 553 224 52288 555 | 554 121 47972 556 | 555 4 46126 557 | 556 188 47063 558 | 557 52 44312 559 | 558 40 43247 560 | 559 18 43117 561 | 560 64 43985 562 | 561 79 48131 563 | 562 99 51509 564 | 563 157 49636 565 | 564 88 48820 566 | 565 243 47218 567 | 566 29 45935 568 | 567 59 46677 569 | 568 144 46132 570 | 569 42 47973 571 | 570 3 50494 572 | 571 188 52916 573 | 572 11 56477 574 | 573 93 58637 575 | 574 588 57080 576 | 575 335 44722 577 | 576 23 40035 578 | 577 81 40128 579 | 578 227 41773 580 | 579 105 40005 581 | 580 98 38431 582 | 581 231 39336 583 | 582 257 36860 584 | 583 1 34212 585 | 584 110 34117 586 | 585 71 33341 587 | 586 4 32971 588 | 587 62 33372 589 | 588 260 33872 590 | 589 35 31629 591 | 590 95 33271 592 | 591 40 32163 593 | 592 148 31892 594 | 593 19 31393 595 | 594 9 31090 596 | 595 34 30401 597 | 596 7 31229 598 | 597 31 30411 599 | 598 108 30084 600 | 599 144 34995 601 | 600 95 37591 602 | 601 140 36292 603 | 602 74 35209 604 | 603 116 37381 605 | 604 27 37073 606 | 605 76 38252 607 | 606 112 41217 608 | 607 70 44744 609 | 608 12 43666 610 | 609 93 46592 611 | 610 14 46758 612 | 611 164 47258 613 | 612 69 45473 614 | 613 7 51158 615 | 614 192 53145 616 | 615 25 51386 617 | 616 132 52894 618 | 617 230 54558 619 | 618 152 49917 620 | 619 105 47442 621 | 620 22 46684 622 | 621 57 47066 623 | 622 495 47264 624 | 623 2 40946 625 | 624 101 43529 626 | 625 11 43663 627 | 626 56 46364 628 | 627 142 47197 629 | 628 68 47094 630 | 629 18 46708 631 | 630 85 48221 632 | 631 10 49083 633 | 632 341 50577 634 | 633 9 44422 635 | 634 180 45823 636 | 635 22 42943 637 | 636 112 45182 638 | 637 67 44415 639 | 638 116 43148 640 | 639 148 44039 641 | 640 0 41744 642 | 641 163 43469 643 | 642 74 44195 644 | 643 70 45391 645 | 644 209 45975 646 | 645 31 42584 647 | 646 110 42844 648 | 647 80 50328 649 | 648 9 48985 650 | 649 54 51355 651 | 650 7 50693 652 | 651 37 52066 653 | 652 182 55014 654 | 653 6 52446 655 | 654 41 53013 656 | 655 56 54366 657 | 656 21 53437 658 | 657 167 63075 659 | 658 6 58946 660 | 659 145 65416 661 | 660 250 62382 662 | 661 118 59020 663 | 662 160 58282 664 | 663 190 57792 665 | 664 143 57310 666 | 665 84 54460 667 | 666 363 56861 668 | 667 38 50887 669 | 668 324 51756 670 | 669 108 49707 671 | 670 0 48552 672 | 671 330 50836 673 | 672 51 46377 674 | 673 77 45610 675 | 674 55 45051 676 | 675 24 44128 677 | 676 152 44053 678 | 677 3 44130 679 | 678 121 43890 680 | 679 183 42408 681 | 680 47 40294 682 | 681 129 39541 683 | 682 7 39267 684 | 683 11 38620 685 | 684 147 39461 686 | 685 41 40080 687 | 686 61 40507 688 | 687 261 41337 689 | 688 523 39678 690 | 689 59 34315 691 | 690 60 33943 692 | 691 145 36786 693 | 692 4 34954 694 | 693 18 38611 695 | 694 74 39554 696 | 695 109 38073 697 | 696 104 41095 698 | 697 59 39974 699 | 698 292 40039 700 | 699 73 36246 701 | 700 2 35290 702 | 701 274 37034 703 | 702 54 33202 704 | 703 41 33624 705 | 704 51 35126 706 | 705 179 34873 707 | 706 75 34038 708 | 707 17 32994 709 | 708 190 32715 710 | 709 24 31962 711 | 710 1 31865 712 | 711 26 32254 713 | 712 409 34973 714 | 713 8 36476 715 | 714 47 37383 716 | 715 136 37747 717 | 716 52 37940 718 | 717 177 37282 719 | 718 100 34832 720 | 719 46 34281 721 | 720 37 35012 722 | 721 19 35745 723 | 722 22 36177 724 | 723 52 40731 725 | 724 48 41371 726 | 725 138 40749 727 | 726 10 43784 728 | 727 1 45350 729 | 728 25 46952 730 | 729 4 48259 731 | 730 113 54138 732 | 731 34 54111 733 | 732 562 54804 734 | 733 6 46110 735 | 734 113 47193 736 | 735 63 45476 737 | 736 291 45313 738 | 737 28 48346 739 | 738 116 48450 740 | 739 207 47430 741 | 740 73 46370 742 | 741 116 46313 743 | 742 13 47989 744 | 743 77 50559 745 | 744 160 50587 746 | 745 85 48551 747 | 746 30 47734 748 | 747 19 48062 749 | 748 53 49056 750 | 749 297 49280 751 | 750 97 46483 752 | 751 138 45021 753 | 752 11 42742 754 | 753 164 42807 755 | 754 11 40227 756 | 755 67 41208 757 | 756 75 40261 758 | 757 26 48119 759 | 758 80 47793 760 | 759 155 48505 761 | 760 31 46764 762 | 761 7 52543 763 | 762 394 53266 764 | 763 29 47261 765 | 764 14 51064 766 | 765 109 52684 767 | 766 137 53154 768 | 767 4 50473 769 | 768 193 52149 770 | 769 39 51446 771 | 770 259 52665 772 | 771 33 47863 773 | 772 269 47578 774 | 773 380 43628 775 | 774 126 42090 776 | 775 99 41487 777 | 776 67 41953 778 | 777 265 41076 779 | 778 142 39569 780 | 779 166 37819 781 | 780 164 36502 782 | 781 35 35365 783 | 782 66 34866 784 | 783 245 34614 785 | 784 10 33237 786 | 785 85 33036 787 | 786 43 31677 788 | 787 89 34684 789 | 788 156 33586 790 | 789 189 31537 791 | 790 34 30115 792 | 791 6 30367 793 | 792 255 29712 794 | 793 26 28444 795 | 794 24 27842 796 | 795 5 29208 797 | 796 153 28852 798 | 797 208 29373 799 | 798 9 30737 800 | 799 84 31706 801 | 800 17 31507 802 | 801 288 31721 803 | 802 175 31055 804 | 803 7 30314 805 | 804 229 32029 806 | 805 70 30991 807 | 806 95 30376 808 | 807 40 29844 809 | 808 59 32300 810 | 809 51 31586 811 | 810 22 31988 812 | 811 35 32294 813 | 812 136 32967 814 | 813 126 33237 815 | 814 30 34288 816 | 815 222 34545 817 | 816 43 31568 818 | 817 109 34761 819 | 818 70 33754 820 | 819 26 33333 821 | 820 82 33208 822 | 821 236 34459 823 | 822 37 34257 824 | 823 76 33992 825 | 824 24 34211 826 | 825 89 34225 827 | 826 105 37605 828 | 827 13 39233 829 | 828 88 39558 830 | 829 165 42918 831 | 830 160 41460 832 | 831 160 40684 833 | 832 139 38929 834 | 833 108 37836 835 | 834 208 37171 836 | 835 105 34599 837 | 836 27 33742 838 | 837 83 35276 839 | 838 11 35992 840 | 839 145 36350 841 | 840 8 37640 842 | 841 43 38486 843 | 842 16 39806 844 | 843 232 41084 845 | 844 14 37827 846 | 845 58 39150 847 | 846 183 42669 848 | 847 85 40285 849 | 848 18 40402 850 | 849 50 40783 851 | 850 194 41793 852 | 851 161 40366 853 | 852 37 37984 854 | 853 21 38723 855 | 854 51 40998 856 | 855 92 43049 857 | 856 208 44563 858 | 857 7 43400 859 | 858 141 45801 860 | 859 68 47777 861 | 860 238 49357 862 | 861 77 45266 863 | 862 30 45855 864 | 863 109 45907 865 | 864 23 47126 866 | 865 15 47238 867 | 866 46 48271 868 | 867 73 47992 869 | 868 173 52155 870 | 869 71 48976 871 | 870 36 49135 872 | 871 229 53023 873 | 872 205 50089 874 | 873 61 46523 875 | 874 147 46549 876 | 875 362 47698 877 | 876 220 44184 878 | 877 80 41422 879 | 878 75 40635 880 | 879 3 40272 881 | 880 274 41498 882 | 881 46 40396 883 | 882 177 39726 884 | 883 28 39008 885 | 884 81 39253 886 | 885 26 41203 887 | 886 186 41858 888 | 887 52 39334 889 | 888 34 39924 890 | 889 76 39494 891 | 890 180 38341 892 | 891 14 36224 893 | 892 3 36562 894 | 893 7 38309 895 | 894 141 38841 896 | 895 22 36954 897 | 896 22 39371 898 | 897 9 42018 899 | 898 120 42784 900 | 899 297 43132 901 | 900 82 44212 902 | 901 317 47212 903 | 902 151 42542 904 | 903 41 41246 905 | 904 42 40630 906 | 905 73 44966 907 | 906 37 44619 908 | 907 28 47919 909 | 908 2 48356 910 | 909 209 50767 911 | 910 32 46881 912 | 911 373 50760 913 | 912 21 44206 914 | 913 8 44643 915 | 914 26 46234 916 | 915 170 50042 917 | 916 42 47165 918 | 917 3 46822 919 | 918 19 47280 920 | 919 114 50361 921 | 920 104 48890 922 | 921 0 47572 923 | 922 165 47998 924 | 923 111 47302 925 | 924 10 51549 926 | 925 97 53668 927 | 926 266 60299 928 | 927 47 57710 929 | 928 133 58361 930 | 929 99 56668 931 | 930 34 56525 932 | 931 19 57168 933 | 932 83 57852 934 | 933 538 56142 935 | 934 75 49009 936 | 935 183 48268 937 | 936 79 52037 938 | 937 173 51116 939 | 938 547 48109 940 | 939 64 40112 941 | 940 82 41197 942 | 941 26 40460 943 | 942 54 39949 944 | 943 128 39262 945 | 944 35 38730 946 | 945 96 39273 947 | 946 60 37810 948 | 947 92 38781 949 | 948 103 38743 950 | 949 92 37174 951 | 950 21 36703 952 | 951 25 39020 953 | 952 96 38664 954 | 953 310 38472 955 | 954 163 35176 956 | 955 102 33054 957 | 956 50 31456 958 | 957 86 30955 959 | 958 438 35139 960 | 959 6 30584 961 | 960 15 31829 962 | 961 18 31835 963 | 962 18 32945 964 | 963 95 40244 965 | 964 20 39685 966 | 965 110 40760 967 | 966 49 39240 968 | 967 102 39296 969 | 968 51 39762 970 | 969 48 39522 971 | 970 13 40407 972 | 971 322 41424 973 | 972 90 37487 974 | 973 74 37642 975 | 974 109 37954 976 | 975 240 36620 977 | 976 15 33529 978 | 977 14 34395 979 | 978 75 38742 980 | 979 177 40486 981 | 980 152 39460 982 | 981 132 38080 983 | 982 5 37644 984 | 983 62 46131 985 | 984 142 45619 986 | 985 254 43549 987 | 986 13 39705 988 | 987 20 40075 989 | 988 88 41381 990 | 989 13 40259 991 | 990 32 41965 992 | 991 148 42404 993 | 992 42 41688 994 | 993 65 41937 995 | 994 48 41731 996 | 995 76 41162 997 | 996 15 46004 998 | 997 174 48143 999 | 998 22 46360 1000 | 999 92 48768 1001 | -------------------------------------------------------------------------------- /test_DAs_example/blocks_DIGISHIELD_.txt: -------------------------------------------------------------------------------- 1 | 0 274 40001 2 | 1 36 40001 3 | 2 52 40001 4 | 3 53 40001 5 | 4 66 40001 6 | 5 538 40001 7 | 6 47 40001 8 | 7 135 40001 9 | 8 129 40001 10 | 9 166 40001 11 | 10 173 40001 12 | 11 26 40001 13 | 12 109 40001 14 | 13 119 40001 15 | 14 60 40001 16 | 15 129 40001 17 | 16 21 40001 18 | 17 153 40001 19 | 18 11 40001 20 | 19 143 40001 21 | 20 110 40001 22 | 21 158 40001 23 | 22 67 40001 24 | 23 299 37717 25 | 24 352 38225 26 | 25 23 38259 27 | 26 236 37680 28 | 27 68 37256 29 | 28 51 36641 30 | 29 122 38943 31 | 30 93 37513 32 | 31 40 36273 33 | 32 2 36595 34 | 33 3 36058 35 | 34 135 36361 36 | 35 63 36034 37 | 36 3 35749 38 | 37 14 35640 39 | 38 25 35495 40 | 39 129 35873 41 | 40 294 35729 42 | 41 6 35706 43 | 42 609 35303 44 | 43 88 35840 45 | 44 133 36232 46 | 45 55 36885 47 | 46 40 36563 48 | 47 317 36449 49 | 48 25 37630 50 | 49 55 35224 51 | 50 118 35899 52 | 51 208 35555 53 | 52 27 35488 54 | 53 22 35879 55 | 54 172 34755 56 | 55 23 34778 57 | 56 50 34480 58 | 57 128 33856 59 | 58 117 33416 60 | 59 171 33454 61 | 60 57 33265 62 | 61 40 32769 63 | 62 21 32580 64 | 63 59 32353 65 | 64 46 32861 66 | 65 0 32166 67 | 66 2 33888 68 | 67 53 33963 69 | 68 15 34313 70 | 69 27 34412 71 | 70 22 34251 72 | 71 11 35098 73 | 72 37 35119 74 | 73 23 35140 75 | 74 123 35181 76 | 75 11 35262 77 | 76 102 35376 78 | 77 10 35494 79 | 78 8 35631 80 | 79 228 35806 81 | 80 77 36004 82 | 81 157 36229 83 | 82 159 36435 84 | 83 167 36698 85 | 84 4 36870 86 | 85 108 37049 87 | 86 7 37217 88 | 87 63 37389 89 | 88 59 37582 90 | 89 168 37734 91 | 90 42 37895 92 | 91 321 38064 93 | 92 23 38241 94 | 93 87 38424 95 | 94 64 38611 96 | 95 102 38802 97 | 96 90 38726 98 | 97 70 38793 99 | 98 12 37835 100 | 99 138 37864 101 | 100 149 38031 102 | 101 41 37811 103 | 102 208 37357 104 | 103 14 38128 105 | 104 84 38221 106 | 105 101 39099 107 | 106 30 39313 108 | 107 31 39515 109 | 108 138 39395 110 | 109 43 38894 111 | 110 20 38893 112 | 111 38 38801 113 | 112 19 38575 114 | 113 1 39352 115 | 114 18 39455 116 | 115 26 40317 117 | 116 124 40469 118 | 117 28 40629 119 | 118 131 40789 120 | 119 20 40972 121 | 120 8 41194 122 | 121 9 41382 123 | 122 16 41576 124 | 123 37 41728 125 | 124 121 41876 126 | 125 104 42021 127 | 126 318 42183 128 | 127 36 42385 129 | 128 16 42599 130 | 129 7 42832 131 | 130 6 43094 132 | 131 298 43323 133 | 132 60 43561 134 | 133 339 43760 135 | 134 9 43962 136 | 135 1 44167 137 | 136 102 44374 138 | 137 47 44583 139 | 138 37 44791 140 | 139 49 45001 141 | 140 134 44362 142 | 141 72 44647 143 | 142 131 45543 144 | 143 247 45353 145 | 144 77 45280 146 | 145 218 45265 147 | 146 14 45203 148 | 147 25 44702 149 | 148 11 45120 150 | 149 209 45048 151 | 150 55 45612 152 | 151 22 45446 153 | 152 297 44218 154 | 153 82 44176 155 | 154 71 44045 156 | 155 110 45893 157 | 156 19 44963 158 | 157 65 46898 159 | 158 283 46961 160 | 159 40 45082 161 | 160 78 45186 162 | 161 406 45019 163 | 162 30 44533 164 | 163 292 44682 165 | 164 297 45100 166 | 165 41 43780 167 | 166 309 44272 168 | 167 85 45322 169 | 168 117 43222 170 | 169 27 44259 171 | 170 230 42564 172 | 171 47 41618 173 | 172 124 41485 174 | 173 87 41245 175 | 174 29 41041 176 | 175 22 40721 177 | 176 56 40381 178 | 177 46 40124 179 | 178 51 39847 180 | 179 74 39565 181 | 180 23 39293 182 | 181 149 38999 183 | 182 118 38665 184 | 183 15 38386 185 | 184 35 38064 186 | 185 20 39562 187 | 186 142 39107 188 | 187 63 40345 189 | 188 97 41106 190 | 189 114 40606 191 | 190 152 41577 192 | 191 12 41597 193 | 192 109 41631 194 | 193 0 41687 195 | 194 4 41767 196 | 195 90 41868 197 | 196 40 41992 198 | 197 414 42141 199 | 198 12 42316 200 | 199 451 42520 201 | 200 24 42757 202 | 201 543 43025 203 | 202 47 43330 204 | 203 252 43561 205 | 204 89 42883 206 | 205 102 43930 207 | 206 10 41982 208 | 207 501 42007 209 | 208 377 39390 210 | 209 67 39269 211 | 210 71 39140 212 | 211 21 39001 213 | 212 32 38850 214 | 213 24 38685 215 | 214 40 38504 216 | 215 85 38306 217 | 216 49 38086 218 | 217 10 37844 219 | 218 5 37576 220 | 219 1 37278 221 | 220 142 36947 222 | 221 160 36586 223 | 222 13 36242 224 | 223 51 35822 225 | 224 158 35486 226 | 225 18 37470 227 | 226 1 37608 228 | 227 16 38119 229 | 228 16 37664 230 | 229 12 38080 231 | 230 14 37804 232 | 231 43 39020 233 | 232 12 39052 234 | 233 66 39098 235 | 234 29 39160 236 | 235 112 39240 237 | 236 10 39343 238 | 237 43 39469 239 | 238 110 39624 240 | 239 8 39811 241 | 240 192 40030 242 | 241 21 40288 243 | 242 32 40583 244 | 243 14 40775 245 | 244 55 40969 246 | 245 98 41144 247 | 246 134 41358 248 | 247 180 41559 249 | 248 135 41790 250 | 249 162 41960 251 | 250 195 42138 252 | 251 76 42325 253 | 252 101 42519 254 | 253 407 42721 255 | 254 321 42928 256 | 255 63 43141 257 | 256 18 43357 258 | 257 361 42909 259 | 258 98 42782 260 | 259 39 43002 261 | 260 9 40740 262 | 261 134 39206 263 | 262 108 39360 264 | 263 22 39208 265 | 264 26 38879 266 | 265 256 38733 267 | 266 211 38565 268 | 267 39 38380 269 | 268 32 38175 270 | 269 78 37948 271 | 270 51 37698 272 | 271 14 37424 273 | 272 130 37123 274 | 273 108 36794 275 | 274 29 36436 276 | 275 16 36082 277 | 276 33 35823 278 | 277 0 37227 279 | 278 485 38718 280 | 279 3 38306 281 | 280 147 37742 282 | 281 178 39304 283 | 282 78 39331 284 | 283 51 39367 285 | 284 166 39416 286 | 285 65 38259 287 | 286 185 38865 288 | 287 330 38206 289 | 288 58 37401 290 | 289 58 38381 291 | 290 32 39385 292 | 291 78 38799 293 | 292 21 38751 294 | 293 282 38306 295 | 294 131 36955 296 | 295 53 36715 297 | 296 193 36971 298 | 297 97 37293 299 | 298 140 37010 300 | 299 16 36854 301 | 300 20 35473 302 | 301 19 35131 303 | 302 32 36516 304 | 303 293 35463 305 | 304 197 35519 306 | 305 77 35555 307 | 306 12 35761 308 | 307 19 35768 309 | 308 79 36316 310 | 309 12 36344 311 | 310 23 35645 312 | 311 42 36178 313 | 312 298 36033 314 | 313 138 36235 315 | 314 136 36260 316 | 315 136 36194 317 | 316 29 36193 318 | 317 93 37495 319 | 318 129 37619 320 | 319 126 36979 321 | 320 8 37312 322 | 321 2 37207 323 | 322 32 37331 324 | 323 31 37365 325 | 324 335 37059 326 | 325 5 36544 327 | 326 117 36065 328 | 327 178 37581 329 | 328 116 38420 330 | 329 68 38558 331 | 330 1 38713 332 | 331 228 37602 333 | 332 118 38096 334 | 333 35 37623 335 | 334 192 36871 336 | 335 83 36449 337 | 336 212 37607 338 | 337 0 38415 339 | 338 153 37960 340 | 339 62 38105 341 | 340 13 38118 342 | 341 3 37613 343 | 342 181 37899 344 | 343 9 37507 345 | 344 160 37635 346 | 345 91 36832 347 | 346 192 36586 348 | 347 9 36566 349 | 348 29 38240 350 | 349 91 37303 351 | 350 175 37849 352 | 351 40 37962 353 | 352 100 38168 354 | 353 14 37581 355 | 354 94 37536 356 | 355 94 38599 357 | 356 21 38794 358 | 357 43 38037 359 | 358 62 38901 360 | 359 223 38880 361 | 360 206 39484 362 | 361 65 39605 363 | 362 165 39726 364 | 363 88 39904 365 | 364 162 40108 366 | 365 117 40325 367 | 366 21 40337 368 | 367 117 39348 369 | 368 119 39996 370 | 369 459 39681 371 | 370 19 40391 372 | 371 177 39652 373 | 372 2 39270 374 | 373 2 39712 375 | 374 269 40106 376 | 375 185 39766 377 | 376 102 37838 378 | 377 156 37753 379 | 378 271 37229 380 | 379 240 37570 381 | 380 53 37549 382 | 381 142 36420 383 | 382 28 36218 384 | 383 8 35994 385 | 384 240 35849 386 | 385 211 35565 387 | 386 108 35323 388 | 387 12 35085 389 | 388 27 34795 390 | 389 17 34530 391 | 390 2 34271 392 | 391 13 33974 393 | 392 92 33639 394 | 393 153 33444 395 | 394 110 33235 396 | 395 53 33673 397 | 396 62 33404 398 | 397 213 33171 399 | 398 15 34136 400 | 399 21 34464 401 | 400 209 34108 402 | 401 35 34225 403 | 402 5 35247 404 | 403 252 35661 405 | 404 40 35343 406 | 405 402 35698 407 | 406 138 35753 408 | 407 2 35134 409 | 408 144 35881 410 | 409 118 35998 411 | 410 272 36143 412 | 411 24 36309 413 | 412 64 35079 414 | 413 21 34552 415 | 414 33 34618 416 | 415 51 34062 417 | 416 11 33933 418 | 417 2 33346 419 | 418 73 33704 420 | 419 43 33623 421 | 420 19 33724 422 | 421 81 34485 423 | 422 68 34258 424 | 423 179 34223 425 | 424 52 35179 426 | 425 29 34985 427 | 426 36 34738 428 | 427 344 35886 429 | 428 21 35649 430 | 429 64 35988 431 | 430 20 36044 432 | 431 12 36135 433 | 432 173 36228 434 | 433 27 36361 435 | 434 6 36510 436 | 435 23 36705 437 | 436 26 36889 438 | 437 178 37090 439 | 438 26 37296 440 | 439 4 37469 441 | 440 83 37666 442 | 441 21 37878 443 | 442 31 38043 444 | 443 11 38231 445 | 444 53 38446 446 | 445 88 38603 447 | 446 80 38784 448 | 447 78 38956 449 | 448 97 39135 450 | 449 15 39319 451 | 450 313 39509 452 | 451 181 39702 453 | 452 141 39898 454 | 453 71 40094 455 | 454 127 40291 456 | 455 23 40488 457 | 456 162 40684 458 | 457 6 40881 459 | 458 21 41078 460 | 459 1 41275 461 | 460 88 41204 462 | 461 51 41656 463 | 462 15 41853 464 | 463 57 41134 465 | 464 109 41753 466 | 465 24 41923 467 | 466 111 42283 468 | 467 239 41976 469 | 468 6 42137 470 | 469 247 42750 471 | 470 313 43074 472 | 471 112 43054 473 | 472 11 43551 474 | 473 27 43259 475 | 474 155 43897 476 | 475 82 44082 477 | 476 195 44267 478 | 477 42 43318 479 | 478 9 43541 480 | 479 67 43732 481 | 480 71 44743 482 | 481 4 43970 483 | 482 38 43708 484 | 483 27 42598 485 | 484 85 42899 486 | 485 1 43214 487 | 486 61 42953 488 | 487 46 42879 489 | 488 8 43523 490 | 489 106 43462 491 | 490 49 43994 492 | 491 119 45058 493 | 492 1 45163 494 | 493 78 45628 495 | 494 9 45711 496 | 495 125 45858 497 | 496 139 46000 498 | 497 152 46140 499 | 498 95 46225 500 | 499 166 46364 501 | 500 117 46527 502 | 501 82 46768 503 | 502 61 47006 504 | 503 157 47239 505 | 504 157 47502 506 | 505 21 47786 507 | 506 36 48048 508 | 507 100 48329 509 | 508 81 48596 510 | 509 51 48813 511 | 510 2 48433 512 | 511 384 47807 513 | 512 58 47840 514 | 513 46 48458 515 | 514 25 48239 516 | 515 335 48638 517 | 516 49 48423 518 | 517 120 49096 519 | 518 39 46642 520 | 519 62 47080 521 | 520 34 47717 522 | 521 126 48638 523 | 522 8 47043 524 | 523 36 47796 525 | 524 18 47760 526 | 525 19 48026 527 | 526 319 47985 528 | 527 226 48810 529 | 528 264 49058 530 | 529 83 49228 531 | 530 114 49312 532 | 531 91 49974 533 | 532 0 50430 534 | 533 1 48676 535 | 534 34 47145 536 | 535 159 47847 537 | 536 23 47745 538 | 537 87 47321 539 | 538 41 46859 540 | 539 136 49075 541 | 540 250 49548 542 | 541 48 50298 543 | 542 123 49555 544 | 543 36 49935 545 | 544 127 49660 546 | 545 215 50344 547 | 546 26 49473 548 | 547 447 47978 549 | 548 70 47698 550 | 549 75 46875 551 | 550 59 48598 552 | 551 146 49304 553 | 552 16 49793 554 | 553 77 50337 555 | 554 392 48091 556 | 555 36 48280 557 | 556 112 47848 558 | 557 263 47388 559 | 558 13 46532 560 | 559 80 47257 561 | 560 56 46769 562 | 561 140 44920 563 | 562 1 44661 564 | 563 53 44351 565 | 564 143 44071 566 | 565 34 43923 567 | 566 14 43972 568 | 567 262 43694 569 | 568 169 43348 570 | 569 60 44307 571 | 570 95 43832 572 | 571 121 45386 573 | 572 153 45465 574 | 573 27 45707 575 | 574 268 44255 576 | 575 52 43930 577 | 576 3 43507 578 | 577 11 43182 579 | 578 49 44689 580 | 579 71 43920 581 | 580 95 44422 582 | 581 152 44394 583 | 582 20 44161 584 | 583 134 44675 585 | 584 25 45015 586 | 585 16 45709 587 | 586 376 45376 588 | 587 190 45159 589 | 588 3 45178 590 | 589 8 45259 591 | 590 40 44459 592 | 591 60 45966 593 | 592 179 46609 594 | 593 43 45127 595 | 594 177 44602 596 | 595 81 45461 597 | 596 103 46499 598 | 597 290 46564 599 | 598 65 47297 600 | 599 56 47447 601 | 600 48 47361 602 | 601 0 46363 603 | 602 4 46225 604 | 603 9 46040 605 | 604 27 44804 606 | 605 340 45343 607 | 606 69 45119 608 | 607 32 45673 609 | 608 6 45910 610 | 609 196 45987 611 | 610 154 48010 612 | 611 120 48187 613 | 612 99 47668 614 | 613 267 47369 615 | 614 47 47478 616 | 615 177 47917 617 | 616 3 47833 618 | 617 41 47076 619 | 618 105 47456 620 | 619 6 47395 621 | 620 53 46342 622 | 621 272 48044 623 | 622 74 47445 624 | 623 19 47944 625 | 624 29 48163 626 | 625 36 47571 627 | 626 130 47655 628 | 627 195 47449 629 | 628 23 45788 630 | 629 11 47420 631 | 630 24 47753 632 | 631 87 47796 633 | 632 11 47606 634 | 633 30 48050 635 | 634 109 47775 636 | 635 44 48505 637 | 636 23 49212 638 | 637 7 49772 639 | 638 100 49983 640 | 639 32 50102 641 | 640 267 50265 642 | 641 40 50408 643 | 642 249 50546 644 | 643 75 50728 645 | 644 24 50917 646 | 645 27 51130 647 | 646 32 51458 648 | 647 29 51706 649 | 648 87 51949 650 | 649 216 52204 651 | 650 39 52486 652 | 651 255 52759 653 | 652 162 53065 654 | 653 172 53345 655 | 654 1 53599 656 | 655 346 53834 657 | 656 625 54070 658 | 657 152 54314 659 | 658 176 53601 660 | 659 25 52862 661 | 660 186 51866 662 | 661 328 51977 663 | 662 148 50261 664 | 663 236 48916 665 | 664 19 48777 666 | 665 42 48617 667 | 666 21 48435 668 | 667 47 48229 669 | 668 52 47996 670 | 669 150 47736 671 | 670 95 47445 672 | 671 31 47123 673 | 672 586 46769 674 | 673 62 46383 675 | 674 132 45963 676 | 675 20 45507 677 | 676 105 45064 678 | 677 263 44638 679 | 678 50 44243 680 | 679 11 43821 681 | 680 136 43469 682 | 681 105 43171 683 | 682 331 43239 684 | 683 58 42571 685 | 684 45 42251 686 | 685 350 43000 687 | 686 46 43548 688 | 687 45 43929 689 | 688 109 43193 690 | 689 8 41278 691 | 690 73 40771 692 | 691 51 40475 693 | 692 571 40109 694 | 693 23 39815 695 | 694 28 39528 696 | 695 15 39249 697 | 696 71 41017 698 | 697 54 40792 699 | 698 64 41111 700 | 699 185 38564 701 | 700 13 38308 702 | 701 2 39156 703 | 702 9 39172 704 | 703 13 38632 705 | 704 55 38798 706 | 705 143 38730 707 | 706 33 39284 708 | 707 4 39424 709 | 708 112 39591 710 | 709 110 41222 711 | 710 15 41290 712 | 711 51 41381 713 | 712 34 41495 714 | 713 10 41633 715 | 714 175 41670 716 | 715 104 41724 717 | 716 6 41762 718 | 717 18 41958 719 | 718 385 42183 720 | 719 125 42368 721 | 720 28 42565 722 | 721 71 42806 723 | 722 10 43052 724 | 723 28 43318 725 | 724 129 43566 726 | 725 46 43820 727 | 726 52 44080 728 | 727 23 44255 729 | 728 159 44437 730 | 729 207 44625 731 | 730 5 44817 732 | 731 253 45013 733 | 732 226 45218 734 | 733 16 45432 735 | 734 2 45658 736 | 735 41 45885 737 | 736 270 45098 738 | 737 42 45295 739 | 738 48 44938 740 | 739 98 44271 741 | 740 395 44278 742 | 741 74 44436 743 | 742 461 46766 744 | 743 33 45982 745 | 744 101 46001 746 | 745 183 46264 747 | 746 251 45773 748 | 747 112 43493 749 | 748 339 43754 750 | 749 208 41987 751 | 750 43 41811 752 | 751 22 41613 753 | 752 44 41392 754 | 753 58 41147 755 | 754 56 40931 756 | 755 4 40692 757 | 756 152 40460 758 | 757 162 40252 759 | 758 27 40032 760 | 759 77 39792 761 | 760 102 39411 762 | 761 32 39052 763 | 762 55 38672 764 | 763 68 38257 765 | 764 52 37847 766 | 765 57 37538 767 | 766 164 39169 768 | 767 39 38627 769 | 768 142 38823 770 | 769 17 39381 771 | 770 255 40333 772 | 771 137 40648 773 | 772 108 41081 774 | 773 237 41105 775 | 774 624 41145 776 | 775 28 41199 777 | 776 122 41271 778 | 777 224 41156 779 | 778 219 40763 780 | 779 106 40241 781 | 780 138 39836 782 | 781 23 37417 783 | 782 173 37388 784 | 783 9 37152 785 | 784 98 37017 786 | 785 28 36929 787 | 786 14 36826 788 | 787 52 36686 789 | 788 6 36487 790 | 789 43 36259 791 | 790 326 35996 792 | 791 112 35717 793 | 792 98 35420 794 | 793 46 35105 795 | 794 22 34768 796 | 795 8 34582 797 | 796 173 34548 798 | 797 3 33820 799 | 798 49 35986 800 | 799 90 35540 801 | 800 20 35825 802 | 801 39 36830 803 | 802 44 37295 804 | 803 179 37317 805 | 804 26 37347 806 | 805 44 37388 807 | 806 9 37443 808 | 807 270 37516 809 | 808 28 37609 810 | 809 356 37725 811 | 810 85 37867 812 | 811 1 38037 813 | 812 21 38237 814 | 813 55 38462 815 | 814 11 38702 816 | 815 188 39002 817 | 816 120 39187 818 | 817 29 39309 819 | 818 33 39625 820 | 819 149 39742 821 | 820 102 39947 822 | 821 30 40108 823 | 822 68 40047 824 | 823 37 40028 825 | 824 111 40130 826 | 825 128 40325 827 | 826 51 39861 828 | 827 78 40450 829 | 828 145 40582 830 | 829 181 40590 831 | 830 19 40562 832 | 831 343 41647 833 | 832 20 41226 834 | 833 84 41964 835 | 834 178 42135 836 | 835 58 42308 837 | 836 280 41912 838 | 837 253 42272 839 | 838 46 40392 840 | 839 22 41407 841 | 840 227 41709 842 | 841 348 40908 843 | 842 23 40806 844 | 843 9 40076 845 | 844 51 39250 846 | 845 38 39096 847 | 846 280 39263 848 | 847 11 38178 849 | 848 82 37945 850 | 849 24 37743 851 | 850 208 37552 852 | 851 23 37311 853 | 852 63 37371 854 | 853 44 36778 855 | 854 70 36498 856 | 855 16 37364 857 | 856 10 37173 858 | 857 262 36306 859 | 858 111 36789 860 | 859 184 36530 861 | 860 140 37528 862 | 861 201 38397 863 | 862 170 38518 864 | 863 301 38552 865 | 864 54 38308 866 | 865 101 39096 867 | 866 46 38825 868 | 867 43 38138 869 | 868 75 37345 870 | 869 128 36648 871 | 870 74 36498 872 | 871 53 36261 873 | 872 115 36151 874 | 873 131 35972 875 | 874 69 36751 876 | 875 12 36505 877 | 876 8 36155 878 | 877 57 35982 879 | 878 24 35980 880 | 879 98 35352 881 | 880 105 34595 882 | 881 12 35305 883 | 882 203 35629 884 | 883 20 36338 885 | 884 66 36634 886 | 885 53 37523 887 | 886 42 37722 888 | 887 92 37788 889 | 888 45 37867 890 | 889 6 37965 891 | 890 64 38077 892 | 891 16 38206 893 | 892 274 38295 894 | 893 37 38405 895 | 894 11 38544 896 | 895 45 38701 897 | 896 332 38868 898 | 897 67 39084 899 | 898 132 39360 900 | 899 73 39609 901 | 900 28 39853 902 | 901 35 40069 903 | 902 343 40280 904 | 903 358 40449 905 | 904 6 40617 906 | 905 69 40318 907 | 906 10 40941 908 | 907 17 41124 909 | 908 364 41311 910 | 909 41 40194 911 | 910 169 38515 912 | 911 109 38993 913 | 912 61 38886 914 | 913 125 38875 915 | 914 202 39136 916 | 915 394 37287 917 | 916 16 38389 918 | 917 25 37622 919 | 918 86 36998 920 | 919 71 36749 921 | 920 33 37613 922 | 921 9 36759 923 | 922 108 36042 924 | 923 25 35808 925 | 924 48 35528 926 | 925 147 35222 927 | 926 85 35469 928 | 927 44 36854 929 | 928 33 36741 930 | 929 40 36406 931 | 930 216 36185 932 | 931 73 35871 933 | 932 98 36819 934 | 933 190 36556 935 | 934 70 37124 936 | 935 119 37517 937 | 936 44 37667 938 | 937 92 37213 939 | 938 198 37915 940 | 939 40 38131 941 | 940 322 38259 942 | 941 117 38409 943 | 942 1 38586 944 | 943 55 38793 945 | 944 54 38920 946 | 945 211 37958 947 | 946 52 38416 948 | 947 82 36904 949 | 948 12 36586 950 | 949 2 37398 951 | 950 13 37594 952 | 951 53 37601 953 | 952 12 36684 954 | 953 164 36575 955 | 954 104 37214 956 | 955 73 37543 957 | 956 99 38050 958 | 957 34 39060 959 | 958 258 39209 960 | 959 308 39491 961 | 960 104 39236 962 | 961 177 39193 963 | 962 71 39591 964 | 963 37 39691 965 | 964 124 39769 966 | 965 4 39945 967 | 966 3 39210 968 | 967 8 39034 969 | 968 107 38424 970 | 969 237 39268 971 | 970 55 39509 972 | 971 100 39440 973 | 972 94 39619 974 | 973 59 39736 975 | 974 7 39866 976 | 975 4 39599 977 | 976 40 38360 978 | 977 66 38895 979 | 978 98 38898 980 | 979 61 38764 981 | 980 72 38939 982 | 981 144 39047 983 | 982 236 40495 984 | 983 107 40966 985 | 984 95 41073 986 | 985 89 41199 987 | 986 22 41369 988 | 987 30 41498 989 | 988 217 41620 990 | 989 13 41754 991 | 990 24 41463 992 | 991 78 41031 993 | 992 326 41211 994 | 993 136 42162 995 | 994 198 42395 996 | 995 118 42526 997 | 996 157 42833 998 | 997 228 43083 999 | 998 153 43337 1000 | 999 61 41760 1001 | -------------------------------------------------------------------------------- /test_DAs_example/blocks_DIGISHIELD_impoved_.txt: -------------------------------------------------------------------------------- 1 | 0 156 40001 2 | 1 20 40001 3 | 2 8 40001 4 | 3 52 40001 5 | 4 101 40001 6 | 5 17 40001 7 | 6 60 40001 8 | 7 394 40001 9 | 8 106 40001 10 | 9 9 40001 11 | 10 60 40001 12 | 11 19 40001 13 | 12 199 40001 14 | 13 43 40001 15 | 14 175 40001 16 | 15 63 40001 17 | 16 273 40001 18 | 17 1 39680 19 | 18 130 40578 20 | 19 166 39957 21 | 20 14 39048 22 | 21 265 39207 23 | 22 40 38256 24 | 23 9 38034 25 | 24 102 38198 26 | 25 21 39738 27 | 26 147 40227 28 | 27 55 39427 29 | 28 7 39422 30 | 29 73 39458 31 | 30 208 40169 32 | 31 194 39211 33 | 32 122 39057 34 | 33 311 38670 35 | 34 30 38382 36 | 35 41 38149 37 | 36 12 38500 38 | 37 125 39292 39 | 38 39 38670 40 | 39 149 39955 41 | 40 165 39410 42 | 41 149 38599 43 | 42 294 38361 44 | 43 103 36834 45 | 44 14 36871 46 | 45 140 36940 47 | 46 14 36127 48 | 47 7 36238 49 | 48 149 37053 50 | 49 189 37168 51 | 50 202 36707 52 | 51 262 37171 53 | 52 145 35898 54 | 53 23 35260 55 | 54 3 35028 56 | 55 54 35387 57 | 56 48 35130 58 | 57 146 35359 59 | 58 195 35224 60 | 59 59 34805 61 | 60 36 35791 62 | 61 130 36083 63 | 62 39 35431 64 | 63 4 35868 65 | 64 116 35906 66 | 65 87 35319 67 | 66 46 35538 68 | 67 169 36200 69 | 68 39 36349 70 | 69 125 37557 71 | 70 91 37777 72 | 71 16 37536 73 | 72 70 37616 74 | 73 80 37660 75 | 74 173 37630 76 | 75 103 37614 77 | 76 42 38295 78 | 77 428 38612 79 | 78 125 36569 80 | 79 15 36624 81 | 80 179 36823 82 | 81 90 35958 83 | 82 9 36094 84 | 83 99 36547 85 | 84 185 36327 86 | 85 13 36251 87 | 86 11 36381 88 | 87 32 36919 89 | 88 269 37190 90 | 89 1 35831 91 | 90 141 36084 92 | 91 29 35680 93 | 92 137 36314 94 | 93 14 36060 95 | 94 36 36077 96 | 95 67 38102 97 | 96 146 38541 98 | 97 126 37888 99 | 98 41 38262 100 | 99 13 38695 101 | 100 62 38832 102 | 101 362 39198 103 | 102 33 38321 104 | 103 928 38330 105 | 104 67 33770 106 | 105 12 33448 107 | 106 94 34418 108 | 107 201 33910 109 | 108 11 33521 110 | 109 44 33486 111 | 110 5 33756 112 | 111 364 33672 113 | 112 3 32107 114 | 113 14 32062 115 | 114 84 32282 116 | 115 200 32162 117 | 116 27 31168 118 | 117 113 30715 119 | 118 17 30087 120 | 119 21 31008 121 | 120 118 30658 122 | 121 0 34009 123 | 122 63 34378 124 | 123 71 34165 125 | 124 14 34271 126 | 125 170 35317 127 | 126 6 34555 128 | 127 243 34827 129 | 128 75 33641 130 | 129 48 35173 131 | 130 6 35117 132 | 131 6 35353 133 | 132 46 35986 134 | 133 43 37137 135 | 134 6 37428 136 | 135 294 38533 137 | 136 66 37381 138 | 137 123 37517 139 | 138 186 37917 140 | 139 94 37081 141 | 140 14 37071 142 | 141 242 37572 143 | 142 89 36501 144 | 143 19 37014 145 | 144 8 37089 146 | 145 31 38577 147 | 146 11 39149 148 | 147 47 39625 149 | 148 4 39653 150 | 149 39 39933 151 | 150 98 40223 152 | 151 179 40071 153 | 152 39 39187 154 | 153 16 40792 155 | 154 52 41329 156 | 155 69 42041 157 | 156 0 43108 158 | 157 71 44175 159 | 158 61 44228 160 | 159 103 46026 161 | 160 269 46559 162 | 161 77 45297 163 | 162 121 45322 164 | 163 40 45104 165 | 164 230 45273 166 | 165 142 44355 167 | 166 32 43723 168 | 167 52 43995 169 | 168 68 44526 170 | 169 14 45554 171 | 170 2 46119 172 | 171 107 46546 173 | 172 4 46474 174 | 173 122 47212 175 | 174 185 46590 176 | 175 15 45944 177 | 176 295 46363 178 | 177 268 45088 179 | 178 80 45009 180 | 179 389 44972 181 | 180 28 43266 182 | 181 15 43236 183 | 182 180 44462 184 | 183 90 44225 185 | 184 36 43888 186 | 185 24 43982 187 | 186 5 44229 188 | 187 36 44210 189 | 188 124 43885 190 | 189 69 43626 191 | 190 224 43063 192 | 191 91 42219 193 | 192 368 42533 194 | 193 76 40326 195 | 194 220 41217 196 | 195 187 41277 197 | 196 30 40463 198 | 197 15 42306 199 | 198 26 42330 200 | 199 132 42210 201 | 200 31 42374 202 | 201 28 42633 203 | 202 40 42610 204 | 203 37 42429 205 | 204 227 42125 206 | 205 12 40861 207 | 206 56 41348 208 | 207 169 41294 209 | 208 2 41522 210 | 209 281 42028 211 | 210 158 42546 212 | 211 31 42161 213 | 212 7 43432 214 | 213 96 44792 215 | 214 188 44603 216 | 215 46 43576 217 | 216 165 43520 218 | 217 214 43383 219 | 218 104 42284 220 | 219 64 41800 221 | 220 42 41610 222 | 221 72 41533 223 | 222 4 42444 224 | 223 38 42587 225 | 224 4 42773 226 | 225 277 43929 227 | 226 15 42316 228 | 227 38 44032 229 | 228 6 44936 230 | 229 50 45280 231 | 230 1 45095 232 | 231 43 45781 233 | 232 106 46912 234 | 233 46 46679 235 | 234 112 47774 236 | 235 79 48857 237 | 236 73 49489 238 | 237 4 49919 239 | 238 42 50780 240 | 239 81 51645 241 | 240 427 51596 242 | 241 7 49064 243 | 242 159 49428 244 | 243 3 50686 245 | 244 130 51306 246 | 245 99 51026 247 | 246 59 50674 248 | 247 69 50933 249 | 248 65 50763 250 | 249 0 50895 251 | 250 274 51961 252 | 251 167 50526 253 | 252 89 50280 254 | 253 312 50290 255 | 254 4 48639 256 | 255 95 48567 257 | 256 217 48082 258 | 257 22 46988 259 | 258 227 49489 260 | 259 269 47978 261 | 260 89 47164 262 | 261 222 46414 263 | 262 26 45570 264 | 263 15 45727 265 | 264 23 45732 266 | 265 194 45735 267 | 266 104 44658 268 | 267 108 43699 269 | 268 209 44242 270 | 269 245 43645 271 | 270 10 42380 272 | 271 183 43722 273 | 272 332 42391 274 | 273 176 40743 275 | 274 186 40575 276 | 275 89 39381 277 | 276 44 39564 278 | 277 24 40317 279 | 278 1 40301 280 | 279 149 41215 281 | 280 25 40268 282 | 281 225 39909 283 | 282 66 38505 284 | 283 126 38785 285 | 284 160 38347 286 | 285 72 37784 287 | 286 30 38144 288 | 287 101 39001 289 | 288 118 38310 290 | 289 11 38356 291 | 290 78 39952 292 | 291 28 40497 293 | 292 356 41485 294 | 293 138 39960 295 | 294 45 39432 296 | 295 15 39259 297 | 296 81 39117 298 | 297 384 39386 299 | 298 140 37355 300 | 299 50 37660 301 | 300 195 37698 302 | 301 194 37270 303 | 302 24 37032 304 | 303 165 37241 305 | 304 109 36495 306 | 305 6 36316 307 | 306 51 36775 308 | 307 5 36481 309 | 308 31 36661 310 | 309 53 36429 311 | 310 165 37758 312 | 311 66 37479 313 | 312 38 37249 314 | 313 36 37007 315 | 314 24 37128 316 | 315 15 39059 317 | 316 198 39939 318 | 317 69 39167 319 | 318 160 40036 320 | 319 86 40427 321 | 320 98 40247 322 | 321 42 40865 323 | 322 176 41584 324 | 323 91 40810 325 | 324 9 40807 326 | 325 21 41050 327 | 326 140 41386 328 | 327 110 41138 329 | 328 19 41696 330 | 329 77 42263 331 | 330 8 42318 332 | 331 4 42832 333 | 332 54 43320 334 | 333 39 43323 335 | 334 231 44630 336 | 335 11 43850 337 | 336 53 45126 338 | 337 41 45662 339 | 338 20 46428 340 | 339 127 46951 341 | 340 163 47674 342 | 341 518 47564 343 | 342 20 44371 344 | 343 9 44575 345 | 344 43 45652 346 | 345 60 46396 347 | 346 30 46393 348 | 347 22 46979 349 | 348 293 47164 350 | 349 3 45423 351 | 350 159 45888 352 | 351 88 45239 353 | 352 54 46232 354 | 353 96 46080 355 | 354 16 45846 356 | 355 72 46025 357 | 356 161 45654 358 | 357 237 45354 359 | 358 15 44740 360 | 359 312 48040 361 | 360 58 46184 362 | 361 25 45947 363 | 362 401 46086 364 | 363 174 43868 365 | 364 75 42862 366 | 365 196 42329 367 | 366 239 42628 368 | 367 221 41134 369 | 368 16 40543 370 | 369 5 40683 371 | 370 80 40652 372 | 371 224 40447 373 | 372 4 39057 374 | 373 123 39040 375 | 374 362 38885 376 | 375 41 37909 377 | 376 12 37423 378 | 377 22 38372 379 | 378 72 38134 380 | 379 4 37467 381 | 380 27 39106 382 | 381 33 39669 383 | 382 87 39727 384 | 383 96 40220 385 | 384 195 40953 386 | 385 130 41106 387 | 386 8 40432 388 | 387 94 40398 389 | 388 91 40298 390 | 389 24 41113 391 | 390 78 41113 392 | 391 580 41527 393 | 392 53 40332 394 | 393 70 40405 395 | 394 158 40234 396 | 395 250 39549 397 | 396 41 38635 398 | 397 111 38499 399 | 398 155 38016 400 | 399 63 37293 401 | 400 126 37282 402 | 401 40 36969 403 | 402 45 37546 404 | 403 144 37795 405 | 404 6 36937 406 | 405 41 37199 407 | 406 13 37286 408 | 407 20 37128 409 | 408 79 37208 410 | 409 110 39804 411 | 410 27 39426 412 | 411 167 39626 413 | 412 307 39534 414 | 413 171 39192 415 | 414 54 38467 416 | 415 159 38794 417 | 416 76 38818 418 | 417 71 38833 419 | 418 52 39249 420 | 419 15 39315 421 | 420 129 39601 422 | 421 300 39800 423 | 422 14 38269 424 | 423 14 38481 425 | 424 58 38545 426 | 425 260 38415 427 | 426 6 37502 428 | 427 154 37929 429 | 428 90 37167 430 | 429 190 37434 431 | 430 33 37946 432 | 431 43 38645 433 | 432 24 38719 434 | 433 113 39503 435 | 434 15 39325 436 | 435 34 39688 437 | 436 4 39823 438 | 437 33 39920 439 | 438 68 40531 440 | 439 101 42081 441 | 440 327 41744 442 | 441 131 39976 443 | 442 56 39628 444 | 443 249 40942 445 | 444 81 39674 446 | 445 205 40211 447 | 446 126 39711 448 | 447 11 40223 449 | 448 50 40490 450 | 449 14 40558 451 | 450 29 40728 452 | 451 13 41317 453 | 452 9 41450 454 | 453 51 41713 455 | 454 31 41532 456 | 455 81 41642 457 | 456 40 41627 458 | 457 41 41984 459 | 458 46 43900 460 | 459 324 44750 461 | 460 23 43221 462 | 461 115 44923 463 | 462 41 45013 464 | 463 63 46527 465 | 464 47 47457 466 | 465 72 47651 467 | 466 149 47947 468 | 467 55 47386 469 | 468 159 47614 470 | 469 26 46926 471 | 470 600 47141 472 | 471 130 43761 473 | 472 295 43277 474 | 473 59 42102 475 | 474 98 42019 476 | 475 70 41697 477 | 476 36 41444 478 | 477 42 42931 479 | 478 97 42800 480 | 479 125 42789 481 | 480 65 42169 482 | 481 198 41916 483 | 482 169 40757 484 | 483 79 39859 485 | 484 27 39799 486 | 485 7 39539 487 | 486 9 39923 488 | 487 81 39629 489 | 488 54 42255 490 | 489 61 42650 491 | 490 78 44176 492 | 491 100 44174 493 | 492 9 44295 494 | 493 189 44885 495 | 494 1 44039 496 | 495 58 44388 497 | 496 35 44757 498 | 497 148 45519 499 | 498 172 45138 500 | 499 0 45524 501 | 500 316 47071 502 | 501 172 45788 503 | 502 136 45144 504 | 503 224 44611 505 | 504 25 43498 506 | 505 40 44077 507 | 506 49 44273 508 | 507 78 44445 509 | 508 112 44461 510 | 509 356 44400 511 | 510 23 42269 512 | 511 11 43117 513 | 512 177 43003 514 | 513 0 42213 515 | 514 111 42277 516 | 515 5 42315 517 | 516 9 43171 518 | 517 147 42980 519 | 518 103 43810 520 | 519 72 44143 521 | 520 22 44508 522 | 521 14 45898 523 | 522 9 46125 524 | 523 35 46477 525 | 524 315 46717 526 | 525 11 45182 527 | 526 129 45926 528 | 527 26 47680 529 | 528 211 48001 530 | 529 71 46824 531 | 530 28 47840 532 | 531 171 47982 533 | 532 32 47890 534 | 533 291 48034 535 | 534 114 46324 536 | 535 68 46749 537 | 536 29 47167 538 | 537 531 47652 539 | 538 336 44451 540 | 539 209 42468 541 | 540 304 41176 542 | 541 15 39521 543 | 542 334 40691 544 | 543 137 38823 545 | 544 16 38430 546 | 545 90 38015 547 | 546 155 38092 548 | 547 25 37251 549 | 548 41 36733 550 | 549 49 36768 551 | 550 115 36121 552 | 551 71 36329 553 | 552 68 36009 554 | 553 144 35446 555 | 554 143 34314 556 | 555 55 35399 557 | 556 211 36293 558 | 557 60 35934 559 | 558 101 36911 560 | 559 119 36301 561 | 560 273 37204 562 | 561 189 36369 563 | 562 60 35353 564 | 563 17 35353 565 | 564 139 35906 566 | 565 11 35240 567 | 566 87 35306 568 | 567 0 35030 569 | 568 10 35554 570 | 569 77 35828 571 | 570 183 35770 572 | 571 5 35585 573 | 572 118 36394 574 | 573 161 36114 575 | 574 153 36372 576 | 575 195 35901 577 | 576 52 35353 578 | 577 85 35644 579 | 578 12 36559 580 | 579 156 37572 581 | 580 3 37157 582 | 581 175 37347 583 | 582 41 37230 584 | 583 77 37182 585 | 584 98 37352 586 | 585 17 36944 587 | 586 2 36988 588 | 587 75 37477 589 | 588 102 38202 590 | 589 112 37800 591 | 590 31 37919 592 | 591 89 38791 593 | 592 83 39328 594 | 593 151 40243 595 | 594 154 39927 596 | 595 44 39766 597 | 596 228 39768 598 | 597 52 39466 599 | 598 45 39314 600 | 599 0 40221 601 | 600 523 40661 602 | 601 26 38237 603 | 602 6 38691 604 | 603 124 38856 605 | 604 7 38281 606 | 605 206 38707 607 | 606 89 38159 608 | 607 71 38306 609 | 608 66 38109 610 | 609 126 38195 611 | 610 38 37897 612 | 611 73 38381 613 | 612 84 38746 614 | 613 112 38461 615 | 614 10 39044 616 | 615 25 39264 617 | 616 193 39378 618 | 617 13 38224 619 | 618 158 41132 620 | 619 73 40475 621 | 620 176 40171 622 | 621 7 39935 623 | 622 12 40035 624 | 623 52 41326 625 | 624 199 41764 626 | 625 244 41156 627 | 626 143 40244 628 | 627 140 40264 629 | 628 38 39800 630 | 629 14 40089 631 | 630 145 40587 632 | 631 38 40515 633 | 632 47 40434 634 | 633 177 40372 635 | 634 4 40526 636 | 635 60 40716 637 | 636 127 41290 638 | 637 107 41006 639 | 638 368 41482 640 | 639 23 39435 641 | 640 47 39339 642 | 641 35 39254 643 | 642 136 40047 644 | 643 336 40622 645 | 644 580 39514 646 | 645 172 37118 647 | 646 19 36314 648 | 647 175 36089 649 | 648 326 35707 650 | 649 347 34150 651 | 650 38 32582 652 | 651 132 32759 653 | 652 4 31861 654 | 653 53 31643 655 | 654 17 31453 656 | 655 186 31328 657 | 656 40 31541 658 | 657 252 31063 659 | 658 80 29846 660 | 659 93 29207 661 | 660 6 28819 662 | 661 40 29448 663 | 662 2 31125 664 | 663 49 31544 665 | 664 22 31133 666 | 665 6 31543 667 | 666 199 32846 668 | 667 268 33533 669 | 668 104 32413 670 | 669 174 32531 671 | 670 14 31745 672 | 671 8 31937 673 | 672 16 32009 674 | 673 201 32892 675 | 674 5 32175 676 | 675 17 33489 677 | 676 120 34053 678 | 677 26 34214 679 | 678 3 34445 680 | 679 115 34962 681 | 680 24 34587 682 | 681 47 34911 683 | 682 66 35010 684 | 683 31 34900 685 | 684 216 35955 686 | 685 120 36407 687 | 686 21 36568 688 | 687 34 37740 689 | 688 113 38006 690 | 689 193 37757 691 | 690 2 37078 692 | 691 149 38525 693 | 692 32 38055 694 | 693 6 38251 695 | 694 28 39210 696 | 695 77 39515 697 | 696 15 39374 698 | 697 18 40283 699 | 698 70 40685 700 | 699 205 40904 701 | 700 4 40386 702 | 701 113 40899 703 | 702 375 41882 704 | 703 27 40586 705 | 704 89 40794 706 | 705 4 40640 707 | 706 57 41482 708 | 707 44 42602 709 | 708 39 42667 710 | 709 69 43675 711 | 710 8 43775 712 | 711 89 44109 713 | 712 238 43995 714 | 713 101 43189 715 | 714 211 42860 716 | 715 165 41802 717 | 716 43 41294 718 | 717 8 42304 719 | 718 11 42392 720 | 719 4 43129 721 | 720 331 45745 722 | 721 15 43954 723 | 722 195 44645 724 | 723 29 43615 725 | 724 24 43925 726 | 725 9 44136 727 | 726 168 44423 728 | 727 46 43816 729 | 728 30 43573 730 | 729 36 43923 731 | 730 26 45278 732 | 731 39 45934 733 | 732 362 47388 734 | 733 23 46292 735 | 734 88 46745 736 | 735 89 46445 737 | 736 29 46142 738 | 737 356 46150 739 | 738 245 46001 740 | 739 85 44585 741 | 740 62 45304 742 | 741 353 45184 743 | 742 10 43174 744 | 743 39 43114 745 | 744 91 43832 746 | 745 329 43554 747 | 746 11 41784 748 | 747 247 41810 749 | 748 2 40404 750 | 749 23 40308 751 | 750 302 41817 752 | 751 349 40013 753 | 752 40 38312 754 | 753 140 38133 755 | 754 21 37177 756 | 755 75 38367 757 | 756 184 38844 758 | 757 417 38011 759 | 758 198 35889 760 | 759 8 36133 761 | 760 28 35770 762 | 761 9 35434 763 | 762 43 35374 764 | 763 22 36325 765 | 764 30 35966 766 | 765 226 36748 767 | 766 126 35405 768 | 767 62 34638 769 | 768 180 35407 770 | 769 92 36007 771 | 770 4 35605 772 | 771 31 36167 773 | 772 82 36055 774 | 773 13 35882 775 | 774 83 36625 776 | 775 17 38468 777 | 776 9 39766 778 | 777 121 39996 779 | 778 7 39671 780 | 779 12 39955 781 | 780 245 40449 782 | 781 1 39304 783 | 782 8 39691 784 | 783 30 41278 785 | 784 162 42313 786 | 785 36 42126 787 | 786 175 43572 788 | 787 109 43476 789 | 788 35 43249 790 | 789 128 43675 791 | 790 142 43840 792 | 791 86 43455 793 | 792 172 43860 794 | 793 13 43154 795 | 794 159 43334 796 | 795 8 43287 797 | 796 3 43499 798 | 797 82 43772 799 | 798 100 45085 800 | 799 255 44756 801 | 800 20 43427 802 | 801 110 43618 803 | 802 23 44032 804 | 803 163 44231 805 | 804 164 44350 806 | 805 171 44041 807 | 806 294 43218 808 | 807 209 42177 809 | 808 71 41687 810 | 809 0 41676 811 | 810 395 42582 812 | 811 52 40331 813 | 812 1 40762 814 | 813 6 40662 815 | 814 109 40488 816 | 815 163 40155 817 | 816 42 39539 818 | 817 62 40432 819 | 818 57 40026 820 | 819 98 40123 821 | 820 16 39484 822 | 821 18 40041 823 | 822 19 40642 824 | 823 299 41360 825 | 824 33 41218 826 | 825 305 42269 827 | 826 2 40843 828 | 827 37 40782 829 | 828 69 42944 830 | 829 102 42993 831 | 830 24 42466 832 | 831 111 42459 833 | 832 30 42566 834 | 833 55 43598 835 | 834 59 43762 836 | 835 2 43989 837 | 836 23 44617 838 | 837 49 45433 839 | 838 249 45572 840 | 839 126 44306 841 | 840 48 43815 842 | 841 227 45680 843 | 842 10 44611 844 | 843 55 46840 845 | 844 299 46827 846 | 845 156 45343 847 | 846 22 44899 848 | 847 36 45555 849 | 848 26 45658 850 | 849 112 46443 851 | 850 263 46104 852 | 851 50 44853 853 | 852 173 44975 854 | 853 8 43936 855 | 854 40 43992 856 | 855 7 43966 857 | 856 2 45445 858 | 857 46 46363 859 | 858 54 46531 860 | 859 81 47830 861 | 860 345 47507 862 | 861 99 45526 863 | 862 17 46823 864 | 863 26 47918 865 | 864 469 48075 866 | 865 93 45212 867 | 866 28 44752 868 | 867 20 45199 869 | 868 291 46795 870 | 869 13 45272 871 | 870 218 46365 872 | 871 36 45104 873 | 872 422 45194 874 | 873 292 42712 875 | 874 108 40950 876 | 875 231 40340 877 | 876 112 39121 878 | 877 173 38528 879 | 878 18 38920 880 | 879 217 38986 881 | 880 56 37597 882 | 881 6 36931 883 | 882 28 38632 884 | 883 26 38615 885 | 884 14 38292 886 | 885 78 37948 887 | 886 35 38584 888 | 887 16 38093 889 | 888 214 38722 890 | 889 107 37400 891 | 890 102 38669 892 | 891 179 39531 893 | 892 30 39029 894 | 893 159 40153 895 | 894 3 39928 896 | 895 29 41078 897 | 896 45 41143 898 | 897 31 42418 899 | 898 57 42900 900 | 899 34 42932 901 | 900 49 43165 902 | 901 32 43297 903 | 902 87 43491 904 | 903 46 43780 905 | 904 24 44033 906 | 905 25 44353 907 | 906 32 46085 908 | 907 251 47228 909 | 908 4 46646 910 | 909 64 48470 911 | 910 181 48820 912 | 911 83 49213 913 | 912 81 49177 914 | 913 3 49286 915 | 914 166 50148 916 | 915 122 49566 917 | 916 110 49479 918 | 917 5 49302 919 | 918 193 50023 920 | 919 80 49207 921 | 920 160 49608 922 | 921 71 49110 923 | 922 46 49069 924 | 923 583 49196 925 | 924 30 45655 926 | 925 50 46990 927 | 926 31 46707 928 | 927 105 46824 929 | 928 110 47218 930 | 929 123 46923 931 | 930 235 46518 932 | 931 431 44893 933 | 932 261 43047 934 | 933 56 41935 935 | 934 40 41837 936 | 935 11 41259 937 | 936 102 41791 938 | 937 86 41276 939 | 938 473 41239 940 | 939 105 38733 941 | 940 392 37924 942 | 941 138 38277 943 | 942 15 37375 944 | 943 58 37050 945 | 944 143 36429 946 | 945 197 35726 947 | 946 8 34759 948 | 947 41 34648 949 | 948 235 34906 950 | 949 189 35288 951 | 950 174 35211 952 | 951 91 34300 953 | 952 32 33669 954 | 953 16 33175 955 | 954 86 33096 956 | 955 66 32660 957 | 956 64 34051 958 | 957 184 33984 959 | 958 14 34787 960 | 959 13 35222 961 | 960 67 35104 962 | 961 1 34941 963 | 962 11 35605 964 | 963 54 36633 965 | 964 52 36488 966 | 965 53 36540 967 | 966 77 37705 968 | 967 6 38548 969 | 968 1 39853 970 | 969 81 40838 971 | 970 133 40984 972 | 971 566 40708 973 | 972 35 38187 974 | 973 208 38708 975 | 974 59 38151 976 | 975 10 39136 977 | 976 147 39427 978 | 977 79 38886 979 | 978 64 39043 980 | 979 119 38921 981 | 980 56 38501 982 | 981 41 38599 983 | 982 44 38784 984 | 983 141 38967 985 | 984 72 38678 986 | 985 1 38319 987 | 986 37 38230 988 | 987 5 38323 989 | 988 223 38889 990 | 989 66 40847 991 | 990 22 40816 992 | 991 60 42158 993 | 992 73 42406 994 | 993 40 42191 995 | 994 234 43091 996 | 995 296 42310 997 | 996 147 41027 998 | 997 60 40981 999 | 998 0 41105 1000 | 999 154 41511 1001 | -------------------------------------------------------------------------------- /test_DAs_example/blocks_EMA_.txt: -------------------------------------------------------------------------------- 1 | 0 495 40001 2 | 1 118 36196 3 | 2 132 36031 4 | 3 32 35740 5 | 4 86 36360 6 | 5 24 36489 7 | 6 48 37197 8 | 7 46 37689 9 | 8 151 38207 10 | 9 212 37716 11 | 10 9 36661 12 | 11 25 37515 13 | 12 26 38234 14 | 13 60 38957 15 | 14 0 39353 16 | 15 149 40341 17 | 16 64 39843 18 | 17 40 40207 19 | 18 181 40822 20 | 19 47 39993 21 | 20 167 40533 22 | 21 3 39851 23 | 22 171 40841 24 | 23 36 40113 25 | 24 44 40768 26 | 25 124 41350 27 | 26 29 41099 28 | 27 12 41844 29 | 28 16 42786 30 | 29 31 43705 31 | 30 243 44475 32 | 31 15 42894 33 | 32 431 43827 34 | 33 108 40305 35 | 34 58 40223 36 | 35 91 40652 37 | 36 229 40744 38 | 37 188 39435 39 | 38 405 38566 40 | 39 104 35701 41 | 40 122 35664 42 | 41 7 35465 43 | 42 239 36309 44 | 43 409 35053 45 | 44 63 32416 46 | 45 221 32721 47 | 46 114 31734 48 | 47 1 31621 49 | 48 24 32415 50 | 49 74 33044 51 | 50 42 33262 52 | 51 6 33753 53 | 52 85 34565 54 | 53 20 34696 55 | 54 42 35405 56 | 55 339 35928 57 | 56 205 33819 58 | 57 81 32932 59 | 58 7 33090 60 | 59 4 33878 61 | 60 181 34711 62 | 61 327 34006 63 | 62 17 32107 64 | 63 159 32788 65 | 64 82 32301 66 | 65 82 32448 67 | 66 49 32596 68 | 67 62 33019 69 | 68 55 33338 70 | 69 48 33719 71 | 70 21 34165 72 | 71 23 34855 73 | 72 65 35541 74 | 73 14 35857 75 | 74 23 36646 76 | 75 6 37367 77 | 76 8 38266 78 | 77 438 39167 79 | 78 8 35956 80 | 79 39 36803 81 | 80 81 37375 82 | 81 62 37555 83 | 82 51 37918 84 | 83 22 38391 85 | 84 117 39156 86 | 85 156 38987 87 | 86 19 38438 88 | 87 92 39234 89 | 88 54 39313 90 | 89 32 39773 91 | 90 111 40463 92 | 91 36 40350 93 | 92 30 41009 94 | 93 206 41742 95 | 94 17 40636 96 | 95 232 41498 97 | 96 69 40134 98 | 97 95 40450 99 | 98 56 40501 100 | 99 448 40954 101 | 100 4 37501 102 | 101 100 38423 103 | 102 24 38423 104 | 103 82 39169 105 | 104 157 39347 106 | 105 57 38783 107 | 106 98 39207 108 | 107 209 39226 109 | 108 54 38158 110 | 109 124 38604 111 | 110 25 38370 112 | 111 2 39105 113 | 112 23 40087 114 | 113 106 40876 115 | 114 26 40813 116 | 115 249 41584 117 | 116 59 40044 118 | 117 54 40461 119 | 118 75 40934 120 | 119 211 41193 121 | 120 117 40051 122 | 121 20 39879 123 | 122 19 40694 124 | 123 306 41537 125 | 124 5 39426 126 | 125 40 40385 127 | 126 188 41003 128 | 127 80 40099 129 | 128 290 40302 130 | 129 29 38409 131 | 130 75 39105 132 | 131 489 39353 133 | 132 219 35663 134 | 133 123 34604 135 | 134 71 34403 136 | 135 108 34656 137 | 136 20 34585 138 | 137 19 35292 139 | 138 81 36023 140 | 139 94 36196 141 | 140 230 36251 142 | 141 153 35077 143 | 142 95 34609 144 | 143 12 34652 145 | 144 56 35432 146 | 145 203 35828 147 | 146 3 34905 148 | 147 226 35772 149 | 148 32 34649 150 | 149 72 35250 151 | 150 139 35500 152 | 151 0 35151 153 | 152 125 36033 154 | 153 302 35805 155 | 154 259 34020 156 | 155 133 32678 157 | 156 28 32406 158 | 157 130 33002 159 | 158 35 32752 160 | 159 23 33295 161 | 160 5 33950 162 | 161 194 34775 163 | 162 22 33957 164 | 163 319 34634 165 | 164 86 32766 166 | 165 131 32882 167 | 166 95 32624 168 | 167 162 32665 169 | 168 449 32156 170 | 169 24 29437 171 | 170 53 30008 172 | 171 189 30367 173 | 172 8 29690 174 | 173 14 30389 175 | 174 3 31057 176 | 175 69 31828 177 | 176 6 32078 178 | 177 7 32850 179 | 178 58 33632 180 | 179 41 33991 181 | 180 91 34502 182 | 181 30 34580 183 | 182 44 35198 184 | 183 46 35700 185 | 184 27 36191 186 | 185 39 36865 187 | 186 22 37438 188 | 187 78 38184 189 | 188 14 38397 190 | 189 81 39242 191 | 190 160 39431 192 | 191 21 38836 193 | 192 60 39620 194 | 193 3 40023 195 | 194 19 41017 196 | 195 12 41866 197 | 196 194 42809 198 | 197 208 41802 199 | 198 376 40674 200 | 199 169 37929 201 | 200 14 37272 202 | 201 63 38092 203 | 202 133 38450 204 | 203 28 38130 205 | 204 106 38831 206 | 205 156 38772 207 | 206 175 38226 208 | 207 126 37507 209 | 208 208 37260 210 | 209 38 36255 211 | 210 12 36828 212 | 211 74 37657 213 | 212 97 37905 214 | 213 70 37933 215 | 214 294 38222 216 | 215 212 36390 217 | 216 180 35372 218 | 217 15 34662 219 | 218 55 35415 220 | 219 0 35820 221 | 220 120 36719 222 | 221 28 36533 223 | 222 22 37204 224 | 223 19 37945 225 | 224 35 38731 226 | 225 48 39373 227 | 226 35 39894 228 | 227 15 40555 229 | 228 29 41437 230 | 229 33 42188 231 | 230 396 42909 232 | 231 50 39812 233 | 232 144 40319 234 | 233 129 39872 235 | 234 105 39580 236 | 235 54 39529 237 | 236 74 39992 238 | 237 69 40256 239 | 238 18 40573 240 | 239 56 41424 241 | 240 193 41887 242 | 241 36 40912 243 | 242 356 41580 244 | 243 64 38971 245 | 244 170 39327 246 | 245 246 38636 247 | 246 45 37234 248 | 247 111 37756 249 | 248 8 37651 250 | 249 183 38538 251 | 250 115 37736 252 | 251 159 37592 253 | 252 11 37034 254 | 253 234 37877 255 | 254 0 36613 256 | 255 51 37532 257 | 256 34 38000 258 | 257 34 38640 259 | 258 81 39291 260 | 259 79 39480 261 | 260 85 39690 262 | 261 77 39840 263 | 262 306 40072 264 | 263 39 38036 265 | 264 29 38627 266 | 265 92 39327 267 | 266 142 39406 268 | 267 154 38989 269 | 268 10 38459 270 | 269 266 39345 271 | 270 22 37726 272 | 271 290 38478 273 | 272 24 36671 274 | 273 18 37383 275 | 274 54 38167 276 | 275 5 38614 277 | 276 10 39553 278 | 277 175 40464 279 | 278 137 39703 280 | 279 20 39332 281 | 280 112 40136 282 | 281 60 40014 283 | 282 0 40421 284 | 283 162 41436 285 | 284 47 40790 286 | 285 1 41340 287 | 286 25 42378 288 | 287 121 43190 289 | 288 40 42961 290 | 289 165 43618 291 | 290 27 42906 292 | 291 243 43706 293 | 292 40 42152 294 | 293 21 42797 295 | 294 28 43661 296 | 295 98 44464 297 | 296 173 44486 298 | 297 598 43671 299 | 298 46 38500 300 | 299 223 39029 301 | 300 250 37832 302 | 301 82 36422 303 | 302 173 36588 304 | 303 15 35918 305 | 304 138 36699 306 | 305 30 36347 307 | 306 22 36996 308 | 307 202 37733 309 | 308 10 36771 310 | 309 320 37618 311 | 310 6 35580 312 | 311 138 36436 313 | 312 49 36087 314 | 313 7 36555 315 | 314 79 37425 316 | 315 148 37624 317 | 316 8 37169 318 | 317 147 38044 319 | 318 59 37594 320 | 319 49 37986 321 | 320 80 38479 322 | 321 114 38674 323 | 322 34 38537 324 | 323 215 39186 325 | 324 198 38061 326 | 325 69 37128 327 | 326 60 37420 328 | 327 103 37800 329 | 328 70 37771 330 | 329 186 38058 331 | 330 77 37238 332 | 331 56 37455 333 | 332 57 37874 334 | 333 51 38288 335 | 334 92 38765 336 | 335 25 38843 337 | 336 118 39587 338 | 337 175 39407 339 | 338 11 38665 340 | 339 162 39545 341 | 340 156 38929 342 | 341 20 38381 343 | 342 86 39166 344 | 343 24 39305 345 | 344 31 40068 346 | 345 18 40774 347 | 346 1 41629 348 | 347 47 42674 349 | 348 325 43250 350 | 349 66 40855 351 | 350 150 41208 352 | 351 74 40689 353 | 352 19 40957 354 | 353 7 41805 355 | 354 56 42800 356 | 355 5 43279 357 | 356 99 44331 358 | 357 240 44342 359 | 358 134 42798 360 | 359 13 42431 361 | 360 148 43375 362 | 361 35 42851 363 | 362 92 43561 364 | 363 24 43649 365 | 364 131 44496 366 | 365 22 44148 367 | 366 64 45028 368 | 367 56 45440 369 | 368 2 45948 370 | 369 94 47101 371 | 370 26 47172 372 | 371 204 48064 373 | 372 158 46815 374 | 373 179 46132 375 | 374 4 45218 376 | 375 1 46329 377 | 376 357 47492 378 | 377 6 44501 379 | 378 53 45572 380 | 379 267 46117 381 | 380 84 44208 382 | 381 16 44387 383 | 382 61 45341 384 | 383 141 45790 385 | 384 26 45317 386 | 385 204 46173 387 | 386 160 44973 388 | 387 178 44295 389 | 388 136 43429 390 | 389 69 43035 391 | 390 272 43374 392 | 391 64 41526 393 | 392 147 41906 394 | 393 69 41410 395 | 394 113 41736 396 | 395 62 41598 397 | 396 118 42000 398 | 397 10 41809 399 | 398 198 42772 400 | 399 124 41724 401 | 400 108 41471 402 | 401 4 41387 403 | 402 76 42404 404 | 403 52 42662 405 | 404 192 43183 406 | 405 85 42189 407 | 406 54 42349 408 | 407 163 42845 409 | 408 98 42167 410 | 409 156 42188 411 | 410 119 41594 412 | 411 15 41394 413 | 412 261 42294 414 | 413 11 40605 415 | 414 196 41530 416 | 415 13 40532 417 | 416 283 41434 418 | 417 92 39558 419 | 418 255 39638 420 | 419 100 38113 421 | 420 8 38113 422 | 421 180 39011 423 | 422 11 38228 424 | 423 178 39098 425 | 424 38 38333 426 | 425 145 38939 427 | 426 32 38497 428 | 427 1 39165 429 | 428 206 40148 430 | 429 14 39085 431 | 430 122 39945 432 | 431 72 39723 433 | 432 19 40005 434 | 433 25 40833 435 | 434 248 41615 436 | 435 0 40084 437 | 436 153 41090 438 | 437 37 40542 439 | 438 161 41193 440 | 439 48 40561 441 | 440 8 41098 442 | 441 68 42066 443 | 442 78 42408 444 | 443 649 42644 445 | 444 80 37113 446 | 445 43 37301 447 | 446 12 37843 448 | 447 70 38695 449 | 448 378 38989 450 | 449 4 36340 451 | 450 17 37233 452 | 451 6 38023 453 | 452 213 38938 454 | 453 31 37840 455 | 454 224 38506 456 | 455 23 37316 457 | 456 5 38050 458 | 457 20 38975 459 | 458 26 39772 460 | 459 270 40524 461 | 460 38 38817 462 | 461 278 39431 463 | 462 56 37693 464 | 463 66 38115 465 | 464 16 38444 466 | 465 43 39270 467 | 466 71 39840 468 | 467 277 40133 469 | 468 105 38374 470 | 469 34 38325 471 | 470 37 38970 472 | 471 136 39596 473 | 472 148 39236 474 | 473 178 38762 475 | 474 130 38004 476 | 475 42 37716 477 | 476 22 38273 478 | 477 196 39036 479 | 478 201 38098 480 | 479 19 37136 481 | 480 230 37905 482 | 481 4 36678 483 | 482 27 37579 484 | 483 154 38279 485 | 484 38 37759 486 | 485 16 38356 487 | 486 2 39180 488 | 487 49 40164 489 | 488 43 40685 490 | 489 30 41276 491 | 490 40 42013 492 | 491 120 42656 493 | 492 23 42440 494 | 493 159 43275 495 | 494 21 42633 496 | 495 48 43494 497 | 496 15 44070 498 | 497 132 45028 499 | 498 38 44664 500 | 499 180 45370 501 | 500 622 44460 502 | 501 92 38959 503 | 502 76 39037 504 | 503 147 39274 505 | 504 58 38809 506 | 505 33 39223 507 | 506 15 39893 508 | 507 111 40760 509 | 508 17 40646 510 | 509 2 41509 511 | 510 207 42551 512 | 511 7 41414 513 | 512 7 42400 514 | 513 13 43409 515 | 514 225 44375 516 | 515 55 42992 517 | 516 34 43484 518 | 517 244 44216 519 | 518 167 42633 520 | 519 101 41916 521 | 520 16 41905 522 | 521 12 42805 523 | 522 38 43769 524 | 523 46 44461 525 | 524 242 45072 526 | 525 70 43480 527 | 526 131 43811 528 | 527 1 43468 529 | 528 20 44559 530 | 529 595 45470 531 | 530 165 40117 532 | 531 17 39462 533 | 532 94 40299 534 | 533 43 40360 535 | 534 290 40946 536 | 535 6 39023 537 | 536 102 39962 538 | 537 8 39941 539 | 538 133 40882 540 | 539 163 40541 541 | 540 10 39899 542 | 541 90 40818 543 | 542 207 40921 544 | 543 18 39827 545 | 544 122 40662 546 | 545 135 40436 547 | 546 85 40079 548 | 547 357 40231 549 | 548 93 37697 550 | 549 42 37763 551 | 550 85 38321 552 | 551 143 38466 553 | 552 61 38049 554 | 553 211 38426 555 | 554 11 37361 556 | 555 42 38212 557 | 556 44 38777 558 | 557 166 39330 559 | 558 45 38678 560 | 559 74 39220 561 | 560 164 39478 562 | 561 19 38843 563 | 562 118 39647 564 | 563 53 39466 565 | 564 76 39938 566 | 565 102 40181 567 | 566 66 40160 568 | 567 19 40507 569 | 568 131 41346 570 | 569 24 41022 571 | 570 393 41818 572 | 571 166 38829 573 | 572 153 38185 574 | 573 175 37676 575 | 574 443 36967 576 | 575 58 33893 577 | 576 74 34255 578 | 577 71 34481 579 | 578 55 34735 580 | 579 20 35132 581 | 580 235 35850 582 | 581 5 34645 583 | 582 377 35487 584 | 583 42 33084 585 | 584 255 33573 586 | 585 8 32281 587 | 586 119 33041 588 | 587 31 32882 589 | 588 210 33461 590 | 589 11 32542 591 | 590 157 33283 592 | 591 107 32806 593 | 592 31 32747 594 | 593 65 33324 595 | 594 13 33620 596 | 595 164 34368 597 | 596 17 33815 598 | 597 86 34533 599 | 598 2 34655 600 | 599 208 35525 601 | 600 160 34567 602 | 601 0 34045 603 | 602 112 34900 604 | 603 89 34794 605 | 604 166 34891 606 | 605 108 34312 607 | 606 13 34242 608 | 607 49 35004 609 | 608 29 35458 610 | 609 86 36101 611 | 610 93 36229 612 | 611 21 36293 613 | 612 104 37026 614 | 613 92 36988 615 | 614 87 37062 616 | 615 92 37184 617 | 616 123 37259 618 | 617 43 37042 619 | 618 278 37580 620 | 619 95 35924 621 | 620 64 35969 622 | 621 145 36298 623 | 622 43 35886 624 | 623 162 36407 625 | 624 38 35840 626 | 625 69 36406 627 | 626 105 36692 628 | 627 69 36645 629 | 628 17 36933 630 | 629 117 37717 631 | 630 53 37555 632 | 631 1 38004 633 | 632 123 38958 634 | 633 16 38731 635 | 634 106 39563 636 | 635 83 39502 637 | 636 207 39672 638 | 637 156 38611 639 | 638 0 38067 640 | 639 16 39023 641 | 640 53 39861 642 | 641 106 40338 643 | 642 45 40276 644 | 643 10 40840 645 | 644 34 41781 646 | 645 405 42484 647 | 646 127 39328 648 | 647 1 39060 649 | 648 43 40041 650 | 649 113 40622 651 | 650 112 40488 652 | 651 203 40365 653 | 652 62 39326 654 | 653 5 39706 655 | 654 122 40671 656 | 655 172 40445 657 | 656 89 39714 658 | 657 48 39824 659 | 658 43 40351 660 | 659 147 40937 661 | 660 10 40452 662 | 661 158 41384 663 | 662 153 40780 664 | 663 170 40236 665 | 664 284 39529 666 | 665 54 37730 667 | 666 46 38171 668 | 667 166 38696 669 | 668 25 38054 670 | 669 48 38783 671 | 670 376 39296 672 | 671 97 36644 673 | 672 4 36671 674 | 673 39 37572 675 | 674 132 38156 676 | 675 37 37848 677 | 676 37 38456 678 | 677 63 39074 679 | 678 42 39441 680 | 679 112 40024 681 | 680 16 39902 682 | 681 2 40759 683 | 682 81 41782 684 | 683 102 41983 685 | 684 8 41961 686 | 685 29 42949 687 | 686 63 43727 688 | 687 122 44138 689 | 688 107 43892 690 | 689 171 43814 691 | 690 61 43033 692 | 691 138 43459 693 | 692 92 43042 694 | 693 25 43129 695 | 694 84 43955 696 | 695 80 44133 697 | 696 116 44357 698 | 697 286 44177 699 | 698 43 42145 700 | 699 235 42757 701 | 700 39 41320 702 | 701 40 41963 703 | 702 83 42605 704 | 703 48 42788 705 | 704 117 43354 706 | 705 37 43167 707 | 706 130 43860 708 | 707 457 43528 709 | 708 146 39768 710 | 709 4 39307 711 | 710 109 40273 712 | 711 254 40181 713 | 712 6 38644 714 | 713 22 39574 715 | 714 79 40363 716 | 715 15 40578 717 | 716 61 41460 718 | 717 450 41871 719 | 718 159 38321 720 | 719 7 37752 721 | 720 145 38651 722 | 721 27 38213 723 | 722 154 38925 724 | 723 41 38396 725 | 724 60 38973 726 | 725 39 39369 727 | 726 206 39981 728 | 727 11 38922 729 | 728 29 39808 730 | 729 24 40529 731 | 730 0 41316 732 | 731 91 42353 733 | 732 80 42449 734 | 733 84 42664 735 | 734 308 42837 736 | 735 22 40640 737 | 736 190 41450 738 | 737 103 40516 739 | 738 20 40485 740 | 739 97 41313 741 | 740 118 41344 742 | 741 189 41156 743 | 742 76 40239 744 | 743 138 40484 745 | 744 4 40096 746 | 745 8 41081 747 | 746 226 42049 748 | 747 69 40729 749 | 748 6 41049 750 | 749 125 42037 751 | 750 87 41771 752 | 751 192 41908 753 | 752 294 40943 754 | 753 44 38981 755 | 754 21 39537 756 | 755 52 40335 757 | 756 122 40828 758 | 757 7 40601 759 | 758 75 41568 760 | 759 327 41831 761 | 760 32 39495 762 | 761 73 40180 763 | 762 77 40455 764 | 763 171 40691 765 | 764 6 39966 766 | 765 66 40928 767 | 766 0 41281 768 | 767 248 42317 769 | 768 12 40761 770 | 769 21 41679 771 | 770 77 42520 772 | 771 171 42768 773 | 772 3 42006 774 | 773 5 43049 775 | 774 86 44096 776 | 775 9 44252 777 | 776 14 45283 778 | 777 64 46279 779 | 778 99 46702 780 | 779 23 46713 781 | 780 15 47632 782 | 781 18 48668 783 | 782 3 49688 784 | 783 9 50922 785 | 784 92 52108 786 | 785 32 52213 787 | 786 85 53119 788 | 787 30 53321 789 | 788 45 54274 790 | 789 643 55034 791 | 790 21 47969 792 | 791 102 48937 793 | 792 87 48912 794 | 793 146 49073 795 | 794 58 48504 796 | 795 104 49022 797 | 796 23 48972 798 | 797 61 49935 799 | 798 82 50430 800 | 799 44 50660 801 | 800 111 51383 802 | 801 656 51240 803 | 802 10 44516 804 | 803 108 45541 805 | 804 4 45448 806 | 805 118 46565 807 | 806 136 46353 808 | 807 20 45932 809 | 808 7 46871 810 | 809 37 47987 811 | 810 52 48758 812 | 811 26 49354 813 | 812 66 50287 814 | 813 59 50721 815 | 814 38 51250 816 | 815 327 52060 817 | 816 110 49153 818 | 817 161 49028 819 | 818 16 48276 820 | 819 262 49313 821 | 820 152 47331 822 | 821 39 46712 823 | 822 70 47438 824 | 823 31 47799 825 | 824 507 48641 826 | 825 195 43880 827 | 826 175 42837 828 | 827 18 42031 829 | 828 27 42912 830 | 829 36 43712 831 | 830 67 44425 832 | 831 182 44797 833 | 832 35 43876 834 | 833 88 44603 835 | 834 60 44738 836 | 835 43 45193 837 | 836 23 45849 838 | 837 13 46751 839 | 838 79 47792 840 | 839 34 48046 841 | 840 57 48855 842 | 841 221 49389 843 | 842 69 47899 844 | 843 186 48276 845 | 844 27 47236 846 | 845 144 48116 847 | 846 145 47583 848 | 847 191 47044 849 | 848 65 45972 850 | 849 206 46381 851 | 850 130 45153 852 | 851 19 44811 853 | 852 14 45739 854 | 853 16 46745 855 | 854 58 47749 856 | 855 13 48259 857 | 856 419 49333 858 | 857 24 45506 859 | 858 35 46390 860 | 859 24 47159 861 | 860 78 48075 862 | 861 152 48343 863 | 862 614 47710 864 | 863 149 41891 865 | 864 31 41374 866 | 865 55 42103 867 | 866 8 42585 868 | 867 65 43588 869 | 868 80 43975 870 | 869 91 44198 871 | 870 133 44298 872 | 871 249 43929 873 | 872 53 42303 874 | 873 16 42809 875 | 874 125 43729 876 | 875 101 43453 877 | 876 199 43442 878 | 877 52 42366 879 | 878 56 42883 880 | 879 34 43363 881 | 880 27 44093 882 | 881 11 44915 883 | 882 64 45938 884 | 883 48 46358 885 | 884 30 46972 886 | 885 204 47811 887 | 886 67 46568 888 | 887 25 46958 889 | 888 1 47858 890 | 889 149 49059 891 | 890 59 48454 892 | 891 84 48959 893 | 892 67 49157 894 | 893 59 49569 895 | 894 37 50086 896 | 895 148 50891 897 | 896 198 50276 898 | 897 50 49044 899 | 898 18 49668 900 | 899 47 50709 901 | 900 299 51393 902 | 901 221 48868 903 | 902 28 47394 904 | 903 43 48265 905 | 904 463 48966 906 | 905 252 44668 907 | 906 258 42982 908 | 907 175 41297 909 | 908 34 40520 910 | 909 39 41202 911 | 910 10 41843 912 | 911 75 42807 913 | 912 58 43078 914 | 913 80 43538 915 | 914 204 43758 916 | 915 111 42621 917 | 916 44 42502 918 | 917 36 43108 919 | 918 206 43812 920 | 919 47 42652 921 | 920 546 43228 922 | 921 25 38614 923 | 922 190 39354 924 | 923 51 38467 925 | 924 93 38947 926 | 925 11 39016 927 | 926 11 39904 928 | 927 54 40813 929 | 928 61 41291 930 | 929 28 41700 931 | 930 137 42467 932 | 931 45 42071 933 | 932 8 42660 934 | 933 302 43665 935 | 934 110 41488 936 | 935 5 41383 937 | 936 189 42389 938 | 937 86 41444 939 | 938 215 41591 940 | 939 12 40397 941 | 940 223 41306 942 | 941 337 40039 943 | 942 92 37708 944 | 943 34 37784 945 | 944 64 38420 946 | 945 61 38771 947 | 946 300 39155 948 | 947 165 37222 949 | 948 130 36614 950 | 949 146 36337 951 | 950 18 35916 952 | 951 128 36669 953 | 952 3 36410 954 | 953 4 37314 955 | 954 17 38231 956 | 955 103 39042 957 | 956 16 39012 958 | 957 31 39850 959 | 958 6 40552 960 | 959 96 41528 961 | 960 75 41570 962 | 961 164 41833 963 | 962 328 41160 964 | 963 87 38852 965 | 964 127 38980 966 | 965 91 38714 967 | 966 101 38802 968 | 967 80 38792 969 | 968 19 38988 970 | 969 73 39795 971 | 970 114 40067 972 | 971 6 39925 973 | 972 68 40886 974 | 973 37 41218 975 | 974 47 41880 976 | 975 404 42445 977 | 976 148 39302 978 | 977 37 38827 979 | 978 162 39451 980 | 979 75 38836 981 | 980 12 39082 982 | 981 583 39962 983 | 982 30 35364 984 | 983 15 35996 985 | 984 3 36779 986 | 985 58 37693 987 | 986 160 38095 988 | 987 20 37520 989 | 988 127 38287 990 | 989 201 38026 991 | 990 150 37066 992 | 991 26 36599 993 | 992 103 37291 994 | 993 134 37262 995 | 994 173 36942 996 | 995 46 36265 997 | 996 43 36764 998 | 997 64 37298 999 | 998 316 37639 1000 | 999 71 35636 1001 | -------------------------------------------------------------------------------- /test_DAs_example/blocks_LWMA1_.txt: -------------------------------------------------------------------------------- 1 | 0 20 40001 2 | 1 152 40001 3 | 2 67 40001 4 | 3 91 40001 5 | 4 51 40001 6 | 5 122 40001 7 | 6 51 40001 8 | 7 431 40001 9 | 8 0 40001 10 | 9 41 40001 11 | 10 152 40001 12 | 11 31 40001 13 | 12 241 40001 14 | 13 75 40001 15 | 14 7 40001 16 | 15 65 40001 17 | 16 163 40001 18 | 17 118 40001 19 | 18 248 40001 20 | 19 29 40001 21 | 20 154 40001 22 | 21 109 40001 23 | 22 4 40001 24 | 23 96 40001 25 | 24 28 40001 26 | 25 9 40001 27 | 26 31 40001 28 | 27 88 40001 29 | 28 0 40001 30 | 29 165 40001 31 | 30 259 40001 32 | 31 20 40001 33 | 32 89 40001 34 | 33 53 40001 35 | 34 156 40001 36 | 35 526 40001 37 | 36 13 40001 38 | 37 21 40001 39 | 38 398 40001 40 | 39 13 40001 41 | 40 76 40001 42 | 41 144 40001 43 | 42 50 40001 44 | 43 59 40001 45 | 44 34 40001 46 | 45 63 40001 47 | 46 262 40001 48 | 47 10 40001 49 | 48 17 40001 50 | 49 185 40001 51 | 50 43 40001 52 | 51 295 40001 53 | 52 71 40001 54 | 53 50 40001 55 | 54 83 40001 56 | 55 143 40001 57 | 56 66 40001 58 | 57 182 40001 59 | 58 42 40001 60 | 59 67 40001 61 | 60 97 37200 62 | 61 29 37300 63 | 62 108 38200 64 | 63 25 38100 65 | 64 114 39000 66 | 65 61 38900 67 | 66 26 39500 68 | 67 170 40500 69 | 68 108 39600 70 | 69 23 39500 71 | 70 281 40500 72 | 71 21 38200 73 | 72 372 39200 74 | 73 36 36000 75 | 74 95 36700 76 | 75 28 36800 77 | 76 152 37700 78 | 77 79 37100 79 | 78 42 37300 80 | 79 312 38000 81 | 80 48 35600 82 | 81 116 36200 83 | 82 217 36000 84 | 83 229 34700 85 | 84 10 33500 86 | 85 55 34300 87 | 86 101 34800 88 | 87 81 34800 89 | 88 33 35100 90 | 89 3 35800 91 | 90 9 37000 92 | 91 321 38200 93 | 92 33 35600 94 | 93 137 36400 95 | 94 20 36100 96 | 95 0 37000 97 | 96 27 38300 98 | 97 56 39200 99 | 98 168 39800 100 | 99 238 38900 101 | 100 97 37100 102 | 101 129 37100 103 | 102 11 36700 104 | 103 93 37800 105 | 104 8 37800 106 | 105 139 39000 107 | 106 219 38400 108 | 107 201 36900 109 | 108 36 35700 110 | 109 28 36400 111 | 110 177 37300 112 | 111 127 36300 113 | 112 410 36000 114 | 113 116 32700 115 | 114 93 32600 116 | 115 9 32600 117 | 116 22 33400 118 | 117 39 34200 119 | 118 111 34800 120 | 119 70 34600 121 | 120 46 34900 122 | 121 152 35500 123 | 122 64 34900 124 | 123 113 35300 125 | 124 80 35200 126 | 125 114 35400 127 | 126 113 35200 128 | 127 165 35100 129 | 128 15 34400 130 | 129 68 35300 131 | 130 128 35700 132 | 131 147 35300 133 | 132 30 34800 134 | 133 186 35600 135 | 134 50 34600 136 | 135 42 35200 137 | 136 91 35900 138 | 137 37 36000 139 | 138 28 36700 140 | 139 344 37600 141 | 140 80 34700 142 | 141 11 34900 143 | 142 117 35900 144 | 143 80 35700 145 | 144 191 36000 146 | 145 46 34900 147 | 146 108 35500 148 | 147 11 35400 149 | 148 140 36500 150 | 149 49 36000 151 | 150 103 36600 152 | 151 20 36500 153 | 152 26 37500 154 | 153 21 38500 155 | 154 253 39600 156 | 155 174 37500 157 | 156 238 36500 158 | 157 91 34900 159 | 158 103 35000 160 | 159 8 34900 161 | 160 18 36000 162 | 161 56 37000 163 | 162 216 37500 164 | 163 59 36100 165 | 164 36 36600 166 | 165 38 37400 167 | 166 192 38200 168 | 167 324 36900 169 | 168 96 34300 170 | 169 12 34300 171 | 170 255 35300 172 | 171 27 33600 173 | 172 25 34400 174 | 173 98 35200 175 | 174 181 35200 176 | 175 12 34300 177 | 176 7 35200 178 | 177 78 36300 179 | 178 27 36600 180 | 179 193 37500 181 | 180 0 36300 182 | 181 254 37600 183 | 182 6 35700 184 | 183 26 36800 185 | 184 13 37700 186 | 185 501 38900 187 | 186 8 34000 188 | 187 5 35000 189 | 188 92 36100 190 | 189 140 36200 191 | 190 14 35700 192 | 191 164 36700 193 | 192 25 35900 194 | 193 4 36800 195 | 194 36 38100 196 | 195 83 38900 197 | 196 48 39100 198 | 197 20 39900 199 | 198 80 41000 200 | 199 6 41300 201 | 200 41 42800 202 | 201 73 43826 203 | 202 46 44300 204 | 203 96 45228 205 | 204 20 45325 206 | 205 28 46800 207 | 206 149 48225 208 | 207 34 47200 209 | 208 191 48400 210 | 209 398 46600 211 | 210 13 41600 212 | 211 171 42900 213 | 212 241 41800 214 | 213 21 39800 215 | 214 5 40900 216 | 215 3 42300 217 | 216 23 43800 218 | 217 17 45100 219 | 218 11 46600 220 | 219 215 48200 221 | 220 308 46100 222 | 221 29 42600 223 | 222 119 43700 224 | 223 20 43400 225 | 224 38 44700 226 | 225 467 45700 227 | 226 139 40100 228 | 227 113 39600 229 | 228 18 39400 230 | 229 35 40500 231 | 230 142 41400 232 | 231 68 40800 233 | 232 159 41200 234 | 233 9 40400 235 | 234 6 41600 236 | 235 326 43000 237 | 236 37 39800 238 | 237 151 40700 239 | 238 22 40000 240 | 239 11 41000 241 | 240 143 42200 242 | 241 41 41600 243 | 242 249 42500 244 | 243 104 40400 245 | 244 74 40400 246 | 245 310 40700 247 | 246 107 38100 248 | 247 118 38000 249 | 248 9 37800 250 | 249 144 38900 251 | 250 75 38400 252 | 251 2 38600 253 | 252 1 39800 254 | 253 24 41100 255 | 254 23 42100 256 | 255 40 43200 257 | 256 23 44100 258 | 257 344 45300 259 | 258 536 41700 260 | 259 40 36500 261 | 260 26 37200 262 | 261 128 38000 263 | 262 177 37600 264 | 263 3 36800 265 | 264 170 37800 266 | 265 225 37000 267 | 266 402 35700 268 | 267 12 32800 269 | 268 97 33600 270 | 269 17 33600 271 | 270 24 34300 272 | 271 49 35100 273 | 272 65 35600 274 | 273 15 35900 275 | 274 7 36900 276 | 275 3 37900 277 | 276 11 39100 278 | 277 140 40300 279 | 278 138 39729 280 | 279 22 39200 281 | 280 74 40227 282 | 281 35 40525 283 | 282 27 41400 284 | 283 83 42525 285 | 284 75 42700 286 | 285 60 43100 287 | 286 210 43700 288 | 287 126 42000 289 | 288 50 41700 290 | 289 199 42400 291 | 290 6 40900 292 | 291 106 42300 293 | 292 94 42200 294 | 293 255 42300 295 | 294 111 40100 296 | 295 55 39900 297 | 296 175 40500 298 | 297 106 39500 299 | 298 83 39400 300 | 299 71 39700 301 | 300 190 40000 302 | 301 168 38900 303 | 302 269 38000 304 | 303 41 36100 305 | 304 353 36700 306 | 305 1 34000 307 | 306 46 35000 308 | 307 8 35600 309 | 308 133 36600 310 | 309 16 36200 311 | 310 31 37200 312 | 311 32 38000 313 | 312 60 38900 314 | 313 72 39400 315 | 314 177 39700 316 | 315 338 38700 317 | 316 274 35900 318 | 317 98 34100 319 | 318 94 34100 320 | 319 35 34100 321 | 320 66 34800 322 | 321 115 35100 323 | 322 307 34900 324 | 323 10 32900 325 | 324 86 33700 326 | 325 86 33900 327 | 326 67 34000 328 | 327 53 34300 329 | 328 31 34800 330 | 329 11 35500 331 | 330 342 36500 332 | 331 13 33900 333 | 332 250 34800 334 | 333 208 33300 335 | 334 59 32300 336 | 335 208 32600 337 | 336 214 31700 338 | 337 207 30700 339 | 338 0 29800 340 | 339 91 30600 341 | 340 7 30700 342 | 341 28 31500 343 | 342 371 32100 344 | 343 61 29800 345 | 344 129 30000 346 | 345 129 29800 347 | 346 55 29500 348 | 347 111 29900 349 | 348 53 29800 350 | 349 16 30100 351 | 350 9 30800 352 | 351 3 31700 353 | 352 218 32600 354 | 353 6 31400 355 | 354 14 32300 356 | 355 70 33200 357 | 356 107 33500 358 | 357 105 33400 359 | 358 3 33300 360 | 359 2 34400 361 | 360 162 35600 362 | 361 1 34800 363 | 362 17 36000 364 | 363 141 37100 365 | 364 247 36600 366 | 365 103 34800 367 | 366 106 34700 368 | 367 174 34600 369 | 368 83 33800 370 | 369 106 34000 371 | 370 70 33900 372 | 371 110 34200 373 | 372 1 34100 374 | 373 71 35300 375 | 374 30 35600 376 | 375 166 36500 377 | 376 42 35700 378 | 377 154 36400 379 | 378 84 35700 380 | 379 197 35900 381 | 380 1 34700 382 | 381 116 35900 383 | 382 241 35700 384 | 383 250 34000 385 | 384 134 32400 386 | 385 8 32000 387 | 386 60 33000 388 | 387 63 33400 389 | 388 145 33800 390 | 389 68 33300 391 | 390 68 33700 392 | 391 92 34100 393 | 392 72 34100 394 | 393 113 34500 395 | 394 50 34300 396 | 395 61 34900 397 | 396 49 35400 398 | 397 14 36000 399 | 398 43 37100 400 | 399 5 37900 401 | 400 196 39200 402 | 401 266 37800 403 | 402 135 35600 404 | 403 188 35200 405 | 404 58 34100 406 | 405 6 34600 407 | 406 113 35700 408 | 407 185 35500 409 | 408 186 34500 410 | 409 34 33500 411 | 410 123 34200 412 | 411 195 33900 413 | 412 5 32900 414 | 413 101 33900 415 | 414 159 33900 416 | 415 169 33200 417 | 416 131 32500 418 | 417 37 32200 419 | 418 42 32800 420 | 419 81 33400 421 | 420 222 33600 422 | 421 258 32400 423 | 422 25 30800 424 | 423 55 31500 425 | 424 93 32000 426 | 425 103 32000 427 | 426 0 32000 428 | 427 10 33000 429 | 428 177 34000 430 | 429 40 33100 431 | 430 15 33700 432 | 431 117 34700 433 | 432 34 34500 434 | 433 269 35300 435 | 434 81 33300 436 | 435 145 33500 437 | 436 1 33000 438 | 437 35 34100 439 | 438 104 34800 440 | 439 205 34800 441 | 440 95 33600 442 | 441 52 33600 443 | 442 140 34200 444 | 443 112 33700 445 | 444 14 33600 446 | 445 91 34500 447 | 446 81 34600 448 | 447 289 34800 449 | 448 2 32700 450 | 449 0 33800 451 | 450 76 34900 452 | 451 270 35200 453 | 452 289 33200 454 | 453 158 31300 455 | 454 47 30800 456 | 455 84 31300 457 | 456 70 31400 458 | 457 50 31700 459 | 458 120 32200 460 | 459 50 31900 461 | 460 156 32400 462 | 461 232 31800 463 | 462 18 30600 464 | 463 15 31300 465 | 464 184 32200 466 | 465 140 31300 467 | 466 0 30900 468 | 467 201 31900 469 | 468 15 30900 470 | 469 96 31700 471 | 470 138 31700 472 | 471 151 31300 473 | 472 14 30800 474 | 473 79 31700 475 | 474 71 31900 476 | 475 32 32200 477 | 476 27 32900 478 | 477 19 33700 479 | 478 30 34600 480 | 479 33 35500 481 | 480 21 36400 482 | 481 200 37400 483 | 482 27 36100 484 | 483 18 37000 485 | 484 132 38200 486 | 485 120 37700 487 | 486 172 37400 488 | 487 38 36400 489 | 488 19 37200 490 | 489 91 38300 491 | 490 161 38500 492 | 491 4 37600 493 | 492 80 39000 494 | 493 2 39300 495 | 494 26 40800 496 | 495 65 42000 497 | 496 207 42600 498 | 497 27 40800 499 | 498 50 42000 500 | 499 3 42800 501 | 500 318 44600 502 | 501 23 40800 503 | 502 233 42000 504 | 503 11 39900 505 | 504 189 41300 506 | 505 66 39900 507 | 506 59 40400 508 | 507 14 41000 509 | 508 123 42400 510 | 509 142 42000 511 | 510 59 41300 512 | 511 243 42000 513 | 512 98 39800 514 | 513 121 39800 515 | 514 8 39500 516 | 515 48 40800 517 | 516 57 41600 518 | 517 273 42200 519 | 518 126 39600 520 | 519 95 39300 521 | 520 76 39300 522 | 521 75 39600 523 | 522 110 40000 524 | 523 11 39800 525 | 524 83 41000 526 | 525 236 41300 527 | 526 82 39300 528 | 527 53 39600 529 | 528 14 40200 530 | 529 308 41400 531 | 530 57 38500 532 | 531 7 39100 533 | 532 17 40300 534 | 533 43 41500 535 | 534 22 42300 536 | 535 723 43400 537 | 536 162 36800 538 | 537 91 36100 539 | 538 12 36200 540 | 539 67 37200 541 | 540 44 37500 542 | 541 79 38200 543 | 542 52 38500 544 | 543 0 39100 545 | 544 31 40400 546 | 545 72 41300 547 | 546 50 41700 548 | 547 126 42400 549 | 548 58 42000 550 | 549 11 42600 551 | 550 41 44000 552 | 551 397 44900 553 | 552 103 40500 554 | 553 425 40500 555 | 554 7 36500 556 | 555 20 37600 557 | 556 207 38500 558 | 557 95 37200 559 | 558 88 37300 560 | 559 1 37400 561 | 560 86 38600 562 | 561 6 38700 563 | 562 10 39900 564 | 563 142 41100 565 | 564 53 40500 566 | 565 35 41100 567 | 566 145 42100 568 | 567 27 41400 569 | 568 276 42400 570 | 569 208 40000 571 | 570 135 38600 572 | 571 34 38100 573 | 572 56 38900 574 | 573 18 39500 575 | 574 38 40600 576 | 575 128 41400 577 | 576 116 41000 578 | 577 122 40800 579 | 578 52 40400 580 | 579 11 41100 581 | 580 173 42400 582 | 581 133 41300 583 | 582 8 40800 584 | 583 61 42100 585 | 584 132 42700 586 | 585 17 42200 587 | 586 111 43400 588 | 587 97 43300 589 | 588 172 43300 590 | 589 31 42200 591 | 590 102 43200 592 | 591 53 43200 593 | 592 42 43900 594 | 593 139 44800 595 | 594 16 44200 596 | 595 148 45600 597 | 596 0 44700 598 | 597 253 46400 599 | 598 366 43800 600 | 599 262 40100 601 | 600 136 38100 602 | 601 119 37600 603 | 602 24 37400 604 | 603 21 38300 605 | 604 219 39200 606 | 605 75 37800 607 | 606 233 38100 608 | 607 77 36600 609 | 608 26 36800 610 | 609 36 37600 611 | 610 109 38400 612 | 611 5 38300 613 | 612 4 39400 614 | 613 144 40700 615 | 614 68 40100 616 | 615 143 40500 617 | 616 241 39900 618 | 617 14 38100 619 | 618 42 39200 620 | 619 122 39900 621 | 620 49 39600 622 | 621 335 40200 623 | 622 9 37400 624 | 623 120 38400 625 | 624 107 38200 626 | 625 25 38100 627 | 626 56 39000 628 | 627 111 39500 629 | 628 12 39400 630 | 629 52 40500 631 | 630 95 41200 632 | 631 221 41200 633 | 632 13 39600 634 | 633 185 40700 635 | 634 8 39600 636 | 635 2 40800 637 | 636 51 42200 638 | 637 0 42900 639 | 638 99 44400 640 | 639 111 44400 641 | 640 42 44200 642 | 641 35 45200 643 | 642 134 46300 644 | 643 52 45700 645 | 644 3 46500 646 | 645 24 48225 647 | 646 16 49700 648 | 647 360 51400 649 | 648 44 46400 650 | 649 76 47400 651 | 650 124 47800 652 | 651 148 47400 653 | 652 67 46600 654 | 653 159 47100 655 | 654 64 46100 656 | 655 14 46700 657 | 656 454 48200 658 | 657 216 42500 659 | 658 161 40900 660 | 659 10 40100 661 | 660 33 41200 662 | 661 53 42200 663 | 662 430 42800 664 | 663 49 38500 665 | 664 26 39100 666 | 665 7 40000 667 | 666 56 41200 668 | 667 102 41800 669 | 668 7 41800 670 | 669 1 43100 671 | 670 33 44500 672 | 671 56 45600 673 | 672 38 46300 674 | 673 342 47300 675 | 674 155 43400 676 | 675 40 42700 677 | 676 14 43500 678 | 677 243 44800 679 | 678 31 42700 680 | 679 64 43600 681 | 680 49 44200 682 | 681 257 44900 683 | 682 18 42600 684 | 683 177 43800 685 | 684 109 42700 686 | 685 95 42500 687 | 686 267 42600 688 | 687 97 40400 689 | 688 62 40400 690 | 689 127 40900 691 | 690 128 40600 692 | 691 134 40200 693 | 692 11 39800 694 | 693 122 40900 695 | 694 15 40600 696 | 695 44 41700 697 | 696 155 42400 698 | 697 86 41700 699 | 698 379 41900 700 | 699 175 38500 701 | 700 80 37600 702 | 701 24 37800 703 | 702 25 38700 704 | 703 194 39500 705 | 704 18 38400 706 | 705 456 39400 707 | 706 16 35500 708 | 707 32 36300 709 | 708 193 37000 710 | 709 49 36000 711 | 710 127 36500 712 | 711 24 36200 713 | 712 36 37000 714 | 713 232 37700 715 | 714 3 36200 716 | 715 317 37200 717 | 716 61 34900 718 | 717 281 35300 719 | 718 73 33500 720 | 719 291 33800 721 | 720 89 32100 722 | 721 29 32200 723 | 722 100 32800 724 | 723 125 32800 725 | 724 0 32500 726 | 725 156 33400 727 | 726 11 32900 728 | 727 124 33800 729 | 728 44 33500 730 | 729 9 34000 731 | 730 82 35000 732 | 731 367 35100 733 | 732 33 32500 734 | 733 151 33100 735 | 734 152 32600 736 | 735 57 32100 737 | 736 143 32500 738 | 737 1 32100 739 | 738 140 33000 740 | 739 99 32600 741 | 740 47 32600 742 | 741 69 33100 743 | 742 240 33300 744 | 743 117 32000 745 | 744 52 31800 746 | 745 334 32200 747 | 746 100 30100 748 | 747 366 30100 749 | 748 201 28000 750 | 749 26 27300 751 | 750 225 27800 752 | 751 64 26900 753 | 752 66 27100 754 | 753 75 27300 755 | 754 34 27500 756 | 755 69 28000 757 | 756 50 28200 758 | 757 54 28600 759 | 758 37 28900 760 | 759 188 29400 761 | 760 72 28700 762 | 761 0 28900 763 | 762 177 29800 764 | 763 267 29100 765 | 764 131 27700 766 | 765 95 27400 767 | 766 46 27400 768 | 767 79 27900 769 | 768 103 28000 770 | 769 25 28000 771 | 770 34 28600 772 | 771 17 29200 773 | 772 157 29900 774 | 773 29 29400 775 | 774 322 30000 776 | 775 31 28000 777 | 776 26 28600 778 | 777 94 29300 779 | 778 32 29300 780 | 779 22 30000 781 | 780 3 30800 782 | 781 30 31800 783 | 782 168 32600 784 | 783 88 31800 785 | 784 332 31900 786 | 785 23 29500 787 | 786 27 30300 788 | 787 53 31000 789 | 788 127 31500 790 | 789 94 31200 791 | 790 42 31300 792 | 791 46 31900 793 | 792 101 32500 794 | 793 32 32500 795 | 794 44 33300 796 | 795 70 34000 797 | 796 7 34400 798 | 797 209 35700 799 | 798 23 34200 800 | 799 170 35200 801 | 800 20 34300 802 | 801 87 35400 803 | 802 6 35600 804 | 803 8 36900 805 | 804 305 38400 806 | 805 5 35400 807 | 806 55 36700 808 | 807 29 37400 809 | 808 146 38400 810 | 809 156 37700 811 | 810 69 36800 812 | 811 163 37200 813 | 812 12 36300 814 | 813 48 37500 815 | 814 66 38300 816 | 815 11 38700 817 | 816 112 40100 818 | 817 161 39900 819 | 818 91 38900 820 | 819 63 39000 821 | 820 69 39600 822 | 821 3 40000 823 | 822 259 41600 824 | 823 23 39000 825 | 824 45 40200 826 | 825 41 41000 827 | 826 159 42000 828 | 827 60 41000 829 | 828 28 41600 830 | 829 2 42700 831 | 830 39 44400 832 | 831 67 45600 833 | 832 122 46200 834 | 833 53 45700 835 | 834 90 46600 836 | 835 110 46700 837 | 836 65 46400 838 | 837 586 47100 839 | 838 211 39100 840 | 839 22 37600 841 | 840 157 38600 842 | 841 50 37900 843 | 842 3 38500 844 | 843 267 39800 845 | 844 160 37600 846 | 845 71 36900 847 | 846 4 37200 848 | 847 65 38400 849 | 848 40 38900 850 | 849 105 39600 851 | 850 353 39600 852 | 851 170 36400 853 | 852 104 35700 854 | 853 196 35600 855 | 854 5 34600 856 | 855 4 35600 857 | 856 23 36700 858 | 857 175 37600 859 | 858 63 36700 860 | 859 57 37200 861 | 860 192 37700 862 | 861 146 36600 863 | 862 214 36100 864 | 863 64 34900 865 | 864 16 35300 866 | 865 53 36200 867 | 866 13 36700 868 | 867 87 37700 869 | 868 54 37900 870 | 869 2 38400 871 | 870 168 39700 872 | 871 27 38800 873 | 872 56 39700 874 | 873 196 40300 875 | 874 18 39100 876 | 875 29 40100 877 | 876 52 41100 878 | 877 26 41800 879 | 878 148 42900 880 | 879 141 42200 881 | 880 217 41600 882 | 881 127 39900 883 | 882 86 39600 884 | 883 82 39700 885 | 884 94 40000 886 | 885 104 40000 887 | 886 96 40000 888 | 887 179 40000 889 | 888 66 39000 890 | 889 12 39400 891 | 890 35 40600 892 | 891 46 41500 893 | 892 262 42300 894 | 893 22 39900 895 | 894 222 41000 896 | 895 9 39300 897 | 896 105 40500 898 | 897 2 40400 899 | 898 123 41800 900 | 899 9 41400 901 | 900 4 42800 902 | 901 78 44300 903 | 902 44 44700 904 | 903 74 45600 905 | 904 52 46100 906 | 905 82 46900 907 | 906 156 47300 908 | 907 166 46200 909 | 908 145 45100 910 | 909 73 44300 911 | 910 78 44700 912 | 911 103 45100 913 | 912 26 45000 914 | 913 10 46300 915 | 914 21 47900 916 | 915 209 49300 917 | 916 156 47200 918 | 917 178 46200 919 | 918 118 44900 920 | 919 28 44600 921 | 920 267 45800 922 | 921 311 43100 923 | 922 89 40200 924 | 923 172 40300 925 | 924 15 39400 926 | 925 65 40500 927 | 926 244 40900 928 | 927 152 39100 929 | 928 66 38500 930 | 929 89 38900 931 | 930 203 39000 932 | 931 73 37800 933 | 932 11 38100 934 | 933 22 39200 935 | 934 1 40100 936 | 935 67 41400 937 | 936 129 41800 938 | 937 144 41400 939 | 938 28 40800 940 | 939 59 41800 941 | 940 28 42400 942 | 941 147 43400 943 | 942 3 42700 944 | 943 64 44100 945 | 944 198 44700 946 | 945 24 43200 947 | 946 33 44300 948 | 947 94 45300 949 | 948 501 45400 950 | 949 243 39800 951 | 950 150 38100 952 | 951 207 37500 953 | 952 177 36400 954 | 953 43 35600 955 | 954 112 36200 956 | 955 0 36100 957 | 956 181 37100 958 | 957 87 36300 959 | 958 143 36400 960 | 959 39 36000 961 | 960 22 36600 962 | 961 103 37400 963 | 962 210 37400 964 | 963 36 36200 965 | 964 191 36900 966 | 965 218 35900 967 | 966 143 34700 968 | 967 74 34200 969 | 968 94 34500 970 | 969 4 34500 971 | 970 1 35400 972 | 971 211 36500 973 | 972 139 35300 974 | 973 4 34900 975 | 974 38 35900 976 | 975 89 36500 977 | 976 26 36600 978 | 977 87 37400 979 | 978 19 37500 980 | 979 26 38500 981 | 980 72 39500 982 | 981 419 39800 983 | 982 12 35900 984 | 983 43 36900 985 | 984 43 37600 986 | 985 177 38300 987 | 986 44 37300 988 | 987 24 38000 989 | 988 60 39000 990 | 989 18 39500 991 | 990 88 40600 992 | 991 117 40800 993 | 992 188 40600 994 | 993 63 39300 995 | 994 1 39800 996 | 995 130 41200 997 | 996 50 40800 998 | 997 180 41500 999 | 998 36 40400 1000 | 999 5 41300 1001 | -------------------------------------------------------------------------------- /test_DAs_example/blocks_LWMA4_.txt: -------------------------------------------------------------------------------- 1 | 0 208 40001 2 | 1 38 40001 3 | 2 313 40001 4 | 3 111 40001 5 | 4 46 40001 6 | 5 35 40001 7 | 6 35 40001 8 | 7 98 40001 9 | 8 239 40001 10 | 9 66 40001 11 | 10 201 40001 12 | 11 56 40001 13 | 12 64 40001 14 | 13 869 40001 15 | 14 164 40001 16 | 15 184 40001 17 | 16 185 40001 18 | 17 20 40001 19 | 18 7 40001 20 | 19 36 40001 21 | 20 45 40001 22 | 21 105 40001 23 | 22 465 40001 24 | 23 23 40001 25 | 24 13 40001 26 | 25 0 40001 27 | 26 260 40001 28 | 27 73 40001 29 | 28 178 40001 30 | 29 25 40001 31 | 30 85 40001 32 | 31 122 40001 33 | 32 79 40001 34 | 33 75 40001 35 | 34 47 40001 36 | 35 253 40001 37 | 36 178 40001 38 | 37 112 40001 39 | 38 79 40001 40 | 39 135 40001 41 | 40 17 40001 42 | 41 53 40001 43 | 42 18 40001 44 | 43 101 40001 45 | 44 53 40001 46 | 45 382 40001 47 | 46 65 40001 48 | 47 29 40001 49 | 48 18 40001 50 | 49 79 40001 51 | 50 82 40001 52 | 51 75 40001 53 | 52 22 40001 54 | 53 80 40001 55 | 54 133 40001 56 | 55 39 40001 57 | 56 82 40001 58 | 57 108 40001 59 | 58 188 40001 60 | 59 49 40001 61 | 60 214 38700 62 | 61 51 37400 63 | 62 10 38100 64 | 63 60 41900 65 | 64 304 40000 66 | 65 60 37500 67 | 66 42 38000 68 | 67 149 38800 69 | 68 15 38300 70 | 69 248 41800 71 | 70 70 37800 72 | 71 36 38200 73 | 72 37 39100 74 | 73 119 40000 75 | 74 304 39900 76 | 75 123 37300 77 | 76 104 37000 78 | 77 52 36900 79 | 78 459 37500 80 | 79 154 33600 81 | 80 320 33100 82 | 81 63 31100 83 | 82 36 31400 84 | 83 15 32000 85 | 84 10 35200 86 | 85 10 38700 87 | 86 72 40800 88 | 87 96 34900 89 | 88 127 35000 90 | 89 38 34600 91 | 90 5 35300 92 | 91 104 38800 93 | 92 137 36300 94 | 93 15 35800 95 | 94 10 39400 96 | 95 132 40300 97 | 96 95 37500 98 | 97 57 37500 99 | 98 69 38000 100 | 99 151 38300 101 | 100 42 37600 102 | 101 4 38300 103 | 102 11 40000 104 | 103 118 40800 105 | 104 136 40500 106 | 105 6 39900 107 | 106 56 41300 108 | 107 56 41800 109 | 108 72 42400 110 | 109 57 42800 111 | 110 32 43500 112 | 111 71 44600 113 | 112 404 45100 114 | 113 99 40200 115 | 114 106 40200 116 | 115 8 40100 117 | 116 137 41400 118 | 117 17 40900 119 | 118 147 42100 120 | 119 72 41400 121 | 120 76 41800 122 | 121 178 42200 123 | 122 18 41000 124 | 123 37 42200 125 | 124 414 43200 126 | 125 29 38600 127 | 126 3 39600 128 | 127 98 40900 129 | 128 131 41000 130 | 129 80 40500 131 | 130 54 40800 132 | 131 9 41400 133 | 132 95 42800 134 | 133 79 42900 135 | 134 161 43200 136 | 135 42 42200 137 | 136 94 43100 138 | 137 24 43200 139 | 138 154 44400 140 | 139 8 43500 141 | 140 107 45000 142 | 141 1 44800 143 | 142 93 46400 144 | 143 103 46400 145 | 144 117 46300 146 | 145 26 45900 147 | 146 130 47000 148 | 147 54 46300 149 | 148 53 47100 150 | 149 66 47900 151 | 150 256 48400 152 | 151 245 45600 153 | 152 29 43200 154 | 153 4 44200 155 | 154 23 45700 156 | 155 28 46900 157 | 156 43 48100 158 | 157 29 49100 159 | 158 229 50500 160 | 159 3 47900 161 | 160 178 49700 162 | 161 34 48200 163 | 162 15 49300 164 | 163 55 50900 165 | 164 192 51800 166 | 165 277 49900 167 | 166 135 46700 168 | 167 51 46100 169 | 168 11 46900 170 | 169 69 48300 171 | 170 70 48900 172 | 171 152 49400 173 | 172 71 48400 174 | 173 547 48900 175 | 174 37 42600 176 | 175 9 43400 177 | 176 25 47400 178 | 177 413 47500 179 | 178 63 41400 180 | 179 85 41900 181 | 180 52 42100 182 | 181 44 42700 183 | 182 63 43400 184 | 183 110 43900 185 | 184 52 43700 186 | 185 108 44400 187 | 186 212 44200 188 | 187 124 42600 189 | 188 192 42300 190 | 189 120 41100 191 | 190 128 40800 192 | 191 92 40400 193 | 192 288 40500 194 | 193 170 38300 195 | 194 288 37500 196 | 195 112 35700 197 | 196 114 35500 198 | 197 90 35400 199 | 198 6 35500 200 | 199 165 39100 201 | 200 7 35700 202 | 201 70 39300 203 | 202 68 36900 204 | 203 69 37200 205 | 204 64 37500 206 | 205 163 37900 207 | 206 87 37200 208 | 207 109 37300 209 | 208 145 37200 210 | 209 6 36700 211 | 210 29 40400 212 | 211 22 44400 213 | 212 60 45300 214 | 213 117 40000 215 | 214 170 39800 216 | 215 155 38900 217 | 216 36 38200 218 | 217 108 39000 219 | 218 64 38800 220 | 219 16 39200 221 | 220 48 43100 222 | 221 23 41000 223 | 222 148 42000 224 | 223 37 41300 225 | 224 3 42200 226 | 225 134 43600 227 | 226 2 43000 228 | 227 158 44500 229 | 228 47 43600 230 | 229 11 44400 231 | 230 98 45900 232 | 231 64 45900 233 | 232 108 46500 234 | 233 12 46400 235 | 234 375 48000 236 | 235 11 43300 237 | 236 285 44700 238 | 237 87 41800 239 | 238 166 41900 240 | 239 128 41000 241 | 240 103 40600 242 | 241 4 40500 243 | 242 245 43000 244 | 243 5 39800 245 | 244 144 42900 246 | 245 128 40500 247 | 246 191 40100 248 | 247 5 38900 249 | 248 52 42700 250 | 249 42 40800 251 | 250 24 41600 252 | 251 150 42800 253 | 252 82 42000 254 | 253 366 42200 255 | 254 6 38600 256 | 255 91 42500 257 | 256 113 39900 258 | 257 8 39700 259 | 258 44 43100 260 | 259 3 41700 261 | 260 21 43300 262 | 261 270 44200 263 | 262 64 41600 264 | 263 161 42100 265 | 264 1 41200 266 | 265 59 43800 267 | 266 238 43200 268 | 267 282 41200 269 | 268 408 38800 270 | 269 102 35400 271 | 270 92 35300 272 | 271 87 35400 273 | 272 116 35400 274 | 273 69 35200 275 | 274 101 35500 276 | 275 56 35400 277 | 276 27 35900 278 | 277 69 36600 279 | 278 69 37000 280 | 279 99 37300 281 | 280 190 37300 282 | 281 122 36200 283 | 282 47 36000 284 | 283 48 36500 285 | 284 115 37100 286 | 285 59 36900 287 | 286 452 37300 288 | 287 41 33600 289 | 288 69 34200 290 | 289 34 34500 291 | 290 47 35100 292 | 291 119 35600 293 | 292 24 35400 294 | 293 192 36200 295 | 294 65 35100 296 | 295 26 35500 297 | 296 32 36300 298 | 297 49 37000 299 | 298 20 37600 300 | 299 32 38600 301 | 300 10 39500 302 | 301 188 40700 303 | 302 237 39500 304 | 303 169 37700 305 | 304 45 36800 306 | 305 83 37400 307 | 306 34 37600 308 | 307 102 38400 309 | 308 12 38400 310 | 309 181 40200 311 | 310 36 38400 312 | 311 479 39200 313 | 312 74 34600 314 | 313 112 34900 315 | 314 45 34700 316 | 315 30 35300 317 | 316 20 36000 318 | 317 46 36900 319 | 318 106 37600 320 | 319 133 37400 321 | 320 120 37000 322 | 321 9 36700 323 | 322 67 39100 324 | 323 344 38200 325 | 324 346 35200 326 | 325 1 32600 327 | 326 23 35900 328 | 327 31 38500 329 | 328 55 38500 330 | 329 49 35700 331 | 330 74 36300 332 | 331 70 36600 333 | 332 28 36900 334 | 333 60 37800 335 | 334 44 38300 336 | 335 104 39000 337 | 336 6 38900 338 | 337 113 40200 339 | 338 37 40000 340 | 339 20 40900 341 | 340 75 42100 342 | 341 105 42500 343 | 342 20 42400 344 | 343 10 43700 345 | 344 49 45300 346 | 345 100 46200 347 | 346 54 46100 348 | 347 95 47000 349 | 348 461 47000 350 | 349 5 40800 351 | 350 39 42200 352 | 351 133 43100 353 | 352 17 42600 354 | 353 184 43900 355 | 354 121 42500 356 | 355 15 42100 357 | 356 195 43400 358 | 357 255 41900 359 | 358 52 39600 360 | 359 31 40300 361 | 360 42 41200 362 | 361 393 42000 363 | 362 155 38000 364 | 363 86 37300 365 | 364 55 37500 366 | 365 18 38000 367 | 366 31 41500 368 | 367 74 41600 369 | 368 192 40300 370 | 369 84 39000 371 | 370 115 39200 372 | 371 44 39000 373 | 372 23 39700 374 | 373 206 40700 375 | 374 59 39300 376 | 375 82 39800 377 | 376 59 40000 378 | 377 178 40500 379 | 378 12 39400 380 | 379 59 42100 381 | 380 222 41200 382 | 381 56 39500 383 | 382 15 40000 384 | 383 4 42400 385 | 384 30 42600 386 | 385 188 43600 387 | 386 20 42200 388 | 387 9 43300 389 | 388 148 44700 390 | 389 97 43800 391 | 390 47 43800 392 | 391 8 44600 393 | 392 96 46100 394 | 393 20 46100 395 | 394 134 47500 396 | 395 1 46800 397 | 396 49 48600 398 | 397 355 49500 399 | 398 83 44900 400 | 399 23 45200 401 | 400 86 46400 402 | 401 28 46600 403 | 402 95 47900 404 | 403 158 47900 405 | 404 10 46800 406 | 405 0 48400 407 | 406 44 50300 408 | 407 98 51400 409 | 408 229 51400 410 | 409 66 48800 411 | 410 426 49400 412 | 411 138 43800 413 | 412 207 43200 414 | 413 12 41700 415 | 414 160 45400 416 | 415 11 42000 417 | 416 304 45500 418 | 417 274 40500 419 | 418 19 38400 420 | 419 115 42200 421 | 420 72 39100 422 | 421 76 39500 423 | 422 133 39700 424 | 423 9 39300 425 | 424 129 43200 426 | 425 54 40100 427 | 426 11 40600 428 | 427 4 44700 429 | 428 51 45700 430 | 429 112 45800 431 | 430 27 43600 432 | 431 242 44700 433 | 432 197 42600 434 | 433 153 41200 435 | 434 97 40500 436 | 435 268 40500 437 | 436 144 38500 438 | 437 236 38000 439 | 438 57 36500 440 | 439 87 37000 441 | 440 37 37100 442 | 441 53 37700 443 | 442 38 38200 444 | 443 20 38900 445 | 444 78 39900 446 | 445 9 40100 447 | 446 37 44100 448 | 447 73 45700 449 | 448 2 42600 450 | 449 74 45700 451 | 450 16 44400 452 | 451 89 45700 453 | 452 1 45800 454 | 453 253 47500 455 | 454 112 44900 456 | 455 140 44700 457 | 456 39 44100 458 | 457 149 45000 459 | 458 153 44200 460 | 459 118 43400 461 | 460 48 43100 462 | 461 400 43800 463 | 462 79 39700 464 | 463 22 39900 465 | 464 141 40900 466 | 465 18 40400 467 | 466 15 44400 468 | 467 83 44700 469 | 468 9 42800 470 | 469 102 44500 471 | 470 16 44100 472 | 471 61 45400 473 | 472 4 46100 474 | 473 74 47700 475 | 474 113 48200 476 | 475 103 47900 477 | 476 96 47800 478 | 477 275 47800 479 | 478 6 44800 480 | 479 98 46300 481 | 480 54 46300 482 | 481 25 47000 483 | 482 14 48300 484 | 483 62 49900 485 | 484 10 50600 486 | 485 179 52300 487 | 486 14 50700 488 | 487 62 52400 489 | 488 87 53100 490 | 489 262 53300 491 | 490 5 49900 492 | 491 239 51800 493 | 492 220 49100 494 | 493 105 46900 495 | 494 5 46800 496 | 495 105 48400 497 | 496 173 48300 498 | 497 23 47000 499 | 498 14 48300 500 | 499 234 49700 501 | 500 179 47300 502 | 501 32 46000 503 | 502 36 47000 504 | 503 204 48000 505 | 504 144 46300 506 | 505 239 45600 507 | 506 54 43500 508 | 507 34 44100 509 | 508 169 45000 510 | 509 65 44000 511 | 510 202 44400 512 | 511 18 43000 513 | 512 123 47300 514 | 513 335 43800 515 | 514 80 40700 516 | 515 132 40900 517 | 516 121 40500 518 | 517 107 40200 519 | 518 11 40100 520 | 519 22 44100 521 | 520 88 48300 522 | 521 16 42400 523 | 522 2 46600 524 | 523 52 48500 525 | 524 164 48700 526 | 525 8 44800 527 | 526 334 48900 528 | 527 74 42800 529 | 528 31 43100 530 | 529 5 44000 531 | 530 52 48400 532 | 531 3 46100 533 | 532 42 49000 534 | 533 118 49100 535 | 534 229 48200 536 | 535 0 46100 537 | 536 84 49100 538 | 537 34 47900 539 | 538 38 49000 540 | 539 40 50100 541 | 540 153 51200 542 | 541 14 50200 543 | 542 73 51700 544 | 543 55 52200 545 | 544 8 53100 546 | 545 538 55000 547 | 546 9 52900 548 | 547 197 54700 549 | 548 133 52700 550 | 549 24 52000 551 | 550 387 53500 552 | 551 20 48200 553 | 552 48 49500 554 | 553 435 50400 555 | 554 79 44900 556 | 555 7 45200 557 | 556 4 49600 558 | 557 72 49600 559 | 558 101 48600 560 | 559 41 48600 561 | 560 83 49600 562 | 561 310 49800 563 | 562 45 46400 564 | 563 179 47200 565 | 564 88 46000 566 | 565 22 46100 567 | 566 182 47300 568 | 567 4 46000 569 | 568 68 49800 570 | 569 7 48000 571 | 570 47 50000 572 | 571 16 50500 573 | 572 23 52000 574 | 573 182 53500 575 | 574 81 51800 576 | 575 34 52100 577 | 576 172 53400 578 | 577 100 51900 579 | 578 655 51900 580 | 579 51 45300 581 | 580 143 46000 582 | 581 314 45200 583 | 582 77 42400 584 | 583 3 42600 585 | 584 278 46900 586 | 585 2 41500 587 | 586 11 45700 588 | 587 367 50300 589 | 588 64 40700 590 | 589 112 41100 591 | 590 27 40900 592 | 591 332 41700 593 | 592 85 39100 594 | 593 80 39200 595 | 594 132 39400 596 | 595 12 39000 597 | 596 143 42900 598 | 597 73 39500 599 | 598 16 39800 600 | 599 19 43800 601 | 600 105 48200 602 | 601 66 41800 603 | 602 34 41900 604 | 603 148 42800 605 | 604 25 42200 606 | 605 148 43200 607 | 606 422 42600 608 | 607 273 38700 609 | 608 31 36900 610 | 609 344 37500 611 | 610 31 35100 612 | 611 562 35700 613 | 612 197 32300 614 | 613 136 31500 615 | 614 2 31200 616 | 615 147 34300 617 | 616 149 31600 618 | 617 10 31200 619 | 618 124 34300 620 | 619 30 31600 621 | 620 127 32200 622 | 621 0 31900 623 | 622 28 35100 624 | 623 45 38600 625 | 624 88 42500 626 | 625 1 34200 627 | 626 64 37600 628 | 627 31 35500 629 | 628 71 36200 630 | 629 96 36500 631 | 630 56 36500 632 | 631 12 37000 633 | 632 13 40700 634 | 633 144 42500 635 | 634 202 38600 636 | 635 38 37300 637 | 636 64 38000 638 | 637 188 38500 639 | 638 30 37400 640 | 639 143 38200 641 | 640 169 37700 642 | 641 80 36800 643 | 642 138 37100 644 | 643 125 36600 645 | 644 47 36300 646 | 645 152 36900 647 | 646 75 36300 648 | 647 27 36600 649 | 648 261 37300 650 | 649 35 35400 651 | 650 77 36200 652 | 651 120 36500 653 | 652 37 36200 654 | 653 178 37000 655 | 654 10 36000 656 | 655 227 39300 657 | 656 184 35700 658 | 657 80 34700 659 | 658 19 34900 660 | 659 51 38400 661 | 660 27 36400 662 | 661 101 37200 663 | 662 72 37200 664 | 663 45 37600 665 | 664 50 38300 666 | 665 53 39000 667 | 666 126 39700 668 | 667 227 39300 669 | 668 30 37600 670 | 669 782 38500 671 | 670 95 33700 672 | 671 10 33800 673 | 672 81 37200 674 | 673 53 35000 675 | 674 175 35500 676 | 675 391 34600 677 | 676 24 31600 678 | 677 45 32300 679 | 678 23 32800 680 | 679 19 33500 681 | 680 131 36900 682 | 681 146 34000 683 | 682 232 33500 684 | 683 8 32200 685 | 684 99 35400 686 | 685 4 32900 687 | 686 573 36200 688 | 687 65 32800 689 | 688 88 33200 690 | 689 18 33300 691 | 690 307 36600 692 | 691 195 32000 693 | 692 157 31100 694 | 693 54 30600 695 | 694 27 30900 696 | 695 25 31600 697 | 696 215 32300 698 | 697 1 31200 699 | 698 16 34300 700 | 699 21 37100 701 | 700 1 37100 702 | 701 181 37100 703 | 702 33 34100 704 | 703 79 34800 705 | 704 33 35100 706 | 705 18 35900 707 | 706 82 37000 708 | 707 80 37100 709 | 708 88 37400 710 | 709 167 37500 711 | 710 139 36600 712 | 711 42 36100 713 | 712 97 36800 714 | 713 117 36900 715 | 714 58 36600 716 | 715 37 37200 717 | 716 139 38000 718 | 717 59 37400 719 | 718 200 37900 720 | 719 50 36600 721 | 720 103 37200 722 | 721 172 37100 723 | 722 37 36200 724 | 723 71 37000 725 | 724 40 37300 726 | 725 95 38100 727 | 726 162 38200 728 | 727 31 37300 729 | 728 99 38200 730 | 729 535 38200 731 | 730 56 33300 732 | 731 92 33800 733 | 732 163 33900 734 | 733 141 33100 735 | 734 24 32700 736 | 735 15 33500 737 | 736 0 36900 738 | 737 176 37000 739 | 738 119 34700 740 | 739 83 34400 741 | 740 99 34600 742 | 741 65 34600 743 | 742 440 34900 744 | 743 32 31200 745 | 744 23 31900 746 | 745 50 32600 747 | 746 91 33200 748 | 747 1 33300 749 | 748 248 36600 750 | 749 65 32800 751 | 750 48 33100 752 | 751 78 33600 753 | 752 42 33800 754 | 753 131 34500 755 | 754 13 34100 756 | 755 127 37100 757 | 756 46 34700 758 | 757 288 35400 759 | 758 2 33200 760 | 759 6 36500 761 | 760 295 37300 762 | 761 61 33100 763 | 762 108 33400 764 | 763 139 33300 765 | 764 34 32900 766 | 765 406 33600 767 | 766 310 30600 768 | 767 31 28800 769 | 768 135 29300 770 | 769 95 29000 771 | 770 253 29000 772 | 771 52 27800 773 | 772 21 28100 774 | 773 237 28700 775 | 774 139 27600 776 | 775 49 27300 777 | 776 38 27700 778 | 777 54 28200 779 | 778 54 28500 780 | 779 32 28900 781 | 780 6 29400 782 | 781 315 32300 783 | 782 243 28400 784 | 783 44 27200 785 | 784 98 27600 786 | 785 8 27600 787 | 786 19 30400 788 | 787 16 33400 789 | 788 6 34000 790 | 789 25 33900 791 | 790 23 33800 792 | 791 2 33800 793 | 792 128 33800 794 | 793 289 33200 795 | 794 144 31100 796 | 795 10 30700 797 | 796 274 33700 798 | 797 130 29800 799 | 798 47 29500 800 | 799 122 30000 801 | 800 60 29800 802 | 801 44 30200 803 | 802 31 30700 804 | 803 135 31400 805 | 804 40 31000 806 | 805 17 31600 807 | 806 33 33100 808 | 807 151 33300 809 | 808 108 32700 810 | 809 166 32600 811 | 810 17 31800 812 | 811 141 33000 813 | 812 153 32300 814 | 813 14 31700 815 | 814 29 33000 816 | 815 79 33500 817 | 816 27 33700 818 | 817 64 34600 819 | 818 136 35000 820 | 819 37 34600 821 | 820 134 35300 822 | 821 2 34900 823 | 822 44 36200 824 | 823 76 37000 825 | 824 643 37300 826 | 825 23 35900 827 | 826 108 37000 828 | 827 298 36900 829 | 828 5 34200 830 | 829 16 35400 831 | 830 132 36500 832 | 831 86 36000 833 | 832 85 36200 834 | 833 9 36300 835 | 834 53 37600 836 | 835 2 38200 837 | 836 35 39700 838 | 837 150 40700 839 | 838 196 39800 840 | 839 3 38300 841 | 840 102 39800 842 | 841 6 39700 843 | 842 198 41200 844 | 843 66 39500 845 | 844 26 40000 846 | 845 17 41100 847 | 846 11 42500 848 | 847 78 44000 849 | 848 125 44200 850 | 849 243 43600 851 | 850 204 41100 852 | 851 60 39400 853 | 852 255 39900 854 | 853 26 37700 855 | 854 2 38700 856 | 855 255 40100 857 | 856 61 37800 858 | 857 119 38300 859 | 858 203 38000 860 | 859 70 36600 861 | 860 195 37000 862 | 861 93 35800 863 | 862 14 35800 864 | 863 65 38700 865 | 864 127 37300 866 | 865 81 36900 867 | 866 67 37100 868 | 867 4 37500 869 | 868 43 39200 870 | 869 46 39500 871 | 870 8 40300 872 | 871 0 41600 873 | 872 62 43200 874 | 873 292 43800 875 | 874 69 40700 876 | 875 114 41100 877 | 876 9 40800 878 | 877 96 42200 879 | 878 20 42200 880 | 879 156 43400 881 | 880 71 42500 882 | 881 4 42600 883 | 882 28 44200 884 | 883 60 45500 885 | 884 40 46200 886 | 885 33 47400 887 | 886 49 48600 888 | 887 183 49600 889 | 888 389 47900 890 | 889 26 42900 891 | 890 40 44000 892 | 891 206 44900 893 | 892 217 43200 894 | 893 63 41400 895 | 894 42 41900 896 | 895 100 42700 897 | 896 5 42700 898 | 897 209 44100 899 | 898 112 42400 900 | 899 55 42200 901 | 900 27 42800 902 | 901 143 43800 903 | 902 56 43100 904 | 903 120 43800 905 | 904 117 43400 906 | 905 253 43100 907 | 906 42 40900 908 | 907 143 41600 909 | 908 71 41000 910 | 909 75 41300 911 | 910 74 41600 912 | 911 584 42000 913 | 912 76 36900 914 | 913 124 37200 915 | 914 48 36900 916 | 915 181 37400 917 | 916 381 36500 918 | 917 115 33700 919 | 918 83 33500 920 | 919 246 33700 921 | 920 272 32300 922 | 921 213 30900 923 | 922 116 30100 924 | 923 133 29900 925 | 924 37 29700 926 | 925 9 30100 927 | 926 48 33100 928 | 927 46 31300 929 | 928 280 31700 930 | 929 7 30300 931 | 930 159 33300 932 | 931 16 30500 933 | 932 148 33600 934 | 933 23 30800 935 | 934 158 31400 936 | 935 52 30900 937 | 936 14 31300 938 | 937 19 34400 939 | 938 25 37800 940 | 939 113 40700 941 | 940 108 33500 942 | 941 116 33400 943 | 942 91 33300 944 | 943 28 33300 945 | 944 56 34000 946 | 945 7 34400 947 | 946 14 37800 948 | 947 62 39300 949 | 948 161 36900 950 | 949 134 36100 951 | 950 48 35700 952 | 951 142 36300 953 | 952 111 35800 954 | 953 20 35600 955 | 954 89 36600 956 | 955 10 36700 957 | 956 37 38100 958 | 957 6 38700 959 | 958 81 40100 960 | 959 35 40400 961 | 960 18 41400 962 | 961 55 42700 963 | 962 74 43500 964 | 963 566 44000 965 | 964 117 42300 966 | 965 47 42000 967 | 966 71 42900 968 | 967 197 43400 969 | 968 88 41800 970 | 969 135 42000 971 | 970 73 41500 972 | 971 36 41900 973 | 972 69 43000 974 | 973 21 43600 975 | 974 99 45000 976 | 975 374 45100 977 | 976 30 40500 978 | 977 136 41600 979 | 978 58 41000 980 | 979 8 41600 981 | 980 76 43100 982 | 981 209 43500 983 | 982 216 41700 984 | 983 24 39900 985 | 984 6 40900 986 | 985 72 42300 987 | 986 42 42700 988 | 987 53 43600 989 | 988 92 44300 990 | 989 238 44400 991 | 990 120 42100 992 | 991 136 41700 993 | 992 35 41100 994 | 993 20 42000 995 | 994 138 43100 996 | 995 342 42500 997 | 996 76 39000 998 | 997 23 39300 999 | 998 161 40300 1000 | 999 11 39400 1001 | -------------------------------------------------------------------------------- /test_DAs_example/blocks_SMA_.txt: -------------------------------------------------------------------------------- 1 | 0 2 40001 2 | 1 104 40001 3 | 2 96 40001 4 | 3 71 40001 5 | 4 310 40001 6 | 5 416 40001 7 | 6 67 40001 8 | 7 132 40001 9 | 8 36 40001 10 | 9 35 40001 11 | 10 31 40001 12 | 11 55 40001 13 | 12 34 40001 14 | 13 83 40001 15 | 14 88 40001 16 | 15 40 40001 17 | 16 2 40001 18 | 17 50 40001 19 | 18 76 40001 20 | 19 143 40001 21 | 20 32 40001 22 | 21 41 40001 23 | 22 1 40001 24 | 23 303 40001 25 | 24 10 40001 26 | 25 197 40001 27 | 26 43 40001 28 | 27 64 40001 29 | 28 44 40001 30 | 29 38 40001 31 | 30 3 40001 32 | 31 47 40001 33 | 32 340 40001 34 | 33 104 40001 35 | 34 221 40001 36 | 35 255 40001 37 | 36 99 40001 38 | 37 47 40001 39 | 38 106 40001 40 | 39 276 40001 41 | 40 113 40001 42 | 41 266 40001 43 | 42 45 40001 44 | 43 356 40001 45 | 44 68 40001 46 | 45 269 36073 47 | 46 31 34166 48 | 47 63 34534 49 | 48 37 34649 50 | 49 159 34775 51 | 50 29 35727 52 | 51 95 38653 53 | 52 18 38389 54 | 53 34 39327 55 | 54 85 39330 56 | 55 31 38882 57 | 56 16 38857 58 | 57 266 39169 59 | 58 130 37232 60 | 59 67 36808 61 | 60 26 36903 62 | 61 141 36946 63 | 62 205 35833 64 | 63 21 34648 65 | 64 49 34923 66 | 65 138 35490 67 | 66 13 34647 68 | 67 5 34735 69 | 68 16 34601 70 | 69 147 36605 71 | 70 655 35494 72 | 71 151 32331 73 | 72 103 31541 74 | 73 35 31158 75 | 74 132 31047 76 | 75 19 30355 77 | 76 28 30093 78 | 77 10 30016 79 | 78 108 31736 80 | 79 85 31552 81 | 80 271 32235 82 | 81 2 31980 83 | 82 27 32443 84 | 83 12 32421 85 | 84 32 32893 86 | 85 176 34480 87 | 86 46 33897 88 | 87 59 35435 89 | 88 144 35221 90 | 89 17 36864 91 | 90 0 37237 92 | 91 6 39813 93 | 92 313 40212 94 | 93 226 37931 95 | 94 29 36358 96 | 95 45 37516 97 | 96 111 37417 98 | 97 51 37247 99 | 98 55 36933 100 | 99 185 36697 101 | 100 22 35804 102 | 101 53 35807 103 | 102 110 35440 104 | 103 277 36645 105 | 104 147 35414 106 | 105 65 34754 107 | 106 16 34408 108 | 107 11 35325 109 | 108 98 36935 110 | 109 233 36327 111 | 110 134 34868 112 | 111 85 34885 113 | 112 265 34338 114 | 113 6 32475 115 | 114 117 32498 116 | 115 27 32616 117 | 116 277 37490 118 | 117 18 36504 119 | 118 139 37364 120 | 119 128 36603 121 | 120 40 36767 122 | 121 140 36736 123 | 122 150 35956 124 | 123 32 34981 125 | 124 104 35647 126 | 125 8 35588 127 | 126 114 37875 128 | 127 45 37035 129 | 128 66 36988 130 | 129 14 36640 131 | 130 27 36874 132 | 131 126 38222 133 | 132 85 37616 134 | 133 327 37442 135 | 134 104 35983 136 | 135 46 35288 137 | 136 60 34899 138 | 137 171 34397 139 | 138 67 35335 140 | 139 15 36544 141 | 140 141 36664 142 | 141 34 35865 143 | 142 138 36453 144 | 143 120 35734 145 | 144 44 35202 146 | 145 72 36284 147 | 146 2 35892 148 | 147 38 36305 149 | 148 122 36923 150 | 149 154 38286 151 | 150 10 38291 152 | 151 9 38881 153 | 152 85 39054 154 | 153 233 38459 155 | 154 48 37307 156 | 155 31 38979 157 | 156 0 40062 158 | 157 11 41043 159 | 158 120 44006 160 | 159 78 43005 161 | 160 32 43719 162 | 161 279 43952 163 | 162 32 44098 164 | 163 212 44135 165 | 164 241 43485 166 | 165 296 42435 167 | 166 30 40031 168 | 167 51 41166 169 | 168 171 42294 170 | 169 164 41072 171 | 170 81 40622 172 | 171 89 40056 173 | 172 12 40338 174 | 173 41 40725 175 | 174 41 41052 176 | 175 74 40896 177 | 176 217 40546 178 | 177 44 39765 179 | 178 200 40186 180 | 179 99 41448 181 | 180 18 41625 182 | 181 351 42051 183 | 182 121 39501 184 | 183 136 40057 185 | 184 206 39552 186 | 185 11 38018 187 | 186 2 39122 188 | 187 209 39468 189 | 188 24 38928 190 | 189 115 39822 191 | 190 49 39309 192 | 191 63 39572 193 | 192 91 39132 194 | 193 101 38751 195 | 194 38 38964 196 | 195 69 39968 197 | 196 87 39495 198 | 197 87 38853 199 | 198 216 38832 200 | 199 48 38981 201 | 200 48 39017 202 | 201 57 38876 203 | 202 380 38386 204 | 203 63 35574 205 | 204 135 35807 206 | 205 33 35269 207 | 206 2 35098 208 | 207 99 36918 209 | 208 100 36269 210 | 209 207 36950 211 | 210 30 37076 212 | 211 173 39144 213 | 212 185 37922 214 | 213 384 36793 215 | 214 75 35116 216 | 215 118 35631 217 | 216 9 35263 218 | 217 80 35744 219 | 218 84 35159 220 | 219 33 34744 221 | 220 28 34673 222 | 221 1 34870 223 | 222 142 36349 224 | 223 195 35537 225 | 224 96 35477 226 | 225 11 35375 227 | 226 43 35296 228 | 227 26 37570 229 | 228 119 38339 230 | 229 31 38449 231 | 230 102 40026 232 | 231 10 39223 233 | 232 126 39153 234 | 233 96 39916 235 | 234 94 39269 236 | 235 69 39449 237 | 236 267 39268 238 | 237 97 37477 239 | 238 16 37390 240 | 239 88 38080 241 | 240 73 37633 242 | 241 54 37547 243 | 242 54 37783 244 | 243 48 38042 245 | 244 55 39534 246 | 245 1 39482 247 | 246 14 39936 248 | 247 75 40376 249 | 248 101 43634 250 | 249 151 43414 251 | 250 199 43431 252 | 251 228 41857 253 | 252 144 39808 254 | 253 98 39461 255 | 254 147 39553 256 | 255 56 40170 257 | 256 139 39999 258 | 257 18 40338 259 | 258 118 42042 260 | 259 70 45100 261 | 260 66 45420 262 | 261 44 46305 263 | 262 98 46170 264 | 263 21 46225 265 | 264 330 47293 266 | 265 23 44142 267 | 266 123 44430 268 | 267 224 43361 269 | 268 194 42690 270 | 269 194 42868 271 | 270 68 42074 272 | 271 49 41682 273 | 272 34 41770 274 | 273 258 41789 275 | 274 154 40592 276 | 275 121 39573 277 | 276 257 39404 278 | 277 235 37443 279 | 278 24 36603 280 | 279 70 37064 281 | 280 103 37199 282 | 281 6 36901 283 | 282 53 38883 284 | 283 56 39277 285 | 284 119 38986 286 | 285 21 38751 287 | 286 197 39202 288 | 287 58 38082 289 | 288 42 38057 290 | 289 74 38104 291 | 290 246 37926 292 | 291 147 36081 293 | 292 173 35094 294 | 293 59 34353 295 | 294 309 34450 296 | 295 134 33290 297 | 296 97 33503 298 | 297 88 34177 299 | 298 96 34436 300 | 299 64 34353 301 | 300 57 34808 302 | 301 14 34696 303 | 302 210 35457 304 | 303 122 34053 305 | 304 6 33873 306 | 305 99 34077 307 | 306 53 33640 308 | 307 461 33337 309 | 308 72 30922 310 | 309 91 30367 311 | 310 59 31406 312 | 311 25 30960 313 | 312 116 31279 314 | 313 236 31697 315 | 314 99 31232 316 | 315 51 31584 317 | 316 12 31484 318 | 317 69 31512 319 | 318 215 31096 320 | 319 54 31149 321 | 320 10 31585 322 | 321 159 32143 323 | 322 30 32652 324 | 323 397 34016 325 | 324 35 31389 326 | 325 26 31498 327 | 326 124 31883 328 | 327 3 31019 329 | 328 204 31175 330 | 329 47 30098 331 | 330 65 30355 332 | 331 39 29921 333 | 332 74 30704 334 | 333 50 30452 335 | 334 14 30246 336 | 335 88 30459 337 | 336 14 31333 338 | 337 82 32150 339 | 338 94 32744 340 | 339 123 32452 341 | 340 35 33816 342 | 341 20 34630 343 | 342 5 35307 344 | 343 11 36064 345 | 344 16 36885 346 | 345 141 37406 347 | 346 82 36680 348 | 347 33 36111 349 | 348 42 37784 350 | 349 73 38682 351 | 350 160 38133 352 | 351 64 37642 353 | 352 47 37638 354 | 353 13 42205 355 | 354 71 43255 356 | 355 155 43884 357 | 356 56 43042 358 | 357 34 43007 359 | 358 182 44360 360 | 359 46 45431 361 | 360 157 46569 362 | 361 55 45578 363 | 362 154 45422 364 | 363 50 44736 365 | 364 239 47282 366 | 365 279 45311 367 | 366 5 42529 368 | 367 4 44561 369 | 368 91 45195 370 | 369 164 49589 371 | 370 208 48292 372 | 371 266 46378 373 | 372 331 45045 374 | 373 225 41848 375 | 374 1 41893 376 | 375 12 42640 377 | 376 118 43490 378 | 377 101 42993 379 | 378 58 43009 380 | 379 3 43226 381 | 380 16 43647 382 | 381 29 44726 383 | 382 83 44887 384 | 383 87 45183 385 | 384 50 45559 386 | 385 1 46698 387 | 386 41 47410 388 | 387 170 47479 389 | 388 38 45913 390 | 389 12 45853 391 | 390 11 46107 392 | 391 3 47775 393 | 392 81 48984 394 | 393 223 48724 395 | 394 57 46913 396 | 395 52 47283 397 | 396 171 48737 398 | 397 69 47771 399 | 398 60 47762 400 | 399 44 47371 401 | 400 22 47765 402 | 401 30 49386 403 | 402 29 49850 404 | 403 16 50076 405 | 404 14 52318 406 | 405 34 52920 407 | 406 35 54796 408 | 407 202 55329 409 | 408 249 54895 410 | 409 137 52439 411 | 410 216 53930 412 | 411 550 55031 413 | 412 258 48520 414 | 413 44 45964 415 | 414 85 46448 416 | 415 32 47187 417 | 416 49 49064 418 | 417 219 51695 419 | 418 0 53294 420 | 419 137 56740 421 | 420 349 55161 422 | 421 13 51115 423 | 422 137 52582 424 | 423 68 52360 425 | 424 363 52457 426 | 425 4 48541 427 | 426 176 48775 428 | 427 139 47342 429 | 428 76 46839 430 | 429 20 46981 431 | 430 0 47309 432 | 431 124 47332 433 | 432 56 46515 434 | 433 29 47622 435 | 434 176 47749 436 | 435 77 46177 437 | 436 67 45559 438 | 437 0 44931 439 | 438 34 45589 440 | 439 39 47349 441 | 440 124 47540 442 | 441 7 46828 443 | 442 37 48453 444 | 443 92 48806 445 | 444 58 48490 446 | 445 186 48367 447 | 446 171 46723 448 | 447 142 45332 449 | 448 102 44226 450 | 449 159 43370 451 | 450 42 42008 452 | 451 77 41737 453 | 452 207 41163 454 | 453 414 40858 455 | 454 264 39375 456 | 455 156 38252 457 | 456 2 38383 458 | 457 126 42249 459 | 458 74 43263 460 | 459 74 42944 461 | 460 211 42969 462 | 461 72 41371 463 | 462 16 41033 464 | 463 29 42517 465 | 464 134 42047 466 | 465 263 41775 467 | 466 139 42241 468 | 467 18 40989 469 | 468 265 41757 470 | 469 498 39915 471 | 470 57 38631 472 | 471 80 38050 473 | 472 5 38553 474 | 473 123 39411 475 | 474 10 38896 476 | 475 55 38813 477 | 476 66 38227 478 | 477 197 38487 479 | 478 14 37283 480 | 479 10 37191 481 | 480 98 38216 482 | 481 62 37897 483 | 482 93 37782 484 | 483 65 36953 485 | 484 57 36561 486 | 485 74 36224 487 | 486 34 36357 488 | 487 59 35962 489 | 488 26 35566 490 | 489 149 35767 491 | 490 361 34892 492 | 491 10 33499 493 | 492 32 34283 494 | 493 12 34808 495 | 494 39 35248 496 | 495 3 35949 497 | 496 4 36114 498 | 497 9 36550 499 | 498 21 38037 500 | 499 382 41557 501 | 500 9 40463 502 | 501 111 41955 503 | 502 80 40962 504 | 503 15 41380 505 | 504 48 41924 506 | 505 110 42164 507 | 506 91 43205 508 | 507 219 43047 509 | 508 75 41031 510 | 509 129 40556 511 | 510 368 40568 512 | 511 17 39569 513 | 512 23 40639 514 | 513 93 40583 515 | 514 117 42260 516 | 515 128 46661 517 | 516 20 45997 518 | 517 506 46952 519 | 518 17 41582 520 | 519 57 42705 521 | 520 169 42315 522 | 521 15 41269 523 | 522 79 41839 524 | 523 13 43122 525 | 524 34 43274 526 | 525 240 43170 527 | 526 17 41852 528 | 527 41 42391 529 | 528 469 43029 530 | 529 43 39367 531 | 530 35 39550 532 | 531 7 39964 533 | 532 1 40283 534 | 533 191 40906 535 | 534 23 39558 536 | 535 48 40754 537 | 536 75 43954 538 | 537 168 43526 539 | 538 30 42383 540 | 539 1 42382 541 | 540 76 42916 542 | 541 26 42365 543 | 542 21 42296 544 | 543 131 42311 545 | 544 179 41386 546 | 545 208 43307 547 | 546 49 41481 548 | 547 433 42042 549 | 548 178 39007 550 | 549 71 37693 551 | 550 47 37437 552 | 551 96 37816 553 | 552 105 37669 554 | 553 258 38441 555 | 554 129 36997 556 | 555 265 36927 557 | 556 163 37622 558 | 557 216 36505 559 | 558 27 35095 560 | 559 147 35433 561 | 560 26 35101 562 | 561 74 35572 563 | 562 190 35002 564 | 563 29 37021 565 | 564 49 36837 566 | 565 9 36777 567 | 566 100 37904 568 | 567 225 37165 569 | 568 197 35978 570 | 569 201 34553 571 | 570 220 33303 572 | 571 41 33242 573 | 572 11 32930 574 | 573 9 32938 575 | 574 10 35867 576 | 575 269 36041 577 | 576 285 34294 578 | 577 53 32391 579 | 578 216 31929 580 | 579 128 31614 581 | 580 1 30865 582 | 581 31 30950 583 | 582 45 30961 584 | 583 92 31445 585 | 584 23 30875 586 | 585 16 30533 587 | 586 77 30645 588 | 587 7 30134 589 | 588 8 29985 590 | 589 179 30456 591 | 590 174 30247 592 | 591 34 30193 593 | 592 48 30062 594 | 593 124 32233 595 | 594 82 32458 596 | 595 178 32272 597 | 596 172 31298 598 | 597 26 30685 599 | 598 125 31039 600 | 599 119 31755 601 | 600 17 31712 602 | 601 109 33353 603 | 602 16 33664 604 | 603 34 35193 605 | 604 162 35137 606 | 605 28 35006 607 | 606 27 34987 608 | 607 145 35365 609 | 608 130 35757 610 | 609 20 34878 611 | 610 82 35071 612 | 611 133 34435 613 | 612 65 34093 614 | 613 4 35327 615 | 614 60 37026 616 | 615 156 38452 617 | 616 28 39241 618 | 617 12 39536 619 | 618 221 39701 620 | 619 41 37752 621 | 620 1 37507 622 | 621 158 40238 623 | 622 133 41820 624 | 623 70 41168 625 | 624 93 43126 626 | 625 49 43885 627 | 626 53 43659 628 | 627 69 43746 629 | 628 116 43809 630 | 629 22 43860 631 | 630 31 44231 632 | 631 212 44425 633 | 632 271 43201 634 | 633 55 40699 635 | 634 19 40493 636 | 635 151 42400 637 | 636 130 42962 638 | 637 62 42249 639 | 638 88 42405 640 | 639 68 43045 641 | 640 114 43465 642 | 641 21 44466 643 | 642 34 46610 644 | 643 24 46935 645 | 644 32 48668 646 | 645 168 50329 647 | 646 603 48785 648 | 647 71 43429 649 | 648 206 43098 650 | 649 225 41606 651 | 650 188 41167 652 | 651 206 39886 653 | 652 109 38512 654 | 653 80 38866 655 | 654 45 39340 656 | 655 29 39228 657 | 656 256 39756 658 | 657 136 38857 659 | 658 126 38393 660 | 659 81 37525 661 | 660 265 37379 662 | 661 352 36571 663 | 662 48 34366 664 | 663 167 34049 665 | 664 43 34281 666 | 665 79 34206 667 | 666 81 33666 668 | 667 9 34019 669 | 668 4 34661 670 | 669 18 34970 671 | 670 75 35317 672 | 671 106 34978 673 | 672 39 34464 674 | 673 153 34484 675 | 674 191 34068 676 | 675 75 32836 677 | 676 67 32368 678 | 677 180 33017 679 | 678 7 33394 680 | 679 45 33560 681 | 680 123 33263 682 | 681 215 33266 683 | 682 28 32551 684 | 683 48 32577 685 | 684 54 32638 686 | 685 88 32527 687 | 686 101 32479 688 | 687 42 31760 689 | 688 42 31431 690 | 689 45 31032 691 | 690 363 30625 692 | 691 32 29184 693 | 692 44 32159 694 | 693 44 32106 695 | 694 20 32969 696 | 695 148 34265 697 | 696 2 34416 698 | 697 165 35920 699 | 698 230 35399 700 | 699 7 34145 701 | 700 2 34319 702 | 701 59 34417 703 | 702 139 35887 704 | 703 45 35792 705 | 704 36 36425 706 | 705 105 36796 707 | 706 573 38265 708 | 707 207 36286 709 | 708 73 35003 710 | 709 7 35799 711 | 710 34 36141 712 | 711 38 36577 713 | 712 0 37028 714 | 713 88 37182 715 | 714 144 36499 716 | 715 60 35472 717 | 716 28 35599 718 | 717 64 36269 719 | 718 212 36099 720 | 719 105 35643 721 | 720 274 36404 722 | 721 197 34851 723 | 722 4 33912 724 | 723 41 35293 725 | 724 33 35065 726 | 725 28 35194 727 | 726 19 36014 728 | 727 40 37795 729 | 728 11 37812 730 | 729 12 38282 731 | 730 55 38818 732 | 731 15 39293 733 | 732 97 40326 734 | 733 25 39985 735 | 734 78 40371 736 | 735 305 40272 737 | 736 244 41108 738 | 737 76 39299 739 | 738 185 39169 740 | 739 61 38057 741 | 740 92 37816 742 | 741 17 38389 743 | 742 165 38348 744 | 743 95 38404 745 | 744 151 39712 746 | 745 92 38522 747 | 746 12 37834 748 | 747 5 38318 749 | 748 13 39584 750 | 749 2 39974 751 | 750 142 40384 752 | 751 7 40115 753 | 752 297 46381 754 | 753 188 45535 755 | 754 65 44451 756 | 755 30 44014 757 | 756 9 44260 758 | 757 115 44788 759 | 758 98 43694 760 | 759 24 43748 761 | 760 164 45284 762 | 761 3 44350 763 | 762 47 44850 764 | 763 55 45261 765 | 764 34 47376 766 | 765 264 48595 767 | 766 50 49054 768 | 767 22 51475 769 | 768 71 51707 770 | 769 27 51732 771 | 770 132 52280 772 | 771 6 51275 773 | 772 57 51868 774 | 773 79 52009 775 | 774 145 51450 776 | 775 19 50039 777 | 776 10 50792 778 | 777 206 51154 779 | 778 28 50027 780 | 779 28 50241 781 | 780 224 51130 782 | 781 414 52485 783 | 782 40 50552 784 | 783 178 51290 785 | 784 188 51684 786 | 785 161 50419 787 | 786 628 49888 788 | 787 207 43764 789 | 788 49 43496 790 | 789 97 44020 791 | 790 5 44614 792 | 791 16 45581 793 | 792 109 45708 794 | 793 55 44863 795 | 794 81 44580 796 | 795 223 43952 797 | 796 35 43306 798 | 797 209 43127 799 | 798 3 43835 800 | 799 139 45521 801 | 800 5 44839 802 | 801 124 45092 803 | 802 154 44045 804 | 803 56 43681 805 | 804 14 44057 806 | 805 62 44154 807 | 806 89 45077 808 | 807 25 44291 809 | 808 29 44482 810 | 809 154 44707 811 | 810 56 43561 812 | 811 6 45379 813 | 812 140 45728 814 | 813 125 44480 815 | 814 182 43834 816 | 815 67 42314 817 | 816 54 42670 818 | 817 171 42086 819 | 818 40 40951 820 | 819 148 41048 821 | 820 50 40818 822 | 821 47 40387 823 | 822 225 39892 824 | 823 0 39526 825 | 824 143 39537 826 | 825 51 38462 827 | 826 206 39528 828 | 827 4 40958 829 | 828 32 41065 830 | 829 247 42131 831 | 830 143 41402 832 | 831 39 41369 833 | 832 99 47082 834 | 833 84 48434 835 | 834 154 48136 836 | 835 142 47568 837 | 836 315 46099 838 | 837 33 43072 839 | 838 252 43747 840 | 839 19 41872 841 | 840 2 42378 842 | 841 40 44483 843 | 842 28 44460 844 | 843 150 46408 845 | 844 439 44897 846 | 845 4 41984 847 | 846 23 41932 848 | 847 50 42794 849 | 848 201 43769 850 | 849 78 42386 851 | 850 16 41767 852 | 851 27 42132 853 | 852 241 42643 854 | 853 4 40671 855 | 854 27 40806 856 | 855 113 41847 857 | 856 62 41298 858 | 857 12 40721 859 | 858 127 41748 860 | 859 135 41670 861 | 860 2 42054 862 | 861 64 42658 863 | 862 4 42563 864 | 863 98 44219 865 | 864 351 43708 866 | 865 152 41830 867 | 866 35 40941 868 | 867 231 41058 869 | 868 4 41030 870 | 869 21 41027 871 | 870 6 42157 872 | 871 6 42659 873 | 872 76 44708 874 | 873 37 44060 875 | 874 168 44078 876 | 875 72 44931 877 | 876 45 45766 878 | 877 461 45804 879 | 878 202 42181 880 | 879 18 40996 881 | 880 73 42054 882 | 881 625 42574 883 | 882 50 39771 884 | 883 50 39563 885 | 884 3 41192 886 | 885 105 41320 887 | 886 6 40399 888 | 887 68 40604 889 | 888 141 40180 890 | 889 147 40125 891 | 890 26 42656 892 | 891 158 42461 893 | 892 26 41226 894 | 893 31 41408 895 | 894 48 42952 896 | 895 22 43260 897 | 896 3 43235 898 | 897 115 43498 899 | 898 9 44814 900 | 899 8 44859 901 | 900 211 45158 902 | 901 17 44208 903 | 902 15 44743 904 | 903 46 44805 905 | 904 64 45744 906 | 905 282 46631 907 | 906 184 43768 908 | 907 152 42631 909 | 908 230 41280 910 | 909 110 40084 911 | 910 278 42123 912 | 911 52 40997 913 | 912 111 40850 914 | 913 41 41915 915 | 914 167 41598 916 | 915 122 40336 917 | 916 344 39340 918 | 917 182 36728 919 | 918 19 35848 920 | 919 115 35814 921 | 920 90 36018 922 | 921 47 35726 923 | 922 61 35522 924 | 923 186 38227 925 | 924 108 38271 926 | 925 187 37520 927 | 926 4 36585 928 | 927 128 41567 929 | 928 75 40889 930 | 929 13 40693 931 | 930 153 40593 932 | 931 45 40154 933 | 932 30 39811 934 | 933 240 40122 935 | 934 120 39276 936 | 935 118 39485 937 | 936 165 38656 938 | 937 71 38520 939 | 938 58 38104 940 | 939 118 37824 941 | 940 19 37181 942 | 941 45 37080 943 | 942 10 36641 944 | 943 179 37293 945 | 944 114 35880 946 | 945 211 34963 947 | 946 70 34764 948 | 947 100 34226 949 | 948 124 33474 950 | 949 113 32773 951 | 950 43 32234 952 | 951 43 33450 953 | 952 15 34186 954 | 953 213 34973 955 | 954 26 34966 956 | 955 164 35474 957 | 956 136 36199 958 | 957 32 35457 959 | 958 72 35942 960 | 959 31 35577 961 | 960 51 36507 962 | 961 37 36999 963 | 962 108 39660 964 | 963 121 40446 965 | 964 27 39575 966 | 965 47 40511 967 | 966 52 41048 968 | 967 6 41129 969 | 968 236 41829 970 | 969 203 41405 971 | 970 151 40537 972 | 971 9 40963 973 | 972 29 41019 974 | 973 228 42010 975 | 974 284 40505 976 | 975 332 38043 977 | 976 145 36523 978 | 977 61 35677 979 | 978 95 35359 980 | 979 77 36363 981 | 980 26 36640 982 | 981 7 37326 983 | 982 373 38655 984 | 983 47 36142 985 | 984 384 36186 986 | 985 23 34186 987 | 986 25 34097 988 | 987 123 34176 989 | 988 67 33353 990 | 989 140 34038 991 | 990 5 33820 992 | 991 367 35278 993 | 992 12 33191 994 | 993 110 33765 995 | 994 97 33868 996 | 995 41 34001 997 | 996 9 34051 998 | 997 7 34303 999 | 998 50 34362 1000 | 999 540 35548 1001 | -------------------------------------------------------------------------------- /test_DAs_example/blocks_TSA.txt: -------------------------------------------------------------------------------- 1 | 0 23 40001 2 | 1 21 40001 3 | 2 68 40001 4 | 3 146 40001 5 | 4 57 40001 6 | 5 186 40001 7 | 6 21 40001 8 | 7 194 40001 9 | 8 71 40001 10 | 9 51 40001 11 | 10 58 40001 12 | 11 68 40001 13 | 12 94 40001 14 | 13 30 40001 15 | 14 85 40001 16 | 15 99 40001 17 | 16 54 40001 18 | 17 218 40001 19 | 18 20 40001 20 | 19 19 40001 21 | 20 95 40001 22 | 21 154 40001 23 | 22 188 40001 24 | 23 24 40001 25 | 24 63 40001 26 | 25 75 40001 27 | 26 136 40001 28 | 27 70 40001 29 | 28 125 40001 30 | 29 132 40001 31 | 30 55 40001 32 | 31 185 40001 33 | 32 193 40001 34 | 33 156 40001 35 | 34 119 40001 36 | 35 44 40001 37 | 36 127 40001 38 | 37 167 40001 39 | 38 32 40001 40 | 39 32 40001 41 | 40 31 40001 42 | 41 101 40001 43 | 42 112 40001 44 | 43 150 40001 45 | 44 159 40001 46 | 45 33 40001 47 | 46 66 40001 48 | 47 31 40001 49 | 48 26 40001 50 | 49 91 40001 51 | 50 52 40001 52 | 51 142 40001 53 | 52 61 40001 54 | 53 38 40001 55 | 54 243 40001 56 | 55 160 40001 57 | 56 135 40001 58 | 57 129 40001 59 | 58 46 40001 60 | 59 76 40001 61 | 60 79 40600 62 | 61 119 40900 63 | 62 60 40500 64 | 63 65 41100 65 | 64 86 41600 66 | 65 17 41800 67 | 66 137 43200 68 | 67 43 42500 69 | 68 305 43500 70 | 69 249 40200 71 | 70 74 38000 72 | 71 28 38400 73 | 72 94 39400 74 | 73 27 39400 75 | 74 5 40500 76 | 75 70 42000 77 | 76 68 42500 78 | 77 77 43100 79 | 78 119 43500 80 | 79 106 43100 81 | 80 10 43000 82 | 81 5 44700 83 | 82 72 46500 84 | 83 85 47100 85 | 84 52 47400 86 | 85 70 48400 87 | 86 60 49100 88 | 87 13 50000 89 | 88 27 52100 90 | 89 144 54000 91 | 90 120 52900 92 | 91 140 52500 93 | 92 68 51600 94 | 93 1 52400 95 | 94 17 54800 96 | 95 270 57000 97 | 96 23 52800 98 | 97 214 54600 99 | 98 36 52000 100 | 99 21 53400 101 | 100 205 55300 102 | 101 157 52800 103 | 102 60 51600 104 | 103 82 52500 105 | 104 251 52900 106 | 105 65 49800 107 | 106 219 50500 108 | 107 60 48200 109 | 108 197 49000 110 | 109 101 47300 111 | 110 288 47300 112 | 111 217 44300 113 | 112 99 42600 114 | 113 61 42700 115 | 114 64 43300 116 | 115 203 43900 117 | 116 149 42500 118 | 117 134 41800 119 | 118 268 41400 120 | 119 205 39200 121 | 120 57 38000 122 | 121 84 38500 123 | 122 92 38800 124 | 123 133 38800 125 | 124 84 38400 126 | 125 111 38600 127 | 126 110 38400 128 | 127 110 38300 129 | 128 79 38100 130 | 129 175 38700 131 | 130 139 38000 132 | 131 48 37500 133 | 132 92 38100 134 | 133 19 38200 135 | 134 136 39100 136 | 135 77 38500 137 | 136 74 38800 138 | 137 106 39100 139 | 138 166 39000 140 | 139 49 38200 141 | 140 31 38900 142 | 141 159 39700 143 | 142 38 38800 144 | 143 150 39500 145 | 144 33 38800 146 | 145 114 39600 147 | 146 121 39400 148 | 147 5 39000 149 | 148 67 40100 150 | 149 118 40300 151 | 150 266 40100 152 | 151 159 38000 153 | 152 37 37300 154 | 153 87 37900 155 | 154 99 37800 156 | 155 150 37500 157 | 156 38 37100 158 | 157 47 37700 159 | 158 81 38600 160 | 159 149 38600 161 | 160 32 37700 162 | 161 50 38800 163 | 162 27 39600 164 | 163 166 40500 165 | 164 74 39400 166 | 165 269 40100 167 | 166 52 37600 168 | 167 2 38400 169 | 168 105 39800 170 | 169 36 39800 171 | 170 57 40800 172 | 171 185 41900 173 | 172 16 40700 174 | 173 114 42100 175 | 174 124 41800 176 | 175 53 41300 177 | 176 57 42300 178 | 177 70 43100 179 | 178 64 43700 180 | 179 168 44700 181 | 180 22 43700 182 | 181 63 45000 183 | 182 130 45700 184 | 183 72 45100 185 | 184 289 45700 186 | 185 51 42400 187 | 186 44 43300 188 | 187 42 44300 189 | 188 129 45400 190 | 189 174 44800 191 | 190 16 43600 192 | 191 232 45200 193 | 192 29 42800 194 | 193 47 44100 195 | 194 159 44800 196 | 195 128 43900 197 | 196 44 43300 198 | 197 28 44300 199 | 198 140 45600 200 | 199 239 45000 201 | 200 70 42600 202 | 201 17 42900 203 | 202 171 44500 204 | 203 92 43100 205 | 204 149 43400 206 | 205 89 42500 207 | 206 207 42700 208 | 207 22 41100 209 | 208 292 42100 210 | 209 45 39300 211 | 210 251 40100 212 | 211 19 38400 213 | 212 117 39600 214 | 213 106 39200 215 | 214 88 39200 216 | 215 112 39300 217 | 216 1 39300 218 | 217 170 40600 219 | 218 226 39600 220 | 219 110 37900 221 | 220 110 37900 222 | 221 9 37700 223 | 222 98 38800 224 | 223 179 38700 225 | 224 51 37800 226 | 225 62 38400 227 | 226 95 39200 228 | 227 104 39200 229 | 228 95 39000 230 | 229 47 39100 231 | 230 94 39800 232 | 231 9 39800 233 | 232 69 41300 234 | 233 67 41600 235 | 234 104 42200 236 | 235 34 42200 237 | 236 300 43200 238 | 237 83 40100 239 | 238 57 40300 240 | 239 258 40900 241 | 240 162 38800 242 | 241 51 37800 243 | 242 16 38400 244 | 243 89 39600 245 | 244 5 39700 246 | 245 120 41400 247 | 246 38 41000 248 | 247 8 41800 249 | 248 95 43200 250 | 249 35 43400 251 | 250 145 44700 252 | 251 42 43700 253 | 252 48 45000 254 | 253 66 45800 255 | 254 28 46300 256 | 255 131 47900 257 | 256 184 47400 258 | 257 160 45600 259 | 258 53 44400 260 | 259 77 45300 261 | 260 21 46000 262 | 261 251 47500 263 | 262 89 44600 264 | 263 103 44900 265 | 264 62 44900 266 | 265 25 45700 267 | 266 178 47100 268 | 267 61 45900 269 | 268 134 46400 270 | 269 35 46100 271 | 270 60 47300 272 | 271 106 48400 273 | 272 110 48100 274 | 273 85 47900 275 | 274 25 48300 276 | 275 125 49800 277 | 276 30 49400 278 | 277 78 50700 279 | 278 143 51300 280 | 279 163 50600 281 | 280 130 49400 282 | 281 79 48800 283 | 282 4 49100 284 | 283 289 51100 285 | 284 188 47600 286 | 285 33 45900 287 | 286 118 47100 288 | 287 129 46800 289 | 288 1 46300 290 | 289 290 48200 291 | 290 22 44800 292 | 291 23 46200 293 | 292 228 47400 294 | 293 123 45200 295 | 294 137 44800 296 | 295 47 44200 297 | 296 170 44900 298 | 297 94 44100 299 | 298 123 44200 300 | 299 87 43800 301 | 300 151 44300 302 | 301 6 43600 303 | 302 14 45100 304 | 303 62 46400 305 | 304 91 47100 306 | 305 41 47100 307 | 306 1 48200 308 | 307 145 50100 309 | 308 132 49000 310 | 309 137 48400 311 | 310 79 47700 312 | 311 55 48200 313 | 312 23 48900 314 | 313 90 50300 315 | 314 50 50500 316 | 315 329 51300 317 | 316 134 47200 318 | 317 226 46800 319 | 318 120 44900 320 | 319 127 44500 321 | 320 196 44000 322 | 321 154 42500 323 | 322 163 42000 324 | 323 151 41100 325 | 324 71 40400 326 | 325 89 40800 327 | 326 16 40800 328 | 327 45 42100 329 | 328 19 42800 330 | 329 158 44200 331 | 330 166 43200 332 | 331 196 42100 333 | 332 159 40800 334 | 333 200 40000 335 | 334 38 38700 336 | 335 50 39300 337 | 336 24 40000 338 | 337 41 40900 339 | 338 8 41700 340 | 339 170 43100 341 | 340 271 42200 342 | 341 76 39900 343 | 342 23 40100 344 | 343 17 41000 345 | 344 307 42500 346 | 345 66 39800 347 | 346 14 40100 348 | 347 115 41400 349 | 348 55 41200 350 | 349 137 41600 351 | 350 56 41400 352 | 351 39 41900 353 | 352 93 42600 354 | 353 33 43000 355 | 354 12 44100 356 | 355 7 45700 357 | 356 164 47300 358 | 357 31 46300 359 | 358 59 47600 360 | 359 231 48500 361 | 360 351 46100 362 | 361 26 42200 363 | 362 162 43200 364 | 363 161 42000 365 | 364 16 41000 366 | 365 14 42300 367 | 366 28 43500 368 | 367 44 44500 369 | 368 64 45500 370 | 369 39 46300 371 | 370 21 47500 372 | 371 66 49100 373 | 372 161 49700 374 | 373 50 48200 375 | 374 89 49200 376 | 375 157 49300 377 | 376 156 48600 378 | 377 109 47600 379 | 378 76 47700 380 | 379 21 48200 381 | 380 63 50000 382 | 381 188 51000 383 | 382 70 49300 384 | 383 245 50100 385 | 384 5 47400 386 | 385 86 49200 387 | 386 293 49500 388 | 387 171 45800 389 | 388 121 44500 390 | 389 49 44000 391 | 390 140 45000 392 | 391 120 44500 393 | 392 83 44300 394 | 393 96 44700 395 | 394 84 45000 396 | 395 109 45200 397 | 396 120 44900 398 | 397 125 44500 399 | 398 201 44000 400 | 399 7 42300 401 | 400 222 43900 402 | 401 5 42300 403 | 402 67 43800 404 | 403 124 44200 405 | 404 51 43700 406 | 405 213 44800 407 | 406 68 43000 408 | 407 12 43300 409 | 408 85 44800 410 | 409 190 45000 411 | 410 31 43600 412 | 411 184 44700 413 | 412 121 43300 414 | 413 102 43000 415 | 414 147 42800 416 | 415 127 42000 417 | 416 11 41400 418 | 417 138 42800 419 | 418 87 42100 420 | 419 135 42200 421 | 420 10 41900 422 | 421 42 43700 423 | 422 67 44500 424 | 423 100 45100 425 | 424 176 45300 426 | 425 209 43900 427 | 426 27 42100 428 | 427 80 43100 429 | 428 101 43300 430 | 429 12 43200 431 | 430 93 44500 432 | 431 91 44400 433 | 432 17 44500 434 | 433 281 46100 435 | 434 34 43000 436 | 435 72 44000 437 | 436 197 44600 438 | 437 115 43200 439 | 438 86 43000 440 | 439 61 43100 441 | 440 88 43600 442 | 441 137 43600 443 | 442 38 43200 444 | 443 34 44100 445 | 444 55 45500 446 | 445 6 46100 447 | 446 250 47900 448 | 447 70 45500 449 | 448 161 46200 450 | 449 81 45200 451 | 450 27 45400 452 | 451 194 46800 453 | 452 149 45200 454 | 453 100 44300 455 | 454 71 44300 456 | 455 105 44800 457 | 456 83 44700 458 | 457 111 45000 459 | 458 15 44900 460 | 459 17 46600 461 | 460 142 48000 462 | 461 123 47400 463 | 462 120 46800 464 | 463 179 46400 465 | 464 110 45000 466 | 465 188 44800 467 | 466 43 43500 468 | 467 85 44400 469 | 468 90 44500 470 | 469 165 44600 471 | 470 203 43700 472 | 471 10 42000 473 | 472 92 43500 474 | 473 25 43700 475 | 474 46 45000 476 | 475 210 46000 477 | 476 30 44200 478 | 477 36 45200 479 | 478 53 46400 480 | 479 341 47300 481 | 480 129 43400 482 | 481 79 42800 483 | 482 175 43000 484 | 483 74 41800 485 | 484 12 42200 486 | 485 45 43700 487 | 486 12 44800 488 | 487 105 46200 489 | 488 225 46100 490 | 489 26 44000 491 | 490 127 45100 492 | 491 113 44600 493 | 492 166 44400 494 | 493 51 43200 495 | 494 77 44300 496 | 495 73 44500 497 | 496 31 44900 498 | 497 151 46300 499 | 498 253 45500 500 | 499 134 43000 501 | 500 93 42500 502 | 501 176 42600 503 | 502 150 41500 504 | 503 18 40700 505 | 504 4 41800 506 | 505 14 43200 507 | 506 4 44300 508 | 507 37 46300 509 | 508 55 47400 510 | 509 60 48400 511 | 510 38 49200 512 | 511 7 50300 513 | 512 207 52500 514 | 513 13 50400 515 | 514 102 52328 516 | 515 259 52225 517 | 516 66 49000 518 | 517 114 49700 519 | 518 95 49500 520 | 519 51 49400 521 | 520 166 50200 522 | 521 34 49000 523 | 522 258 50400 524 | 523 109 47400 525 | 524 97 47400 526 | 525 71 47500 527 | 526 6 48300 528 | 527 157 50000 529 | 528 28 48900 530 | 529 363 50300 531 | 530 81 45800 532 | 531 145 46300 533 | 532 185 45400 534 | 533 44 44100 535 | 534 188 44800 536 | 535 188 43400 537 | 536 57 42300 538 | 537 192 42800 539 | 538 15 41300 540 | 539 123 42500 541 | 540 36 42500 542 | 541 51 43500 543 | 542 139 44300 544 | 543 13 43800 545 | 544 66 45200 546 | 545 42 45600 547 | 546 3 46500 548 | 547 163 48100 549 | 548 189 47000 550 | 549 91 45700 551 | 550 11 45700 552 | 551 115 47300 553 | 552 146 47100 554 | 553 2 46500 555 | 554 34 48200 556 | 555 46 49400 557 | 556 78 50400 558 | 557 43 50800 559 | 558 1 52100 560 | 559 125 54600 561 | 560 44 54200 562 | 561 99 55500 563 | 562 65 55700 564 | 563 18 56700 565 | 564 193 58600 566 | 565 39 56200 567 | 566 353 57500 568 | 567 24 51800 569 | 568 17 53300 570 | 569 16 55100 571 | 570 222 57000 572 | 571 64 54100 573 | 572 82 54700 574 | 573 124 55400 575 | 574 84 54600 576 | 575 204 55000 577 | 576 208 53100 578 | 577 82 50900 579 | 578 119 51300 580 | 579 145 51000 581 | 580 298 50000 582 | 581 127 46800 583 | 582 50 46200 584 | 583 137 47300 585 | 584 131 46800 586 | 585 91 46300 587 | 586 277 46400 588 | 587 16 43500 589 | 588 149 44900 590 | 589 273 44000 591 | 590 120 42000 592 | 591 1 41700 593 | 592 73 43200 594 | 593 4 43800 595 | 594 14 45200 596 | 595 36 46700 597 | 596 37 48000 598 | 597 12 49100 599 | 598 66 50900 600 | 599 57 51500 601 | 600 27 52400 602 | 601 37 53829 603 | 602 146 55135 604 | 603 118 54326 605 | 604 183 53700 606 | 605 15 52000 607 | 606 75 53700 608 | 607 132 54000 609 | 608 105 53500 610 | 609 360 53600 611 | 610 55 48900 612 | 611 91 49500 613 | 612 131 49800 614 | 613 123 49300 615 | 614 34 48700 616 | 615 61 49800 617 | 616 26 50400 618 | 617 29 51800 619 | 618 87 53200 620 | 619 255 53200 621 | 620 25 50300 622 | 621 25 51600 623 | 622 256 53100 624 | 623 118 50000 625 | 624 29 49500 626 | 625 2 51000 627 | 626 200 52800 628 | 627 73 51300 629 | 628 14 51700 630 | 629 34 53200 631 | 630 161 54400 632 | 631 44 53400 633 | 632 76 54500 634 | 633 72 55000 635 | 634 199 55800 636 | 635 32 53600 637 | 636 92 55400 638 | 637 36 55800 639 | 638 201 57300 640 | 639 341 55100 641 | 640 30 50500 642 | 641 19 52300 643 | 642 94 54000 644 | 643 209 54100 645 | 644 162 52000 646 | 645 138 51000 647 | 646 31 50300 648 | 647 229 51900 649 | 648 191 49500 650 | 649 120 48100 651 | 650 172 48000 652 | 651 301 47000 653 | 652 148 43900 654 | 653 130 43200 655 | 654 97 42700 656 | 655 223 42600 657 | 656 126 40900 658 | 657 60 40500 659 | 658 48 40800 660 | 659 152 41400 661 | 660 95 40700 662 | 661 7 40500 663 | 662 7 41600 664 | 663 290 42900 665 | 664 61 40500 666 | 665 164 41100 667 | 666 22 40100 668 | 667 173 41000 669 | 668 6 40200 670 | 669 223 41400 671 | 670 159 40200 672 | 671 29 39400 673 | 672 8 40200 674 | 673 46 41500 675 | 674 7 42300 676 | 675 154 43500 677 | 676 289 42700 678 | 677 32 40000 679 | 678 113 40700 680 | 679 152 40500 681 | 680 164 40100 682 | 681 71 39100 683 | 682 142 39300 684 | 683 97 39000 685 | 684 29 39100 686 | 685 56 39800 687 | 686 89 40200 688 | 687 214 40500 689 | 688 140 38900 690 | 689 180 38200 691 | 690 121 37000 692 | 691 53 36900 693 | 692 212 37300 694 | 693 130 35900 695 | 694 50 35400 696 | 695 49 36100 697 | 696 96 36500 698 | 697 76 36500 699 | 698 31 36500 700 | 699 107 37500 701 | 700 70 37800 702 | 701 13 38000 703 | 702 182 38900 704 | 703 80 37700 705 | 704 58 38200 706 | 705 220 38800 707 | 706 47 37200 708 | 707 55 37700 709 | 708 26 38600 710 | 709 4 39800 711 | 710 33 41300 712 | 711 7 42600 713 | 712 89 44600 714 | 713 5 44900 715 | 714 129 46800 716 | 715 144 46200 717 | 716 70 45600 718 | 717 41 46200 719 | 718 132 47300 720 | 719 37 46600 721 | 720 27 48000 722 | 721 80 49600 723 | 722 124 49800 724 | 723 22 49100 725 | 724 44 51200 726 | 725 3 52500 727 | 726 104 55100 728 | 727 253 54900 729 | 728 111 51400 730 | 729 166 50900 731 | 730 115 49800 732 | 731 11 49600 733 | 732 209 51400 734 | 733 92 48900 735 | 734 119 48900 736 | 735 45 48300 737 | 736 86 49600 738 | 737 305 50300 739 | 738 127 46200 740 | 739 121 45800 741 | 740 2 45500 742 | 741 219 47500 743 | 742 133 45300 744 | 743 91 44800 745 | 744 230 45000 746 | 745 59 42800 747 | 746 42 43400 748 | 747 57 44400 749 | 748 116 45300 750 | 749 249 45100 751 | 750 97 42900 752 | 751 156 43000 753 | 752 61 42100 754 | 753 32 42900 755 | 754 227 44100 756 | 755 108 42100 757 | 756 34 42000 758 | 757 70 43000 759 | 758 91 43400 760 | 759 155 43500 761 | 760 29 42700 762 | 761 21 43800 763 | 762 187 45000 764 | 763 9 43800 765 | 764 118 45300 766 | 765 82 45000 767 | 766 53 45500 768 | 767 19 46200 769 | 768 80 47600 770 | 769 2 47900 771 | 770 171 49600 772 | 771 84 48200 773 | 772 228 48300 774 | 773 85 46100 775 | 774 1 46200 776 | 775 190 48000 777 | 776 202 46600 778 | 777 43 44900 779 | 778 33 45700 780 | 779 93 46900 781 | 780 38 46900 782 | 781 168 47900 783 | 782 55 46600 784 | 783 118 47500 785 | 784 2 47000 786 | 785 47 48700 787 | 786 48 49400 788 | 787 42 50500 789 | 788 156 52100 790 | 789 192 50900 791 | 790 7 49200 792 | 791 250 51200 793 | 792 287 48100 794 | 793 211 45100 795 | 794 282 43300 796 | 795 100 40800 797 | 796 59 40700 798 | 797 46 41200 799 | 798 135 42300 800 | 799 170 41800 801 | 800 47 40900 802 | 801 84 41500 803 | 802 49 41900 804 | 803 35 42700 805 | 804 4 43700 806 | 805 53 45600 807 | 806 13 46300 808 | 807 224 47800 809 | 808 109 45600 810 | 809 46 45500 811 | 810 74 46700 812 | 811 188 47100 813 | 812 13 45800 814 | 813 159 47200 815 | 814 82 46100 816 | 815 15 46600 817 | 816 8 48200 818 | 817 162 49900 819 | 818 58 48600 820 | 819 164 49400 821 | 820 108 48400 822 | 821 66 48100 823 | 822 137 48600 824 | 823 102 48100 825 | 824 50 47800 826 | 825 132 48800 827 | 826 30 48200 828 | 827 139 49500 829 | 828 332 48500 830 | 829 220 44600 831 | 830 89 42600 832 | 831 47 42900 833 | 832 74 43600 834 | 833 189 44300 835 | 834 90 42900 836 | 835 78 42800 837 | 836 31 43300 838 | 837 111 44600 839 | 838 64 44300 840 | 839 168 44800 841 | 840 214 43700 842 | 841 161 41900 843 | 842 110 41100 844 | 843 2 40900 845 | 844 100 42400 846 | 845 22 42200 847 | 846 15 43200 848 | 847 116 44500 849 | 848 206 44100 850 | 849 69 42500 851 | 850 65 43200 852 | 851 79 43500 853 | 852 166 44100 854 | 853 16 43400 855 | 854 6 45000 856 | 855 18 47000 857 | 856 166 48500 858 | 857 36 47200 859 | 858 176 48400 860 | 859 156 47100 861 | 860 23 46200 862 | 861 60 47500 863 | 862 13 48300 864 | 863 118 49900 865 | 864 39 49400 866 | 865 124 50400 867 | 866 16 49900 868 | 867 82 51400 869 | 868 48 52100 870 | 869 97 53300 871 | 870 47 53200 872 | 871 34 54400 873 | 872 64 56200 874 | 873 283 56900 875 | 874 35 52900 876 | 875 271 54300 877 | 876 13 50600 878 | 877 54 52100 879 | 878 119 53300 880 | 879 355 52800 881 | 880 149 48100 882 | 881 413 47200 883 | 882 75 42400 884 | 883 90 42800 885 | 884 16 43000 886 | 885 85 44100 887 | 886 122 44500 888 | 887 193 43900 889 | 888 133 42600 890 | 889 76 42500 891 | 890 113 43100 892 | 891 187 42900 893 | 892 162 41600 894 | 893 126 40700 895 | 894 73 40500 896 | 895 10 40900 897 | 896 54 42200 898 | 897 96 42700 899 | 898 81 42800 900 | 899 105 43000 901 | 900 10 43100 902 | 901 148 44700 903 | 902 158 44100 904 | 903 62 43300 905 | 904 124 43700 906 | 905 325 43400 907 | 906 47 40200 908 | 907 137 40700 909 | 908 41 40300 910 | 909 193 41300 911 | 910 131 40100 912 | 911 2 39600 913 | 912 191 40900 914 | 913 32 39900 915 | 914 91 40600 916 | 915 2 40600 917 | 916 134 41800 918 | 917 37 41400 919 | 918 193 42200 920 | 919 74 41000 921 | 920 129 41500 922 | 921 86 40900 923 | 922 55 41100 924 | 923 92 41500 925 | 924 42 41600 926 | 925 175 42400 927 | 926 107 41300 928 | 927 106 41000 929 | 928 67 40800 930 | 929 22 41200 931 | 930 40 42300 932 | 931 85 43100 933 | 932 211 43100 934 | 933 11 41300 935 | 934 208 43000 936 | 935 100 41100 937 | 936 10 41400 938 | 937 37 42600 939 | 938 61 43500 940 | 939 56 44200 941 | 940 23 45400 942 | 941 24 47000 943 | 942 67 49100 944 | 943 11 49700 945 | 944 72 51700 946 | 945 292 52200 947 | 946 13 48200 948 | 947 23 50100 949 | 948 39 52000 950 | 949 333 53600 951 | 950 121 48600 952 | 951 262 48200 953 | 952 92 45500 954 | 953 1 45800 955 | 954 95 47700 956 | 955 177 47700 957 | 956 192 46100 958 | 957 27 44500 959 | 958 80 45800 960 | 959 51 46100 961 | 960 56 47000 962 | 961 150 47700 963 | 962 181 46900 964 | 963 41 45600 965 | 964 173 46500 966 | 965 146 45300 967 | 966 191 44900 968 | 967 190 43400 969 | 968 368 42100 970 | 969 36 38500 971 | 970 33 39500 972 | 971 21 40400 973 | 972 63 41400 974 | 973 104 42100 975 | 974 31 41900 976 | 975 153 42900 977 | 976 94 42000 978 | 977 44 42100 979 | 978 223 42900 980 | 979 146 41300 981 | 980 38 40600 982 | 981 90 41500 983 | 982 132 41700 984 | 983 146 41100 985 | 984 89 40500 986 | 985 39 40600 987 | 986 101 41600 988 | 987 66 41600 989 | 988 70 42200 990 | 989 13 42600 991 | 990 140 43800 992 | 991 149 43100 993 | 992 163 42400 994 | 993 93 41600 995 | 994 6 41600 996 | 995 112 43300 997 | 996 51 43100 998 | 997 210 43700 999 | 998 86 42000 1000 | 999 50 42100 1001 | -------------------------------------------------------------------------------- /test_DAs_example/gif_DGW_16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_DGW_16.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_DGW_8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_DGW_8.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_DIGISHIELD_12.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_DIGISHIELD_12.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_DIGISHIELD_4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_DIGISHIELD_4.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_DIGISHIELD_impoved_13.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_DIGISHIELD_impoved_13.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_DIGISHIELD_impoved_5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_DIGISHIELD_impoved_5.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_EMA_14.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_EMA_14.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_EMA_6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_EMA_6.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_LWMA1_10.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_LWMA1_10.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_LWMA1_2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_LWMA1_2.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_LWMA4_11.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_LWMA4_11.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_LWMA4_3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_LWMA4_3.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_SMA_15.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_SMA_15.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_SMA_7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_SMA_7.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_TSA1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_TSA1.gif -------------------------------------------------------------------------------- /test_DAs_example/gif_TSA9.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zawy12/difficulty-algorithms/e0b6aa5d525903354d626365a65706c4cc58a3d4/test_DAs_example/gif_TSA9.gif -------------------------------------------------------------------------------- /test_DAs_gnuplot.txt: -------------------------------------------------------------------------------- 1 | 2 | # tic label frequency 3 | set xrange [ARG1:ARG2] 4 | set yrange [0:2] 5 | set y2range [0:10] 6 | 7 | set ylabel 'Normalized Difficulty' 8 | set y2label 'Normalized Hashrate and Solvetimes' 9 | 10 | set ylabel font "Arial, 10" 11 | set y2label font "Arial, 10" 12 | 13 | set xtics ARG3 14 | set xtics rotate 15 | set ytics 0.2 16 | set y2tics 1 17 | 18 | set tics font "Arial,10" 19 | # tics between labels 20 | # set mxtics 2 21 | set grid xtics ytics mxtics mytics 22 | set term gif size 1200, 400 23 | set output "gif_" . ARG4 . ".gif" 24 | 25 | set size 1,1 26 | 27 | set title font "Arial, 15" 28 | set title ARG4 offset 0,-1 29 | 30 | # Do large plots 31 | plot "plot_" . ARG4 . ".txt" using 1:2 with filledcurve y1=1 title "Difficulty", \ 32 | "plot_" . ARG4 . ".txt" using 1:4 with filledcurve y2=1 axes x1y2 title "Actual HashRate", \ 33 | "plot_" . ARG4 . ".txt" using 1:5 lt rgb "blue" lw 1 with lines axes x1y2 title "Avg " . ARG5 . " ST", \ 34 | "plot_" . ARG4 . ".txt" using 1:6 lt rgb "red" lw 1 with lines axes x1y2 title "11 ST's estimate of Hashrate", \ 35 | "plot_" . ARG4 . ".txt" using 1:7 lt rgb "blue" pt 1 with points axes x1y1 title "TSA" 36 | # "plot_" . ARG4 . ".txt" using 1:7 lt rgb "blue" with filledcurve y2=0 axes x1y2 title "Delays", \ 37 | 38 | 39 | -------------------------------------------------------------------------------- /timespan_attack.cpp: -------------------------------------------------------------------------------- 1 | // Timespan Limit Attack Demonstration 2 | // Copyright (c) Zawy 2019 3 | // MIT License 4 | /* 5 | This demonstrates how a >50% selfish mining attack can get unlimited number of blocks in about 3x the 6 | difficulty window by retarding the MTP and using timespan limits against themselves. The attack can work on 7 | any algo that use a timespan limit without requiring the timestamps to be sequential. It currently only 8 | tests symmetrical limits on simple moving averages like BCH and DASH. A future update may include the 9 | easier cases of fixed-window algos like BTC and LTC and asymmetrical fractional limits. 10 | See https://github.com/zawy12/difficulty-algorithms/issues/30 11 | */ 12 | 13 | #include // for cout 14 | #include 15 | #include 16 | #include 17 | #include // for array sort 18 | using namespace std; 19 | typedef int64_t u; 20 | typedef double d; // instead of arith_256 21 | 22 | float fRand(float fMin, float fMax) { 23 | float f = (float)rand() / RAND_MAX; 24 | return fMin + f * (fMax - fMin); 25 | } 26 | u median(u a[], u n) { sort(a, a+n); return a[n/2]; } 27 | 28 | d BCH(d targets[], u S[], u N, u T, u L, u h) { 29 | d sumTargets=0; 30 | u front_array[3] = {S[h-1], S[h-2], S[h-3]}; 31 | u back_array[3] = {S[h-1-N], S[h-2-N], S[h-3-N]}; 32 | // BCH reduces out of sequence timstamps like this: 33 | u front = median( front_array, 3 ); 34 | u back = median( back_array, 3 ); 35 | // Here's the limit that allows the exploit. 36 | u timespan = min(L*N*T, max(N*T/L, front - back)); 37 | 38 | // Identify the corresponding targets 39 | u j; 40 | if (front == S[h-1]) { j = h-1; } 41 | else if (front == S[h-2]) { j = h-2; } 42 | else { j = h-3; } 43 | u k; 44 | if (back == S[h-1-N]) { k = h-1-N; } 45 | else if (back == S[h-2-N]) { k = h-2-N; } 46 | else { k = h-3-N; } 47 | for (u i = j; i > k; i-- ) { sumTargets += targets[i]; } 48 | return sumTargets*timespan/T/(j-k)/(j-k); 49 | } 50 | d SMA(d targets[], u S[], u N, u T, u L, u h) { 51 | d sumTargets=0; 52 | u timespan = min(L*N*T, max(N*T/L, S[h-1] - S[h-1-N])); 53 | for (u i = h-1; i>=h-N; i-- ) { sumTargets += targets[i]; } 54 | return sumTargets*timespan/T/N/N; 55 | } 56 | d Digishield(d targets[], u S[], u N, u T, u L, u h) { 57 | // This does not include the MTP delay in Digishield that stops the attack. 58 | d sumTargets=0; 59 | u timespan = min(L*N*T, max(N*T/L, S[h-1] - S[h-1-N])); 60 | for (u i = h-1; i>=h-N; i-- ) { sumTargets += targets[i]; } 61 | return sumTargets*(3*N*T + timespan)/T/N/N; 62 | } 63 | d DGW(d targets[], u S[], u N, u T, u L, u h) { 64 | d sumTargets=0; 65 | u timespan = min(L*N*T, max(N*T/L, S[h-1] - S[h-1-N])); 66 | for (u i = h-1; i>=h-N; i-- ) { sumTargets += targets[i]; } 67 | // The following makes DGW different from SMA: double weight to most recent target. 68 | sumTargets +=targets[h-1]; 69 | return sumTargets*timespan/T/N/(N+1); 70 | } 71 | d LWMA(d targets[], u S[], u N, u T, u L, u h) { 72 | // not currently supported because the attack needs to be modified 73 | d sumTargets=0; 74 | u weighted_sum_time; 75 | for (u i = h-1; i>=h-N; i--) { weighted_sum_time += min(6*T,max(-6*T,(S[i]-S[i-1]))); } 76 | for (u i = h-1; i>=h-N; i-- ) { sumTargets += targets[i]; } 77 | return sumTargets*weighted_sum_time*2/T/N/N/(N+1); 78 | } 79 | d run_DA (string choose_DA, d targets[], u S[], u N, u T, u L, u h) { 80 | if (choose_DA == "BCH") { BCH(targets, S, N, T, L, h); } 81 | if (choose_DA == "SMA" ) { SMA(targets, S, N, T, L, h); } 82 | if (choose_DA == "DGW" ) { DGW(targets, S, N, T, L, h); } 83 | /* if (choose_DA == "Digishield" ) { Digishield(targets, S, N, T, L, h); } 84 | if (choose_DA == "LWMA" ) { LWMA(targets, S, N, T, L, h); } 85 | if (choose_DA == "Boris" ) { Boris(targets, S, N, T, L, h); } 86 | if (choose_DA == "BTC" ) { BTC(targets, S, N, T, L, h); } 87 | if (choose_DA == "LTC" ) { LTC(targets, S, N, T, L, h); } 88 | if (choose_DA == "ETH" ) { ETH(targets, S, N, T, L, h); } */ 89 | } 90 | int main () { 91 | srand(time(0)); 92 | 93 | u test_DA = 0; // set to 1 to test DA code without the attack 94 | 95 | u N = 20; // difficulty averaging window, use > MTP 96 | u L = 2; // timespan limit. BTC=4, BCH=2, DASH / DGW=3. Symmetrical assumed. 97 | u T = 100; // block time 98 | u MTP = 11; // most coins use MTP=11 (median of the past 11 timestamps) 99 | 100 | // The following is adjusted to increase the # of blocks gained and decrease the time required. 101 | // Select a target number of blocks (via blocks = 10*N below) then keep adjusting it. 102 | 103 | u adjust = 115; // This is critical. A change of 1% can double the blocks. Typical range: 25 to 150. 104 | u try_all_adjusts = 0; // Set to 1 if you want it to try adjust settings 24 to 150. 105 | 106 | string choose_DA = "BCH"; // currently supports BCH, SMA, or DGW 107 | 108 | if (choose_DA == "BCH" ) { T=600; N=144; L=2; } // BCH adjust = 103 got 70k blocks in 3.5 days; 109 | if (choose_DA == "DGW" ) { N=24; L=3; } // DGW. Adjust = 25 got a lot 110 | 111 | u blocks = 1000; // How many blocks to get. (try = 3*N at first) 112 | 113 | u S[blocks + N + MTP]; // S = stamps = timestamps 114 | u real_time[blocks + N + MTP]; 115 | // Using doubles to avoid arith_256 header. 116 | d solvetime = 0; // for keeping track of real time 117 | d targets[blocks + N + MTP]; 118 | d public_HR = 100000; // Hashes per second 119 | d attacker_HR = 1; // attacker's HR as fraction of public_HR without him (1=50% attack, 2 = 66%) 120 | d leading_zeros = 32; // 32 for BTC 121 | d powLimit = pow(2,256-leading_zeros); 122 | d difficulty; 123 | d avg_initial_diff = public_HR*T/pow(2,leading_zeros); 124 | assert( MTP % 2 == 1); // allow only odd for easily finding median 125 | 126 | // h = height, S[] = timestamps 127 | 128 | cout << "Initialize N + MTP blocks:\nheight,\ttimestamps,\tdifficulty,\ttarget,\treal time,\tsolvetime\n"; 129 | 130 | // Initialize N+1 targets and timestamps before attack begins. 131 | S[0]=0; // typically 0 or time(0) 132 | real_time[0] = S[0]; 133 | targets[0]=pow(2,256)/public_HR/T; 134 | u do_things_proper_which_makes_results_harder_to_understand = 0; 135 | for (u h=1; h= MTP_previous && 203 | Q == S[h-1]+1 ) { S[h] = M + S[h-N]; } // jumps to a forward time if MTP is safely delayed. 204 | else { S[h] = Q; } // holds back the MTP 205 | } 206 | // After 1st N blocks, do the sustained attack pattern. 207 | // It's possible to use the following alone to replace the above, but 208 | // may take 2x longer in some algos. 209 | else { 210 | MTP_array[0] = Q + M; 211 | for (u i = 1; i= MTP_previous && 216 | Q == S[h-N]+N ) { S[h] = M + Q; } // jumps to our forward "submit" time if MTP is safely delayed. 217 | else { S[h] = Q; } // holds back the MTP 218 | } 219 | Q += 1; // Because protocol requires timestamps >= MTP + 1 second 220 | 221 | for (u i = 1; i<=MTP; i++) { MTP_array[i] = S[h-i]; } 222 | MTP_previous = median(MTP_array, MTP); 223 | 224 | difficulty = powLimit/targets[h]; 225 | sumDiffs += difficulty; 226 | sumTimeWeightedTarget += targets[h]*solvetime; 227 | if (!try_all_adjusts) { 228 | cout << h << "\t" << S[h] << "\t" << MTP_previous << "\t" 229 | << round(1000*difficulty/avg_initial_diff)/1000 << "\t" << round(solvetime) 230 | << "\t" << real_time[h] << "\t"<< round(10*(real_time[h] - real_time[MTP+N-1])/60)/10 231 | << endl; 232 | } 233 | 234 | // Double check the code 235 | for (u i = 0; i maxTimestamp) { maxTimestamp = S[h]; } 242 | if ( maxTimestamp < real_time[h] && j > 1.5*N ) { 243 | if (!try_all_adjusts) { 244 | cout << "\nReal time has caught up with the forwarded timestamps."; 245 | cout << "Send the private chain to public nodes or increase 'adjust' to "; 246 | cout << "get more blocks in possibly a lot less time.\n"; 247 | } 248 | break; 249 | } 250 | } 251 | j++; 252 | } // end loop based on height 253 | 254 | if (test_DA != 1 && !try_all_adjusts) { cout << "\nheight, timestamp, MTP, normalized Difficulty, " << 255 | "solvetime, real time, minutes into attack\n"; 256 | } 257 | d tw_norm_diff = powLimit/avg_initial_diff*(real_time[j-1+N+MTP]-real_time[N+MTP-1])/sumTimeWeightedTarget; 258 | if (!try_all_adjusts) { 259 | cout << "\nAvg solvetime: " << (real_time[j-1+N+MTP]-real_time[N+MTP-1])/j << " seconds\n"; 260 | cout << "Time-weighted normalized difficulty: " << tw_norm_diff << endl; 261 | cout << "Average normalized difficulty: " << sumDiffs/avg_initial_diff/j << endl; 262 | } 263 | else if (maxTimestamp < real_time[h-1]+2*T ){ 264 | cout << adjust << " " << j << " " << maxTimestamp-S[N+MTP-1] << " " << real_time[h-1]-S[N+MTP-1] << " " 265 | << round(100*real_time[h-1]/3600)/100 << " " << tw_norm_diff << endl; 266 | } 267 | } // end trying each adjust 268 | if (try_all_adjusts) { 269 | cout << "adjust, blocks, max tamestamp, real time, attack hours, avg normalized difficulty\n"; 270 | } 271 | return(0); 272 | } 273 | --------------------------------------------------------------------------------