Run it: apt install g++ geany libgmp-dev. Open the .cpp in Geany.
Append -lgmp to Geany's compile & build commands. Hit F9 once. F5 to run.
"Near which private prime, will I find these public gaps?" is at least as statistically strong as semiprime factorization. Use this if you need to simply pose cryptographic difficulty. Otherwise, use groupOTP and passOTP for data encryption.
https://github.com/compromise-evident/WhatNot/blob/main/see_natural_log_of_n.cpp
36
468
336
588
1200
660
168
754
146
1230
94
836
274
140
294
90
526
224
234
892
14
760
282
260
220
258
422
88
104
360
1380
42
178
486
636
86
250
120
218
126
228
930
1318
354
108
230
1270
206
672
142
782
546
924
46
194
48
1402
300
1356
2
1062
280
2330
198
40
416
162
178
26
1206
1342
150
1016
856
228
1472
1066
212
52
26
1108
212
52
1772
78
592
294
12
68
46
66
264
204
446
156
262
6
320
586
798
122
1560
168
148
4140
1640
1252
30
842
2326
498
7254
3642
104
2904
1170
1030
4092
1368
7422
1268
4750
5030
2376
2952
958
1290
42
1394
2740
344
1552
1998
1484
6
1344
318
3012
5476
990
8372
1372
2502
2648
910
2220
5456
10546
1998
366
152
12
1500
5328
3030
1332
1182
2538
5550
810
1416
3102
228
10
1472
1624
3270
1394
630
2004
2356
2930
1770
322
1118
1804
176
276
490
1898
786
792
144
2344
1572
2582
208
210
10260
1094
318
942
3618
1396
2504
556
2052
720
1512
242
random_bytes
occurrence of bit 0: 7996
occurrence of bit 1: 8004
occurrence of byte 0: 8
occurrence of byte 1: 4
occurrence of byte 2: 10
occurrence of byte 3: 4
occurrence of byte 4: 5
occurrence of byte 5: 10
occurrence of byte 6: 7
occurrence of byte 7: 3
occurrence of byte 8: 8
occurrence of byte 9: 7
occurrence of byte 10: 9
occurrence of byte 11: 13
occurrence of byte 12: 15
occurrence of byte 13: 9
occurrence of byte 14: 3
occurrence of byte 15: 8
occurrence of byte 16: 4
occurrence of byte 17: 6
occurrence of byte 18: 15
occurrence of byte 19: 11
occurrence of byte 20: 8
occurrence of byte 21: 11
occurrence of byte 22: 8
occurrence of byte 23: 4
occurrence of byte 24: 10
occurrence of byte 25: 9
occurrence of byte 26: 9
occurrence of byte 27: 9
occurrence of byte 28: 9
occurrence of byte 29: 9
occurrence of byte 30: 6
occurrence of byte 31: 4
occurrence of byte 32: 5
occurrence of byte 33: 5
occurrence of byte 34: 8
occurrence of byte 35: 3
occurrence of byte 36: 6
occurrence of byte 37: 6
occurrence of byte 38: 6
occurrence of byte 39: 10
occurrence of byte 40: 5
occurrence of byte 41: 12
occurrence of byte 42: 6
occurrence of byte 43: 12
occurrence of byte 44: 6
occurrence of byte 45: 9
occurrence of byte 46: 11
occurrence of byte 47: 12
occurrence of byte 48: 3
occurrence of byte 49: 8
occurrence of byte 50: 6
occurrence of byte 51: 6
occurrence of byte 52: 9
occurrence of byte 53: 7
occurrence of byte 54: 8
occurrence of byte 55: 3
occurrence of byte 56: 9
occurrence of byte 57: 10
occurrence of byte 58: 7
occurrence of byte 59: 4
occurrence of byte 60: 9
occurrence of byte 61: 3
occurrence of byte 62: 7
occurrence of byte 63: 5
occurrence of byte 64: 2
occurrence of byte 65: 4
occurrence of byte 66: 11
occurrence of byte 67: 7
occurrence of byte 68: 6
occurrence of byte 69: 8
occurrence of byte 70: 7
occurrence of byte 71: 9
occurrence of byte 72: 7
occurrence of byte 73: 8
occurrence of byte 74: 8
occurrence of byte 75: 7
occurrence of byte 76: 6
occurrence of byte 77: 6
occurrence of byte 78: 6
occurrence of byte 79: 7
occurrence of byte 80: 8
occurrence of byte 81: 5
occurrence of byte 82: 13
occurrence of byte 83: 8
occurrence of byte 84: 7
occurrence of byte 85: 10
occurrence of byte 86: 13
occurrence of byte 87: 8
occurrence of byte 88: 6
occurrence of byte 89: 9
occurrence of byte 90: 12
occurrence of byte 91: 10
occurrence of byte 92: 5
occurrence of byte 93: 1
occurrence of byte 94: 6
occurrence of byte 95: 7
occurrence of byte 96: 10
occurrence of byte 97: 11
occurrence of byte 98: 5
occurrence of byte 99: 10
occurrence of byte 100: 8
occurrence of byte 101: 4
occurrence of byte 102: 11
occurrence of byte 103: 6
occurrence of byte 104: 16
occurrence of byte 105: 8
occurrence of byte 106: 7
occurrence of byte 107: 8
occurrence of byte 108: 6
occurrence of byte 109: 9
occurrence of byte 110: 7
occurrence of byte 111: 5
occurrence of byte 112: 6
occurrence of byte 113: 5
occurrence of byte 114: 7
occurrence of byte 115: 11
occurrence of byte 116: 6
occurrence of byte 117: 9
occurrence of byte 118: 9
occurrence of byte 119: 8
occurrence of byte 120: 12
occurrence of byte 121: 9
occurrence of byte 122: 9
occurrence of byte 123: 8
occurrence of byte 124: 9
occurrence of byte 125: 3
occurrence of byte 126: 6
occurrence of byte 127: 6
occurrence of byte 128: 1
occurrence of byte 129: 8
occurrence of byte 130: 3
occurrence of byte 131: 8
occurrence of byte 132: 9
occurrence of byte 133: 7
occurrence of byte 134: 8
occurrence of byte 135: 7
occurrence of byte 136: 9
occurrence of byte 137: 6
occurrence of byte 138: 13
occurrence of byte 139: 6
occurrence of byte 140: 10
occurrence of byte 141: 4
occurrence of byte 142: 9
occurrence of byte 143: 6
occurrence of byte 144: 12
occurrence of byte 145: 8
occurrence of byte 146: 15
occurrence of byte 147: 5
occurrence of byte 148: 11
occurrence of byte 149: 11
occurrence of byte 150: 4
occurrence of byte 151: 8
occurrence of byte 152: 14
occurrence of byte 153: 7
occurrence of byte 154: 11
occurrence of byte 155: 10
occurrence of byte 156: 13
occurrence of byte 157: 7
occurrence of byte 158: 5
occurrence of byte 159: 6
occurrence of byte 160: 8
occurrence of byte 161: 5
occurrence of byte 162: 8
occurrence of byte 163: 8
occurrence of byte 164: 5
occurrence of byte 165: 12
occurrence of byte 166: 15
occurrence of byte 167: 7
occurrence of byte 168: 6
occurrence of byte 169: 7
occurrence of byte 170: 12
occurrence of byte 171: 6
occurrence of byte 172: 4
occurrence of byte 173: 9
occurrence of byte 174: 7
occurrence of byte 175: 13
occurrence of byte 176: 9
occurrence of byte 177: 11
occurrence of byte 178: 6
occurrence of byte 179: 6
occurrence of byte 180: 7
occurrence of byte 181: 9
occurrence of byte 182: 9
occurrence of byte 183: 12
occurrence of byte 184: 5
occurrence of byte 185: 7
occurrence of byte 186: 11
occurrence of byte 187: 6
occurrence of byte 188: 7
occurrence of byte 189: 8
occurrence of byte 190: 9
occurrence of byte 191: 4
occurrence of byte 192: 11
occurrence of byte 193: 13
occurrence of byte 194: 6
occurrence of byte 195: 5
occurrence of byte 196: 5
occurrence of byte 197: 7
occurrence of byte 198: 9
occurrence of byte 199: 5
occurrence of byte 200: 10
occurrence of byte 201: 5
occurrence of byte 202: 16
occurrence of byte 203: 8
occurrence of byte 204: 7
occurrence of byte 205: 9
occurrence of byte 206: 7
occurrence of byte 207: 7
occurrence of byte 208: 7
occurrence of byte 209: 8
occurrence of byte 210: 7
occurrence of byte 211: 8
occurrence of byte 212: 2
occurrence of byte 213: 14
occurrence of byte 214: 6
occurrence of byte 215: 2
occurrence of byte 216: 7
occurrence of byte 217: 8
occurrence of byte 218: 9
occurrence of byte 219: 6
occurrence of byte 220: 6
occurrence of byte 221: 9
occurrence of byte 222: 13
occurrence of byte 223: 8
occurrence of byte 224: 6
occurrence of byte 225: 9
occurrence of byte 226: 12
occurrence of byte 227: 5
occurrence of byte 228: 7
occurrence of byte 229: 6
occurrence of byte 230: 8
occurrence of byte 231: 8
occurrence of byte 232: 13
occurrence of byte 233: 9
occurrence of byte 234: 9
occurrence of byte 235: 9
occurrence of byte 236: 3
occurrence of byte 237: 5
occurrence of byte 238: 9
occurrence of byte 239: 11
occurrence of byte 240: 9
occurrence of byte 241: 6
occurrence of byte 242: 9
occurrence of byte 243: 4
occurrence of byte 244: 7
occurrence of byte 245: 10
occurrence of byte 246: 13
occurrence of byte 247: 3
occurrence of byte 248: 10
occurrence of byte 249: 6
occurrence of byte 250: 5
occurrence of byte 251: 14
occurrence of byte 252: 12
occurrence of byte 253: 6
occurrence of byte 254: 7
occurrence of byte 255: 9
256 distinct, 2000 total
Every byte raw:
36
33
120
77
77
188
19
221
238
117
239
166
94
54
233
187
25
91
83
214
221
126
246
203
198
224
25
9
244
47
177
90
175
122
152
18
213
79
95
132
45
57
80
146
248
40
149
43
157
57
148
30
156
15
208
121
238
217
186
209
244
27
58
132
228
245
158
6
101
200
231
64
43
56
99
180
105
42
44
0
18
74
67
18
205
183
192
148
5
232
112
132
192
122
130
18
108
193
133
72
18
215
11
246
106
154
41
86
26
177
21
200
155
11
31
192
206
253
219
165
170
138
111
146
237
143
67
203
171
92
26
100
151
9
14
6
185
119
187
105
71
177
222
30
124
116
72
223
168
80
5
192
246
226
255
175
192
218
65
47
15
216
231
149
219
90
19
232
202
116
190
246
69
78
144
8
193
228
187
11
140
95
57
127
37
28
182
47
44
14
154
59
120
176
25
131
253
194
169
86
106
157
86
2
16
109
114
140
224
5
143
18
192
175
23
220
112
148
90
96
125
175
225
118
143
115
131
220
30
151
213
251
188
58
190
111
24
65
186
202
193
91
78
45
144
69
56
15
104
117
131
123
104
67
29
170
62
68
184
81
174
38
220
240
114
225
190
228
185
18
47
31
40
70
114
162
1
153
139
75
223
232
135
152
13
28
37
92
154
251
162
110
11
252
117
98
12
10
66
186
46
181
230
11
146
225
69
119
60
112
154
105
210
47
165
102
104
106
111
5
115
185
94
159
97
239
226
142
7
18
22
225
55
73
76
39
166
58
246
122
129
204
201
211
183
177
183
213
82
153
99
146
28
84
45
182
87
15
122
175
21
188
175
66
132
81
54
156
153
133
148
155
85
29
100
242
34
220
189
67
32
15
47
78
60
120
89
203
210
166
95
200
238
126
193
115
30
82
149
136
83
109
146
5
45
193
39
239
89
84
231
178
149
70
198
29
144
246
242
117
133
146
122
239
243
140
198
181
222
210
8
121
86
251
155
138
202
21
237
87
193
199
113
173
52
165
205
246
254
232
66
5
155
206
111
251
140
175
219
204
50
72
181
145
104
152
229
200
172
82
182
209
246
27
138
30
86
254
158
60
168
4
25
239
152
53
151
53
63
76
22
166
166
123
217
156
249
229
87
92
136
208
47
142
202
224
251
85
131
82
82
96
231
18
196
92
161
250
28
105
73
211
219
146
138
155
223
241
218
248
74
12
141
104
46
252
213
172
38
243
107
67
190
26
177
131
129
183
177
19
244
79
124
102
195
27
169
140
142
239
90
122
159
217
234
235
42
253
121
70
16
79
197
255
85
245
200
71
34
150
145
38
161
119
77
244
169
12
112
67
47
54
226
151
180
210
222
43
174
190
144
73
56
43
38
71
200
154
251
226
66
251
38
94
159
66
90
224
2
113
104
43
53
176
232
183
140
118
21
104
155
100
80
180
208
92
97
222
117
152
61
175
120
104
189
248
95
183
155
141
146
87
169
166
218
156
197
88
88
245
97
218
114
102
18
23
173
41
69
96
237
183
228
135
152
117
238
90
227
87
75
110
70
144
239
99
210
242
31
168
75
240
186
108
182
209
72
74
102
97
5
248
225
24
230
112
230
104
152
241
91
175
72
11
202
21
11
99
91
199
137
114
26
8
241
107
193
144
178
56
121
167
36
5
83
136
12
191
56
134
161
29
169
202
100
179
160
156
133
39
6
235
251
114
167
238
181
36
3
229
176
221
108
127
231
234
15
213
25
69
221
162
249
190
27
150
43
51
177
219
217
68
167
114
139
33
214
178
27
83
62
129
10
100
202
0
50
41
151
213
140
189
235
205
238
229
24
22
20
82
20
252
149
139
50
194
211
231
35
2
91
232
60
145
102
247
192
202
19
182
207
136
120
44
255
127
117
245
120
88
251
137
5
86
97
2
123
53
183
51
227
16
46
85
102
52
32
53
34
58
102
80
78
154
173
189
74
54
68
101
6
222
147
45
56
34
47
24
216
148
158
25
168
141
44
205
18
45
64
210
207
41
235
0
86
213
148
123
121
188
252
79
10
135
98
4
145
228
4
166
140
233
179
198
124
118
96
85
17
229
124
213
240
200
174
155
154
195
6
209
40
171
249
95
75
109
173
115
52
214
213
152
188
245
116
67
104
82
164
22
73
27
49
252
87
71
36
205
230
240
12
34
201
74
165
180
39
69
210
97
82
52
86
215
26
249
189
47
142
99
73
159
234
194
26
222
137
60
232
99
172
178
217
89
149
181
228
70
202
170
230
11
222
221
226
55
160
166
209
109
115
59
119
191
48
174
103
79
139
119
13
246
146
11
94
226
203
68
26
57
120
167
24
136
157
171
248
134
0
186
50
242
29
233
239
198
25
136
70
138
106
213
8
159
63
193
217
197
162
227
198
135
118
70
255
43
251
173
0
129
166
143
109
124
77
2
185
144
118
160
242
106
195
111
184
187
186
44
102
37
118
74
128
216
217
192
41
42
187
177
179
233
12
182
217
174
235
193
11
170
221
89
245
15
180
144
43
202
211
42
83
211
43
104
251
57
54
186
132
89
90
160
8
186
123
173
20
189
121
36
160
209
146
96
62
189
177
82
185
212
218
193
164
226
83
181
120
198
223
123
209
71
134
181
232
213
222
76
226
224
134
107
232
91
13
158
149
234
22
107
74
32
199
255
252
49
96
21
208
175
149
183
146
96
8
33
162
101
176
73
25
69
12
123
106
13
40
221
152
142
53
199
248
66
164
13
175
66
132
80
153
98
21
53
27
62
241
240
24
34
235
52
120
156
18
148
85
226
150
89
89
33
163
104
226
238
234
4
166
20
239
203
13
144
3
142
109
194
143
73
39
109
208
232
28
90
69
93
241
252
126
195
68
89
170
97
58
165
110
227
184
90
129
117
170
60
167
97
171
162
91
174
225
207
26
34
171
170
81
216
136
127
60
110
130
222
2
205
213
207
106
156
54
138
2
32
138
119
115
115
248
5
147
198
55
102
71
20
164
57
3
165
12
86
223
46
225
19
120
232
39
129
104
179
126
18
222
145
41
205
23
175
59
19
173
216
28
50
186
235
78
173
156
65
154
7
125
132
57
65
41
161
246
253
218
109
178
142
180
12
189
251
54
138
118
192
95
82
231
43
72
146
182
199
245
186
134
139
194
253
83
118
39
250
42
15
115
116
116
22
153
193
2
133
243
82
196
41
177
187
103
1
18
198
130
120
141
255
206
138
10
24
167
166
202
204
108
242
200
16
48
163
13
6
226
162
247
52
254
9
39
223
98
46
80
12
170
153
66
137
202
204
201
10
242
200
168
238
219
24
28
140
254
232
77
49
148
46
254
250
206
236
47
151
253
160
104
94
182
100
121
252
207
115
62
174
165
156
192
11
145
144
167
202
21
19
143
58
228
152
27
61
232
57
205
173
242
43
155
17
10
110
99
66
81
105
24
204
8
45
82
239
57
146
144
206
252
222
236
10
165
135
170
0
96
12
46
12
80
163
176
1
152
0
99
209
222
188
218
110
9
166
148
207
68
195
100
169
22
148
126
50
242
29
1
246
200
249
154
11
83
190
191
157
243
138
66
176
122
179
225
88
254
231
194
235
221
196
176
41
29
35
109
71
10
222
33
96
37
185
39
12
255
91
244
46
227
71
248
21
190
37
42
157
208
234
95
82
245
71
178
152
60
116
21
186
45
4
73
49
54
159
75
237
240
163
181
17
49
147
17
103
193
87
105
147
46
142
203
34
86
212
75
183
131
166
136
72
121
26
110
234
85
124
163
170
84
160
100
185
197
124
79
188
96
103
131
28
145
252
57
22
30
206
101
94
87
7
19
218
75
121
46
29
137
46
223
248
133
127
247
164
168
80
234
201
59
20
49
129
86
175
86
115
49
161
150
19
155
113
233
250
45
3
145
211
105
9
240
85
214
107
233
44
131
248
193
136
0
163
218
17
134
85
20
56
177
252
76
240
184
230
170
108
179
203
149
250
108
140
77
229
255
32
88
163
230
127
90
103
85
134
183
41
12
208
40
132
133
76
237
48
124
196
153
214
23
107
104
81
144
29
157
119
204
151
197
135
169
157
119
226
52
184
211
21
105
206
170
51
20
233
234
156
224
166
25
60
79
86
9
240
107
211
246
52
235
39
76
117
91
149
221
252
51
216
56
158
84
63
225
172
165
147
138
35
28
203
163
239
202
220
102
132
241
58
12
230
251
152
13
38
160
66
152
151
56
99
238
233
214
142
13
201
84
213
43
146
176
52
62
122
197
182
84
63
88
204
197
9
139
84
14
99
156
154
6
122
97
244
251
47
156
207
196
156
138
118
245
62
18
19
205
113
245
31
63
149
223
51
255
138
36
91
176
89
123
134
171
103
107
61
10
165
191
2
8
112
126
97
27
183
115
41
24
249
166
192
148
124
254
102
180
2
190
154
125
135
165
220
213
19
113
202
74
120
216
202
162
97
233
146
90
236
137
129
181
90
49
11
41
165
104
246
244
37
78
51
17
98
Only the 97 standard text bytes (9, 10, and 32-126):
$!xMMu^6[S~ /ZzO_-9P(+9y:e@+8ci*,JCpzlHj)VoC\d wiG|tHPA/ZtEN_9%/,;xVjVmrpZ`}vs:oA[N-E8hu{hC>DQ&r/(FrK%\nub
B.Ew<pi/fhjos^a7IL':zRcT-WzBQ6Ud"C /N<xY_~sRSm-'YTFuzyVWq4Bo2HhRV<55?L{W\/URR`\iIJh.&kCO|fZz*yFOUG"&wMpC/6+I8+&GB&^BZqh+5vhdP\au=xh_WXXarf)E`uZWKnFcKlHJfaph[Hc[rk8y$S8d'r$lE+3Dr!S>
d2)R2#[<fx,uxXVa{53.Uf4 5":fPNJ6De-8"/,-@)V{yO
b|v`U|(_Kms4tChRI1WG$"J'EaR4V/cI<cYF7ms;w0gOw^D9x2Fj?vF+m|Mvjo,f%vJ)*Y+*S+h96YZ{y$`>RSx{GLk[kJ 1`!eIE{j(5BBPb5>"4xUYY!hmI'mZE]~DYa:nZu<a["Q<nj6 wss7fG9V.x'h~);2NA}9A)m6v_R+HSv'*sttR)gx
l04 'b.PB
M1./h^dys>:=9+
ncBQi-R9
`.Pcn Dd~2SBzX)#mG
!`%'[.G%*_RG<t-I16K1gWi."VKHynU|Td|O`g9e^WKy..P;1VVs1q-i Uk,U8LllM XZgU)(L0|khQww4i3<OV k4'Lu[38T?#f:&B8cT+4>zT?X Tcza/v>q?3$[Y{gk=
p~as)|f}qJxaZZ1)h%N3b
- Authorship (not just for randomness, but the difficulties; "near which private prime will I find these public gaps?")
- groupOTP
- passOTP

