DeepSDFStruct 1.7.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. DeepSDFStruct/SDF.py +1734 -0
  2. DeepSDFStruct/__init__.py +66 -0
  3. DeepSDFStruct/deep_sdf/__init__.py +69 -0
  4. DeepSDFStruct/deep_sdf/create_screenshots_from_plyfiles.py +65 -0
  5. DeepSDFStruct/deep_sdf/data.py +258 -0
  6. DeepSDFStruct/deep_sdf/metrics/__init__.py +14 -0
  7. DeepSDFStruct/deep_sdf/metrics/mesh_to_analytical.py +24 -0
  8. DeepSDFStruct/deep_sdf/models.py +197 -0
  9. DeepSDFStruct/deep_sdf/networks/__init__.py +8 -0
  10. DeepSDFStruct/deep_sdf/networks/analytic_round_cross.py +105 -0
  11. DeepSDFStruct/deep_sdf/networks/deep_sdf_decoder.py +155 -0
  12. DeepSDFStruct/deep_sdf/networks/hierarchical_deep_sdf_decoder.py +139 -0
  13. DeepSDFStruct/deep_sdf/networks/hierarchical_positional_sdf_decoder.py +190 -0
  14. DeepSDFStruct/deep_sdf/networks/resnet_positional_sdf_decoder.py +108 -0
  15. DeepSDFStruct/deep_sdf/nn_utils.py +70 -0
  16. DeepSDFStruct/deep_sdf/plotting.py +143 -0
  17. DeepSDFStruct/deep_sdf/reconstruction.py +165 -0
  18. DeepSDFStruct/deep_sdf/training.py +840 -0
  19. DeepSDFStruct/deep_sdf/workspace.py +363 -0
  20. DeepSDFStruct/design_of_experiments.py +235 -0
  21. DeepSDFStruct/flexicubes/__init__.py +15 -0
  22. DeepSDFStruct/flexicubes/flexicubes.py +1005 -0
  23. DeepSDFStruct/flexicubes/tables.py +2338 -0
  24. DeepSDFStruct/flexisquares/__init__.py +15 -0
  25. DeepSDFStruct/flexisquares/flexisquares.py +967 -0
  26. DeepSDFStruct/flexisquares/tables.py +63 -0
  27. DeepSDFStruct/lattice_structure.py +254 -0
  28. DeepSDFStruct/local_shapes.py +226 -0
  29. DeepSDFStruct/mesh.py +1184 -0
  30. DeepSDFStruct/optimization.py +357 -0
  31. DeepSDFStruct/parametrization.py +215 -0
  32. DeepSDFStruct/pretrained_models.py +128 -0
  33. DeepSDFStruct/sampling.py +670 -0
  34. DeepSDFStruct/sdf_operations.py +990 -0
  35. DeepSDFStruct/sdf_primitives.py +1416 -0
  36. DeepSDFStruct/splinepy_unitcells/__init__.py +35 -0
  37. DeepSDFStruct/splinepy_unitcells/chi_3D.py +1617 -0
  38. DeepSDFStruct/splinepy_unitcells/cross_lattice.py +165 -0
  39. DeepSDFStruct/splinepy_unitcells/double_lattice_extruded.py +298 -0
  40. DeepSDFStruct/splinepy_unitcells/snappy_3d.py +544 -0
  41. DeepSDFStruct/torch_spline.py +446 -0
  42. DeepSDFStruct/trained_models/analytic_round_cross/LatentCodes/latest.pth +0 -0
  43. DeepSDFStruct/trained_models/analytic_round_cross/ModelParameters/latest.pth +0 -0
  44. DeepSDFStruct/trained_models/analytic_round_cross/OptimizerParameters/latest.pth +0 -0
  45. DeepSDFStruct/trained_models/analytic_round_cross/specs.json +45 -0
  46. DeepSDFStruct/trained_models/chi_and_cross/LatentCodes/latest.pth +0 -0
  47. DeepSDFStruct/trained_models/chi_and_cross/Logs.pth +0 -0
  48. DeepSDFStruct/trained_models/chi_and_cross/ModelParameters/latest.pth +0 -0
  49. DeepSDFStruct/trained_models/chi_and_cross/OptimizerParameters/latest.pth +0 -0
  50. DeepSDFStruct/trained_models/chi_and_cross/specs.json +76 -0
  51. DeepSDFStruct/trained_models/primitives/LatentCodes/latest.pth +0 -0
  52. DeepSDFStruct/trained_models/primitives/ModelParameters/latest.pth +0 -0
  53. DeepSDFStruct/trained_models/primitives/OptimizerParameters/latest.pth +0 -0
  54. DeepSDFStruct/trained_models/primitives/specs.json +46 -0
  55. DeepSDFStruct/trained_models/primitives_2d/LatentCodes/latest.pth +0 -0
  56. DeepSDFStruct/trained_models/primitives_2d/ModelParameters/latest.pth +0 -0
  57. DeepSDFStruct/trained_models/primitives_2d/OptimizerParameters/latest.pth +0 -0
  58. DeepSDFStruct/trained_models/primitives_2d/specs.json +46 -0
  59. DeepSDFStruct/trained_models/round_cross/LatentCodes/latest.pth +0 -0
  60. DeepSDFStruct/trained_models/round_cross/Logs.pth +0 -0
  61. DeepSDFStruct/trained_models/round_cross/ModelParameters/latest.pth +0 -0
  62. DeepSDFStruct/trained_models/round_cross/OptimizerParameters/latest.pth +0 -0
  63. DeepSDFStruct/trained_models/round_cross/specs.json +45 -0
  64. DeepSDFStruct/trained_models/test_experiment/LatentCodes/latent_code_data_map.json +106 -0
  65. DeepSDFStruct/trained_models/test_experiment/specs.json +45 -0
  66. DeepSDFStruct/trained_models/test_experiment/training_summary.json +10 -0
  67. DeepSDFStruct/trained_models/test_experiment_hierarchical/LatentCodes/latent_code_data_map.json +106 -0
  68. DeepSDFStruct/trained_models/test_experiment_hierarchical/specs.json +45 -0
  69. DeepSDFStruct/trained_models/test_experiment_hierarchical/training_summary.json +10 -0
  70. DeepSDFStruct/trained_models/test_experiment_homogenization/LatentCodes/latent_code_data_map.json +5006 -0
  71. DeepSDFStruct/trained_models/test_experiment_homogenization/LatentCodes/latest.pth +0 -0
  72. DeepSDFStruct/trained_models/test_experiment_homogenization/Logs.png +0 -0
  73. DeepSDFStruct/trained_models/test_experiment_homogenization/ModelParameters/latest.pth +0 -0
  74. DeepSDFStruct/trained_models/test_experiment_homogenization/OptimizerParameters/latest.pth +0 -0
  75. DeepSDFStruct/trained_models/test_experiment_homogenization/specs.json +83 -0
  76. DeepSDFStruct/trained_models/test_experiment_homogenization/training_summary.json +10 -0
  77. DeepSDFStruct/utils.py +96 -0
  78. DeepSDFStruct/visualization/latent_viewer.py +211 -0
  79. DeepSDFStruct/visualization/latent_viewer_cli.py +8 -0
  80. benchmarks/generate_sdf_showcase.py +622 -0
  81. benchmarks/sdf_from_mesh_benchmark.py +52 -0
  82. benchmarks/sdf_from_mesh_comparison.md +33 -0
  83. benchmarks/sdf_showcase/operations/boolean/difference_sphere_box.png +0 -0
  84. benchmarks/sdf_showcase/operations/boolean/union_sphere_box.png +0 -0
  85. benchmarks/sdf_showcase/operations/transformations/circular_array_sphere.png +0 -0
  86. benchmarks/sdf_showcase/operations/transformations/dilate_sphere.png +0 -0
  87. benchmarks/sdf_showcase/operations/transformations/mirror_sphere.png +0 -0
  88. benchmarks/sdf_showcase/operations/transformations/repeat_sphere.png +0 -0
  89. benchmarks/sdf_showcase/operations/transformations/revolve_circle.png +0 -0
  90. benchmarks/sdf_showcase/operations/transformations/shell_sphere.png +0 -0
  91. benchmarks/sdf_showcase/operations/transformations/twist_torus.png +0 -0
  92. benchmarks/sdf_showcase/primitives/2D/circle.png +0 -0
  93. benchmarks/sdf_showcase/primitives/2D/equilateral_triangle.png +0 -0
  94. benchmarks/sdf_showcase/primitives/2D/hexagon.png +0 -0
  95. benchmarks/sdf_showcase/primitives/2D/polygon_pentagon.png +0 -0
  96. benchmarks/sdf_showcase/primitives/2D/rectangle.png +0 -0
  97. benchmarks/sdf_showcase/primitives/2D/rounded_rectangle.png +0 -0
  98. benchmarks/sdf_showcase/primitives/3D/box.png +0 -0
  99. benchmarks/sdf_showcase/primitives/3D/capped_cone.png +0 -0
  100. benchmarks/sdf_showcase/primitives/3D/capped_cylinder.png +0 -0
  101. benchmarks/sdf_showcase/primitives/3D/capsule.png +0 -0
  102. benchmarks/sdf_showcase/primitives/3D/cone.png +0 -0
  103. benchmarks/sdf_showcase/primitives/3D/corner_spheres.png +0 -0
  104. benchmarks/sdf_showcase/primitives/3D/cross_ms.png +0 -0
  105. benchmarks/sdf_showcase/primitives/3D/cylinder.png +0 -0
  106. benchmarks/sdf_showcase/primitives/3D/dodecahedron.png +0 -0
  107. benchmarks/sdf_showcase/primitives/3D/ellipsoid.png +0 -0
  108. benchmarks/sdf_showcase/primitives/3D/icosahedron.png +0 -0
  109. benchmarks/sdf_showcase/primitives/3D/octahedron.png +0 -0
  110. benchmarks/sdf_showcase/primitives/3D/pyramid.png +0 -0
  111. benchmarks/sdf_showcase/primitives/3D/rounded_box.png +0 -0
  112. benchmarks/sdf_showcase/primitives/3D/rounded_cone.png +0 -0
  113. benchmarks/sdf_showcase/primitives/3D/rounded_cylinder.png +0 -0
  114. benchmarks/sdf_showcase/primitives/3D/sphere.png +0 -0
  115. benchmarks/sdf_showcase/primitives/3D/tetrahedron.png +0 -0
  116. benchmarks/sdf_showcase/primitives/3D/torus.png +0 -0
  117. benchmarks/sdf_showcase/primitives/3D/wireframe_box.png +0 -0
  118. deepsdfstruct-1.7.2.dist-info/METADATA +44 -0
  119. deepsdfstruct-1.7.2.dist-info/RECORD +165 -0
  120. deepsdfstruct-1.7.2.dist-info/WHEEL +5 -0
  121. deepsdfstruct-1.7.2.dist-info/licenses/LICENSE +208 -0
  122. deepsdfstruct-1.7.2.dist-info/licenses/NOTICE +67 -0
  123. deepsdfstruct-1.7.2.dist-info/scm_file_list.json +178 -0
  124. deepsdfstruct-1.7.2.dist-info/scm_version.json +8 -0
  125. deepsdfstruct-1.7.2.dist-info/top_level.txt +4 -0
  126. docs/Makefile +20 -0
  127. docs/api_reference.rst +6 -0
  128. docs/conf.py +60 -0
  129. docs/index.rst +136 -0
  130. docs/make.bat +35 -0
  131. docs/qr_code_github.png +0 -0
  132. docs/qr_code_paper.png +0 -0
  133. docs/readme_images/example_output_01.png +0 -0
  134. docs/readme_images/example_output_02.png +0 -0
  135. docs/readme_images/example_output_03.png +0 -0
  136. docs/readme_images/example_output_04.png +0 -0
  137. tests/data/chairs/1005.obj +282 -0
  138. tests/data/chairs/1024.obj +222 -0
  139. tests/data/chairs/README.md +1 -0
  140. tests/data/circular_balls_test_case.stl +0 -0
  141. tests/data/cone.stl +1794 -0
  142. tests/data/example_disconnectd_mesh.inp +1784 -0
  143. tests/data/example_line_mesh.vtk +0 -0
  144. tests/data/stanford_bunny.stl +0 -0
  145. tests/data/sweep_test_case.stl +0 -0
  146. tests/test_DOE.py +49 -0
  147. tests/test_elongate_sdf.py +195 -0
  148. tests/test_flexisquares.py +187 -0
  149. tests/test_generate_dataset.py +76 -0
  150. tests/test_lattice_evaluation.py +137 -0
  151. tests/test_mesh_export.py +137 -0
  152. tests/test_mesh_functions.py +49 -0
  153. tests/test_networks.py +71 -0
  154. tests/test_pretrained_models.py +40 -0
  155. tests/test_reconstruction.py +101 -0
  156. tests/test_sdf_from_mesh.py +52 -0
  157. tests/test_sdf_functions.py +117 -0
  158. tests/test_sdf_primitives.py +668 -0
  159. tests/test_sdf_trimesh_comparison.py +482 -0
  160. tests/test_splinepy_unitcells.py +64 -0
  161. tests/test_structural_optimization.py +178 -0
  162. tests/test_torch_spline.py +216 -0
  163. tests/test_train_model.py +110 -0
  164. tests/test_training_data_ids.py +41 -0
  165. tests/tmp_outputs/temp_file.txt +0 -0
@@ -0,0 +1,2338 @@
1
+ """
2
+ FlexiCubes Lookup Tables
3
+ ========================
4
+
5
+ This module contains precomputed lookup tables for the FlexiCubes algorithm.
6
+ These tables encode the topology of all 256 possible Marching Cubes
7
+ configurations, enabling efficient and accurate mesh extraction.
8
+
9
+ Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES.
10
+ Licensed under the Apache License, Version 2.0.
11
+ """
12
+
13
+ # Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES.
14
+ # All rights reserved.
15
+ #
16
+ # Licensed under the Apache License, Version 2.0 (the "License");
17
+ # you may not use this file except in compliance with the License.
18
+ # You may obtain a copy of the License at
19
+ #
20
+ # http://www.apache.org/licenses/LICENSE-2.0
21
+ #
22
+ # Unless required by applicable law or agreed to in writing, software
23
+ # distributed under the License is distributed on an "AS IS" BASIS,
24
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
25
+ # See the License for the specific language governing permissions and
26
+ # limitations under the License.
27
+ dmc_table = [
28
+ [
29
+ [-1, -1, -1, -1, -1, -1, -1],
30
+ [-1, -1, -1, -1, -1, -1, -1],
31
+ [-1, -1, -1, -1, -1, -1, -1],
32
+ [-1, -1, -1, -1, -1, -1, -1],
33
+ ],
34
+ [
35
+ [0, 3, 8, -1, -1, -1, -1],
36
+ [-1, -1, -1, -1, -1, -1, -1],
37
+ [-1, -1, -1, -1, -1, -1, -1],
38
+ [-1, -1, -1, -1, -1, -1, -1],
39
+ ],
40
+ [
41
+ [0, 1, 9, -1, -1, -1, -1],
42
+ [-1, -1, -1, -1, -1, -1, -1],
43
+ [-1, -1, -1, -1, -1, -1, -1],
44
+ [-1, -1, -1, -1, -1, -1, -1],
45
+ ],
46
+ [
47
+ [1, 3, 8, 9, -1, -1, -1],
48
+ [-1, -1, -1, -1, -1, -1, -1],
49
+ [-1, -1, -1, -1, -1, -1, -1],
50
+ [-1, -1, -1, -1, -1, -1, -1],
51
+ ],
52
+ [
53
+ [4, 7, 8, -1, -1, -1, -1],
54
+ [-1, -1, -1, -1, -1, -1, -1],
55
+ [-1, -1, -1, -1, -1, -1, -1],
56
+ [-1, -1, -1, -1, -1, -1, -1],
57
+ ],
58
+ [
59
+ [0, 3, 4, 7, -1, -1, -1],
60
+ [-1, -1, -1, -1, -1, -1, -1],
61
+ [-1, -1, -1, -1, -1, -1, -1],
62
+ [-1, -1, -1, -1, -1, -1, -1],
63
+ ],
64
+ [
65
+ [0, 1, 9, -1, -1, -1, -1],
66
+ [4, 7, 8, -1, -1, -1, -1],
67
+ [-1, -1, -1, -1, -1, -1, -1],
68
+ [-1, -1, -1, -1, -1, -1, -1],
69
+ ],
70
+ [
71
+ [1, 3, 4, 7, 9, -1, -1],
72
+ [-1, -1, -1, -1, -1, -1, -1],
73
+ [-1, -1, -1, -1, -1, -1, -1],
74
+ [-1, -1, -1, -1, -1, -1, -1],
75
+ ],
76
+ [
77
+ [4, 5, 9, -1, -1, -1, -1],
78
+ [-1, -1, -1, -1, -1, -1, -1],
79
+ [-1, -1, -1, -1, -1, -1, -1],
80
+ [-1, -1, -1, -1, -1, -1, -1],
81
+ ],
82
+ [
83
+ [0, 3, 8, -1, -1, -1, -1],
84
+ [4, 5, 9, -1, -1, -1, -1],
85
+ [-1, -1, -1, -1, -1, -1, -1],
86
+ [-1, -1, -1, -1, -1, -1, -1],
87
+ ],
88
+ [
89
+ [0, 1, 4, 5, -1, -1, -1],
90
+ [-1, -1, -1, -1, -1, -1, -1],
91
+ [-1, -1, -1, -1, -1, -1, -1],
92
+ [-1, -1, -1, -1, -1, -1, -1],
93
+ ],
94
+ [
95
+ [1, 3, 4, 5, 8, -1, -1],
96
+ [-1, -1, -1, -1, -1, -1, -1],
97
+ [-1, -1, -1, -1, -1, -1, -1],
98
+ [-1, -1, -1, -1, -1, -1, -1],
99
+ ],
100
+ [
101
+ [5, 7, 8, 9, -1, -1, -1],
102
+ [-1, -1, -1, -1, -1, -1, -1],
103
+ [-1, -1, -1, -1, -1, -1, -1],
104
+ [-1, -1, -1, -1, -1, -1, -1],
105
+ ],
106
+ [
107
+ [0, 3, 5, 7, 9, -1, -1],
108
+ [-1, -1, -1, -1, -1, -1, -1],
109
+ [-1, -1, -1, -1, -1, -1, -1],
110
+ [-1, -1, -1, -1, -1, -1, -1],
111
+ ],
112
+ [
113
+ [0, 1, 5, 7, 8, -1, -1],
114
+ [-1, -1, -1, -1, -1, -1, -1],
115
+ [-1, -1, -1, -1, -1, -1, -1],
116
+ [-1, -1, -1, -1, -1, -1, -1],
117
+ ],
118
+ [
119
+ [1, 3, 5, 7, -1, -1, -1],
120
+ [-1, -1, -1, -1, -1, -1, -1],
121
+ [-1, -1, -1, -1, -1, -1, -1],
122
+ [-1, -1, -1, -1, -1, -1, -1],
123
+ ],
124
+ [
125
+ [2, 3, 11, -1, -1, -1, -1],
126
+ [-1, -1, -1, -1, -1, -1, -1],
127
+ [-1, -1, -1, -1, -1, -1, -1],
128
+ [-1, -1, -1, -1, -1, -1, -1],
129
+ ],
130
+ [
131
+ [0, 2, 8, 11, -1, -1, -1],
132
+ [-1, -1, -1, -1, -1, -1, -1],
133
+ [-1, -1, -1, -1, -1, -1, -1],
134
+ [-1, -1, -1, -1, -1, -1, -1],
135
+ ],
136
+ [
137
+ [0, 1, 9, -1, -1, -1, -1],
138
+ [2, 3, 11, -1, -1, -1, -1],
139
+ [-1, -1, -1, -1, -1, -1, -1],
140
+ [-1, -1, -1, -1, -1, -1, -1],
141
+ ],
142
+ [
143
+ [1, 2, 8, 9, 11, -1, -1],
144
+ [-1, -1, -1, -1, -1, -1, -1],
145
+ [-1, -1, -1, -1, -1, -1, -1],
146
+ [-1, -1, -1, -1, -1, -1, -1],
147
+ ],
148
+ [
149
+ [4, 7, 8, -1, -1, -1, -1],
150
+ [2, 3, 11, -1, -1, -1, -1],
151
+ [-1, -1, -1, -1, -1, -1, -1],
152
+ [-1, -1, -1, -1, -1, -1, -1],
153
+ ],
154
+ [
155
+ [0, 2, 4, 7, 11, -1, -1],
156
+ [-1, -1, -1, -1, -1, -1, -1],
157
+ [-1, -1, -1, -1, -1, -1, -1],
158
+ [-1, -1, -1, -1, -1, -1, -1],
159
+ ],
160
+ [
161
+ [0, 1, 9, -1, -1, -1, -1],
162
+ [4, 7, 8, -1, -1, -1, -1],
163
+ [2, 3, 11, -1, -1, -1, -1],
164
+ [-1, -1, -1, -1, -1, -1, -1],
165
+ ],
166
+ [
167
+ [1, 2, 4, 7, 9, 11, -1],
168
+ [-1, -1, -1, -1, -1, -1, -1],
169
+ [-1, -1, -1, -1, -1, -1, -1],
170
+ [-1, -1, -1, -1, -1, -1, -1],
171
+ ],
172
+ [
173
+ [4, 5, 9, -1, -1, -1, -1],
174
+ [2, 3, 11, -1, -1, -1, -1],
175
+ [-1, -1, -1, -1, -1, -1, -1],
176
+ [-1, -1, -1, -1, -1, -1, -1],
177
+ ],
178
+ [
179
+ [0, 2, 8, 11, -1, -1, -1],
180
+ [4, 5, 9, -1, -1, -1, -1],
181
+ [-1, -1, -1, -1, -1, -1, -1],
182
+ [-1, -1, -1, -1, -1, -1, -1],
183
+ ],
184
+ [
185
+ [0, 1, 4, 5, -1, -1, -1],
186
+ [2, 3, 11, -1, -1, -1, -1],
187
+ [-1, -1, -1, -1, -1, -1, -1],
188
+ [-1, -1, -1, -1, -1, -1, -1],
189
+ ],
190
+ [
191
+ [1, 2, 4, 5, 8, 11, -1],
192
+ [-1, -1, -1, -1, -1, -1, -1],
193
+ [-1, -1, -1, -1, -1, -1, -1],
194
+ [-1, -1, -1, -1, -1, -1, -1],
195
+ ],
196
+ [
197
+ [5, 7, 8, 9, -1, -1, -1],
198
+ [2, 3, 11, -1, -1, -1, -1],
199
+ [-1, -1, -1, -1, -1, -1, -1],
200
+ [-1, -1, -1, -1, -1, -1, -1],
201
+ ],
202
+ [
203
+ [0, 2, 5, 7, 9, 11, -1],
204
+ [-1, -1, -1, -1, -1, -1, -1],
205
+ [-1, -1, -1, -1, -1, -1, -1],
206
+ [-1, -1, -1, -1, -1, -1, -1],
207
+ ],
208
+ [
209
+ [0, 1, 5, 7, 8, -1, -1],
210
+ [2, 3, 11, -1, -1, -1, -1],
211
+ [-1, -1, -1, -1, -1, -1, -1],
212
+ [-1, -1, -1, -1, -1, -1, -1],
213
+ ],
214
+ [
215
+ [1, 2, 5, 7, 11, -1, -1],
216
+ [-1, -1, -1, -1, -1, -1, -1],
217
+ [-1, -1, -1, -1, -1, -1, -1],
218
+ [-1, -1, -1, -1, -1, -1, -1],
219
+ ],
220
+ [
221
+ [1, 2, 10, -1, -1, -1, -1],
222
+ [-1, -1, -1, -1, -1, -1, -1],
223
+ [-1, -1, -1, -1, -1, -1, -1],
224
+ [-1, -1, -1, -1, -1, -1, -1],
225
+ ],
226
+ [
227
+ [0, 3, 8, -1, -1, -1, -1],
228
+ [1, 2, 10, -1, -1, -1, -1],
229
+ [-1, -1, -1, -1, -1, -1, -1],
230
+ [-1, -1, -1, -1, -1, -1, -1],
231
+ ],
232
+ [
233
+ [0, 2, 9, 10, -1, -1, -1],
234
+ [-1, -1, -1, -1, -1, -1, -1],
235
+ [-1, -1, -1, -1, -1, -1, -1],
236
+ [-1, -1, -1, -1, -1, -1, -1],
237
+ ],
238
+ [
239
+ [2, 3, 8, 9, 10, -1, -1],
240
+ [-1, -1, -1, -1, -1, -1, -1],
241
+ [-1, -1, -1, -1, -1, -1, -1],
242
+ [-1, -1, -1, -1, -1, -1, -1],
243
+ ],
244
+ [
245
+ [4, 7, 8, -1, -1, -1, -1],
246
+ [1, 2, 10, -1, -1, -1, -1],
247
+ [-1, -1, -1, -1, -1, -1, -1],
248
+ [-1, -1, -1, -1, -1, -1, -1],
249
+ ],
250
+ [
251
+ [0, 3, 4, 7, -1, -1, -1],
252
+ [1, 2, 10, -1, -1, -1, -1],
253
+ [-1, -1, -1, -1, -1, -1, -1],
254
+ [-1, -1, -1, -1, -1, -1, -1],
255
+ ],
256
+ [
257
+ [0, 2, 9, 10, -1, -1, -1],
258
+ [4, 7, 8, -1, -1, -1, -1],
259
+ [-1, -1, -1, -1, -1, -1, -1],
260
+ [-1, -1, -1, -1, -1, -1, -1],
261
+ ],
262
+ [
263
+ [2, 3, 4, 7, 9, 10, -1],
264
+ [-1, -1, -1, -1, -1, -1, -1],
265
+ [-1, -1, -1, -1, -1, -1, -1],
266
+ [-1, -1, -1, -1, -1, -1, -1],
267
+ ],
268
+ [
269
+ [4, 5, 9, -1, -1, -1, -1],
270
+ [1, 2, 10, -1, -1, -1, -1],
271
+ [-1, -1, -1, -1, -1, -1, -1],
272
+ [-1, -1, -1, -1, -1, -1, -1],
273
+ ],
274
+ [
275
+ [0, 3, 8, -1, -1, -1, -1],
276
+ [4, 5, 9, -1, -1, -1, -1],
277
+ [1, 2, 10, -1, -1, -1, -1],
278
+ [-1, -1, -1, -1, -1, -1, -1],
279
+ ],
280
+ [
281
+ [0, 2, 4, 5, 10, -1, -1],
282
+ [-1, -1, -1, -1, -1, -1, -1],
283
+ [-1, -1, -1, -1, -1, -1, -1],
284
+ [-1, -1, -1, -1, -1, -1, -1],
285
+ ],
286
+ [
287
+ [2, 3, 4, 5, 8, 10, -1],
288
+ [-1, -1, -1, -1, -1, -1, -1],
289
+ [-1, -1, -1, -1, -1, -1, -1],
290
+ [-1, -1, -1, -1, -1, -1, -1],
291
+ ],
292
+ [
293
+ [5, 7, 8, 9, -1, -1, -1],
294
+ [1, 2, 10, -1, -1, -1, -1],
295
+ [-1, -1, -1, -1, -1, -1, -1],
296
+ [-1, -1, -1, -1, -1, -1, -1],
297
+ ],
298
+ [
299
+ [0, 3, 5, 7, 9, -1, -1],
300
+ [1, 2, 10, -1, -1, -1, -1],
301
+ [-1, -1, -1, -1, -1, -1, -1],
302
+ [-1, -1, -1, -1, -1, -1, -1],
303
+ ],
304
+ [
305
+ [0, 2, 5, 7, 8, 10, -1],
306
+ [-1, -1, -1, -1, -1, -1, -1],
307
+ [-1, -1, -1, -1, -1, -1, -1],
308
+ [-1, -1, -1, -1, -1, -1, -1],
309
+ ],
310
+ [
311
+ [2, 3, 5, 7, 10, -1, -1],
312
+ [-1, -1, -1, -1, -1, -1, -1],
313
+ [-1, -1, -1, -1, -1, -1, -1],
314
+ [-1, -1, -1, -1, -1, -1, -1],
315
+ ],
316
+ [
317
+ [1, 3, 10, 11, -1, -1, -1],
318
+ [-1, -1, -1, -1, -1, -1, -1],
319
+ [-1, -1, -1, -1, -1, -1, -1],
320
+ [-1, -1, -1, -1, -1, -1, -1],
321
+ ],
322
+ [
323
+ [0, 1, 8, 10, 11, -1, -1],
324
+ [-1, -1, -1, -1, -1, -1, -1],
325
+ [-1, -1, -1, -1, -1, -1, -1],
326
+ [-1, -1, -1, -1, -1, -1, -1],
327
+ ],
328
+ [
329
+ [0, 3, 9, 10, 11, -1, -1],
330
+ [-1, -1, -1, -1, -1, -1, -1],
331
+ [-1, -1, -1, -1, -1, -1, -1],
332
+ [-1, -1, -1, -1, -1, -1, -1],
333
+ ],
334
+ [
335
+ [8, 9, 10, 11, -1, -1, -1],
336
+ [-1, -1, -1, -1, -1, -1, -1],
337
+ [-1, -1, -1, -1, -1, -1, -1],
338
+ [-1, -1, -1, -1, -1, -1, -1],
339
+ ],
340
+ [
341
+ [4, 7, 8, -1, -1, -1, -1],
342
+ [1, 3, 10, 11, -1, -1, -1],
343
+ [-1, -1, -1, -1, -1, -1, -1],
344
+ [-1, -1, -1, -1, -1, -1, -1],
345
+ ],
346
+ [
347
+ [0, 1, 4, 7, 10, 11, -1],
348
+ [-1, -1, -1, -1, -1, -1, -1],
349
+ [-1, -1, -1, -1, -1, -1, -1],
350
+ [-1, -1, -1, -1, -1, -1, -1],
351
+ ],
352
+ [
353
+ [0, 3, 9, 10, 11, -1, -1],
354
+ [4, 7, 8, -1, -1, -1, -1],
355
+ [-1, -1, -1, -1, -1, -1, -1],
356
+ [-1, -1, -1, -1, -1, -1, -1],
357
+ ],
358
+ [
359
+ [4, 7, 9, 10, 11, -1, -1],
360
+ [-1, -1, -1, -1, -1, -1, -1],
361
+ [-1, -1, -1, -1, -1, -1, -1],
362
+ [-1, -1, -1, -1, -1, -1, -1],
363
+ ],
364
+ [
365
+ [4, 5, 9, -1, -1, -1, -1],
366
+ [1, 3, 10, 11, -1, -1, -1],
367
+ [-1, -1, -1, -1, -1, -1, -1],
368
+ [-1, -1, -1, -1, -1, -1, -1],
369
+ ],
370
+ [
371
+ [0, 1, 8, 10, 11, -1, -1],
372
+ [4, 5, 9, -1, -1, -1, -1],
373
+ [-1, -1, -1, -1, -1, -1, -1],
374
+ [-1, -1, -1, -1, -1, -1, -1],
375
+ ],
376
+ [
377
+ [0, 3, 4, 5, 10, 11, -1],
378
+ [-1, -1, -1, -1, -1, -1, -1],
379
+ [-1, -1, -1, -1, -1, -1, -1],
380
+ [-1, -1, -1, -1, -1, -1, -1],
381
+ ],
382
+ [
383
+ [4, 5, 8, 10, 11, -1, -1],
384
+ [-1, -1, -1, -1, -1, -1, -1],
385
+ [-1, -1, -1, -1, -1, -1, -1],
386
+ [-1, -1, -1, -1, -1, -1, -1],
387
+ ],
388
+ [
389
+ [5, 7, 8, 9, -1, -1, -1],
390
+ [1, 3, 10, 11, -1, -1, -1],
391
+ [-1, -1, -1, -1, -1, -1, -1],
392
+ [-1, -1, -1, -1, -1, -1, -1],
393
+ ],
394
+ [
395
+ [0, 1, 5, 7, 9, 10, 11],
396
+ [-1, -1, -1, -1, -1, -1, -1],
397
+ [-1, -1, -1, -1, -1, -1, -1],
398
+ [-1, -1, -1, -1, -1, -1, -1],
399
+ ],
400
+ [
401
+ [0, 3, 5, 7, 8, 10, 11],
402
+ [-1, -1, -1, -1, -1, -1, -1],
403
+ [-1, -1, -1, -1, -1, -1, -1],
404
+ [-1, -1, -1, -1, -1, -1, -1],
405
+ ],
406
+ [
407
+ [5, 7, 10, 11, -1, -1, -1],
408
+ [-1, -1, -1, -1, -1, -1, -1],
409
+ [-1, -1, -1, -1, -1, -1, -1],
410
+ [-1, -1, -1, -1, -1, -1, -1],
411
+ ],
412
+ [
413
+ [6, 7, 11, -1, -1, -1, -1],
414
+ [-1, -1, -1, -1, -1, -1, -1],
415
+ [-1, -1, -1, -1, -1, -1, -1],
416
+ [-1, -1, -1, -1, -1, -1, -1],
417
+ ],
418
+ [
419
+ [0, 3, 8, -1, -1, -1, -1],
420
+ [6, 7, 11, -1, -1, -1, -1],
421
+ [-1, -1, -1, -1, -1, -1, -1],
422
+ [-1, -1, -1, -1, -1, -1, -1],
423
+ ],
424
+ [
425
+ [0, 1, 9, -1, -1, -1, -1],
426
+ [6, 7, 11, -1, -1, -1, -1],
427
+ [-1, -1, -1, -1, -1, -1, -1],
428
+ [-1, -1, -1, -1, -1, -1, -1],
429
+ ],
430
+ [
431
+ [1, 3, 8, 9, -1, -1, -1],
432
+ [6, 7, 11, -1, -1, -1, -1],
433
+ [-1, -1, -1, -1, -1, -1, -1],
434
+ [-1, -1, -1, -1, -1, -1, -1],
435
+ ],
436
+ [
437
+ [4, 6, 8, 11, -1, -1, -1],
438
+ [-1, -1, -1, -1, -1, -1, -1],
439
+ [-1, -1, -1, -1, -1, -1, -1],
440
+ [-1, -1, -1, -1, -1, -1, -1],
441
+ ],
442
+ [
443
+ [0, 3, 4, 6, 11, -1, -1],
444
+ [-1, -1, -1, -1, -1, -1, -1],
445
+ [-1, -1, -1, -1, -1, -1, -1],
446
+ [-1, -1, -1, -1, -1, -1, -1],
447
+ ],
448
+ [
449
+ [0, 1, 9, -1, -1, -1, -1],
450
+ [4, 6, 8, 11, -1, -1, -1],
451
+ [-1, -1, -1, -1, -1, -1, -1],
452
+ [-1, -1, -1, -1, -1, -1, -1],
453
+ ],
454
+ [
455
+ [1, 3, 4, 6, 9, 11, -1],
456
+ [-1, -1, -1, -1, -1, -1, -1],
457
+ [-1, -1, -1, -1, -1, -1, -1],
458
+ [-1, -1, -1, -1, -1, -1, -1],
459
+ ],
460
+ [
461
+ [4, 5, 9, -1, -1, -1, -1],
462
+ [6, 7, 11, -1, -1, -1, -1],
463
+ [-1, -1, -1, -1, -1, -1, -1],
464
+ [-1, -1, -1, -1, -1, -1, -1],
465
+ ],
466
+ [
467
+ [0, 3, 8, -1, -1, -1, -1],
468
+ [4, 5, 9, -1, -1, -1, -1],
469
+ [6, 7, 11, -1, -1, -1, -1],
470
+ [-1, -1, -1, -1, -1, -1, -1],
471
+ ],
472
+ [
473
+ [0, 1, 4, 5, -1, -1, -1],
474
+ [6, 7, 11, -1, -1, -1, -1],
475
+ [-1, -1, -1, -1, -1, -1, -1],
476
+ [-1, -1, -1, -1, -1, -1, -1],
477
+ ],
478
+ [
479
+ [1, 3, 4, 5, 8, -1, -1],
480
+ [6, 7, 11, -1, -1, -1, -1],
481
+ [-1, -1, -1, -1, -1, -1, -1],
482
+ [-1, -1, -1, -1, -1, -1, -1],
483
+ ],
484
+ [
485
+ [5, 6, 8, 9, 11, -1, -1],
486
+ [-1, -1, -1, -1, -1, -1, -1],
487
+ [-1, -1, -1, -1, -1, -1, -1],
488
+ [-1, -1, -1, -1, -1, -1, -1],
489
+ ],
490
+ [
491
+ [0, 3, 5, 6, 9, 11, -1],
492
+ [-1, -1, -1, -1, -1, -1, -1],
493
+ [-1, -1, -1, -1, -1, -1, -1],
494
+ [-1, -1, -1, -1, -1, -1, -1],
495
+ ],
496
+ [
497
+ [0, 1, 5, 6, 8, 11, -1],
498
+ [-1, -1, -1, -1, -1, -1, -1],
499
+ [-1, -1, -1, -1, -1, -1, -1],
500
+ [-1, -1, -1, -1, -1, -1, -1],
501
+ ],
502
+ [
503
+ [1, 3, 5, 6, 11, -1, -1],
504
+ [-1, -1, -1, -1, -1, -1, -1],
505
+ [-1, -1, -1, -1, -1, -1, -1],
506
+ [-1, -1, -1, -1, -1, -1, -1],
507
+ ],
508
+ [
509
+ [2, 3, 6, 7, -1, -1, -1],
510
+ [-1, -1, -1, -1, -1, -1, -1],
511
+ [-1, -1, -1, -1, -1, -1, -1],
512
+ [-1, -1, -1, -1, -1, -1, -1],
513
+ ],
514
+ [
515
+ [0, 2, 6, 7, 8, -1, -1],
516
+ [-1, -1, -1, -1, -1, -1, -1],
517
+ [-1, -1, -1, -1, -1, -1, -1],
518
+ [-1, -1, -1, -1, -1, -1, -1],
519
+ ],
520
+ [
521
+ [0, 1, 9, -1, -1, -1, -1],
522
+ [2, 3, 6, 7, -1, -1, -1],
523
+ [-1, -1, -1, -1, -1, -1, -1],
524
+ [-1, -1, -1, -1, -1, -1, -1],
525
+ ],
526
+ [
527
+ [1, 2, 6, 7, 8, 9, -1],
528
+ [-1, -1, -1, -1, -1, -1, -1],
529
+ [-1, -1, -1, -1, -1, -1, -1],
530
+ [-1, -1, -1, -1, -1, -1, -1],
531
+ ],
532
+ [
533
+ [2, 3, 4, 6, 8, -1, -1],
534
+ [-1, -1, -1, -1, -1, -1, -1],
535
+ [-1, -1, -1, -1, -1, -1, -1],
536
+ [-1, -1, -1, -1, -1, -1, -1],
537
+ ],
538
+ [
539
+ [0, 2, 4, 6, -1, -1, -1],
540
+ [-1, -1, -1, -1, -1, -1, -1],
541
+ [-1, -1, -1, -1, -1, -1, -1],
542
+ [-1, -1, -1, -1, -1, -1, -1],
543
+ ],
544
+ [
545
+ [0, 1, 9, -1, -1, -1, -1],
546
+ [2, 3, 4, 6, 8, -1, -1],
547
+ [-1, -1, -1, -1, -1, -1, -1],
548
+ [-1, -1, -1, -1, -1, -1, -1],
549
+ ],
550
+ [
551
+ [1, 2, 4, 6, 9, -1, -1],
552
+ [-1, -1, -1, -1, -1, -1, -1],
553
+ [-1, -1, -1, -1, -1, -1, -1],
554
+ [-1, -1, -1, -1, -1, -1, -1],
555
+ ],
556
+ [
557
+ [4, 5, 9, -1, -1, -1, -1],
558
+ [2, 3, 6, 7, -1, -1, -1],
559
+ [-1, -1, -1, -1, -1, -1, -1],
560
+ [-1, -1, -1, -1, -1, -1, -1],
561
+ ],
562
+ [
563
+ [0, 2, 6, 7, 8, -1, -1],
564
+ [4, 5, 9, -1, -1, -1, -1],
565
+ [-1, -1, -1, -1, -1, -1, -1],
566
+ [-1, -1, -1, -1, -1, -1, -1],
567
+ ],
568
+ [
569
+ [0, 1, 4, 5, -1, -1, -1],
570
+ [2, 3, 6, 7, -1, -1, -1],
571
+ [-1, -1, -1, -1, -1, -1, -1],
572
+ [-1, -1, -1, -1, -1, -1, -1],
573
+ ],
574
+ [
575
+ [1, 2, 4, 5, 6, 7, 8],
576
+ [-1, -1, -1, -1, -1, -1, -1],
577
+ [-1, -1, -1, -1, -1, -1, -1],
578
+ [-1, -1, -1, -1, -1, -1, -1],
579
+ ],
580
+ [
581
+ [2, 3, 5, 6, 8, 9, -1],
582
+ [-1, -1, -1, -1, -1, -1, -1],
583
+ [-1, -1, -1, -1, -1, -1, -1],
584
+ [-1, -1, -1, -1, -1, -1, -1],
585
+ ],
586
+ [
587
+ [0, 2, 5, 6, 9, -1, -1],
588
+ [-1, -1, -1, -1, -1, -1, -1],
589
+ [-1, -1, -1, -1, -1, -1, -1],
590
+ [-1, -1, -1, -1, -1, -1, -1],
591
+ ],
592
+ [
593
+ [0, 1, 2, 3, 5, 6, 8],
594
+ [-1, -1, -1, -1, -1, -1, -1],
595
+ [-1, -1, -1, -1, -1, -1, -1],
596
+ [-1, -1, -1, -1, -1, -1, -1],
597
+ ],
598
+ [
599
+ [1, 2, 5, 6, -1, -1, -1],
600
+ [-1, -1, -1, -1, -1, -1, -1],
601
+ [-1, -1, -1, -1, -1, -1, -1],
602
+ [-1, -1, -1, -1, -1, -1, -1],
603
+ ],
604
+ [
605
+ [1, 2, 10, -1, -1, -1, -1],
606
+ [6, 7, 11, -1, -1, -1, -1],
607
+ [-1, -1, -1, -1, -1, -1, -1],
608
+ [-1, -1, -1, -1, -1, -1, -1],
609
+ ],
610
+ [
611
+ [0, 3, 8, -1, -1, -1, -1],
612
+ [1, 2, 10, -1, -1, -1, -1],
613
+ [6, 7, 11, -1, -1, -1, -1],
614
+ [-1, -1, -1, -1, -1, -1, -1],
615
+ ],
616
+ [
617
+ [0, 2, 9, 10, -1, -1, -1],
618
+ [6, 7, 11, -1, -1, -1, -1],
619
+ [-1, -1, -1, -1, -1, -1, -1],
620
+ [-1, -1, -1, -1, -1, -1, -1],
621
+ ],
622
+ [
623
+ [2, 3, 8, 9, 10, -1, -1],
624
+ [6, 7, 11, -1, -1, -1, -1],
625
+ [-1, -1, -1, -1, -1, -1, -1],
626
+ [-1, -1, -1, -1, -1, -1, -1],
627
+ ],
628
+ [
629
+ [4, 6, 8, 11, -1, -1, -1],
630
+ [1, 2, 10, -1, -1, -1, -1],
631
+ [-1, -1, -1, -1, -1, -1, -1],
632
+ [-1, -1, -1, -1, -1, -1, -1],
633
+ ],
634
+ [
635
+ [0, 3, 4, 6, 11, -1, -1],
636
+ [1, 2, 10, -1, -1, -1, -1],
637
+ [-1, -1, -1, -1, -1, -1, -1],
638
+ [-1, -1, -1, -1, -1, -1, -1],
639
+ ],
640
+ [
641
+ [0, 2, 9, 10, -1, -1, -1],
642
+ [4, 6, 8, 11, -1, -1, -1],
643
+ [-1, -1, -1, -1, -1, -1, -1],
644
+ [-1, -1, -1, -1, -1, -1, -1],
645
+ ],
646
+ [
647
+ [2, 3, 4, 6, 9, 10, 11],
648
+ [-1, -1, -1, -1, -1, -1, -1],
649
+ [-1, -1, -1, -1, -1, -1, -1],
650
+ [-1, -1, -1, -1, -1, -1, -1],
651
+ ],
652
+ [
653
+ [4, 5, 9, -1, -1, -1, -1],
654
+ [1, 2, 10, -1, -1, -1, -1],
655
+ [6, 7, 11, -1, -1, -1, -1],
656
+ [-1, -1, -1, -1, -1, -1, -1],
657
+ ],
658
+ [
659
+ [0, 3, 8, -1, -1, -1, -1],
660
+ [4, 5, 9, -1, -1, -1, -1],
661
+ [1, 2, 10, -1, -1, -1, -1],
662
+ [6, 7, 11, -1, -1, -1, -1],
663
+ ],
664
+ [
665
+ [0, 2, 4, 5, 10, -1, -1],
666
+ [6, 7, 11, -1, -1, -1, -1],
667
+ [-1, -1, -1, -1, -1, -1, -1],
668
+ [-1, -1, -1, -1, -1, -1, -1],
669
+ ],
670
+ [
671
+ [2, 3, 4, 5, 8, 10, -1],
672
+ [6, 7, 11, -1, -1, -1, -1],
673
+ [-1, -1, -1, -1, -1, -1, -1],
674
+ [-1, -1, -1, -1, -1, -1, -1],
675
+ ],
676
+ [
677
+ [5, 6, 8, 9, 11, -1, -1],
678
+ [1, 2, 10, -1, -1, -1, -1],
679
+ [-1, -1, -1, -1, -1, -1, -1],
680
+ [-1, -1, -1, -1, -1, -1, -1],
681
+ ],
682
+ [
683
+ [0, 3, 5, 6, 9, 11, -1],
684
+ [1, 2, 10, -1, -1, -1, -1],
685
+ [-1, -1, -1, -1, -1, -1, -1],
686
+ [-1, -1, -1, -1, -1, -1, -1],
687
+ ],
688
+ [
689
+ [0, 2, 5, 6, 8, 10, 11],
690
+ [-1, -1, -1, -1, -1, -1, -1],
691
+ [-1, -1, -1, -1, -1, -1, -1],
692
+ [-1, -1, -1, -1, -1, -1, -1],
693
+ ],
694
+ [
695
+ [2, 3, 5, 6, 10, 11, -1],
696
+ [-1, -1, -1, -1, -1, -1, -1],
697
+ [-1, -1, -1, -1, -1, -1, -1],
698
+ [-1, -1, -1, -1, -1, -1, -1],
699
+ ],
700
+ [
701
+ [1, 3, 6, 7, 10, -1, -1],
702
+ [-1, -1, -1, -1, -1, -1, -1],
703
+ [-1, -1, -1, -1, -1, -1, -1],
704
+ [-1, -1, -1, -1, -1, -1, -1],
705
+ ],
706
+ [
707
+ [0, 1, 6, 7, 8, 10, -1],
708
+ [-1, -1, -1, -1, -1, -1, -1],
709
+ [-1, -1, -1, -1, -1, -1, -1],
710
+ [-1, -1, -1, -1, -1, -1, -1],
711
+ ],
712
+ [
713
+ [0, 3, 6, 7, 9, 10, -1],
714
+ [-1, -1, -1, -1, -1, -1, -1],
715
+ [-1, -1, -1, -1, -1, -1, -1],
716
+ [-1, -1, -1, -1, -1, -1, -1],
717
+ ],
718
+ [
719
+ [6, 7, 8, 9, 10, -1, -1],
720
+ [-1, -1, -1, -1, -1, -1, -1],
721
+ [-1, -1, -1, -1, -1, -1, -1],
722
+ [-1, -1, -1, -1, -1, -1, -1],
723
+ ],
724
+ [
725
+ [1, 3, 4, 6, 8, 10, -1],
726
+ [-1, -1, -1, -1, -1, -1, -1],
727
+ [-1, -1, -1, -1, -1, -1, -1],
728
+ [-1, -1, -1, -1, -1, -1, -1],
729
+ ],
730
+ [
731
+ [0, 1, 4, 6, 10, -1, -1],
732
+ [-1, -1, -1, -1, -1, -1, -1],
733
+ [-1, -1, -1, -1, -1, -1, -1],
734
+ [-1, -1, -1, -1, -1, -1, -1],
735
+ ],
736
+ [
737
+ [0, 3, 4, 6, 8, 9, 10],
738
+ [-1, -1, -1, -1, -1, -1, -1],
739
+ [-1, -1, -1, -1, -1, -1, -1],
740
+ [-1, -1, -1, -1, -1, -1, -1],
741
+ ],
742
+ [
743
+ [4, 6, 9, 10, -1, -1, -1],
744
+ [-1, -1, -1, -1, -1, -1, -1],
745
+ [-1, -1, -1, -1, -1, -1, -1],
746
+ [-1, -1, -1, -1, -1, -1, -1],
747
+ ],
748
+ [
749
+ [4, 5, 9, -1, -1, -1, -1],
750
+ [1, 3, 6, 7, 10, -1, -1],
751
+ [-1, -1, -1, -1, -1, -1, -1],
752
+ [-1, -1, -1, -1, -1, -1, -1],
753
+ ],
754
+ [
755
+ [0, 1, 6, 7, 8, 10, -1],
756
+ [4, 5, 9, -1, -1, -1, -1],
757
+ [-1, -1, -1, -1, -1, -1, -1],
758
+ [-1, -1, -1, -1, -1, -1, -1],
759
+ ],
760
+ [
761
+ [0, 3, 4, 5, 6, 7, 10],
762
+ [-1, -1, -1, -1, -1, -1, -1],
763
+ [-1, -1, -1, -1, -1, -1, -1],
764
+ [-1, -1, -1, -1, -1, -1, -1],
765
+ ],
766
+ [
767
+ [4, 5, 6, 7, 8, 10, -1],
768
+ [-1, -1, -1, -1, -1, -1, -1],
769
+ [-1, -1, -1, -1, -1, -1, -1],
770
+ [-1, -1, -1, -1, -1, -1, -1],
771
+ ],
772
+ [
773
+ [1, 3, 5, 6, 8, 9, 10],
774
+ [-1, -1, -1, -1, -1, -1, -1],
775
+ [-1, -1, -1, -1, -1, -1, -1],
776
+ [-1, -1, -1, -1, -1, -1, -1],
777
+ ],
778
+ [
779
+ [0, 1, 5, 6, 9, 10, -1],
780
+ [-1, -1, -1, -1, -1, -1, -1],
781
+ [-1, -1, -1, -1, -1, -1, -1],
782
+ [-1, -1, -1, -1, -1, -1, -1],
783
+ ],
784
+ [
785
+ [0, 3, 8, -1, -1, -1, -1],
786
+ [5, 6, 10, -1, -1, -1, -1],
787
+ [-1, -1, -1, -1, -1, -1, -1],
788
+ [-1, -1, -1, -1, -1, -1, -1],
789
+ ],
790
+ [
791
+ [5, 6, 10, -1, -1, -1, -1],
792
+ [-1, -1, -1, -1, -1, -1, -1],
793
+ [-1, -1, -1, -1, -1, -1, -1],
794
+ [-1, -1, -1, -1, -1, -1, -1],
795
+ ],
796
+ [
797
+ [5, 6, 10, -1, -1, -1, -1],
798
+ [-1, -1, -1, -1, -1, -1, -1],
799
+ [-1, -1, -1, -1, -1, -1, -1],
800
+ [-1, -1, -1, -1, -1, -1, -1],
801
+ ],
802
+ [
803
+ [0, 3, 8, -1, -1, -1, -1],
804
+ [5, 6, 10, -1, -1, -1, -1],
805
+ [-1, -1, -1, -1, -1, -1, -1],
806
+ [-1, -1, -1, -1, -1, -1, -1],
807
+ ],
808
+ [
809
+ [0, 1, 9, -1, -1, -1, -1],
810
+ [5, 6, 10, -1, -1, -1, -1],
811
+ [-1, -1, -1, -1, -1, -1, -1],
812
+ [-1, -1, -1, -1, -1, -1, -1],
813
+ ],
814
+ [
815
+ [1, 3, 8, 9, -1, -1, -1],
816
+ [5, 6, 10, -1, -1, -1, -1],
817
+ [-1, -1, -1, -1, -1, -1, -1],
818
+ [-1, -1, -1, -1, -1, -1, -1],
819
+ ],
820
+ [
821
+ [4, 7, 8, -1, -1, -1, -1],
822
+ [5, 6, 10, -1, -1, -1, -1],
823
+ [-1, -1, -1, -1, -1, -1, -1],
824
+ [-1, -1, -1, -1, -1, -1, -1],
825
+ ],
826
+ [
827
+ [0, 3, 4, 7, -1, -1, -1],
828
+ [5, 6, 10, -1, -1, -1, -1],
829
+ [-1, -1, -1, -1, -1, -1, -1],
830
+ [-1, -1, -1, -1, -1, -1, -1],
831
+ ],
832
+ [
833
+ [0, 1, 9, -1, -1, -1, -1],
834
+ [4, 7, 8, -1, -1, -1, -1],
835
+ [5, 6, 10, -1, -1, -1, -1],
836
+ [-1, -1, -1, -1, -1, -1, -1],
837
+ ],
838
+ [
839
+ [1, 3, 4, 7, 9, -1, -1],
840
+ [5, 6, 10, -1, -1, -1, -1],
841
+ [-1, -1, -1, -1, -1, -1, -1],
842
+ [-1, -1, -1, -1, -1, -1, -1],
843
+ ],
844
+ [
845
+ [4, 6, 9, 10, -1, -1, -1],
846
+ [-1, -1, -1, -1, -1, -1, -1],
847
+ [-1, -1, -1, -1, -1, -1, -1],
848
+ [-1, -1, -1, -1, -1, -1, -1],
849
+ ],
850
+ [
851
+ [0, 3, 8, -1, -1, -1, -1],
852
+ [4, 6, 9, 10, -1, -1, -1],
853
+ [-1, -1, -1, -1, -1, -1, -1],
854
+ [-1, -1, -1, -1, -1, -1, -1],
855
+ ],
856
+ [
857
+ [0, 1, 4, 6, 10, -1, -1],
858
+ [-1, -1, -1, -1, -1, -1, -1],
859
+ [-1, -1, -1, -1, -1, -1, -1],
860
+ [-1, -1, -1, -1, -1, -1, -1],
861
+ ],
862
+ [
863
+ [1, 3, 4, 6, 8, 10, -1],
864
+ [-1, -1, -1, -1, -1, -1, -1],
865
+ [-1, -1, -1, -1, -1, -1, -1],
866
+ [-1, -1, -1, -1, -1, -1, -1],
867
+ ],
868
+ [
869
+ [6, 7, 8, 9, 10, -1, -1],
870
+ [-1, -1, -1, -1, -1, -1, -1],
871
+ [-1, -1, -1, -1, -1, -1, -1],
872
+ [-1, -1, -1, -1, -1, -1, -1],
873
+ ],
874
+ [
875
+ [0, 3, 6, 7, 9, 10, -1],
876
+ [-1, -1, -1, -1, -1, -1, -1],
877
+ [-1, -1, -1, -1, -1, -1, -1],
878
+ [-1, -1, -1, -1, -1, -1, -1],
879
+ ],
880
+ [
881
+ [0, 1, 6, 7, 8, 10, -1],
882
+ [-1, -1, -1, -1, -1, -1, -1],
883
+ [-1, -1, -1, -1, -1, -1, -1],
884
+ [-1, -1, -1, -1, -1, -1, -1],
885
+ ],
886
+ [
887
+ [1, 3, 6, 7, 10, -1, -1],
888
+ [-1, -1, -1, -1, -1, -1, -1],
889
+ [-1, -1, -1, -1, -1, -1, -1],
890
+ [-1, -1, -1, -1, -1, -1, -1],
891
+ ],
892
+ [
893
+ [2, 3, 11, -1, -1, -1, -1],
894
+ [5, 6, 10, -1, -1, -1, -1],
895
+ [-1, -1, -1, -1, -1, -1, -1],
896
+ [-1, -1, -1, -1, -1, -1, -1],
897
+ ],
898
+ [
899
+ [0, 2, 8, 11, -1, -1, -1],
900
+ [5, 6, 10, -1, -1, -1, -1],
901
+ [-1, -1, -1, -1, -1, -1, -1],
902
+ [-1, -1, -1, -1, -1, -1, -1],
903
+ ],
904
+ [
905
+ [0, 1, 9, -1, -1, -1, -1],
906
+ [2, 3, 11, -1, -1, -1, -1],
907
+ [5, 6, 10, -1, -1, -1, -1],
908
+ [-1, -1, -1, -1, -1, -1, -1],
909
+ ],
910
+ [
911
+ [1, 2, 8, 9, 11, -1, -1],
912
+ [5, 6, 10, -1, -1, -1, -1],
913
+ [-1, -1, -1, -1, -1, -1, -1],
914
+ [-1, -1, -1, -1, -1, -1, -1],
915
+ ],
916
+ [
917
+ [4, 7, 8, -1, -1, -1, -1],
918
+ [2, 3, 11, -1, -1, -1, -1],
919
+ [5, 6, 10, -1, -1, -1, -1],
920
+ [-1, -1, -1, -1, -1, -1, -1],
921
+ ],
922
+ [
923
+ [0, 2, 4, 7, 11, -1, -1],
924
+ [5, 6, 10, -1, -1, -1, -1],
925
+ [-1, -1, -1, -1, -1, -1, -1],
926
+ [-1, -1, -1, -1, -1, -1, -1],
927
+ ],
928
+ [
929
+ [0, 1, 9, -1, -1, -1, -1],
930
+ [4, 7, 8, -1, -1, -1, -1],
931
+ [2, 3, 11, -1, -1, -1, -1],
932
+ [5, 6, 10, -1, -1, -1, -1],
933
+ ],
934
+ [
935
+ [1, 2, 4, 7, 9, 11, -1],
936
+ [5, 6, 10, -1, -1, -1, -1],
937
+ [-1, -1, -1, -1, -1, -1, -1],
938
+ [-1, -1, -1, -1, -1, -1, -1],
939
+ ],
940
+ [
941
+ [4, 6, 9, 10, -1, -1, -1],
942
+ [2, 3, 11, -1, -1, -1, -1],
943
+ [-1, -1, -1, -1, -1, -1, -1],
944
+ [-1, -1, -1, -1, -1, -1, -1],
945
+ ],
946
+ [
947
+ [0, 2, 8, 11, -1, -1, -1],
948
+ [4, 6, 9, 10, -1, -1, -1],
949
+ [-1, -1, -1, -1, -1, -1, -1],
950
+ [-1, -1, -1, -1, -1, -1, -1],
951
+ ],
952
+ [
953
+ [0, 1, 4, 6, 10, -1, -1],
954
+ [2, 3, 11, -1, -1, -1, -1],
955
+ [-1, -1, -1, -1, -1, -1, -1],
956
+ [-1, -1, -1, -1, -1, -1, -1],
957
+ ],
958
+ [
959
+ [1, 2, 4, 6, 8, 10, 11],
960
+ [-1, -1, -1, -1, -1, -1, -1],
961
+ [-1, -1, -1, -1, -1, -1, -1],
962
+ [-1, -1, -1, -1, -1, -1, -1],
963
+ ],
964
+ [
965
+ [6, 7, 8, 9, 10, -1, -1],
966
+ [2, 3, 11, -1, -1, -1, -1],
967
+ [-1, -1, -1, -1, -1, -1, -1],
968
+ [-1, -1, -1, -1, -1, -1, -1],
969
+ ],
970
+ [
971
+ [0, 2, 6, 7, 9, 10, 11],
972
+ [-1, -1, -1, -1, -1, -1, -1],
973
+ [-1, -1, -1, -1, -1, -1, -1],
974
+ [-1, -1, -1, -1, -1, -1, -1],
975
+ ],
976
+ [
977
+ [0, 1, 6, 7, 8, 10, -1],
978
+ [2, 3, 11, -1, -1, -1, -1],
979
+ [-1, -1, -1, -1, -1, -1, -1],
980
+ [-1, -1, -1, -1, -1, -1, -1],
981
+ ],
982
+ [
983
+ [1, 2, 6, 7, 10, 11, -1],
984
+ [-1, -1, -1, -1, -1, -1, -1],
985
+ [-1, -1, -1, -1, -1, -1, -1],
986
+ [-1, -1, -1, -1, -1, -1, -1],
987
+ ],
988
+ [
989
+ [1, 2, 5, 6, -1, -1, -1],
990
+ [-1, -1, -1, -1, -1, -1, -1],
991
+ [-1, -1, -1, -1, -1, -1, -1],
992
+ [-1, -1, -1, -1, -1, -1, -1],
993
+ ],
994
+ [
995
+ [0, 3, 8, -1, -1, -1, -1],
996
+ [1, 2, 5, 6, -1, -1, -1],
997
+ [-1, -1, -1, -1, -1, -1, -1],
998
+ [-1, -1, -1, -1, -1, -1, -1],
999
+ ],
1000
+ [
1001
+ [0, 2, 5, 6, 9, -1, -1],
1002
+ [-1, -1, -1, -1, -1, -1, -1],
1003
+ [-1, -1, -1, -1, -1, -1, -1],
1004
+ [-1, -1, -1, -1, -1, -1, -1],
1005
+ ],
1006
+ [
1007
+ [2, 3, 5, 6, 8, 9, -1],
1008
+ [-1, -1, -1, -1, -1, -1, -1],
1009
+ [-1, -1, -1, -1, -1, -1, -1],
1010
+ [-1, -1, -1, -1, -1, -1, -1],
1011
+ ],
1012
+ [
1013
+ [4, 7, 8, -1, -1, -1, -1],
1014
+ [1, 2, 5, 6, -1, -1, -1],
1015
+ [-1, -1, -1, -1, -1, -1, -1],
1016
+ [-1, -1, -1, -1, -1, -1, -1],
1017
+ ],
1018
+ [
1019
+ [0, 3, 4, 7, -1, -1, -1],
1020
+ [1, 2, 5, 6, -1, -1, -1],
1021
+ [-1, -1, -1, -1, -1, -1, -1],
1022
+ [-1, -1, -1, -1, -1, -1, -1],
1023
+ ],
1024
+ [
1025
+ [0, 2, 5, 6, 9, -1, -1],
1026
+ [4, 7, 8, -1, -1, -1, -1],
1027
+ [-1, -1, -1, -1, -1, -1, -1],
1028
+ [-1, -1, -1, -1, -1, -1, -1],
1029
+ ],
1030
+ [
1031
+ [2, 3, 4, 5, 6, 7, 9],
1032
+ [-1, -1, -1, -1, -1, -1, -1],
1033
+ [-1, -1, -1, -1, -1, -1, -1],
1034
+ [-1, -1, -1, -1, -1, -1, -1],
1035
+ ],
1036
+ [
1037
+ [1, 2, 4, 6, 9, -1, -1],
1038
+ [-1, -1, -1, -1, -1, -1, -1],
1039
+ [-1, -1, -1, -1, -1, -1, -1],
1040
+ [-1, -1, -1, -1, -1, -1, -1],
1041
+ ],
1042
+ [
1043
+ [0, 3, 8, -1, -1, -1, -1],
1044
+ [1, 2, 4, 6, 9, -1, -1],
1045
+ [-1, -1, -1, -1, -1, -1, -1],
1046
+ [-1, -1, -1, -1, -1, -1, -1],
1047
+ ],
1048
+ [
1049
+ [0, 2, 4, 6, -1, -1, -1],
1050
+ [-1, -1, -1, -1, -1, -1, -1],
1051
+ [-1, -1, -1, -1, -1, -1, -1],
1052
+ [-1, -1, -1, -1, -1, -1, -1],
1053
+ ],
1054
+ [
1055
+ [2, 3, 4, 6, 8, -1, -1],
1056
+ [-1, -1, -1, -1, -1, -1, -1],
1057
+ [-1, -1, -1, -1, -1, -1, -1],
1058
+ [-1, -1, -1, -1, -1, -1, -1],
1059
+ ],
1060
+ [
1061
+ [1, 2, 6, 7, 8, 9, -1],
1062
+ [-1, -1, -1, -1, -1, -1, -1],
1063
+ [-1, -1, -1, -1, -1, -1, -1],
1064
+ [-1, -1, -1, -1, -1, -1, -1],
1065
+ ],
1066
+ [
1067
+ [0, 1, 2, 3, 6, 7, 9],
1068
+ [-1, -1, -1, -1, -1, -1, -1],
1069
+ [-1, -1, -1, -1, -1, -1, -1],
1070
+ [-1, -1, -1, -1, -1, -1, -1],
1071
+ ],
1072
+ [
1073
+ [0, 2, 6, 7, 8, -1, -1],
1074
+ [-1, -1, -1, -1, -1, -1, -1],
1075
+ [-1, -1, -1, -1, -1, -1, -1],
1076
+ [-1, -1, -1, -1, -1, -1, -1],
1077
+ ],
1078
+ [
1079
+ [2, 3, 6, 7, -1, -1, -1],
1080
+ [-1, -1, -1, -1, -1, -1, -1],
1081
+ [-1, -1, -1, -1, -1, -1, -1],
1082
+ [-1, -1, -1, -1, -1, -1, -1],
1083
+ ],
1084
+ [
1085
+ [1, 3, 5, 6, 11, -1, -1],
1086
+ [-1, -1, -1, -1, -1, -1, -1],
1087
+ [-1, -1, -1, -1, -1, -1, -1],
1088
+ [-1, -1, -1, -1, -1, -1, -1],
1089
+ ],
1090
+ [
1091
+ [0, 1, 5, 6, 8, 11, -1],
1092
+ [-1, -1, -1, -1, -1, -1, -1],
1093
+ [-1, -1, -1, -1, -1, -1, -1],
1094
+ [-1, -1, -1, -1, -1, -1, -1],
1095
+ ],
1096
+ [
1097
+ [0, 3, 5, 6, 9, 11, -1],
1098
+ [-1, -1, -1, -1, -1, -1, -1],
1099
+ [-1, -1, -1, -1, -1, -1, -1],
1100
+ [-1, -1, -1, -1, -1, -1, -1],
1101
+ ],
1102
+ [
1103
+ [5, 6, 8, 9, 11, -1, -1],
1104
+ [-1, -1, -1, -1, -1, -1, -1],
1105
+ [-1, -1, -1, -1, -1, -1, -1],
1106
+ [-1, -1, -1, -1, -1, -1, -1],
1107
+ ],
1108
+ [
1109
+ [4, 7, 8, -1, -1, -1, -1],
1110
+ [1, 3, 5, 6, 11, -1, -1],
1111
+ [-1, -1, -1, -1, -1, -1, -1],
1112
+ [-1, -1, -1, -1, -1, -1, -1],
1113
+ ],
1114
+ [
1115
+ [0, 1, 4, 5, 6, 7, 11],
1116
+ [-1, -1, -1, -1, -1, -1, -1],
1117
+ [-1, -1, -1, -1, -1, -1, -1],
1118
+ [-1, -1, -1, -1, -1, -1, -1],
1119
+ ],
1120
+ [
1121
+ [0, 3, 5, 6, 9, 11, -1],
1122
+ [4, 7, 8, -1, -1, -1, -1],
1123
+ [-1, -1, -1, -1, -1, -1, -1],
1124
+ [-1, -1, -1, -1, -1, -1, -1],
1125
+ ],
1126
+ [
1127
+ [4, 5, 6, 7, 9, 11, -1],
1128
+ [-1, -1, -1, -1, -1, -1, -1],
1129
+ [-1, -1, -1, -1, -1, -1, -1],
1130
+ [-1, -1, -1, -1, -1, -1, -1],
1131
+ ],
1132
+ [
1133
+ [1, 3, 4, 6, 9, 11, -1],
1134
+ [-1, -1, -1, -1, -1, -1, -1],
1135
+ [-1, -1, -1, -1, -1, -1, -1],
1136
+ [-1, -1, -1, -1, -1, -1, -1],
1137
+ ],
1138
+ [
1139
+ [0, 1, 4, 6, 8, 9, 11],
1140
+ [-1, -1, -1, -1, -1, -1, -1],
1141
+ [-1, -1, -1, -1, -1, -1, -1],
1142
+ [-1, -1, -1, -1, -1, -1, -1],
1143
+ ],
1144
+ [
1145
+ [0, 3, 4, 6, 11, -1, -1],
1146
+ [-1, -1, -1, -1, -1, -1, -1],
1147
+ [-1, -1, -1, -1, -1, -1, -1],
1148
+ [-1, -1, -1, -1, -1, -1, -1],
1149
+ ],
1150
+ [
1151
+ [4, 6, 8, 11, -1, -1, -1],
1152
+ [-1, -1, -1, -1, -1, -1, -1],
1153
+ [-1, -1, -1, -1, -1, -1, -1],
1154
+ [-1, -1, -1, -1, -1, -1, -1],
1155
+ ],
1156
+ [
1157
+ [1, 3, 6, 7, 8, 9, 11],
1158
+ [-1, -1, -1, -1, -1, -1, -1],
1159
+ [-1, -1, -1, -1, -1, -1, -1],
1160
+ [-1, -1, -1, -1, -1, -1, -1],
1161
+ ],
1162
+ [
1163
+ [0, 1, 9, -1, -1, -1, -1],
1164
+ [6, 7, 11, -1, -1, -1, -1],
1165
+ [-1, -1, -1, -1, -1, -1, -1],
1166
+ [-1, -1, -1, -1, -1, -1, -1],
1167
+ ],
1168
+ [
1169
+ [0, 3, 6, 7, 8, 11, -1],
1170
+ [-1, -1, -1, -1, -1, -1, -1],
1171
+ [-1, -1, -1, -1, -1, -1, -1],
1172
+ [-1, -1, -1, -1, -1, -1, -1],
1173
+ ],
1174
+ [
1175
+ [6, 7, 11, -1, -1, -1, -1],
1176
+ [-1, -1, -1, -1, -1, -1, -1],
1177
+ [-1, -1, -1, -1, -1, -1, -1],
1178
+ [-1, -1, -1, -1, -1, -1, -1],
1179
+ ],
1180
+ [
1181
+ [5, 7, 10, 11, -1, -1, -1],
1182
+ [-1, -1, -1, -1, -1, -1, -1],
1183
+ [-1, -1, -1, -1, -1, -1, -1],
1184
+ [-1, -1, -1, -1, -1, -1, -1],
1185
+ ],
1186
+ [
1187
+ [0, 3, 8, -1, -1, -1, -1],
1188
+ [5, 7, 10, 11, -1, -1, -1],
1189
+ [-1, -1, -1, -1, -1, -1, -1],
1190
+ [-1, -1, -1, -1, -1, -1, -1],
1191
+ ],
1192
+ [
1193
+ [0, 1, 9, -1, -1, -1, -1],
1194
+ [5, 7, 10, 11, -1, -1, -1],
1195
+ [-1, -1, -1, -1, -1, -1, -1],
1196
+ [-1, -1, -1, -1, -1, -1, -1],
1197
+ ],
1198
+ [
1199
+ [1, 3, 8, 9, -1, -1, -1],
1200
+ [5, 7, 10, 11, -1, -1, -1],
1201
+ [-1, -1, -1, -1, -1, -1, -1],
1202
+ [-1, -1, -1, -1, -1, -1, -1],
1203
+ ],
1204
+ [
1205
+ [4, 5, 8, 10, 11, -1, -1],
1206
+ [-1, -1, -1, -1, -1, -1, -1],
1207
+ [-1, -1, -1, -1, -1, -1, -1],
1208
+ [-1, -1, -1, -1, -1, -1, -1],
1209
+ ],
1210
+ [
1211
+ [0, 3, 4, 5, 10, 11, -1],
1212
+ [-1, -1, -1, -1, -1, -1, -1],
1213
+ [-1, -1, -1, -1, -1, -1, -1],
1214
+ [-1, -1, -1, -1, -1, -1, -1],
1215
+ ],
1216
+ [
1217
+ [0, 1, 9, -1, -1, -1, -1],
1218
+ [4, 5, 8, 10, 11, -1, -1],
1219
+ [-1, -1, -1, -1, -1, -1, -1],
1220
+ [-1, -1, -1, -1, -1, -1, -1],
1221
+ ],
1222
+ [
1223
+ [1, 3, 4, 5, 9, 10, 11],
1224
+ [-1, -1, -1, -1, -1, -1, -1],
1225
+ [-1, -1, -1, -1, -1, -1, -1],
1226
+ [-1, -1, -1, -1, -1, -1, -1],
1227
+ ],
1228
+ [
1229
+ [4, 7, 9, 10, 11, -1, -1],
1230
+ [-1, -1, -1, -1, -1, -1, -1],
1231
+ [-1, -1, -1, -1, -1, -1, -1],
1232
+ [-1, -1, -1, -1, -1, -1, -1],
1233
+ ],
1234
+ [
1235
+ [0, 3, 8, -1, -1, -1, -1],
1236
+ [4, 7, 9, 10, 11, -1, -1],
1237
+ [-1, -1, -1, -1, -1, -1, -1],
1238
+ [-1, -1, -1, -1, -1, -1, -1],
1239
+ ],
1240
+ [
1241
+ [0, 1, 4, 7, 10, 11, -1],
1242
+ [-1, -1, -1, -1, -1, -1, -1],
1243
+ [-1, -1, -1, -1, -1, -1, -1],
1244
+ [-1, -1, -1, -1, -1, -1, -1],
1245
+ ],
1246
+ [
1247
+ [1, 3, 4, 7, 8, 10, 11],
1248
+ [-1, -1, -1, -1, -1, -1, -1],
1249
+ [-1, -1, -1, -1, -1, -1, -1],
1250
+ [-1, -1, -1, -1, -1, -1, -1],
1251
+ ],
1252
+ [
1253
+ [8, 9, 10, 11, -1, -1, -1],
1254
+ [-1, -1, -1, -1, -1, -1, -1],
1255
+ [-1, -1, -1, -1, -1, -1, -1],
1256
+ [-1, -1, -1, -1, -1, -1, -1],
1257
+ ],
1258
+ [
1259
+ [0, 3, 9, 10, 11, -1, -1],
1260
+ [-1, -1, -1, -1, -1, -1, -1],
1261
+ [-1, -1, -1, -1, -1, -1, -1],
1262
+ [-1, -1, -1, -1, -1, -1, -1],
1263
+ ],
1264
+ [
1265
+ [0, 1, 8, 10, 11, -1, -1],
1266
+ [-1, -1, -1, -1, -1, -1, -1],
1267
+ [-1, -1, -1, -1, -1, -1, -1],
1268
+ [-1, -1, -1, -1, -1, -1, -1],
1269
+ ],
1270
+ [
1271
+ [1, 3, 10, 11, -1, -1, -1],
1272
+ [-1, -1, -1, -1, -1, -1, -1],
1273
+ [-1, -1, -1, -1, -1, -1, -1],
1274
+ [-1, -1, -1, -1, -1, -1, -1],
1275
+ ],
1276
+ [
1277
+ [2, 3, 5, 7, 10, -1, -1],
1278
+ [-1, -1, -1, -1, -1, -1, -1],
1279
+ [-1, -1, -1, -1, -1, -1, -1],
1280
+ [-1, -1, -1, -1, -1, -1, -1],
1281
+ ],
1282
+ [
1283
+ [0, 2, 5, 7, 8, 10, -1],
1284
+ [-1, -1, -1, -1, -1, -1, -1],
1285
+ [-1, -1, -1, -1, -1, -1, -1],
1286
+ [-1, -1, -1, -1, -1, -1, -1],
1287
+ ],
1288
+ [
1289
+ [0, 1, 9, -1, -1, -1, -1],
1290
+ [2, 3, 5, 7, 10, -1, -1],
1291
+ [-1, -1, -1, -1, -1, -1, -1],
1292
+ [-1, -1, -1, -1, -1, -1, -1],
1293
+ ],
1294
+ [
1295
+ [1, 2, 5, 7, 8, 9, 10],
1296
+ [-1, -1, -1, -1, -1, -1, -1],
1297
+ [-1, -1, -1, -1, -1, -1, -1],
1298
+ [-1, -1, -1, -1, -1, -1, -1],
1299
+ ],
1300
+ [
1301
+ [2, 3, 4, 5, 8, 10, -1],
1302
+ [-1, -1, -1, -1, -1, -1, -1],
1303
+ [-1, -1, -1, -1, -1, -1, -1],
1304
+ [-1, -1, -1, -1, -1, -1, -1],
1305
+ ],
1306
+ [
1307
+ [0, 2, 4, 5, 10, -1, -1],
1308
+ [-1, -1, -1, -1, -1, -1, -1],
1309
+ [-1, -1, -1, -1, -1, -1, -1],
1310
+ [-1, -1, -1, -1, -1, -1, -1],
1311
+ ],
1312
+ [
1313
+ [0, 1, 9, -1, -1, -1, -1],
1314
+ [2, 3, 4, 5, 8, 10, -1],
1315
+ [-1, -1, -1, -1, -1, -1, -1],
1316
+ [-1, -1, -1, -1, -1, -1, -1],
1317
+ ],
1318
+ [
1319
+ [1, 2, 4, 5, 9, 10, -1],
1320
+ [-1, -1, -1, -1, -1, -1, -1],
1321
+ [-1, -1, -1, -1, -1, -1, -1],
1322
+ [-1, -1, -1, -1, -1, -1, -1],
1323
+ ],
1324
+ [
1325
+ [2, 3, 4, 7, 9, 10, -1],
1326
+ [-1, -1, -1, -1, -1, -1, -1],
1327
+ [-1, -1, -1, -1, -1, -1, -1],
1328
+ [-1, -1, -1, -1, -1, -1, -1],
1329
+ ],
1330
+ [
1331
+ [0, 2, 4, 7, 8, 9, 10],
1332
+ [-1, -1, -1, -1, -1, -1, -1],
1333
+ [-1, -1, -1, -1, -1, -1, -1],
1334
+ [-1, -1, -1, -1, -1, -1, -1],
1335
+ ],
1336
+ [
1337
+ [0, 1, 2, 3, 4, 7, 10],
1338
+ [-1, -1, -1, -1, -1, -1, -1],
1339
+ [-1, -1, -1, -1, -1, -1, -1],
1340
+ [-1, -1, -1, -1, -1, -1, -1],
1341
+ ],
1342
+ [
1343
+ [4, 7, 8, -1, -1, -1, -1],
1344
+ [1, 2, 10, -1, -1, -1, -1],
1345
+ [-1, -1, -1, -1, -1, -1, -1],
1346
+ [-1, -1, -1, -1, -1, -1, -1],
1347
+ ],
1348
+ [
1349
+ [2, 3, 8, 9, 10, -1, -1],
1350
+ [-1, -1, -1, -1, -1, -1, -1],
1351
+ [-1, -1, -1, -1, -1, -1, -1],
1352
+ [-1, -1, -1, -1, -1, -1, -1],
1353
+ ],
1354
+ [
1355
+ [0, 2, 9, 10, -1, -1, -1],
1356
+ [-1, -1, -1, -1, -1, -1, -1],
1357
+ [-1, -1, -1, -1, -1, -1, -1],
1358
+ [-1, -1, -1, -1, -1, -1, -1],
1359
+ ],
1360
+ [
1361
+ [0, 1, 2, 3, 8, 10, -1],
1362
+ [-1, -1, -1, -1, -1, -1, -1],
1363
+ [-1, -1, -1, -1, -1, -1, -1],
1364
+ [-1, -1, -1, -1, -1, -1, -1],
1365
+ ],
1366
+ [
1367
+ [1, 2, 10, -1, -1, -1, -1],
1368
+ [-1, -1, -1, -1, -1, -1, -1],
1369
+ [-1, -1, -1, -1, -1, -1, -1],
1370
+ [-1, -1, -1, -1, -1, -1, -1],
1371
+ ],
1372
+ [
1373
+ [1, 2, 5, 7, 11, -1, -1],
1374
+ [-1, -1, -1, -1, -1, -1, -1],
1375
+ [-1, -1, -1, -1, -1, -1, -1],
1376
+ [-1, -1, -1, -1, -1, -1, -1],
1377
+ ],
1378
+ [
1379
+ [0, 3, 8, -1, -1, -1, -1],
1380
+ [1, 2, 5, 7, 11, -1, -1],
1381
+ [-1, -1, -1, -1, -1, -1, -1],
1382
+ [-1, -1, -1, -1, -1, -1, -1],
1383
+ ],
1384
+ [
1385
+ [0, 2, 5, 7, 9, 11, -1],
1386
+ [-1, -1, -1, -1, -1, -1, -1],
1387
+ [-1, -1, -1, -1, -1, -1, -1],
1388
+ [-1, -1, -1, -1, -1, -1, -1],
1389
+ ],
1390
+ [
1391
+ [2, 3, 5, 7, 8, 9, 11],
1392
+ [-1, -1, -1, -1, -1, -1, -1],
1393
+ [-1, -1, -1, -1, -1, -1, -1],
1394
+ [-1, -1, -1, -1, -1, -1, -1],
1395
+ ],
1396
+ [
1397
+ [1, 2, 4, 5, 8, 11, -1],
1398
+ [-1, -1, -1, -1, -1, -1, -1],
1399
+ [-1, -1, -1, -1, -1, -1, -1],
1400
+ [-1, -1, -1, -1, -1, -1, -1],
1401
+ ],
1402
+ [
1403
+ [0, 1, 2, 3, 4, 5, 11],
1404
+ [-1, -1, -1, -1, -1, -1, -1],
1405
+ [-1, -1, -1, -1, -1, -1, -1],
1406
+ [-1, -1, -1, -1, -1, -1, -1],
1407
+ ],
1408
+ [
1409
+ [0, 2, 4, 5, 8, 9, 11],
1410
+ [-1, -1, -1, -1, -1, -1, -1],
1411
+ [-1, -1, -1, -1, -1, -1, -1],
1412
+ [-1, -1, -1, -1, -1, -1, -1],
1413
+ ],
1414
+ [
1415
+ [4, 5, 9, -1, -1, -1, -1],
1416
+ [2, 3, 11, -1, -1, -1, -1],
1417
+ [-1, -1, -1, -1, -1, -1, -1],
1418
+ [-1, -1, -1, -1, -1, -1, -1],
1419
+ ],
1420
+ [
1421
+ [1, 2, 4, 7, 9, 11, -1],
1422
+ [-1, -1, -1, -1, -1, -1, -1],
1423
+ [-1, -1, -1, -1, -1, -1, -1],
1424
+ [-1, -1, -1, -1, -1, -1, -1],
1425
+ ],
1426
+ [
1427
+ [0, 3, 8, -1, -1, -1, -1],
1428
+ [1, 2, 4, 7, 9, 11, -1],
1429
+ [-1, -1, -1, -1, -1, -1, -1],
1430
+ [-1, -1, -1, -1, -1, -1, -1],
1431
+ ],
1432
+ [
1433
+ [0, 2, 4, 7, 11, -1, -1],
1434
+ [-1, -1, -1, -1, -1, -1, -1],
1435
+ [-1, -1, -1, -1, -1, -1, -1],
1436
+ [-1, -1, -1, -1, -1, -1, -1],
1437
+ ],
1438
+ [
1439
+ [2, 3, 4, 7, 8, 11, -1],
1440
+ [-1, -1, -1, -1, -1, -1, -1],
1441
+ [-1, -1, -1, -1, -1, -1, -1],
1442
+ [-1, -1, -1, -1, -1, -1, -1],
1443
+ ],
1444
+ [
1445
+ [1, 2, 8, 9, 11, -1, -1],
1446
+ [-1, -1, -1, -1, -1, -1, -1],
1447
+ [-1, -1, -1, -1, -1, -1, -1],
1448
+ [-1, -1, -1, -1, -1, -1, -1],
1449
+ ],
1450
+ [
1451
+ [0, 1, 2, 3, 9, 11, -1],
1452
+ [-1, -1, -1, -1, -1, -1, -1],
1453
+ [-1, -1, -1, -1, -1, -1, -1],
1454
+ [-1, -1, -1, -1, -1, -1, -1],
1455
+ ],
1456
+ [
1457
+ [0, 2, 8, 11, -1, -1, -1],
1458
+ [-1, -1, -1, -1, -1, -1, -1],
1459
+ [-1, -1, -1, -1, -1, -1, -1],
1460
+ [-1, -1, -1, -1, -1, -1, -1],
1461
+ ],
1462
+ [
1463
+ [2, 3, 11, -1, -1, -1, -1],
1464
+ [-1, -1, -1, -1, -1, -1, -1],
1465
+ [-1, -1, -1, -1, -1, -1, -1],
1466
+ [-1, -1, -1, -1, -1, -1, -1],
1467
+ ],
1468
+ [
1469
+ [1, 3, 5, 7, -1, -1, -1],
1470
+ [-1, -1, -1, -1, -1, -1, -1],
1471
+ [-1, -1, -1, -1, -1, -1, -1],
1472
+ [-1, -1, -1, -1, -1, -1, -1],
1473
+ ],
1474
+ [
1475
+ [0, 1, 5, 7, 8, -1, -1],
1476
+ [-1, -1, -1, -1, -1, -1, -1],
1477
+ [-1, -1, -1, -1, -1, -1, -1],
1478
+ [-1, -1, -1, -1, -1, -1, -1],
1479
+ ],
1480
+ [
1481
+ [0, 3, 5, 7, 9, -1, -1],
1482
+ [-1, -1, -1, -1, -1, -1, -1],
1483
+ [-1, -1, -1, -1, -1, -1, -1],
1484
+ [-1, -1, -1, -1, -1, -1, -1],
1485
+ ],
1486
+ [
1487
+ [5, 7, 8, 9, -1, -1, -1],
1488
+ [-1, -1, -1, -1, -1, -1, -1],
1489
+ [-1, -1, -1, -1, -1, -1, -1],
1490
+ [-1, -1, -1, -1, -1, -1, -1],
1491
+ ],
1492
+ [
1493
+ [1, 3, 4, 5, 8, -1, -1],
1494
+ [-1, -1, -1, -1, -1, -1, -1],
1495
+ [-1, -1, -1, -1, -1, -1, -1],
1496
+ [-1, -1, -1, -1, -1, -1, -1],
1497
+ ],
1498
+ [
1499
+ [0, 1, 4, 5, -1, -1, -1],
1500
+ [-1, -1, -1, -1, -1, -1, -1],
1501
+ [-1, -1, -1, -1, -1, -1, -1],
1502
+ [-1, -1, -1, -1, -1, -1, -1],
1503
+ ],
1504
+ [
1505
+ [0, 3, 4, 5, 8, 9, -1],
1506
+ [-1, -1, -1, -1, -1, -1, -1],
1507
+ [-1, -1, -1, -1, -1, -1, -1],
1508
+ [-1, -1, -1, -1, -1, -1, -1],
1509
+ ],
1510
+ [
1511
+ [4, 5, 9, -1, -1, -1, -1],
1512
+ [-1, -1, -1, -1, -1, -1, -1],
1513
+ [-1, -1, -1, -1, -1, -1, -1],
1514
+ [-1, -1, -1, -1, -1, -1, -1],
1515
+ ],
1516
+ [
1517
+ [1, 3, 4, 7, 9, -1, -1],
1518
+ [-1, -1, -1, -1, -1, -1, -1],
1519
+ [-1, -1, -1, -1, -1, -1, -1],
1520
+ [-1, -1, -1, -1, -1, -1, -1],
1521
+ ],
1522
+ [
1523
+ [0, 1, 4, 7, 8, 9, -1],
1524
+ [-1, -1, -1, -1, -1, -1, -1],
1525
+ [-1, -1, -1, -1, -1, -1, -1],
1526
+ [-1, -1, -1, -1, -1, -1, -1],
1527
+ ],
1528
+ [
1529
+ [0, 3, 4, 7, -1, -1, -1],
1530
+ [-1, -1, -1, -1, -1, -1, -1],
1531
+ [-1, -1, -1, -1, -1, -1, -1],
1532
+ [-1, -1, -1, -1, -1, -1, -1],
1533
+ ],
1534
+ [
1535
+ [4, 7, 8, -1, -1, -1, -1],
1536
+ [-1, -1, -1, -1, -1, -1, -1],
1537
+ [-1, -1, -1, -1, -1, -1, -1],
1538
+ [-1, -1, -1, -1, -1, -1, -1],
1539
+ ],
1540
+ [
1541
+ [1, 3, 8, 9, -1, -1, -1],
1542
+ [-1, -1, -1, -1, -1, -1, -1],
1543
+ [-1, -1, -1, -1, -1, -1, -1],
1544
+ [-1, -1, -1, -1, -1, -1, -1],
1545
+ ],
1546
+ [
1547
+ [0, 1, 9, -1, -1, -1, -1],
1548
+ [-1, -1, -1, -1, -1, -1, -1],
1549
+ [-1, -1, -1, -1, -1, -1, -1],
1550
+ [-1, -1, -1, -1, -1, -1, -1],
1551
+ ],
1552
+ [
1553
+ [0, 3, 8, -1, -1, -1, -1],
1554
+ [-1, -1, -1, -1, -1, -1, -1],
1555
+ [-1, -1, -1, -1, -1, -1, -1],
1556
+ [-1, -1, -1, -1, -1, -1, -1],
1557
+ ],
1558
+ [
1559
+ [-1, -1, -1, -1, -1, -1, -1],
1560
+ [-1, -1, -1, -1, -1, -1, -1],
1561
+ [-1, -1, -1, -1, -1, -1, -1],
1562
+ [-1, -1, -1, -1, -1, -1, -1],
1563
+ ],
1564
+ ]
1565
+ num_vd_table = [
1566
+ 0,
1567
+ 1,
1568
+ 1,
1569
+ 1,
1570
+ 1,
1571
+ 1,
1572
+ 2,
1573
+ 1,
1574
+ 1,
1575
+ 2,
1576
+ 1,
1577
+ 1,
1578
+ 1,
1579
+ 1,
1580
+ 1,
1581
+ 1,
1582
+ 1,
1583
+ 1,
1584
+ 2,
1585
+ 1,
1586
+ 2,
1587
+ 1,
1588
+ 3,
1589
+ 1,
1590
+ 2,
1591
+ 2,
1592
+ 2,
1593
+ 1,
1594
+ 2,
1595
+ 1,
1596
+ 2,
1597
+ 1,
1598
+ 1,
1599
+ 2,
1600
+ 1,
1601
+ 1,
1602
+ 2,
1603
+ 2,
1604
+ 2,
1605
+ 1,
1606
+ 2,
1607
+ 3,
1608
+ 1,
1609
+ 1,
1610
+ 2,
1611
+ 2,
1612
+ 1,
1613
+ 1,
1614
+ 1,
1615
+ 1,
1616
+ 1,
1617
+ 1,
1618
+ 2,
1619
+ 1,
1620
+ 2,
1621
+ 1,
1622
+ 2,
1623
+ 2,
1624
+ 1,
1625
+ 1,
1626
+ 2,
1627
+ 1,
1628
+ 1,
1629
+ 1,
1630
+ 1,
1631
+ 2,
1632
+ 2,
1633
+ 2,
1634
+ 1,
1635
+ 1,
1636
+ 2,
1637
+ 1,
1638
+ 2,
1639
+ 3,
1640
+ 2,
1641
+ 2,
1642
+ 1,
1643
+ 1,
1644
+ 1,
1645
+ 1,
1646
+ 1,
1647
+ 1,
1648
+ 2,
1649
+ 1,
1650
+ 1,
1651
+ 1,
1652
+ 2,
1653
+ 1,
1654
+ 2,
1655
+ 2,
1656
+ 2,
1657
+ 1,
1658
+ 1,
1659
+ 1,
1660
+ 1,
1661
+ 1,
1662
+ 2,
1663
+ 3,
1664
+ 2,
1665
+ 2,
1666
+ 2,
1667
+ 2,
1668
+ 2,
1669
+ 1,
1670
+ 3,
1671
+ 4,
1672
+ 2,
1673
+ 2,
1674
+ 2,
1675
+ 2,
1676
+ 1,
1677
+ 1,
1678
+ 1,
1679
+ 1,
1680
+ 1,
1681
+ 1,
1682
+ 1,
1683
+ 1,
1684
+ 1,
1685
+ 1,
1686
+ 2,
1687
+ 2,
1688
+ 1,
1689
+ 1,
1690
+ 1,
1691
+ 1,
1692
+ 2,
1693
+ 1,
1694
+ 1,
1695
+ 2,
1696
+ 2,
1697
+ 2,
1698
+ 2,
1699
+ 2,
1700
+ 3,
1701
+ 2,
1702
+ 1,
1703
+ 2,
1704
+ 1,
1705
+ 1,
1706
+ 1,
1707
+ 1,
1708
+ 1,
1709
+ 1,
1710
+ 2,
1711
+ 2,
1712
+ 3,
1713
+ 2,
1714
+ 3,
1715
+ 2,
1716
+ 4,
1717
+ 2,
1718
+ 2,
1719
+ 2,
1720
+ 2,
1721
+ 1,
1722
+ 2,
1723
+ 1,
1724
+ 2,
1725
+ 1,
1726
+ 1,
1727
+ 2,
1728
+ 1,
1729
+ 1,
1730
+ 2,
1731
+ 2,
1732
+ 2,
1733
+ 1,
1734
+ 1,
1735
+ 2,
1736
+ 1,
1737
+ 1,
1738
+ 1,
1739
+ 1,
1740
+ 1,
1741
+ 1,
1742
+ 1,
1743
+ 1,
1744
+ 1,
1745
+ 1,
1746
+ 2,
1747
+ 1,
1748
+ 2,
1749
+ 1,
1750
+ 1,
1751
+ 1,
1752
+ 1,
1753
+ 1,
1754
+ 1,
1755
+ 2,
1756
+ 1,
1757
+ 1,
1758
+ 1,
1759
+ 2,
1760
+ 2,
1761
+ 2,
1762
+ 1,
1763
+ 1,
1764
+ 2,
1765
+ 1,
1766
+ 1,
1767
+ 2,
1768
+ 1,
1769
+ 1,
1770
+ 1,
1771
+ 1,
1772
+ 1,
1773
+ 1,
1774
+ 1,
1775
+ 1,
1776
+ 2,
1777
+ 1,
1778
+ 1,
1779
+ 1,
1780
+ 2,
1781
+ 1,
1782
+ 1,
1783
+ 1,
1784
+ 1,
1785
+ 2,
1786
+ 1,
1787
+ 1,
1788
+ 1,
1789
+ 1,
1790
+ 1,
1791
+ 2,
1792
+ 1,
1793
+ 1,
1794
+ 1,
1795
+ 1,
1796
+ 1,
1797
+ 2,
1798
+ 1,
1799
+ 2,
1800
+ 1,
1801
+ 1,
1802
+ 1,
1803
+ 1,
1804
+ 1,
1805
+ 1,
1806
+ 1,
1807
+ 1,
1808
+ 1,
1809
+ 1,
1810
+ 1,
1811
+ 1,
1812
+ 1,
1813
+ 1,
1814
+ 1,
1815
+ 1,
1816
+ 1,
1817
+ 1,
1818
+ 1,
1819
+ 1,
1820
+ 1,
1821
+ 0,
1822
+ ]
1823
+ check_table = [
1824
+ [0, 0, 0, 0, 0],
1825
+ [0, 0, 0, 0, 0],
1826
+ [0, 0, 0, 0, 0],
1827
+ [0, 0, 0, 0, 0],
1828
+ [0, 0, 0, 0, 0],
1829
+ [0, 0, 0, 0, 0],
1830
+ [0, 0, 0, 0, 0],
1831
+ [0, 0, 0, 0, 0],
1832
+ [0, 0, 0, 0, 0],
1833
+ [0, 0, 0, 0, 0],
1834
+ [0, 0, 0, 0, 0],
1835
+ [0, 0, 0, 0, 0],
1836
+ [0, 0, 0, 0, 0],
1837
+ [0, 0, 0, 0, 0],
1838
+ [0, 0, 0, 0, 0],
1839
+ [0, 0, 0, 0, 0],
1840
+ [0, 0, 0, 0, 0],
1841
+ [0, 0, 0, 0, 0],
1842
+ [0, 0, 0, 0, 0],
1843
+ [0, 0, 0, 0, 0],
1844
+ [0, 0, 0, 0, 0],
1845
+ [0, 0, 0, 0, 0],
1846
+ [0, 0, 0, 0, 0],
1847
+ [0, 0, 0, 0, 0],
1848
+ [0, 0, 0, 0, 0],
1849
+ [0, 0, 0, 0, 0],
1850
+ [0, 0, 0, 0, 0],
1851
+ [0, 0, 0, 0, 0],
1852
+ [0, 0, 0, 0, 0],
1853
+ [0, 0, 0, 0, 0],
1854
+ [0, 0, 0, 0, 0],
1855
+ [0, 0, 0, 0, 0],
1856
+ [0, 0, 0, 0, 0],
1857
+ [0, 0, 0, 0, 0],
1858
+ [0, 0, 0, 0, 0],
1859
+ [0, 0, 0, 0, 0],
1860
+ [0, 0, 0, 0, 0],
1861
+ [0, 0, 0, 0, 0],
1862
+ [0, 0, 0, 0, 0],
1863
+ [0, 0, 0, 0, 0],
1864
+ [0, 0, 0, 0, 0],
1865
+ [0, 0, 0, 0, 0],
1866
+ [0, 0, 0, 0, 0],
1867
+ [0, 0, 0, 0, 0],
1868
+ [0, 0, 0, 0, 0],
1869
+ [0, 0, 0, 0, 0],
1870
+ [0, 0, 0, 0, 0],
1871
+ [0, 0, 0, 0, 0],
1872
+ [0, 0, 0, 0, 0],
1873
+ [0, 0, 0, 0, 0],
1874
+ [0, 0, 0, 0, 0],
1875
+ [0, 0, 0, 0, 0],
1876
+ [0, 0, 0, 0, 0],
1877
+ [0, 0, 0, 0, 0],
1878
+ [0, 0, 0, 0, 0],
1879
+ [0, 0, 0, 0, 0],
1880
+ [0, 0, 0, 0, 0],
1881
+ [0, 0, 0, 0, 0],
1882
+ [0, 0, 0, 0, 0],
1883
+ [0, 0, 0, 0, 0],
1884
+ [0, 0, 0, 0, 0],
1885
+ [1, 1, 0, 0, 194],
1886
+ [1, -1, 0, 0, 193],
1887
+ [0, 0, 0, 0, 0],
1888
+ [0, 0, 0, 0, 0],
1889
+ [0, 0, 0, 0, 0],
1890
+ [0, 0, 0, 0, 0],
1891
+ [0, 0, 0, 0, 0],
1892
+ [0, 0, 0, 0, 0],
1893
+ [0, 0, 0, 0, 0],
1894
+ [0, 0, 0, 0, 0],
1895
+ [0, 0, 0, 0, 0],
1896
+ [0, 0, 0, 0, 0],
1897
+ [0, 0, 0, 0, 0],
1898
+ [0, 0, 0, 0, 0],
1899
+ [0, 0, 0, 0, 0],
1900
+ [0, 0, 0, 0, 0],
1901
+ [0, 0, 0, 0, 0],
1902
+ [0, 0, 0, 0, 0],
1903
+ [0, 0, 0, 0, 0],
1904
+ [0, 0, 0, 0, 0],
1905
+ [0, 0, 0, 0, 0],
1906
+ [0, 0, 0, 0, 0],
1907
+ [0, 0, 0, 0, 0],
1908
+ [0, 0, 0, 0, 0],
1909
+ [0, 0, 0, 0, 0],
1910
+ [0, 0, 0, 0, 0],
1911
+ [0, 0, 0, 0, 0],
1912
+ [0, 0, 0, 0, 0],
1913
+ [0, 0, 0, 0, 0],
1914
+ [0, 0, 0, 0, 0],
1915
+ [1, 0, 1, 0, 164],
1916
+ [0, 0, 0, 0, 0],
1917
+ [0, 0, 0, 0, 0],
1918
+ [1, 0, -1, 0, 161],
1919
+ [0, 0, 0, 0, 0],
1920
+ [0, 0, 0, 0, 0],
1921
+ [0, 0, 0, 0, 0],
1922
+ [0, 0, 0, 0, 0],
1923
+ [0, 0, 0, 0, 0],
1924
+ [0, 0, 0, 0, 0],
1925
+ [0, 0, 0, 0, 0],
1926
+ [0, 0, 0, 0, 0],
1927
+ [1, 0, 0, 1, 152],
1928
+ [0, 0, 0, 0, 0],
1929
+ [0, 0, 0, 0, 0],
1930
+ [0, 0, 0, 0, 0],
1931
+ [0, 0, 0, 0, 0],
1932
+ [0, 0, 0, 0, 0],
1933
+ [0, 0, 0, 0, 0],
1934
+ [1, 0, 0, 1, 145],
1935
+ [1, 0, 0, 1, 144],
1936
+ [0, 0, 0, 0, 0],
1937
+ [0, 0, 0, 0, 0],
1938
+ [0, 0, 0, 0, 0],
1939
+ [0, 0, 0, 0, 0],
1940
+ [0, 0, 0, 0, 0],
1941
+ [0, 0, 0, 0, 0],
1942
+ [1, 0, 0, -1, 137],
1943
+ [0, 0, 0, 0, 0],
1944
+ [0, 0, 0, 0, 0],
1945
+ [0, 0, 0, 0, 0],
1946
+ [1, 0, 1, 0, 133],
1947
+ [1, 0, 1, 0, 132],
1948
+ [1, 1, 0, 0, 131],
1949
+ [1, 1, 0, 0, 130],
1950
+ [0, 0, 0, 0, 0],
1951
+ [0, 0, 0, 0, 0],
1952
+ [0, 0, 0, 0, 0],
1953
+ [0, 0, 0, 0, 0],
1954
+ [0, 0, 0, 0, 0],
1955
+ [0, 0, 0, 0, 0],
1956
+ [0, 0, 0, 0, 0],
1957
+ [0, 0, 0, 0, 0],
1958
+ [0, 0, 0, 0, 0],
1959
+ [0, 0, 0, 0, 0],
1960
+ [0, 0, 0, 0, 0],
1961
+ [0, 0, 0, 0, 0],
1962
+ [0, 0, 0, 0, 0],
1963
+ [0, 0, 0, 0, 0],
1964
+ [0, 0, 0, 0, 0],
1965
+ [0, 0, 0, 0, 0],
1966
+ [0, 0, 0, 0, 0],
1967
+ [0, 0, 0, 0, 0],
1968
+ [0, 0, 0, 0, 0],
1969
+ [0, 0, 0, 0, 0],
1970
+ [0, 0, 0, 0, 0],
1971
+ [0, 0, 0, 0, 0],
1972
+ [0, 0, 0, 0, 0],
1973
+ [0, 0, 0, 0, 0],
1974
+ [0, 0, 0, 0, 0],
1975
+ [0, 0, 0, 0, 0],
1976
+ [0, 0, 0, 0, 0],
1977
+ [0, 0, 0, 0, 0],
1978
+ [0, 0, 0, 0, 0],
1979
+ [1, 0, 0, 1, 100],
1980
+ [0, 0, 0, 0, 0],
1981
+ [1, 0, 0, 1, 98],
1982
+ [0, 0, 0, 0, 0],
1983
+ [1, 0, 0, 1, 96],
1984
+ [0, 0, 0, 0, 0],
1985
+ [0, 0, 0, 0, 0],
1986
+ [0, 0, 0, 0, 0],
1987
+ [0, 0, 0, 0, 0],
1988
+ [0, 0, 0, 0, 0],
1989
+ [0, 0, 0, 0, 0],
1990
+ [0, 0, 0, 0, 0],
1991
+ [1, 0, 1, 0, 88],
1992
+ [0, 0, 0, 0, 0],
1993
+ [0, 0, 0, 0, 0],
1994
+ [0, 0, 0, 0, 0],
1995
+ [0, 0, 0, 0, 0],
1996
+ [0, 0, 0, 0, 0],
1997
+ [1, 0, -1, 0, 82],
1998
+ [0, 0, 0, 0, 0],
1999
+ [0, 0, 0, 0, 0],
2000
+ [0, 0, 0, 0, 0],
2001
+ [0, 0, 0, 0, 0],
2002
+ [0, 0, 0, 0, 0],
2003
+ [0, 0, 0, 0, 0],
2004
+ [0, 0, 0, 0, 0],
2005
+ [1, 0, 1, 0, 74],
2006
+ [0, 0, 0, 0, 0],
2007
+ [1, 0, 1, 0, 72],
2008
+ [0, 0, 0, 0, 0],
2009
+ [1, 0, 0, -1, 70],
2010
+ [0, 0, 0, 0, 0],
2011
+ [0, 0, 0, 0, 0],
2012
+ [1, -1, 0, 0, 67],
2013
+ [0, 0, 0, 0, 0],
2014
+ [1, -1, 0, 0, 65],
2015
+ [0, 0, 0, 0, 0],
2016
+ [0, 0, 0, 0, 0],
2017
+ [0, 0, 0, 0, 0],
2018
+ [0, 0, 0, 0, 0],
2019
+ [0, 0, 0, 0, 0],
2020
+ [0, 0, 0, 0, 0],
2021
+ [0, 0, 0, 0, 0],
2022
+ [0, 0, 0, 0, 0],
2023
+ [1, 1, 0, 0, 56],
2024
+ [0, 0, 0, 0, 0],
2025
+ [0, 0, 0, 0, 0],
2026
+ [0, 0, 0, 0, 0],
2027
+ [1, -1, 0, 0, 52],
2028
+ [0, 0, 0, 0, 0],
2029
+ [0, 0, 0, 0, 0],
2030
+ [0, 0, 0, 0, 0],
2031
+ [0, 0, 0, 0, 0],
2032
+ [0, 0, 0, 0, 0],
2033
+ [0, 0, 0, 0, 0],
2034
+ [0, 0, 0, 0, 0],
2035
+ [1, 1, 0, 0, 44],
2036
+ [0, 0, 0, 0, 0],
2037
+ [0, 0, 0, 0, 0],
2038
+ [0, 0, 0, 0, 0],
2039
+ [1, 1, 0, 0, 40],
2040
+ [0, 0, 0, 0, 0],
2041
+ [1, 0, 0, -1, 38],
2042
+ [1, 0, -1, 0, 37],
2043
+ [0, 0, 0, 0, 0],
2044
+ [0, 0, 0, 0, 0],
2045
+ [0, 0, 0, 0, 0],
2046
+ [1, 0, -1, 0, 33],
2047
+ [0, 0, 0, 0, 0],
2048
+ [0, 0, 0, 0, 0],
2049
+ [0, 0, 0, 0, 0],
2050
+ [0, 0, 0, 0, 0],
2051
+ [1, -1, 0, 0, 28],
2052
+ [0, 0, 0, 0, 0],
2053
+ [1, 0, -1, 0, 26],
2054
+ [1, 0, 0, -1, 25],
2055
+ [0, 0, 0, 0, 0],
2056
+ [0, 0, 0, 0, 0],
2057
+ [0, 0, 0, 0, 0],
2058
+ [0, 0, 0, 0, 0],
2059
+ [1, -1, 0, 0, 20],
2060
+ [0, 0, 0, 0, 0],
2061
+ [1, 0, -1, 0, 18],
2062
+ [0, 0, 0, 0, 0],
2063
+ [0, 0, 0, 0, 0],
2064
+ [0, 0, 0, 0, 0],
2065
+ [0, 0, 0, 0, 0],
2066
+ [0, 0, 0, 0, 0],
2067
+ [0, 0, 0, 0, 0],
2068
+ [0, 0, 0, 0, 0],
2069
+ [0, 0, 0, 0, 0],
2070
+ [1, 0, 0, -1, 9],
2071
+ [0, 0, 0, 0, 0],
2072
+ [0, 0, 0, 0, 0],
2073
+ [1, 0, 0, -1, 6],
2074
+ [0, 0, 0, 0, 0],
2075
+ [0, 0, 0, 0, 0],
2076
+ [0, 0, 0, 0, 0],
2077
+ [0, 0, 0, 0, 0],
2078
+ [0, 0, 0, 0, 0],
2079
+ [0, 0, 0, 0, 0],
2080
+ ]
2081
+ tet_table = [
2082
+ [-1, -1, -1, -1, -1, -1],
2083
+ [0, 0, 0, 0, 0, 0],
2084
+ [0, 0, 0, 0, 0, 0],
2085
+ [1, 1, 1, 1, 1, 1],
2086
+ [4, 4, 4, 4, 4, 4],
2087
+ [0, 0, 0, 0, 0, 0],
2088
+ [4, 0, 0, 4, 4, -1],
2089
+ [1, 1, 1, 1, 1, 1],
2090
+ [4, 4, 4, 4, 4, 4],
2091
+ [0, 4, 0, 4, 4, -1],
2092
+ [0, 0, 0, 0, 0, 0],
2093
+ [1, 1, 1, 1, 1, 1],
2094
+ [5, 5, 5, 5, 5, 5],
2095
+ [0, 0, 0, 0, 0, 0],
2096
+ [0, 0, 0, 0, 0, 0],
2097
+ [1, 1, 1, 1, 1, 1],
2098
+ [2, 2, 2, 2, 2, 2],
2099
+ [0, 0, 0, 0, 0, 0],
2100
+ [2, 0, 2, -1, 0, 2],
2101
+ [1, 1, 1, 1, 1, 1],
2102
+ [2, -1, 2, 4, 4, 2],
2103
+ [0, 0, 0, 0, 0, 0],
2104
+ [2, 0, 2, 4, 4, 2],
2105
+ [1, 1, 1, 1, 1, 1],
2106
+ [2, 4, 2, 4, 4, 2],
2107
+ [0, 4, 0, 4, 4, 0],
2108
+ [2, 0, 2, 0, 0, 2],
2109
+ [1, 1, 1, 1, 1, 1],
2110
+ [2, 5, 2, 5, 5, 2],
2111
+ [0, 0, 0, 0, 0, 0],
2112
+ [2, 0, 2, 0, 0, 2],
2113
+ [1, 1, 1, 1, 1, 1],
2114
+ [1, 1, 1, 1, 1, 1],
2115
+ [0, 1, 1, -1, 0, 1],
2116
+ [0, 0, 0, 0, 0, 0],
2117
+ [2, 2, 2, 2, 2, 2],
2118
+ [4, 1, 1, 4, 4, 1],
2119
+ [0, 1, 1, 0, 0, 1],
2120
+ [4, 0, 0, 4, 4, 0],
2121
+ [2, 2, 2, 2, 2, 2],
2122
+ [-1, 1, 1, 4, 4, 1],
2123
+ [0, 1, 1, 4, 4, 1],
2124
+ [0, 0, 0, 0, 0, 0],
2125
+ [2, 2, 2, 2, 2, 2],
2126
+ [5, 1, 1, 5, 5, 1],
2127
+ [0, 1, 1, 0, 0, 1],
2128
+ [0, 0, 0, 0, 0, 0],
2129
+ [2, 2, 2, 2, 2, 2],
2130
+ [1, 1, 1, 1, 1, 1],
2131
+ [0, 0, 0, 0, 0, 0],
2132
+ [0, 0, 0, 0, 0, 0],
2133
+ [8, 8, 8, 8, 8, 8],
2134
+ [1, 1, 1, 4, 4, 1],
2135
+ [0, 0, 0, 0, 0, 0],
2136
+ [4, 0, 0, 4, 4, 0],
2137
+ [4, 4, 4, 4, 4, 4],
2138
+ [1, 1, 1, 4, 4, 1],
2139
+ [0, 4, 0, 4, 4, 0],
2140
+ [0, 0, 0, 0, 0, 0],
2141
+ [4, 4, 4, 4, 4, 4],
2142
+ [1, 1, 1, 5, 5, 1],
2143
+ [0, 0, 0, 0, 0, 0],
2144
+ [0, 0, 0, 0, 0, 0],
2145
+ [5, 5, 5, 5, 5, 5],
2146
+ [6, 6, 6, 6, 6, 6],
2147
+ [6, -1, 0, 6, 0, 6],
2148
+ [6, 0, 0, 6, 0, 6],
2149
+ [6, 1, 1, 6, 1, 6],
2150
+ [4, 4, 4, 4, 4, 4],
2151
+ [0, 0, 0, 0, 0, 0],
2152
+ [4, 0, 0, 4, 4, 4],
2153
+ [1, 1, 1, 1, 1, 1],
2154
+ [6, 4, -1, 6, 4, 6],
2155
+ [6, 4, 0, 6, 4, 6],
2156
+ [6, 0, 0, 6, 0, 6],
2157
+ [6, 1, 1, 6, 1, 6],
2158
+ [5, 5, 5, 5, 5, 5],
2159
+ [0, 0, 0, 0, 0, 0],
2160
+ [0, 0, 0, 0, 0, 0],
2161
+ [1, 1, 1, 1, 1, 1],
2162
+ [2, 2, 2, 2, 2, 2],
2163
+ [0, 0, 0, 0, 0, 0],
2164
+ [2, 0, 2, 2, 0, 2],
2165
+ [1, 1, 1, 1, 1, 1],
2166
+ [2, 2, 2, 2, 2, 2],
2167
+ [0, 0, 0, 0, 0, 0],
2168
+ [2, 0, 2, 2, 2, 2],
2169
+ [1, 1, 1, 1, 1, 1],
2170
+ [2, 4, 2, 2, 4, 2],
2171
+ [0, 4, 0, 4, 4, 0],
2172
+ [2, 0, 2, 2, 0, 2],
2173
+ [1, 1, 1, 1, 1, 1],
2174
+ [2, 2, 2, 2, 2, 2],
2175
+ [0, 0, 0, 0, 0, 0],
2176
+ [0, 0, 0, 0, 0, 0],
2177
+ [1, 1, 1, 1, 1, 1],
2178
+ [6, 1, 1, 6, -1, 6],
2179
+ [6, 1, 1, 6, 0, 6],
2180
+ [6, 0, 0, 6, 0, 6],
2181
+ [6, 2, 2, 6, 2, 6],
2182
+ [4, 1, 1, 4, 4, 1],
2183
+ [0, 1, 1, 0, 0, 1],
2184
+ [4, 0, 0, 4, 4, 4],
2185
+ [2, 2, 2, 2, 2, 2],
2186
+ [6, 1, 1, 6, 4, 6],
2187
+ [6, 1, 1, 6, 4, 6],
2188
+ [6, 0, 0, 6, 0, 6],
2189
+ [6, 2, 2, 6, 2, 6],
2190
+ [5, 1, 1, 5, 5, 1],
2191
+ [0, 1, 1, 0, 0, 1],
2192
+ [0, 0, 0, 0, 0, 0],
2193
+ [2, 2, 2, 2, 2, 2],
2194
+ [1, 1, 1, 1, 1, 1],
2195
+ [0, 0, 0, 0, 0, 0],
2196
+ [0, 0, 0, 0, 0, 0],
2197
+ [6, 6, 6, 6, 6, 6],
2198
+ [1, 1, 1, 1, 1, 1],
2199
+ [0, 0, 0, 0, 0, 0],
2200
+ [0, 0, 0, 0, 0, 0],
2201
+ [4, 4, 4, 4, 4, 4],
2202
+ [1, 1, 1, 1, 4, 1],
2203
+ [0, 4, 0, 4, 4, 0],
2204
+ [0, 0, 0, 0, 0, 0],
2205
+ [4, 4, 4, 4, 4, 4],
2206
+ [1, 1, 1, 1, 1, 1],
2207
+ [0, 0, 0, 0, 0, 0],
2208
+ [0, 5, 0, 5, 0, 5],
2209
+ [5, 5, 5, 5, 5, 5],
2210
+ [5, 5, 5, 5, 5, 5],
2211
+ [0, 5, 0, 5, 0, 5],
2212
+ [-1, 5, 0, 5, 0, 5],
2213
+ [1, 5, 1, 5, 1, 5],
2214
+ [4, 5, -1, 5, 4, 5],
2215
+ [0, 5, 0, 5, 0, 5],
2216
+ [4, 5, 0, 5, 4, 5],
2217
+ [1, 5, 1, 5, 1, 5],
2218
+ [4, 4, 4, 4, 4, 4],
2219
+ [0, 4, 0, 4, 4, 4],
2220
+ [0, 0, 0, 0, 0, 0],
2221
+ [1, 1, 1, 1, 1, 1],
2222
+ [6, 6, 6, 6, 6, 6],
2223
+ [0, 0, 0, 0, 0, 0],
2224
+ [0, 0, 0, 0, 0, 0],
2225
+ [1, 1, 1, 1, 1, 1],
2226
+ [2, 5, 2, 5, -1, 5],
2227
+ [0, 5, 0, 5, 0, 5],
2228
+ [2, 5, 2, 5, 0, 5],
2229
+ [1, 5, 1, 5, 1, 5],
2230
+ [2, 5, 2, 5, 4, 5],
2231
+ [0, 5, 0, 5, 0, 5],
2232
+ [2, 5, 2, 5, 4, 5],
2233
+ [1, 5, 1, 5, 1, 5],
2234
+ [2, 4, 2, 4, 4, 2],
2235
+ [0, 4, 0, 4, 4, 4],
2236
+ [2, 0, 2, 0, 0, 2],
2237
+ [1, 1, 1, 1, 1, 1],
2238
+ [2, 6, 2, 6, 6, 2],
2239
+ [0, 0, 0, 0, 0, 0],
2240
+ [2, 0, 2, 0, 0, 2],
2241
+ [1, 1, 1, 1, 1, 1],
2242
+ [1, 1, 1, 1, 1, 1],
2243
+ [0, 1, 1, 1, 0, 1],
2244
+ [0, 0, 0, 0, 0, 0],
2245
+ [2, 2, 2, 2, 2, 2],
2246
+ [4, 1, 1, 1, 4, 1],
2247
+ [0, 1, 1, 1, 0, 1],
2248
+ [4, 0, 0, 4, 4, 0],
2249
+ [2, 2, 2, 2, 2, 2],
2250
+ [1, 1, 1, 1, 1, 1],
2251
+ [0, 1, 1, 1, 1, 1],
2252
+ [0, 0, 0, 0, 0, 0],
2253
+ [2, 2, 2, 2, 2, 2],
2254
+ [1, 1, 1, 1, 1, 1],
2255
+ [0, 0, 0, 0, 0, 0],
2256
+ [0, 0, 0, 0, 0, 0],
2257
+ [2, 2, 2, 2, 2, 2],
2258
+ [1, 1, 1, 1, 1, 1],
2259
+ [0, 0, 0, 0, 0, 0],
2260
+ [0, 0, 0, 0, 0, 0],
2261
+ [5, 5, 5, 5, 5, 5],
2262
+ [1, 1, 1, 1, 4, 1],
2263
+ [0, 0, 0, 0, 0, 0],
2264
+ [4, 0, 0, 4, 4, 0],
2265
+ [4, 4, 4, 4, 4, 4],
2266
+ [1, 1, 1, 1, 1, 1],
2267
+ [0, 0, 0, 0, 0, 0],
2268
+ [0, 0, 0, 0, 0, 0],
2269
+ [4, 4, 4, 4, 4, 4],
2270
+ [1, 1, 1, 1, 1, 1],
2271
+ [6, 0, 0, 6, 0, 6],
2272
+ [0, 0, 0, 0, 0, 0],
2273
+ [6, 6, 6, 6, 6, 6],
2274
+ [5, 5, 5, 5, 5, 5],
2275
+ [5, 5, 0, 5, 0, 5],
2276
+ [5, 5, 0, 5, 0, 5],
2277
+ [5, 5, 1, 5, 1, 5],
2278
+ [4, 4, 4, 4, 4, 4],
2279
+ [0, 0, 0, 0, 0, 0],
2280
+ [4, 4, 0, 4, 4, 4],
2281
+ [1, 1, 1, 1, 1, 1],
2282
+ [4, 4, 4, 4, 4, 4],
2283
+ [4, 4, 0, 4, 4, 4],
2284
+ [0, 0, 0, 0, 0, 0],
2285
+ [1, 1, 1, 1, 1, 1],
2286
+ [8, 8, 8, 8, 8, 8],
2287
+ [0, 0, 0, 0, 0, 0],
2288
+ [0, 0, 0, 0, 0, 0],
2289
+ [1, 1, 1, 1, 1, 1],
2290
+ [2, 2, 2, 2, 2, 2],
2291
+ [0, 0, 0, 0, 0, 0],
2292
+ [2, 2, 2, 2, 0, 2],
2293
+ [1, 1, 1, 1, 1, 1],
2294
+ [2, 2, 2, 2, 2, 2],
2295
+ [0, 0, 0, 0, 0, 0],
2296
+ [2, 2, 2, 2, 2, 2],
2297
+ [1, 1, 1, 1, 1, 1],
2298
+ [2, 2, 2, 2, 2, 2],
2299
+ [0, 0, 0, 0, 0, 0],
2300
+ [0, 0, 0, 0, 0, 0],
2301
+ [4, 1, 1, 4, 4, 1],
2302
+ [2, 2, 2, 2, 2, 2],
2303
+ [0, 0, 0, 0, 0, 0],
2304
+ [0, 0, 0, 0, 0, 0],
2305
+ [1, 1, 1, 1, 1, 1],
2306
+ [1, 1, 1, 1, 1, 1],
2307
+ [1, 1, 1, 1, 0, 1],
2308
+ [0, 0, 0, 0, 0, 0],
2309
+ [2, 2, 2, 2, 2, 2],
2310
+ [1, 1, 1, 1, 1, 1],
2311
+ [0, 0, 0, 0, 0, 0],
2312
+ [0, 0, 0, 0, 0, 0],
2313
+ [2, 4, 2, 4, 4, 2],
2314
+ [1, 1, 1, 1, 1, 1],
2315
+ [1, 1, 1, 1, 1, 1],
2316
+ [0, 0, 0, 0, 0, 0],
2317
+ [2, 2, 2, 2, 2, 2],
2318
+ [1, 1, 1, 1, 1, 1],
2319
+ [0, 0, 0, 0, 0, 0],
2320
+ [0, 0, 0, 0, 0, 0],
2321
+ [2, 2, 2, 2, 2, 2],
2322
+ [1, 1, 1, 1, 1, 1],
2323
+ [0, 0, 0, 0, 0, 0],
2324
+ [0, 0, 0, 0, 0, 0],
2325
+ [5, 5, 5, 5, 5, 5],
2326
+ [1, 1, 1, 1, 1, 1],
2327
+ [0, 0, 0, 0, 0, 0],
2328
+ [0, 0, 0, 0, 0, 0],
2329
+ [4, 4, 4, 4, 4, 4],
2330
+ [1, 1, 1, 1, 1, 1],
2331
+ [0, 0, 0, 0, 0, 0],
2332
+ [0, 0, 0, 0, 0, 0],
2333
+ [4, 4, 4, 4, 4, 4],
2334
+ [1, 1, 1, 1, 1, 1],
2335
+ [0, 0, 0, 0, 0, 0],
2336
+ [0, 0, 0, 0, 0, 0],
2337
+ [12, 12, 12, 12, 12, 12],
2338
+ ]