nds/model/icosphere.h

2305 lines
34 KiB
C

#include "model.h"
// .6 fixed-point
struct vertex_position icosphere_positions[] = {
{0, -64, 0},
{46, -29, 33},
{-18, -29, 54},
{-58, -29, 0},
{-18, -29, -55},
{46, -29, -34},
{17, 28, 54},
{-47, 28, 33},
{-47, 28, -34},
{17, 28, -55},
{57, 28, 0},
{0, 64, 0},
{-15, -43, 45},
{-11, -55, 31},
{-5, -62, 15},
{13, -62, 9},
{27, -55, 19},
{39, -43, 28},
{34, -33, 43},
{16, -34, 51},
{-2, -33, 55},
{52, -33, -19},
{54, -34, 0},
{52, -33, 18},
{13, -62, -10},
{27, -55, -20},
{39, -43, -29},
{-49, -43, 0},
{-34, -55, 0},
{-17, -62, 0},
{-31, -33, 45},
{-45, -34, 31},
{-54, -33, 15},
{-15, -43, -46},
{-11, -55, -32},
{-5, -62, -16},
{-54, -33, -16},
{-45, -34, -32},
{-31, -33, -46},
{-2, -33, -56},
{16, -34, -52},
{34, -33, -44},
{61, 16, 9},
{60, 0, 19},
{55, -17, 28},
{55, -17, -29},
{60, 0, -20},
{61, 16, -10},
{9, 16, 61},
{0, 0, 64},
{-10, -17, 61},
{43, -17, 43},
{37, 0, 51},
{27, 16, 55},
{-56, 16, 28},
{-61, 0, 19},
{-62, -17, 9},
{-28, -17, 55},
{-38, 0, 51},
{-44, 16, 43},
{-44, 16, -44},
{-38, 0, -52},
{-28, -17, -56},
{-62, -17, -10},
{-61, 0, -20},
{-56, 16, -29},
{27, 16, -56},
{37, 0, -52},
{43, -17, -44},
{-10, -17, -62},
{0, 0, -64},
{9, 16, -62},
{53, 32, 15},
{44, 33, 31},
{30, 32, 45},
{1, 32, 55},
{-17, 33, 51},
{-35, 32, 43},
{-53, 32, 18},
{-55, 33, 0},
{-53, 32, -19},
{-35, 32, -44},
{-17, 33, -52},
{1, 32, -56},
{30, 32, -46},
{44, 33, -32},
{53, 32, -16},
{4, 61, 15},
{10, 54, 31},
{14, 42, 45},
{48, 42, 0},
{33, 54, 0},
{16, 61, 0},
{-14, 61, 9},
{-28, 54, 19},
{-40, 42, 28},
{-14, 61, -10},
{-28, 54, -20},
{-40, 42, -29},
{4, 61, -16},
{10, 54, -32},
{14, 42, -46},
{23, 57, -17},
{40, 46, -17},
{28, 46, -34},
{-9, 57, -28},
{-4, 46, -45},
{-24, 46, -38},
{-29, 57, 0},
{-43, 46, -11},
{-43, 46, 10},
{-9, 57, 27},
{-24, 46, 37},
{-4, 46, 44},
{23, 57, 16},
{28, 46, 33},
{40, 46, 16},
{55, 17, -28},
{51, 0, -38},
{42, 17, -45},
{-9, 17, -61},
{-20, 0, -61},
{-29, 17, -55},
{-61, 17, -11},
{-64, 0, 0},
{-61, 17, 10},
{-29, 17, 54},
{-20, -1, 60},
{-9, 17, 60},
{42, 17, 44},
{51, -1, 37},
{55, 17, 27},
{19, 0, -61},
{28, -18, -55},
{8, -18, -61},
{-52, 0, -38},
{-43, -18, -45},
{-56, -18, -28},
{-52, 0, 37},
{-56, -18, 27},
{-43, -18, 44},
{19, 0, 60},
{8, -18, 60},
{28, -18, 54},
{64, 0, 0},
{60, -18, 10},
{60, -18, -11},
{23, -47, -38},
{8, -58, -28},
{3, -47, -45},
{-29, -47, -34},
{-24, -58, -17},
{-41, -47, -17},
{-41, -47, 16},
{-24, -58, 16},
{-29, -47, 33},
{42, -47, -11},
{42, -47, 10},
{28, -58, 0},
{3, -47, 44},
{8, -58, 27},
{23, -47, 37},
};
// .15 fixed-point
struct vertex_texture icosphere_textures[] = {
{5957, 0},
{6702, 1289},
{5213, 1289},
{8936, 5159},
{9681, 3869},
{10426, 5159},
{29789, 0},
{30533, 1289},
{29044, 1289},
{23831, 0},
{24576, 1289},
{23086, 1289},
{17873, 0},
{18618, 1289},
{17128, 1289},
{9681, 6449},
{2978, 5159},
{4468, 5159},
{3723, 6449},
{26810, 5159},
{28299, 5159},
{27554, 6449},
{20852, 5159},
{22341, 5159},
{21597, 6449},
{14894, 5159},
{16384, 5159},
{15639, 6449},
{8192, 6449},
{2234, 6449},
{26065, 6449},
{20107, 6449},
{14149, 6449},
{5957, 10319},
{7447, 10319},
{6702, 11609},
{0, 10319},
{1489, 10319},
{744, 11609},
{23831, 10319},
{25320, 10319},
{24576, 11609},
{17873, 10319},
{19362, 10319},
{18618, 11609},
{11915, 10319},
{13405, 10319},
{12660, 11609},
{14149, 14189},
{15639, 14189},
{14894, 15479},
{13405, 12899},
{14894, 12899},
{14149, 11609},
{16384, 12899},
{15639, 11609},
{17128, 11609},
{14894, 10319},
{16384, 10319},
{20107, 14189},
{21597, 14189},
{20852, 15479},
{19362, 12899},
{20852, 12899},
{20107, 11609},
{22341, 12899},
{21597, 11609},
{23086, 11609},
{20852, 10319},
{22341, 10319},
{26065, 14189},
{27554, 14189},
{26810, 15479},
{25320, 12899},
{26810, 12899},
{26065, 11609},
{28299, 12899},
{27554, 11609},
{29044, 11609},
{26810, 10319},
{28299, 10319},
{29789, 10319},
{2234, 14189},
{3723, 14189},
{2978, 15479},
{1489, 12899},
{2978, 12899},
{2234, 11609},
{4468, 12899},
{3723, 11609},
{5213, 11609},
{2978, 10319},
{4468, 10319},
{8192, 14189},
{9681, 14189},
{8936, 15479},
{7447, 12899},
{8936, 12899},
{8192, 11609},
{10426, 12899},
{9681, 11609},
{11170, 11609},
{8936, 10319},
{10426, 10319},
{12660, 9029},
{13405, 7739},
{14149, 9029},
{14894, 7739},
{15639, 9029},
{16384, 7739},
{17128, 9029},
{18618, 9029},
{19362, 7739},
{20107, 9029},
{20852, 7739},
{21597, 9029},
{22341, 7739},
{23086, 9029},
{24576, 9029},
{25320, 7739},
{26065, 9029},
{26810, 7739},
{27554, 9029},
{28299, 7739},
{29044, 9029},
{744, 9029},
{1489, 7739},
{2234, 9029},
{2978, 7739},
{3723, 9029},
{4468, 7739},
{5213, 9029},
{6702, 9029},
{7447, 7739},
{8192, 9029},
{8936, 7739},
{9681, 9029},
{10426, 7739},
{11170, 9029},
{17873, 7739},
{17128, 6449},
{18618, 6449},
{17873, 5159},
{19362, 5159},
{23831, 7739},
{23086, 6449},
{24576, 6449},
{23831, 5159},
{25320, 5159},
{30533, 9029},
{29789, 7739},
{29044, 6449},
{31278, 7739},
{30533, 6449},
{32023, 6449},
{29789, 5159},
{31278, 5159},
{32768, 5159},
{5957, 7739},
{5213, 6449},
{6702, 6449},
{5957, 5159},
{7447, 5159},
{11915, 7739},
{11170, 6449},
{12660, 6449},
{11915, 5159},
{13405, 5159},
{15639, 3869},
{16384, 2579},
{17128, 3869},
{17873, 2579},
{18618, 3869},
{19362, 2579},
{20107, 3869},
{21597, 3869},
{22341, 2579},
{23086, 3869},
{23831, 2579},
{24576, 3869},
{25320, 2579},
{26065, 3869},
{27554, 3869},
{28299, 2579},
{29044, 3869},
{29789, 2579},
{30533, 3869},
{31278, 2579},
{32023, 3869},
{14149, 3869},
{12660, 3869},
{11170, 3869},
{13405, 2579},
{11915, 2579},
{12660, 1289},
{10426, 2579},
{11170, 1289},
{11915, 0},
{3723, 3869},
{4468, 2579},
{5213, 3869},
{5957, 2579},
{6702, 3869},
{7447, 2579},
{8192, 3869},
};
// .9 fixed-point
struct vertex_normal icosphere_normals[] = {
{24, -506, 75},
{370, -284, 210},
{-65, -506, 46},
{-65, -506, -47},
{24, -506, -76},
{419, -205, 210},
{-72, -205, 464},
{-464, -205, 75},
{-216, -205, -418},
{330, -205, -334},
{394, -155, 286},
{-151, -155, 464},
{-489, -155, 0},
{-151, -155, -465},
{394, -155, -287},
{175, 283, 388},
{-316, 283, 286},
{-371, 283, -211},
{86, 283, -418},
{423, 283, -47},
{64, 505, -47},
{200, 468, -47},
{329, 388, -47},
{119, 490, -87},
{106, 468, -177},
{264, 428, -94},
{251, 406, -183},
{170, 428, -223},
{146, 388, -300},
{385, 326, -87},
{371, 304, -177},
{306, 344, -223},
{282, 304, -300},
{201, 326, -340},
{175, 283, -389},
{-25, 505, -76},
{17, 468, -205},
{57, 388, -329},
{-46, 490, -141},
{-135, 468, -156},
{-8, 428, -281},
{-97, 406, -296},
{-159, 428, -232},
{-240, 388, -232},
{36, 326, -394},
{-53, 304, -408},
{-118, 344, -361},
{-198, 304, -361},
{-261, 326, -297},
{-316, 283, -287},
{-80, 505, 0},
{-190, 468, -80},
{-295, 388, -156},
{-148, 490, 0},
{-190, 468, 79},
{-270, 428, -80},
{-311, 406, 0},
{-270, 428, 79},
{-295, 388, 155},
{-363, 326, -157},
{-405, 304, -77},
{-379, 344, 0},
{-405, 304, 76},
{-363, 326, 156},
{-371, 283, 210},
{-25, 505, 75},
{-135, 468, 155},
{-240, 388, 231},
{-46, 490, 140},
{17, 468, 204},
{-159, 428, 231},
{-97, 406, 295},
{-8, 428, 280},
{57, 388, 328},
{-261, 326, 296},
{-198, 304, 360},
{-118, 344, 360},
{-53, 304, 407},
{36, 326, 393},
{86, 283, 417},
{64, 505, 46},
{106, 468, 176},
{146, 388, 299},
{119, 490, 86},
{200, 468, 46},
{170, 428, 222},
{251, 406, 182},
{264, 428, 93},
{329, 388, 46},
{201, 326, 339},
{282, 304, 299},
{306, 344, 222},
{371, 304, 176},
{385, 326, 86},
{423, 283, 46},
{463, 204, -76},
{479, 89, -156},
{454, -41, -232},
{458, 178, -141},
{411, 225, -205},
{454, 49, -232},
{406, 96, -296},
{386, 184, -281},
{322, 225, -329},
{408, -88, -297},
{360, -41, -361},
{360, 49, -361},
{296, 89, -408},
{275, 178, -394},
{215, 204, -418},
{71, 204, -465},
{0, 89, -505},
{-80, -41, -505},
{8, 178, -480},
{-68, 225, -455},
{-80, 49, -504},
{-156, 96, -479},
{-148, 184, -455},
{-213, 225, -408},
{-156, -88, -480},
{-232, -41, -455},
{-232, 49, -455},
{-297, 89, -408},
{-289, 178, -384},
{-331, 204, -334},
{-420, 204, -211},
{-480, 89, -156},
{-505, -41, -80},
{-454, 178, -157},
{-454, 225, -77},
{-504, 49, -80},
{-503, 96, 0},
{-478, 184, 0},
{-454, 225, 76},
{-505, -88, 0},
{-505, -41, 79},
{-504, 49, 79},
{-480, 89, 155},
{-454, 178, 156},
{-420, 204, 210},
{-331, 204, 333},
{-297, 89, 407},
{-232, -41, 454},
{-289, 178, 383},
{-213, 225, 407},
{-232, 49, 454},
{-156, 96, 478},
{-148, 184, 454},
{-68, 225, 454},
{-156, -88, 479},
{-80, -41, 504},
{-80, 49, 503},
{0, 89, 504},
{8, 178, 479},
{71, 204, 464},
{215, 204, 417},
{296, 89, 407},
{360, -41, 360},
{275, 178, 393},
{322, 225, 328},
{360, 49, 360},
{406, 96, 295},
{386, 184, 280},
{411, 225, 204},
{408, -88, 296},
{454, -41, 231},
{454, 49, 231},
{479, 89, 155},
{458, 178, 140},
{463, 204, 75},
{150, 154, -465},
{231, 40, -455},
{296, -90, -408},
{155, 87, -480},
{79, 40, -505},
{231, -50, -455},
{155, -97, -479},
{79, -50, -504},
{-1, -90, -505},
{288, -179, -384},
{212, -226, -408},
{147, -185, -455},
{67, -226, -455},
{-9, -179, -480},
{-72, -205, -465},
{-395, 154, -287},
{-361, 40, -361},
{-297, -90, -408},
{-409, 87, -297},
{-455, 40, -232},
{-361, -50, -361},
{-407, -97, -296},
{-455, -50, -232},
{-480, -90, -156},
{-276, -179, -394},
{-323, -226, -329},
{-387, -185, -281},
{-412, -226, -205},
{-459, -179, -141},
{-464, -205, -76},
{-395, 154, 286},
{-455, 40, 231},
{-480, -90, 155},
{-409, 87, 296},
{-361, 40, 360},
{-455, -50, 231},
{-407, -97, 295},
{-361, -50, 360},
{-297, -90, 407},
{-459, -179, 140},
{-412, -226, 204},
{-387, -185, 280},
{-323, -226, 328},
{-276, -179, 393},
{-216, -205, 417},
{150, 154, 464},
{79, 40, 504},
{-1, -90, 504},
{155, 87, 479},
{231, 40, 454},
{79, -50, 503},
{155, -97, 478},
{231, -50, 454},
{296, -90, 407},
{-9, -179, 479},
{67, -226, 454},
{147, -185, 454},
{212, -226, 407},
{288, -179, 383},
{330, -205, 333},
{488, 154, 0},
{504, 40, 79},
{479, -90, 155},
{504, 87, 0},
{504, 40, -80},
{503, -50, 79},
{502, -97, 0},
{503, -50, -80},
{479, -90, -156},
{453, -179, 156},
{453, -226, 76},
{477, -185, 0},
{453, -226, -77},
{453, -179, -157},
{419, -205, -211},
{315, -284, -287},
{239, -389, -232},
{134, -469, -156},
{260, -327, -297},
{197, -305, -361},
{158, -429, -232},
{96, -407, -296},
{117, -345, -361},
{52, -305, -408},
{45, -491, -141},
{-18, -469, -205},
{7, -429, -281},
{-58, -389, -329},
{-37, -327, -394},
{-87, -284, -418},
{-176, -284, -389},
{-147, -389, -300},
{-107, -469, -177},
{-202, -327, -340},
{-283, -305, -300},
{-171, -429, -223},
{-252, -407, -183},
{-307, -345, -223},
{-372, -305, -177},
{-120, -491, -87},
{-201, -469, -47},
{-265, -429, -94},
{-330, -389, -47},
{-386, -327, -87},
{-424, -284, -47},
{-424, -284, 46},
{-330, -389, 46},
{-201, -469, 46},
{-386, -327, 86},
{-372, -305, 176},
{-265, -429, 93},
{-252, -407, 182},
{-307, -345, 222},
{-283, -305, 299},
{-120, -491, 86},
{-107, -469, 176},
{-171, -429, 222},
{-147, -389, 299},
{-202, -327, 339},
{-176, -284, 388},
{370, -284, -211},
{404, -305, -77},
{404, -305, 76},
{362, -327, -157},
{294, -389, -156},
{378, -345, 0},
{310, -407, 0},
{269, -429, -80},
{189, -469, -80},
{362, -327, 156},
{294, -389, 155},
{269, -429, 79},
{189, -469, 79},
{147, -491, 0},
{79, -506, 0},
{-87, -284, 417},
{-58, -389, 328},
{-18, -469, 204},
{-37, -327, 393},
{52, -305, 407},
{7, -429, 280},
{96, -407, 295},
{117, -345, 360},
{197, -305, 360},
{45, -491, 140},
{134, -469, 155},
{158, -429, 231},
{239, -389, 231},
{260, -327, 296},
{315, -284, 286},
};
struct triangle icosphere_triangles[] = {
{
{0, 0, 0},
{15, 1, 0},
{14, 2, 0},
},
{
{1, 3, 1},
{17, 4, 1},
{23, 5, 1},
},
{
{0, 6, 2},
{14, 7, 2},
{29, 8, 2},
},
{
{0, 9, 3},
{29, 10, 3},
{35, 11, 3},
},
{
{0, 12, 4},
{35, 13, 4},
{24, 14, 4},
},
{
{1, 3, 5},
{23, 5, 5},
{44, 15, 5},
},
{
{2, 16, 6},
{20, 17, 6},
{50, 18, 6},
},
{
{3, 19, 7},
{32, 20, 7},
{56, 21, 7},
},
{
{4, 22, 8},
{38, 23, 8},
{62, 24, 8},
},
{
{5, 25, 9},
{41, 26, 9},
{68, 27, 9},
},
{
{1, 3, 10},
{44, 15, 10},
{51, 28, 10},
},
{
{2, 16, 11},
{50, 18, 11},
{57, 29, 11},
},
{
{3, 19, 12},
{56, 21, 12},
{63, 30, 12},
},
{
{4, 22, 13},
{62, 24, 13},
{69, 31, 13},
},
{
{5, 25, 14},
{68, 27, 14},
{45, 32, 14},
},
{
{6, 33, 15},
{74, 34, 15},
{89, 35, 15},
},
{
{7, 36, 16},
{77, 37, 16},
{95, 38, 16},
},
{
{8, 39, 17},
{80, 40, 17},
{98, 41, 17},
},
{
{9, 42, 18},
{83, 43, 18},
{101, 44, 18},
},
{
{10, 45, 19},
{86, 46, 19},
{90, 47, 19},
},
{
{92, 48, 20},
{99, 49, 20},
{11, 50, 20},
},
{
{91, 51, 21},
{102, 52, 21},
{92, 48, 21},
},
{
{90, 47, 22},
{103, 53, 22},
{91, 51, 22},
},
{
{92, 48, 23},
{102, 52, 23},
{99, 49, 23},
},
{
{102, 52, 24},
{100, 54, 24},
{99, 49, 24},
},
{
{91, 51, 25},
{103, 53, 25},
{102, 52, 25},
},
{
{103, 53, 26},
{104, 55, 26},
{102, 52, 26},
},
{
{102, 52, 27},
{104, 55, 27},
{100, 54, 27},
},
{
{104, 55, 28},
{101, 56, 28},
{100, 54, 28},
},
{
{90, 47, 29},
{86, 46, 29},
{103, 53, 29},
},
{
{86, 46, 30},
{85, 57, 30},
{103, 53, 30},
},
{
{103, 53, 31},
{85, 57, 31},
{104, 55, 31},
},
{
{85, 57, 32},
{84, 58, 32},
{104, 55, 32},
},
{
{104, 55, 33},
{84, 58, 33},
{101, 56, 33},
},
{
{84, 58, 34},
{9, 42, 34},
{101, 56, 34},
},
{
{99, 59, 35},
{96, 60, 35},
{11, 61, 35},
},
{
{100, 62, 36},
{105, 63, 36},
{99, 59, 36},
},
{
{101, 44, 37},
{106, 64, 37},
{100, 62, 37},
},
{
{99, 59, 38},
{105, 63, 38},
{96, 60, 38},
},
{
{105, 63, 39},
{97, 65, 39},
{96, 60, 39},
},
{
{100, 62, 40},
{106, 64, 40},
{105, 63, 40},
},
{
{106, 64, 41},
{107, 66, 41},
{105, 63, 41},
},
{
{105, 63, 42},
{107, 66, 42},
{97, 65, 42},
},
{
{107, 66, 43},
{98, 67, 43},
{97, 65, 43},
},
{
{101, 44, 44},
{83, 43, 44},
{106, 64, 44},
},
{
{83, 43, 45},
{82, 68, 45},
{106, 64, 45},
},
{
{106, 64, 46},
{82, 68, 46},
{107, 66, 46},
},
{
{82, 68, 47},
{81, 69, 47},
{107, 66, 47},
},
{
{107, 66, 48},
{81, 69, 48},
{98, 67, 48},
},
{
{81, 69, 49},
{8, 39, 49},
{98, 67, 49},
},
{
{96, 70, 50},
{93, 71, 50},
{11, 72, 50},
},
{
{97, 73, 51},
{108, 74, 51},
{96, 70, 51},
},
{
{98, 41, 52},
{109, 75, 52},
{97, 73, 52},
},
{
{96, 70, 53},
{108, 74, 53},
{93, 71, 53},
},
{
{108, 74, 54},
{94, 76, 54},
{93, 71, 54},
},
{
{97, 73, 55},
{109, 75, 55},
{108, 74, 55},
},
{
{109, 75, 56},
{110, 77, 56},
{108, 74, 56},
},
{
{108, 74, 57},
{110, 77, 57},
{94, 76, 57},
},
{
{110, 77, 58},
{95, 78, 58},
{94, 76, 58},
},
{
{98, 41, 59},
{80, 40, 59},
{109, 75, 59},
},
{
{80, 40, 60},
{79, 79, 60},
{109, 75, 60},
},
{
{109, 75, 61},
{79, 79, 61},
{110, 77, 61},
},
{
{79, 79, 62},
{78, 80, 62},
{110, 77, 62},
},
{
{110, 77, 63},
{78, 80, 63},
{95, 78, 63},
},
{
{78, 80, 64},
{7, 81, 64},
{95, 78, 64},
},
{
{93, 82, 65},
{87, 83, 65},
{11, 84, 65},
},
{
{94, 85, 66},
{111, 86, 66},
{93, 82, 66},
},
{
{95, 38, 67},
{112, 87, 67},
{94, 85, 67},
},
{
{93, 82, 68},
{111, 86, 68},
{87, 83, 68},
},
{
{111, 86, 69},
{88, 88, 69},
{87, 83, 69},
},
{
{94, 85, 70},
{112, 87, 70},
{111, 86, 70},
},
{
{112, 87, 71},
{113, 89, 71},
{111, 86, 71},
},
{
{111, 86, 72},
{113, 89, 72},
{88, 88, 72},
},
{
{113, 89, 73},
{89, 90, 73},
{88, 88, 73},
},
{
{95, 38, 74},
{77, 37, 74},
{112, 87, 74},
},
{
{77, 37, 75},
{76, 91, 75},
{112, 87, 75},
},
{
{112, 87, 76},
{76, 91, 76},
{113, 89, 76},
},
{
{76, 91, 77},
{75, 92, 77},
{113, 89, 77},
},
{
{113, 89, 78},
{75, 92, 78},
{89, 90, 78},
},
{
{75, 92, 79},
{6, 33, 79},
{89, 90, 79},
},
{
{87, 93, 80},
{92, 94, 80},
{11, 95, 80},
},
{
{88, 96, 81},
{114, 97, 81},
{87, 93, 81},
},
{
{89, 35, 82},
{115, 98, 82},
{88, 96, 82},
},
{
{87, 93, 83},
{114, 97, 83},
{92, 94, 83},
},
{
{114, 97, 84},
{91, 99, 84},
{92, 94, 84},
},
{
{88, 96, 85},
{115, 98, 85},
{114, 97, 85},
},
{
{115, 98, 86},
{116, 100, 86},
{114, 97, 86},
},
{
{114, 97, 87},
{116, 100, 87},
{91, 99, 87},
},
{
{116, 100, 88},
{90, 101, 88},
{91, 99, 88},
},
{
{89, 35, 89},
{74, 34, 89},
{115, 98, 89},
},
{
{74, 34, 90},
{73, 102, 90},
{115, 98, 90},
},
{
{115, 98, 91},
{73, 102, 91},
{116, 100, 91},
},
{
{73, 102, 92},
{72, 103, 92},
{116, 100, 92},
},
{
{116, 100, 93},
{72, 103, 93},
{90, 101, 93},
},
{
{72, 103, 94},
{10, 45, 94},
{90, 101, 94},
},
{
{47, 104, 95},
{86, 46, 95},
{10, 45, 95},
},
{
{46, 105, 96},
{117, 106, 96},
{47, 104, 96},
},
{
{45, 32, 97},
{118, 107, 97},
{46, 105, 97},
},
{
{47, 104, 98},
{117, 106, 98},
{86, 46, 98},
},
{
{117, 106, 99},
{85, 57, 99},
{86, 46, 99},
},
{
{46, 105, 100},
{118, 107, 100},
{117, 106, 100},
},
{
{118, 107, 101},
{119, 108, 101},
{117, 106, 101},
},
{
{117, 106, 102},
{119, 108, 102},
{85, 57, 102},
},
{
{119, 108, 103},
{84, 58, 103},
{85, 57, 103},
},
{
{45, 32, 104},
{68, 27, 104},
{118, 107, 104},
},
{
{68, 27, 105},
{67, 109, 105},
{118, 107, 105},
},
{
{118, 107, 106},
{67, 109, 106},
{119, 108, 106},
},
{
{67, 109, 107},
{66, 110, 107},
{119, 108, 107},
},
{
{119, 108, 108},
{66, 110, 108},
{84, 58, 108},
},
{
{66, 110, 109},
{9, 42, 109},
{84, 58, 109},
},
{
{71, 111, 110},
{83, 43, 110},
{9, 42, 110},
},
{
{70, 112, 111},
{120, 113, 111},
{71, 111, 111},
},
{
{69, 31, 112},
{121, 114, 112},
{70, 112, 112},
},
{
{71, 111, 113},
{120, 113, 113},
{83, 43, 113},
},
{
{120, 113, 114},
{82, 68, 114},
{83, 43, 114},
},
{
{70, 112, 115},
{121, 114, 115},
{120, 113, 115},
},
{
{121, 114, 116},
{122, 115, 116},
{120, 113, 116},
},
{
{120, 113, 117},
{122, 115, 117},
{82, 68, 117},
},
{
{122, 115, 118},
{81, 69, 118},
{82, 68, 118},
},
{
{69, 31, 119},
{62, 24, 119},
{121, 114, 119},
},
{
{62, 24, 120},
{61, 116, 120},
{121, 114, 120},
},
{
{121, 114, 121},
{61, 116, 121},
{122, 115, 121},
},
{
{61, 116, 122},
{60, 117, 122},
{122, 115, 122},
},
{
{122, 115, 123},
{60, 117, 123},
{81, 69, 123},
},
{
{60, 117, 124},
{8, 39, 124},
{81, 69, 124},
},
{
{65, 118, 125},
{80, 40, 125},
{8, 39, 125},
},
{
{64, 119, 126},
{123, 120, 126},
{65, 118, 126},
},
{
{63, 30, 127},
{124, 121, 127},
{64, 119, 127},
},
{
{65, 118, 128},
{123, 120, 128},
{80, 40, 128},
},
{
{123, 120, 129},
{79, 79, 129},
{80, 40, 129},
},
{
{64, 119, 130},
{124, 121, 130},
{123, 120, 130},
},
{
{124, 121, 131},
{125, 122, 131},
{123, 120, 131},
},
{
{123, 120, 132},
{125, 122, 132},
{79, 79, 132},
},
{
{125, 122, 133},
{78, 80, 133},
{79, 79, 133},
},
{
{63, 30, 134},
{56, 21, 134},
{124, 121, 134},
},
{
{56, 21, 135},
{55, 123, 135},
{124, 121, 135},
},
{
{124, 121, 136},
{55, 123, 136},
{125, 122, 136},
},
{
{55, 123, 137},
{54, 124, 137},
{125, 122, 137},
},
{
{125, 122, 138},
{54, 124, 138},
{78, 80, 138},
},
{
{54, 124, 139},
{7, 81, 139},
{78, 80, 139},
},
{
{59, 125, 140},
{77, 37, 140},
{7, 36, 140},
},
{
{58, 126, 141},
{126, 127, 141},
{59, 125, 141},
},
{
{57, 29, 142},
{127, 128, 142},
{58, 126, 142},
},
{
{59, 125, 143},
{126, 127, 143},
{77, 37, 143},
},
{
{126, 127, 144},
{76, 91, 144},
{77, 37, 144},
},
{
{58, 126, 145},
{127, 128, 145},
{126, 127, 145},
},
{
{127, 128, 146},
{128, 129, 146},
{126, 127, 146},
},
{
{126, 127, 147},
{128, 129, 147},
{76, 91, 147},
},
{
{128, 129, 148},
{75, 92, 148},
{76, 91, 148},
},
{
{57, 29, 149},
{50, 18, 149},
{127, 128, 149},
},
{
{50, 18, 150},
{49, 130, 150},
{127, 128, 150},
},
{
{127, 128, 151},
{49, 130, 151},
{128, 129, 151},
},
{
{49, 130, 152},
{48, 131, 152},
{128, 129, 152},
},
{
{128, 129, 153},
{48, 131, 153},
{75, 92, 153},
},
{
{48, 131, 154},
{6, 33, 154},
{75, 92, 154},
},
{
{53, 132, 155},
{74, 34, 155},
{6, 33, 155},
},
{
{52, 133, 156},
{129, 134, 156},
{53, 132, 156},
},
{
{51, 28, 157},
{130, 135, 157},
{52, 133, 157},
},
{
{53, 132, 158},
{129, 134, 158},
{74, 34, 158},
},
{
{129, 134, 159},
{73, 102, 159},
{74, 34, 159},
},
{
{52, 133, 160},
{130, 135, 160},
{129, 134, 160},
},
{
{130, 135, 161},
{131, 136, 161},
{129, 134, 161},
},
{
{129, 134, 162},
{131, 136, 162},
{73, 102, 162},
},
{
{131, 136, 163},
{72, 103, 163},
{73, 102, 163},
},
{
{51, 28, 164},
{44, 15, 164},
{130, 135, 164},
},
{
{44, 15, 165},
{43, 137, 165},
{130, 135, 165},
},
{
{130, 135, 166},
{43, 137, 166},
{131, 136, 166},
},
{
{43, 137, 167},
{42, 138, 167},
{131, 136, 167},
},
{
{131, 136, 168},
{42, 138, 168},
{72, 103, 168},
},
{
{42, 138, 169},
{10, 45, 169},
{72, 103, 169},
},
{
{66, 110, 170},
{71, 111, 170},
{9, 42, 170},
},
{
{67, 109, 171},
{132, 139, 171},
{66, 110, 171},
},
{
{68, 27, 172},
{133, 140, 172},
{67, 109, 172},
},
{
{66, 110, 173},
{132, 139, 173},
{71, 111, 173},
},
{
{132, 139, 174},
{70, 112, 174},
{71, 111, 174},
},
{
{67, 109, 175},
{133, 140, 175},
{132, 139, 175},
},
{
{133, 140, 176},
{134, 141, 176},
{132, 139, 176},
},
{
{132, 139, 177},
{134, 141, 177},
{70, 112, 177},
},
{
{134, 141, 178},
{69, 31, 178},
{70, 112, 178},
},
{
{68, 27, 179},
{41, 26, 179},
{133, 140, 179},
},
{
{41, 26, 180},
{40, 142, 180},
{133, 140, 180},
},
{
{133, 140, 181},
{40, 142, 181},
{134, 141, 181},
},
{
{40, 142, 182},
{39, 143, 182},
{134, 141, 182},
},
{
{134, 141, 183},
{39, 143, 183},
{69, 31, 183},
},
{
{39, 143, 184},
{4, 22, 184},
{69, 31, 184},
},
{
{60, 117, 185},
{65, 118, 185},
{8, 39, 185},
},
{
{61, 116, 186},
{135, 144, 186},
{60, 117, 186},
},
{
{62, 24, 187},
{136, 145, 187},
{61, 116, 187},
},
{
{60, 117, 188},
{135, 144, 188},
{65, 118, 188},
},
{
{135, 144, 189},
{64, 119, 189},
{65, 118, 189},
},
{
{61, 116, 190},
{136, 145, 190},
{135, 144, 190},
},
{
{136, 145, 191},
{137, 146, 191},
{135, 144, 191},
},
{
{135, 144, 192},
{137, 146, 192},
{64, 119, 192},
},
{
{137, 146, 193},
{63, 30, 193},
{64, 119, 193},
},
{
{62, 24, 194},
{38, 23, 194},
{136, 145, 194},
},
{
{38, 23, 195},
{37, 147, 195},
{136, 145, 195},
},
{
{136, 145, 196},
{37, 147, 196},
{137, 146, 196},
},
{
{37, 147, 197},
{36, 148, 197},
{137, 146, 197},
},
{
{137, 146, 198},
{36, 148, 198},
{63, 30, 198},
},
{
{36, 148, 199},
{3, 19, 199},
{63, 30, 199},
},
{
{54, 124, 200},
{59, 149, 200},
{7, 81, 200},
},
{
{55, 123, 201},
{138, 150, 201},
{54, 124, 201},
},
{
{56, 21, 202},
{139, 151, 202},
{55, 123, 202},
},
{
{54, 124, 203},
{138, 150, 203},
{59, 149, 203},
},
{
{138, 150, 204},
{58, 152, 204},
{59, 149, 204},
},
{
{55, 123, 205},
{139, 151, 205},
{138, 150, 205},
},
{
{139, 151, 206},
{140, 153, 206},
{138, 150, 206},
},
{
{138, 150, 207},
{140, 153, 207},
{58, 152, 207},
},
{
{140, 153, 208},
{57, 154, 208},
{58, 152, 208},
},
{
{56, 21, 209},
{32, 20, 209},
{139, 151, 209},
},
{
{32, 20, 210},
{31, 155, 210},
{139, 151, 210},
},
{
{139, 151, 211},
{31, 155, 211},
{140, 153, 211},
},
{
{31, 155, 212},
{30, 156, 212},
{140, 153, 212},
},
{
{140, 153, 213},
{30, 156, 213},
{57, 154, 213},
},
{
{30, 156, 214},
{2, 157, 214},
{57, 154, 214},
},
{
{48, 131, 215},
{53, 132, 215},
{6, 33, 215},
},
{
{49, 130, 216},
{141, 158, 216},
{48, 131, 216},
},
{
{50, 18, 217},
{142, 159, 217},
{49, 130, 217},
},
{
{48, 131, 218},
{141, 158, 218},
{53, 132, 218},
},
{
{141, 158, 219},
{52, 133, 219},
{53, 132, 219},
},
{
{49, 130, 220},
{142, 159, 220},
{141, 158, 220},
},
{
{142, 159, 221},
{143, 160, 221},
{141, 158, 221},
},
{
{141, 158, 222},
{143, 160, 222},
{52, 133, 222},
},
{
{143, 160, 223},
{51, 28, 223},
{52, 133, 223},
},
{
{50, 18, 224},
{20, 17, 224},
{142, 159, 224},
},
{
{20, 17, 225},
{19, 161, 225},
{142, 159, 225},
},
{
{142, 159, 226},
{19, 161, 226},
{143, 160, 226},
},
{
{19, 161, 227},
{18, 162, 227},
{143, 160, 227},
},
{
{143, 160, 228},
{18, 162, 228},
{51, 28, 228},
},
{
{18, 162, 229},
{1, 3, 229},
{51, 28, 229},
},
{
{42, 138, 230},
{47, 104, 230},
{10, 45, 230},
},
{
{43, 137, 231},
{144, 163, 231},
{42, 138, 231},
},
{
{44, 15, 232},
{145, 164, 232},
{43, 137, 232},
},
{
{42, 138, 233},
{144, 163, 233},
{47, 104, 233},
},
{
{144, 163, 234},
{46, 105, 234},
{47, 104, 234},
},
{
{43, 137, 235},
{145, 164, 235},
{144, 163, 235},
},
{
{145, 164, 236},
{146, 165, 236},
{144, 163, 236},
},
{
{144, 163, 237},
{146, 165, 237},
{46, 105, 237},
},
{
{146, 165, 238},
{45, 32, 238},
{46, 105, 238},
},
{
{44, 15, 239},
{23, 5, 239},
{145, 164, 239},
},
{
{23, 5, 240},
{22, 166, 240},
{145, 164, 240},
},
{
{145, 164, 241},
{22, 166, 241},
{146, 165, 241},
},
{
{22, 166, 242},
{21, 167, 242},
{146, 165, 242},
},
{
{146, 165, 243},
{21, 167, 243},
{45, 32, 243},
},
{
{21, 167, 244},
{5, 25, 244},
{45, 32, 244},
},
{
{26, 168, 245},
{41, 26, 245},
{5, 25, 245},
},
{
{25, 169, 246},
{147, 170, 246},
{26, 168, 246},
},
{
{24, 14, 247},
{148, 171, 247},
{25, 169, 247},
},
{
{26, 168, 248},
{147, 170, 248},
{41, 26, 248},
},
{
{147, 170, 249},
{40, 142, 249},
{41, 26, 249},
},
{
{25, 169, 250},
{148, 171, 250},
{147, 170, 250},
},
{
{148, 171, 251},
{149, 172, 251},
{147, 170, 251},
},
{
{147, 170, 252},
{149, 172, 252},
{40, 142, 252},
},
{
{149, 172, 253},
{39, 143, 253},
{40, 142, 253},
},
{
{24, 14, 254},
{35, 13, 254},
{148, 171, 254},
},
{
{35, 13, 255},
{34, 173, 255},
{148, 171, 255},
},
{
{148, 171, 256},
{34, 173, 256},
{149, 172, 256},
},
{
{34, 173, 257},
{33, 174, 257},
{149, 172, 257},
},
{
{149, 172, 258},
{33, 174, 258},
{39, 143, 258},
},
{
{33, 174, 259},
{4, 22, 259},
{39, 143, 259},
},
{
{33, 175, 260},
{38, 23, 260},
{4, 22, 260},
},
{
{34, 176, 261},
{150, 177, 261},
{33, 175, 261},
},
{
{35, 11, 262},
{151, 178, 262},
{34, 176, 262},
},
{
{33, 175, 263},
{150, 177, 263},
{38, 23, 263},
},
{
{150, 177, 264},
{37, 147, 264},
{38, 23, 264},
},
{
{34, 176, 265},
{151, 178, 265},
{150, 177, 265},
},
{
{151, 178, 266},
{152, 179, 266},
{150, 177, 266},
},
{
{150, 177, 267},
{152, 179, 267},
{37, 147, 267},
},
{
{152, 179, 268},
{36, 148, 268},
{37, 147, 268},
},
{
{35, 11, 269},
{29, 10, 269},
{151, 178, 269},
},
{
{29, 10, 270},
{28, 180, 270},
{151, 178, 270},
},
{
{151, 178, 271},
{28, 180, 271},
{152, 179, 271},
},
{
{28, 180, 272},
{27, 181, 272},
{152, 179, 272},
},
{
{152, 179, 273},
{27, 181, 273},
{36, 148, 273},
},
{
{27, 181, 274},
{3, 19, 274},
{36, 148, 274},
},
{
{27, 182, 275},
{32, 20, 275},
{3, 19, 275},
},
{
{28, 183, 276},
{153, 184, 276},
{27, 182, 276},
},
{
{29, 8, 277},
{154, 185, 277},
{28, 183, 277},
},
{
{27, 182, 278},
{153, 184, 278},
{32, 20, 278},
},
{
{153, 184, 279},
{31, 155, 279},
{32, 20, 279},
},
{
{28, 183, 280},
{154, 185, 280},
{153, 184, 280},
},
{
{154, 185, 281},
{155, 186, 281},
{153, 184, 281},
},
{
{153, 184, 282},
{155, 186, 282},
{31, 155, 282},
},
{
{155, 186, 283},
{30, 156, 283},
{31, 155, 283},
},
{
{29, 8, 284},
{14, 7, 284},
{154, 185, 284},
},
{
{14, 7, 285},
{13, 187, 285},
{154, 185, 285},
},
{
{154, 185, 286},
{13, 187, 286},
{155, 186, 286},
},
{
{13, 187, 287},
{12, 188, 287},
{155, 186, 287},
},
{
{155, 186, 288},
{12, 188, 288},
{30, 156, 288},
},
{
{12, 188, 289},
{2, 157, 289},
{30, 156, 289},
},
{
{21, 167, 290},
{26, 189, 290},
{5, 25, 290},
},
{
{22, 166, 291},
{156, 190, 291},
{21, 167, 291},
},
{
{23, 5, 292},
{157, 191, 292},
{22, 166, 292},
},
{
{21, 167, 293},
{156, 190, 293},
{26, 189, 293},
},
{
{156, 190, 294},
{25, 192, 294},
{26, 189, 294},
},
{
{22, 166, 295},
{157, 191, 295},
{156, 190, 295},
},
{
{157, 191, 296},
{158, 193, 296},
{156, 190, 296},
},
{
{156, 190, 297},
{158, 193, 297},
{25, 192, 297},
},
{
{158, 193, 298},
{24, 194, 298},
{25, 192, 298},
},
{
{23, 5, 299},
{17, 4, 299},
{157, 191, 299},
},
{
{17, 4, 300},
{16, 195, 300},
{157, 191, 300},
},
{
{157, 191, 301},
{16, 195, 301},
{158, 193, 301},
},
{
{16, 195, 302},
{15, 196, 302},
{158, 193, 302},
},
{
{158, 193, 303},
{15, 196, 303},
{24, 194, 303},
},
{
{15, 196, 304},
{0, 197, 304},
{24, 194, 304},
},
{
{12, 198, 305},
{20, 17, 305},
{2, 16, 305},
},
{
{13, 199, 306},
{159, 200, 306},
{12, 198, 306},
},
{
{14, 2, 307},
{160, 201, 307},
{13, 199, 307},
},
{
{12, 198, 308},
{159, 200, 308},
{20, 17, 308},
},
{
{159, 200, 309},
{19, 161, 309},
{20, 17, 309},
},
{
{13, 199, 310},
{160, 201, 310},
{159, 200, 310},
},
{
{160, 201, 311},
{161, 202, 311},
{159, 200, 311},
},
{
{159, 200, 312},
{161, 202, 312},
{19, 161, 312},
},
{
{161, 202, 313},
{18, 162, 313},
{19, 161, 313},
},
{
{14, 2, 314},
{15, 1, 314},
{160, 201, 314},
},
{
{15, 1, 315},
{16, 203, 315},
{160, 201, 315},
},
{
{160, 201, 316},
{16, 203, 316},
{161, 202, 316},
},
{
{16, 203, 317},
{17, 204, 317},
{161, 202, 317},
},
{
{161, 202, 318},
{17, 204, 318},
{18, 162, 318},
},
{
{17, 204, 319},
{1, 3, 319},
{18, 162, 319},
},
};