1 for (int c0 = 0; c0 <= 36; c0 += 1) {
2   for (int c1 = -6; c1 < c0 / 14 - 5; c1 += 1) {
3     for (int c2 = -((-2 * c1 + 3) / 5) + 9; c2 <= c1 + 12; c2 += 1)
4       S6(c0, c1, c2);
5     for (int c2 = c1 + 24; c2 <= -2 * c1 + 24; c2 += 1)
6       S2(c0, c1, c2);
7     for (int c2 = -2 * c1 + 30; c2 <= c1 + 48; c2 += 1)
8       S1(c0, c1, c2);
9   }
10   for (int c1 = c0 / 14 - 5; c1 < 0; c1 += 1) {
11     if (c1 >= -3 && 2 * c0 >= 7 * c1 + 42)
12       S7(c0, c1, 6);
13     for (int c2 = max(c1 - (6 * c0 + 77) / 77 + 13, -((-2 * c1 + 3) / 5) + 9); c2 <= c1 + 12; c2 += 1)
14       S6(c0, c1, c2);
15     for (int c2 = c1 - (3 * c0 + 14) / 14 + 49; c2 <= c1 + 48; c2 += 1)
16       S1(c0, c1, c2);
17   }
18   S3(c0, 0, 0);
19   S10(c0, 0, 0);
20   for (int c2 = 1; c2 <= 5; c2 += 1)
21     S3(c0, 0, c2);
22   for (int c2 = 6; c2 <= 2 * c0 / 21 + 4; c2 += 1) {
23     S3(c0, 0, c2);
24     S7(c0, 0, c2);
25   }
26   for (int c2 = max(6, 2 * c0 / 21 + 5); c2 <= -((6 * c0 + 77) / 77) + 12; c2 += 1)
27     S3(c0, 0, c2);
28   for (int c2 = -((6 * c0 + 77) / 77) + 13; c2 <= 12; c2 += 1) {
29     S3(c0, 0, c2);
30     S6(c0, 0, c2);
31   }
32   for (int c2 = 13; c2 <= 24; c2 += 1)
33     S3(c0, 0, c2);
34   for (int c2 = -((3 * c0 + 14) / 14) + 49; c2 <= 48; c2 += 1)
35     S1(c0, 0, c2);
36   for (int c1 = 1; c1 <= 18; c1 += 1) {
37     for (int c2 = -8 * c1; c2 <= min(6, -8 * c1 + 24); c2 += 1)
38       S3(c0, c1, c2);
39     if (c0 <= 34 && c1 == 1) {
40       S3(c0, 1, 7);
41     } else if (c1 == 2) {
42       S3(c0, 2, 7);
43     } else if (c0 >= 35 && c1 == 1) {
44       S3(c0, 1, 7);
45       S7(c0, 1, 7);
46     }
47     for (int c2 = 8; c2 <= min(-8 * c1 + 24, c1 - (6 * c0 + 77) / 77 + 12); c2 += 1)
48       S3(c0, c1, c2);
49     if (c1 == 1) {
50       for (int c2 = -((6 * c0 + 77) / 77) + 14; c2 <= 13; c2 += 1) {
51         S3(c0, 1, c2);
52         S6(c0, 1, c2);
53       }
54       for (int c2 = 14; c2 <= 16; c2 += 1)
55         S3(c0, 1, c2);
56     }
57     for (int c2 = max(-8 * c1 + 25, c1 - (6 * c0 + 77) / 77 + 13); c2 <= c1 + 12; c2 += 1)
58       S6(c0, c1, c2);
59     for (int c2 = c1 - (3 * c0 + 14) / 14 + 49; c2 <= c1 + 48; c2 += 1)
60       S1(c0, c1, c2);
61   }
62   for (int c1 = 19; c1 <= 24; c1 += 1) {
63     for (int c2 = -8 * c1; c2 <= -8 * c1 + 24; c2 += 1)
64       S3(c0, c1, c2);
65     for (int c2 = c1 - (6 * c0 + 77) / 77 + 13; c2 <= 30; c2 += 1)
66       S6(c0, c1, c2);
67   }
68 }
69 for (int c0 = 37; c0 <= 218; c0 += 1) {
70   for (int c1 = (c0 + 5) / 14 - 8; c1 < min(0, c0 / 14 - 5); c1 += 1) {
71     if (c0 <= 46 && c1 == -3)
72       S7(c0, -3, 6);
73     if (77 * c1 + 77 * ((-2 * c1 - 2) / 5) + 524 >= 6 * c0)
74       S6(c0, c1, -((-2 * c1 + 3) / 5) + 9);
75     for (int c2 = c1 + 24; c2 <= -2 * c1 + 24; c2 += 1)
76       S2(c0, c1, c2);
77     for (int c2 = -2 * c1 + 30; c2 <= c1 - (3 * c0 + 17) / 14 + 56; c2 += 1)
78       S1(c0, c1, c2);
79   }
80   if (c0 <= 148)
81     for (int c1 = max(0, (c0 + 5) / 14 - 8); c1 < c0 / 14 - 5; c1 += 1) {
82       if (c1 == 0)
83         S2(c0, 0, 24);
84       for (int c2 = max(c1 + 24, -2 * c1 + 30); c2 <= c1 - (3 * c0 + 17) / 14 + 56; c2 += 1)
85         S1(c0, c1, c2);
86     }
87   if (c0 >= 70 && c0 % 14 >= 9)
88     for (int c2 = max((c0 + 5) / 14 + 18, -((3 * c0 + 14) / 14) + c0 / 14 + 44); c2 <= -((3 * c0 + 17) / 14) + c0 / 14 + 51; c2 += 1)
89       S1(c0, c0 / 14 - 5, c2);
90   for (int c1 = c0 / 14 - 5; c1 < 0; c1 += 1) {
91     if (7 * c1 + 114 >= 2 * c0)
92       S7(c0, c1, 6);
93     for (int c2 = max(8, c1 - (6 * c0 + 77) / 77 + 13); c2 <= c1 - (6 * c0 + 91) / 77 + 15; c2 += 1)
94       S6(c0, c1, c2);
95     for (int c2 = c1 - (3 * c0 + 14) / 14 + 49; c2 <= c1 - (3 * c0 + 17) / 14 + 56; c2 += 1)
96       S1(c0, c1, c2);
97   }
98   for (int c1 = max(0, (c0 + 5) / 14 - 5); c1 < c0 / 14 - 2; c1 += 1) {
99     for (int c2 = max(c1, -2 * c1 + 6); c2 <= min(c1 + 5, -2 * c1 + 24); c2 += 1)
100       S9(c0, c1, c2);
101     for (int c2 = c1 + 6; c2 <= min((2 * c1 + 1) / 5 + 7, (2 * c0 - 7 * c1 - 10) / 21 + 1); c2 += 1)
102       S9(c0, c1, c2);
103     for (int c2 = max(c1 + 6, (2 * c0 - 7 * c1 - 10) / 21 + 2); c2 <= (2 * c1 + 1) / 5 + 7; c2 += 1) {
104       S7(c0, c1, c2);
105       S9(c0, c1, c2);
106     }
107     if (c1 <= 3)
108       S9(c0, c1, (2 * c1 + 1) / 5 + 8);
109     for (int c2 = (2 * c1 + 1) / 5 + 9; c2 <= c1 - (6 * c0 + 91) / 77 + 15; c2 += 1) {
110       S6(c0, c1, c2);
111       S9(c0, c1, c2);
112     }
113     for (int c2 = max(max(c1 + 6, c1 - (6 * c0 + 91) / 77 + 16), (2 * c1 + 1) / 5 + 9); c2 <= -2 * c1 + 24; c2 += 1)
114       S9(c0, c1, c2);
115     for (int c2 = max(c1, -2 * c1 + 30); c2 <= min(c1 + 24, c1 - (3 * c0 + 17) / 14 + 47); c2 += 1)
116       S8(c0, c1, c2);
117     for (int c2 = max(c1 + 24, c1 - (3 * c0 + 14) / 14 + 49); c2 <= c1 - (3 * c0 + 17) / 14 + 56; c2 += 1)
118       S1(c0, c1, c2);
119   }
120   for (int c1 = c0 / 14 - 2; c1 <= 18; c1 += 1) {
121     for (int c2 = max(6, (c0 + 5) / 14 + 1); c2 <= min(min(c1, c0 / 14 + 3), -c1 + c1 / 2 + 18); c2 += 1)
122       S5(c0, c1, c2);
123     for (int c2 = max(c1 + (3 * c0 + 3) / 14 - 40, -c1 + (c1 + 1) / 2 + 21); c2 <= min(c1, c1 + 3 * c0 / 14 - 33); c2 += 1)
124       S4(c0, c1, c2);
125     for (int c2 = c1 + 6; c2 <= min((2 * c1 + 1) / 5 + 7, (2 * c0 - 7 * c1 + 63) / 21 + 1); c2 += 1)
126       S7(c0, c1, c2);
127     for (int c2 = max(max(c1 + 6, c1 - (6 * c0 + 77) / 77 + 13), (2 * c1 + 1) / 5 + 9); c2 <= c1 - (6 * c0 + 91) / 77 + 15; c2 += 1)
128       S6(c0, c1, c2);
129     for (int c2 = max(c1, c1 - (3 * c0 + 14) / 14 + 40); c2 <= min(c1 + 24, c1 - (3 * c0 + 17) / 14 + 47); c2 += 1)
130       S8(c0, c1, c2);
131     for (int c2 = max(c1 + 24, c1 - (3 * c0 + 14) / 14 + 49); c2 <= c1 - (3 * c0 + 17) / 14 + 56; c2 += 1)
132       S1(c0, c1, c2);
133   }
134   for (int c1 = 19; c1 <= 24; c1 += 1) {
135     for (int c2 = max(c1 - 12, (c0 + 5) / 14 + 1); c2 <= min(c0 / 14 + 3, -c1 + c1 / 2 + 18); c2 += 1)
136       S5(c0, c1, c2);
137     for (int c2 = max(max(c1 - 12, c1 + (3 * c0 + 3) / 14 - 40), -c1 + (c1 + 1) / 2 + 21); c2 <= min(c1, c1 + 3 * c0 / 14 - 33); c2 += 1)
138       S4(c0, c1, c2);
139     for (int c2 = max(c1 + 6, c1 - (6 * c0 + 77) / 77 + 13); c2 <= min(30, c1 - (6 * c0 + 91) / 77 + 15); c2 += 1)
140       S6(c0, c1, c2);
141     for (int c2 = max(c1, c1 - (3 * c0 + 14) / 14 + 40); c2 <= min(c1 + 24, c1 - (3 * c0 + 17) / 14 + 47); c2 += 1)
142       S8(c0, c1, c2);
143   }
144   for (int c1 = 25; c1 <= min(42, -((3 * c0 + 17) / 14) + 71); c1 += 1)
145     for (int c2 = max(c1 - 12, c1 + (3 * c0 + 3) / 14 - 40); c2 <= min(min(30, c1), c1 + 3 * c0 / 14 - 33); c2 += 1)
146       S4(c0, c1, c2);
147 }
148