summaryrefslogtreecommitdiff
path: root/chains/chains.c
diff options
context:
space:
mode:
authorJakob L. Kreuze <zerodaysfordays@sdf.org>2021-04-06 12:23:00 -0400
committerJakob L. Kreuze <zerodaysfordays@sdf.org>2021-04-06 12:25:17 -0400
commit983cd29f5a2c3d9cd1d6a9c4f343adcffe54f88c (patch)
tree395f4bf2dfe097d9d09413ad1b805765b2e7eae0 /chains/chains.c
Initial import.HEADmaster
Diffstat (limited to 'chains/chains.c')
-rw-r--r--chains/chains.c1389
1 files changed, 1389 insertions, 0 deletions
diff --git a/chains/chains.c b/chains/chains.c
new file mode 100644
index 0000000..6f30e26
--- /dev/null
+++ b/chains/chains.c
@@ -0,0 +1,1389 @@
+#include <inttypes.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#define MAX 900000000
+
+uint32_t encoded[] = {
+ 136, 4253818,
+ 136, 4253813,
+ 271, 1779864,
+ 136, 4253816,
+ 136, 4253816,
+ 211, 3144285,
+ 136, 4253790,
+ 211, 3144278,
+ 181, 4130207,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144284,
+ 211, 3144278,
+ 136, 4253828,
+ 136, 4253790,
+ 211, 3144283,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 352, 495094,
+ 136, 4253825,
+ 211, 3144273,
+ 136, 4253822,
+ 136, 4253808,
+ 136, 4253790,
+ 136, 4253817,
+ 211, 3144278,
+ 211, 3144278,
+ 136, 4253790,
+ 211, 3144274,
+ 211, 3144273,
+ 211, 3144276,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253816,
+ 136, 4253823,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144280,
+ 211, 3144278,
+ 136, 4253828,
+ 136, 4253822,
+ 181, 4130207,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144281,
+ 136, 4253827,
+ 211, 3144278,
+ 160, 3678256,
+ 211, 3144281,
+ 211, 3144278,
+ 211, 3144280,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253790,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144281,
+ 211, 3144281,
+ 211, 3144273,
+ 136, 4253822,
+ 211, 3144277,
+ 136, 4253790,
+ 352, 495094,
+ 136, 4253823,
+ 211, 3144280,
+ 211, 3144281,
+ 211, 3144282,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253817,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 105, 2020434,
+ 211, 3144278,
+ 136, 4253825,
+ 136, 4253825,
+ 211, 3144273,
+ 211, 3144282,
+ 199, 3861209,
+ 136, 4253790,
+ 211, 3144275,
+ 211, 3144278,
+ 160, 3678256,
+ 113, 2166353,
+ 211, 3144277,
+ 211, 3144275,
+ 211, 3144282,
+ 136, 4253828,
+ 211, 3144280,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253790,
+ 211, 3144275,
+ 211, 3144278,
+ 160, 3678256,
+ 113, 2166353,
+ 211, 3144277,
+ 211, 3144275,
+ 211, 3144282,
+ 136, 4253828,
+ 211, 3144280,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253823,
+ 160, 3678256,
+ 136, 4253790,
+ 136, 4253826,
+ 211, 3144273,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253826,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253823,
+ 211, 3144275,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144275,
+ 211, 3144278,
+ 160, 3678256,
+ 211, 3144275,
+ 211, 3144277,
+ 211, 3144280,
+ 160, 3678256,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144277,
+ 211, 3144279,
+ 136, 4253828,
+ 211, 3144277,
+ 160, 3678256,
+ 211, 3144275,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144276,
+ 211, 3144277,
+ 352, 495094,
+ 136, 4253823,
+ 160, 3678256,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253790,
+ 211, 3144273,
+ 211, 3144281,
+ 136, 4253790,
+ 352, 495094,
+ 211, 3144278,
+ 136, 4253825,
+ 136, 4253825,
+ 211, 3144278,
+ 211, 3144283,
+ 211, 3144281,
+ 199, 3861206,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144282,
+ 211, 3144273,
+ 211, 3144280,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144283,
+ 136, 4253823,
+ 211, 3144282,
+ 181, 4130207,
+ 136, 4253790,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144284,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144278,
+ 211, 3144281,
+ 136, 4253823,
+ 211, 3144282,
+ 136, 4253823,
+ 160, 3678257,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253823,
+ 160, 3678256,
+ 211, 3144282,
+ 211, 3144277,
+ 136, 4253822,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253790,
+ 160, 3678256,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253817,
+ 181, 4130207,
+ 211, 3144277,
+ 160, 3678256,
+ 136, 4253790,
+ 211, 3144277,
+ 211, 3144273,
+ 211, 3144275,
+ 181, 4130207,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253826,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144278,
+ 211, 3144274,
+ 211, 3144282,
+ 211, 3144273,
+ 136, 4253823,
+ 160, 3678256,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253790,
+ 352, 495094,
+ 211, 3144280,
+ 211, 3144278,
+ 136, 4253826,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144277,
+ 160, 3678257,
+ 136, 4253823,
+ 211, 3144278,
+ 136, 4253828,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253826,
+ 136, 4253790,
+ 211, 3144273,
+ 211, 3144281,
+ 136, 4253790,
+ 352, 495094,
+ 211, 3144278,
+ 136, 4253825,
+ 136, 4253825,
+ 211, 3144278,
+ 211, 3144283,
+ 211, 3144281,
+ 199, 3861206,
+ 136, 4253790,
+ 136, 4253823,
+ 352, 495094,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144277,
+ 160, 3678257,
+ 136, 4253823,
+ 211, 3144278,
+ 136, 4253828,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253826,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144277,
+ 160, 3678257,
+ 211, 3144277,
+ 160, 3678256,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144277,
+ 273, 1867034,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253826,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144278,
+ 160, 3678256,
+ 211, 3144277,
+ 136, 4253790,
+ 181, 4130207,
+ 211, 3144273,
+ 136, 4253825,
+ 352, 495094,
+ 136, 4253790,
+ 211, 3144278,
+ 352, 495094,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144277,
+ 160, 3678257,
+ 136, 4253823,
+ 211, 3144278,
+ 136, 4253828,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253826,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253810,
+ 352, 495094,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144277,
+ 160, 3678257,
+ 136, 4253823,
+ 211, 3144278,
+ 136, 4253828,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253826,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144278,
+ 211, 3144276,
+ 211, 3144276,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144277,
+ 273, 1867034,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253826,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 105, 2020432,
+ 136, 4253790,
+ 211, 3144282,
+ 136, 4253823,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144277,
+ 160, 3678257,
+ 136, 4253823,
+ 211, 3144278,
+ 136, 4253828,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253826,
+ 136, 4253790,
+ 136, 4253827,
+ 136, 4253825,
+ 136, 4253828,
+ 211, 3144281,
+ 136, 4253790,
+ 136, 4253801,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253817,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144275,
+ 211, 3144278,
+ 160, 3678256,
+ 113, 2166353,
+ 211, 3144277,
+ 211, 3144275,
+ 211, 3144282,
+ 136, 4253828,
+ 211, 3144280,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144278,
+ 136, 4253790,
+ 136, 4253826,
+ 211, 3144273,
+ 211, 3144282,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253790,
+ 211, 3144283,
+ 181, 4130207,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253790,
+ 160, 3678257,
+ 211, 3144273,
+ 136, 4253825,
+ 136, 4253828,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144278,
+ 352, 495094,
+ 136, 4253790,
+ 160, 3678256,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144277,
+ 211, 3144279,
+ 136, 4253828,
+ 211, 3144277,
+ 160, 3678256,
+ 211, 3144275,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144283,
+ 136, 4253823,
+ 136, 4253825,
+ 136, 4253825,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253825,
+ 211, 3144283,
+ 211, 3144273,
+ 211, 3144284,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144280,
+ 211, 3144277,
+ 211, 3144273,
+ 211, 3144275,
+ 181, 4130207,
+ 136, 4253790,
+ 136, 4253801,
+ 266, 2039181,
+ 136, 4253790,
+ 110, 4399499,
+ 211, 3144273,
+ 211, 3144283,
+ 211, 3144280,
+ 136, 4253790,
+ 273, 1867034,
+ 105, 2020432,
+ 136, 4253790,
+ 160, 3678256,
+ 136, 4253828,
+ 199, 3861209,
+ 199, 3861209,
+ 136, 4253825,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253790,
+ 181, 4130207,
+ 211, 3144278,
+ 211, 3144283,
+ 136, 4253790,
+ 211, 3144273,
+ 211, 3144280,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144284,
+ 211, 3144278,
+ 136, 4253828,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144278,
+ 136, 4253828,
+ 160, 3678256,
+ 211, 3144275,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144278,
+ 160, 3678256,
+ 136, 4253790,
+ 211, 3144284,
+ 211, 3144278,
+ 136, 4253828,
+ 136, 4253790,
+ 211, 3144284,
+ 211, 3144278,
+ 136, 4253828,
+ 105, 2020429,
+ 211, 3144280,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144278,
+ 136, 4253790,
+ 211, 3144283,
+ 211, 3144273,
+ 211, 3144280,
+ 136, 4253826,
+ 136, 4253790,
+ 211, 3144278,
+ 105, 2020432,
+ 211, 3144278,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144278,
+ 211, 3144282,
+ 136, 4253823,
+ 211, 3144275,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144284,
+ 211, 3144278,
+ 136, 4253828,
+ 136, 4253790,
+ 181, 4130207,
+ 211, 3144273,
+ 160, 3678257,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253790,
+ 211, 3144278,
+ 199, 3861206,
+ 136, 4253790,
+ 136, 4253790,
+ 181, 4130207,
+ 211, 3144278,
+ 136, 4253825,
+ 211, 3144276,
+ 136, 4253790,
+ 136, 4253828,
+ 136, 4253827,
+ 136, 4253790,
+ 136, 4253810,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144277,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144278,
+ 136, 4253790,
+ 136, 4253826,
+ 211, 3144273,
+ 136, 4253824,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144281,
+ 211, 3144281,
+ 211, 3144273,
+ 136, 4253822,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144277,
+ 160, 3678257,
+ 211, 3144277,
+ 160, 3678256,
+ 136, 4253790,
+ 136, 4253825,
+ 211, 3144278,
+ 160, 3678256,
+ 136, 4253822,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253790,
+ 136, 4253810,
+ 160, 3678256,
+ 136, 4253790,
+ 211, 3144273,
+ 211, 3144274,
+ 211, 3144281,
+ 211, 3144282,
+ 211, 3144280,
+ 211, 3144273,
+ 211, 3144275,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253825,
+ 136, 4253822,
+ 211, 3144277,
+ 211, 3144274,
+ 211, 3144280,
+ 211, 3144273,
+ 136, 4253790,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144276,
+ 136, 4253790,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144273,
+ 136, 4253825,
+ 211, 3144284,
+ 211, 3144281,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 271, 1779864,
+ 211, 3144280,
+ 211, 3144275,
+ 181, 4130207,
+ 136, 4253823,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144276,
+ 211, 3144277,
+ 211, 3144273,
+ 160, 3678256,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144278,
+ 136, 4253827,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144282,
+ 211, 3144284,
+ 136, 4253798,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144273,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253790,
+ 211, 3144273,
+ 352, 495094,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144275,
+ 136, 4253823,
+ 211, 3144277,
+ 160, 3678256,
+ 211, 3144282,
+ 136, 4253790,
+ 136, 4253809,
+ 211, 3144280,
+ 211, 3144277,
+ 211, 3144277,
+ 136, 4253824,
+ 136, 4253790,
+ 136, 4253826,
+ 211, 3144273,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253826,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253823,
+ 211, 3144275,
+ 136, 4253823,
+ 211, 3144273,
+ 160, 3678256,
+ 136, 4253790,
+ 271, 1779864,
+ 211, 3144280,
+ 211, 3144275,
+ 181, 4130207,
+ 136, 4253823,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144276,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144278,
+ 352, 495094,
+ 136, 4253790,
+ 136, 4253816,
+ 211, 3144284,
+ 211, 3144280,
+ 211, 3144273,
+ 211, 3144275,
+ 136, 4253828,
+ 211, 3144281,
+ 211, 3144277,
+ 136, 4253798,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144278,
+ 136, 4253827,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144282,
+ 211, 3144284,
+ 136, 4253790,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253825,
+ 211, 3144276,
+ 136, 4253790,
+ 211, 3144274,
+ 211, 3144284,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144278,
+ 136, 4253826,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253825,
+ 136, 4253822,
+ 211, 3144277,
+ 211, 3144274,
+ 211, 3144280,
+ 211, 3144273,
+ 136, 4253823,
+ 211, 3144275,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144282,
+ 211, 3144280,
+ 136, 4253828,
+ 211, 3144275,
+ 211, 3144282,
+ 136, 4253828,
+ 211, 3144280,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144281,
+ 136, 4253828,
+ 211, 3144275,
+ 181, 4130207,
+ 136, 4253790,
+ 211, 3144273,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144278,
+ 211, 3144280,
+ 211, 3144276,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253790,
+ 211, 3144278,
+ 211, 3144280,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144278,
+ 211, 3144280,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253790,
+ 136, 4253822,
+ 211, 3144280,
+ 211, 3144278,
+ 136, 4253828,
+ 136, 4253827,
+ 211, 3144281,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144276,
+ 136, 4253790,
+ 352, 495094,
+ 136, 4253823,
+ 211, 3144277,
+ 136, 4253825,
+ 211, 3144276,
+ 211, 3144281,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253817,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144278,
+ 136, 4253827,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144282,
+ 211, 3144284,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144284,
+ 136, 4253827,
+ 136, 4253823,
+ 211, 3144275,
+ 211, 3144273,
+ 136, 4253825,
+ 136, 4253825,
+ 211, 3144284,
+ 136, 4253790,
+ 211, 3144275,
+ 211, 3144278,
+ 160, 3678256,
+ 211, 3144281,
+ 211, 3144282,
+ 211, 3144280,
+ 136, 4253828,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144282,
+ 211, 3144273,
+ 211, 3144282,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253790,
+ 136, 4253822,
+ 136, 4253823,
+ 160, 3678257,
+ 211, 3144277,
+ 160, 3678256,
+ 136, 4253790,
+ 211, 3144282,
+ 211, 3144283,
+ 211, 3144278,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144278,
+ 211, 3144281,
+ 136, 4253823,
+ 211, 3144282,
+ 136, 4253823,
+ 160, 3678257,
+ 211, 3144277,
+ 136, 4253790,
+ 160, 3678256,
+ 136, 4253828,
+ 136, 4253826,
+ 211, 3144274,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144281,
+ 136, 4253790,
+ 273, 1867034,
+ 136, 4253790,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144276,
+ 136, 4253790,
+ 211, 3144284,
+ 136, 4253798,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144273,
+ 160, 3678256,
+ 136, 4253790,
+ 136, 4253823,
+ 160, 3678256,
+ 211, 3144282,
+ 211, 3144277,
+ 136, 4253822,
+ 211, 3144277,
+ 211, 3144280,
+ 136, 4253790,
+ 160, 3678256,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144278,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253790,
+ 160, 3678256,
+ 273, 1867034,
+ 136, 4253790,
+ 303, 1522942,
+ 136, 4253790,
+ 211, 3144284,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253810,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253825,
+ 211, 3144281,
+ 211, 3144278,
+ 136, 4253790,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144281,
+ 211, 3144277,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144278,
+ 352, 495094,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144273,
+ 211, 3144282,
+ 136, 4253828,
+ 211, 3144280,
+ 211, 3144273,
+ 136, 4253825,
+ 136, 4253790,
+ 160, 3678256,
+ 136, 4253828,
+ 136, 4253826,
+ 211, 3144274,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144281,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144278,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144274,
+ 211, 3144278,
+ 136, 4253828,
+ 160, 3678256,
+ 211, 3144276,
+ 211, 3144277,
+ 211, 3144276,
+ 136, 4253790,
+ 211, 3144273,
+ 211, 3144274,
+ 211, 3144278,
+ 160, 3678257,
+ 211, 3144277,
+ 266, 2039181,
+ 211, 3144271,
+ 136, 4253801,
+ 318, 838140,
+ 136, 4253790,
+ 110, 4399499,
+ 211, 3144278,
+ 136, 4253828,
+ 136, 4253822,
+ 181, 4130207,
+ 136, 4253825,
+ 211, 3144284,
+ 136, 4253790,
+ 211, 3144281,
+ 136, 4253827,
+ 211, 3144277,
+ 211, 3144273,
+ 136, 4253824,
+ 136, 4253823,
+ 160, 3678256,
+ 136, 4253822,
+ 136, 4253798,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144282,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253827,
+ 211, 3144280,
+ 211, 3144278,
+ 136, 4253827,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144282,
+ 211, 3144284,
+ 136, 4253790,
+ 211, 3144278,
+ 352, 495094,
+ 136, 4253790,
+ 181, 4130207,
+ 211, 3144273,
+ 160, 3678257,
+ 136, 4253823,
+ 160, 3678256,
+ 136, 4253822,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144278,
+ 136, 4253790,
+ 136, 4253823,
+ 160, 3678256,
+ 352, 495094,
+ 136, 4253823,
+ 160, 3678256,
+ 136, 4253823,
+ 211, 3144282,
+ 211, 3144277,
+ 136, 4253825,
+ 211, 3144284,
+ 136, 4253790,
+ 136, 4253825,
+ 211, 3144273,
+ 211, 3144280,
+ 136, 4253822,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144278,
+ 211, 3144280,
+ 136, 4253790,
+ 136, 4253823,
+ 160, 3678256,
+ 352, 495094,
+ 136, 4253823,
+ 160, 3678256,
+ 136, 4253823,
+ 211, 3144282,
+ 211, 3144277,
+ 136, 4253825,
+ 211, 3144284,
+ 136, 4253790,
+ 211, 3144281,
+ 136, 4253826,
+ 211, 3144273,
+ 136, 4253825,
+ 136, 4253825,
+ 136, 4253790,
+ 211, 3144277,
+ 136, 4253825,
+ 211, 3144277,
+ 136, 4253826,
+ 211, 3144277,
+ 160, 3678256,
+ 211, 3144282,
+ 211, 3144281,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253810,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144283,
+ 211, 3144273,
+ 211, 3144281,
+ 136, 4253790,
+ 136, 4253814,
+ 211, 3144282,
+ 211, 3144282,
+ 211, 3144278,
+ 136, 4253790,
+ 136, 4253816,
+ 211, 3144282,
+ 211, 3144278,
+ 136, 4253825,
+ 199, 3861209,
+ 136, 4253790,
+ 211, 3144283,
+ 181, 4130207,
+ 211, 3144278,
+ 136, 4253790,
+ 136, 4253822,
+ 211, 3144273,
+ 160, 3678257,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144273,
+ 273, 1867034,
+ 136, 4253823,
+ 211, 3144278,
+ 136, 4253826,
+ 136, 4253790,
+ 211, 3144278,
+ 352, 495094,
+ 136, 4253790,
+ 271, 1779864,
+ 211, 3144280,
+ 211, 3144275,
+ 181, 4130207,
+ 136, 4253823,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144276,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144282,
+ 211, 3144281,
+ 136, 4253790,
+ 160, 3678256,
+ 211, 3144273,
+ 136, 4253826,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144274,
+ 211, 3144277,
+ 211, 3144275,
+ 211, 3144273,
+ 136, 4253828,
+ 211, 3144281,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253823,
+ 211, 3144282,
+ 136, 4253790,
+ 211, 3144273,
+ 136, 4253827,
+ 136, 4253827,
+ 211, 3144277,
+ 211, 3144273,
+ 211, 3144280,
+ 211, 3144281,
+ 136, 4253790,
+ 211, 3144273,
+ 211, 3144281,
+ 136, 4253790,
+ 271, 1779864,
+ 273, 1867034,
+ 136, 4253823,
+ 211, 3144278,
+ 136, 4253826,
+ 136, 4253790,
+ 116, 2711150,
+ 136, 4253790,
+ 211, 3144278,
+ 352, 495094,
+ 136, 4253790,
+ 271, 1779864,
+ 211, 3144280,
+ 211, 3144275,
+ 181, 4130207,
+ 136, 4253823,
+ 136, 4253826,
+ 211, 3144277,
+ 211, 3144276,
+ 211, 3144277,
+ 211, 3144281,
+ 136, 4253755,
+ 202, 4806021,
+ 185, 7553325,
+ 136, 4253790,
+ 136, 4253814,
+ 160, 3678256,
+ 136, 4253790,
+ 211, 3144282,
+ 181, 4130207,
+ 211, 3144277,
+ 136, 4253790,
+ 136, 4253816,
+ 136, 4253827,
+ 181, 4130207,
+ 211, 3144277,
+ 211, 3144280,
+ 211, 3144277,
+ 136, 4253790,
+ 211, 3144273,
+ 160, 3678256,
+ 211, 3144276,
+ 136, 4253790,
+ 105, 2020434,
+ 211, 3144284,
+ 136, 4253825,
+ 136, 4253823,
+ 160, 3678256,
+ 211, 3144276,
+ 211, 3144277,
+ 211, 3144280,
+ 266, 2039181,
+ 136, 4253790,
+ 136, 4253818,
+ 136, 4253813,
+ 271, 1779864,
+ 136, 4253816,
+ 136, 4253816,
+ 211, 3144285,
+ 136, 4253803,
+ 181, 4130207,
+ 136, 4253801,
+ 247, 5973577,
+ 136, 4253820,
+ 136, 4253801,
+ 247, 5973577,
+ 136, 4253820,
+ 105, 2020433,
+ 136, 4253820,
+ 352, 495094,
+ 247, 5973577,
+ 211, 3144275,
+ 136, 4253824,
+ 136, 4253801,
+ 160, 3678256,
+ 341, 473526,
+ 136, 4253820,
+ 136, 4253825,
+ 136, 4253800,
+ 160, 3678256,
+ 341, 473526,
+ 136, 4253820,
+ 136, 4253826,
+ 105, 2020432,
+ 247, 5973577,
+ 247, 5973577,
+ 105, 2020433,
+ 341, 473526,
+ 105, 2020432,
+ 136, 4253820,
+ 211, 3144280,
+ 136, 4253800,
+ 136, 4253803,
+ 352, 495094,
+ 136, 4253825,
+ 181, 4130208,
+ 136, 4253767,
+};
+
+
+uint32_t steps(uint32_t n)
+{
+ uint32_t i = 0;
+ while (n != 1) {
+ if (n % 2 == 1)
+ n = 3 * n + 1;
+ else
+ n = n / 2;
+ i++;
+ }
+ return i;
+}
+
+int main(void)
+{
+ uint32_t i, j, goal, count;
+
+ for (i = 0; i < sizeof(encoded); i += 2) {
+ goal = encoded[i];
+ count = encoded[i + 1];
+ for (j = 1; j < MAX; j++) {
+ if (steps(j) == goal) {
+ count--;
+ }
+ if (count == 0) {
+ putchar(j - (MAX - 0xff));
+ fflush(stdout);
+ break;
+ }
+ }
+ }
+ putchar('\n');
+
+ return 0;
+}