summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gr-fec/lib/ldpc_par_chk_mtrx.cc2
-rw-r--r--gr-fec/python/fec/LDPC/n_0100_k_0023_gap_10.alist181
-rw-r--r--gr-fec/python/fec/LDPC/n_0100_k_0027_gap_04.alist177
-rw-r--r--gr-fec/python/fec/LDPC/n_0100_k_0042_gap_02.alist162
-rw-r--r--gr-fec/python/fec/LDPC/n_0300_k_0103_gap_24.alist501
-rw-r--r--gr-fec/python/fec/LDPC/n_0300_k_0122_gap_06.alist482
-rw-r--r--gr-fec/python/fec/LDPC/n_0300_k_0152_gap_03.alist452
-rw-r--r--gr-fec/python/fec/LDPC/n_0500_k_0127_gap_21.alist877
-rw-r--r--gr-fec/python/fec/LDPC/n_0500_k_0202_gap_11.alist802
-rw-r--r--gr-fec/python/fec/LDPC/n_0512_k_0130_gap_21.alist898
-rw-r--r--gr-fec/python/fec/LDPC/n_0700_k_0282_gap_16.alist1122
-rw-r--r--gr-fec/python/fec/LDPC/n_1100_k_0442_gap_24.alist1762
-rw-r--r--gr-fec/python/fec/LDPC/n_1300_k_0522_gap_30.alist2082
-rw-r--r--gr-fec/python/fec/LDPC/n_1800_k_0902_gap_28.alist2702
-rw-r--r--gr-fec/python/fec/qa_fecapi_ldpc.py239
15 files changed, 12440 insertions, 1 deletions
diff --git a/gr-fec/lib/ldpc_par_chk_mtrx.cc b/gr-fec/lib/ldpc_par_chk_mtrx.cc
index 121a32b96e..3045b15611 100644
--- a/gr-fec/lib/ldpc_par_chk_mtrx.cc
+++ b/gr-fec/lib/ldpc_par_chk_mtrx.cc
@@ -123,7 +123,7 @@ namespace gr {
inputFile.open((*alist_file).c_str());
if (!inputFile) {
std::cout << "There was a problem opening file "
- << alist_file << " for reading.\n";
+ << *alist_file << " for reading.\n";
exit(1);
}
diff --git a/gr-fec/python/fec/LDPC/n_0100_k_0023_gap_10.alist b/gr-fec/python/fec/LDPC/n_0100_k_0023_gap_10.alist
new file mode 100644
index 0000000000..0595eaf21b
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0100_k_0023_gap_10.alist
@@ -0,0 +1,181 @@
+100 77
+4 5
+3 4 3 4 4 3 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+1 68 72
+2 69 72 73
+2 3 75
+3 4 69 73
+3 5 73 75
+5 6 74
+5 7 73 76
+7 8 74
+1 9 70 74
+8 10 71
+5 6 10 11
+12 68 75 77
+5 13 76 77
+8 13 14 74
+13 14 15
+11 14 15 16
+11 16 17 70
+11 17 18 68
+6 18 19 71
+16 18 20 69
+14 19 21 73
+12 21 22
+2 22 23 76
+10 20 23 24
+15 22 24 25
+2 23 26 70
+1 14 26 27
+10 19 24 28
+20 24 29 68
+15 29 30 68
+18 27 31
+12 28 32 75
+20 32 33
+12 26 34
+2 22 34 35
+17 25 35 36
+20 28 36 37
+3 25 37 38
+23 38 39 77
+34 40 77
+7 30 40 41
+13 15 37 42
+30 36 40 43
+6 22 39 44
+4 34 45 70
+29 31 41 46
+4 7 45 47
+19 27 46 48
+8 27 42 49
+1 39 42 50
+29 50 51 71
+43 52 72 76
+31 36 49 53
+34 39 44 54
+12 43 55 69
+21 53 55 56
+4 36 53 57
+33 44 58
+6 33 52 59
+10 43 49 60
+19 58 59 61
+44 48 61 62
+13 42 63 75
+9 26 55 64
+11 16 64 65
+25 46 64 66
+3 45 56 67
+1 57 66 67
+45 60 65 67
+21 40 53
+9 17 57 66
+7 28 31 69
+32 43 57 60
+16 33 38 42
+40 61 62 72
+35 50 52 55
+49 56 58
+35 38 62 77
+50 63 70 71
+24 28 60 65
+41 56 59 76
+17 18 26 27
+32 46 58 63
+25 56 57 59
+39 47 54 64
+29 61 63 67
+33 47 63 65
+38 41 65 71
+23 37 48 64
+37 55 60 62
+9 48 51
+31 45 66 67
+30 47 51 54
+8 49 50 54
+35 41 52 72
+48 51 53 61
+30 51 59 62
+32 47 52 74
+4 21 58 66
+9 44 46 54
+1 9 27 50 68
+2 3 23 26 35
+3 4 5 38 67
+4 45 47 57 99
+5 6 7 11 13
+6 11 19 44 59
+7 8 41 47 72
+8 10 14 49 94
+9 64 71 91 100
+10 11 24 28 60
+11 16 17 18 65
+12 22 32 34 55
+13 14 15 42 63
+14 15 16 21 27
+15 16 25 30 42
+16 17 20 65 74
+17 18 36 71 82
+18 19 20 31 82
+19 21 28 48 61
+20 24 29 33 37
+21 22 56 70 99
+22 23 25 35 44
+23 24 26 39 89
+24 25 28 29 80
+25 36 38 66 84
+26 27 34 64 82
+27 31 48 49 82
+28 32 37 72 80
+29 30 46 51 86
+30 41 43 93 97
+31 46 53 72 92
+32 33 73 83 98
+33 58 59 74 87
+34 35 40 45 54
+35 36 76 78 95
+36 37 43 53 57
+37 38 42 89 90
+38 39 74 78 88
+39 44 50 54 85
+40 41 43 70 75
+41 46 81 88 95
+42 49 50 63 74
+43 52 55 60 73
+44 54 58 62 100
+45 47 67 69 92
+46 48 66 83 100
+47 85 87 93 98
+48 62 89 91 96
+49 53 60 77 94
+50 51 76 79 94
+51 91 93 96 97
+52 59 76 95 98
+53 56 57 70 96
+54 85 93 94 100
+55 56 64 76 90
+56 67 77 81 84
+57 68 71 73 84
+58 61 77 83 99
+59 61 81 84 97
+60 69 73 80 90
+61 62 75 86 96
+62 75 78 90 97
+63 79 83 86 87
+64 65 66 85 89
+65 69 80 87 88
+66 68 71 92 99
+67 68 69 86 92
+1 12 18 29 30
+2 4 20 55 72
+9 17 26 45 79
+10 19 51 79 88
+1 2 52 75 95
+2 4 5 7 21
+6 8 9 14 98
+3 5 12 32 63
+7 13 23 52 81
+12 13 39 40 78
diff --git a/gr-fec/python/fec/LDPC/n_0100_k_0027_gap_04.alist b/gr-fec/python/fec/LDPC/n_0100_k_0027_gap_04.alist
new file mode 100644
index 0000000000..6aa7ac8915
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0100_k_0027_gap_04.alist
@@ -0,0 +1,177 @@
+100 73
+3 4
+2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3
+4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+1 70
+2 73
+2 3 70
+3 4 71
+5 71
+2 6 71
+6 7 70
+5 8
+7 9 71
+7 9 10
+1 11 72
+11 12
+8 12 13
+10 12 14
+6 15 72
+2 14 16
+3 12 17
+10 15 18
+16 18 19
+1 17 20
+18 21 72
+14 21 22
+9 19 23
+22 24
+24 25
+6 23 26
+13 26 27
+1 27 28
+20 28 29
+23 29 30
+27 29 31
+29 32 70
+26 32 33
+25 31 34
+15 30 35
+28 34 36
+11 35 37
+31 32 38
+17 36 39
+18 38 40
+13 37 41
+13 34 42
+36 43 73
+24 42 44
+26 42 45
+11 45 46
+15 44 47
+25 33 48
+40 48 49
+20 45 50
+36 38 51
+8 48 52
+8 39 53
+39 54 73
+3 50 55
+35 46 56
+21 56 57
+23 56 58
+4 55 59
+16 43 60
+47 53 61
+37 56 62
+30 62 63
+47 64 72
+34 62 65
+45 63 66
+46 57 67
+5 67 68
+32 57 69
+20 21 22
+44 47 48
+17 61 67
+65 69 73
+44 61 66
+10 54 69
+40 60 63
+46 53 66
+25 35 43
+31 58 60
+58 65 68
+62 64 65
+27 33 50
+22 41 64
+4 30 33
+51 60 63
+9 51 69
+24 41 68
+14 50 52
+4 42 53
+19 49 52
+39 52 59
+49 55 61
+37 55 59
+5 51 54
+16 43 67
+7 41 68
+38 54 57
+58 59
+19 40 66
+28 49 64
+1 11 20 28
+2 3 6 16
+3 4 17 55
+4 59 84 89
+5 8 68 94
+6 7 15 26
+7 9 10 96
+8 13 52 53
+9 10 23 86
+10 14 18 75
+11 12 37 46
+12 13 14 17
+13 27 41 42
+14 16 22 88
+15 18 35 47
+16 19 60 95
+17 20 39 72
+18 19 21 40
+19 23 90 99
+20 29 50 70
+21 22 57 70
+22 24 70 83
+23 26 30 58
+24 25 44 87
+25 34 48 78
+26 27 33 45
+27 28 31 82
+28 29 36 100
+29 30 31 32
+30 35 63 84
+31 34 38 79
+32 33 38 69
+33 48 82 84
+34 36 42 65
+35 37 56 78
+36 39 43 51
+37 41 62 93
+38 40 51 97
+39 53 54 91
+40 49 76 99
+41 83 87 96
+42 44 45 89
+43 60 78 95
+44 47 71 74
+45 46 50 66
+46 56 67 77
+47 61 64 71
+48 49 52 71
+49 90 92 100
+50 55 82 88
+51 85 86 94
+52 88 90 91
+53 61 77 89
+54 75 94 97
+55 59 92 93
+56 57 58 62
+57 67 69 97
+58 79 80 98
+59 91 93 98
+60 76 79 85
+61 72 74 92
+62 63 65 81
+63 66 76 85
+64 81 83 100
+65 73 80 81
+66 74 77 99
+67 68 72 95
+68 80 87 96
+69 73 75 86
+1 3 7 32
+4 5 6 9
+11 15 21 64
+2 43 54 73
diff --git a/gr-fec/python/fec/LDPC/n_0100_k_0042_gap_02.alist b/gr-fec/python/fec/LDPC/n_0100_k_0042_gap_02.alist
new file mode 100644
index 0000000000..f43a484d63
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0100_k_0042_gap_02.alist
@@ -0,0 +1,162 @@
+100 58
+3 5
+1 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+1
+1 2
+2 3 57
+2 4 57
+1 5 57
+3 6 58
+4 7 58
+3 8 58
+3 8 9
+7 9 10
+4 8 11
+1 11 12
+5 11 13
+10 14 58
+11 14 15
+13 16
+8 15 17
+6 17 18
+16 19
+7 17 20
+10 16 21
+2 20 22
+9 20 23
+21 23 24
+12 22 25
+4 22 26
+23 25 27
+19 28
+10 26 29
+3 22 30
+19 26 31
+22 28 32
+12 18 33
+6 33 34
+20 35 57
+5 15 36
+33 35 37
+13 33 38
+7 31 39
+5 36 40
+9 35 41
+18 38 42
+25 36 43
+21 32 44
+41 45
+6 45 46
+38 46 47
+28 39 48
+25 47 49
+13 47 50
+2 46 51
+44 45 52
+14 32 53
+27 49 54
+32 43 55
+21 41 56
+34 42
+26 37 55
+4 53 56
+18 28 51
+16 51 52
+16 27 37
+9 23 34
+37 47 56
+30 32 48
+27 52 56
+8 19 55
+19 28 45
+31 38 54
+24 38 42
+48 54 56
+30 39 53
+31 50 54
+24 26 57
+20 21
+12 52 53
+14 52 53
+12 41 47
+34 48 50
+1 29 35
+18 29 49
+27 35 40
+17 40 50
+41 43 51
+33 40 44
+10 42 43
+15 23 29
+15 49 55
+6 25 29
+14 40 45
+13 30 31
+36 44 46
+11 44 46
+24 49 51
+37 48
+17 24 43
+7 34 42
+36 39 50
+5 54 55
+30 39 58
+1 2 5 12 80
+2 3 4 22 51
+3 6 8 9 30
+4 7 11 26 59
+5 13 36 40 99
+6 18 34 46 89
+7 10 20 39 97
+8 9 11 17 67
+9 10 23 41 63
+10 14 21 29 86
+11 12 13 15 93
+12 25 33 76 78
+13 16 38 50 91
+14 15 53 77 90
+15 17 36 87 88
+16 19 21 61 62
+17 18 20 83 96
+18 33 42 60 81
+19 28 31 67 68
+20 22 23 35 75
+21 24 44 56 75
+22 25 26 30 32
+23 24 27 63 87
+24 70 74 94 96
+25 27 43 49 89
+26 29 31 58 74
+27 54 62 66 82
+28 32 48 60 68
+29 80 81 87 89
+30 65 72 91 100
+31 39 69 73 91
+32 44 53 55 65
+33 34 37 38 85
+34 57 63 79 97
+35 37 41 80 82
+36 40 43 92 98
+37 58 62 64 95
+38 42 47 69 70
+39 48 72 98 100
+40 82 83 85 90
+41 45 56 78 84
+42 57 70 86 97
+43 55 84 86 96
+44 52 85 92 93
+45 46 52 68 90
+46 47 51 92 93
+47 49 50 64 78
+48 65 71 79 95
+49 54 81 88 94
+50 73 79 83 98
+51 60 61 84 94
+52 61 66 76 77
+53 59 72 76 77
+54 69 71 73 99
+55 58 67 88 99
+56 59 64 66 71
+3 4 5 35 74
+6 7 8 14 100
diff --git a/gr-fec/python/fec/LDPC/n_0300_k_0103_gap_24.alist b/gr-fec/python/fec/LDPC/n_0300_k_0103_gap_24.alist
new file mode 100644
index 0000000000..7f5a606933
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0300_k_0103_gap_24.alist
@@ -0,0 +1,501 @@
+300 197
+4 6
+3 3 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6
+1 183 189
+1 2 185
+2 3 184 196
+3 4 181 191
+1 5 175 191
+2 6 180 191
+1 7 175 188
+7 8 191 192
+7 8 9
+5 10 174 185
+5 11 185 187
+11 12 174
+12 13 193
+12 14 175 193
+6 15 180 194
+6 9 15 16
+17 182 187 193
+4 18 179 183
+14 19 183 190
+3 19 20 179
+18 21 197
+21 22 179 196
+19 22 23 188
+17 24 188 197
+13 23 25 184
+23 25 26 186
+22 27 195 196
+14 28 188 195
+19 29 178
+13 19 30 176
+24 31 174 176
+10 19 32 177
+12 33 177 187
+21 32 33 34
+26 29 34 35
+22 35 36 195
+36 37 178 187
+14 34 38 197
+17 38 39 196
+16 34 39 40
+18 20 39 41
+36 37 40 42
+8 29 36 43
+30 40 44
+37 44 45 187
+43 46 177 187
+11 41 47 175
+43 46 47 48
+7 10 48 49
+43 49 50 181
+16 50 51 194
+49 50 52 192
+49 51 53 186
+9 12 53 54
+26 41 54 55
+26 30 49 56
+10 55 57 174
+21 55 58 178
+45 47 54 59
+11 56 60 183
+58 61 177 180
+9 13 57 62
+11 24 62 63
+45 63 64
+39 64 65 191
+61 66 188 190
+54 59 63 67
+20 61 68 189
+9 21 62 69
+32 61 70 180
+2 37 67 71
+62 69 72 184
+51 52 71 73
+10 64 72 74
+4 55 65 75
+1 59 68 76
+24 67 71 77
+14 35 76 78
+52 69 79 174
+59 79 80 192
+42 53 66 81
+27 78 82 183
+53 78 83 176
+38 73 79 84
+44 48 80 85
+41 80 86 181
+37 73 78 87
+5 68 87 88
+27 87 89 179
+77 88 90
+40 85 91 183
+14 86 92 175
+30 64 93 196
+31 60 86 94
+16 17 74 95
+66 76 93 96
+25 33 94 97
+16 40 75 98
+34 90 99 190
+15 33 90 100
+21 61 76 101
+59 81 84 102
+79 91 103 178
+18 86 94 104
+29 57 102 105
+46 104 106 185
+24 36 97 107
+36 103 108
+33 35 91 109
+43 47 97 110
+69 95 101 111
+17 57 95 112
+9 48 111 113
+69 105 114 190
+50 97 115 189
+88 98 111 116
+34 46 114 117
+69 96 118
+29 94 110 119
+18 54 100 120
+4 77 115 121
+35 96 118 122
+65 101 123 182
+10 38 98 124
+51 79 121 125
+67 116 126 189
+22 27 117 127
+3 56 126 128
+32 90 107 129
+20 64 113 130
+27 71 116 131
+66 75 100 132
+6 116 133 186
+86 93 117 134
+26 55 128 135
+71 135 136 195
+31 100 137 181
+79 102 130 138
+74 82 125 139
+31 96 140 193
+82 139 141 180
+42 123 142 180
+68 70 114 143
+46 129 137 144
+58 138 145 188
+94 99 128 146
+131 140 147 192
+99 138 147 148
+7 124 145 149
+74 143 150 193
+74 99 119 151
+124 131 152 177
+25 37 142 153
+133 154 182
+125 131 144 155
+56 119 128 156
+115 138 145 157
+56 113 124 158
+96 119 159
+60 93 95 160
+102 106 158 161
+82 84 118 162
+23 103 110 163
+22 157 164 194
+101 106 159 165
+2 28 158 166
+155 159 167 184
+93 125 155 168
+103 122 149 169
+45 83 168 170
+91 139 171 182
+28 163 172 174
+136 167 173 193
+105 116 120 143
+47 120 121 141
+15 170 171 173
+5 39 122 126
+106 110 112 115
+68 83 95 142
+87 92 93 141
+80 130 134 158
+72 135 153 159
+58 129 132 189
+102 140 155 161
+28 136 157 194
+17 28 101 146
+77 80 139 164
+85 107 123 157
+1 81 141 152
+2 149 151 154
+41 58 107 123
+32 38 133 142
+18 78 134 149
+15 89 139 140
+30 41 132 149
+92 108 147 181
+43 91 127 166
+113 165 195
+85 99 119 161
+44 104 131 162
+64 67 76 84
+72 120 130 132
+66 99 161 163
+65 98 134 175
+23 25 136 160
+8 55 152 161
+73 114 170 195
+72 104 113 173
+7 15 115 122
+87 110 148 173
+57 118 161 171
+13 86 104 111
+60 131 149
+78 105 113 186
+150 154 167 196
+89 109 152 169
+27 91 166 176
+57 88 96 100
+127 164 178 179
+65 70 83 168
+66 80 126 128
+13 68 115 152
+35 44 167 172
+23 46 119 134
+25 73 151 157
+3 76 120 130
+5 8 163 168
+52 126 143 181
+42 109 159 160
+134 156 158 169
+42 49 132 164
+16 53 144 170
+118 153 171 184
+50 137 141 177
+51 109 137 145
+77 94 109 178
+87 97 108 137
+6 63 117 120
+38 123 172 197
+31 153 162 176
+45 148 165 182
+51 71 156 162
+83 105 117 166
+53 112 133 162
+75 90 132
+73 148 160 185
+62 108 135 191
+32 102 111 123
+98 136 164 190
+45 52 144 155
+60 89 105 111
+77 110 160 165
+3 92 133 190
+101 145 186
+75 81 89 92
+4 112 127 156
+4 74 121 126
+40 72 104 162
+12 62 147 156
+139 164 166 169
+67 95 117 160
+54 63 122 125
+89 103 118 130
+52 88 129 197
+6 81 150 157
+50 83 146 148
+122 155 167 186
+85 98 121 169
+8 114 147 197
+44 65 97 151
+121 144 151 170
+39 143 152 176
+28 33 112 127
+11 129 150 167
+20 61 106 148
+20 124 135 154
+48 138 159 165
+24 82 165 168
+56 81 169 172
+59 70 128 166
+48 90 108 146
+82 144 158 182
+75 107 135 146
+88 127 138 192
+153 172 173 194
+29 150 156 185
+84 154 163 173
+70 84 145 150
+31 85 100 168
+26 63 140 153
+58 151 172 194
+107 109 114 116
+70 140 141 154
+112 137 147 171
+42 106 133 143
+103 124 142 163
+92 129 142 179
+136 146 189 192
+47 60 108 125
+30 170 171 184
+1 2 5 7 76 189
+2 3 6 71 166 190
+3 4 20 128 226 253
+4 18 75 121 256 257
+5 10 11 88 177 227
+6 15 16 133 238 265
+7 8 9 49 149 209
+8 9 43 206 227 269
+9 16 54 62 69 113
+10 32 49 57 74 124
+11 12 47 60 63 274
+12 13 14 33 54 259
+13 25 30 62 212 222
+14 19 28 38 78 92
+15 16 100 176 194 209
+16 40 51 95 98 232
+17 24 39 95 112 186
+18 21 41 104 120 193
+19 20 23 29 30 32
+20 41 68 130 275 276
+21 22 34 58 69 101
+22 23 27 36 127 164
+23 25 26 163 205 224
+24 31 63 77 107 278
+25 26 97 153 205 225
+26 35 55 56 135 290
+27 82 89 127 131 217
+28 166 172 185 186 273
+29 35 43 105 119 286
+30 44 56 93 195 300
+31 94 137 140 240 289
+32 34 70 129 192 248
+33 34 97 100 109 273
+34 35 38 40 99 117
+35 36 78 109 122 223
+36 37 42 43 107 108
+37 42 45 71 87 153
+38 39 84 124 192 239
+39 40 41 65 177 272
+40 42 44 91 98 258
+41 47 55 86 191 195
+42 81 142 229 231 295
+43 46 48 50 110 197
+44 45 85 200 223 270
+45 59 64 170 241 250
+46 48 106 117 144 224
+47 48 59 110 175 299
+48 49 85 113 277 281
+49 50 52 53 56 231
+50 51 52 115 234 266
+51 53 73 125 235 242
+52 73 79 228 250 264
+53 54 81 83 232 244
+54 55 59 67 120 262
+55 57 58 75 135 206
+56 60 128 156 158 279
+57 62 105 112 211 218
+58 61 145 183 191 291
+59 67 76 80 102 280
+60 94 160 213 251 299
+61 66 68 70 101 275
+62 63 69 72 247 259
+63 64 67 238 262 290
+64 65 74 93 130 201
+65 75 123 204 220 270
+66 81 96 132 203 221
+67 71 77 126 201 261
+68 76 88 143 179 222
+69 72 79 111 114 118
+70 143 220 280 288 293
+71 73 77 131 136 242
+72 74 182 202 208 258
+73 84 87 207 225 246
+74 95 139 150 151 257
+75 98 132 245 255 283
+76 78 96 101 201 226
+77 90 121 187 236 252
+78 82 83 87 193 214
+79 80 84 103 125 138
+80 85 86 181 187 221
+81 102 189 255 265 279
+82 139 141 162 278 282
+83 170 179 220 243 266
+84 102 162 201 287 288
+85 91 188 199 268 289
+86 92 94 104 134 212
+87 88 89 180 210 237
+88 90 116 218 264 284
+89 194 216 251 255 263
+90 99 100 129 245 281
+91 103 109 171 197 217
+92 180 196 253 255 297
+93 96 134 160 168 180
+94 97 104 119 146 236
+95 111 112 160 179 261
+96 118 122 140 159 218
+97 107 110 115 237 270
+98 116 124 204 249 268
+99 146 148 151 199 203
+100 120 132 137 218 289
+101 111 123 165 186 254
+102 105 138 161 184 248
+103 108 163 169 263 296
+104 106 200 208 212 258
+105 114 174 214 243 251
+106 161 165 178 275 295
+107 129 188 191 283 292
+108 196 237 247 281 299
+109 216 229 235 236 292
+110 119 163 178 210 252
+111 113 116 212 248 251
+112 178 244 256 273 294
+113 130 158 198 208 214
+114 117 143 207 269 292
+115 121 157 178 209 222
+116 126 131 133 174 292
+117 127 134 238 243 261
+118 122 162 211 233 263
+119 151 156 159 199 224
+120 174 175 202 226 238
+121 125 175 257 268 271
+122 169 177 209 262 267
+123 142 188 191 239 248
+124 149 152 158 276 296
+125 139 155 168 262 299
+126 128 177 221 228 257
+127 197 219 256 273 284
+128 135 146 156 221 280
+129 144 183 264 274 297
+130 138 181 202 226 263
+131 147 152 155 200 213
+132 183 195 202 231 245
+133 154 192 244 253 295
+134 181 193 204 224 230
+135 136 182 247 276 283
+136 173 185 205 249 298
+137 144 234 235 237 294
+138 145 148 157 277 284
+139 141 171 187 194 260
+140 147 184 194 290 293
+141 175 180 189 234 293
+142 153 179 192 296 297
+143 150 174 228 272 295
+144 155 232 250 271 282
+145 149 157 235 254 288
+146 186 266 281 283 298
+147 148 196 259 269 294
+148 210 241 246 266 275
+149 169 190 193 195 213
+150 215 265 274 286 288
+151 190 225 270 271 291
+152 189 206 216 222 272
+153 182 233 240 285 290
+154 190 215 276 287 293
+155 167 168 184 250 267
+156 230 242 256 259 286
+157 164 185 188 225 265
+158 161 166 181 230 282
+159 165 167 182 229 277
+160 205 229 246 252 261
+161 184 199 203 206 211
+162 200 240 242 244 258
+163 172 203 227 287 296
+164 187 219 231 249 260
+165 198 241 252 277 278
+166 197 217 243 260 280
+167 173 215 223 267 274
+168 170 220 227 278 289
+169 216 230 260 268 279
+170 176 207 232 271 300
+171 176 211 233 294 300
+172 223 239 279 285 291
+173 176 208 210 285 287
+10 12 31 57 79 172
+5 7 14 47 92 204
+30 31 83 217 240 272
+32 33 46 61 152 234
+29 37 58 103 219 236
+18 20 22 89 219 297
+6 15 61 70 141 142
+4 50 86 137 196 228
+17 123 154 171 241 282
+1 18 19 60 82 91
+3 25 72 167 233 300
+2 10 11 106 246 286
+26 53 133 214 254 267
+11 17 33 37 45 46
+7 23 24 28 66 145
+1 68 115 126 183 298
+19 66 99 114 249 253
+4 5 6 8 65 247
+8 52 80 147 284 298
+13 14 17 140 150 173
+15 51 164 185 285 291
+27 28 36 136 198 207
+3 22 27 39 93 215
+21 24 38 239 264 269
diff --git a/gr-fec/python/fec/LDPC/n_0300_k_0122_gap_06.alist b/gr-fec/python/fec/LDPC/n_0300_k_0122_gap_06.alist
new file mode 100644
index 0000000000..64dc80b436
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0300_k_0122_gap_06.alist
@@ -0,0 +1,482 @@
+300 178
+3 5
+2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+1 178
+2 178
+3 174
+1 4 177
+5 173
+6 173 177
+7 173 177
+1 8 175
+5 9 175
+4 10 175
+10 11 177
+6 11 12
+12 13 173
+4 10 14
+9 14 15
+8 15 16
+12 17 176
+14 18 176
+11 18 19
+15 19 20
+3 20 21
+18 21 22
+13 21 23
+23 24 174
+2 23 25
+11 24 26
+26 27 176
+21 23 28
+28 29 178
+27 29 30
+22 29 31
+26 30 32
+16 32 33
+7 29 34
+21 34 35
+25 34 36
+24 30 37
+18 37 38
+38 39 177
+8 37 40
+20 39 41
+40 42 178
+40 43 174
+36 43 44
+41 45 176
+35 44 46
+40 46 47
+15 47 48
+4 44 49
+34 45 50
+9 50 51
+16 49 52
+49 53 176
+31 48 54
+2 53 55
+43 49 56
+17 52 57
+13 53 58
+52 54 59
+31 52 60
+39 55 61
+40 42 62
+47 48 63
+61 62 64
+51 65
+15 54 66
+36 52 67
+7 46 68
+22 65 69
+8 67 70
+13 62 71
+43 51 72
+30 53 73
+46 70 74
+57 63 75
+45 58 76
+45 46 77
+5 68 78
+26 66 79
+69 77 80
+72 81 178
+35 54 82
+42 80 83
+18 74 84
+60 75 85
+29 49 86
+33 65 87
+2 80 88
+39 56 89
+57 86 90
+27 89 91
+75 81 92
+34 69 93
+19 90 94
+3 80 95
+79 88 96
+32 74 97
+61 84 98
+3 88 99
+38 71 100
+59 66 101
+22 83 102
+8 71 103
+17 102 104
+50 86 105
+35 84 106
+9 59 107
+28 82 108
+38 92 109
+69 78 110
+26 109 111
+28 77 112
+19 55 113
+51 72 114
+1 99 115
+42 97 116
+42 85 117
+58 103 118
+54 85 119
+33 106 120
+73 95 121
+74 94 122
+1 110 123
+59 123 124
+113 124 125
+62 118 126
+38 79 127
+71 87 128
+27 78 129
+67 120 130
+56 120 131
+77 83 132
+10 89 133
+93 123 134
+65 114 135
+96 115 136
+12 123 137
+63 93 138
+22 113 139
+36 80 140
+60 120 141
+84 142 174
+58 81 143
+19 112 144
+37 70 145
+79 124 146
+111 115 147
+61 105 148
+102 120 149
+100 128 150
+116 127 151
+84 135 152
+76 125 153
+60 117 154
+33 133 155
+55 116 156
+81 152 157
+88 146 158
+89 150 159
+64 128 160
+76 103 161
+94 126 162
+64 99 163
+62 91 164
+108 142 165
+81 130 166
+150 154 167
+76 104 168
+71 103 169
+7 157 170
+144 156 171
+16 121 172
+94 110 154
+67 113
+147 149 166
+25 135 167
+45 104 140
+6 149 166
+61 122 138
+73 106 130
+73 86 175
+104 137
+122 157 170
+101 128 158
+24 91 165
+56 109 111
+115 168 169
+85 92 121
+90 97 156
+83 141 163
+114 158 174
+37 119 164
+118 131 134
+36 125 152
+74 148 153
+140 168 171
+47 113 171
+30 108 168
+76 112 135
+99 101 144
+50 59 66
+63 143 165
+101 154 161
+14 146 164
+32 107 169
+43 73 133
+65 132 136
+152 158 171
+6 96 139
+119 129 159
+77 123 142
+57 125 136
+11 98 150
+87 124 141
+93 117 155
+111 166 172
+17 91 112
+6 121 170
+24 78 107
+3 110 132
+90 118 119
+51 82 162
+105 108 169
+100 106 130
+17 72 96
+2 67 89
+27 165 166
+48 126 163
+159 160 165
+119 153 160
+41 109 157
+58 116 170
+93 126
+35 121 140
+133 134 145
+95 134 145
+41 98 169
+14 151 172
+132 147 160
+109 129 131
+98 138 139
+20 60 70
+25 63 75
+87 101 125
+5 68 114
+66 92 100
+95 111 122
+88 97 105
+116 129 138
+91 136 151
+75 154 160
+95 142 151
+53 136 141
+7 92 167
+31 150 151
+64 127 149
+25 167 172
+152 159
+39 117 163
+69 82 139
+72 99 164
+143 164 171
+10 107 114
+5 145 162
+44 145 158
+97 122 156
+79 141 170
+110 134 138
+100 117 162
+50 70 146
+57 98 161
+85 127 128
+55 143 155
+130 168 175
+4 102 105
+20 107 137
+129 135 148
+131 155 163
+23 102 142
+13 140 148
+68 94 144
+47 137 161
+31 146 156
+82 155
+32 106 112
+33 127 147
+96 137 143
+9 139 144
+28 115 149
+41 103 104
+78 90 118
+48 124 172
+12 87 148
+133 153 167
+68 83 173
+44 126 131
+64 157 162
+86 108 147
+56 159 161
+16 132 153
+1 4 8 115 123
+2 25 55 88 226
+3 21 95 99 220
+4 10 14 49 275
+5 9 78 245 264
+6 12 178 209 218
+7 34 68 170 254
+8 16 40 70 103
+9 15 51 107 288
+10 11 14 133 263
+11 12 19 26 213
+12 13 17 137 293
+13 23 58 71 280
+14 15 18 204 238
+15 16 20 48 66
+16 33 52 172 300
+17 57 104 217 225
+18 19 22 38 84
+19 20 94 113 144
+20 21 41 242 276
+21 22 23 28 35
+22 31 69 102 139
+23 24 25 28 279
+24 26 37 185 219
+25 36 176 243 257
+26 27 32 79 111
+27 30 91 129 227
+28 29 108 112 289
+29 30 31 34 86
+30 32 37 73 198
+31 54 60 255 283
+32 33 97 205 285
+33 87 120 155 286
+34 35 36 50 93
+35 46 82 106 234
+36 44 67 140 194
+37 38 40 145 192
+38 39 100 109 127
+39 41 61 89 259
+40 42 43 47 62
+41 45 231 237 290
+42 62 83 116 117
+43 44 56 72 206
+44 46 49 265 296
+45 50 76 77 177
+46 47 68 74 77
+47 48 63 197 282
+48 54 63 228 292
+49 52 53 56 86
+50 51 105 201 270
+51 65 72 114 222
+52 57 59 60 67
+53 55 58 73 253
+54 59 66 82 119
+55 61 113 156 273
+56 89 131 186 299
+57 75 90 212 271
+58 76 118 143 232
+59 101 107 124 201
+60 85 141 154 242
+61 64 98 148 179
+62 64 71 126 164
+63 75 138 202 243
+64 160 163 256 297
+65 69 87 135 207
+66 79 101 201 246
+67 70 130 174 226
+68 78 245 281 295
+69 80 93 110 260
+70 74 145 242 270
+71 100 103 128 169
+72 81 114 225 261
+73 121 180 181 206
+74 84 97 122 195
+75 85 92 243 251
+76 153 161 168 199
+77 80 112 132 211
+78 110 129 219 291
+79 96 127 146 267
+80 83 88 95 140
+81 92 143 157 166
+82 108 222 260 284
+83 102 132 190 295
+84 98 106 142 152
+85 117 119 188 272
+86 90 105 181 298
+87 128 214 244 293
+88 96 99 158 248
+89 91 133 159 226
+90 94 189 221 291
+91 164 185 217 250
+92 109 188 246 254
+93 134 138 215 233
+94 122 162 173 281
+95 121 236 247 252
+96 136 209 225 287
+97 116 189 248 266
+98 213 237 241 271
+99 115 163 200 261
+100 150 224 246 269
+101 184 200 203 244
+102 104 149 275 279
+103 118 161 169 290
+104 168 177 182 290
+105 148 223 248 275
+106 120 180 224 285
+107 205 219 263 276
+108 165 198 223 298
+109 111 186 231 240
+110 123 173 220 268
+111 147 186 216 247
+112 144 199 217 285
+113 125 139 174 197
+114 135 191 245 263
+115 136 147 187 289
+116 151 156 232 249
+117 154 215 259 269
+118 126 193 221 291
+119 192 210 221 230
+120 130 131 141 149
+121 172 188 218 234
+122 179 183 247 266
+123 124 134 137 211
+124 125 146 214 292
+125 153 194 212 244
+126 162 228 233 296
+127 151 256 272 286
+128 150 160 184 272
+129 210 240 249 277
+130 166 180 224 274
+131 193 240 278 296
+132 207 220 239 300
+133 155 206 235 294
+134 193 235 236 268
+135 152 176 199 277
+136 207 212 250 253
+137 182 276 282 287
+138 179 241 249 268
+139 209 241 260 288
+140 177 196 234 280
+141 190 214 253 267
+142 165 211 252 279
+143 202 262 273 287
+144 171 200 281 288
+145 235 236 264 265
+146 158 204 270 283
+147 175 239 286 298
+148 195 277 280 293
+149 175 178 256 289
+150 159 167 213 255
+151 238 250 252 255
+152 157 194 208 258
+153 195 230 294 300
+154 167 173 203 251
+155 215 273 278 284
+156 171 189 266 283
+157 170 183 231 297
+158 184 191 208 265
+159 210 229 258 299
+160 229 230 239 251
+161 203 271 282 299
+162 222 264 269 297
+163 190 228 259 278
+164 192 204 261 262
+165 185 202 227 229
+166 175 178 216 227
+167 176 254 257 294
+168 187 196 198 274
+169 187 205 223 237
+170 183 218 232 267
+171 196 197 208 262
+172 216 238 257 292
+5 6 7 13 295
+3 24 43 142 191
+8 9 10 181 274
+17 18 27 45 53
+4 6 7 11 39
+1 2 29 42 81
diff --git a/gr-fec/python/fec/LDPC/n_0300_k_0152_gap_03.alist b/gr-fec/python/fec/LDPC/n_0300_k_0152_gap_03.alist
new file mode 100644
index 0000000000..d731445e7e
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0300_k_0152_gap_03.alist
@@ -0,0 +1,452 @@
+300 148
+3 6
+2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3
+6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6
+1 146
+1 2 146
+2 3 147
+3 4 146
+1 4 5
+2 6 148
+3 7 148
+7 8
+8 9 147
+6 9 10
+1 10 11
+11 12 147
+12 13 148
+10 13 14
+8 15
+12 15 16
+1 13 17
+4 14 18
+2 18 19
+9 15 20
+11 20 21
+3 17 22
+20 22 23
+8 22 24
+20 24 25
+2 19 26
+6 16 27
+19 25 28
+12 26 29
+13 14 30
+24 29 31
+11 23 32
+28 33
+11 34
+1 24 35
+32 35 36
+35 37 148
+14 36 38
+17 35 39
+32 36 40
+27 38 41
+23 42
+39 43 147
+36 38 44
+28 35 45
+35 46 148
+22 46 47
+24 34 48
+5 44 49
+40 47 50
+29 41 51
+28 49 52
+15 52 53
+26 52 54
+27 52 55
+29 47 56
+43 51 57
+39 49 58
+45 47 59
+29 31 60
+22 39 61
+37 62 146
+48 60 63
+27 31 64
+28 63 65
+64 66 148
+31 54 67
+14 40 68
+48 68 69
+30 57 70
+41 61 71
+5 57 72
+8 61 73
+48 58 74
+26 69 75
+14 59 76
+13 74 77
+5 29 78
+62 77 79
+30 71 80
+54 69 81
+57 64 82
+25 82 83
+55 63 84
+5 56 85
+76 85 86
+68 78 87
+50 73 88
+33 76 89
+25 81 90
+34 73 91
+82 89 92
+64 88 93
+13 92 94
+48 60 95
+46 88 96
+75 97 146
+17 66 98
+38 79 99
+87 90 100
+4 92 101
+15 79 102
+30 102 103
+47 56 104
+17 98 105
+16 101 106
+27 85 107
+45 102 108
+72 83 109
+40 86 110
+82 103 111
+3 71 112
+16 106 113
+49 86 114
+23 92 115
+19 70 116
+37 116 117
+38 99 118
+61 80 119
+65 77 120
+40 99 121
+77 80 122
+79 101 123
+18 121 124
+112 121 125
+69 126
+57 125 127
+25 81 128
+58 80 129
+39 127 130
+51 111 131
+7 39 132
+66 114 133
+81 104 134
+108 129 135
+9 120 136
+37 96 137
+16 74 138
+37 126 139
+118 130 140
+10 86 141
+18 42 142
+130 143
+18 142 144
+50 124 145
+56 111 139
+82 95 96
+65 94 144
+9 68 144
+41 68 126
+69 100 126
+57 136
+91 98 103
+30 120 141
+71 112 120
+76 104 120
+68 95 117
+115 131 132
+4 66 82
+125 131 132
+62 99 131
+60 96 131
+59 105 136
+21 37 53
+59 128 140
+59 107 113
+55 94 107
+75 107 136
+49 95 140
+2 107 110
+54 128 139
+17 53 144
+23 121 133
+30 121 126
+59 84 95
+6 43 58
+6 75 109
+15 46 62
+6 70 113
+87 138 143
+63 109 119
+56 58 119
+74 102 116
+38 86 112
+7 56 139
+43 97 140
+67 105 115
+20 73 101
+87 128 138
+20 117 137
+5 142 144
+83 126 138
+61 98 103
+36 43 118
+23 117 118
+83 132 141
+118 136 142
+72 74 101
+51 70 92
+44 60 72
+44 114 122
+44 110 133
+61 133 135
+44 65 84
+46 65 147
+3 76 122
+49 128 139
+83 84 142
+88 103 129
+93 127 141
+18 87 90
+32 119 127
+40 110 134
+32 112
+25 51 63
+32 85 101
+94 105 133
+50 85 91
+50 122 140
+50 109 130
+81 105 122
+21 34 53
+62 84 93
+42 67 75
+42 96 138
+42 84 85
+105 109 117
+7 95 145
+26 48 103
+27 78 115
+116 129 144
+78 130 137
+41 60 62
+9 132 143
+55 93 108
+110 129 134
+4 58 97
+67 134 141
+89 127 134
+67 115 134
+91 93 122
+67 111 120
+31 123 138
+31 88 89
+80 96 136
+65 143 146
+93 115
+73 78 145
+55 116 143
+26 92 104
+54 97 108
+81 106 130
+70 83 99
+45 123 137
+78 94 123
+73 86 88
+45 98 100
+45 51 124
+42 99 111
+55 100 135
+72 113 135
+47 70 135
+63 108 124
+114 135 141
+66 104 145
+66 71 116
+21 102 106
+12 53 114
+41 89 139
+12 102 110
+52 119 132
+90 109 123
+53 90 137
+7 36 90
+11 69 108
+46 89 140
+19 111 137
+91 97 124
+52 113 125
+72 76 106
+8 71 113
+74 100 125
+21 124 128
+16 33 145
+77 118 125
+33 54 100
+87 121 147
+33 77 104
+97 112 117
+21 64 143
+19 64 94
+22 91 106
+10 79 123
+75 79
+98 114 131
+34 127 133
+33 142 145
+24 80 129
+10 107 119
+28 34 43
+1 2 5 11 17 35
+2 3 6 19 26 170
+3 4 7 22 112 206
+4 5 18 101 159 237
+5 49 72 78 85 191
+6 10 27 176 177 179
+7 8 132 185 228 274
+8 9 15 24 73 281
+9 10 20 136 149 234
+10 11 14 141 293 299
+11 12 21 32 34 275
+12 13 16 29 268 270
+13 14 17 30 77 94
+14 18 30 38 68 76
+15 16 20 53 102 178
+16 27 106 113 138 284
+17 22 39 98 105 172
+18 19 124 142 144 211
+19 26 28 116 277 291
+20 21 23 25 188 190
+21 164 222 267 283 290
+22 23 24 47 61 292
+23 32 42 115 173 195
+24 25 31 35 48 298
+25 28 83 90 128 215
+26 29 54 75 229 250
+27 41 55 64 107 230
+28 33 45 52 65 300
+29 31 51 56 60 78
+30 70 80 103 154 174
+31 60 64 67 243 244
+32 36 40 212 214 216
+33 89 284 286 288 297
+34 48 91 222 296 300
+35 36 37 39 45 46
+36 38 40 44 194 274
+37 62 117 137 139 164
+38 41 44 99 118 184
+39 43 58 61 130 132
+40 50 68 110 121 213
+41 51 71 150 233 269
+42 142 224 225 226 259
+43 57 176 186 194 300
+44 49 200 201 202 204
+45 59 108 254 257 258
+46 47 96 178 205 276
+47 50 56 59 104 262
+48 63 69 74 95 229
+49 52 58 114 169 207
+50 88 145 218 219 220
+51 57 131 199 215 258
+52 53 54 55 271 279
+53 164 172 222 268 273
+54 67 81 171 251 286
+55 84 167 235 249 260
+56 85 104 146 182 185
+57 70 72 82 127 152
+58 74 129 176 182 237
+59 76 163 165 166 175
+60 63 95 162 200 233
+61 71 73 119 193 203
+62 79 161 178 223 233
+63 65 84 181 215 263
+64 66 82 93 290 291
+65 120 148 204 205 246
+66 98 133 159 265 266
+67 187 224 238 240 242
+68 69 87 149 150 157
+69 75 81 126 151 275
+70 116 179 199 253 262
+71 80 112 155 266 281
+72 109 198 200 261 280
+73 88 91 188 248 256
+74 77 138 183 198 282
+75 97 168 177 224 294
+76 86 89 156 206 280
+77 79 120 122 285 288
+78 87 230 232 248 255
+79 99 102 123 293 294
+80 119 122 129 245 298
+81 90 128 134 221 252
+82 83 92 111 147 159
+83 109 192 196 208 253
+84 175 204 208 223 226
+85 86 107 216 218 226
+86 110 114 141 184 256
+87 100 180 189 211 287
+88 93 96 209 244 256
+89 92 239 244 269 276
+90 100 211 272 273 274
+91 153 218 241 278 292
+92 94 101 115 199 250
+93 210 223 235 241 247
+94 148 167 217 255 291
+95 147 157 169 175 228
+96 137 147 162 225 245
+97 186 237 251 278 289
+98 105 153 193 257 295
+99 118 121 161 253 259
+100 151 257 260 282 286
+101 106 123 188 198 216
+102 103 108 183 267 270
+103 111 153 193 209 229
+104 134 156 250 265 288
+105 163 187 217 221 227
+106 113 252 267 280 292
+107 166 167 168 170 299
+108 135 235 251 263 275
+109 177 181 220 227 272
+110 170 202 213 236 270
+111 131 146 242 259 277
+112 125 155 184 214 289
+113 166 179 261 279 281
+114 133 201 264 268 295
+115 158 187 230 240 247
+116 117 183 231 249 266
+117 157 190 195 227 289
+118 140 194 195 197 285
+119 181 182 212 271 299
+120 136 154 155 156 242
+121 124 125 173 174 287
+122 201 206 219 221 241
+123 243 254 255 272 293
+124 145 258 263 278 283
+125 127 160 279 282 285
+126 139 150 151 174 192
+127 130 210 212 239 296
+128 165 171 189 207 283
+129 135 209 231 236 298
+130 140 143 220 232 252
+131 158 160 161 162 295
+132 158 160 196 234 271
+133 173 202 203 217 296
+134 213 236 238 239 240
+135 203 260 261 262 264
+136 152 163 168 197 245
+137 190 232 254 273 277
+138 180 189 192 225 243
+139 146 171 185 207 269
+140 165 169 186 219 276
+141 154 196 210 238 264
+142 144 191 197 208 297
+143 180 234 246 249 290
+144 148 149 172 191 231
+145 228 248 265 284 297
+1 2 4 62 97 246
+3 9 12 43 205 287
+6 7 13 37 46 66
diff --git a/gr-fec/python/fec/LDPC/n_0500_k_0127_gap_21.alist b/gr-fec/python/fec/LDPC/n_0500_k_0127_gap_21.alist
new file mode 100644
index 0000000000..3506aba972
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0500_k_0127_gap_21.alist
@@ -0,0 +1,877 @@
+500 373
+3 4
+2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+1 367
+1 2 365
+3 358 365
+2 4 360
+4 5
+1 6 362
+7 371
+8 356 365
+8 9
+10 355
+11 355 362
+12 353 356
+6 13 370
+12 14 368
+14 15 371
+15 16 362
+7 17 364
+16 18 364
+19 364 366
+12 20 366
+20 21 356
+21 22 356
+17 21 23
+23 24 355
+25 361
+14 25 26
+26 27 357
+28 366 372
+29 353 363
+20 30 359
+18 31 359
+21 32 359
+33 360 373
+24 34 354
+24 35 354
+27 36 369
+31 36 37
+37 38 373
+1 36 39
+9 39 40
+29 38 41
+12 38 42
+25 39 43
+27 42 44
+23 43 45
+37 44 46
+40 46 47
+8 47 48
+45 48 49
+13 48 50
+50 51 366
+51 52 373
+51 53 365
+5 53 54
+31 54 55
+32 53 56
+5 55 57
+15 55 58
+52 56 59
+32 57 60
+57 61
+52 60 62
+62 63 368
+63 64 370
+41 64 65
+45 65 66
+19 66 67
+48 65 68
+2 67 69
+43 69 70
+9 70 71
+66 71 72
+70 73 367
+71 74 358
+61 73 75
+20 73 76
+50 68 77
+2 74 78
+31 71 79
+49 68 80
+59 74 81
+35 69 82
+80 83 369
+22 78 84
+49 77 85
+42 67 86
+11 77 87
+85 88 373
+34 87 89
+28 87 90
+84 91 370
+33 88 92
+57 88 93
+39 90 94
+42 89 95
+59 87 96
+96 97 371
+34 96 98
+90 98 99
+32 97 100
+37 95 101
+100 102 360
+98 102 103
+19 102 104
+81 104 105
+58 99 106
+106 107 361
+38 106 108
+6 103 109
+30 109 110
+49 110 111
+75 107 112
+33 112 113
+100 113 114
+113 115
+10 112 116
+111 117 358
+79 117 118
+117 118 119
+81 116 120
+11 119 121
+7 113 122
+112 121 123
+120 124 354
+63 124 125
+109 122 126
+7 119 127
+118 127 128
+122 127 129
+125 130 357
+76 130 131
+22 129 132
+18 125 133
+116 128 134
+108 120 135
+8 135 136
+91 132 137
+116 133 138
+54 136 139
+126 136 140
+83 133 141
+73 139 142
+25 140 143
+58 130 144
+35 134 145
+86 141 146
+91 135 147
+138 148 359
+27 140 149
+40 148 150
+45 148 151
+75 147 152
+97 152 153
+153 154 357
+107 151 155
+24 140 156
+115 155 157
+84 154 158
+62 150 159
+78 145 160
+159 160 161
+3 146 162
+154 163 370
+13 158 164
+98 152 165
+64 162 166
+83 144 167
+145 157 168
+90 167 169
+114 168 170
+33 165 171
+4 162 172
+128 141 173
+128 141 174
+82 168 175
+157 171 176
+23 169 177
+68 175 178
+56 172 179
+50 165 180
+130 178 181
+104 150 182
+182 183 361
+3 148 184
+147 170 185
+185 186 360
+144 187 364
+123 137 188
+69 149 189
+55 174 190
+95 163 191
+135 161 192
+153 193 363
+129 183 194
+170 180 195
+149 176 196
+82 187 197
+177 198 362
+65 197 199
+187 196 200
+188 198 201
+56 186 202
+115 181 203
+85 203 204
+79 182 205
+92 180 206
+53 161 207
+19 202 208
+133 190 209
+82 208 210
+26 185 211
+145 156 212
+102 212 213
+6 212 214
+146 203 215
+85 165 216
+123 204 217
+30 206 218
+60 201 219
+142 174 220
+139 199 221
+170 208 222
+92 202 223
+72 188 224
+103 207 225
+26 221 226
+54 211 227
+161 195 228
+46 222 229
+149 220 230
+89 181 231
+44 184 232
+66 173 233
+46 223 234
+138 221 235
+143 233 236
+83 228 237
+179 215 238
+79 233 239
+172 235 240
+164 214 241
+76 239 242
+178 239 243
+80 228 244
+225 242 245
+158 241 246
+162 239 247
+209 237 248
+178 247 249
+194 230 250
+78 186 251
+62 214 252
+29 139 253
+138 237 254
+5 236 255
+51 216 256
+10 243 257
+160 249 258
+222 259 369
+143 231 260
+96 192 261
+131 230 262
+197 226 263
+176 264 353
+256 265 372
+108 248 266
+215 266 267
+265 268 358
+205 252 269
+217 245 270
+10 247 271
+249 272 368
+34 222 273
+224 257 274
+189 259 275
+131 250 276
+155 264 277
+151 224 278
+190 250 279
+124 203 280
+163 271 281
+28 262 282
+177 276 283
+218 258 284
+86 283 285
+143 283 286
+205 250 287
+261 284 288
+11 274 289
+251 266 290
+101 267 291
+28 264 292
+204 219 293
+15 293 294
+92 289 295
+103 285 296
+177 207 297
+236 278 298
+154 267 299
+93 287 300
+127 274 301
+29 278 302
+99 213 303
+137 230 304
+63 279 305
+4 217 306
+17 305 307
+268 295 308
+158 285 309
+101 277 310
+107 310 311
+157 216 312
+270 313 361
+200 210 314
+121 308 315
+184 300 316
+136 275 317
+255 261 318
+114 315 319
+105 277 320
+206 311 321
+304 322 371
+187 311 323
+16 240 324
+159 266 325
+44 309 326
+61 291 327
+84 263 328
+264 295 329
+232 323 330
+132 171 331
+144 329 332
+294 305 333
+150 309 334
+129 289 335
+290 292 336
+94 319 337
+95 238 338
+272 318 339
+197 317 340
+80 286 341
+219 304 342
+287 341 343
+254 326 344
+234 332 345
+105 321 346
+282 322 347
+333 336 348
+314 337 349
+328 343 350
+317 344 351
+105 307 352
+58 253 281
+110 296 316
+60 189 290
+125 169 255
+309 310 335
+36 251 332
+16 327 338
+201 321 351
+153 259 297
+67 192 193
+152 234 299
+315 334 367
+238 281 283
+254 338 345
+190 226 238
+40 257 280
+194 288 315
+229 284 306
+108 179 298
+126 247 352
+41 278 344
+196 255 322
+168 273 274
+88 224 243
+123 159 183
+252 269 369
+131 288 291
+181 232 234
+175 287 342
+76 325 342
+74 246 313
+117 210 280
+211 276 323
+265 273 367
+22 215 246
+134 200 233
+126 294 350
+147 220 349
+246 328 348
+70 256 301
+240 253 254
+207 212 237
+196 208 240
+119 267 301
+171 333 345
+18 216 351
+241 271 355
+179 297 357
+47 275 299
+244 320 336
+263 288 328
+94 299 346
+110 251 313
+94 296 308
+295 320 351
+151 346 349
+257 262 284
+100 218 341
+86 142 194
+167 333 337
+156 265 273
+223 298 317
+231 236 330
+225 268 281
+142 226 258
+47 193 218
+347 349 368
+198 258 302
+175 313 323
+338 347 350
+14 293 325
+223 343 348
+124 195 201
+166 191 227
+75 156 191
+72 280 318
+134 192 213
+35 290 339
+115 235 285
+199 213 221
+174 184 235
+173 204 263
+101 217 249
+300 301 302
+52 241 253
+227 260 270
+259 297 324
+269 330 350
+243 312 327
+227 291 303
+191 225 242
+214 302 332
+41 279 289
+260 270 354
+173 337 346
+3 324 326
+219 327 335
+114 202 209
+97 310 340
+111 166 205
+77 277 348
+339 344 347
+262 286 292
+195 199 372
+13 308 352
+99 294 300
+155 193 345
+164 228 325
+91 172 334
+104 166 169
+93 279 319
+269 282 303
+242 312 363
+163 232 296
+9 331 341
+64 304 324
+106 229 260
+17 282 307
+182 272 293
+307 314 326
+109 188 198
+61 340 342
+286 329 363
+72 209 211
+121 303 322
+30 220 335
+81 248 330
+118 261 272
+231 306 321
+164 268 331
+137 244 256
+93 245 320
+298 318 353
+176 314 336
+122 185 305
+146 206 210
+276 311 352
+111 189 252
+245 306 372
+183 244 248
+89 160 329
+186 316 319
+339 340 343
+43 275 292
+200 229 312
+59 271 316
+132 331 334
+120 167 180
+1 2 6 39
+2 4 69 78
+3 162 184 448
+4 5 172 306
+5 54 57 255
+6 13 109 214
+7 17 122 127
+8 9 48 136
+9 40 71 467
+10 116 257 271
+11 87 121 289
+12 14 20 42
+13 50 164 457
+14 15 26 423
+15 16 58 294
+16 18 324 359
+17 23 307 470
+18 31 133 398
+19 67 104 208
+20 21 30 76
+21 22 23 32
+22 84 132 387
+23 24 45 177
+24 34 35 156
+25 26 43 143
+26 27 211 226
+27 36 44 149
+28 90 282 292
+29 41 253 302
+30 110 218 478
+31 37 55 79
+32 56 60 100
+33 92 113 171
+34 89 98 273
+35 82 145 430
+36 37 39 358
+37 38 46 101
+38 41 42 108
+39 40 43 94
+40 47 150 368
+41 65 373 445
+42 44 86 95
+43 45 70 496
+44 46 232 326
+45 49 66 151
+46 47 229 234
+47 48 401 418
+48 49 50 68
+49 80 85 111
+50 51 77 180
+51 52 53 256
+52 59 62 437
+53 54 56 207
+54 55 139 227
+55 57 58 190
+56 59 179 202
+57 60 61 93
+58 106 144 353
+59 81 96 498
+60 62 219 355
+61 75 327 474
+62 63 159 252
+63 64 125 305
+64 65 166 468
+65 66 68 199
+66 67 72 233
+67 69 86 362
+68 77 80 178
+69 70 82 189
+70 71 73 392
+71 72 74 79
+72 224 428 476
+73 75 76 142
+74 78 81 383
+75 112 152 427
+76 131 242 382
+77 85 87 453
+78 84 160 251
+79 118 205 239
+80 83 244 341
+81 105 120 479
+82 175 197 210
+83 141 167 237
+84 91 158 328
+85 88 204 216
+86 146 285 411
+87 89 90 96
+88 92 93 376
+89 95 231 493
+90 94 99 169
+91 137 147 461
+92 206 223 295
+93 300 463 484
+94 337 404 406
+95 101 191 338
+96 97 98 261
+97 100 153 451
+98 99 103 165
+99 106 303 458
+100 102 114 410
+101 291 310 435
+102 103 104 213
+103 109 225 296
+104 105 182 462
+105 320 346 352
+106 107 108 469
+107 112 155 311
+108 135 266 371
+109 110 126 473
+110 111 354 405
+111 117 452 490
+112 113 116 123
+113 114 115 122
+114 170 319 450
+115 157 203 431
+116 120 134 138
+117 118 119 384
+118 119 128 480
+119 121 127 396
+120 124 135 500
+121 123 315 477
+122 126 129 487
+123 188 217 377
+124 125 280 425
+125 130 133 356
+126 140 372 389
+127 128 129 301
+128 134 173 174
+129 132 194 335
+130 131 144 181
+131 262 276 379
+132 137 331 499
+133 138 141 209
+134 145 388 429
+135 136 147 192
+136 139 140 317
+137 188 304 483
+138 148 235 254
+139 142 221 253
+140 143 149 156
+141 146 173 174
+142 220 411 417
+143 236 260 286
+144 167 187 332
+145 160 168 212
+146 162 215 488
+147 152 185 390
+148 150 151 184
+149 189 196 230
+150 159 182 334
+151 155 278 408
+152 153 165 363
+153 154 193 361
+154 158 163 299
+155 157 277 459
+156 212 413 427
+157 168 176 312
+158 164 246 309
+159 161 325 377
+160 161 258 493
+161 192 207 228
+162 166 172 247
+163 191 281 466
+164 241 460 482
+165 171 180 216
+166 426 452 462
+167 169 412 500
+168 170 175 375
+169 177 356 462
+170 185 195 222
+171 176 331 397
+172 179 240 461
+173 233 434 447
+174 190 220 433
+175 178 381 421
+176 196 264 486
+177 198 283 297
+178 181 243 249
+179 238 371 400
+180 195 206 500
+181 203 231 380
+182 183 205 471
+183 194 377 492
+184 232 316 433
+185 186 211 487
+186 202 251 494
+187 197 200 323
+188 201 224 473
+189 275 355 490
+190 209 279 367
+191 426 427 443
+192 261 362 429
+193 362 418 459
+194 250 369 411
+195 228 425 456
+196 200 374 395
+197 199 263 340
+198 201 420 473
+199 221 432 456
+200 314 388 497
+201 219 360 425
+202 208 223 450
+203 204 215 280
+204 217 293 434
+205 269 287 452
+206 218 321 488
+207 225 297 394
+208 210 222 395
+209 248 450 476
+210 314 384 488
+211 227 385 476
+212 213 214 394
+213 303 429 432
+214 241 252 444
+215 238 267 387
+216 256 312 398
+217 270 306 435
+218 284 410 418
+219 293 342 449
+220 230 390 478
+221 226 235 432
+222 229 259 273
+223 234 414 424
+224 274 278 376
+225 245 416 443
+226 263 367 417
+227 426 438 442
+228 237 244 460
+229 370 469 497
+230 250 262 304
+231 260 415 481
+232 330 380 466
+233 236 239 388
+234 345 363 380
+235 240 431 433
+236 255 298 415
+237 248 254 394
+238 338 365 367
+239 242 243 247
+240 324 393 395
+241 246 399 437
+242 245 443 465
+243 257 376 441
+244 402 483 492
+245 270 484 491
+246 383 387 391
+247 249 271 372
+248 266 479 492
+249 258 272 435
+250 276 279 287
+251 290 358 405
+252 269 378 490
+253 353 393 437
+254 344 366 393
+255 318 356 374
+256 265 392 483
+257 274 368 409
+258 284 417 420
+259 275 361 439
+260 438 446 469
+261 288 318 480
+262 282 409 455
+263 328 403 434
+264 277 292 329
+265 268 386 413
+266 267 290 325
+267 291 299 396
+268 308 416 482
+269 378 440 464
+270 313 438 446
+271 281 399 498
+272 339 471 480
+273 375 386 413
+274 289 301 375
+275 317 401 496
+276 283 385 489
+277 310 320 453
+278 298 302 373
+279 305 445 463
+280 368 384 428
+281 353 365 416
+282 347 464 470
+283 285 286 365
+284 288 370 409
+285 296 309 431
+286 341 455 475
+287 300 343 381
+288 369 379 403
+289 295 335 445
+290 336 355 430
+291 327 379 442
+292 336 455 496
+293 294 423 471
+294 333 389 458
+295 308 329 407
+296 354 406 466
+297 361 400 439
+298 371 414 485
+299 363 401 404
+300 316 436 458
+301 392 396 436
+302 420 436 444
+303 442 464 477
+304 322 342 468
+305 307 333 487
+306 370 481 491
+307 352 470 472
+308 315 406 457
+309 326 334 357
+310 311 357 451
+311 321 323 489
+312 441 465 497
+313 383 405 421
+314 349 472 486
+315 319 364 369
+316 354 494 498
+317 340 351 414
+318 339 428 485
+319 337 463 494
+320 402 407 484
+321 346 360 481
+322 347 374 477
+323 330 385 421
+324 439 448 468
+325 382 423 460
+326 344 448 472
+327 359 441 449
+328 350 391 403
+329 332 475 493
+330 415 440 479
+331 467 482 499
+332 345 358 444
+333 348 397 412
+334 364 461 499
+335 357 449 478
+336 348 402 486
+337 349 412 447
+338 359 366 422
+339 430 454 495
+340 451 474 495
+341 343 410 467
+342 381 382 474
+343 350 424 495
+344 351 373 454
+345 366 397 459
+346 404 408 447
+347 419 422 454
+348 391 424 453
+349 390 408 419
+350 389 422 440
+351 360 398 407
+352 372 457 489
+12 29 264 485
+34 35 124 446
+10 11 24 399
+8 12 21 22
+27 130 154 400
+3 74 117 268
+30 31 32 148
+4 33 102 186
+25 107 183 313
+6 11 16 198
+29 193 465 475
+17 18 19 187
+2 3 8 53
+19 20 28 51
+1 73 364 386
+14 63 272 419
+36 83 259 378
+13 64 91 163
+7 15 97 322
+28 265 456 491
+33 38 52 88
diff --git a/gr-fec/python/fec/LDPC/n_0500_k_0202_gap_11.alist b/gr-fec/python/fec/LDPC/n_0500_k_0202_gap_11.alist
new file mode 100644
index 0000000000..eee4a1f8e6
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0500_k_0202_gap_11.alist
@@ -0,0 +1,802 @@
+500 298
+3 5
+2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+1 288
+2 288 289
+3 289 290
+4 291
+3 5 291
+1 6 292
+2 7 293
+2 8 294
+1 9 295
+4 10 295
+11 293 296
+11 12
+12 13 296
+6 13 14
+14 15
+16 297
+6 16 17
+16 18 290
+9 19 297
+19 20 293
+8 19 21
+19 22 295
+5 20 23
+9 23 24
+12 22 25
+7 24 26
+21 22 27
+10 28 298
+10 29 298
+12 29 30
+30 31 293
+18 31 32
+31 33 291
+31 33 34
+13 30 35
+33 36 296
+36 37 292
+31 38 295
+13 34 39
+33 38 40
+35 41 291
+21 34 42
+29 37 43
+15 43 44
+30 40 45
+38 43 46
+10 35 47
+37 42 48
+29 45 49
+5 44 50
+39 51 291
+34 50 52
+19 52 53
+36 53 54
+28 39 55
+37 48 56
+55 57 294
+49 58 289
+8 51 59
+57 60 290
+27 59 61
+12 61 62
+27 59 63
+46 59 64
+22 54 65
+1 64 66
+61 67 294
+67 68 288
+62 69
+2 60 70
+53 59 71
+70 72 297
+43 65 73
+73 74 292
+23 70 75
+42 63 76
+58 69 77
+44 68 78
+72 79 296
+77 78 80
+35 72 81
+74 75 82
+58 75 83
+76 80 84
+6 71 85
+82 86 298
+43 82 87
+78 88 289
+54 87 89
+62 81 90
+67 91 290
+3 66 92
+25 82 93
+55 87 94
+63 95 289
+54 88 96
+17 83 97
+94 97 98
+34 91 99
+15 66 100
+25 81 101
+27 93 102
+85 96 103
+99 104 292
+47 102 105
+100 101 106
+76 103 107
+35 78 108
+104 107 109
+23 88 110
+110 111
+74 91 112
+77 106 113
+70 107 114
+61 97 115
+71 77 116
+39 69 117
+56 113 118
+84 101 119
+51 113 120
+32 90 121
+26 109 122
+111 123
+21 119 124
+98 124 125
+24 84 126
+26 101 127
+86 116 128
+117 129 293
+94 106 130
+74 108 131
+103 132
+7 125 133
+96 127 134
+85 89 135
+20 115 136
+86 103 137
+32 93 138
+23 129 139
+64 91 140
+68 124 141
+28 139 142
+125 136 143
+116 139 144
+9 144 145
+56 119 146
+51 137 147
+56 91 148
+49 135 149
+24 141 150
+65 148 151
+45 89 152
+41 123 153
+138 154 297
+57 153 155
+7 121 156
+125 148 157
+106 148 158
+137 142 159
+8 145 160
+99 142 161
+115 160 162
+20 158 163
+25 153 164
+107 134 165
+147 149 166
+52 150 167
+17 102 168
+161 165 169
+53 75 170
+132 143 171
+63 124 172
+45 133 173
+77 166 174
+69 169 175
+164 170 176
+156 159 177
+27 174 178
+1 130 179
+109 122 180
+99 171 181
+90 142 182
+112 132 183
+98 170 184
+94 164 185
+96 143 186
+146 173 187
+67 183 188
+48 185 189
+61 182 190
+106 126 191
+135 139 192
+16 126 193
+94 155 194
+8 149 195
+152 178 196
+80 195 197
+113 193 198
+115 164 199
+72 134 200
+58 122 201
+14 157 202
+150 202 203
+134 204 288
+79 195 205
+180 189 206
+90 204 207
+30 203 208
+84 113 209
+26 192 210
+161 204 211
+5 198 212
+173 191 213
+78 90 214
+15 142 215
+100 190 216
+133 177 217
+181 206 218
+185 201 219
+136 176 220
+118 173 221
+130 216 222
+141 208 223
+36 223 224
+104 203 225
+137 213 226
+98 194 227
+200 209 228
+190 221 229
+205 217 230
+29 167 231
+104 140 232
+80 156 233
+93 154 234
+97 215 235
+123 221 236
+210 237 288
+76 192 238
+120 157 239
+125 225 240
+151 238 241
+60 144 242
+161 240 243
+65 239 244
+48 221 245
+166 205 246
+64 198 247
+68 188 248
+187 205 249
+7 210 250
+85 237 251
+84 222 252
+186 211 253
+128 254 290
+130 232 255
+155 247 256
+172 237 257
+51 249 258
+108 131 259
+50 220 260
+109 119 261
+50 154 262
+79 228 263
+207 253 264
+17 166 265
+45 224 266
+41 209 267
+165 218 268
+6 260 269
+168 227 270
+95 268 271
+117 211 272
+14 214 273
+179 273 274
+89 250 275
+165 194 276
+5 230 277
+4 158 278
+100 197 279
+109 226 280
+14 274 281
+198 277 282
+157 214 283
+158 237 284
+280 284 285
+132 143 286
+259 270 287
+174 197 228
+102 249 269
+110 245 248
+46 122 153
+228 268 278
+172 180 274
+163 271 294
+155 206 228
+117 201 235
+117 176 252
+10 95 151
+75 102 234
+48 95 177
+80 95 191
+40 128 181
+130 204 275
+168 240 246
+121 184 220
+118 185 189
+123 178 195
+104 145 234
+83 131 208
+189 208 287
+49 105 256
+176 245 280
+152 179 220
+152 201 214
+199 231 284
+129 246 256
+162 216 217
+107 241 282
+198 262 267
+174 281 286
+145 200 256
+178 180 220
+64 223 237
+57 171 263
+163 241 282
+114 221 242
+71 251 260
+88 250 260
+18 72 92
+69 199 222
+194 211 272
+18 169 192
+167 182 217
+157 240 262
+47 116 215
+230 239 276
+119 156 261
+199 271 287
+16 92 128
+140 179 235
+4 207 231
+133 244 252
+110 212 216
+185 251 287
+144 272 278
+141 256 272
+32 68 86
+47 236 257
+86 207 236
+41 112 197
+87 196 264
+55 264 279
+22 149 279
+262 279 284
+263 268 279
+208 209 258
+129 184 255
+47 231 258
+108 175 255
+165 255 285
+81 171 250
+79 242 261
+241 244 273
+89 273 276
+82 146 273
+83 146 250
+136 260 265
+46 219 283
+136 257 286
+36 175 177
+192 197 243
+93 112 160
+169 190 277
+162 264 266
+24 148 216
+18 248 270
+131 159 257
+134 258 261
+240 243 268
+170 193 235
+105 132 212
+124 127 210
+11 214 227
+114 129 243
+11 146 196
+96 262 274
+38 186 218
+151 202 234
+128 212 218
+103 105 218
+13 249 274
+20 209 259
+152 219 286
+71 154 175
+49 169 282
+74 145 245
+181 206 248
+150 203 265
+159 202 206
+188 266 295
+76 144 239
+215 238 267
+52 229 238
+52 251 280
+115 238 251
+88 114 135
+195 207 276
+3 219 222
+99 155 179
+66 83 140
+163 200 275
+62 227 229
+65 131 147
+37 105 111
+111 196 244
+135 147 292
+85 255 258
+41 183 265
+73 246 248
+174 280 283
+127 168 222
+171 199 263
+224 247 259
+81 261 264
+98 259 283
+9 160 201
+162 182 275
+100 166 183
+33 239 266
+92 213 283
+236 281
+21 225 242
+58 116 118
+11 92 149
+111 164 232
+271 281 287
+55 120 121
+70 114 121
+46 108 110
+4 173 210
+172 254 278
+217 235 254
+44 225 232
+15 184 219
+57 118 284
+215 271 281
+137 170 242
+50 141 191
+17 154 163
+2 191 229
+54 73 168
+143 227 233
+123 223 233
+79 167 213
+53 233 276
+26 122 158
+126 161 234
+28 162 178
+160 245 247
+28 184 267
+156 211 253
+25 247 278
+126 140 298
+193 266 270
+44 97 120
+139 147 253
+60 62 63
+67 181 183
+150 188 223
+233 277 282
+133 263 286
+159 226 294
+187 202 249
+73 187 272
+153 187 277
+3 175 200
+101 138 188
+87 265 275
+127 138 236
+138 226 285
+151 254 257
+56 196 203
+120 204 224
+167 180 186
+39 225 252
+194 226 232
+60 252 253
+172 182 296
+42 193 241
+42 244 270
+230 267 298
+229 269 297
+38 190 243
+112 269 285
+189 246 269
+212 230 285
+40 176 205
+32 186 213
+40 177 231
+66 224 254
+1 6 9 66 179
+2 7 8 70 450
+3 5 92 408 476
+4 10 278 341 440
+5 23 50 212 277
+6 14 17 85 269
+7 26 133 156 250
+8 21 59 160 195
+9 19 24 145 426
+10 28 29 47 298
+11 12 383 385 434
+12 13 25 30 62
+13 14 35 39 391
+14 15 202 273 281
+15 44 100 215 444
+16 17 18 193 339
+17 97 168 265 449
+18 32 329 332 376
+19 20 21 22 53
+20 23 136 163 392
+21 27 42 124 432
+22 25 27 65 353
+23 24 75 110 139
+24 26 126 150 375
+25 93 101 164 462
+26 122 127 210 456
+27 61 63 102 178
+28 55 142 458 460
+29 30 43 49 231
+30 31 35 45 208
+31 32 33 34 38
+32 121 138 347 498
+33 34 36 40 429
+34 39 42 52 99
+35 41 47 81 108
+36 37 54 224 370
+37 43 48 56 414
+38 40 46 387 493
+39 51 55 117 485
+40 45 302 497 499
+41 153 267 350 418
+42 48 76 489 490
+43 44 46 73 87
+44 50 78 443 465
+45 49 152 173 266
+46 64 291 368 439
+47 105 335 348 358
+48 56 189 245 300
+49 58 149 311 395
+50 52 260 262 448
+51 59 120 147 258
+52 53 167 403 404
+53 54 71 170 455
+54 65 89 96 451
+55 57 94 352 437
+56 118 146 148 482
+57 60 155 324 445
+58 77 83 201 433
+59 61 63 64 71
+60 70 242 467 487
+61 62 67 115 190
+62 69 90 412 467
+63 76 95 172 467
+64 66 140 247 323
+65 73 151 244 413
+66 92 100 410 500
+67 68 91 188 468
+68 78 141 248 347
+69 77 117 175 330
+70 72 75 114 438
+71 85 116 327 394
+72 79 81 200 329
+73 74 419 451 474
+74 82 112 131 396
+75 82 83 170 299
+76 84 107 238 401
+77 80 113 116 174
+78 80 88 108 214
+79 205 263 362 454
+80 84 197 233 301
+81 90 101 361 424
+82 86 87 93 365
+83 97 309 366 410
+84 119 126 209 252
+85 103 135 251 417
+86 128 137 347 349
+87 89 94 351 478
+88 96 110 328 406
+89 135 152 275 364
+90 121 182 207 214
+91 99 112 140 148
+92 329 339 430 434
+93 102 138 234 372
+94 98 130 185 194
+95 271 298 300 301
+96 103 134 186 386
+97 98 115 235 465
+98 125 184 227 425
+99 104 161 181 409
+100 106 216 279 428
+101 106 119 127 477
+102 105 168 289 299
+103 107 132 137 390
+104 109 225 232 308
+105 311 381 390 414
+106 113 130 158 191
+107 109 114 165 318
+108 131 259 359 439
+109 122 180 261 280
+110 111 290 343 439
+111 123 414 415 435
+112 183 350 372 494
+113 118 120 198 209
+114 326 384 406 438
+115 136 162 199 405
+116 128 144 335 433
+117 129 272 296 297
+118 221 306 433 445
+119 124 146 261 337
+120 239 437 465 483
+121 156 305 437 438
+122 180 201 291 456
+123 153 236 307 453
+124 125 141 172 382
+125 133 143 157 240
+126 191 193 457 463
+127 134 382 421 479
+128 254 302 339 389
+129 139 316 357 384
+130 179 222 255 303
+131 259 309 377 413
+132 171 183 286 381
+133 173 217 342 471
+134 165 200 204 378
+135 149 192 406 416
+136 143 220 367 369
+137 147 159 226 447
+138 154 477 479 480
+139 142 144 192 466
+140 232 340 410 463
+141 150 223 346 448
+142 159 161 182 215
+143 171 186 286 452
+144 145 242 345 401
+145 160 308 321 396
+146 187 365 366 385
+147 166 413 416 466
+148 151 157 158 375
+149 166 195 353 434
+150 167 203 398 469
+151 241 298 388 481
+152 196 313 314 393
+153 155 164 291 475
+154 234 262 394 449
+155 194 256 295 409
+156 177 233 337 461
+157 202 239 283 334
+158 163 278 284 456
+159 177 377 399 472
+160 162 372 426 459
+161 169 211 243 457
+162 317 374 427 458
+163 294 325 411 449
+164 176 185 199 435
+165 169 268 276 360
+166 174 246 265 428
+167 231 333 454 484
+168 270 304 421 451
+169 175 332 373 395
+170 176 184 380 447
+171 181 324 361 422
+172 257 293 441 488
+173 187 213 221 440
+174 178 288 320 420
+175 359 370 394 476
+176 220 297 312 497
+177 217 300 370 499
+178 196 307 322 458
+179 274 313 340 409
+180 206 293 322 484
+181 218 302 397 468
+182 190 333 427 488
+183 188 418 428 468
+184 305 357 444 460
+185 189 219 306 344
+186 253 387 484 498
+187 249 473 474 475
+188 248 400 469 477
+189 206 306 310 495
+190 216 229 373 493
+191 213 301 448 450
+192 210 238 332 371
+193 198 380 464 489
+194 227 276 331 486
+195 197 205 307 407
+196 351 385 415 482
+197 279 288 350 371
+198 212 247 282 319
+199 315 330 338 422
+200 228 321 411 476
+201 219 296 314 426
+202 203 388 399 473
+203 208 225 398 482
+204 207 211 303 483
+205 230 246 249 497
+206 218 295 397 399
+207 264 341 349 407
+208 223 309 310 356
+209 228 267 356 392
+210 237 250 382 440
+211 253 272 331 461
+212 343 381 389 496
+213 226 430 454 498
+214 273 283 314 383
+215 235 335 402 446
+216 222 317 343 375
+217 230 317 333 442
+218 268 387 389 390
+219 368 393 408 444
+220 260 305 313 322
+221 229 236 245 326
+222 252 330 408 421
+223 224 323 453 469
+224 266 423 483 500
+225 240 432 443 485
+226 280 472 480 486
+227 270 383 412 452
+228 263 288 292 295
+229 403 412 450 492
+230 277 336 491 496
+231 315 341 358 499
+232 255 435 443 486
+233 452 453 455 470
+234 299 308 388 457
+235 296 340 380 442
+236 348 349 431 479
+237 251 257 284 323
+238 241 402 403 405
+239 244 336 401 429
+240 243 304 334 379
+241 318 325 363 489
+242 326 362 432 447
+243 371 379 384 493
+244 342 363 415 490
+245 290 312 396 459
+246 304 316 419 495
+247 256 423 459 462
+248 290 376 397 419
+249 258 289 391 473
+250 275 328 361 366
+251 327 344 404 405
+252 297 342 485 487
+253 264 461 466 487
+254 441 442 481 500
+255 357 359 360 417
+256 311 316 321 346
+257 348 369 377 481
+258 356 358 378 417
+259 287 392 423 425
+260 269 327 328 367
+261 337 362 378 424
+262 319 334 354 386
+263 324 355 422 471
+264 351 352 374 424
+265 367 398 418 478
+266 374 400 429 464
+267 319 402 460 491
+268 271 292 355 379
+269 289 492 494 495
+270 287 376 464 490
+271 294 338 436 446
+272 331 345 346 474
+273 274 363 364 365
+274 281 293 386 391
+275 303 411 427 478
+276 336 364 407 455
+277 282 373 470 475
+278 292 345 441 462
+279 352 353 354 355
+280 285 312 404 420
+281 320 431 436 446
+282 318 325 395 470
+283 368 420 425 430
+284 285 315 354 445
+285 360 480 494 496
+286 320 369 393 471
+287 310 338 344 436
+1 2 68 204 237
+2 3 58 88 95
+3 18 60 91 254
+4 5 33 41 51
+6 37 74 104 416
+7 11 20 31 129
+8 57 67 294 472
+9 10 22 38 400
+11 13 36 79 488
+16 19 72 154 492
+28 29 86 463 491
diff --git a/gr-fec/python/fec/LDPC/n_0512_k_0130_gap_21.alist b/gr-fec/python/fec/LDPC/n_0512_k_0130_gap_21.alist
new file mode 100644
index 0000000000..45ce5a2be8
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0512_k_0130_gap_21.alist
@@ -0,0 +1,898 @@
+512 382
+3 4
+1 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+1
+1 2 363
+3 379
+4 381
+3 5 381
+6 363 382
+4 7 362
+8 370
+9 363 378
+4 10 377
+11 369 377
+12 366 370
+12 13 364
+10 14 364
+15 364 374
+8 16 374
+15 17 382
+6 16 18
+19 363 367
+19 20 366
+19 21 378
+21 22
+23 369 380
+24 371 379
+25 367 371
+25 26 378
+21 25 27
+23 26 28
+28 29 362
+3 30 372
+29 31 372
+12 32 375
+14 32 33
+24 33 34
+11 34 35
+34 36 377
+31 36 37
+1 37 38
+20 36 39
+31 40 373
+2 40 41
+13 41 42
+42 43 379
+29 43 44
+43 45
+44 46 372
+3 47 376
+22 48 376
+45 48 49
+47 50 364
+27 50 51
+19 47 52
+46 48 53
+6 48 54
+40 53 55
+2 54 56
+51 56 57
+46 58 368
+50 58 59
+29 59 60
+56 60 61
+38 59 62
+62 63 381
+57 61 64
+7 63 65
+43 64 66
+64 67 380
+60 68 371
+65 69 375
+28 70 368
+49 68 71
+14 58 72
+64 73
+72 73 74
+71 75 372
+66 72 76
+26 62 77
+66 75 78
+37 76 79
+53 79 80
+80 81 366
+79 82 365
+52 83 365
+51 83 84
+54 84 85
+56 83 86
+46 85 87
+80 87 88
+87 89 382
+76 82 90
+10 89 91
+8 88 92
+36 91 93
+77 91 94
+94 95 369
+34 94 96
+94 97 373
+73 82 98
+49 98 99
+71 89 100
+4 99 101
+76 101 102
+24 101 103
+96 104 381
+47 98 105
+74 105 106
+78 102 107
+81 98 108
+37 106 109
+69 107 110
+90 110 111
+96 109 112
+26 112 113
+104 114 370
+17 114 115
+106 115 116
+16 114 117
+75 114 118
+97 117 119
+58 119 120
+52 115 121
+22 119 122
+39 110 123
+31 116 124
+82 124 125
+7 115 126
+123 127 368
+87 113 128
+109 127 129
+102 129 130
+15 129 131
+95 124 132
+106 123 133
+121 126 134
+18 126 135
+91 132 136
+74 133 137
+8 122 138
+12 137 139
+93 135 140
+35 127 141
+108 135 142
+15 116 143
+113 132 144
+141 145 374
+102 139 146
+103 145 147
+11 140 148
+92 147 149
+61 141 150
+66 146 151
+55 151 152
+42 148 153
+125 145 154
+132 155 362
+20 131 156
+99 144 157
+44 134 158
+137 152 159
+27 159 160
+69 159 161
+133 141 162
+84 148 163
+118 130 164
+70 142 165
+24 143 166
+128 134 167
+127 151 168
+33 165 169
+104 131 170
+18 119 171
+160 172 382
+121 161 173
+28 172 174
+30 138 175
+157 176 373
+17 149 177
+78 147 178
+142 154 179
+71 163 180
+25 158 181
+116 168 182
+154 170 183
+153 160 184
+161 185 380
+95 182 186
+103 173 187
+110 164 188
+10 169 189
+97 169 190
+30 157 191
+149 189 192
+163 187 193
+78 175 194
+133 134 195
+35 178 196
+152 170 197
+39 174 198
+139 193 199
+49 184 200
+135 185 201
+188 202 373
+142 192 203
+93 189 204
+177 194 205
+139 176 206
+153 162 207
+5 168 208
+23 143 209
+138 204 210
+187 211 366
+6 170 212
+62 205 213
+125 153 214
+105 197 215
+199 208 216
+40 178 217
+184 216 218
+100 146 219
+100 192 220
+164 196 221
+136 181 222
+86 195 223
+77 191 224
+176 224 225
+211 226 369
+107 197 227
+154 221 228
+84 202 229
+162 229 230
+50 220 231
+9 217 232
+86 120 233
+86 195 234
+99 159 235
+151 235 236
+85 215 237
+136 233 238
+117 217 239
+188 216 240
+41 194 241
+188 239 242
+202 222 243
+173 236 244
+18 227 245
+1 219 246
+169 247 379
+96 232 248
+201 206 249
+211 243 250
+155 165 251
+228 234 252
+183 214 253
+32 214 254
+226 233 255
+203 247 256
+100 183 257
+112 172 258
+182 207 259
+146 247 260
+171 242 261
+130 193 262
+222 234 263
+13 254 264
+121 171 265
+246 250 266
+160 176 267
+200 202 268
+246 269 365
+67 207 270
+124 229 271
+208 262 272
+177 246 273
+152 254 274
+187 228 275
+248 249 276
+205 228 277
+203 243 278
+234 279 367
+63 264 280
+67 214 281
+167 196 282
+185 205 283
+149 251 284
+70 280 285
+268 283 286
+181 200 287
+23 281 288
+89 276 289
+158 240 290
+220 255 291
+14 166 292
+226 253 293
+219 294 375
+186 232 295
+245 285 296
+217 260 297
+275 290 298
+27 257 299
+163 298 300
+210 238 301
+126 258 302
+68 302 303
+165 295 304
+88 294 305
+118 289 306
+199 260 307
+238 256 308
+230 242 309
+140 269 310
+38 237 311
+32 305 312
+69 312 313
+223 280 314
+175 299 315
+52 263 316
+266 286 317
+177 255 318
+266 309 319
+227 249 320
+5 294 321
+55 313 322
+179 231 323
+242 321 324
+117 319 325
+92 272 326
+122 267 327
+327 328 376
+2 218 329
+195 303 330
+307 308 331
+53 327 332
+90 244 333
+212 294 334
+209 296 335
+252 273 336
+250 335 337
+274 334 338
+277 302 339
+198 306 340
+111 321 341
+212 265 342
+196 210 343
+21 338 344
+101 344 345
+304 341 346
+11 332 347
+207 333 348
+85 290 349
+287 300 350
+309 341 351
+180 349 352
+136 340 353
+288 339 354
+222 335 355
+216 298 356
+272 357 368
+130 337 358
+266 282 359
+283 360 377
+248 332 361
+173 244 293
+144 342 357
+44 237 311
+67 279 354
+291 337 355
+172 250 264
+210 316 343
+33 192 197
+167 256 350
+90 251 257
+22 314 318
+70 190 239
+336 352 376
+41 233 235
+65 194 276
+55 351 353
+208 306 329
+138 345 346
+88 227 241
+150 161 229
+105 318 322
+245 271 279
+220 221 245
+168 273 343
+45 261 319
+209 241 261
+274 316 370
+45 349 360
+16 310 315
+200 341 346
+316 344 353
+237 244 293
+123 253 271
+282 291 347
+38 256 267
+155 239 375
+240 300 371
+107 334 358
+61 232 301
+35 336 352
+178 206 255
+92 284 326
+145 269 330
+120 329 340
+322 333 367
+280 324 362
+291 325 359
+271 287 323
+155 270 298
+17 282 312
+259 330 350
+174 305 358
+218 333 348
+230 278 340
+128 230 319
+287 304 318
+175 268 292
+140 296 331
+60 267 304
+111 249 343
+122 247 310
+118 292 324
+223 273 361
+93 314 323
+108 306 307
+68 164 167
+109 240 317
+206 355 361
+9 253 263
+156 288 359
+201 203 224
+81 327 360
+180 281 292
+150 295 297
+57 225 331
+166 274 320
+74 259 288
+162 342 347
+137 295 345
+181 191 226
+157 299 325
+218 337 355
+20 223 286
+179 297 313
+293 303 336
+183 189 204
+39 310 317
+150 265 322
+190 326 356
+57 277 314
+171 185 299
+204 347 350
+156 213 317
+215 225 360
+81 236 345
+9 285 358
+143 278 290
+184 258 259
+346 361 365
+72 315 338
+7 279 338
+83 174 209
+104 236 275
+80 211 302
+97 156 158
+166 235 289
+201 300 315
+215 303 357
+108 252 311
+254 301 308
+179 248 262
+261 275 301
+191 320 321
+95 284 308
+212 262 297
+252 257 286
+260 268 342
+59 324 348
+54 284 326
+128 231 243
+307 328 351
+112 281 320
+73 349 356
+42 125 129
+111 221 296
+65 193 278
+339 344 351
+131 241 265
+144 263 264
+30 198 335
+180 231 378
+199 270 374
+77 258 270
+120 213 225
+79 186 190
+289 312 313
+63 147 148
+103 283 285
+113 251 269
+325 353 354
+13 186 339
+198 213 331
+238 354 357
+5 309 311
+182 277 359
+51 272 348
+219 305 330
+75 329 352
+323 332 380
+224 276 328
+328 334 356
+1 2 38 246
+2 41 56 329
+3 5 30 47
+4 7 10 101
+5 208 321 505
+6 18 54 212
+7 65 126 462
+8 16 92 138
+9 232 430 457
+10 14 91 189
+11 35 148 347
+12 13 32 139
+13 42 264 502
+14 33 72 292
+15 17 131 143
+16 18 117 390
+17 115 177 411
+18 135 171 245
+19 20 21 52
+20 39 156 444
+21 22 27 344
+22 48 122 372
+23 28 209 288
+24 34 103 166
+25 26 27 181
+26 28 77 113
+27 51 160 299
+28 29 70 174
+29 31 44 60
+30 175 191 491
+31 37 40 124
+32 33 254 312
+33 34 169 369
+34 35 36 96
+35 141 196 401
+36 37 39 93
+37 38 79 109
+38 62 311 396
+39 123 198 448
+40 41 55 217
+41 42 241 375
+42 43 153 485
+43 44 45 66
+44 46 158 364
+45 49 386 389
+46 53 58 87
+47 50 52 105
+48 49 53 54
+49 71 99 200
+50 51 59 231
+51 57 84 507
+52 83 121 316
+53 55 80 332
+54 56 85 480
+55 152 322 377
+56 57 61 86
+57 64 436 451
+58 59 72 120
+59 60 62 479
+60 61 68 420
+61 64 150 400
+62 63 77 213
+63 65 280 498
+64 66 67 73
+65 69 376 487
+66 76 78 151
+67 270 281 365
+68 71 303 427
+69 110 161 313
+70 165 285 373
+71 75 100 180
+72 74 76 461
+73 74 98 484
+74 106 137 438
+75 78 118 509
+76 79 90 102
+77 94 224 494
+78 107 178 194
+79 80 82 496
+80 81 88 465
+81 108 433 456
+82 90 98 125
+83 84 86 463
+84 85 163 229
+85 87 237 349
+86 223 233 234
+87 88 89 128
+88 92 305 380
+89 91 100 289
+90 111 333 371
+91 93 94 136
+92 149 326 403
+93 140 204 425
+94 95 96 97
+95 132 186 475
+96 104 112 248
+97 119 190 466
+98 99 105 108
+99 101 157 235
+100 219 220 257
+101 102 103 345
+102 107 130 146
+103 147 187 499
+104 114 170 464
+105 106 215 382
+106 109 116 133
+107 110 227 399
+108 142 426 470
+109 112 129 428
+110 111 123 188
+111 341 421 486
+112 113 258 483
+113 128 144 500
+114 115 117 118
+115 116 121 126
+116 124 143 182
+117 119 239 325
+118 164 306 423
+119 120 122 171
+120 233 405 495
+121 134 173 265
+122 138 327 422
+123 127 133 394
+124 125 132 271
+125 154 214 485
+126 134 135 302
+127 129 141 168
+128 167 416 481
+129 130 131 485
+130 164 262 358
+131 156 170 489
+132 136 144 155
+133 137 162 195
+134 158 167 195
+135 140 142 201
+136 222 238 353
+137 139 159 440
+138 175 210 379
+139 146 199 206
+140 148 310 419
+141 145 150 162
+142 165 179 203
+143 166 209 458
+144 157 363 490
+145 147 154 404
+146 151 219 260
+147 149 178 498
+148 153 163 498
+149 177 192 284
+150 381 435 449
+151 152 168 236
+152 159 197 274
+153 184 207 214
+154 179 183 228
+155 251 397 410
+156 431 454 466
+157 176 191 442
+158 181 290 466
+159 160 161 235
+160 172 184 267
+161 173 185 381
+162 207 230 439
+163 180 193 300
+164 188 221 427
+165 169 251 304
+166 292 437 467
+167 282 370 427
+168 182 208 385
+169 189 190 247
+170 183 197 212
+171 261 265 452
+172 174 258 367
+173 187 244 362
+174 198 413 463
+175 194 315 418
+176 206 225 267
+177 205 273 318
+178 196 217 402
+179 323 445 472
+180 352 434 492
+181 222 287 441
+182 186 259 506
+183 253 257 447
+184 200 218 459
+185 201 283 452
+186 295 496 502
+187 193 211 275
+188 202 240 242
+189 192 204 447
+190 373 450 496
+191 224 441 474
+192 203 220 369
+193 199 262 487
+194 205 241 376
+195 223 234 330
+196 221 282 343
+197 215 227 369
+198 340 491 503
+199 216 307 493
+200 268 287 391
+201 249 432 468
+202 229 243 268
+203 256 278 432
+204 210 447 453
+205 213 277 283
+206 249 402 429
+207 259 270 348
+208 216 272 378
+209 335 387 463
+210 301 343 368
+211 226 250 465
+212 334 342 476
+213 454 495 503
+214 253 254 281
+215 237 455 469
+216 218 240 356
+217 232 239 297
+218 329 414 443
+219 246 294 508
+220 231 291 384
+221 228 384 486
+222 243 263 355
+223 314 424 444
+224 225 432 511
+225 436 455 495
+226 255 293 441
+227 245 320 380
+228 252 275 277
+229 230 271 381
+230 309 415 416
+231 323 481 492
+232 248 295 400
+233 238 255 375
+234 252 263 279
+235 236 375 467
+236 244 456 464
+237 311 364 393
+238 301 308 504
+239 242 373 397
+240 290 398 428
+241 380 387 489
+242 261 309 324
+243 250 278 481
+244 333 362 393
+245 296 383 384
+246 266 269 273
+247 256 260 422
+248 276 361 472
+249 276 320 421
+250 266 337 367
+251 284 371 500
+252 336 470 477
+253 293 394 430
+254 264 274 471
+255 291 318 402
+256 308 370 396
+257 299 371 477
+258 302 459 494
+259 412 438 459
+260 297 307 478
+261 386 387 473
+262 272 472 476
+263 316 430 490
+264 280 367 490
+265 342 449 489
+266 317 319 359
+267 327 396 420
+268 286 418 478
+269 310 404 500
+270 410 493 494
+271 383 394 409
+272 326 357 507
+273 336 385 424
+274 338 388 437
+275 298 464 473
+276 289 376 511
+277 339 451 506
+278 415 458 487
+279 365 383 462
+280 285 314 407
+281 288 434 483
+282 359 395 411
+283 286 360 499
+284 403 475 480
+285 296 457 499
+286 317 444 477
+287 350 409 417
+288 354 431 438
+289 306 467 497
+290 298 349 458
+291 366 395 408
+292 418 423 434
+293 362 393 446
+294 305 321 334
+295 304 435 440
+296 335 419 486
+297 435 445 476
+298 300 356 410
+299 315 442 452
+300 350 398 468
+301 400 471 473
+302 303 339 465
+303 330 446 469
+304 346 417 420
+305 312 413 508
+306 340 378 426
+307 331 426 482
+308 331 471 475
+309 319 351 505
+310 390 422 448
+311 364 470 505
+312 313 411 497
+313 322 445 497
+314 372 425 451
+315 390 461 468
+316 368 388 392
+317 428 448 454
+318 372 382 417
+319 325 386 416
+320 437 474 483
+321 324 341 474
+322 382 406 449
+323 409 425 510
+324 407 423 479
+325 408 442 501
+326 403 450 480
+327 328 332 433
+328 482 511 512
+329 378 405 509
+330 404 412 508
+331 419 436 503
+332 347 361 510
+333 348 406 414
+334 338 399 512
+335 337 355 491
+336 374 401 446
+337 358 366 443
+338 344 461 462
+339 354 488 502
+340 353 405 415
+341 346 351 391
+342 363 439 478
+343 368 385 421
+344 345 392 488
+345 379 440 456
+346 379 391 460
+347 395 439 453
+348 414 479 507
+349 352 389 484
+350 370 412 453
+351 377 482 488
+352 374 401 509
+353 377 392 501
+354 365 501 504
+355 366 429 443
+356 450 484 512
+357 363 469 504
+358 399 413 457
+359 408 431 506
+360 389 433 455
+361 424 429 460
+7 29 155 407
+2 6 9 19
+13 14 15 50
+82 83 269 460
+12 20 81 211
+19 25 279 406
+58 70 127 357
+11 23 95 226
+8 12 114 388
+24 25 68 398
+30 31 46 75
+40 97 176 202
+15 16 145 493
+32 69 294 397
+47 48 328 374
+10 11 36 360
+9 21 26 492
+3 24 43 247
+23 67 185 510
+4 5 63 104
+6 17 89 172
diff --git a/gr-fec/python/fec/LDPC/n_0700_k_0282_gap_16.alist b/gr-fec/python/fec/LDPC/n_0700_k_0282_gap_16.alist
new file mode 100644
index 0000000000..5fcdcbd4a9
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_0700_k_0282_gap_16.alist
@@ -0,0 +1,1122 @@
+700 418
+3 5
+2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+1 414
+2 411
+2 3 409
+4 408
+4 5 411
+5 6 415
+7 406
+1 8 403
+5 9 413
+3 10 417
+4 11 412
+6 11 12
+13 407 412
+13 14 417
+14 15 414
+15 16 417
+7 16 17
+17 18 415
+16 19 409
+19 20 413
+14 21 405
+20 21 22
+21 22 23
+23 24
+24 25 406
+9 26 416
+11 27 416
+12 27 28
+10 28 29
+28 29 30
+26 30 31
+28 31 32
+11 32 33
+10 31 34
+9 33 35
+19 33 36
+9 37 404
+38 410 412
+12 39 410
+3 38 40
+34 40 41
+39 42 409
+32 42 43
+30 43 44
+7 40 45
+16 41 46
+47 418
+21 48 418
+31 48 49
+1 50 418
+8 49 51
+22 51 52
+52 53 403
+52 54 413
+28 54 55
+55 56 408
+41 51 57
+53 58 403
+27 57 59
+45 52 60
+38 50 61
+22 61 62
+62 63 407
+17 47 64
+19 61 65
+58 63 66
+51 66 67
+44 60 68
+61 67 69
+33 68 70
+17 70 71
+18 59 72
+6 72 73
+70 71 74
+71 75 403
+24 73 76
+56 75 77
+49 69 78
+58 79 405
+68 79 80
+32 80 81
+6 79 82
+40 81 83
+48 82 84
+64 84 85
+42 84 86
+48 83 87
+56 75 88
+85 89
+88 90 403
+77 87 91
+68 91 92
+30 86 93
+76 94 416
+76 94 95
+93 96 405
+16 96 97
+94 98 416
+44 86 99
+25 98 100
+100 101 404
+78 101 102
+8 95 103
+99 104 413
+100 104 105
+66 103 106
+103 107 405
+4 105 108
+107 109 404
+90 102 110
+69 108 111
+34 108 112
+36 110 113
+14 104 114
+85 107 115
+26 112 116
+116 117 415
+85 112 118
+92 115 119
+109 120 418
+11 116 121
+117 122
+45 102 123
+121 124 413
+34 117 125
+109 123 126
+62 119 127
+82 120 128
+78 122 129
+1 126 130
+64 129 131
+7 123 132
+110 121 133
+77 126 134
+88 131 135
+66 130 136
+112 127 137
+104 138 408
+112 139 414
+86 135 140
+23 129 141
+102 119 142
+139 143 416
+133 144 404
+46 132 145
+97 143 146
+79 140 147
+115 132 148
+105 131 149
+89 141 150
+111 134 151
+94 148 152
+143 153 407
+117 152 154
+73 145 155
+44 115 156
+99 150 157
+60 140 158
+125 126 159
+15 150 160
+84 148 161
+130 138 162
+151 163 409
+123 136 164
+129 155 165
+106 158 166
+117 139 167
+45 113 168
+127 145 169
+158 170 418
+50 142 171
+92 164 172
+83 150 173
+154 162 174
+136 148 175
+56 141 176
+90 159 177
+50 172 178
+147 179 411
+80 163 180
+20 164 181
+165 176 182
+63 161 183
+127 183 184
+182 185 404
+48 124 186
+120 172 187
+111 142 188
+101 167 189
+169 183 190
+46 161 191
+81 191 192
+105 156 193
+47 158 194
+29 170 195
+87 182 196
+53 192 197
+149 167 198
+29 180 199
+160 187 200
+25 159 201
+120 177 202
+93 197 203
+72 172 204
+136 205 410
+118 205 206
+180 186 207
+66 143 208
+37 174 209
+121 188 210
+111 195 211
+101 172 212
+157 202 213
+131 140 214
+98 213 215
+15 204 216
+118 125 217
+57 156 218
+78 218 219
+97 201 220
+26 156 221
+106 141 222
+93 140 223
+174 190 224
+19 205 225
+128 169 226
+185 226 227
+5 216 228
+4 224 229
+82 214 230
+150 176 231
+166 194 232
+132 217 233
+215 234
+63 199 235
+62 210 236
+81 138 237
+154 236 238
+157 215 239
+89 233 240
+2 201 241
+186 234 242
+103 195 243
+166 184 244
+118 222 245
+38 235 246
+74 221 247
+133 202 248
+80 114 249
+122 211 250
+76 176 251
+168 227 252
+134 171 253
+193 235 254
+90 208 255
+160 217 256
+1 247 257
+174 229 258
+210 249 259
+72 238 260
+126 248 261
+59 240 262
+188 210 263
+58 245 264
+179 240 265
+36 261 266
+215 235 267
+91 212 268
+144 248 269
+53 196 270
+164 207 271
+74 191 272
+45 251 273
+173 226 274
+242 261 275
+61 272 276
+54 219 277
+54 261 278
+73 188 279
+177 253 280
+208 219 281
+35 221 282
+139 239 283
+225 262 284
+127 155 285
+67 243 286
+229 287 410
+75 283 288
+8 277 289
+206 208 290
+271 278 291
+33 276 292
+157 239 293
+84 241 294
+135 271 295
+98 238 296
+77 282 297
+170 298 406
+208 249 299
+185 275 300
+148 250 301
+128 265 302
+121 178 303
+110 290 304
+216 250 305
+161 279 306
+176 226 307
+292 308 412
+108 275 309
+236 262 310
+182 187 311
+38 184 312
+236 259 313
+8 263 314
+279 307 315
+299 316 417
+247 280 317
+153 302 318
+141 279 319
+30 288 320
+13 240 321
+119 168 322
+220 314 323
+165 216 324
+256 324 325
+242 322 326
+231 318 327
+50 241 328
+212 230 329
+44 291 330
+107 300 331
+178 228 332
+145 326 333
+63 325 334
+200 335 406
+209 307 336
+100 300 337
+147 332 338
+32 333 339
+175 334 340
+249 273 341
+198 270 342
+297 342 343
+114 314 344
+130 339 345
+35 245 346
+99 291 347
+247 346 348
+73 323 349
+200 298 350
+40 278 351
+106 329 352
+276 353 411
+154 324 354
+311 355 414
+113 343 356
+24 289 357
+9 245 358
+65 199 359
+260 337 360
+207 322 361
+179 246 362
+197 316 363
+264 341 364
+72 312 365
+218 337 366
+318 339 367
+102 223 368
+41 355 369
+336 370 406
+56 252 371
+347 372 409
+254 344 373
+87 355 374
+275 374 375
+144 369 376
+71 310 377
+201 270 378
+312 360 379
+57 341 380
+93 185 381
+97 285 382
+167 330 383
+181 242 384
+12 373 385
+364 381 386
+367 387
+363 385 388
+244 388 389
+337 366 390
+37 387 391
+298 360 392
+35 327 393
+143 187 394
+304 353 395
+59 331 396
+162 287 397
+342 354 398
+213 349 399
+67 389 400
+43 175 401
+7 350 402
+95 222 320
+214 237 388
+335 350 352
+173 202 204
+47 53 54
+83 133 213
+197 219 245
+116 198 268
+78 374 395
+75 206 257
+215 269 289
+305 345 395
+134 234 346
+317 365 368
+309 370 415
+280 286 366
+293 306 408
+69 284 293
+187 285 357
+42 255 367
+181 353 379
+96 239 286
+296 309 350
+76 241 336
+147 299 358
+181 278 363
+90 199 312
+201 359 380
+113 335 371
+65 295 393
+170 237 325
+284 382 390
+200 224 270
+244 325 374
+59 352 356
+20 269 349
+220 249 254
+260 292 378
+96 298 392
+139 336 348
+365 370 415
+191 348 376
+125 235 268
+114 231 313
+274 359 395
+18 315 344
+83 284 383
+89 123 195
+124 378 395
+221 225 267
+57 194 287
+92 259 320
+25 169 170
+133 255 400
+47 190 214
+114 161 178
+227 387 400
+79 256 263
+39 203 399
+232 252 366
+122 321 373
+223 228 269
+214 241 342
+92 277 354
+211 272 364
+266 316 324
+82 149 377
+248 362 373
+175 203 328
+213 276 344
+85 376 401
+203 311 323
+233 301 390
+152 282 331
+21 155 194
+118 217 291
+163 314 396
+167 283 294
+3 156 222
+159 286 289
+196 300 347
+36 237 334
+149 258 265
+113 216 369
+153 258 277
+67 297 319
+36 189 242
+31 358 387
+248 281 362
+280 288 383
+180 351 391
+347 352 402
+119 138 412
+227 334 381
+168 181 264
+189 291 292
+175 196 266
+185 313 362
+160 217 256
+130 259 411
+65 200 289
+184 237 255
+178 198 322
+100 236 284
+87 263 326
+52 184 229
+211 297 328
+22 397 401
+88 243 294
+89 165 173
+12 285 316
+257 271 394
+146 238 341
+276 343 384
+267 281 361
+318 339 340
+243 253 388
+264 353 388
+125 252 358
+273 370 385
+108 188 304
+116 232 401
+193 253 310
+162 369 380
+231 265 374
+285 316 366
+204 309 326
+95 279 368
+268 399 402
+171 205 408
+244 342 389
+135 209 308
+15 207 231
+192 324 368
+152 390 398
+219 243 372
+230 232 367
+128 355 359
+5 281 384
+6 205 356
+49 375 394
+220 370 396
+149 353 361
+153 378 385
+35 192 322
+146 206 223
+91 299 343
+224 238 417
+222 363 379
+17 137 171
+18 333 394
+46 357 380
+224 267 287
+209 280 356
+27 368 381
+62 343 358
+151 268 321
+94 295 357
+80 308 382
+189 386 400
+183 225 405
+227 267 271
+226 230 386
+151 209 352
+147 338 361
+91 142 179
+26 154 166
+129 272 295
+51 373 386
+39 317 392
+144 371 398
+99 294 315
+306 344 360
+165 299 303
+2 134 137
+182 218 397
+329 335 401
+317 328 407
+303 330 335
+296 303 364
+109 153 155
+158 166 168
+74 294 393
+180 252 414
+60 330 396
+146 311 321
+49 306 379
+95 307 328
+43 371 393
+39 131 152
+250 381 384
+195 274 282
+29 228 386
+132 315 330
+189 296 382
+74 377 393
+14 351 391
+103 305 325
+64 336 340
+55 246 396
+137 193 223
+81 190 250
+41 246 389
+42 293 314
+104 318 376
+194 290 351
+277 290 398
+34 203 259
+55 357 363
+13 275 300
+136 251 354
+10 348 399
+20 234 283
+60 144 377
+240 298 331
+186 292 333
+23 163 326
+18 327 329
+257 261 302
+115 258 315
+86 356 372
+13 260 307
+58 301 375
+68 392 398
+169 346 359
+262 302 313
+171 204 385
+162 338 391
+274 313 339
+128 305 371
+199 348 354
+96 173 212
+186 288 332
+98 340 345
+191 211 225
+190 206 301
+77 295 332
+65 174 397
+122 246 387
+193 350 402
+101 360 402
+230 333 362
+46 378 383
+367 372 410
+254 290 365
+124 221 392
+270 351 407
+255 286 319
+111 269 310
+142 297 345
+233 273 377
+55 266 302
+346 391 399
+105 106 109
+70 296 304
+159 288 355
+97 151 311
+207 308 323
+281 306 379
+10 244 258
+135 287 340
+64 338 369
+70 196 210
+71 251 272
+228 329 375
+177 347 364
+337 365 400
+160 257 338
+24 251 320
+110 183 253
+274 319 383
+308 327 382
+3 220 233
+334 341 361
+332 349 375
+2 124 137
+283 319 384
+69 262 282
+247 256 380
+138 198 212
+23 163 164
+239 390 394
+266 273 320
+157 218 254
+27 234 265
+145 301 317
+107 192 197
+179 232 312
+88 264 321
+146 305 331
+120 229 372
+37 177 304
+43 323 345
+260 303 309
+202 278 397
+25 293 376
+310 349 389
+37 263 327
+1 8 50 130 257
+2 3 241 577 678
+3 10 40 481 675
+4 5 11 108 229
+5 6 9 228 541
+6 12 73 82 542
+7 17 45 132 402
+8 51 103 289 314
+9 26 35 37 358
+10 29 34 614 662
+11 12 27 33 121
+12 28 39 385 513
+13 14 321 612 624
+14 15 21 114 599
+15 16 160 216 535
+16 17 19 46 97
+17 18 64 71 552
+18 72 448 553 620
+19 20 36 65 225
+20 22 181 438 615
+21 22 23 48 477
+22 23 52 62 510
+23 24 141 619 683
+24 25 76 357 671
+25 100 201 455 698
+26 31 116 221 569
+27 28 59 557 687
+28 29 30 32 55
+29 30 195 199 595
+30 31 44 93 320
+31 32 34 49 490
+32 33 43 81 339
+33 35 36 70 292
+34 41 112 125 610
+35 282 346 393 547
+36 113 266 484 489
+37 209 391 694 700
+38 40 61 246 312
+39 42 461 572 592
+40 41 45 83 351
+41 46 57 369 605
+42 43 86 422 606
+43 44 401 591 695
+44 68 99 156 330
+45 60 123 168 273
+46 145 191 554 645
+47 64 194 407 457
+48 49 84 87 186
+49 51 78 543 589
+50 61 171 178 328
+51 52 57 67 571
+52 53 54 60 508
+53 58 197 270 407
+54 55 277 278 407
+55 56 602 611 654
+56 77 88 176 371
+57 59 218 380 453
+58 66 79 264 625
+59 72 262 396 437
+60 68 158 587 616
+61 62 65 69 276
+62 63 127 236 558
+63 66 183 235 334
+64 85 131 601 664
+65 359 432 503 640
+66 67 106 136 208
+67 69 286 400 488
+68 70 80 92 626
+69 78 111 420 680
+70 71 74 657 665
+71 74 75 377 666
+72 73 204 260 365
+73 76 155 279 349
+74 247 272 585 598
+75 77 88 288 412
+76 94 95 251 426
+77 91 134 297 639
+78 102 129 219 411
+79 80 82 147 460
+80 81 180 249 561
+81 83 192 237 604
+82 84 128 230 469
+83 87 173 408 449
+84 85 86 161 294
+85 89 115 118 473
+86 93 99 140 623
+87 91 196 374 507
+88 90 135 511 691
+89 150 240 450 512
+90 110 177 255 429
+91 92 268 549 568
+92 119 172 454 466
+93 96 203 223 381
+94 95 98 152 560
+95 103 403 530 590
+96 97 424 441 634
+97 146 220 382 659
+98 100 215 296 636
+99 104 157 347 574
+100 101 105 337 506
+101 102 189 212 643
+102 110 123 142 368
+103 106 107 243 600
+104 105 114 138 607
+105 108 149 193 656
+106 166 222 352 656
+107 109 115 331 689
+108 111 112 309 523
+109 120 126 583 656
+110 113 133 304 672
+111 151 188 211 651
+112 116 118 137 139
+113 168 356 431 486
+114 249 344 446 458
+115 119 148 156 622
+116 117 121 410 524
+117 122 125 154 167
+118 206 217 245 478
+119 127 142 322 495
+120 128 187 202 693
+121 124 133 210 303
+122 129 250 463 641
+123 126 132 164 450
+124 186 451 648 678
+125 159 217 445 521
+126 130 134 159 261
+127 137 169 184 285
+128 226 302 540 632
+129 131 141 165 570
+130 136 162 345 502
+131 135 149 214 592
+132 145 148 233 596
+133 144 248 408 456
+134 151 253 415 577
+135 140 295 534 663
+136 164 175 205 613
+137 552 577 603 678
+138 162 237 495 682
+139 143 167 283 442
+140 147 158 214 223
+141 150 176 222 319
+142 171 188 568 652
+143 146 153 208 394
+144 269 376 573 616
+145 155 169 333 688
+146 515 548 588 692
+147 179 338 427 567
+148 152 161 175 301
+149 198 469 485 545
+150 157 160 173 231
+151 163 559 566 659
+152 154 476 537 592
+153 318 487 546 583
+154 174 238 354 569
+155 165 285 477 583
+156 193 218 221 481
+157 213 239 293 686
+158 166 170 194 584
+159 177 201 482 658
+160 200 256 501 670
+161 183 191 306 458
+162 174 397 526 630
+163 180 479 619 683
+164 172 181 271 683
+165 182 324 512 576
+166 232 244 569 584
+167 189 198 383 480
+168 252 322 497 584
+169 190 226 455 627
+170 195 298 433 455
+171 253 532 552 629
+172 178 187 204 212
+173 274 406 512 634
+174 209 224 258 640
+175 340 401 471 499
+176 182 231 251 307
+177 202 280 668 694
+178 303 332 458 505
+179 265 362 568 690
+180 199 207 493 586
+181 384 423 428 497
+182 185 196 311 578
+183 184 190 563 672
+184 244 312 504 508
+185 227 300 381 500
+186 207 242 618 635
+187 200 311 394 421
+188 210 263 279 523
+189 489 498 562 597
+190 224 457 604 638
+191 192 272 444 637
+192 197 536 547 689
+193 254 525 603 642
+194 232 453 477 608
+195 211 243 450 594
+196 270 483 499 665
+197 203 363 409 689
+198 342 410 505 682
+199 235 359 429 633
+200 335 350 435 503
+201 220 241 378 430
+202 213 248 406 697
+203 461 471 474 610
+204 216 406 529 629
+205 206 225 532 542
+206 290 412 548 638
+207 271 361 535 660
+208 255 281 290 299
+209 336 534 556 566
+210 236 259 263 665
+211 250 467 509 637
+212 268 329 634 682
+213 215 399 408 472
+214 230 404 457 465
+215 234 239 267 413
+216 228 305 324 486
+217 233 256 478 501
+218 219 366 578 686
+219 277 281 409 538
+220 323 439 544 675
+221 247 282 452 648
+222 245 403 481 551
+223 368 464 548 603
+224 229 435 550 555
+225 284 452 563 637
+226 227 274 307 565
+227 252 459 496 564
+228 332 464 595 667
+229 258 287 508 693
+230 329 539 565 644
+231 327 446 527 535
+232 462 524 539 690
+233 240 475 653 675
+234 242 415 615 687
+235 246 254 267 445
+236 238 310 313 506
+237 404 433 484 504
+238 260 296 515 550
+239 283 293 424 684
+240 262 265 321 617
+241 294 328 426 465
+242 275 326 384 489
+243 286 511 519 538
+244 389 436 533 662
+245 264 346 358 409
+246 362 602 605 641
+247 257 317 348 681
+248 261 269 470 491
+249 259 299 341 439
+250 301 305 593 604
+251 273 613 666 671
+252 371 462 521 586
+253 280 519 525 672
+254 373 439 647 686
+255 422 456 504 650
+256 325 460 501 681
+257 412 514 621 670
+258 485 487 622 662
+259 313 454 502 610
+260 360 440 624 696
+261 266 275 278 621
+262 284 310 628 680
+263 314 460 507 700
+264 364 497 520 691
+265 302 485 527 687
+266 468 499 654 685
+267 452 517 555 564
+268 410 445 531 559
+269 413 438 464 651
+270 342 378 435 649
+271 291 295 514 564
+272 276 467 570 666
+273 341 522 653 685
+274 447 594 631 673
+275 300 309 375 612
+276 292 353 472 516
+277 289 466 487 609
+278 291 351 428 697
+279 306 315 319 530
+280 317 418 492 556
+281 491 517 541 661
+282 297 476 594 680
+283 288 480 615 679
+284 420 434 449 506
+285 382 421 513 528
+286 418 424 482 650
+287 397 453 555 663
+288 320 492 635 658
+289 357 413 482 503
+290 304 608 609 647
+291 330 347 478 498
+292 308 440 498 618
+293 419 420 606 698
+294 480 511 574 585
+295 432 560 570 639
+296 425 582 597 657
+297 343 488 509 652
+298 350 392 441 617
+299 316 427 549 576
+300 331 337 483 612
+301 475 625 638 688
+302 318 621 628 654
+303 576 581 582 696
+304 395 523 657 694
+305 414 600 632 692
+306 419 575 589 661
+307 315 336 590 624
+308 534 561 660 674
+309 417 425 529 696
+310 377 525 651 699
+311 355 474 588 659
+312 365 379 429 690
+313 446 500 628 631
+314 323 344 479 606
+315 448 574 596 622
+316 363 468 513 528
+317 416 572 580 688
+318 327 367 518 607
+319 488 650 673 679
+320 403 454 671 685
+321 463 559 588 691
+322 326 361 505 547
+323 349 474 660 695
+324 325 354 468 536
+325 334 433 436 600
+326 333 507 529 619
+327 393 620 674 700
+328 471 509 580 590
+329 352 579 620 667
+330 383 581 587 596
+331 396 476 617 692
+332 338 635 639 677
+333 339 553 618 644
+334 340 484 496 676
+335 405 431 579 581
+336 370 426 442 601
+337 360 366 390 669
+338 567 630 664 670
+339 345 367 518 631
+340 518 601 636 663
+341 364 380 515 676
+342 343 398 465 533
+343 356 516 549 558
+344 373 448 472 575
+345 414 636 652 695
+346 348 415 627 655
+347 372 483 494 668
+348 442 444 614 633
+349 399 438 677 699
+350 402 405 425 642
+351 493 599 608 649
+352 405 437 494 566
+353 395 423 520 545
+354 398 466 613 633
+355 369 374 540 658
+356 437 542 556 623
+357 421 554 560 611
+358 427 490 521 558
+359 430 447 540 627
+360 379 392 575 643
+361 517 545 567 676
+362 470 491 500 644
+363 388 428 551 611
+364 386 467 582 668
+365 416 443 647 669
+366 390 418 462 528
+367 387 422 539 646
+368 416 530 536 557
+369 376 486 526 664
+370 417 443 522 544
+371 431 573 591 632
+372 538 623 646 693
+373 385 463 470 571
+374 375 411 436 527
+375 543 625 667 677
+376 444 473 607 698
+377 469 598 616 653
+378 440 451 546 645
+379 423 551 589 661
+380 430 526 554 681
+381 386 496 557 593
+382 434 561 597 674
+383 449 492 645 673
+384 516 541 593 679
+385 388 522 546 629
+386 562 565 571 595
+387 391 459 490 641
+388 389 404 519 520
+389 400 533 605 699
+390 434 475 537 684
+391 493 599 630 655
+392 441 572 626 648
+393 432 585 591 598
+394 514 543 553 684
+395 411 414 447 451
+396 479 544 587 602
+397 510 578 640 697
+398 537 573 609 626
+399 461 531 614 655
+400 456 459 562 669
+401 473 510 524 579
+402 494 531 642 643
+8 53 58 75 90
+37 101 109 144 185
+21 79 96 107 563
+7 25 298 335 370
+13 63 153 580 649
+4 56 138 419 532
+3 19 42 163 372
+38 39 205 287 646
+2 5 179 353 502
+11 13 38 308 495
+9 20 54 104 124
+1 15 139 355 586
+6 18 117 417 443
+26 27 94 98 143
+10 14 16 316 550
+47 48 50 120 170
diff --git a/gr-fec/python/fec/LDPC/n_1100_k_0442_gap_24.alist b/gr-fec/python/fec/LDPC/n_1100_k_0442_gap_24.alist
new file mode 100644
index 0000000000..1e243a3c6f
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_1100_k_0442_gap_24.alist
@@ -0,0 +1,1762 @@
+1100 658
+3 5
+2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+1 635
+2 635 636
+3 637
+4 635 638
+5 639
+4 6 640
+7 636 641
+8 641 642
+9 639 643
+10 638 644
+10 11 641
+10 12
+5 13 645
+14 637 645
+6 15 646
+16 635 647
+17 645 648
+6 17 18
+17 19 637
+13 20 649
+14 21 650
+11 21 22
+5 21 23
+7 24 650
+25 642 651
+19 26 652
+12 27 652
+28 650 652
+28 29 636
+19 27 30
+18 30 31
+31 32 648
+30 31 33
+32 34
+34 35 642
+33 34 36
+36 37 645
+4 36 38
+28 39 644
+37 40 643
+20 39 41
+16 32 42
+38 42 43
+18 44 653
+7 45 653
+25 45 46
+22 46 47
+9 47 48
+48 49 639
+26 48 50
+35 50 51
+19 51 52
+8 53 654
+49 53 54
+54 55 651
+8 53 56
+29 57 655
+43 58 655
+59 643 655
+58 60 638
+60 61 644
+28 62 656
+55 62 63
+62 64 656
+63 65 653
+64 66 655
+29 65 67
+58 67 68
+9 66 69
+11 70 657
+32 71 657
+72 637 658
+38 72 73
+10 73 74
+16 74 75
+75 76 647
+76 77 652
+75 77 78
+67 76 79
+14 74 80
+8 79 81
+45 80 82
+81 83
+50 82 84
+54 83 85
+74 84 86
+46 78 87
+79 88 650
+37 81 89
+83 90 657
+69 88 91
+88 92
+26 89 93
+89 94 656
+92 95 656
+79 93 96
+95 97 654
+1 93 98
+3 98 99
+73 96 100
+88 97 101
+89 102 636
+24 101 103
+30 103 104
+102 105 646
+103 106 646
+32 106 107
+87 107 108
+105 109 650
+103 110 639
+68 108 111
+35 104 112
+2 104 113
+22 113 114
+67 109 115
+55 104 116
+109 117 640
+117 118 640
+114 118 119
+61 116 120
+39 120 121
+62 111 122
+23 117 123
+55 115 124
+15 110 125
+107 126 640
+16 124 127
+35 120 128
+116 128 129
+107 130 642
+49 125 131
+54 122 132
+105 128 133
+112 124 134
+14 132 135
+12 134 136
+77 122 137
+33 136 138
+86 121 139
+121 136 140
+81 136 141
+132 139 142
+113 143 654
+3 137 144
+122 141 145
+71 125 146
+93 137 147
+26 138 148
+27 114 149
+52 145 150
+15 144 151
+29 114 152
+46 145 153
+48 153 154
+15 149 155
+127 142 156
+42 156 157
+120 154 158
+69 146 159
+159 160 658
+48 140 161
+20 108 162
+115 156 163
+82 149 164
+137 165 649
+69 163 166
+26 166 167
+109 146 168
+40 165 169
+64 158 170
+168 171 643
+91 153 172
+143 173 644
+142 174 654
+152 172 175
+162 174 176
+155 175 177
+70 174 178
+132 155 179
+51 126 180
+57 169 181
+99 138 182
+37 160 183
+166 182 184
+131 176 185
+27 172 186
+110 185 187
+53 143 188
+102 160 189
+75 145 190
+85 161 191
+181 187 192
+31 185 193
+135 163 194
+157 191 195
+94 158 196
+139 182 197
+133 195 198
+6 196 199
+78 174 200
+103 197 201
+91 178 202
+37 192 203
+154 163 204
+120 172 205
+123 180 206
+101 157 207
+73 172 208
+170 175 209
+49 201 210
+33 161 211
+135 161 212
+181 213 653
+82 180 214
+30 190 215
+191 206 216
+12 216 217
+177 214 218
+20 184 219
+102 204 220
+180 221 651
+50 166 222
+167 219 223
+177 224 646
+181 216 225
+22 201 226
+187 227 642
+186 228 647
+223 229
+123 178 230
+162 194 231
+152 218 232
+166 233 638
+118 194 234
+134 222 235
+189 208 236
+56 141 237
+131 235 238
+76 236 239
+197 240 640
+64 224 241
+200 231 242
+75 234 243
+239 244 651
+101 242 245
+66 237 246
+196 243 247
+86 184 248
+90 192 249
+147 204 250
+147 220 251
+147 219 252
+91 249 253
+77 202 254
+82 227 255
+92 250 256
+167 219 257
+185 257 258
+162 232 259
+220 236 260
+238 250 261
+65 248 262
+25 242 263
+71 234 264
+49 255 265
+164 259 266
+9 265 267
+13 228 268
+222 265 269
+231 251 270
+158 238 271
+116 245 272
+165 269 273
+229 244 274
+159 253 275
+63 210 276
+80 260 277
+118 186 278
+164 226 279
+5 224 280
+150 229 281
+129 254 282
+83 232 283
+248 280 284
+85 270 285
+230 267 286
+80 263 287
+20 191 288
+112 239 289
+119 253 290
+237 274 291
+92 290 292
+151 240 293
+111 288 294
+266 295 655
+184 207 296
+42 293 297
+237 270 298
+95 292 299
+285 298 300
+86 272 301
+239 290 302
+177 273 303
+277 289 304
+161 281 305
+61 236 306
+13 201 307
+171 192 308
+132 284 309
+140 266 310
+165 298 311
+179 305 312
+251 313 639
+121 246 314
+213 272 315
+99 249 316
+173 221 317
+169 233 318
+38 314 319
+179 308 320
+216 289 321
+93 319 322
+47 150 323
+169 271 324
+102 206 325
+40 275 326
+182 317 327
+78 266 328
+126 189 329
+248 307 330
+255 329 331
+129 300 332
+168 289 333
+186 240 334
+126 321 335
+157 334 336
+195 309 337
+119 329 338
+56 323 339
+123 271 340
+149 321 341
+252 315 342
+297 321 343
+266 310 344
+163 300 345
+199 315 346
+38 313 347
+268 348 641
+265 328 349
+330 332 350
+5 299 351
+204 218 352
+57 328 353
+60 225 354
+52 292 355
+315 344 356
+318 353 357
+100 208 358
+47 288 359
+104 228 360
+130 277 361
+275 351 362
+98 284 363
+257 292 364
+1 274 365
+234 295 366
+164 355 367
+90 264 368
+138 294 369
+317 365 370
+183 214 371
+276 323 372
+217 285 373
+281 324 374
+143 282 375
+181 348 376
+41 142 377
+52 241 378
+263 360 379
+156 368 380
+340 352 381
+230 296 382
+58 243 383
+221 242 384
+269 375 385
+117 252 386
+273 387 658
+114 174 388
+357 389 653
+57 372 390
+342 391 649
+243 375 392
+45 359 393
+131 361 394
+130 335 395
+22 273 396
+77 276 397
+309 353 398
+298 379 399
+180 393 400
+1 389 401
+358 402 649
+34 399 403
+260 336 404
+36 171 405
+291 342 406
+246 286 407
+254 279 408
+193 337 409
+185 370 410
+373 375 411
+360 396 412
+187 334 413
+203 371 414
+107 405 415
+309 319 416
+374 415 417
+153 395 418
+190 206 419
+173 242 420
+170 361 421
+409 411 422
+211 420 423
+213 406 424
+345 382 425
+144 337 426
+198 249 427
+271 393 428
+45 317 429
+255 315 430
+220 420 431
+115 246 432
+322 423 433
+222 250 434
+40 360 435
+25 318 436
+235 416 437
+43 404 438
+234 425 439
+140 413 440
+24 383 441
+325 398 442
+275 369 443
+210 386 444
+89 333 445
+252 379 446
+183 403 447
+18 259 448
+198 407 449
+183 420 450
+205 321 451
+173 216 452
+97 179 453
+287 360 454
+187 226 455
+313 327 456
+316 430 457
+2 282 458
+384 433 459
+291 414 460
+50 288 461
+111 358 462
+173 426 463
+287 452 464
+279 421 465
+124 402 466
+28 376 467
+41 369 468
+326 469 648
+78 396 470
+189 316 471
+212 432 472
+164 364 473
+60 323 474
+390 394 475
+370 419 476
+300 435 477
+60 442 478
+468 479 638
+193 475 480
+401 441 481
+423 482 648
+357 483 635
+217 468 484
+148 482 485
+139 428 486
+54 441 487
+414 473 488
+356 480 489
+407 432 490
+100 449 491
+151 359 492
+131 362 493
+384 489 494
+43 354 495
+290 410 496
+94 489 497
+33 495 498
+320 499
+313 376 500
+94 375 501
+366 368 502
+362 438 503
+224 350 504
+278 505 652
+11 417 506
+42 454 507
+378 501 508
+285 377 509
+196 348 510
+133 330 511
+227 387 512
+468 513 644
+474 514 643
+344 475 515
+448 494 516
+386 501 517
+199 376 518
+386 438 519
+72 200 520
+386 444 521
+244 406 522
+223 512 523
+383 479 524
+467 521 525
+177 464 526
+229 515 527
+55 404 528
+130 497 529
+302 488 530
+330 527 531
+313 513 532
+450 480 533
+208 319 534
+189 515 535
+1 392 536
+356 503 537
+410 529 538
+225 522 539
+203 227 540
+345 499 541
+432 485 542
+408 494 543
+310 456 544
+287 444 545
+35 425 546
+457 532 547
+256 408 548
+51 548 549
+459 532 550
+97 514 551
+44 487 552
+381 441 553
+226 514 554
+155 359 555
+297 434 556
+23 487 557
+549 558 641
+322 500 559
+465 555 560
+31 453 561
+422 505 562
+36 440 563
+369 440 564
+402 490 565
+97 542 566
+478 535 567
+13 549 568
+374 415 569
+137 268 570
+387 506 571
+56 487 572
+176 302 573
+497 560 574
+70 320 575
+212 572 576
+46 351 577
+4 545 578
+255 521 579
+206 530 580
+124 324 581
+201 509 582
+343 445 583
+147 457 584
+392 579 585
+351 579 586
+10 561 587
+369 566 588
+337 573 589
+134 546 590
+420 550 591
+9 576 592
+297 559 593
+4 405 594
+520 552 595
+3 346 596
+565 597 658
+416 452 598
+117 419 599
+311 532 600
+341 571 601
+384 531 602
+210 512 603
+17 551 604
+63 547 605
+217 400 606
+349 548 607
+233 581 608
+269 284 609
+209 477 610
+365 413 611
+84 538 612
+157 479 613
+343 614 646
+205 568 615
+428 534 616
+470 516 617
+268 591 618
+347 575 619
+570 601 620
+608 619 621
+128 621 622
+106 488 623
+24 544 624
+27 437 625
+95 585 626
+400 532 627
+505 605 628
+59 448 629
+451 613 630
+483 619 631
+162 439 632
+364 371 633
+146 484 634
+260 268 495
+136 278 413
+199 382 511
+218 247 535
+282 595 604
+118 562 630
+223 409 431
+235 341 367
+202 418 578
+74 564 582
+310 392 489
+357 438 496
+247 286 490
+80 221 303
+207 454 595
+310 401 501
+18 355 390
+448 590 649
+182 453 491
+363 570 581
+336 575 612
+139 557 567
+68 455 589
+68 506 556
+205 283 614
+442 492 582
+305 400 458
+135 299 388
+167 388 470
+222 274 372
+311 388 517
+373 400 508
+100 459 584
+371 422 469
+99 371 537
+223 343 587
+303 335 601
+12 287 605
+402 436 469
+40 447 495
+98 229 402
+592 624 658
+320 595 598
+238 484 594
+113 304 502
+57 389 390
+156 582 589
+385 520 620
+253 322 543
+322 391 483
+21 460 474
+212 276 283
+378 393 424
+138 378 424
+417 480 585
+245 427 492
+71 591 613
+349 437
+280 349 596
+196 523 539
+140 236 349
+112 317 620
+347 356 516
+239 508 557
+412 477 573
+278 356 434
+429 553 562
+433 455 461
+87 410 461
+148 462 564
+320 461 625
+294 502 581
+11 427 617
+108 215 221
+257 492 616
+197 262 304
+135 460 585
+220 529 596
+261 501 603
+281 404 475
+529 556 648
+179 607 631
+152 604 633
+17 436 629
+264 306 444
+285 393 563
+96 450 549
+339 397 503
+517 535 606
+8 338 418
+61 555 568
+401 473 483
+530 562 605
+289 398 399
+299 398 554
+496 528 622
+81 442 539
+126 595 608
+199 456 551
+39 249 403
+158 504 558
+341 492 511
+332 472 599
+232 504 568
+230 262 304
+433 513 579
+246 413 539
+170 468 609
+65 346 437
+227 549 624
+213 546 588
+531 539 550
+65 312 354
+51 332 365
+405 446 558
+462 545 633
+183 434 459
+339 591 615
+318 329 403
+225 269 339
+197 339 502
+24 416 493
+370 580 584
+3 609 625
+288 327 370
+94 554 592
+224 262 412
+87 226 324
+160 260 267
+282 301 324
+194 384 387
+416 555 610
+125 385 545
+253 385 584
+385 537 580
+155 415 441
+303 510 577
+251 580 600
+309 536 599
+555 600 627
+73 396 600
+129 241 506
+144 561 570
+332 570 576
+200 205 379
+431 541 618
+231 258 608
+70 401 467
+368 550 584
+175 611 633
+298 505 542
+334 543 547
+244 543 571
+188 436 514
+171 541 631
+193 514 615
+133 470 478
+247 498 503
+170 602 605
+381 517 602
+486 556 602
+92 311 547
+58 524 606
+390 524 625
+383 510 530
+84 524 541
+593 597 630
+214 399 498
+388 512 596
+133 345 399
+264 394 443
+188 228 258
+264 295 454
+106 382 617
+536 556 597
+175 262 295
+141 368 472
+86 215 258
+259 486 598
+34 319 469
+151 518 632
+191 312 341
+195 398 488
+362 523 554
+52 352 467
+84 184 352
+63 520 540
+429 542 604
+144 559 582
+429 531 647
+252 429 559
+111 466 560
+245 466 518
+245 481 589
+301 333 613
+67 565 566
+422 460 502
+119 362 372
+110 478 599
+316 619 645
+306 373 414
+95 423 458
+305 430 477
+449 456 628
+178 430 526
+108 611 615
+203 417 426
+328 425 631
+598 599 651
+248 590 607
+62 619 628
+165 528 541
+585 597 629
+188 240 592
+43 476 633
+497 558 630
+176 338 485
+251 383 622
+464 473 485
+127 576 622
+500 588 622
+364 573 632
+123 407 500
+207 428 500
+283 577 589
+428 552 594
+275 534 632
+348 531 636
+331 576 624
+308 491 498
+64 553 593
+445 586 632
+122 452 629
+146 513 617
+68 434 444
+259 277 302
+231 489 519
+14 235 479
+129 354 406
+72 272 299
+72 301 344
+292 358 614
+453 473 657
+105 215 333
+237 312 377
+59 365 380
+154 207 290
+76 439 627
+70 198 232
+494 552 564
+326 587 631
+154 296 509
+190 372 588
+366 459 464
+190 327 403
+316 525 563
+127 593 623
+426 496 525
+391 519 525
+330 421 525
+456 558 563
+148 350 391
+127 550 603
+296 366 620
+346 559 603
+346 486 603
+293 600 609
+533 574 578
+98 423 430
+204 303 579
+440 544 630
+168 569 594
+294 308 637
+16 270 450
+424 508 611
+100 261 294
+218 458 569
+367 408 583
+353 577 627
+342 445 479
+342 407 497
+481 553 569
+464 526 612
+142 522 523
+69 565 612
+121 612 628
+481 569 616
+448 560 615
+510 583 587
+145 301 560
+516 547 616
+167 397 411
+59 377 439
+59 278 601
+202 381 586
+83 567 578
+409 527 574
+457 564 618
+451 484 548
+110 451 571
+90 451 581
+431 504 527
+215 312 471
+19 471 528
+115 286 490
+188 471 537
+281 527 552
+186 454 507
+340 496 507
+271 507 601
+41 493 507
+355 620 621
+2 148 151
+2 293 406
+160 480 583
+217 355 382
+85 566 593
+128 517 577
+79 263 412
+125 304 446
+209 438 608
+21 233 493
+336 462 578
+433 610 634
+520 607 634
+300 367 634
+476 598 624
+351 572 592
+96 536 626
+41 503 572
+149 572 606
+241 440 509
+276 455 604
+209 445 476
+171 338 367
+209 389 452
+426 522 597
+200 391 432
+487 540 626
+336 488 540
+106 325 540
+15 280 380
+109 574 626
+387 544 567
+212 462 587
+472 545 614
+119 293 314
+153 419 446
+47 353 475
+295 562 586
+334 557 561
+314 491 580
+105 327 443
+250 397 443
+443 453 485
+152 418 542
+213 405 548
+141 291 463
+291 380 463
+323 463 469
+195 463 513
+314 343 571
+101 335 477
+150 389 588
+244 567 573
+150 178 193
+61 509 535
+329 506 546
+211 279 394
+96 211 267
+134 257 308
+435 486 654
+447 538 543
+328 447 470
+348 516 536
+427 447 554
+270 331 435
+194 493 533
+354 533 616
+192 590 626
+331 396 533
+422 435 606
+247 326 363
+395 521 618
+88 476 546
+211 296 381
+66 460 474
+44 511 518
+44 404 415
+311 340 352
+44 377 574
+238 431 455
+202 594 610
+143 458 544
+265 419 529
+394 471 515
+130 363 623
+29 551 590
+53 424 494
+240 457 526
+411 483 523
+23 609 623
+467 491 530
+23 378 442
+112 198 214
+241 337 358
+305 335 347
+345 484 505
+277 553 557
+418 522 634
+380 538 618
+437 623 629
+7 318 515
+361 490 657
+7 273 325
+176 261 280
+302 361 551
+208 408 414
+359 481 591
+284 338 537
+333 421 610
+499 561 627
+297 340 374
+331 392 417
+219 325 350
+116 350 474
+113 499 512
+39 274 482
+373 482 495
+169 395 566
+395 482 596
+472 499 510
+306 575 621
+56 279 376
+90 436 449
+347 617 625
+254 286 607
+159 518 528
+66 524 538
+159 563 621
+283 410 602
+254 498 534
+25 409 439
+379 478 511
+357 586 628
+258 306 344
+203 461 466
+446 583 613
+99 256 397
+256 427 465
+87 256 261
+225 326 647
+91 519 614
+85 449 504
+71 272 421
+228 230 267
+210 412 519
+6 307 363
+508 575 611
+307 526 534
+307 364 465
+263 411 521
+243 374 466
+425 465 565
+168 450 568
+233 366 656
+1 98 365 401 536
+2 113 458 947 948
+3 99 144 596 758
+4 6 38 578 594
+5 13 23 280 351
+6 15 18 199 1092
+7 24 45 1047 1049
+8 53 56 81 724
+9 48 69 267 592
+10 11 12 74 587
+11 22 70 506 707
+12 27 136 217 672
+13 20 268 307 568
+14 21 80 135 872
+15 125 151 155 976
+16 42 75 127 908
+17 18 19 604 718
+18 31 44 448 651
+19 26 30 52 938
+20 41 162 219 288
+21 22 23 685 956
+22 47 114 226 396
+23 123 557 1036 1038
+24 103 441 624 756
+25 46 263 436 1077
+26 50 93 148 167
+27 30 149 186 625
+28 29 39 62 467
+29 57 67 152 1032
+30 31 33 104 215
+31 32 33 193 561
+32 34 42 71 107
+33 36 138 211 498
+34 35 36 403 814
+35 51 112 128 546
+36 37 38 405 563
+37 40 89 183 203
+38 43 73 319 347
+39 41 121 734 1062
+40 169 326 435 674
+41 377 468 945 964
+42 43 157 297 507
+43 58 438 495 849
+44 552 1022 1023 1025
+45 46 82 393 429
+46 47 87 153 577
+47 48 323 359 983
+48 49 50 154 161
+49 54 131 210 265
+50 51 84 222 461
+51 52 180 549 748
+52 150 355 378 819
+53 54 56 188 1033
+54 55 85 132 487
+55 63 116 124 528
+56 237 339 572 1068
+57 181 353 390 680
+58 60 68 383 797
+59 629 880 927 928
+60 61 354 474 478
+61 120 306 725 1001
+62 63 64 122 845
+63 65 276 605 821
+64 66 170 241 865
+65 67 262 743 747
+66 69 246 1021 1073
+67 68 79 115 830
+68 111 657 658 869
+69 91 159 166 919
+70 178 575 782 883
+71 146 264 691 1089
+72 73 520 874 875
+73 74 100 208 775
+74 75 80 86 644
+75 76 78 190 243
+76 77 79 239 882
+77 78 137 254 397
+78 87 200 328 470
+79 81 88 96 953
+80 82 277 287 648
+81 83 89 141 731
+82 84 164 214 255
+83 85 90 283 930
+84 86 612 800 820
+85 191 285 951 1088
+86 139 248 301 812
+87 108 703 762 1085
+88 91 92 101 1019
+89 93 94 102 445
+90 249 368 935 1069
+91 172 202 253 1087
+92 95 256 292 796
+93 96 98 147 322
+94 196 497 501 760
+95 97 299 626 836
+96 100 721 963 1004
+97 101 453 551 566
+98 99 363 675 903
+99 182 316 669 1083
+100 358 491 667 910
+101 103 207 245 997
+102 105 189 220 325
+103 104 106 110 201
+104 112 113 116 360
+105 109 133 878 987
+106 107 623 808 975
+107 108 126 130 415
+108 111 162 708 840
+109 115 117 168 977
+110 125 187 833 934
+111 122 294 462 826
+112 134 289 696 1039
+113 114 143 679 1061
+114 119 149 152 388
+115 124 163 432 939
+116 120 129 272 1060
+117 118 123 386 599
+118 119 234 278 640
+119 290 338 832 981
+120 121 128 158 205
+121 139 140 314 920
+122 132 137 145 867
+123 206 230 340 857
+124 127 134 466 581
+125 131 146 767 954
+126 180 329 335 732
+127 156 854 891 897
+128 129 133 622 952
+129 282 332 776 873
+130 361 395 529 1031
+131 185 238 394 493
+132 135 142 179 309
+133 198 511 791 804
+134 136 235 590 1005
+135 194 212 662 711
+136 138 140 141 636
+137 144 147 165 570
+138 148 182 369 688
+139 142 197 486 656
+140 161 310 440 695
+141 145 237 811 992
+142 156 174 377 918
+143 173 188 375 1028
+144 151 426 777 823
+145 150 153 190 924
+146 159 168 634 868
+147 250 251 252 584
+148 485 704 896 947
+149 155 164 341 965
+150 281 323 998 1000
+151 293 492 815 947
+152 175 232 717 990
+153 154 172 418 982
+154 158 204 881 886
+155 177 179 555 770
+156 157 163 380 681
+157 195 207 336 613
+158 170 196 271 735
+159 160 275 1072 1074
+160 183 189 763 949
+161 191 211 212 305
+162 176 231 259 632
+163 166 194 204 345
+164 266 279 367 473
+165 169 273 311 846
+166 167 184 222 233
+167 223 257 663 926
+168 171 333 906 1099
+169 181 318 324 1064
+170 209 421 742 793
+171 308 405 789 969
+172 175 186 205 208
+173 317 420 452 463
+174 176 178 200 388
+175 177 209 784 810
+176 185 573 851 1050
+177 218 224 303 526
+178 202 230 839 1000
+179 312 320 453 716
+180 206 214 221 400
+181 192 213 225 376
+182 184 197 327 653
+183 371 447 450 751
+184 219 248 296 820
+185 187 193 258 410
+186 228 278 334 942
+187 192 227 413 455
+188 788 806 848 940
+189 236 329 471 535
+190 215 419 887 889
+191 195 216 288 816
+192 203 249 308 1014
+193 409 480 790 1000
+194 231 234 765 1012
+195 198 337 817 995
+196 199 247 510 694
+197 201 240 710 755
+198 427 449 883 1039
+199 346 518 637 733
+200 242 520 779 972
+201 210 226 307 582
+202 254 643 929 1027
+203 414 540 841 1081
+204 220 250 352 904
+205 451 615 659 779
+206 216 325 419 580
+207 296 649 858 881
+208 236 358 534 1052
+209 610 955 968 970
+210 276 444 603 1091
+211 423 1003 1004 1020
+212 472 576 686 979
+213 315 424 745 991
+214 218 371 802 1039
+215 708 812 878 937
+216 217 225 321 452
+217 373 484 606 950
+218 232 352 638 911
+219 223 252 257 1059
+220 251 260 431 712
+221 317 384 648 708
+222 235 269 434 664
+223 229 523 641 670
+224 241 280 504 761
+225 354 539 754 1086
+226 279 455 554 762
+227 255 512 540 744
+228 268 360 806 1090
+229 274 281 527 675
+230 286 382 739 1090
+231 242 270 781 871
+232 259 283 738 883
+233 318 608 956 1100
+234 243 264 366 439
+235 238 437 642 872
+236 239 260 306 695
+237 246 291 298 879
+238 261 271 678 1026
+239 244 289 302 698
+240 293 334 848 1034
+241 378 776 966 1040
+242 245 263 384 420
+243 247 383 392 1097
+244 274 522 787 999
+245 272 690 827 828
+246 314 407 432 741
+247 638 647 792 1017
+248 262 284 330 844
+249 253 316 427 734
+250 256 261 434 988
+251 270 313 772 852
+252 342 386 446 825
+253 275 290 683 768
+254 282 408 1071 1076
+255 265 331 430 579
+256 548 1083 1084 1085
+257 258 364 709 1005
+258 781 806 812 1080
+259 266 448 813 870
+260 277 404 635 763
+261 713 910 1050 1085
+262 710 739 761 810
+263 287 379 953 1096
+264 368 719 805 807
+265 267 269 349 1029
+266 295 310 328 344
+267 286 763 1004 1090
+268 348 570 618 635
+269 273 385 609 754
+270 285 298 908 1011
+271 324 340 428 944
+272 301 315 874 1089
+273 303 387 396 1049
+274 291 365 664 1062
+275 326 362 443 861
+276 372 397 686 967
+277 304 361 870 1043
+278 505 636 700 928
+279 408 465 1003 1068
+280 284 693 976 1050
+281 305 374 714 941
+282 375 458 639 764
+283 659 686 859 1075
+284 309 363 609 1054
+285 300 373 509 720
+286 407 647 939 1071
+287 454 464 545 672
+288 294 359 461 759
+289 304 321 333 728
+290 292 302 496 881
+291 406 460 992 993
+292 299 355 364 876
+293 297 901 948 981
+294 369 706 907 910
+295 366 807 810 984
+296 382 886 898 1020
+297 343 556 593 1057
+298 300 311 399 785
+299 351 662 729 874
+300 332 345 477 960
+301 764 829 875 924
+302 530 573 870 1051
+303 648 671 771 904
+304 679 710 739 954
+305 312 661 837 1041
+306 719 835 1067 1080
+307 330 1092 1094 1095
+308 320 864 907 1005
+309 337 398 416 773
+310 344 544 645 650
+311 600 665 796 1024
+312 747 816 879 937
+313 347 456 500 532
+314 319 981 986 996
+315 342 346 356 430
+316 457 471 834 890
+317 327 370 429 696
+318 357 436 753 1047
+319 322 416 534 814
+320 499 575 677 705
+321 335 341 343 451
+322 433 559 683 684
+323 339 372 474 994
+324 374 581 762 764
+325 442 975 1049 1059
+326 469 885 1017 1086
+327 456 759 889 987
+328 349 353 842 1008
+329 331 338 753 1002
+330 350 511 531 894
+331 863 1011 1015 1058
+332 350 737 748 778
+333 445 829 878 1055
+334 336 413 786 985
+335 395 671 997 1041
+336 404 655 957 974
+337 409 426 589 1040
+338 724 851 969 1054
+339 722 752 754 755
+340 381 943 1024 1057
+341 601 642 736 816
+342 391 406 914 915
+343 583 614 670 996
+344 356 515 875 1080
+345 425 541 804 1042
+346 596 743 899 900
+347 619 697 1041 1070
+348 376 510 862 1009
+349 607 692 693 695
+350 504 896 1059 1060
+351 362 577 586 962
+352 381 819 820 1024
+353 357 398 913 983
+354 495 747 873 1013
+355 367 651 946 950
+356 489 537 697 700
+357 389 483 646 1079
+358 402 462 876 1040
+359 393 492 555 1053
+360 379 412 435 454
+361 394 421 1048 1051
+362 493 503 818 832
+363 654 1017 1031 1092
+364 473 633 856 1095
+365 370 611 748 880
+366 502 888 898 1100
+367 642 912 960 969
+368 380 502 783 811
+369 443 468 564 588
+370 410 476 757 759
+371 414 633 668 669
+372 390 664 832 887
+373 411 666 835 1063
+374 417 569 1057 1097
+375 385 392 411 501
+376 467 500 518 1068
+377 509 879 927 1025
+378 508 687 688 1038
+379 399 446 779 1078
+380 880 976 993 1045
+381 553 794 929 1020
+382 425 637 808 950
+383 441 524 799 852
+384 459 494 602 765
+385 682 767 768 769
+386 444 517 519 521
+387 512 571 765 978
+388 662 663 665 803
+389 401 680 970 998
+390 475 651 680 798
+391 684 893 896 972
+392 536 585 645 1058
+393 400 428 687 720
+394 475 805 1003 1030
+395 418 1018 1064 1065
+396 412 470 775 1015
+397 722 926 988 1083
+398 442 728 729 817
+399 403 728 802 804
+400 606 627 661 666
+401 481 650 726 782
+402 466 565 673 675
+403 447 734 753 889
+404 438 528 714 1023
+405 415 594 749 991
+406 424 522 873 948
+407 449 490 857 915
+408 543 548 912 1052
+409 422 641 931 1077
+410 496 538 703 1075
+411 422 926 1035 1096
+412 699 761 953 1091
+413 440 611 636 741
+414 460 488 835 1052
+415 417 569 770 1023
+416 437 598 756 766
+417 506 689 841 1058
+418 643 724 990 1044
+419 476 599 982 1029
+420 423 431 450 591
+421 465 894 1055 1089
+422 562 668 831 1016
+423 433 482 836 903
+424 687 688 909 1033
+425 439 546 842 1098
+426 463 841 892 971
+427 690 707 1010 1084
+428 486 616 858 860
+429 701 822 824 825
+430 457 837 839 903
+431 641 780 936 1026
+432 472 490 542 972
+433 459 702 740 958
+434 556 700 751 869
+435 477 1006 1011 1016
+436 673 718 788 1069
+437 625 692 743 1046
+438 503 519 646 955
+439 632 882 927 1077
+440 563 564 905 966
+441 481 487 553 770
+442 478 660 731 1038
+443 805 987 988 989
+444 521 545 719 869
+445 583 866 914 968
+446 749 954 982 1082
+447 674 1007 1008 1010
+448 516 629 652 922
+449 491 838 1069 1088
+450 533 721 908 1099
+451 630 933 934 935
+452 464 598 867 970
+453 561 653 877 989
+454 507 649 807 942
+455 657 702 967 1026
+456 544 733 838 895
+457 547 584 932 1034
+458 661 836 911 1028
+459 550 667 751 888
+460 685 711 831 1021
+461 702 703 705 1081
+462 704 750 957 979
+463 992 993 994 995
+464 526 853 888 917
+465 560 1084 1095 1098
+466 826 827 1081 1097
+467 525 782 819 1037
+468 479 484 513 742
+469 668 673 814 994
+470 617 663 791 1008
+471 937 938 940 1030
+472 737 811 980 1066
+473 488 726 853 877
+474 514 685 1021 1060
+475 480 515 714 983
+476 849 961 968 1019
+477 610 699 837 997
+478 567 791 833 1078
+479 524 613 872 914
+480 489 533 689 949
+481 828 916 921 1053
+482 485 1062 1063 1065
+483 631 684 726 1035
+484 634 678 933 1042
+485 542 851 853 989
+486 795 813 900 1006
+487 552 557 572 973
+488 530 623 817 974
+489 494 497 645 871
+490 565 647 939 1048
+491 653 864 986 1037
+492 660 690 709 736
+493 756 945 956 1012
+494 516 543 884 1033
+495 498 635 674 1063
+496 646 730 892 943
+497 529 574 850 915
+498 792 802 864 1076
+499 541 1056 1061 1066
+500 559 855 857 858
+501 508 517 650 713
+502 679 706 755 831
+503 537 722 792 964
+504 735 738 936 1088
+505 562 628 785 1042
+506 571 658 776 1002
+507 942 943 944 945
+508 666 698 909 1093
+509 582 886 966 1001
+510 771 799 923 1066
+511 637 736 1022 1078
+512 523 603 803 1061
+513 532 740 868 995
+514 551 554 788 790
+515 527 535 1030 1047
+516 617 697 925 1009
+517 665 723 794 952
+518 815 827 1022 1072
+519 871 893 1087 1091
+520 595 682 821 959
+521 525 579 1018 1096
+522 539 918 971 1044
+523 694 818 918 1035
+524 797 798 800 1073
+525 890 892 893 894
+526 839 917 1034 1094
+527 531 931 936 941
+528 730 846 938 1072
+529 538 712 715 1029
+530 580 727 799 1037
+531 602 746 824 862
+532 547 550 600 627
+533 902 1012 1013 1015
+534 616 861 1076 1094
+535 567 638 723 1001
+536 773 809 963 1009
+537 669 769 940 1054
+538 612 1007 1045 1073
+539 694 731 741 746
+540 821 973 974 975
+541 780 789 800 846
+542 566 785 822 990
+543 683 786 787 1007
+544 624 905 978 1028
+545 578 750 767 980
+546 590 745 1002 1019
+547 605 786 796 925
+548 549 607 933 991
+549 558 568 721 744
+550 591 746 783 897
+551 604 733 1032 1051
+552 595 860 884 941
+553 701 865 916 1043
+554 729 760 818 1010
+555 560 725 766 774
+556 658 715 795 809
+557 656 698 985 1043
+558 735 749 850 895
+559 593 823 825 899
+560 574 826 922 924
+561 587 777 985 1056
+562 640 701 727 984
+563 720 890 895 1074
+564 644 704 884 932
+565 597 830 919 1098
+566 588 830 951 1064
+567 656 930 978 999
+568 615 725 738 1099
+569 906 911 916 921
+570 620 654 777 778
+571 601 787 934 996
+572 576 962 964 965
+573 589 699 856 999
+574 902 931 977 1025
+575 619 655 1067 1093
+576 592 778 854 863
+577 771 859 913 952
+578 643 902 930 957
+579 585 586 740 904
+580 757 769 772 986
+581 608 654 706 935
+582 644 660 681 823
+583 912 923 949 1082
+584 667 757 768 783
+585 626 689 711 847
+586 866 929 984 1079
+587 670 885 923 979
+588 745 855 887 998
+589 657 681 828 859
+590 652 844 1014 1032
+591 618 691 752 1053
+592 676 760 848 962
+593 801 865 891 951
+594 678 860 906 1027
+595 639 649 677 732
+596 693 712 803 1065
+597 801 809 847 971
+598 677 813 843 961
+599 737 773 833 843
+600 772 774 775 901
+601 620 671 928 944
+602 793 794 795 1075
+603 713 897 899 900
+604 639 717 822 967
+605 628 672 727 793
+606 723 797 965 1016
+607 716 844 959 1071
+608 621 732 781 955
+609 742 758 901 1036
+610 766 958 1027 1055
+611 784 840 909 1093
+612 655 917 919 920
+613 630 691 829 1082
+614 659 876 980 1087
+615 752 790 840 922
+616 709 921 925 1013
+617 707 808 868 1070
+618 780 932 1018 1045
+619 621 631 834 845
+620 682 696 898 946
+621 622 946 1067 1074
+622 730 852 854 855
+623 891 1031 1036 1046
+624 676 744 863 961
+625 705 758 798 1070
+626 963 973 977 1014
+627 774 882 913 1056
+628 838 845 920 1079
+629 718 847 867 1046
+630 640 801 850 905
+631 716 789 842 885
+632 815 856 861 866
+633 717 750 784 849
+634 958 959 960 1044
+1 2 4 16 483
+2 7 29 102 862
+3 14 19 72 907
+4 10 60 233 479
+5 9 49 110 313
+6 117 118 126 240
+7 8 11 348 558
+8 25 35 130 227
+9 40 59 171 514
+10 39 61 173 513
+13 14 17 37 834
+15 105 106 224 614
+16 76 228 824 1086
+17 32 469 482 715
+20 165 391 402 652
+21 24 28 88 109
+25 55 221 244 843
+26 27 28 77 505
+44 45 65 213 389
+53 97 143 174 1006
+57 58 59 66 295
+62 64 94 95 1100
+70 71 90 877 1048
+72 160 387 597 676
diff --git a/gr-fec/python/fec/LDPC/n_1300_k_0522_gap_30.alist b/gr-fec/python/fec/LDPC/n_1300_k_0522_gap_30.alist
new file mode 100644
index 0000000000..1fad77eada
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_1300_k_0522_gap_30.alist
@@ -0,0 +1,2082 @@
+1300 778
+3 5
+2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+1 759
+2 759
+1 3 761
+1 4 763
+3 5 753
+6 753
+6 7 773
+8 763 778
+8 9 763
+10 765
+11 768 773
+12 765 766
+12 13 768
+14 751 766
+15 751
+2 16 764
+6 17 764
+17 18 761
+7 19 764
+2 20 769
+19 21 769
+13 20 22
+18 21 23
+4 24 775
+4 24 25
+24 26 774
+8 26 27
+28 750 769
+13 28 29
+28 29 30
+19 29 31
+30 32 772
+33 755 761
+22 34 755
+3 33 35
+11 36 776
+10 36 37
+36 38 757
+38 39 768
+39 40
+41 749 775
+29 41 42
+43 758 775
+14 44 770
+21 45 770
+46 758 771
+47 771 778
+33 48 756
+49 751 754
+50 754 765
+29 51 752
+23 51 52
+22 52 53
+53 54
+32 55 760
+56 766 777
+48 56 57
+41 58 777
+58 59 767
+60 766 767
+3 60 61
+12 61 62
+31 62 63
+16 61 64
+34 63 65
+55 63 66
+55 66 67
+68 762 764
+69 762 766
+68 70 756
+70 71 761
+30 70 72
+72 73 776
+72 74 769
+14 73 75
+69 76 758
+31 73 77
+72 78 763
+47 76 79
+27 79 80
+80 81 775
+46 81 82
+65 80 83
+16 83 84
+84 85 756
+32 85 86
+10 86 87
+81 88 753
+25 84 89
+65 84 90
+44 88 91
+32 78 92
+40 90 93
+65 90 94
+92 95 759
+75 87 96
+28 89 97
+96 98 760
+56 92 99
+83 98 100
+98 101 769
+88 99 102
+44 101 103
+10 102 104
+88 103 105
+17 101 106
+71 105 107
+5 106 108
+11 105 109
+15 108 110
+87 102 111
+109 111 112
+45 109 113
+60 107 114
+109 115 751
+53 114 116
+102 111 117
+115 118 762
+113 119 776
+112 120 754
+47 118 121
+22 117 122
+51 122 123
+117 124 776
+66 123 125
+111 126 774
+120 126 127
+42 124 128
+24 121 129
+42 123 130
+97 128 131
+107 124 132
+94 114 133
+127 130 134
+122 135 759
+35 132 136
+54 133 137
+31 136 138
+88 138 139
+59 134 140
+15 137 141
+16 139 142
+100 140 143
+142 144 753
+131 144 145
+139 143 146
+142 147 752
+3 146 148
+13 144 149
+135 145 150
+109 149 151
+106 151 152
+98 148 153
+71 151 154
+117 148 155
+108 152 156
+100 144 157
+98 156 158
+54 157 159
+56 150 160
+159 161 757
+19 151 162
+158 163 770
+103 161 164
+136 162 165
+58 161 166
+35 161 167
+134 155 168
+69 166 169
+125 169 170
+94 150 171
+67 160 172
+116 167 173
+34 158 174
+163 173 175
+132 157 176
+76 158 177
+143 169 178
+173 176 179
+156 166 180
+33 164 181
+61 174 182
+140 175 183
+45 183 184
+63 165 185
+23 178 186
+37 178 187
+40 172 188
+104 184 189
+81 185 190
+177 189 191
+139 182 192
+78 185 193
+28 179 194
+182 192 195
+113 158 196
+41 164 197
+64 169 198
+71 196 199
+93 197 200
+160 180 201
+57 190 202
+58 202 203
+112 189 204
+27 200 205
+182 205 206
+123 194 207
+167 191 208
+203 209 771
+59 183 210
+162 211 772
+92 198 212
+124 172 213
+58 186 214
+125 206 215
+215 216 774
+129 201 217
+206 212 218
+103 192 219
+64 186 220
+91 198 221
+44 212 222
+53 199 223
+23 209 224
+163 193 225
+219 226 754
+131 181 227
+211 228 758
+21 188 229
+91 187 230
+127 216 231
+173 223 232
+42 223 233
+217 234 768
+52 222 235
+50 218 236
+206 231 237
+155 233 238
+120 233 239
+30 227 240
+153 198 241
+68 234 242
+129 151 243
+214 244 778
+159 211 245
+49 210 246
+187 240 247
+243 248 760
+111 248 249
+241 250 750
+153 233 251
+121 221 252
+221 253 775
+232 254 757
+205 206 255
+238 246 256
+118 240 257
+202 250 258
+226 252 259
+90 224 260
+237 247 261
+181 218 262
+66 223 263
+204 254 264
+51 253 265
+74 243 266
+7 241 267
+102 216 268
+80 265 269
+172 250 270
+257 258 271
+37 261 272
+73 252 273
+234 259 274
+248 275 764
+86 224 276
+7 203 277
+49 264 278
+35 272 279
+62 190 280
+176 281 778
+60 257 282
+73 275 283
+195 208 284
+186 256 285
+267 286 772
+240 276 287
+163 245 288
+85 275 289
+196 223 290
+205 278 291
+119 287 292
+193 263 293
+291 293 294
+13 240 295
+34 276 296
+128 266 297
+42 274 298
+75 207 299
+142 253 300
+162 262 301
+175 281 302
+128 208 303
+166 236 304
+175 282 305
+227 271 306
+50 295 307
+280 284 308
+215 293 309
+101 277 310
+224 306 311
+254 312 771
+225 276 313
+55 168 314
+124 307 315
+5 312 316
+39 304 317
+217 302 318
+174 241 319
+173 292 320
+120 312 321
+265 322 762
+150 271 323
+169 232 324
+180 316 325
+179 289 326
+203 289 327
+89 324 328
+91 319 329
+171 304 330
+242 281 331
+82 298 332
+137 314 333
+308 325 334
+254 293 335
+133 308 336
+85 313 337
+279 318 338
+20 259 339
+291 340
+244 335 341
+327 342 771
+180 332 343
+142 330 344
+94 270 345
+85 328 346
+251 342 347
+185 294 348
+67 283 349
+280 326 350
+213 308 351
+197 259 352
+70 331 353
+11 269 354
+332 346 355
+258 260 356
+68 253 357
+196 338 358
+77 244 359
+210 317 360
+321 348 361
+113 333 362
+255 290 363
+218 356 364
+288 363 365
+188 349 366
+284 296 367
+282 324 368
+51 349 369
+231 370 752
+288 321 371
+221 372 765
+40 260 373
+244 341 374
+219 335 375
+128 297 376
+257 328 377
+15 367 378
+239 370 379
+149 196 380
+23 336 381
+144 250 382
+108 255 383
+211 371 384
+321 385 749
+252 359 386
+99 343 387
+290 372 388
+47 359 389
+231 343 390
+37 341 391
+81 282 392
+360 393 773
+112 387 394
+366 368 395
+2 336 396
+187 389 397
+204 207 398
+174 390 399
+165 314 400
+100 336 401
+266 388 402
+179 366 403
+157 322 404
+226 251 405
+289 294 406
+348 394 407
+274 341 408
+193 328 409
+372 410 765
+137 285 411
+263 401 412
+353 378 413
+18 277 414
+43 286 415
+379 416 760
+229 332 417
+198 390 418
+41 389 419
+11 316 420
+270 420 421
+220 390 422
+104 339 423
+304 306 424
+156 388 425
+160 264 426
+165 239 427
+273 378 428
+280 360 429
+230 300 430
+214 328 431
+288 339 432
+34 381 433
+270 305 434
+121 400 435
+325 376 436
+379 437 770
+106 398 438
+126 437 439
+95 278 440
+194 380 441
+284 338 442
+140 329 443
+183 362 444
+150 399 445
+400 443 446
+155 344 447
+302 435 448
+140 425 449
+141 402 450
+326 391 451
+191 446 452
+53 312 453
+420 441 454
+213 452 455
+220 445 456
+340 423 457
+318 431 458
+18 369 459
+228 437 460
+188 387 461
+95 333 462
+231 363 463
+83 269 464
+229 361 465
+358 441 466
+18 455 467
+200 408 468
+416 457 469
+456 463 470
+147 470 471
+309 380 472
+122 433 473
+76 381 474
+355 475 777
+221 279 476
+350 451 477
+290 307 478
+220 246 479
+203 384 480
+305 428 481
+305 418 482
+407 421 483
+271 384 484
+133 441 485
+398 450 486
+412 487 749
+27 313 488
+385 425 489
+110 427 490
+347 383 491
+475 492 755
+176 408 493
+434 492 494
+164 463 495
+79 247 496
+22 415 497
+20 413 498
+232 449 499
+258 342 500
+43 494 501
+439 496 502
+25 482 503
+170 385 504
+277 386 505
+366 506 754
+309 474 507
+184 330 508
+179 481 509
+235 349 510
+137 499 511
+208 462 512
+107 414 513
+335 449 514
+304 379 515
+212 299 516
+136 467 517
+462 475 518
+364 378 519
+6 457 520
+115 350 521
+164 375 522
+265 392 523
+136 500 524
+488 525 757
+285 327 526
+286 478 527
+289 447 528
+153 520 529
+344 473 530
+287 485 531
+148 430 532
+481 533 772
+188 404 534
+95 323 535
+131 527 536
+66 312 537
+90 385 538
+168 404 539
+211 460 540
+52 458 541
+374 542 752
+306 525 543
+149 516 544
+204 473 545
+175 433 546
+281 544 547
+292 508 548
+93 525 549
+265 447 550
+177 355 551
+228 534 552
+35 532 553
+493 520 554
+528 555 756
+166 508 556
+302 501 557
+330 482 558
+310 557 559
+63 529 560
+154 455 561
+14 556 562
+236 527 563
+432 542 564
+192 363 565
+99 560 566
+119 556 567
+236 561 568
+414 524 569
+354 539 570
+421 495 571
+375 461 572
+123 513 573
+26 563 574
+364 431 575
+465 576 751
+186 531 577
+324 488 578
+69 523 579
+439 458 580
+511 581 755
+235 538 582
+381 562 583
+135 556 584
+348 585 768
+141 302 586
+580 582 587
+9 516 588
+356 476 589
+228 531 590
+245 407 591
+586 592 750
+421 467 593
+267 533 594
+394 506 595
+47 376 596
+547 592 597
+416 430 598
+246 472 599
+125 352 600
+352 521 601
+271 520 602
+107 568 603
+320 402 604
+470 605 767
+305 318 606
+25 522 607
+75 503 608
+445 594 609
+52 451 610
+274 444 611
+181 479 612
+395 550 613
+242 575 614
+104 406 615
+222 527 616
+62 536 617
+116 600 618
+89 491 619
+230 340 620
+143 285 621
+25 575 622
+573 612 623
+261 541 624
+296 350 625
+334 552 626
+138 465 627
+1 622 628
+245 562 629
+115 485 630
+93 370 631
+356 470 632
+313 355 633
+37 566 634
+334 530 635
+435 540 636
+230 490 637
+202 362 638
+459 507 639
+496 632 640
+385 574 641
+362 488 642
+419 486 643
+295 627 644
+67 419 645
+78 548 646
+1 465 647
+329 563 648
+484 533 649
+249 629 650
+399 427 651
+493 564 652
+319 596 653
+422 467 654
+491 655
+483 618 656
+547 573 657
+341 544 658
+477 640 659
+558 593 660
+38 529 661
+272 596 662
+487 624 663
+376 606 664
+398 654 665
+267 507 666
+543 587 667
+565 650 668
+216 658 669
+392 424 670
+337 580 671
+126 572 672
+134 592 673
+347 542 674
+190 589 675
+10 269 676
+364 616 677
+36 489 678
+239 414 679
+12 677 680
+626 681 749
+270 452 682
+84 316 683
+238 664 684
+187 418 685
+685 686 749
+318 460 687
+570 684 688
+603 689 773
+605 674 690
+119 604 691
+380 581 692
+77 365 693
+390 399 694
+143 541 695
+261 625 696
+382 539 697
+637 692 698
+273 536 699
+295 680 700
+403 575 701
+360 515 702
+345 486 703
+569 609 704
+546 557 705
+676 704 706
+171 358 707
+454 617 708
+454 535 709
+307 412 710
+376 698 711
+147 479 712
+86 641 713
+286 695 714
+417 624 715
+440 443 716
+478 502 717
+300 679 718
+138 623 719
+4 394 720
+413 708 721
+377 688 722
+152 714 723
+202 723 724
+651 654 725
+280 647 726
+361 709 727
+528 723 728
+456 578 729
+438 657 730
+229 664 731
+209 603 732
+48 672 733
+141 386 734
+335 727 735
+60 612 736
+361 497 737
+170 629 738
+477 512 739
+57 380 740
+292 509 741
+76 588 742
+319 705 743
+392 653 744
+230 670 745
+197 724 746
+483 633 747
+283 698 748
+185 482 622
+86 411 459
+256 570 731
+210 273 446
+389 415 426
+463 499 636
+468 516 656
+609 646 734
+418 704 709
+246 554 736
+415 652 736
+104 250 495
+362 505 521
+331 419 731
+99 213 288
+383 409 496
+545 610 644
+351 399 696
+575 715 719
+7 546 700
+199 508 614
+325 619 720
+601 668 669
+87 638 671
+134 454 591
+256 317 509
+17 291 401
+631 634 740
+298 560 689
+162 700 746
+348 367 462
+154 502 591
+153 292 661
+664 732 748
+643 714 773
+424 665 684
+232 382 679
+195 479 597
+74 314 396
+106 552 660
+548 685 734
+505 559 627
+138 522 738
+110 262 484
+78 524 576
+110 584 678
+274 300 426
+141 347 405
+26 688 700
+301 307 370
+368 443 558
+354 468 635
+125 680 691
+395 423 739
+27 411 530
+9 387 681
+215 518 639
+48 549 611
+406 422 564
+501 523 652
+31 526 697
+222 406 701
+467 543 563
+295 476 586
+242 475 581
+532 708 712
+83 551 698
+254 418 503
+174 395 576
+105 441 743
+645 647 720
+110 618 733
+410 446 763
+234 268 671
+404 611 668
+190 650 693
+210 437 607
+261 583 685
+228 420 635
+311 477 548
+514 707 734
+65 721 747
+480 670 709
+46 540 580
+121 458 469
+127 554 659
+315 478 489
+632 672 726
+30 621 697
+365 400 591
+639 668 669
+132 334 475
+97 673 734
+534 538 619
+145 351 565
+590 600 711
+237 699 725
+342 489 530
+72 398 573
+621 676 742
+290 303 696
+377 665 699
+283 695 701
+393 531 681
+226 439 513
+46 642 708
+453 594 648
+217 650 723
+332 585 649
+266 474 624
+172 323 356
+386 396 429
+57 595 620
+258 268 606
+598 673 744
+490 536 635
+453 507 682
+450 615 746
+248 483 519
+115 619 705
+43 718 743
+510 553 626
+16 531 583
+535 627 770
+293 429 435
+45 330 727
+199 275 303
+194 481 490
+159 662 724
+157 505 605
+148 729 746
+691 721 729
+382 602 656
+39 485 526
+625 737 745
+209 495 747
+199 406 564
+309 417 440
+324 500 583
+45 300 311
+118 413 431
+427 524 697
+130 334 553
+419 498 561
+215 314 372
+353 611 633
+191 299 646
+225 616 715
+320 444 677
+410 428 594
+183 247 320
+596 662 684
+120 371 394
+543 623 757
+429 582 735
+352 609 678
+82 262 612
+260 448 566
+623 690 753
+373 474 724
+677 681 692
+49 562 721
+561 730 767
+268 676 684
+301 524 588
+192 337 511
+272 549 683
+94 486 698
+431 645 646
+544 614 735
+235 592 632
+464 641 665
+389 708 713
+212 368 716
+237 257 761
+326 344 641
+279 364 438
+54 715 727
+311 384 511
+152 683 723
+297 564 704
+70 331 638
+569 645 710
+299 491 752
+405 500 732
+233 717 729
+417 571 679
+337 517 554
+422 537 541
+64 535 661
+74 621 675
+218 326 442
+40 236 310
+631 634 695
+298 597 665
+387 455 776
+365 405 559
+152 396 468
+117 482 533
+239 256 666
+327 397 653
+374 661 726
+146 658 715
+245 639 689
+462 672 748
+509 552 624
+276 363 576
+224 315 487
+447 595 628
+595 664 676
+452 502 514
+178 714 716
+184 359 519
+440 442 473
+259 494 521
+329 670 707
+71 535 560
+193 589 644
+5 582 663
+357 429 551
+229 350 454
+472 692 772
+412 644 657
+170 436 466
+147 434 558
+177 510 569
+281 473 657
+464 619 682
+262 568 577
+67 501 636
+180 636 731
+457 572 630
+56 634 686
+422 504 565
+182 428 697
+200 598 633
+129 485 627
+717 728 741
+391 470 534
+93 623 648
+369 741 746
+653 707 767
+126 405 504
+225 338 607
+408 596 695
+127 488 629
+333 694 720
+214 512 622
+263 668 713
+322 577 691
+77 301 712
+17 464 598
+282 371 421
+38 506 515
+351 373 438
+50 287 607
+145 494 608
+21 367 566
+336 469 687
+217 417 613
+471 562 662
+50 469 474
+343 599
+603 645 758
+401 617 618
+559 660 666
+599 738 744
+69 493 560
+87 532 661
+460 519 774
+33 177 181
+44 534 638
+247 450 545
+205 643 736
+264 635 725
+323 425 435
+226 466 606
+570 721 737
+297 430 672
+576 659 730
+255 581 651
+343 654 778
+342 351 353
+584 637 740
+368 693 726
+383 647 671
+195 601 704
+251 436 502
+352 579 724
+438 493 581
+471 500 688
+370 484 719
+630 660 699
+409 427 444
+5 600 657
+133 728 748
+96 516 744
+80 675 694
+12 732 742
+447 588 637
+122 550 745
+191 554 651
+189 393 451
+317 471 774
+146 568 615
+92 551 552
+168 347 426
+675 710 720
+278 484 703
+96 459 686
+130 494 631
+145 407 423
+286 496 663
+201 605 732
+383 709 745
+504 587 690
+340 413 762
+171 616 618
+287 599 663
+251 528 589
+163 603 644
+403 588 655
+178 373 460
+316 391 453
+283 634 706
+129 317 464
+62 225 235
+24 310 614
+565 584 638
+266 461 561
+114 388 518
+194 349 542
+355 522 651
+114 397 466
+604 617 659
+159 643 674
+97 411 517
+89 337 445
+139 490 643
+713 716 718
+628 696 739
+132 410 662
+79 436 466
+613 646 670
+452 549 602
+424 479 712
+204 593 711
+420 615 747
+96 439 633
+339 386 571
+354 381 459
+222 537 580
+260 319 559
+279 463 518
+585 702 706
+449 597 642
+167 556 656
+14 505 574
+416 573 689
+402 525 533
+195 685 722
+403 528 613
+135 585 647
+214 430 492
+296 523 640
+514 529 652
+2 369 461
+19 607 688
+586 615 669
+416 625 666
+301 308 515
+424 512 692
+9 450 738
+538 667 733
+59 492 543
+59 404 730
+291 567 640
+630 673 742
+674 687 690
+249 480 547
+248 537 548
+4 320 495
+269 423 448
+154 388 391
+340 345 711
+358 483 586
+255 553 667
+412 680 777
+609 733 750
+433 492 550
+396 468 550
+197 606 612
+82 411 568
+272 457 756
+658 694 735
+165 313 719
+243 393 498
+219 486 690
+551 602 628
+346 693 755
+400 602 687
+8 589 614
+472 593 605
+375 594 740
+77 555 574
+75 679 702
+325 472 707
+604 703 745
+54 506 512
+167 442 610
+629 731 777
+367 443 682
+517 631 711
+49 264 277
+176 515 527
+329 346 401
+306 701 703
+322 333 742
+95 620 642
+207 487 571
+207 440 518
+587 722 743
+297 432 648
+365 478 642
+43 432 558
+57 361 652
+170 693 706
+108 410 497
+529 725 748
+392 655 712
+372 571 626
+503 587 667
+608 743 759
+425 678 760
+345 382 660
+446 608 717
+105 426 574
+184 622 726
+590 678 725
+119 268 674
+294 497 525
+357 445 461
+242 397 510
+585 590 737
+273 578 689
+498 506 733
+216 469 744
+377 514 701
+116 480 546
+227 346 403
+237 303 345
+161 567 578
+310 656 680
+267 284 353
+278 456 569
+414 522 592
+156 449 570
+68 442 480
+112 448 539
+253 513 520
+509 599 739
+402 579 591
+453 545 667
+130 555 600
+227 321 601
+61 397 523
+131 640 655
+296 456 501
+15 577 636
+489 669 687
+471 728 730
+275 648 655
+20 481 541
+48 539 736
+9 617 675
+377 536 718
+653 654 705
+74 366 384
+593 686 735
+538 626 658
+434 476 677
+160 415 572
+327 547 686
+504 611 683
+97 537 567
+285 359 458
+526 546 694
+116 354 409
+6 299 369
+315 628 671
+540 608 718
+36 557 579
+339 513 553
+168 508 567
+79 375 532
+147 208 238
+373 620 649
+64 294 344
+309 487 597
+252 379 572
+549 649 728
+82 477 699
+135 455 719
+101 303 378
+118 584 713
+238 374 491
+189 540 702
+357 641 737
+323 542 666
+38 630 722
+220 739 741
+201 322 579
+498 747 750
+497 702 740
+39 407 649
+26 507 741
+32 358 476
+113 673 716
+213 511 517
+338 521 530
+249 703 714
+241 311 360
+243 625 705
+434 444 682
+298 555 681
+393 566 578
+155 691 727
+433 696 717
+171 409 616
+91 519 650
+315 448 621
+432 437 451
+201 219 249
+154 590 601
+46 371 598
+499 503 526
+103 563 683
+357 595 620
+8 637 663
+244 557 722
+234 331 659
+55 577 610
+428 555 706
+582 610 710
+100 583 632
+604 710 729
+209 408 436
+149 465 544
+263 395 639
+146 374 510
+200 499 613
+545 700 738
+1 3 4 628 647
+2 16 20 396 1115
+3 5 35 61 148
+4 24 25 720 1130
+5 108 316 967 1043
+6 7 17 520 1237
+7 19 267 277 768
+8 9 27 1150 1287
+9 588 804 1121 1223
+10 37 87 104 676
+11 36 109 354 420
+12 13 62 680 1047
+13 22 29 149 295
+14 44 75 562 1106
+15 110 141 378 1217
+16 64 84 142 871
+17 18 106 775 1000
+18 23 414 459 467
+19 21 31 162 1116
+20 22 339 498 1221
+21 23 45 229 1006
+22 34 53 122 497
+23 52 186 224 381
+24 25 26 129 1076
+25 89 503 607 622
+26 27 574 797 1264
+27 80 205 488 803
+28 29 30 97 194
+29 30 31 42 51
+30 32 72 240 837
+31 63 77 138 809
+32 55 86 92 1265
+33 35 48 181 1019
+34 65 174 296 433
+35 136 167 279 553
+36 37 38 678 1240
+37 187 272 391 634
+38 39 661 1002 1258
+39 40 317 882 1263
+40 93 188 373 941
+41 42 58 197 419
+42 128 130 233 298
+43 415 501 869 1173
+44 91 103 222 1020
+45 113 184 874 888
+46 82 832 854 1283
+47 79 121 389 596
+48 57 733 806 1222
+49 246 278 910 1162
+50 236 307 1004 1010
+51 52 123 265 369
+52 53 235 541 610
+53 54 116 223 453
+54 137 159 926 1157
+55 66 67 314 1290
+56 57 99 160 981
+57 202 740 861 1174
+58 59 166 203 214
+59 140 210 1123 1124
+60 61 114 282 736
+61 62 64 182 1214
+62 63 280 617 1075
+63 65 66 185 560
+64 198 220 938 1246
+65 83 90 94 830
+66 67 125 263 537
+67 172 349 645 978
+68 70 242 357 1206
+69 76 169 579 1016
+70 71 72 353 930
+71 107 154 199 965
+72 73 74 78 847
+73 75 77 273 283
+74 266 787 939 1226
+75 96 299 608 1154
+76 79 177 474 742
+77 359 693 999 1153
+78 92 193 646 793
+79 80 496 1091 1243
+80 81 83 269 1046
+81 82 88 190 392
+82 332 905 1141 1250
+83 84 100 464 815
+84 85 89 90 683
+85 86 289 337 346
+86 87 276 713 750
+87 96 111 772 1017
+88 91 102 105 139
+89 97 328 619 1086
+90 93 94 260 538
+91 221 230 329 1278
+92 95 99 212 1054
+93 200 549 631 988
+94 133 171 345 916
+95 440 462 535 1167
+96 98 1045 1058 1097
+97 131 841 1085 1233
+98 100 101 153 158
+99 102 387 566 763
+100 143 157 401 1293
+101 103 106 310 1252
+102 104 111 117 268
+103 105 164 219 1285
+104 189 423 615 760
+105 107 109 818 1185
+106 108 152 438 788
+107 114 132 513 603
+108 110 156 383 1176
+109 112 113 115 151
+110 490 792 794 820
+111 112 117 126 249
+112 120 204 394 1207
+113 119 196 362 1266
+114 116 133 1079 1082
+115 118 521 630 868
+116 173 618 1197 1236
+117 122 124 155 947
+118 121 257 889 1253
+119 292 567 691 1188
+120 127 239 321 901
+121 129 252 435 833
+122 123 135 473 1049
+123 125 130 207 573
+124 128 132 213 315
+125 170 215 600 801
+126 127 439 672 991
+127 134 231 834 994
+128 131 297 303 376
+129 217 243 985 1074
+130 134 891 1059 1212
+131 145 227 536 1215
+132 136 176 840 1090
+133 137 336 485 1044
+134 140 168 673 773
+135 150 584 1111 1251
+136 138 165 517 524
+137 141 333 411 511
+138 139 627 719 791
+139 142 146 192 1087
+140 143 183 443 449
+141 450 586 734 796
+142 144 147 300 344
+143 146 178 621 695
+144 145 149 157 382
+145 150 843 1005 1060
+146 148 951 1053 1298
+147 471 712 973 1244
+148 153 155 532 879
+149 151 380 544 1296
+150 160 171 323 445
+151 152 154 162 243
+152 156 723 928 946
+153 241 251 529 781
+154 561 780 1132 1282
+155 168 238 447 1275
+156 158 180 425 1205
+157 159 176 404 878
+158 163 174 177 196
+159 161 245 877 1084
+160 172 201 426 1230
+161 164 166 167 1200
+162 165 211 301 778
+163 175 225 288 1069
+164 181 197 495 522
+165 185 400 427 1144
+166 169 180 304 556
+167 173 208 1105 1158
+168 314 539 1055 1242
+169 170 178 198 324
+170 504 738 972 1175
+171 330 707 1066 1277
+172 188 213 270 859
+173 175 179 232 320
+174 182 319 399 817
+175 183 302 305 546
+176 179 281 493 1163
+177 191 551 974 1019
+178 186 187 960 1071
+179 194 326 403 509
+180 201 325 343 979
+181 227 262 612 1019
+182 192 195 206 983
+183 184 210 444 899
+184 189 508 961 1186
+185 190 193 348 749
+186 214 220 285 577
+187 230 247 397 685
+188 229 366 461 534
+189 191 204 1051 1255
+190 202 280 675 824
+191 208 452 895 1050
+192 195 219 565 914
+193 225 293 409 966
+194 207 441 876 1080
+195 284 786 1035 1109
+196 199 290 358 380
+197 200 352 746 1140
+198 212 221 241 418
+199 223 769 875 885
+200 205 468 984 1299
+201 217 1062 1260 1281
+202 203 258 638 724
+203 209 277 327 480
+204 264 398 545 1095
+205 206 255 291 1022
+206 215 218 237 255
+207 299 398 1168 1169
+208 284 303 512 1244
+209 224 732 884 1295
+210 246 360 752 825
+211 228 245 384 540
+212 218 222 516 922
+213 351 455 763 1267
+214 244 431 996 1112
+215 216 309 805 893
+216 231 268 669 1195
+217 234 318 856 1008
+218 236 262 364 940
+219 226 375 1146 1281
+220 422 456 479 1259
+221 252 253 372 476
+222 235 616 810 1100
+223 232 233 263 290
+224 260 276 311 956
+225 313 896 992 1075
+226 259 405 853 1025
+227 240 306 1198 1213
+228 460 552 590 827
+229 417 465 731 969
+230 430 620 637 745
+231 237 370 390 463
+232 254 324 499 785
+233 238 239 251 934
+234 242 274 822 1289
+235 510 582 919 1075
+236 304 563 568 941
+237 261 845 923 1199
+238 256 684 1244 1254
+239 379 427 679 948
+240 247 257 287 295
+241 250 267 319 1270
+242 331 614 813 1191
+243 248 266 1145 1271
+244 341 359 374 1288
+245 288 591 629 952
+246 256 479 599 758
+247 261 496 899 1021
+248 249 275 867 1129
+249 650 1128 1269 1281
+250 258 270 382 760
+251 347 405 1036 1068
+252 259 273 386 1248
+253 265 300 357 1208
+254 264 312 335 816
+255 363 383 1029 1135
+256 285 751 774 948
+257 271 282 377 923
+258 271 356 500 862
+259 274 339 352 963
+260 356 373 906 1101
+261 272 624 696 826
+262 301 792 905 977
+263 293 412 997 1297
+264 278 426 1023 1162
+265 269 322 523 550
+266 297 402 858 1078
+267 286 594 666 1202
+268 822 862 912 1188
+269 354 464 676 1131
+270 345 421 434 682
+271 306 323 484 602
+272 279 662 915 1142
+273 428 699 752 1193
+274 298 408 611 795
+275 283 289 875 1220
+276 287 296 313 955
+277 310 414 505 1162
+278 291 440 1057 1203
+279 338 476 925 1102
+280 308 350 429 726
+281 302 331 547 975
+282 305 368 392 1001
+283 349 748 851 1073
+284 308 367 442 1202
+285 411 526 621 1234
+286 415 527 714 1061
+287 292 531 1004 1067
+288 365 371 432 763
+289 326 327 406 528
+290 363 388 478 849
+291 294 340 775 1125
+292 320 548 741 781
+293 294 309 335 873
+294 348 406 1189 1246
+295 307 644 700 812
+296 367 625 1113 1216
+297 376 929 1027 1171
+298 332 777 943 1273
+299 516 895 932 1237
+300 430 718 795 888
+301 798 913 999 1119
+302 318 448 557 586
+303 849 875 1199 1252
+304 317 330 424 515
+305 434 481 482 606
+306 311 424 543 1165
+307 315 478 710 798
+308 334 336 351 1119
+309 472 507 886 1247
+310 559 941 1076 1201
+311 828 888 927 1270
+312 316 321 453 537
+313 337 488 633 1144
+314 333 400 787 893
+315 835 956 1238 1279
+316 325 420 683 1072
+317 360 774 1052 1074
+318 338 458 606 687
+319 329 653 743 1101
+320 604 897 899 1130
+321 361 371 385 1213
+322 404 998 1166 1260
+323 535 859 1024 1257
+324 328 368 578 887
+325 334 436 770 1155
+326 350 451 924 940
+327 342 526 949 1231
+328 346 377 409 431
+329 443 648 964 1164
+330 344 508 558 874
+331 353 762 930 1289
+332 343 355 417 857
+333 362 462 995 1166
+334 626 635 840 891
+335 341 375 514 735
+336 381 396 401 1007
+337 671 914 936 1086
+338 358 442 992 1268
+339 423 432 1098 1241
+340 457 620 1065 1133
+341 374 391 408 658
+342 347 500 846 1031
+343 387 390 1011 1030
+344 447 530 924 1246
+345 703 1133 1183 1199
+346 355 1148 1164 1198
+347 491 674 796 1055
+348 361 407 585 779
+349 366 369 510 1080
+350 477 521 625 969
+351 766 843 1003 1031
+352 600 601 904 1037
+353 413 894 1031 1202
+354 570 800 1099 1236
+355 475 551 633 1081
+356 364 589 632 859
+357 968 1190 1256 1286
+358 466 707 1134 1265
+359 386 389 961 1234
+360 393 429 702 1270
+361 465 727 737 1174
+362 444 638 642 761
+363 365 463 565 955
+364 519 575 677 925
+365 693 838 945 1172
+366 395 403 506 1226
+367 378 779 1006 1160
+368 395 799 922 1033
+369 459 989 1115 1237
+370 379 631 798 1040
+371 384 901 1001 1283
+372 388 410 893 1179
+373 908 1003 1071 1245
+374 542 950 1254 1298
+375 522 572 1152 1243
+376 436 596 664 711
+377 722 850 1196 1224
+378 413 428 519 1252
+379 416 437 515 1248
+380 441 472 692 740
+381 433 474 583 1099
+382 697 785 881 1183
+383 491 764 1034 1063
+384 480 484 927 1226
+385 489 504 538 641
+386 505 734 860 1098
+387 394 461 804 944
+388 402 425 1079 1132
+389 397 419 753 921
+390 399 418 422 694
+391 451 987 1072 1132
+392 523 670 744 1178
+393 852 1051 1145 1274
+394 407 595 720 901
+395 613 802 817 1297
+396 787 860 946 1139
+397 949 1082 1191 1214
+398 438 486 665 847
+399 445 651 694 766
+400 435 446 838 1149
+401 412 775 1013 1164
+402 450 604 1108 1210
+403 701 1070 1110 1198
+404 534 539 823 1124
+405 796 933 945 991
+406 615 807 810 885
+407 483 591 1060 1263
+408 468 493 993 1295
+409 764 1042 1236 1277
+410 821 898 1090 1176
+411 750 803 1085 1141
+412 487 710 971 1136
+413 498 721 889 1065
+414 513 569 679 1204
+415 497 753 759 1230
+416 469 598 1107 1118
+417 715 886 935 1008
+418 482 685 757 816
+419 643 645 762 892
+420 421 454 827 1096
+421 483 571 593 1001
+422 654 807 937 982
+423 457 802 1060 1131
+424 670 784 1094 1120
+425 449 489 1024 1182
+426 753 795 1055 1185
+427 490 651 890 1042
+428 481 898 983 1291
+429 860 873 903 968
+430 532 598 1027 1112
+431 458 575 889 917
+432 564 1171 1173 1280
+433 473 546 1138 1276
+434 494 973 1229 1272
+435 448 636 873 1024
+436 972 1036 1091 1295
+437 439 460 825 1280
+438 730 925 1003 1038
+439 502 580 853 1097
+440 716 886 962 1169
+441 454 466 485 818
+442 940 962 1158 1206
+443 446 716 799 1160
+444 611 897 1042 1272
+445 456 609 1086 1190
+446 452 752 821 1184
+447 528 550 957 1048
+448 906 1131 1207 1279
+449 499 514 1104 1205
+450 486 866 1021 1121
+451 477 610 1051 1280
+452 455 682 959 1093
+453 855 865 1072 1211
+454 708 709 773 969
+455 467 561 944 1251
+456 470 729 1203 1216
+457 469 520 980 1142
+458 541 580 833 1234
+459 639 750 1058 1099
+460 540 687 1018 1071
+461 572 1078 1115 1190
+462 512 518 779 953
+463 470 495 754 1102
+464 920 976 1000 1074
+465 576 627 647 1296
+466 972 1025 1082 1091
+467 517 593 654 811
+468 755 800 946 1139
+469 833 1007 1010 1195
+470 471 605 632 987
+471 1009 1039 1052 1219
+472 599 970 1151 1155
+473 530 545 962 975
+474 507 858 908 1010
+475 492 518 813 840
+476 589 812 1229 1265
+477 659 739 828 1250
+478 527 717 835 1172
+479 612 712 786 1094
+480 831 1128 1197 1206
+481 509 533 876 1221
+482 503 558 749 947
+483 656 747 867 1134
+484 649 792 1040 1057
+485 531 630 882 985
+486 643 703 916 1146
+487 663 956 1168 1247
+488 525 578 642 994
+489 678 835 846 1218
+490 637 864 876 1087
+491 619 655 932 1254
+492 494 1112 1123 1138
+493 554 652 1016 1038
+494 501 963 1005 1059
+495 571 760 884 1130
+496 502 640 764 1061
+497 737 1176 1189 1262
+498 892 1145 1194 1261
+499 511 754 1284 1299
+500 524 887 933 1039
+501 557 808 978 1216
+502 717 780 959 1036
+503 608 816 1180 1284
+504 982 991 1064 1232
+505 761 790 878 1106
+506 595 1002 1157 1194
+507 639 666 865 1264
+508 548 556 769 1242
+509 741 774 954 1209
+510 870 974 1191 1298
+511 581 914 927 1267
+512 739 996 1120 1157
+513 573 853 1208 1241
+514 829 959 1114 1196
+515 702 1002 1119 1163
+516 544 588 755 1045
+517 936 1085 1161 1267
+518 805 1079 1102 1169
+519 867 961 1018 1278
+520 529 554 602 1208
+521 601 761 963 1268
+522 607 791 1081 1204
+523 579 808 1113 1214
+524 569 793 890 913
+525 543 549 1108 1189
+526 809 882 1235 1284
+527 536 563 616 1163
+528 555 728 1068 1110
+529 560 661 1114 1177
+530 635 803 846 1268
+531 577 590 852 871
+532 553 814 1017 1243
+533 594 649 947 1108
+534 552 842 987 1020
+535 709 872 938 965
+536 617 699 864 1224
+537 937 1100 1129 1233
+538 582 842 1122 1228
+539 570 697 1207 1222
+540 636 832 1239 1255
+541 624 695 937 1221
+542 564 674 1080 1257
+543 667 811 902 1123
+544 547 658 918 1296
+545 765 1021 1211 1300
+546 705 768 1197 1235
+547 597 657 1128 1231
+548 646 789 828 1129
+549 806 915 1093 1249
+550 613 1049 1138 1139
+551 815 968 1054 1147
+552 626 788 954 1054
+553 870 891 1135 1241
+554 758 834 936 1050
+555 1153 1212 1273 1291
+556 562 567 584 1105
+557 559 705 1240 1288
+558 660 799 973 1173
+559 790 945 1014 1101
+560 566 777 965 1016
+561 568 892 911 1078
+562 583 629 910 1009
+563 574 648 811 1285
+564 652 807 885 929
+565 668 843 982 1077
+566 634 906 1006 1274
+567 1125 1200 1233 1242
+568 603 977 1053 1141
+569 704 931 974 1203
+570 688 751 1026 1205
+571 935 1098 1168 1179
+572 672 980 1230 1248
+573 623 657 847 1107
+574 641 1106 1153 1185
+575 614 622 701 767
+576 793 817 955 1028
+577 977 998 1217 1290
+578 729 1193 1200 1274
+579 1037 1210 1240 1260
+580 587 671 832 1100
+581 692 813 1029 1038
+582 587 903 967 1292
+583 826 871 887 1293
+584 794 1032 1077 1253
+585 857 1103 1111 1192
+586 592 812 1117 1134
+587 667 1064 1170 1180
+588 742 913 1048 1070
+589 675 966 1068 1150
+590 844 1187 1192 1282
+591 773 780 838 1210
+592 597 673 919 1204
+593 660 1095 1151 1227
+594 609 855 898 1152
+595 861 957 958 1286
+596 653 662 900 993
+597 786 943 1104 1247
+598 863 984 1000 1283
+599 1011 1015 1067 1209
+600 618 844 1043 1212
+601 771 1035 1213 1282
+602 881 1093 1147 1149
+603 689 732 1012 1069
+604 691 1083 1156 1294
+605 690 878 1062 1151
+606 664 862 1025 1140
+607 825 992 1004 1116
+608 1005 1181 1184 1239
+609 704 756 904 1137
+610 765 1158 1290 1292
+611 806 823 894 1232
+612 623 736 905 1140
+613 1008 1092 1110 1299
+614 769 918 1076 1150
+615 866 1053 1096 1117
+616 677 896 1066 1277
+617 708 1013 1083 1223
+618 656 820 1013 1066
+619 770 842 868 976
+620 861 1167 1245 1286
+621 837 848 939 1279
+622 628 749 996 1186
+623 719 902 907 988
+624 663 715 858 954
+625 696 883 1118 1271
+626 681 870 1179 1228
+627 644 790 872 985
+628 957 1089 1147 1238
+629 650 738 994 1159
+630 980 1041 1126 1258
+631 776 942 1059 1161
+632 640 836 919 1293
+633 747 894 984 1097
+634 776 942 981 1073
+635 800 827 864 1023
+636 754 978 979 1217
+637 698 1032 1048 1287
+638 772 930 1020 1077
+639 805 839 952 1297
+640 659 1113 1125 1215
+641 713 920 924 1256
+642 854 1104 1167 1172
+643 783 1022 1084 1087
+644 765 966 971 1069
+645 819 917 931 1012
+646 756 895 917 1092
+647 726 819 1034 1111
+648 855 988 1171 1220
+649 857 1245 1249 1263
+650 668 824 856 1278
+651 725 1029 1050 1081
+652 759 808 1114 1174
+653 744 949 990 1225
+654 665 725 1030 1225
+655 1070 1178 1215 1220
+656 755 881 1105 1201
+657 730 971 975 1043
+658 669 951 1143 1228
+659 834 1028 1083 1289
+660 788 1014 1041 1183
+661 781 938 950 1017
+662 877 900 1009 1090
+663 967 1061 1067 1287
+664 684 731 782 958
+665 784 850 920 943
+666 948 1014 1118 1257
+667 1122 1135 1180 1211
+668 771 823 839 997
+669 771 839 1117 1218
+670 745 831 964 1092
+671 772 822 1034 1238
+672 733 836 953 1027
+673 841 863 1126 1266
+674 690 1084 1127 1188
+675 939 1046 1056 1223
+676 706 848 912 958
+677 680 897 909 1229
+678 794 904 1182 1187
+679 718 785 935 1154
+680 700 801 1136 1201
+681 804 852 909 1273
+682 865 976 1160 1272
+683 915 928 1232 1285
+684 688 784 900 912
+685 686 789 826 1109
+686 981 1058 1227 1231
+687 1007 1127 1149 1218
+688 722 797 1039 1116
+689 777 952 1107 1193
+690 907 1064 1127 1146
+691 801 880 998 1275
+692 698 909 970 1120
+693 824 1033 1148 1175
+694 995 1046 1143 1235
+695 714 851 942 993
+696 766 849 1089 1276
+697 809 837 890 983
+698 711 748 815 916
+699 845 850 1041 1250
+700 768 778 797 1300
+701 810 851 1165 1196
+702 1103 1154 1255 1262
+703 1057 1156 1165 1269
+704 706 757 929 1035
+705 743 868 1225 1271
+706 1073 1103 1175 1291
+707 829 964 990 1155
+708 721 814 854 921
+709 727 757 831 1063
+710 931 1056 1292 1294
+711 844 1095 1133 1161
+712 814 999 1094 1178
+713 921 997 1088 1253
+714 723 783 960 1269
+715 767 896 926 951
+716 922 960 1088 1266
+717 934 986 1184 1276
+718 869 1088 1224 1239
+719 767 1040 1144 1251
+720 770 819 995 1056
+721 830 880 910 1026
+722 1109 1170 1258 1288
+723 724 728 856 928
+724 746 877 908 1037
+725 845 1023 1177 1187
+726 836 950 1033 1186
+727 735 874 926 1275
+728 986 1044 1219 1249
+729 879 880 934 1294
+730 911 1028 1124 1219
+731 751 762 979 1159
+732 782 933 1047 1062
+733 820 1122 1137 1194
+734 756 789 829 841
+735 903 918 1143 1227
+736 758 759 1022 1222
+737 883 1026 1192 1256
+738 791 1015 1121 1300
+739 802 1089 1209 1259
+740 776 1032 1152 1262
+741 986 989 1259 1264
+742 848 1047 1126 1166
+743 818 869 1170 1181
+744 863 1015 1045 1195
+745 883 1049 1063 1156
+746 778 866 879 989
+747 830 884 1096 1261
+748 782 953 1044 1177
+41 385 487 681 686
+28 250 592 1137 1261
+14 15 49 115 576
+51 147 370 542 932
+5 6 88 144 907
+49 50 120 226 506
+33 34 492 581 1148
+48 70 85 555 1142
+38 161 254 525 902
+43 46 76 228 1012
+1 2 95 135 1181
+55 98 248 416 1182
+3 18 33 71 923
+68 69 118 322 1065
+4 8 9 78 821
+16 17 19 68 275
+10 12 50 372 410
+12 14 56 60 69
+59 60 605 911 990
+11 13 39 234 585
+20 21 28 74 101
+44 45 163 437 872
+46 47 209 312 342
+32 211 286 533 970
+7 11 393 689 783
+26 126 216 1018 1052
+24 41 43 81 253
+36 73 119 124 944
+56 58 475 1136 1159
+8 47 244 281 1030
diff --git a/gr-fec/python/fec/LDPC/n_1800_k_0902_gap_28.alist b/gr-fec/python/fec/LDPC/n_1800_k_0902_gap_28.alist
new file mode 100644
index 0000000000..c290a13149
--- /dev/null
+++ b/gr-fec/python/fec/LDPC/n_1800_k_0902_gap_28.alist
@@ -0,0 +1,2702 @@
+1800 898
+3 6
+2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6
+1 887
+2 883
+3 879 883
+1 4 891
+5 874 891
+6 887 889
+6 7 878
+8 871 878
+8 9 889
+10 871 891
+10 11 887
+5 12 897
+7 13 897
+14 877
+12 14 15
+12 16 880
+17 874 880
+4 17 18
+5 19 880
+20 887 890
+6 21 888
+22 879 882
+22 23 874
+22 24 882
+25 895
+25 26 883
+26 27 897
+27 28 871
+25 26 29
+11 30 876
+29 30 31
+32 876 897
+15 33 876
+5 31 34
+34 35
+29 35 36
+31 34 37
+18 37 38
+36 39 898
+2 40 873
+9 41 873
+41 42 890
+29 43 872
+6 44 875
+20 45 886
+10 45 46
+35 47 881
+48 872 881
+42 48 49
+18 48 50
+29 50 51
+18 51 52
+52 53 886
+24 51 54
+21 54 55
+19 55 56
+30 54 57
+55 58 875
+58 59 890
+37 58 60
+10 60 61
+59 62 877
+30 62 63
+63 64 889
+45 64 65
+26 60 66
+59 67 880
+19 64 68
+68 69 876
+67 70 875
+70 71 872
+63 72 873
+47 72 73
+72 74 895
+7 70 75
+40 76 893
+35 77 893
+4 78 892
+78 79 876
+57 79 80
+51 81 894
+11 81 82
+47 83 894
+81 84 888
+34 82 85
+83 86 886
+74 86 87
+88 879 884
+88 89 895
+87 90 884
+19 89 91
+90 92 898
+81 91 93
+7 92 94
+85 93 95
+95 96 895
+78 93 97
+77 94 98
+98 99 888
+8 100 885
+40 101 896
+46 101 102
+73 101 103
+48 103 104
+82 103 105
+31 104 106
+14 104 107
+105 107 108
+53 107 109
+19 109 110
+36 110 111
+48 111 112
+73 112 113
+102 113 114
+113 115 896
+115 116 881
+97 111 117
+52 117 118
+77 118 119
+7 116 120
+74 119 121
+2 120 122
+67 116 123
+18 117 124
+108 122 125
+26 125 126
+30 122 127
+27 123 128
+117 129 898
+2 124 130
+130 131 871
+77 127 132
+128 133 896
+126 134
+31 133 135
+57 132 136
+96 108 137
+100 127 138
+28 137 139
+1 125 140
+114 138 141
+131 142 884
+53 142 143
+4 136 144
+113 137 145
+135 146 877
+144 147
+67 146 148
+66 148 149
+48 140 150
+68 149 151
+110 148 152
+103 144 153
+121 151 154
+37 145 155
+68 151 156
+146 155 157
+42 154 158
+124 143 159
+106 153 160
+104 152 161
+160 162 881
+75 144 163
+38 153 164
+129 162 165
+82 157 166
+77 154 167
+107 165 168
+30 166 169
+14 143 170
+32 170 171
+141 172 881
+129 171 173
+163 174 880
+76 160 175
+63 168 176
+160 173 177
+57 164 178
+66 177 179
+71 168 180
+127 179 181
+118 158 182
+33 165 183
+159 184 893
+39 183 185
+52 177 186
+122 178 187
+44 176 188
+106 156 189
+142 161 190
+94 174 191
+60 188 192
+50 189 193
+16 163 194
+45 187 195
+178 196 874
+47 188 197
+65 174 198
+74 173 199
+8 171 200
+138 200 201
+37 157 202
+106 197 203
+121 189 204
+202 205 898
+38 187 206
+74 182 207
+150 188 208
+4 207 209
+66 166 210
+18 180 211
+182 211 212
+27 185 213
+37 199 214
+205 215 893
+6 203 216
+14 197 217
+12 188 218
+185 196 219
+158 200 220
+160 195 221
+95 208 222
+149 212 223
+133 198 224
+207 225 876
+205 210 226
+180 186 227
+88 178 228
+190 192 229
+100 211 230
+32 215 231
+73 207 232
+123 164 233
+233 234 891
+182 204 235
+27 199 236
+187 231 237
+41 184 238
+64 209 239
+112 134 240
+167 237 241
+89 196 242
+50 210 243
+151 189 244
+102 234 245
+238 244 246
+3 224 247
+7 201 248
+79 223 249
+63 216 250
+84 238 251
+191 212 252
+51 247 253
+248 254 882
+12 225 255
+153 249 256
+71 243 257
+136 200 258
+209 252 259
+184 227 260
+40 243 261
+79 221 262
+70 230 263
+32 242 264
+191 245 265
+179 253 266
+178 254 267
+206 211 268
+254 269 885
+89 269 270
+175 217 271
+25 215 272
+159 235 273
+220 250 274
+83 222 275
+193 237 276
+110 268 277
+16 272 278
+17 253 279
+217 265 280
+120 159 281
+119 197 282
+191 283 878
+262 266 284
+279 285 878
+90 204 286
+122 234 287
+125 263 288
+124 248 289
+216 285 290
+194 196 291
+57 271 292
+102 260 293
+156 285 294
+44 280 295
+76 245 296
+195 260 297
+215 292 298
+155 224 299
+3 251 300
+95 297 301
+186 194 302
+156 189 303
+2 293 304
+302 305 883
+19 214 306
+83 242 307
+236 295 308
+126 270 309
+108 293 310
+215 258 311
+120 269 312
+240 313 886
+169 267 314
+266 304 315
+293 295 316
+208 315 317
+198 305 318
+40 189 319
+198 299 320
+16 127 321
+234 310 322
+156 225 323
+54 278 324
+93 247 325
+319 326 885
+21 325 327
+306 315 328
+81 227 329
+89 296 330
+176 252 331
+179 286 332
+148 312 333
+203 255 334
+13 300 335
+49 317 336
+125 290 337
+274 276 338
+9 234 339
+228 340 873
+105 207 341
+207 259 342
+71 298 343
+13 218 344
+324 345 895
+92 294 346
+181 227 347
+256 259 348
+256 335 349
+154 316 350
+250 335 351
+88 213 352
+56 221 353
+32 331 354
+25 326 355
+143 228 356
+73 291 357
+283 358 886
+325 359 885
+203 324 360
+159 348 361
+263 319 362
+145 314 363
+43 263 364
+167 358 365
+44 256 366
+314 367 892
+333 347 368
+139 354 369
+98 307 370
+185 285 371
+106 326 372
+265 355 373
+104 290 374
+137 235 375
+68 288 376
+292 371 377
+282 378 889
+337 341 379
+216 377 380
+250 292 381
+33 371 382
+305 339 383
+172 278 384
+11 202 385
+205 334 386
+159 358 387
+176 353 388
+41 379 389
+155 258 390
+178 330 391
+301 329 392
+82 383 393
+152 306 394
+94 266 395
+222 336 396
+335 390 397
+340 381 398
+124 382 399
+319 400 882
+56 375 401
+155 164 402
+238 370 403
+338 346 404
+2 276 405
+106 313 406
+147 256 407
+272 383 408
+139 300 409
+409 410 878
+22 405 411
+27 209 412
+153 316 413
+157 321 414
+62 395 415
+94 385 416
+141 205 417
+261 350 418
+256 284 419
+286 370 420
+114 324 421
+129 365 422
+251 415 423
+62 397 424
+162 293 425
+138 424 426
+232 337 427
+31 404 428
+286 388 429
+300 376 430
+219 323 431
+272 290 432
+5 362 433
+323 434 884
+236 403 435
+272 422 436
+262 271 437
+266 365 438
+298 384 439
+337 389 440
+41 145 441
+402 409 442
+66 328 443
+223 281 444
+52 356 445
+245 359 446
+335 368 447
+100 218 448
+270 317 449
+264 361 450
+60 321 451
+271 297 452
+187 439 453
+276 388 454
+351 413 455
+88 289 456
+100 301 457
+248 398 458
+184 229 459
+333 441 460
+69 360 461
+233 334 462
+5 281 463
+323 359 464
+69 380 465
+13 251 466
+336 427 467
+116 313 468
+288 335 469
+102 387 470
+142 422 471
+213 399 472
+145 435 473
+92 290 474
+167 268 475
+395 476 898
+40 354 477
+436 474 478
+141 476 479
+403 480 883
+355 421 481
+342 446 482
+131 244 483
+158 373 484
+175 412 485
+39 456 486
+134 391 487
+334 376 488
+134 477 489
+55 449 490
+75 385 491
+260 384 492
+439 465 493
+381 420 494
+35 455 495
+162 419 496
+170 301 497
+104 400 498
+430 483 499
+47 413 500
+208 277 501
+239 372 502
+76 343 503
+137 345 504
+72 372 505
+283 312 506
+171 337 507
+200 332 508
+10 474 509
+28 246 510
+132 474 511
+216 501 512
+380 396 513
+174 491 514
+12 388 515
+388 499 516
+299 514 517
+356 382 518
+202 357 519
+25 437 520
+295 334 521
+227 332 522
+390 436 523
+280 340 524
+143 306 525
+190 316 526
+445 518 527
+44 483 528
+15 278 529
+61 440 530
+218 526 531
+437 532 879
+149 532 533
+289 434 534
+173 456 535
+361 516 536
+246 482 537
+58 372 538
+186 416 539
+368 369 540
+393 511 541
+257 542 888
+193 431 543
+331 476 544
+275 417 545
+20 524 546
+65 367 547
+255 489 548
+266 351 549
+133 270 550
+525 546 551
+388 417 552
+269 514 553
+497 554 871
+171 541 555
+78 547 556
+473 533 557
+58 307 558
+523 557 559
+22 535 560
+224 432 561
+509 562 890
+162 438 563
+78 391 564
+278 345 565
+84 496 566
+339 542 567
+151 445 568
+179 500 569
+56 313 570
+179 460 571
+96 353 572
+212 536 573
+63 459 574
+77 427 575
+363 553 576
+130 540 577
+269 554 578
+105 488 579
+243 535 580
+112 498 581
+1 508 582
+182 428 583
+222 482 584
+36 303 585
+121 206 586
+126 268 587
+495 509 588
+373 377 589
+181 511 590
+373 464 591
+158 419 592
+345 429 593
+275 563 594
+200 449 595
+175 582 596
+154 530 597
+86 595 598
+76 555 599
+202 592 600
+261 347 601
+224 458 602
+466 536 603
+110 518 604
+151 405 605
+548 572 606
+59 561 607
+273 451 608
+380 586 609
+163 411 610
+364 507 611
+580 612 883
+120 305 613
+118 407 614
+282 459 615
+515 541 616
+219 366 617
+357 440 618
+407 611 619
+236 304 620
+418 595 621
+34 579 622
+346 611 623
+401 594 624
+420 480 625
+199 501 626
+415 613 627
+327 526 628
+147 616 629
+79 421 630
+436 589 631
+212 573 632
+311 341 633
+85 598 634
+146 515 635
+406 603 636
+254 559 637
+186 452 638
+240 264 639
+418 624 640
+211 564 641
+49 237 642
+469 531 643
+99 622 644
+277 488 645
+304 527 646
+13 582 647
+177 419 648
+169 528 649
+455 564 650
+513 602 651
+111 400 652
+217 652 653
+97 349 654
+573 644 655
+49 489 656
+20 472 657
+94 412 658
+316 563 659
+85 625 660
+135 562 661
+216 618 662
+276 490 663
+300 432 664
+449 560 665
+383 430 666
+393 657 667
+444 491 668
+384 577 669
+405 670 893
+43 645 671
+11 669 672
+646 654 673
+487 568 674
+279 605 675
+86 349 676
+261 603 677
+241 397 678
+416 652 679
+312 503 680
+66 455 681
+147 313 682
+346 617 683
+140 556 684
+294 654 685
+597 615 686
+241 675 687
+175 618 688
+221 578 689
+23 578 690
+423 473 691
+339 524 692
+576 680 693
+620 666 694
+589 687 695
+210 304 696
+56 630 697
+49 611 698
+11 523 699
+240 573 700
+182 572 701
+671 695 702
+284 586 703
+449 588 704
+288 550 705
+204 402 706
+520 689 707
+197 676 708
+274 626 709
+310 443 710
+452 570 711
+522 637 712
+65 602 713
+343 633 714
+372 565 715
+348 692 716
+164 699 717
+8 539 718
+251 442 719
+343 448 720
+504 508 721
+470 720 722
+24 451 723
+84 436 724
+14 719 725
+230 648 726
+481 592 727
+408 509 728
+84 468 729
+327 706 730
+427 731 887
+161 561 732
+406 594 733
+126 573 734
+548 614 735
+191 559 736
+53 310 737
+305 699 738
+109 181 739
+62 661 740
+386 575 741
+622 742 897
+135 661 743
+143 492 744
+232 617 745
+326 692 746
+20 453 747
+408 735 748
+529 704 749
+3 644 750
+196 362 751
+119 339 752
+341 502 753
+467 567 754
+54 532 755
+537 682 756
+676 704 757
+580 675 758
+362 713 759
+311 697 760
+301 629 761
+357 404 762
+99 599 763
+298 641 764
+358 443 765
+425 625 766
+374 531 767
+50 394 768
+235 672 769
+17 400 770
+545 718 771
+370 624 772
+201 772 773
+203 379 774
+412 600 775
+399 484 776
+95 728 777
+86 689 778
+503 672 779
+167 262 780
+97 527 781
+393 575 782
+385 649 783
+201 702 784
+728 778 785
+275 431 786
+366 702 787
+190 776 788
+687 765 789
+274 621 790
+285 380 791
+138 439 792
+636 758 793
+461 591 794
+303 761 795
+368 711 796
+502 717 797
+651 754 798
+446 792 799
+45 463 800
+36 569 801
+279 746 802
+331 650 803
+146 589 804
+342 796 805
+505 700 806
+220 759 807
+71 462 808
+224 439 809
+203 686 810
+311 543 811
+692 776 812
+671 813
+805 814 898
+374 780 815
+191 620 816
+707 738 817
+127 323 818
+445 668 819
+342 527 820
+757 790 821
+425 790 822
+254 289 823
+382 424 824
+517 611 825
+291 826 896
+45 352 827
+98 777 828
+570 829 896
+656 791 830
+39 825 831
+746 766 832
+70 706 833
+694 834 897
+131 704 835
+315 800 836
+278 556 837
+768 799 838
+282 588 839
+753 777 840
+177 643 841
+795 824 842
+204 533 843
+454 668 844
+574 674 845
+139 702 846
+72 500 847
+396 754 848
+343 615 849
+352 603 850
+429 851 882
+457 820 852
+697 789 853
+338 618 854
+170 810 855
+111 526 856
+241 743 857
+790 858 875
+195 756 859
+319 854 860
+237 806 861
+678 827 862
+538 739 863
+475 648 864
+549 840 865
+582 585 866
+262 696 867
+154 860 868
+653 744 869
+213 565 870
+114 510 659
+168 693 723
+360 638 640
+426 552 648
+327 414 492
+97 440 802
+707 751 794
+108 190 386
+443 658 697
+68 512 798
+132 613 627
+233 623 736
+425 680 719
+271 734 842
+128 619 710
+80 739 846
+221 598 872
+130 703 772
+128 475 814
+456 540 621
+517 655 833
+140 663 689
+523 733 862
+130 296 338
+351 814 830
+227 596 687
+418 615 781
+98 556 841
+83 729 738
+255 412 605
+133 521 791
+591 599 673
+610 623 804
+91 522 764
+435 460 788
+208 367 720
+515 759 821
+585 684 755
+406 458 532
+80 606 719
+242 493 590
+273 493 585
+252 386 792
+403 555 738
+39 320 441
+112 467 770
+321 468 768
+547 826 839
+619 733 796
+217 411 569
+75 565 639
+131 557 816
+199 437 810
+125 597 662
+147 561 813
+267 721 867
+42 528 604
+43 815 844
+692 750 754
+144 745 831
+193 645 822
+24 806 849
+717 722 802
+161 365 458
+330 863 869
+307 421 834
+21 440 660
+219 689 766
+295 616 825
+198 218 332
+263 317 322
+306 365 489
+814 852 860
+51 349 756
+228 550 633
+15 779 848
+296 576 744
+309 350 552
+615 829 882
+113 539 845
+197 429 462
+369 642
+349 579 595
+132 771 832
+318 614 848
+78 782 794
+505 581 650
+394 424 601
+136 669 708
+225 470 520
+395 564 811
+342 568 663
+152 515 611
+635 679 811
+218 668 773
+286 410 628
+32 609 664
+282 496 826
+423 447 845
+282 798 849
+190 593 718
+680 781 874
+38 374 506
+488 808 839
+366 509 610
+161 233 286
+463 663 721
+842 859 861
+41 567 598
+457 807 854
+115 413 609
+148 688 693
+474 575 697
+120 462 560
+17 797 844
+184 548 668
+173 434 468
+308 653 765
+96 541 727
+71 629 864
+140 788 816
+392 595 599
+504 564 713
+194 259 652
+322 574 618
+54 297 450
+392 544 594
+344 574 764
+379 751 823
+737 811 872
+244 476 674
+87 407 791
+413 508 832
+369 682 746
+542 577 854
+769 857 888
+360 695 785
+24 540 775
+359 537 656
+144 220 257
+387 747 851
+169 510 601
+703 707 719
+175 536 742
+243 609 727
+379 422 649
+297 320 575
+674 691 784
+622 683 847
+347 465 631
+281 469 538
+121 390 788
+378 639 884
+478 685 712
+546 655 752
+142 784 812
+226 572 753
+523 700 832
+206 338 777
+91 653 735
+239 350 748
+72 507 653
+454 801 859
+638 791 837
+258 646 843
+239 261 593
+415 681 755
+126 405 581
+455 760 854
+201 507 534
+308 795 823
+129 633 748
+260 754 817
+676 801 872
+246 360 407
+87 427 733
+4 350 589
+76 544 577
+393 784 856
+138 438 495
+520 670 701
+101 491 795
+234 348 424
+184 498 700
+475 796 836
+56 499 540
+130 600 860
+406 710 818
+664 688 771
+441 584 647
+192 473 515
+827 844 871
+42 484 586
+354 434 630
+649 863 868
+366 504 877
+214 593 603
+514 543 778
+249 609 652
+267 511 608
+153 620 657
+553 763 892
+150 504 579
+169 340 715
+723 810 820
+248 390 433
+698 811 862
+250 649 723
+513 726 802
+193 369 372
+242 375 870
+38 230 414
+570 817 835
+236 435 545
+396 704 745
+177 692 751
+28 549 670
+318 600 664
+561 646 655
+128 397 647
+734 826 841
+323 492 624
+480 676 892
+464 570 639
+543 617 624
+497 568 619
+259 584 775
+134 634 773
+345 718 730
+150 841 850
+356 553 828
+660 713 891
+284 507 640
+176 302 632
+210 273 477
+319 742 838
+378 762 870
+416 614 833
+395 676 679
+602 628 861
+248 649 757
+239 442 767
+3 304 583
+551 646 777
+646 703 765
+581 613 760
+320 779 864
+34 447 566
+206 419 802
+99 540 554
+571 819 846
+432 475 877
+44 774 828
+678 696 886
+423 534 560
+195 631 829
+409 485 757
+209 510 620
+383 472 478
+289 450 461
+357 782 863
+391 453 763
+92 535 729
+46 520 602
+219 592 740
+213 408 459
+39 489 764
+309 512 588
+88 480 495
+244 398 446
+569 673 749
+544 667 725
+142 451 550
+471 586 739
+608 800 895
+257 465 478
+62 685 690
+407 484 824
+398 641 813
+165 517 677
+396 479 635
+269 638 717
+584 619 752
+463 541 657
+53 395 516
+263 833 859
+510 637 780
+500 655 691
+632 672 780
+271 661 734
+329 543 626
+116 598 678
+608 641 806
+730 735 781
+553 810 885
+274 627 665
+453 665 699
+267 495 729
+770 776 851
+444 695 735
+488 639 863
+139 463 511
+401 443 562
+496 579 617
+115 442 607
+288 328 352
+257 562 583
+215 467 546
+403 714 856
+578 768 789
+137 677 792
+404 558 752
+242 680 812
+291 442 585
+364 610 716
+482 665 717
+572 590 693
+255 373 460
+85 471 784
+551 678 757
+171 645 850
+431 551 776
+208 272 769
+320 527 557
+307 558 582
+552 737 853
+294 448 482
+311 329 722
+210 270 809
+465 522 655
+681 693 796
+376 774 783
+26 301 675
+165 405 593
+174 347 889
+318 525 532
+249 516 787
+229 494 520
+740 860 862
+468 492 853
+65 597 763
+451 714 821
+93 249 357
+259 289 306
+90 644 788
+744 797
+253 297 473
+217 264 265
+69 308 452
+99 466 656
+246 313 679
+341 759 795
+1 560 748
+574 621 729
+213 530 674
+466 531 710
+300 656 869
+15 458 731
+183 662 745
+330 344 417
+847 865 866
+472 629 869
+537 618 662
+296 787 803
+275 642 754
+254 375 889
+75 499 690
+152 444 665
+47 466 633
+231 370 658
+21 849 859
+85 823 835
+183 422 852
+119 514 687
+318 561 759
+225 400 493
+185 650 651
+67 601 737
+321 364 637
+309 346 501
+420 627 762
+109 772 843
+20 387 461
+416 447 494
+447 756 780
+112 430 559
+188 302 583
+147 678 788
+9 355 837
+33 292 438
+281 430 686
+226 545 647
+510 631 724
+111 336 374
+168 830 852
+64 277 819
+123 476 762
+46 818 866
+16 232 479
+164 605 691
+236 782 868
+202 563 660
+622 697 880
+363 433 875
+199 513 596
+81 261 457
+497 585 698
+285 471 782
+433 767 834
+425 615 892
+98 435 724
+634 723 725
+310 851 867
+474 699 824
+83 302 427
+438 496 532
+417 477 708
+229 605 751
+172 310 801
+50 569 781
+123 359 374
+6 771 815
+52 417 660
+519 566 591
+194 797 868
+167 194 321
+23 694 774
+632 716 764
+139 672 801
+409 483 736
+59 506 705
+352 482 779
+421 443 562
+84 460 819
+340 728 785
+118 743 832
+251 594 803
+506 601 685
+312 365 367
+117 249 320
+10 519 521
+91 435 604
+150 397 708
+367 419 464
+214 677 727
+80 509 627
+567 707 894
+328 548 612
+628 712 809
+211 685 795
+317 714 845
+214 325 706
+381 397 881
+549 571 732
+196 742 849
+110 315 344
+231 298 711
+57 783 786
+265 777 812
+114 462 645
+490 743 894
+204 559 739
+23 558 815
+399 480 896
+591 838 856
+709 839
+80 623 747
+55 386 535
+135 672 809
+109 629 782
+43 274 855
+643 711 741
+69 715 734
+96 432 522
+741 752 779
+23 332 577
+73 268 659
+402 761 774
+332 444 661
+69 391 486
+221 576 727
+158 522 855
+273 787 884
+122 633 738
+185 477 715
+222 358 562
+279 514 601
+414 713 758
+245 326 399
+440 530 552
+387 580 688
+257 478 587
+616 770 827
+307 375 831
+115 542 681
+423 456 642
+491 526 679
+363 381 459
+287 473 718
+46 588 703
+102 659 771
+166 558 686
+228 679 800
+59 232 238
+684 701 711
+394 549 798
+299 804 816
+136 641 654
+9 674 778
+226 503 827
+746 773 824
+228 382 487
+133 358 479
+415 429 854
+206 566 600
+70 846 858
+287 740 830
+512 527 589
+214 298 820
+392 608 784
+470 590 641
+91 807 867
+339 487 721
+152 394 571
+391 609 786
+534 566 801
+378 549 587
+389 437 866
+371 470 483
+348 488 505
+384 441 730
+555 575 681
+160 714 736
+121 350 724
+624 709 869
+293 476 716
+168 604 819
+528 737 843
+472 690 836
+316 502 604
+367 732 858
+576 709 857
+103 231 542
+86 712 796
+404 635 696
+237 362 558
+322 680 829
+518 682 758
+61 668 855
+485 705 894
+385 693 816
+181 533 742
+658 776 893
+305 392 653
+157 669 856
+264 600 657
+61 408 503
+291 501 671
+354 640 815
+775 859 860
+381 413 780
+148 695 762
+123 383 530
+351 403 755
+90 599 759
+717 831 840
+89 824 843
+308 612 737
+82 273 309
+644 690 706
+563 785 827
+8 770 847
+450 756 885
+303 698 775
+157 628 637
+521 690 839
+281 451 513
+394 448 785
+226 634 867
+294 371 809
+402 428 651
+606 681 868
+660 725 728
+299 607 628
+33 712 739
+172 702 835
+101 479 715
+163 485 508
+364 373 497
+502 533 698
+661 825 826
+303 424 627
+412 730 892
+303 353 767
+328 516 665
+219 714 837
+260 839 848
+235 640 808
+170 364 396
+667 734 773
+422 673 686
+426 538 606
+235 610 829
+230 505 648
+283 465 560
+326 587 710
+329 568 607
+270 309 410
+694 763 870
+376 519 696
+428 581 761
+436 571 626
+376 632 846
+107 377 712
+346 483 528
+74 267 706
+580 607 643
+258 444 490
+355 658 857
+108 507 741
+324 783 845
+437 769 804
+557 677 683
+705 730 738
+684 750 873
+55 434 469
+193 500 829
+28 667 742
+461 529 822
+399 764 832
+433 803 840
+166 528 550
+410 525 749
+426 830 834
+255 453 525
+49 244 288
+113 226 238
+149 689 731
+484 490 834
+129 587 851
+318 493 721
+243 521 581
+223 353 354
+292 518 736
+503 662 858
+322 663 807
+180 683 740
+330 452 499
+128 794 840
+80 402 815
+454 544 620
+136 612 703
+408 418 486
+400 506 650
+494 565 817
+290 595 825
+283 794 857
+150 545 699
+75 568 731
+180 748 866
+392 684 792
+497 808 844
+101 233 280
+448 466 547
+314 360 584
+479 651 656
+119 812 842
+498 554 722
+195 505 591
+155 330 723
+229 366 808
+477 747 838
+531 749 814
+231 773 853
+61 253 299
+239 559 709
+401 494 675
+3 623 704
+287 442 603
+279 545 556
+539 614 818
+331 463 834
+36 625 772
+344 710 862
+671 821 850
+517 570 749
+732 747 800
+698 765 890
+696 732 864
+222 329 716
+117 192 280
+382 804 811
+280 768 793
+287 432 635
+64 582 621
+431 529 711
+186 793 822
+511 583 659
+296 794 800
+423 740 858
+471 541 555
+322 504 638
+531 806 865
+406 579 662
+183 605 787
+524 634 878
+277 467 708
+345 593 858
+790 793 870
+683 769 785
+498 746 856
+684 830 852
+22 490 865
+161 789 799
+29 325 616
+536 803 842
+385 484 518
+212 458 574
+758 805 837
+241 430 461
+252 592 651
+513 836 850
+516 622 673
+363 445 797
+163 487 844
+325 512 835
+761 835 850
+377 535 726
+291 647 772
+100 487 554
+246 362 638
+636 732 735
+349 713 786
+245 389 636
+398 566 669
+517 583 813
+220 536 691
+90 828 853
+389 744 748
+295 664 757
+145 721 840
+512 542 783
+198 284 415
+763 825 841
+334 478 818
+356 486 543
+670 753 848
+499 586 741
+729 826
+467 771 805
+33 426 567
+439 495 571
+621 657 675
+87 539 613
+492 556 569
+398 450 456
+105 557 610
+172 720 842
+92 807 846
+209 594 750
+337 625 874
+602 845 867
+608 616 736
+283 539 726
+96 457 521
+247 724 851
+410 489 533
+356 792 817
+336 630 647
+131 720 725
+480 802 822
+132 564 613
+223 781 818
+340 741 799
+378 726 753
+109 694 707
+664 731 891
+327 669 820
+38 250 459
+165 401 760
+361 379 632
+156 464 523
+565 715 865
+99 446 592
+457 838 843
+247 496 631
+42 498 544
+229 590 793
+103 551 862
+264 630 841
+378 452 864
+761 812 868
+46 670 807
+124 630 855
+683 786 808
+192 529 701
+688 718 803
+315 446 555
+666 821 837
+13 546 577
+24 485 626
+253 534 553
+449 612 755
+468 597 612
+35 573 626
+500 636 751
+324 380 537
+519 798 831
+60 744 805
+166 201 806
+192 614 666
+431 447 750
+420 666 879
+61 481 604
+43 607 847
+481 705 753
+302 485 666
+596 762 783
+174 708 749
+377 671 694
+426 688 756
+241 636 831
+240 469 552
+342 371 534
+416 629 865
+21 368 588
+445 502 752
+183 768 849
+429 494 765
+79 538 755
+726 774 863
+1 576 597
+265 673 828
+805 809 890
+115 352 813
+252 411 425
+455 640 686
+9 428 701
+135 733 766
+187 833 836
+441 745 766
+287 650 847
+481 639 838
+294 648 879
+262 701 814
+180 654 861
+343 598 823
+162 418 537
+333 508 887
+530 767 799
+58 550 637
+277 645 677
+524 546 743
+587 778 869
+486 572 877
+116 361 822
+727 813 873
+275 333 460
+401 644 790
+410 491 791
+170 769 789
+23 369 526
+284 328 596
+107 230 659
+134 642 820
+733 743 758
+181 411 606
+547 760 833
+141 642 828
+798 848 852
+635 719 853
+475 578 654
+146 341 390
+15 414 817
+472 716 778
+314 317 875
+140 538 775
+95 347 506
+308 368 470
+220 685 779
+176 344 667
+411 695 793
+336 590 787
+149 658 789
+205 816 821
+652 720 722
+247 623 823
+355 361 375
+519 580 596
+359 420 700
+348 409 584
+87 797 855
+65 223 750
+97 634 745
+53 276 705
+567 667 888
+17 554 804
+384 448 454
+173 547 767
+421 469 663
+327 363 438
+414 464 525
+141 548 617
+312 786 861
+172 770 799
+67 393 501
+338 471 819
+93 433 643
+331 529 563
+105 462 725
+454 551 700
+387 643 747
+370 619 631
+16 687 728
+169 434 766
+453 691 760
+28 314 333
+351 481 864
+311 386 709
+258 486 702
+268 404 670
+118 389 450
+232 724 810
+493 599 606
+225 722 731
+682 836 870
+524 861 866
+240 625 857
+428 578 894
+114 353 682
+1 4 140 582 1223 1702
+2 40 122 130 304 405
+3 247 300 750 1113 1548
+4 18 78 144 209 1047
+5 12 19 34 433 463
+6 7 21 44 216 1292
+7 13 75 94 120 248
+8 9 100 200 718 1442
+9 41 339 1259 1379 1708
+10 11 46 61 509 1311
+11 30 82 385 672 699
+12 15 16 218 255 515
+13 335 344 466 647 1670
+14 15 107 170 217 725
+15 33 529 946 1228 1744
+16 194 278 321 1269 1784
+17 18 279 770 985 1767
+18 38 50 52 124 211
+19 56 68 91 110 306
+20 45 546 657 747 1253
+21 55 327 937 1241 1696
+22 23 24 411 560 1583
+23 690 1297 1333 1346 1732
+24 54 723 932 1008 1671
+25 26 29 272 355 520
+26 27 29 66 126 1203
+27 28 128 213 236 412
+28 139 510 1087 1498 1787
+29 31 36 43 51 1585
+30 31 57 63 127 169
+31 34 37 106 135 428
+32 171 231 264 354 967
+33 183 382 1260 1455 1621
+34 35 37 85 622 1118
+35 36 47 77 495 1675
+36 39 111 585 801 1553
+37 38 60 155 202 214
+38 164 206 973 1082 1649
+39 185 486 831 915 1137
+40 76 101 261 319 477
+41 42 238 389 441 979
+42 49 158 927 1063 1657
+43 364 671 928 1341 1685
+44 188 295 366 528 1123
+45 46 65 195 800 827
+46 102 1134 1268 1370 1663
+47 73 83 197 500 1239
+48 49 50 104 112 150
+49 336 642 656 698 1506
+50 51 193 243 768 1290
+51 52 54 81 253 944
+52 53 118 186 445 1293
+53 109 143 737 1155 1765
+54 55 57 324 755 996
+55 56 58 490 1338 1496
+56 353 401 570 697 1056
+57 80 136 178 292 1328
+58 59 60 538 558 1721
+59 62 67 607 1301 1374
+60 61 66 192 451 1679
+61 530 1419 1427 1545 1684
+62 63 415 424 740 1147
+63 64 72 176 250 574
+64 65 68 239 1266 1565
+65 198 547 713 1211 1763
+66 149 179 210 443 681
+67 70 123 148 1248 1776
+68 69 151 156 376 880
+69 461 465 1219 1343 1350
+70 71 75 263 833 1386
+71 180 257 343 808 990
+72 73 74 505 847 1032
+73 103 113 232 357 1347
+74 87 121 199 207 1486
+75 163 491 921 1237 1529
+76 175 296 503 599 1048
+77 98 119 132 167 575
+78 79 97 556 564 956
+79 80 249 262 630 1700
+80 886 910 1316 1337 1520
+81 82 84 93 329 1276
+82 85 105 166 393 1439
+83 86 275 307 899 1285
+84 251 566 724 729 1304
+85 95 634 660 1189 1242
+86 87 598 676 778 1414
+87 90 1002 1046 1624 1762
+88 89 228 352 456 1139
+89 91 242 270 330 1437
+90 92 286 1215 1435 1608
+91 93 904 1030 1312 1392
+92 94 346 474 1133 1629
+93 95 97 325 1213 1778
+94 98 191 395 416 658
+95 96 222 301 777 1748
+96 137 572 989 1344 1635
+97 117 654 781 876 1764
+98 99 370 828 898 1281
+99 644 763 1120 1220 1654
+100 138 230 448 457 1600
+101 102 103 1052 1457 1533
+102 114 245 293 470 1371
+103 104 105 153 1413 1659
+104 106 107 161 374 498
+105 108 341 579 1627 1780
+106 160 189 203 372 406
+107 108 109 168 1484 1734
+108 125 137 310 878 1490
+109 110 739 1252 1340 1646
+110 111 152 277 604 1326
+111 112 117 652 856 1264
+112 113 240 581 916 1256
+113 114 115 145 950 1507
+114 141 421 871 1330 1800
+115 116 981 1175 1365 1705
+116 120 123 468 1162 1726
+117 118 124 129 1310 1561
+118 119 182 614 1306 1792
+119 121 282 752 1244 1537
+120 122 281 312 613 984
+121 154 204 586 1022 1404
+122 125 127 187 287 1354
+123 128 233 1267 1291 1433
+124 130 159 289 399 1664
+125 126 140 288 337 924
+126 134 309 587 734 1038
+127 132 138 181 321 818
+128 133 885 889 1090 1519
+129 165 173 422 1042 1510
+130 131 577 888 894 1057
+131 142 483 835 922 1640
+132 136 511 881 954 1642
+133 135 224 550 901 1383
+134 240 487 489 1098 1735
+135 146 661 743 1339 1709
+136 144 258 959 1378 1522
+137 139 145 375 504 1181
+138 141 201 426 792 1050
+139 369 409 846 1172 1299
+140 150 684 892 991 1747
+141 172 417 479 1739 1773
+142 143 190 471 1026 1143
+143 159 170 356 525 744
+144 147 153 163 930 1010
+145 155 363 441 473 1611
+146 148 157 635 804 1743
+147 407 629 682 925 1258
+148 149 152 333 982 1432
+149 151 223 533 1508 1754
+150 208 1073 1100 1313 1528
+151 154 156 244 568 605
+152 161 394 963 1238 1394
+153 160 164 256 413 1071
+154 158 167 350 597 868
+155 157 299 390 402 1540
+156 189 294 303 323 1652
+157 166 202 414 1425 1445
+158 182 220 484 592 1352
+159 184 273 281 361 387
+160 162 175 177 221 1403
+161 190 732 934 976 1584
+162 165 425 496 563 1718
+163 174 194 610 1458 1595
+164 178 233 402 717 1270
+165 168 183 1150 1204 1650
+166 169 210 1372 1502 1680
+167 241 365 475 780 1296
+168 176 180 872 1265 1407
+169 314 649 1012 1074 1785
+170 171 497 855 1469 1731
+171 173 200 507 555 1191
+172 384 1289 1456 1628 1775
+173 177 199 535 987 1769
+174 191 198 514 1205 1689
+175 271 485 596 688 1014
+176 188 331 388 1104 1751
+177 179 186 648 841 1086
+178 187 196 228 267 391
+179 181 266 332 569 571
+180 211 227 1517 1530 1716
+181 347 590 739 1422 1737
+182 207 212 235 583 701
+183 185 1229 1243 1575 1698
+184 238 260 459 986 1054
+185 213 219 371 1247 1355
+186 227 302 539 638 1567
+187 195 206 237 453 1710
+188 192 197 208 218 1257
+189 193 204 244 303 319
+190 229 526 788 878 971
+191 252 265 283 736 816
+192 229 1061 1561 1666 1681
+193 276 543 931 1080 1497
+194 291 302 994 1295 1296
+195 221 297 859 1126 1539
+196 219 242 291 751 1325
+197 203 217 282 708 951
+198 224 318 320 940 1613
+199 214 236 626 923 1275
+200 201 220 258 508 595
+201 248 773 784 1040 1680
+202 205 385 519 600 1272
+203 216 334 360 774 810
+204 235 286 706 843 1332
+205 215 226 386 417 1755
+206 268 586 1029 1119 1385
+207 209 225 232 341 342
+208 222 317 501 906 1193
+209 239 259 412 1128 1630
+210 226 243 696 1105 1199
+211 212 230 268 641 1320
+212 223 252 573 632 1588
+213 352 472 870 1136 1225
+214 306 1067 1315 1322 1389
+215 231 272 298 311 1178
+216 250 290 380 512 662
+217 271 280 653 920 1218
+218 344 448 531 940 965
+219 431 617 938 1135 1466
+220 274 807 1010 1607 1750
+221 262 353 689 887 1351
+222 275 396 584 1356 1560
+223 249 444 1513 1643 1763
+224 247 299 561 602 809
+225 255 323 960 1246 1795
+226 1027 1262 1380 1449 1507
+227 260 329 347 522 896
+228 340 356 945 1373 1382
+229 459 1208 1288 1541 1658
+230 263 726 1082 1474 1734
+231 237 1240 1327 1413 1544
+232 427 745 1269 1374 1793
+233 234 462 882 976 1533
+234 245 287 322 339 1053
+235 273 375 769 1468 1473
+236 308 435 620 1084 1271
+237 241 276 642 861 1416
+238 246 251 403 1374 1507
+239 502 1031 1036 1112 1546
+240 313 639 700 1693 1798
+241 678 687 857 1590 1692
+242 264 307 911 1081 1183
+243 257 261 580 1015 1512
+244 246 483 1001 1140 1506
+245 265 296 446 1359 1604
+246 510 537 1045 1221 1601
+247 253 325 1636 1656 1757
+248 254 289 458 1076 1111
+249 256 1069 1207 1213 1310
+250 274 351 381 1078 1649
+251 300 423 466 719 1307
+252 259 331 913 1591 1706
+253 266 279 1217 1545 1672
+254 267 269 637 823 1236
+255 334 548 900 1188 1505
+256 348 349 366 407 419
+257 542 1010 1146 1177 1362
+258 311 390 1035 1488 1790
+259 342 348 994 1097 1214
+260 293 297 492 1043 1467
+261 418 601 677 1036 1276
+262 284 437 780 867 1715
+263 288 362 364 941 1156
+264 450 639 1218 1426 1660
+265 280 373 1218 1329 1703
+266 284 315 395 438 549
+267 314 926 1070 1168 1486
+268 277 475 587 1347 1791
+269 270 312 553 578 1152
+270 309 449 550 1199 1478
+271 292 437 452 884 1160
+272 278 408 432 436 1193
+273 608 912 1105 1353 1439
+274 338 709 790 1166 1341
+275 545 594 786 1235 1728
+276 338 405 454 663 1765
+277 501 645 1266 1577 1722
+278 324 384 529 565 837
+279 285 675 802 1357 1550
+280 295 524 1533 1561 1563
+281 444 463 1021 1261 1447
+282 378 615 839 968 970
+283 358 506 1475 1527 1634
+284 419 703 1103 1613 1733
+285 290 294 371 791 1278
+286 332 420 429 966 976
+287 1369 1387 1549 1564 1712
+288 376 469 705 1176 1506
+289 456 534 823 1130 1214
+290 337 374 432 474 1526
+291 357 826 1184 1428 1599
+292 298 377 381 1260 1514
+293 304 310 316 425 1406
+294 346 685 1197 1450 1714
+295 308 316 521 939 1610
+296 330 894 947 1234 1569
+297 301 452 996 1017 1217
+298 343 439 764 1327 1389
+299 320 517 1377 1454 1545
+300 335 409 430 664 1227
+301 392 457 497 761 1203
+302 305 1104 1257 1285 1687
+303 585 795 1444 1462 1464
+304 315 620 646 696 1113
+305 318 383 613 738 1424
+306 328 394 525 942 1214
+307 370 558 936 1195 1364
+308 988 1041 1219 1438 1749
+309 948 1138 1250 1439 1478
+310 322 710 737 1283 1289
+311 633 760 811 1198 1789
+312 333 506 680 1309 1774
+313 406 468 570 682 1221
+314 363 367 1535 1746 1787
+315 317 328 836 1326 1668
+316 350 413 526 659 1410
+317 336 449 941 1321 1746
+318 955 1088 1206 1245 1511
+319 326 362 400 860 1106
+320 915 1017 1117 1194 1310
+321 414 451 917 1249 1296
+322 941 995 1417 1516 1572
+323 431 434 464 818 1092
+324 345 360 421 1491 1677
+325 327 359 1322 1585 1596
+326 355 372 746 1359 1476
+327 628 730 875 1648 1771
+328 443 1176 1318 1465 1733
+329 392 1161 1198 1477 1560
+330 391 935 1230 1518 1540
+331 354 544 803 1552 1779
+332 508 522 940 1346 1349
+333 368 460 1719 1728 1787
+334 386 462 488 521 1615
+335 349 351 397 447 469
+336 396 467 1264 1639 1753
+337 379 427 440 507 1631
+338 404 854 894 1029 1777
+339 383 567 692 752 1393
+340 398 524 1074 1305 1644
+341 379 633 753 1222 1743
+342 482 805 820 962 1694
+343 503 714 720 849 1717
+344 998 1230 1326 1554 1751
+345 504 565 593 1099 1578
+346 404 623 683 1250 1485
+347 368 601 1020 1205 1748
+348 361 716 1053 1400 1761
+349 654 676 944 953 1603
+350 418 948 1031 1047 1404
+351 455 549 895 1434 1788
+352 827 850 1176 1302 1705
+353 388 572 1464 1513 1800
+354 369 477 1064 1429 1513
+355 373 481 1259 1489 1758
+356 445 518 1101 1616 1638
+357 519 618 762 1131 1213
+358 365 387 765 1356 1383
+359 446 464 1009 1291 1760
+360 461 873 1007 1045 1535
+361 450 536 1651 1726 1758
+362 433 751 759 1416 1601
+363 576 1274 1368 1594 1771
+364 611 1185 1249 1459 1469
+365 422 438 934 942 1309
+366 617 787 975 1066 1541
+367 547 906 1309 1314 1411
+368 447 540 796 1696 1749
+369 540 952 1004 1080 1732
+370 403 420 772 1240 1783
+371 377 382 1399 1450 1694
+372 502 505 538 715 1080
+373 484 589 591 1188 1459
+374 767 815 973 1264 1291
+375 401 1081 1236 1364 1758
+376 430 488 1202 1480 1483
+377 380 589 1484 1598 1690
+378 1023 1107 1397 1645 1661
+379 389 774 999 1016 1651
+380 465 513 609 791 1677
+381 398 494 1323 1368 1431
+382 399 518 824 1382 1562
+383 393 408 666 1129 1433
+384 439 492 669 1401 1768
+385 416 491 783 1421 1587
+386 741 878 913 1338 1789
+387 470 1011 1253 1361 1782
+388 429 454 515 516 552
+389 440 1398 1604 1609 1792
+390 397 523 1022 1076 1743
+391 487 564 1132 1350 1395
+392 992 997 1390 1424 1531
+393 541 667 782 1049 1776
+394 768 958 1376 1394 1448
+395 415 476 961 1109 1155
+396 513 848 1085 1151 1469
+397 424 678 1090 1313 1323
+398 458 1140 1149 1605 1626
+399 472 776 1334 1359 1500
+400 498 652 770 1246 1524
+401 624 1173 1547 1650 1729
+402 442 706 1348 1451 1520
+403 435 480 914 1179 1434
+404 428 762 1182 1415 1791
+405 411 605 670 1038 1204
+406 636 733 909 1058 1574
+407 614 619 1002 1045 1148
+408 728 748 1136 1427 1523
+409 410 442 1127 1300 1761
+410 966 1478 1503 1637 1730
+411 610 920 1706 1737 1752
+412 485 658 775 900 1463
+413 455 500 981 1003 1431
+414 875 1082 1358 1744 1772
+415 423 627 1037 1384 1613
+416 539 679 1108 1254 1695
+417 545 552 1230 1287 1293
+418 621 640 897 1523 1718
+419 496 592 648 1119 1314
+420 494 625 1251 1683 1760
+421 481 630 936 1303 1770
+422 436 471 1016 1243 1471
+423 691 969 1125 1366 1570
+424 426 824 958 1053 1462
+425 766 822 883 1280 1706
+426 874 1472 1504 1621 1691
+427 467 575 731 1046 1285
+428 583 1451 1481 1708 1799
+429 593 851 951 1384 1699
+430 499 666 1256 1261 1590
+431 543 786 1192 1566 1682
+432 561 664 1122 1344 1564
+433 1076 1274 1279 1501 1778
+434 534 987 1064 1496 1785
+435 473 905 1084 1281 1312
+436 478 523 631 724 1482
+437 520 532 923 1398 1492
+438 563 1050 1260 1286 1771
+439 453 493 792 809 1622
+440 530 618 876 937 1360
+441 460 915 1060 1401 1711
+442 719 1112 1175 1184 1549
+443 710 765 879 1173 1303
+444 668 1170 1238 1349 1488
+445 527 568 819 1594 1697
+446 482 799 1140 1654 1668
+447 969 1118 1254 1255 1682
+448 720 1197 1448 1534 1768
+449 490 595 665 704 1673
+450 996 1130 1443 1626 1792
+451 608 723 1143 1212 1447
+452 638 711 1219 1518 1661
+453 747 1132 1167 1505 1786
+454 844 1033 1521 1768 1781
+455 495 650 681 1039 1707
+456 486 535 890 1366 1626
+457 852 980 1276 1635 1655
+458 602 909 934 1228 1588
+459 574 615 1136 1368 1649
+460 571 905 1188 1304 1728
+461 794 1130 1253 1499 1590
+462 808 951 984 1330 1780
+463 800 977 1154 1172 1552
+464 591 1094 1314 1652 1772
+465 493 1020 1146 1200 1475
+466 603 1220 1226 1239 1534
+467 754 916 1178 1577 1620
+468 729 917 987 1210 1674
+469 643 1021 1496 1693 1770
+470 722 960 1391 1399 1749
+471 1144 1189 1278 1571 1777
+472 657 1129 1232 1409 1745
+473 557 691 1061 1217 1369
+474 478 509 511 983 1284
+475 864 889 1055 1122 1742
+476 479 544 1001 1267 1406
+477 489 1105 1287 1355 1542
+478 1024 1129 1146 1362 1615
+479 1151 1269 1383 1457 1536
+480 625 1093 1139 1334 1641
+481 727 1684 1686 1713 1788
+482 537 584 1186 1197 1302
+483 499 528 1300 1399 1485
+484 776 1063 1148 1509 1587
+485 1127 1420 1458 1671 1687
+486 1350 1523 1616 1725 1790
+487 674 1382 1393 1595 1600
+488 579 645 974 1171 1400
+489 548 656 942 1137 1637
+490 663 1331 1488 1509 1583
+491 514 668 1052 1367 1730
+492 744 875 1092 1210 1625
+493 911 912 1246 1511 1794
+494 1208 1254 1525 1547 1699
+495 588 1050 1139 1168 1622
+496 566 968 1174 1286 1656
+497 554 1096 1277 1459 1532
+498 581 1054 1538 1581 1657
+499 516 1056 1237 1518 1618
+500 569 847 1158 1497 1676
+501 512 626 1250 1428 1776
+502 753 797 1410 1460 1697
+503 680 779 1380 1427 1515
+504 721 993 1066 1073 1572
+505 806 957 1400 1474 1539
+506 973 1301 1308 1524 1748
+507 611 1032 1040 1103 1490
+508 582 721 1003 1458 1719
+509 562 588 728 975 1316
+510 871 1012 1128 1157 1263
+511 541 590 1070 1172 1568
+512 880 1138 1388 1596 1612
+513 651 1079 1275 1447 1592
+514 517 553 1068 1244 1357
+515 616 635 907 963 1061
+516 536 1155 1207 1465 1593
+517 825 891 1150 1556 1606
+518 527 604 1418 1514 1587
+519 1294 1311 1480 1678 1759
+520 707 960 1051 1134 1208
+521 901 1311 1446 1512 1635
+522 712 904 1200 1344 1352
+523 559 699 893 1028 1652
+524 546 692 1576 1723 1797
+525 551 1206 1503 1505 1772
+526 531 628 856 1367 1732
+527 646 781 820 1194 1388
+528 649 927 1408 1485 1502
+529 749 1499 1566 1666 1779
+530 597 1225 1360 1433 1720
+531 643 767 1226 1543 1573
+532 533 755 909 1206 1286
+533 557 843 1422 1460 1637
+534 1040 1125 1396 1672 1694
+535 560 580 1133 1338 1598
+536 573 603 1014 1586 1607
+537 756 1009 1233 1677 1718
+538 863 1021 1472 1700 1747
+539 718 950 1551 1624 1634
+540 577 890 1008 1056 1120
+541 555 616 989 1154 1571
+542 567 1005 1365 1413 1612
+543 811 1068 1095 1161 1616
+544 997 1048 1142 1521 1657
+545 771 1084 1262 1528 1550
+546 551 1025 1178 1670 1723
+547 556 918 1534 1738 1769
+548 606 735 986 1318 1773
+549 865 1087 1324 1376 1397
+550 705 945 1143 1502 1721
+551 1114 1190 1192 1659 1781
+552 874 948 1196 1360 1693
+553 576 1072 1101 1165 1672
+554 578 1120 1538 1600 1767
+555 599 914 1402 1571 1668
+556 684 837 898 1550 1625
+557 559 922 1194 1493 1627
+558 1182 1195 1333 1372 1416
+559 637 736 1256 1332 1546
+560 665 984 1125 1223 1475
+561 607 732 925 1089 1245
+562 661 1173 1177 1303 1356
+563 594 659 1272 1441 1779
+564 641 650 961 993 1642
+565 715 870 921 1525 1653
+566 1118 1294 1385 1396 1605
+567 754 979 1317 1621 1766
+568 674 962 1096 1477 1529
+569 801 920 1141 1290 1625
+570 711 829 1083 1094 1556
+571 1121 1324 1394 1482 1622
+572 606 701 1027 1187 1725
+573 632 655 700 734 1675
+574 845 995 998 1224 1588
+575 741 782 983 1017 1402
+576 693 947 1351 1412 1702
+577 669 1005 1048 1346 1670
+578 689 690 1180 1742 1799
+579 622 953 1073 1174 1574
+580 612 758 1361 1487 1759
+581 957 1038 1116 1481 1512
+582 596 647 866 1195 1565
+583 1113 1177 1257 1568 1606
+584 1060 1097 1153 1535 1761
+585 866 908 912 1184 1277
+586 609 703 1063 1144 1618
+587 1362 1397 1476 1510 1724
+588 704 839 1138 1370 1696
+589 631 695 804 1047 1388
+590 911 1187 1391 1658 1753
+591 794 902 1294 1335 1539
+592 600 727 1135 1591 1654
+593 971 1036 1067 1204 1578
+594 624 733 997 1307 1630
+595 598 621 953 992 1526
+596 896 1275 1688 1733 1759
+597 686 924 1211 1674 1702
+598 634 887 979 1162 1717
+599 763 902 992 1435 1794
+600 775 1057 1088 1385 1426
+601 958 1012 1248 1308 1357
+602 651 713 1110 1134 1632
+603 636 677 850 1067 1549
+604 927 1312 1407 1410 1684
+605 675 900 1270 1288 1575
+606 910 1452 1472 1737 1794
+607 1175 1454 1477 1487 1685
+608 1070 1145 1163 1390 1633
+609 967 981 1015 1069 1395
+610 903 975 1185 1473 1627
+611 619 623 698 825 963
+612 1318 1438 1522 1673 1674
+613 627 881 1116 1624 1642
+614 735 955 1108 1551 1681
+615 686 849 897 949 1280
+616 629 939 1363 1585 1633
+617 683 745 1095 1174 1773
+618 662 688 854 995 1233
+619 885 919 1096 1153 1783
+620 694 816 1071 1128 1521
+621 790 890 1224 1565 1623
+622 644 742 1019 1273 1593
+623 882 903 1337 1548 1757
+624 640 772 1092 1095 1405
+625 660 766 1553 1631 1798
+626 709 1161 1482 1671 1675
+627 881 1166 1251 1316 1462
+628 966 1110 1319 1445 1454
+629 761 990 1232 1340 1695
+630 697 1064 1639 1660 1664
+631 1020 1126 1263 1656 1783
+632 1104 1159 1298 1483 1651
+633 714 945 1042 1239 1354
+634 1098 1282 1449 1576 1764
+635 964 1151 1415 1564 1741
+636 793 1602 1604 1676 1692
+637 712 1157 1249 1445 1721
+638 873 1034 1152 1572 1601
+639 921 1023 1094 1171 1713
+640 873 1103 1429 1468 1707
+641 764 1149 1163 1378 1391
+642 952 1235 1366 1735 1739
+643 841 1342 1487 1778 1782
+644 655 750 1215 1440 1729
+645 671 931 1191 1330 1722
+646 673 1035 1089 1114 1115
+647 1060 1090 1262 1599 1639
+648 726 864 874 1474 1714
+649 783 1016 1065 1078 1111
+650 803 957 1247 1524 1712
+651 798 1247 1451 1536 1591
+652 653 679 994 1069 1756
+653 869 988 1030 1032 1424
+654 673 685 1378 1716 1742
+655 891 1025 1089 1158 1200
+656 830 1009 1220 1227 1536
+657 667 1071 1154 1426 1623
+658 879 1240 1423 1489 1754
+659 871 1347 1371 1568 1734
+660 937 1102 1272 1293 1453
+661 740 743 1160 1349 1461
+662 924 1229 1233 1515 1574
+663 892 962 977 1516 1770
+664 967 1059 1088 1610 1647
+665 1166 1167 1186 1238 1465
+666 694 1669 1681 1683 1687
+667 1142 1470 1498 1751 1766
+668 819 844 965 986 1419
+669 672 959 1425 1605 1648
+670 1051 1087 1617 1663 1791
+671 702 813 1428 1555 1690
+672 769 779 1159 1299 1339
+673 902 1141 1471 1593 1703
+674 845 1001 1018 1225 1379
+675 687 758 1203 1547 1623
+676 708 757 1044 1093 1109
+677 1150 1181 1315 1493 1722
+678 862 1124 1162 1190 1258
+679 964 1109 1221 1367 1373
+680 693 883 972 1183 1417
+681 1037 1201 1365 1402 1452
+682 756 1004 1418 1796 1800
+683 1019 1493 1517 1580 1665
+684 908 1375 1495 1531 1582
+685 1024 1147 1308 1320 1750
+686 810 1261 1372 1471 1707
+687 695 789 896 1244 1784
+688 982 1059 1361 1667 1691
+689 707 778 892 938 1508
+690 1147 1237 1409 1440 1446
+691 1018 1158 1270 1607 1786
+692 716 746 812 929 1086
+693 872 982 1187 1201 1421
+694 834 1297 1479 1646 1690
+695 702 1007 1170 1432 1752
+696 867 1124 1415 1480 1559
+697 760 853 879 983 1273
+698 1077 1277 1444 1460 1558
+699 717 738 1167 1284 1528
+700 806 1028 1054 1760 1781
+701 1051 1375 1666 1708 1715
+702 784 787 846 1456 1790
+703 888 1013 1115 1370 1522
+704 749 757 835 1085 1548
+705 1301 1420 1494 1686 1765
+706 730 833 1322 1440 1486
+707 817 877 1013 1317 1646
+708 959 1287 1313 1577 1689
+709 1336 1405 1412 1546 1789
+710 885 1058 1226 1476 1554
+711 796 1327 1342 1375 1566
+712 1024 1319 1414 1455 1484
+713 759 993 1102 1358 1603
+714 1179 1212 1321 1403 1466
+715 1074 1343 1355 1457 1653
+716 1185 1298 1406 1560 1745
+717 797 933 1152 1186 1436
+718 771 971 1099 1369 1667
+719 725 883 910 1013 1741
+720 722 906 1628 1640 1756
+721 926 977 1393 1511 1611
+722 933 1198 1538 1756 1795
+723 872 1075 1078 1282 1540
+724 1263 1281 1404 1636 1793
+725 1142 1282 1453 1640 1780
+726 1079 1598 1634 1645 1701
+727 989 1015 1315 1351 1727
+728 777 785 1305 1453 1784
+729 899 1133 1168 1224 1619
+730 1099 1164 1401 1463 1494
+731 1228 1508 1529 1647 1795
+732 1324 1411 1557 1559 1602
+733 893 919 1046 1709 1736
+734 884 1091 1160 1343 1470
+735 748 1030 1164 1170 1602
+736 882 1300 1403 1514 1633
+737 1000 1196 1248 1408 1438
+738 817 899 914 1354 1494
+739 863 886 1144 1332 1455
+740 1135 1209 1387 1517 1570
+741 1342 1345 1490 1618 1644
+742 1014 1106 1325 1422 1498
+743 857 1306 1331 1723 1736
+744 869 947 1216 1609 1679
+745 930 1085 1229 1711 1764
+746 802 832 1004 1381 1581
+747 1011 1337 1542 1557 1782
+748 1031 1042 1223 1530 1609
+749 1141 1503 1543 1556 1689
+750 929 1495 1630 1682 1763
+751 877 999 1086 1288 1676
+752 1025 1153 1182 1345 1697
+753 840 1027 1617 1645 1686
+754 798 848 929 1043 1235
+755 908 1037 1434 1673 1700
+756 859 944 1255 1443 1691
+757 821 1111 1127 1190 1610
+758 793 1358 1418 1589 1736
+759 807 907 1222 1245 1435
+760 1039 1116 1650 1738 1786
+761 795 1348 1481 1597 1662
+762 1107 1251 1267 1432 1688
+763 1072 1132 1211 1479 1614
+764 904 998 1137 1298 1500
+765 789 988 1115 1558 1699
+766 832 938 1709 1711 1785
+767 1112 1279 1464 1720 1769
+768 838 917 1180 1563 1698
+769 1006 1193 1492 1580 1731
+770 916 1169 1363 1442 1775
+771 954 1059 1292 1371 1620
+772 773 888 1252 1553 1599
+773 965 1098 1381 1470 1544
+774 1123 1202 1297 1348 1701
+775 1008 1097 1430 1444 1747
+776 788 812 1169 1192 1423
+777 828 840 1029 1114 1329
+778 785 1068 1379 1724 1745
+779 946 1117 1302 1345 1750
+780 815 1157 1159 1255 1431
+781 897 972 1164 1290 1643
+782 956 1131 1271 1278 1340
+783 1202 1328 1491 1612 1688
+784 1018 1026 1049 1189 1390
+785 1007 1305 1441 1448 1580
+786 1328 1395 1603 1665 1774
+787 1207 1234 1353 1575 1753
+788 905 991 1022 1215 1258
+789 853 1180 1584 1731 1754
+790 821 822 858 1579 1729
+791 830 901 1002 1034 1730
+792 799 913 1181 1531 1638
+793 1563 1567 1579 1658 1752
+794 877 956 1519 1527 1569
+795 842 1041 1052 1222 1320
+796 805 919 1055 1201 1414
+797 985 1216 1295 1594 1762
+798 880 970 1376 1678 1740
+799 838 1584 1644 1720 1775
+800 836 1145 1373 1557 1569
+801 1033 1044 1289 1299 1396
+802 876 933 1079 1119 1641
+803 1234 1307 1501 1586 1667
+804 903 1377 1492 1562 1767
+805 814 1589 1620 1679 1704
+806 861 932 1163 1573 1680
+807 980 1392 1516 1629 1663
+808 974 1468 1532 1541 1665
+809 1199 1319 1339 1450 1704
+810 855 923 1075 1165 1793
+811 961 964 1000 1077 1562
+812 1026 1183 1329 1537 1662
+813 925 1149 1606 1705 1727
+814 889 895 943 1543 1715
+815 928 1292 1333 1429 1520
+816 922 991 1377 1421 1755
+817 1043 1083 1525 1638 1744
+818 1058 1268 1551 1615 1643
+819 1121 1266 1304 1407 1777
+820 852 1075 1389 1648 1735
+821 907 1212 1555 1669 1755
+822 931 1499 1567 1641 1726
+823 999 1041 1242 1717 1757
+824 842 1148 1284 1381 1437
+825 831 939 1461 1526 1614
+826 918 968 1091 1461 1619
+827 862 1062 1363 1380 1441
+828 1101 1123 1608 1703 1739
+829 949 1126 1417 1473 1497
+830 895 1265 1387 1504 1582
+831 930 1364 1436 1678 1692
+832 954 1003 1028 1306 1500
+833 891 1108 1156 1710 1738
+834 936 1279 1504 1509 1552
+835 1083 1242 1456 1596 1597
+836 1055 1409 1592 1710 1796
+837 1034 1259 1466 1589 1669
+838 1106 1335 1542 1655 1713
+839 918 974 1336 1446 1467
+840 865 1436 1501 1519 1611
+841 898 1091 1100 1614 1660
+842 884 978 1537 1586 1628
+843 1035 1252 1408 1437 1655
+844 928 985 1062 1532 1595
+845 950 969 1321 1491 1632
+846 886 1121 1386 1483 1629
+847 1019 1231 1442 1685 1712
+848 946 955 1467 1617 1740
+849 932 970 1241 1325 1698
+850 1100 1191 1555 1592 1597
+851 1011 1169 1283 1510 1636
+852 943 1243 1265 1582 1740
+853 1196 1210 1544 1608 1741
+854 860 980 1005 1039 1384
+855 1341 1352 1419 1664 1762
+856 1049 1179 1335 1425 1581
+857 1006 1412 1489 1527 1798
+858 1386 1411 1515 1570 1578
+859 978 1033 1156 1241 1430
+860 868 943 1057 1209 1430
+861 978 1110 1716 1774 1797
+862 893 1077 1209 1554 1659
+863 935 1065 1131 1171 1701
+864 990 1117 1559 1661 1788
+865 1231 1573 1583 1653 1695
+866 1231 1268 1398 1530 1797
+867 926 1283 1392 1449 1632
+868 1065 1271 1295 1452 1662
+869 935 1227 1232 1405 1724
+870 1081 1107 1479 1579 1796
+8 10 28 131 554 1062
+43 48 71 887 1000 1044
+40 41 72 340 1495 1727
+5 17 23 196 972 1631
+44 58 70 858 1274 1746
+30 32 33 69 79 225
+14 62 146 1066 1122 1725
+7 8 283 285 410 1576
+3 22 88 532 1683 1714
+16 17 19 67 174 1273
+47 48 116 162 172 1323
+22 24 254 400 851 949
+2 3 26 305 480 612
+88 90 142 434 1023 1353
+100 269 326 359 1165 1443
+45 53 86 313 358 1124
+1 6 11 20 731 1719
+21 84 99 542 1006 1766
+6 9 64 378 1205 1236
+20 42 59 562 1558 1704
+4 5 10 234 1102 1647
+78 367 1072 1093 1280 1463
+76 77 184 215 670 1423
+81 83 1317 1331 1420 1799
+25 74 89 96 345 1145
+101 115 133 826 829 1334
+12 13 27 32 742 834
+39 92 129 205 476 814
diff --git a/gr-fec/python/fec/qa_fecapi_ldpc.py b/gr-fec/python/fec/qa_fecapi_ldpc.py
new file mode 100644
index 0000000000..e731197952
--- /dev/null
+++ b/gr-fec/python/fec/qa_fecapi_ldpc.py
@@ -0,0 +1,239 @@
+#!/usr/bin/env python
+#
+# Copyright 2014 Free Software Foundation, Inc.
+#
+# This file is part of GNU Radio
+#
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+#
+
+from gnuradio import gr, gr_unittest
+import fec_swig as fec
+from _qa_helper import _qa_helper
+
+from extended_encoder import extended_encoder
+from extended_decoder import extended_decoder
+
+class test_fecapi_ldpc(gr_unittest.TestCase):
+
+ def setUp(self):
+ self.tb = gr.top_block()
+
+ def tearDown(self):
+ self.tb = None
+
+ def test_parallelism0_00(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = fec.ldpc_R_U_encoder_make(LDPC_matrix_object)
+ dec = fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)
+ threading = None
+ self.test = _qa_helper(10*k, enc, dec, threading)
+ self.tb.connect(self.test)
+ self.tb.run()
+
+ data_in = self.test.snk_input.data()
+ data_out =self.test.snk_output.data()
+
+ self.assertEqual(data_in, data_out)
+
+ def test_parallelism0_01(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = fec.ldpc_R_U_encoder_make(LDPC_matrix_object)
+ dec = fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)
+ threading = 'ordinary'
+ self.test = _qa_helper(10*k, enc, dec, threading)
+ self.tb.connect(self.test)
+ self.tb.run()
+
+ data_in = self.test.snk_input.data()
+ data_out =self.test.snk_output.data()
+
+ self.assertEqual(data_in, data_out)
+
+ def test_parallelism0_02(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = fec.ldpc_R_U_encoder_make(LDPC_matrix_object)
+ dec = fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)
+ threading = 'capillary'
+ self.test = _qa_helper(10*k, enc, dec, threading)
+ self.tb.connect(self.test)
+ self.tb.run()
+
+ data_in = self.test.snk_input.data()
+ data_out =self.test.snk_output.data()
+
+ self.assertEqual(data_in, data_out)
+
+
+ def test_parallelism1_00(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,1))
+ dec = map((lambda a: fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)), range(0,1))
+ threading = None
+ self.test = _qa_helper(10*k, enc, dec, threading)
+ self.tb.connect(self.test)
+ self.tb.run()
+
+ data_in = self.test.snk_input.data()
+ data_out =self.test.snk_output.data()
+
+ self.assertEqual(data_in, data_out)
+
+ def test_parallelism1_01(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,1))
+ dec = map((lambda a: fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)), range(0,1))
+ threading = 'ordinary'
+ self.test = _qa_helper(10*k, enc, dec, threading)
+ self.tb.connect(self.test)
+ self.tb.run()
+
+ data_in = self.test.snk_input.data()
+ data_out =self.test.snk_output.data()
+
+ self.assertEqual(data_in, data_out)
+
+ def test_parallelism1_02(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,1))
+ dec = map((lambda a: fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)), range(0,1))
+ threading = 'capillary'
+ self.test = _qa_helper(10*k, enc, dec, threading)
+ self.tb.connect(self.test)
+ self.tb.run()
+
+ data_in = self.test.snk_input.data()
+ data_out =self.test.snk_output.data()
+
+ self.assertEqual(data_in, data_out)
+
+ def test_parallelism1_03(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ dims = 10
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,dims))
+ dec = map((lambda a: fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)), range(0,dims))
+ threading = 'ordinary'
+ self.test = _qa_helper(dims*k, enc, dec, threading)
+ self.tb.connect(self.test)
+ self.tb.run()
+
+ data_in = self.test.snk_input.data()
+ data_out =self.test.snk_output.data()
+
+ self.assertEqual(data_in, data_out)
+
+ def test_parallelism1_04(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ dims = 16
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,dims))
+ dec = map((lambda a: fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)), range(0,dims))
+ threading = 'capillary'
+ self.test = _qa_helper(dims*k, enc, dec, threading)
+ self.tb.connect(self.test)
+ self.tb.run()
+
+ data_in = self.test.snk_input.data()
+ data_out =self.test.snk_output.data()
+
+ self.assertEqual(data_in, data_out)
+
+ def test_parallelism1_05(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ dims = 5
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ enc = map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,dims))
+ # dec = map((lambda a: fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)), range(0,dims))
+ threading = 'capillary'
+ self.assertRaises(AttributeError, lambda: extended_encoder(enc, threading=threading, puncpat="11"))
+
+ def test_parallelism1_06(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ dims = 5
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ # enc = map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,dims))
+ dec = map((lambda a: fec.ldpc_bit_flip_decoder.make(LDPC_matrix_object)), range(0,dims))
+ threading = 'capillary'
+ self.assertRaises(AttributeError, lambda: extended_decoder(dec, threading=threading, puncpat="11"))
+
+ def test_parallelism2_00(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ dims = 5
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ dims1 = 16
+ dims2 = 16
+ enc = map((lambda b: map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,dims1))), range(0,dims2))
+ threading = 'capillary'
+
+ self.assertRaises(AttributeError, lambda: extended_encoder(enc, threading=threading, puncpat="11"))
+
+ def test_parallelism2_00(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ dims = 5
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ dims1 = 16
+ dims2 = 16
+ enc = map((lambda b: map((lambda a: fec.ldpc_R_U_encoder_make(LDPC_matrix_object)), range(0,dims1))), range(0,dims2))
+ threading = 'capillary'
+
+ self.assertRaises(AttributeError, lambda: extended_encoder(enc, threading=threading, puncpat="11"))
+
+ def test_parallelism2_01(self):
+ filename = "LDPC/n_0100_k_0027_gap_04.alist"
+ gap = 4
+ dims = 5
+ LDPC_matrix_object = fec.ldpc_par_chk_mtrx(filename, gap)
+ k = LDPC_matrix_object.k()
+ dims1 = 16
+ dims2 = 16
+ dec = map((lambda b: map((lambda a: fec.ldpc_bit_flip_decoder_make(LDPC_matrix_object)), range(0,dims1))), range(0,dims2))
+ threading = 'capillary'
+
+ self.assertRaises(AttributeError, lambda: extended_decoder(dec, threading=threading, puncpat="11"))
+
+if __name__ == '__main__':
+ gr_unittest.run(test_fecapi_ldpc, "test_fecapi_ldpc.xml")