diff --git a/map_gen/data/.map_previews/double_beach.png b/map_gen/data/.map_previews/double_beach.png new file mode 100644 index 00000000..a2a55d86 Binary files /dev/null and b/map_gen/data/.map_previews/double_beach.png differ diff --git a/map_gen/data/.map_previews/factorio_logo_4096by4096.PNG b/map_gen/data/.map_previews/factorio_logo_4096by4096.PNG deleted file mode 100644 index 975ad788..00000000 Binary files a/map_gen/data/.map_previews/factorio_logo_4096by4096.PNG and /dev/null differ diff --git a/map_gen/data/.map_previews/factorio_logo2_4096by4096.PNG b/map_gen/data/.map_previews/factory_squared.PNG similarity index 100% rename from map_gen/data/.map_previews/factorio_logo2_4096by4096.PNG rename to map_gen/data/.map_previews/factory_squared.PNG diff --git a/map_gen/data/.map_previews/loading_screen_845x845.PNG b/map_gen/data/.map_previews/loading_screen_845x845.PNG new file mode 100644 index 00000000..9af0b2c2 Binary files /dev/null and b/map_gen/data/.map_previews/loading_screen_845x845.PNG differ diff --git a/map_gen/data/presets/crosses.lua b/map_gen/data/presets/crosses.lua deleted file mode 100644 index 734ea2e7..00000000 --- a/map_gen/data/presets/crosses.lua +++ /dev/null @@ -1,306 +0,0 @@ -return { -height = 300, -width = 212, -data = { - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,12,}, - {2,4,1,1,2,9,1,4,2,1,1,2,2,6,1,4,2,3,1,1,2,11,1,5,2,2,1,1,2,6,1,3,2,3,1,3,2,9,1,4,2,2,1,1,2,7,1,3,2,4,1,1,2,8,1,7,2,1,1,1,2,7,1,3,2,4,1,1,2,9,1,6,2,1,1,1,2,7,1,3,2,4,1,2,2,5,1,1,2,1,1,7,2,9,1,3,2,4,1,2,2,5,1,1,2,1,1,8,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,10,1,3,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,8,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,8,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,8,}, - {2,4,1,1,2,3,1,3,2,4,1,1,2,4,1,6,2,3,1,1,2,5,1,1,2,4,1,4,2,3,1,2,2,1,1,7,2,2,1,2,2,7,1,1,2,3,1,4,2,3,1,3,2,3,1,4,2,15,1,4,2,3,1,4,2,1,1,5,2,2,1,2,2,6,1,1,2,5,1,3,2,3,1,1,2,4,1,5,2,2,1,2,2,12,1,3,2,4,1,10,2,1,1,1,2,13,1,3,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,12,}, - {2,2,1,3,2,5,1,14,2,3,1,4,2,3,1,2,2,5,1,14,2,4,1,4,2,3,1,1,2,6,1,15,2,4,1,3,2,10,1,15,2,4,1,3,2,10,1,15,2,4,1,3,2,10,1,15,2,4,1,3,2,10,1,2,2,1,1,8,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,8,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,8,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,10,1,1,2,5,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,9,1,1,2,5,1,5,2,8,1,4,2,15,1,4,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,9,1,5,2,15,1,4,2,9,1,4,2,2,1,1,2,12,1,4,2,3,1,1,2,4,1,5,2,15,1,4,2,3,1,1,2,4,1,5,2,15,1,4,2,8,1,5,2,16,1,3,2,8,1,5,2,16,1,3,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,4,1,9,2,1,1,5,2,4,1,2,2,4,1,3,2,4,1,9,2,1,1,5,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,5,2,1,1,9,2,4,1,2,2,4,1,3,2,4,1,10,2,1,1,4,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,8,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,7,1,6,2,8,1,3,2,10,1,1,2,4,1,5,2,9,1,3,2,4,1,1,2,5,1,1,2,2,1,1,2,1,1,6,2,4,1,1,2,3,1,3,2,4,1,1,2,5,1,1,2,2,1,1,2,2,1,5,2,4,1,1,2,3,1,3,2,4,1,1,2,8,1,1,2,1,1,6,2,8,1,3,2,5,1,1,2,10,1,5,2,1,1,1,2,6,1,4,2,5,1,1,2,8,1,8,2,2,1,1,2,2,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,9,1,3,2,17,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,4,1,2,2,1,1,6,2,1,1,1,2,1,1,2,2,5,1,2,2,4,1,3,2,4,1,2,2,1,1,6,2,1,1,1,2,2,1,1,2,5,1,2,2,4,1,3,2,4,1,11,2,1,1,1,2,6,1,2,2,4,1,3,2,4,1,1,2,2,1,6,2,1,1,1,2,2,1,2,2,5,1,1,2,4,1,3,2,4,1,1,2,2,1,2,2,1,1,6,2,1,1,1,2,5,1,2,2,4,1,3,2,6,1,3,2,1,1,4,2,1,1,1,2,1,1,1,2,5,1,2,2,4,1,3,2,4,1,5,2,1,1,5,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,12,2,1,1,2,2,4,1,3,2,4,1,2,2,4,1,2,2,1,1,1,2,1,1,11,2,3,1,3,2,4,1,2,2,4,1,1,2,2,1,13,2,3,1,3,2,4,1,1,2,5,1,2,2,1,1,13,2,3,1,3,2,4,1,1,2,5,1,2,2,1,1,13,2,3,1,3,2,4,1,3,2,4,1,12,2,1,1,2,2,3,1,4,2,3,1,3,2,4,1,1,2,1,1,10,2,1,1,2,2,2,}, - {2,8,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,12,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,12,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {2,1,1,4,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,5,1,1,2,3,1,4,2,10,1,2,2,4,1,3,2,5,1,1,2,3,1,4,2,11,1,1,2,4,1,3,2,5,1,1,2,3,1,4,2,1,1,2,2,13,1,3,2,4,1,1,2,5,1,3,2,11,1,1,2,4,1,3,2,8,1,1,2,1,1,3,2,2,1,1,2,13,1,3,2,10,1,4,2,1,1,1,2,13,1,3,2,7,1,1,2,2,1,5,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,8,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,8,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,3,2,16,1,4,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,5,2,10,1,3,2,15,1,5,2,9,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,11,1,1,2,4,1,4,2,9,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,4,2,15,1,3,2,10,1,4,2,1,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,12,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,10,1,3,2,15,1,4,2,10,1,3,2,8,}, - {2,8,1,3,2,17,1,3,2,9,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,8,}, - {2,3,1,14,2,4,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,3,1,16,2,4,1,2,2,4,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,12,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,12,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,6,2,1,1,1,2,7,1,3,2,4,1,1,2,5,1,4,2,1,1,5,2,1,1,2,2,6,1,3,2,10,1,10,2,1,1,1,2,2,1,1,2,4,1,3,2,10,1,1,2,2,1,9,2,2,1,1,2,4,1,3,2,4,1,1,2,5,1,2,2,2,1,6,2,1,1,1,2,7,1,3,2,4,1,2,2,4,1,3,2,1,1,9,2,1,1,1,2,4,1,3,2,5,1,1,2,5,1,2,2,1,1,7,2,1,1,1,2,1,1,1,2,4,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,3,1,12,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,10,1,3,2,15,1,4,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,3,1,1,2,3,1,5,2,3,1,2,2,6,1,1,2,3,1,4,2,3,1,2,2,4,1,5,2,1,1,1,2,13,1,3,2,8,1,6,2,2,1,1,2,6,1,1,2,5,1,3,2,8,1,5,2,3,1,1,2,1,1,1,2,4,1,2,2,4,1,3,2,9,1,4,2,2,1,2,2,6,1,2,2,4,1,3,2,5,1,2,2,2,1,4,2,2,1,2,2,6,1,1,2,5,1,3,2,9,1,4,2,3,1,1,2,1,1,1,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,12,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,10,1,3,2,15,1,4,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,10,1,1,2,5,1,3,2,9,1,4,2,3,1,1,2,1,1,1,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,4,1,2,2,4,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,5,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,11,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,2,2,4,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,5,1,2,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,4,2,3,1,15,2,4,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,3,1,12,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {2,15,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {1,5,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,2,}, - {2,8,1,3,2,11,1,1,2,4,1,4,2,9,1,4,2,4,1,1,2,10,1,4,2,9,1,4,2,15,1,7,2,6,1,4,2,4,1,2,2,9,1,4,2,2,1,1,2,1,1,1,2,4,1,4,2,10,1,1,2,4,1,4,2,2,1,3,2,5,1,3,2,15,1,4,2,9,1,4,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,10,1,3,2,8,}, - {2,8,1,4,2,15,1,4,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,16,1,3,2,9,1,4,2,8,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,2,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,2,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,17,1,3,2,9,1,4,2,16,1,3,2,8,}, - {2,8,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,9,1,4,2,15,1,4,2,8,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,4,1,3,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,5,}, - {2,2,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,5,}, - {2,2,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {2,2,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,4,2,9,1,3,2,15,}, - {1,6,2,15,1,3,2,9,1,6,2,1,1,1,2,1,1,1,2,10,1,3,2,9,1,5,2,15,1,3,2,5,1,1,2,1,1,11,2,11,1,3,2,4,1,1,2,3,1,10,2,6,1,1,2,4,1,4,2,7,1,11,2,5,1,1,2,4,1,4,2,5,1,2,2,1,1,5,2,10,1,2,2,2,}, - {1,12,2,3,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,3,1,4,2,3,1,16,2,3,1,3,2,2,}, - {1,11,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,4,1,2,2,4,1,15,2,4,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,16,1,3,2,10,1,3,2,2,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,15,2,4,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,17,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,11,}, - {2,2,1,3,2,3,1,16,2,3,1,4,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,3,1,16,2,4,1,3,2,3,1,3,2,4,1,16,2,3,1,3,2,3,1,3,2,4,1,11,}, -} -} \ No newline at end of file diff --git a/map_gen/data/presets/crosses3.lua b/map_gen/data/presets/x-cross.lua similarity index 100% rename from map_gen/data/presets/crosses3.lua rename to map_gen/data/presets/x-cross.lua diff --git a/map_gen/maps/antfarm.lua b/map_gen/maps/antfarm.lua index c26f3705..6a603a32 100644 --- a/map_gen/maps/antfarm.lua +++ b/map_gen/maps/antfarm.lua @@ -1,4 +1,5 @@ local b = require "map_gen.shared.builders" +local ScenarioInfo = require 'features.gui.info' local pic = require "map_gen.data.presets.antfarm" pic = b.decompress(pic) @@ -7,6 +8,10 @@ local scale_factor = 12 local shape = b.picture(pic) --shape = b.invert(shape) +ScenarioInfo.set_map_name('Antfarm') +ScenarioInfo.set_map_description('Relive your childhood memories as an antfarm of belts and inserters comes to life, in Factorio') +ScenarioInfo.set_map_extra_info('An unpredictable mix of terrain and void walls renders many blueprints useless.\nA good challenge for building in confined spaces.The challenges of a ribbon world without the wasted space - styled by ants!') + local map = b.single_pattern(shape, pic.width, pic.height) map = b.translate(map, -12, 2) map = b.scale(map, scale_factor, scale_factor) diff --git a/map_gen/maps/bacon_islands.lua b/map_gen/maps/bacon_islands.lua index b9ecb1d6..63d375d8 100644 --- a/map_gen/maps/bacon_islands.lua +++ b/map_gen/maps/bacon_islands.lua @@ -7,6 +7,7 @@ local Global = require 'utils.global' local degrees = require 'utils.math'.degrees local pig = b.picture(require 'map_gen.data.presets.pig') local ham = b.picture(require 'map_gen.data.presets.ham') +local ScenarioInfo = require 'features.gui.info' local ore_seed = nil @@ -17,6 +18,10 @@ RS.set_map_gen_settings( } ) +ScenarioInfo.set_map_name('Bacon Islands') +ScenarioInfo.set_map_description('Chew your way through resources and cook up a factory with some bacon strips!\nEnjoy the pig and ham themed resource patches - the circle of life, in Factorio.') +ScenarioInfo.set_map_extra_info('Infinite island world with bacon-strip shaped islands.\nPig and ham shaped resource patches.\nIsland strips connected with thin pieces of land, so landfill is disabled.') + local function build_map() local wave = b.sine_wave(64, 16, 4) diff --git a/map_gen/maps/christmas_tree_of_terror.lua b/map_gen/maps/christmas_tree_of_terror.lua index e7514a50..730e64fe 100644 --- a/map_gen/maps/christmas_tree_of_terror.lua +++ b/map_gen/maps/christmas_tree_of_terror.lua @@ -1,4 +1,5 @@ -- Map by Jayefuu, based on Triangle of Death map by grilledham +--TODO: rebalance and then enable market. local b = require 'map_gen.shared.builders' local Random = require 'map_gen.shared.random' @@ -23,11 +24,12 @@ RS.set_map_gen_settings( MGSP.cliff_none } ) +--disables the market and coin features. set line 28 to "true" instead of "false" to negate this. global.config.market.create_standard_market = false ScenarioInfo.set_map_name('Christmas Tree of Terror') ScenarioInfo.set_map_description("Triangle of death's Christmas cousin!\nThe further you go down the tree, the better your presents get. Have you been a good factory worker this year?") -ScenarioInfo.add_map_extra_info('Christmas tree shaped death world with plenty of loot to fight for.\nCan you reach the presents at the base of the tree?') +ScenarioInfo.add_map_extra_info('Christmas tree shaped death world.\nChristmas themed ore patches.\nLoot scattered in cars throughout the map.\nStandard market disabled.') local generator local ammos = { @@ -49,6 +51,7 @@ local ammos = { 'shotgun-shell' } +--Sets player ammo damage at a disadvantage. Change the number on line 59 to a less negative or positive integer to negate this. local function init_weapon_damage() local p_force = game.forces.player @@ -57,6 +60,7 @@ local function init_weapon_damage() end end +--Syncs ammo and turret damage techs between the player force and enemy. Event.add( defines.events.on_research_finished, function(event) diff --git a/map_gen/maps/crosses.lua b/map_gen/maps/crosses.lua deleted file mode 100644 index f51c1eb1..00000000 --- a/map_gen/maps/crosses.lua +++ /dev/null @@ -1,11 +0,0 @@ -local b = require "map_gen.shared.builders" - -local pic = require "map_gen.data.presets.crosses" -pic = b.decompress(pic) - -local shape = b.picture(pic) -local map = b.single_pattern(shape, pic.width, pic.height) -map = b.translate(map, 10, -4) -map = b.scale(map, 12, 12) - -return map \ No newline at end of file diff --git a/map_gen/maps/diagonal_ribbon.lua b/map_gen/maps/diagonal_ribbon.lua index 8968fab1..2aa54d47 100644 --- a/map_gen/maps/diagonal_ribbon.lua +++ b/map_gen/maps/diagonal_ribbon.lua @@ -9,6 +9,7 @@ local Global = require 'utils.global' local math = require 'utils.math' local RS = require 'map_gen.shared.redmew_surface' local MGSP = require 'resources.map_gen_settings' +local ScenarioInfo = require 'features.gui.info' local play_area_width = 50 -- The approximate width of the play area local oob_tile = 'out-of-map' -- The tiles that make up the out of bounds/world border. Recommended are out-of-map or water. @@ -26,7 +27,12 @@ local perlin_seed_2 = nil local custom_oregen = { autoplace_controls = { - coal = { + ['coal'] = { + frequency = 'high', + richness = 'poor', + size = 'low' + }, + ['stone'] = { frequency = 'high', richness = 'poor', size = 'low' @@ -62,6 +68,10 @@ RS.set_map_gen_settings( custom_oregen } ) +--Special thanks to the following following beta testers for their help with the map and map info: sockmeistr +ScenarioInfo.set_map_name('Diagonal Ribbon') +ScenarioInfo.set_map_description('The terrain is spaghetti, make a base that fits it!') +ScenarioInfo.set_map_extra_info('Variable-length ribbon world stretching diagonally.\nResources have a higher frequency but lower richness.\nAverage usable space of 50 tiles.') Global.register_init( {}, diff --git a/map_gen/maps/diggy/feature/diggy_cave_collapse.lua b/map_gen/maps/diggy/feature/diggy_cave_collapse.lua index 1054e170..b01fca2f 100644 --- a/map_gen/maps/diggy/feature/diggy_cave_collapse.lua +++ b/map_gen/maps/diggy/feature/diggy_cave_collapse.lua @@ -334,8 +334,9 @@ end @param global_config Table {@see Diggy.Config}. ]] +--Special thanks to justarandomgeek from the main factorio discord guild for helping to teach orange how image classes work. function DiggyCaveCollapse.register(cfg) - ScoreTracker.register(cave_collapses_name, {'diggy.score_cave_collapses'}, '[img=entity.assembler-wreck]') + ScoreTracker.register(cave_collapses_name, {'diggy.score_cave_collapses'}, '[img=entity.small-remnants]') local global_to_show = global.config.score.global_to_show global_to_show[#global_to_show + 1] = cave_collapses_name diff --git a/map_gen/maps/dna.lua b/map_gen/maps/dna.lua index 8e54b854..cec8ae24 100644 --- a/map_gen/maps/dna.lua +++ b/map_gen/maps/dna.lua @@ -3,6 +3,8 @@ local math = require 'utils.math' local degrees = math.degrees local RS = require 'map_gen.shared.redmew_surface' local MGSP = require 'resources.map_gen_settings' +local ScenarioInfo = require 'features.gui.info' +local Event = require 'utils.event' RS.set_map_gen_settings( { @@ -11,6 +13,12 @@ RS.set_map_gen_settings( } ) + +--Special thanks to the following beta testers for their help with the map and map info: melechkibitzer +ScenarioInfo.set_map_name('DNA') +ScenarioInfo.set_map_description('Help research the gigantic genome, and turn this molecule into a megafactory.\nThe mutations in this DNA have blessed you with generous ore patches.') +ScenarioInfo.set_map_extra_info('Double-helix shaped map generation.\nCircular ore patches with rich cores, connected by thin land strips.\nLandfill disabled.') + local ball_r = 16 local big_circle = b.circle(ball_r) local small_circle = b.circle(0.6 * ball_r) @@ -152,4 +160,8 @@ map = b.change_map_gen_collision_tile(map, 'water-tile', 'grass-1') map = b.scale(map, 5, 5) +Event.on_init(function() + game.forces['player'].technologies['landfill'].enabled = false +end) + return map diff --git a/map_gen/maps/double_beach.lua b/map_gen/maps/double_beach.lua index 3923adcc..792073d0 100644 --- a/map_gen/maps/double_beach.lua +++ b/map_gen/maps/double_beach.lua @@ -2,6 +2,7 @@ local b = require 'map_gen.shared.builders' local beach = require 'map_gen.maps.beach' local RS = require 'map_gen.shared.redmew_surface' local MGSP = require 'resources.map_gen_settings' +local ScenarioInfo = require 'features.gui.info' local degrees = require 'utils.math'.degrees @@ -12,6 +13,10 @@ RS.set_map_gen_settings( } ) +ScenarioInfo.set_map_name('Double Beach') +ScenarioInfo.set_map_description('Double the beach, double the fun!\nEnjoy twisting your way through this ribbon world, with sandy shores of plentiful ores.\nAnd oil is not a chore, since you find it right offshore!') +ScenarioInfo.set_map_extra_info('Slanted ribbon world with variable, but fairly constant width.\nMixed ore patches, with the exception of uranium pockets and one coal patch.') + local start_pound = b.circle(6) start_pound = b.translate(start_pound, 0, -16) start_pound = b.change_tile(start_pound, true, 'water') diff --git a/map_gen/maps/factorio_logo.lua b/map_gen/maps/factorio_logo.lua deleted file mode 100644 index 296bbeb6..00000000 --- a/map_gen/maps/factorio_logo.lua +++ /dev/null @@ -1,22 +0,0 @@ --- Size of the logo. -local scale_factor = 6 - --- Distance between islands. -local island_distance_x = 256 -local island_distance_y = 128 - -local b = require "map_gen.shared.builders" - -local pic = require "map_gen.data.presets.factorio_logo" -pic = b.decompress(pic) - -local shape = b.picture(pic) -shape = b.scale(shape, scale_factor, scale_factor) - -local pattern_width = scale_factor * pic.width + island_distance_x -local pattern_height = scale_factor * pic.height + island_distance_y -shape = b.single_pattern(shape, pattern_width, pattern_height) - -shape = b.change_tile(shape, false, "deepwater") - -return shape diff --git a/map_gen/maps/factorio_logo2.lua b/map_gen/maps/factory_squared.lua similarity index 100% rename from map_gen/maps/factorio_logo2.lua rename to map_gen/maps/factory_squared.lua diff --git a/map_gen/maps/factory.lua b/map_gen/maps/loading_screen.lua similarity index 100% rename from map_gen/maps/factory.lua rename to map_gen/maps/loading_screen.lua diff --git a/map_gen/maps/crosses3.lua b/map_gen/maps/x-cross.lua similarity index 96% rename from map_gen/maps/crosses3.lua rename to map_gen/maps/x-cross.lua index 2ad06a1e..a7392b98 100644 --- a/map_gen/maps/crosses3.lua +++ b/map_gen/maps/x-cross.lua @@ -7,7 +7,7 @@ local b = require "map_gen.shared.builders" local ScenarioInfo = require 'features.gui.info' --Special thanks to the following beta testers for their help with the map and map info: T-A-R -ScenarioInfo.set_map_name('Crosses 3') +ScenarioInfo.set_map_name('X-Cross') ScenarioInfo.set_map_description('Starting on the crossroads, you must choose wise to find a to escape.\nDo not get lost in this infinite maze of crosses.\nAnd careful not to hurt your neck, since this time, the maze is slightly on an angle.') ScenarioInfo.add_map_extra_info('Confined, but predicatable space provides a moderate challenge.')