diff --git a/blender_shadow_volume.py b/blender_shadow_volume.py new file mode 100644 index 0000000..f52db0b --- /dev/null +++ b/blender_shadow_volume.py @@ -0,0 +1,307 @@ +import bpy +import bmesh +from mathutils import Vector +from collections import defaultdict +from itertools import combinations, chain + +def sprint(*text): + screen = bpy.data.screens['Scripting'] + for area in screen.areas: + if area.type != "CONSOLE": + continue + override = {'screen': screen, 'area': area} + with bpy.context.temp_override(**override): + bpy.ops.console.scrollback_append(text=" ".join(map(str, text))) + +print = sprint + +def create_shadow_volume_mesh(light, o: bpy.types.Object, vertex_indices=None): + mesh = bpy.data.meshes.new("test") + + if vertex_indices is None: + vertex_indices = range(len(o.data.vertices)) + + length = len(vertices) + mesh.vertices.add(1 + length) + origin = mesh.vertices[0] + origin.co = Vector(light.location) + + mesh.edges.add(length) + + for i, v in enumerate(vertices): + v = o.data.vertices[ix] + world_v = Vector(o.matrix_world @ v.co) + mesh.vertices[1 + i].co = world_v + mesh.edges[i].vertices = [0, 1 + i] + + object = bpy.data.objects.new("test", mesh) + + bpy.context.scene.collection.objects.link(object) + +def cast_ray(light, o, ix): + v = o.data.vertices[ix] + start = Vector(o.matrix_world @ v.co) + ray = start - light.location + #ray = Vector((0, 0, 0)) - light.location + ray.normalize() + end = start + (ray * 10) + return start, end + +def shadow_volume_mesh_rays(light, o: bpy.types.Object, loop): + length = len(loop) + mesh = bpy.data.meshes.new("test") + #mesh.vertices.add(length * 2) + #mesh.edges.add(length) + + vertices = [0] * length * 2 + + for i, ix in enumerate(loop): + start, end = cast_ray(light, o, ix) + vertices[i * 2 + 0] = start + vertices[i * 2 + 1] = end + + bm = bmesh.new() + #bm.from_mesh(mesh) + for i in range(len(loop)): + i1 = i + i2 = (i + 1) % len(loop) + bm.faces.new([ + bm.verts.new(vertices[i1 * 2 + 0]), # start + bm.verts.new(vertices[i2 * 2 + 0]), # start + bm.verts.new(vertices[i2 * 2 + 1]), # end + bm.verts.new(vertices[i1 * 2 + 1]), # end + ]) + bm.to_mesh(mesh) + bm.free() + object = bpy.data.objects.new("test", mesh) + + bpy.context.scene.collection.objects.link(object) + +def polygon_edges(l): + for i in range(len(l)): + j = (i + 1) % len(l) + yield frozenset((l[i], l[j])) + +def polygons_by_edge_pairs(polygons): + pairs = defaultdict(list) + for i, polygon in enumerate(polygons): + for edge in polygon_edges(polygon.vertices): + pairs[edge].append(i) + return list(pairs.items()) + +def face_indicators(light, o: bpy.types.Object): + indicators = [] + for i, normal in enumerate(o.data.polygon_normals): + n = o.matrix_world.to_3x3() @ normal.vector + n.normalize() + a = o.data.polygons[i].vertices[0] + v = o.matrix_world @ o.data.vertices[a].co + #d = v.dot(n) + #indicator = n.dot(light.location) + d + indicator = n.dot(light.location - v) + indicators.append(indicator) + return indicators + +def edge_indices(o): + return { + frozenset(edge.vertices): i + for i, edge in enumerate(o.data.edges) + } + +def object_silhouette(light, o: bpy.types.Object): + indicators = face_indicators(light, o) + edges = [] + for edge, polygons in polygons_by_edge_pairs(o.data.polygons): + assert len(polygons) == 2, polygons + a, b = polygons + if (indicators[a] > 0) != (indicators[b] > 0): + edges.append(edge) + assert len(set(edges)) == len(edges) + return edges, indicators + +def delete_test_objects(collection): + for o in collection.objects: + if o.name.startswith("test"): + collection.objects.unlink(o) + +def edge_loop(edges): + loop = list(edges.pop()) + while True: + for i, (a, b) in enumerate(edges): + if a == loop[-1]: + if b in loop: + return loop + loop.append(b) + elif b == loop[-1]: + if a in loop: + return loop + loop.append(a) + else: + continue + del edges[i] + break + else: + return None + +def append(l, a): + if l[0] == -1: + assert l[1] == -1 + l[0] = a + else: + assert l[1] == -1 + l[1] = a + +def make_list(length): + l = [] + for i in range(length): + ll = [-1, -1] + l.append(ll) + return l + +def edge_loop_graph(edges, num_vertices): + edges_by_vertices = make_list(num_vertices) + for i, (a, b) in enumerate(edges): + append(edges_by_vertices[a], i) + append(edges_by_vertices[b], i) + return edges_by_vertices + +def neq(a, b, y): + assert a != -1 + assert b != -1 + if a == y: + assert b != y + return b + else: + assert a != y + return a + +def edge_loop2_inner(edges, graph, ix, visited_edges): + loop = [] + while True: + loop.append(ix) + visited_edges[ix] = True + + a, b = edges[ix] + next_ix_a = neq(*graph[a], ix) + next_ix_b = neq(*graph[b], ix) + if not visited_edges[next_ix_a]: + ix = next_ix_a + continue + elif not visited_edges[next_ix_b]: + ix = next_ix_b + continue + else: + break + + print("inner", loop) + return loop + +def next_unvisited(visited): + for i, v in enumerate(visited): + if v == False: + return i + return -1 + +def edge_loop2(edges, graph): + visited_edges = [False] * len(edges) + loops = [] + while True: + start = next_unvisited(visited_edges) + if start == -1: + break + loops.append(edge_loop2_inner(edges, graph, start, visited_edges)) + return loops + +def edge_loops(edges): + edges = list(edges) + loops = [] + while edges: + loop = edge_loop(edges) + if loop is None: + break + loops.append(loop) + return loops + +def object_end_caps(light, o: bpy.types.Object, indicators): + front = bpy.data.meshes.new("front") + back = bpy.data.meshes.new("back") + + bm_front = bmesh.new() + bm_back = bmesh.new() + + for i, polygon in enumerate(o.data.polygons): + assert len(polygon.vertices) == 4 + a = o.matrix_world @ o.data.vertices[polygon.vertices[0]].co + b = o.matrix_world @ o.data.vertices[polygon.vertices[1]].co + c = o.matrix_world @ o.data.vertices[polygon.vertices[2]].co + d = o.matrix_world @ o.data.vertices[polygon.vertices[3]].co + if indicators[i] > 0: + face = [ + bm_front.verts.new(a), + bm_front.verts.new(b), + bm_front.verts.new(c), + bm_front.verts.new(d), + ] + bm_front.faces.new(face) + else: + #ray = Vector((0, 0, 0)) - light.location + ray_a = a - light.location + ray_a.normalize() + ray_b = b - light.location + ray_b.normalize() + ray_c = c - light.location + ray_c.normalize() + ray_d = d - light.location + ray_d.normalize() + face = [ + bm_back.verts.new(a + (ray_a * 10)), + bm_back.verts.new(b + (ray_b * 10)), + bm_back.verts.new(c + (ray_c * 10)), + bm_back.verts.new(d + (ray_d * 10)), + ] + bm_back.faces.new(face) + + bm_front.to_mesh(front) + bm_front.free() + object_front = bpy.data.objects.new("test_front", front) + bpy.context.scene.collection.objects.link(object_front) + + bm_back.to_mesh(back) + bm_back.free() + object_back = bpy.data.objects.new("test_back", back) + bpy.context.scene.collection.objects.link(object_back) + +light = bpy.context.scene.objects['Light'] +cube = bpy.context.scene.objects['Torus'] + +delete_test_objects(bpy.context.scene.collection) +edges, indicators = object_silhouette(light, cube) + +object_end_caps(light, cube, indicators) + +for loop in edge_loops(edges): + print("loop", len(loop)) + shadow_volume_mesh_rays(light, cube, loop) + +graph = edge_loop_graph(edges, len(cube.data.vertices)) + +""" +print(graph) +loops = edge_loop2(edges, graph) +obj = bpy.context.edit_object +bm = bmesh.from_edit_mesh(obj.data) +for loop in loops: + for edge_ix in loop: + edge = edges[edge_ix] + for e in bm.edges: + if frozenset((e.verts[0].index, e.verts[1].index)) == frozenset(edge): + e.select = True +bmesh.update_edit_mesh(obj.data) +""" + +""" +obj = bpy.context.edit_object +bm = bmesh.from_edit_mesh(obj.data) +bm.faces[4].select = True +bmesh.update_edit_mesh(obj.data) +""" diff --git a/example/example.mk b/example/example.mk index c025147..6cc611c 100644 --- a/example/example.mk +++ b/example/example.mk @@ -1147,3 +1147,22 @@ MODIFIER_VOLUME_HOLE_OBJ = \ example/modifier_volume_hole.elf: LDSCRIPT = $(LIB)/main.lds example/modifier_volume_hole.elf: $(START_OBJ) $(MODIFIER_VOLUME_HOLE_OBJ) + +SHADOW_VOLUME_OBJ = \ + example/shadow_volume.o \ + holly/core.o \ + holly/region_array.o \ + holly/background.o \ + holly/ta_fifo_polygon_converter.o \ + holly/video_output.o \ + sh7091/serial.o \ + maple/maple.o \ + sh7091/c_serial.o \ + printf/printf.o \ + printf/unparse.o \ + printf/parse.o \ + shadow_volume.o \ + $(LIBGCC) + +example/shadow_volume.elf: LDSCRIPT = $(LIB)/main.lds +example/shadow_volume.elf: $(START_OBJ) $(SHADOW_VOLUME_OBJ) diff --git a/example/shadow_volume.cpp b/example/shadow_volume.cpp new file mode 100644 index 0000000..dc2ba33 --- /dev/null +++ b/example/shadow_volume.cpp @@ -0,0 +1,599 @@ +#include + +#include "holly/background.hpp" +#include "holly/core.hpp" +#include "holly/core_bits.hpp" +#include "holly/holly.hpp" +#include "holly/isp_tsp.hpp" +#include "holly/region_array.hpp" +#include "holly/ta_bits.hpp" +#include "holly/ta_fifo_polygon_converter.hpp" +#include "holly/ta_global_parameter.hpp" +#include "holly/ta_parameter.hpp" +#include "holly/ta_vertex_parameter.hpp" +#include "holly/texture_memory_alloc5.hpp" +#include "holly/video_output.hpp" + +#include "systembus.hpp" +#include "systembus_bits.hpp" + +#include "maple/maple.hpp" +#include "maple/maple_host_command_writer.hpp" +#include "maple/maple_bus_bits.hpp" +#include "maple/maple_bus_commands.hpp" +#include "maple/maple_bus_ft0.hpp" + +#include "memorymap.hpp" + +#include "sh7091/sh7091.hpp" +#include "sh7091/sh7091_bits.hpp" +#include "sh7091/serial.hpp" +#include "printf/printf.h" + +#include "math/float_types.hpp" +#include "math/transform.hpp" + +#include "interrupt.hpp" +#include "assert.h" + +#include "model/blender_export.h" +#include "model/torus.h" + +#include "shadow_volume.hpp" + +static ft0::data_transfer::data_format data[4]; + +uint8_t send_buf[1024] __attribute__((aligned(32))); +uint8_t recv_buf[1024] __attribute__((aligned(32))); + +void do_get_condition() +{ + auto writer = maple::host_command_writer(send_buf, recv_buf); + + using command_type = maple::get_condition; + using response_type = maple::data_transfer; + + auto [host_command, host_response] + = writer.append_command_all_ports(); + + for (int port = 0; port < 4; port++) { + auto& data_fields = host_command[port].bus_data.data_fields; + data_fields.function_type = std::byteswap(function_type::controller); + } + maple::dma_start(send_buf, writer.send_offset, + recv_buf, writer.recv_offset); + + for (uint8_t port = 0; port < 4; port++) { + auto& bus_data = host_response[port].bus_data; + if (bus_data.command_code != response_type::command_code) { + return; + } + auto& data_fields = bus_data.data_fields; + if ((std::byteswap(data_fields.function_type) & function_type::controller) == 0) { + return; + } + + data[port].digital_button = data_fields.data.digital_button; + for (int i = 0; i < 6; i++) { + data[port].analog_coordinate_axis[i] + = data_fields.data.analog_coordinate_axis[i]; + } + } +} + +void vbr100() +{ + serial::string("vbr100\n"); + interrupt_exception(); +} + +void vbr400() +{ + serial::string("vbr400\n"); + interrupt_exception(); +} + +const int framebuffer_width = 640; +const int framebuffer_height = 480; +const int tile_width = framebuffer_width / 32; +const int tile_height = framebuffer_height / 32; + +constexpr uint32_t ta_alloc = 0 + | ta_alloc_ctrl::pt_opb::no_list + | ta_alloc_ctrl::tm_opb::no_list + | ta_alloc_ctrl::t_opb::no_list + | ta_alloc_ctrl::om_opb::_32x4byte + | ta_alloc_ctrl::o_opb::_32x4byte; + +constexpr int ta_cont_count = 1; +constexpr struct opb_size opb_size[ta_cont_count] = { + { + .opaque = 32 * 4, + .opaque_modifier = 32 * 4, + .translucent = 0, + .translucent_modifier = 0, + .punch_through = 0 + } +}; + +static volatile int ta_in_use = 0; +static volatile int core_in_use = 0; +static volatile int next_frame = 0; +static volatile int framebuffer_ix = 0; +static volatile int next_frame_ix = 0; + +static inline void pump_events(uint32_t istnrm) +{ + if (istnrm & istnrm::v_blank_in) { + system.ISTNRM = istnrm::v_blank_in; + + next_frame = 1; + holly.FB_R_SOF1 = texture_memory_alloc.framebuffer[next_frame_ix].start; + } + + if (istnrm & istnrm::end_of_render_tsp) { + system.ISTNRM = istnrm::end_of_render_tsp + | istnrm::end_of_render_isp + | istnrm::end_of_render_video; + + next_frame_ix = framebuffer_ix; + framebuffer_ix += 1; + if (framebuffer_ix >= 3) framebuffer_ix = 0; + + core_in_use = 0; + } + + if (istnrm & istnrm::end_of_transferring_opaque_list) { + system.ISTNRM = istnrm::end_of_transferring_opaque_list; + + core_in_use = 1; + core_start_render2(texture_memory_alloc.region_array.start, + texture_memory_alloc.isp_tsp_parameters.start, + texture_memory_alloc.background[0].start, + texture_memory_alloc.framebuffer[framebuffer_ix].start, + framebuffer_width); + + ta_in_use = 0; + } +} + +void vbr600() +{ + uint32_t sr; + asm volatile ("stc sr,%0" : "=r" (sr)); + sr |= sh::sr::imask(15); + asm volatile ("ldc %0,sr" : : "r" (sr)); + + if (sh7091.CCN.EXPEVT == 0 && sh7091.CCN.INTEVT == 0x320) { + uint32_t istnrm = system.ISTNRM; + uint32_t isterr = system.ISTERR; + + if (isterr) { + serial::string("isterr: "); + serial::integer(system.ISTERR); + } + + pump_events(istnrm); + + sr &= ~sh::sr::imask(15); + asm volatile ("ldc %0,sr" : : "r" (sr)); + + return; + } + + serial::string("vbr600\n"); + interrupt_exception(); +} + +void global_polygon_type_1(ta_parameter_writer& writer, + uint32_t para_control_obj_control, + bool always, + const float a = 1.0f, + const float r = 1.0f, + const float g = 1.0f, + const float b = 1.0f + ) +{ + const uint32_t parameter_control_word = para_control::para_type::polygon_or_modifier_volume + | obj_control::col_type::intensity_mode_1 + | obj_control::gouraud + | para_control_obj_control + ; + + const uint32_t depth_compare_mode = always + ? isp_tsp_instruction_word::depth_compare_mode::always + : isp_tsp_instruction_word::depth_compare_mode::greater_or_equal + ; + const uint32_t isp_tsp_instruction_word = depth_compare_mode + | isp_tsp_instruction_word::culling_mode::no_culling + ; + + const uint32_t tsp_instruction_word = tsp_instruction_word::fog_control::no_fog + | tsp_instruction_word::texture_shading_instruction::decal + | tsp_instruction_word::src_alpha_instr::one + | tsp_instruction_word::dst_alpha_instr::zero + ; + + const uint32_t texture_control_word = 0; + + writer.append() = + ta_global_parameter::polygon_type_1(parameter_control_word, + isp_tsp_instruction_word, + tsp_instruction_word, + texture_control_word, + a, + r, + g, + b + ); +} + +void global_polygon_modifier_volume(ta_parameter_writer * writer) +{ + uint32_t parameter_control_word = para_control::para_type::polygon_or_modifier_volume + | para_control::list_type::opaque_modifier_volume + ; + + uint32_t isp_tsp_instruction_word = isp_tsp_instruction_word::volume_instruction::normal_polygon + | isp_tsp_instruction_word::culling_mode::no_culling; + + writer->append() = + ta_global_parameter::modifier_volume(parameter_control_word, + isp_tsp_instruction_word); +} + +void global_polygon_modifier_volume_last_in_volume(ta_parameter_writer * writer) +{ + const uint32_t last_parameter_control_word = para_control::para_type::polygon_or_modifier_volume + | para_control::list_type::opaque_modifier_volume + | obj_control::volume::modifier_volume::last_in_volume; + + const uint32_t last_isp_tsp_instruction_word = isp_tsp_instruction_word::volume_instruction::inside_last_polygon + | isp_tsp_instruction_word::culling_mode::no_culling; + + writer->append() = + ta_global_parameter::modifier_volume(last_parameter_control_word, + last_isp_tsp_instruction_word); +} + +static inline vec3 screen_transform(vec3 v) +{ + float dim = 480 / 2.0; + + return { + v.x / (1.f * v.z) * dim + 640 / 2.0f, + v.y / (1.f * v.z) * dim + 480 / 2.0f, + 1 / v.z, + }; +} + +static inline void render_quad(ta_parameter_writer& writer, + vec3 ap, + vec3 bp, + vec3 cp, + vec3 dp, + float ai, + float bi, + float ci, + float di) +{ + if (ap.z < 0 || bp.z < 0 || cp.z < 0 || dp.z < 0) + return; + + writer.append() = + ta_vertex_parameter::polygon_type_2(polygon_vertex_parameter_control_word(false), + ap.x, ap.y, ap.z, + ai); + + writer.append() = + ta_vertex_parameter::polygon_type_2(polygon_vertex_parameter_control_word(false), + bp.x, bp.y, bp.z, + bi); + + writer.append() = + ta_vertex_parameter::polygon_type_2(polygon_vertex_parameter_control_word(false), + dp.x, dp.y, dp.z, + di); + + writer.append() = + ta_vertex_parameter::polygon_type_2(polygon_vertex_parameter_control_word(true), + cp.x, cp.y, cp.z, + ci); +} + +#define fsrra(n) (1.0f / (sqrt(n))) + +void transfer_line(ta_parameter_writer& writer, vec3 p1, vec3 p2) +{ + float dy = p2.y - p1.y; + float dx = p2.x - p1.x; + float d = fsrra(dx * dx + dy * dy) * 0.7f; + float dy1 = dy * d; + float dx1 = dx * d; + + vec3 ap = { p1.x + dy1, p1.y + -dx1, p1.z }; + vec3 bp = { p1.x + -dy1, p1.y + dx1, p1.z }; + vec3 cp = { p2.x + -dy1, p2.y + dx1, p2.z }; + vec3 dp = { p2.x + dy1, p2.y + -dx1, p2.z }; + + float li = 1.0f; + + render_quad(writer, ap, bp, cp, dp, li, li, li, li); +} + +static ta_parameter_writer * _writer; +static ta_parameter_writer * _sv_writer; + +void render_quad_sv(vec3 a, + vec3 b, + vec3 c, + vec3 d, + bool last_in_volume) +{ + float ai = 1.0f; + float bi = 1.0f; + float ci = 1.0f; + float di = 1.0f; + + vec3 ap = screen_transform(a); + vec3 bp = screen_transform(b); + vec3 cp = screen_transform(c); + vec3 dp = screen_transform(d); + + /* + render_quad(*_writer, + ap, + bp, + cp, + dp, + ai, + bi, + ci, + di); + */ + + /* + transfer_line(*_writer, ap, bp); + transfer_line(*_writer, bp, cp); + transfer_line(*_writer, cp, dp); + transfer_line(*_writer, dp, ap); + */ + + /* + A B A B B + D C D D C + */ + + _sv_writer->append() = + ta_vertex_parameter::modifier_volume(modifier_volume_vertex_parameter_control_word(), + ap.x, ap.y, ap.z, + bp.x, bp.y, bp.z, + dp.x, dp.y, dp.z); + + if (last_in_volume) { + global_polygon_modifier_volume_last_in_volume(_sv_writer); + } + + _sv_writer->append() = + ta_vertex_parameter::modifier_volume(modifier_volume_vertex_parameter_control_word(), + bp.x, bp.y, bp.z, + cp.x, cp.y, cp.z, + dp.x, dp.y, dp.z); +} + +float _rotate_x = 0; + +void transfer_mesh(ta_parameter_writer& writer, + const mat4x4& screen_trans, + const object * object, + const vec3 light, + const bool cast_shadow, + const bool receive_shadow, + const bool diffuse, + vec3 color) +{ + const mesh * mesh = object->mesh; + + vec3 position[mesh->position_length]; + vec3 polygon_normal[mesh->polygon_normal_length]; + assert(mesh->polygon_normal_length == mesh->polygons_length); + + mat4x4 trans = screen_trans + * translate(object->location) + * rotate_x(_rotate_x) + * rotate_quaternion(object->rotation) + * scale(object->scale); + + for (int i = 0; i < mesh->position_length; i++) { + position[i] = trans * mesh->position[i]; + } + for (int i = 0; i < mesh->polygon_normal_length; i++) { + polygon_normal[i] = normalize(normal_multiply(trans, mesh->polygon_normal[i])); + } + + bool always = false; + uint32_t shadow = receive_shadow ? obj_control::shadow : 0; + uint32_t control = para_control::list_type::opaque | shadow; + global_polygon_type_1(writer, + control, + always, + 1.0f, + color.x, color.y, color.z); + + for (int i = 0; i < mesh->polygons_length; i++) { + const polygon * p = &mesh->polygons[i]; + + vec3 ap = screen_transform(position[p->a]); + vec3 bp = screen_transform(position[p->b]); + vec3 cp = screen_transform(position[p->c]); + vec3 dp = screen_transform(position[p->d]); + + float li = 1.0f; + if (diffuse) { + vec3 light_dir = normalize(light - position[p->a]); + float diffuse = max(dot(polygon_normal[i], light_dir), 0.0f); + li = 0.5 + 0.6 * diffuse; + } + + render_quad(writer, ap, bp, cp, dp, li, li, li, li); + } + + if (cast_shadow) { + global_polygon_modifier_volume(_sv_writer); + + global_polygon_type_1(writer, + control, + always, + 1, 1, 0.5, 0.5); + + shadow_volume_mesh(light, position, polygon_normal, mesh, render_quad_sv); + } +} + +mat4x4 light_trans = mat4x4(); +float _torus_rx = 0; + +void transfer_scene(ta_parameter_writer& writer, const mat4x4& screen_trans) +{ + light_trans = rotate_z(0.01f) * light_trans; + vec3 light = screen_trans * light_trans * objects[0].location; + + // opaque list + { + _rotate_x = 0; + transfer_mesh(writer, screen_trans * light_trans, &objects[0], light, + false, // cast shadow + false, // receive shadow + false, // diffuse + (vec3){0.9, 0.9, 0.9} + ); + + _rotate_x = 0; + transfer_mesh(writer, screen_trans, &objects[1], light, + false, // cast shadow + true, // receive shadow + true, // diffuse + (vec3){0.5, 0.9, 0.5} + ); + + _rotate_x = _torus_rx; + _torus_rx += 0.001f; + transfer_mesh(writer, screen_trans, &objects[2], light, + true, // cast shadow + false, // receive shadow + true, // diffuse + (vec3){1, 0, 1} + ); + + writer.append() = + ta_global_parameter::end_of_list(para_control::para_type::end_of_list); + + _sv_writer->append() = + ta_global_parameter::end_of_list(para_control::para_type::end_of_list); + } +} + +mat4x4 update_analog(mat4x4& screen_trans) +{ + const float l_ = static_cast(data[0].analog_coordinate_axis[0]) * (1.f / 255.f); + const float r_ = static_cast(data[0].analog_coordinate_axis[1]) * (1.f / 255.f); + + const float x_ = static_cast(data[0].analog_coordinate_axis[2] - 0x80) / 127.f; + const float y_ = static_cast(data[0].analog_coordinate_axis[3] - 0x80) / 127.f; + + float y = -0.05f * x_; + float x = 0.05f * y_; + + float z = -0.05f * r_ + 0.05f * l_; + + return translate((vec3){0, 0, z}) * + screen_trans * + rotate_x(x) * + rotate_z(y); +} + +uint8_t __attribute__((aligned(32))) ta_parameter_buf1[1024 * 1024]; +uint8_t __attribute__((aligned(32))) ta_parameter_buf2[1024 * 1024]; + +int main() +{ + sh7091.TMU.TSTR = 0; // stop all timers + sh7091.TMU.TOCR = tmu::tocr::tcoe::tclk_is_external_clock_or_input_capture; + sh7091.TMU.TCR0 = tmu::tcr0::tpsc::p_phi_256; // 256 / 50MHz = 5.12 μs ; underflows in ~1 hour + sh7091.TMU.TCOR0 = 0xffff'ffff; + sh7091.TMU.TCNT0 = 0xffff'ffff; + sh7091.TMU.TSTR = tmu::tstr::str0::counter_start; + + serial::init(0); + + interrupt_init(); + + holly.SOFTRESET = softreset::pipeline_soft_reset + | softreset::ta_soft_reset; + holly.SOFTRESET = 0; + + core_init(); + + holly.FPU_SHAD_SCALE = fpu_shad_scale::simple_shadow_enable::intensity_volume_mode + | fpu_shad_scale::scale_factor_for_shadows(128); + + system.IML6NRM = istnrm::end_of_render_tsp + | istnrm::v_blank_in + | istnrm::end_of_transferring_opaque_list; + + region_array_multipass(tile_width, + tile_height, + opb_size, + ta_cont_count, + texture_memory_alloc.region_array.start, + texture_memory_alloc.object_list.start); + + background_parameter2(texture_memory_alloc.background[0].start, + 0xff202040); + + ta_parameter_writer writer = ta_parameter_writer(ta_parameter_buf1, (sizeof (ta_parameter_buf1))); + ta_parameter_writer sv_writer = ta_parameter_writer(ta_parameter_buf2, (sizeof (ta_parameter_buf2))); + _writer = &writer; + _sv_writer = &sv_writer; + + video_output::set_mode_vga(); + + mat4x4 screen_trans = { + 1, 0, 0, 0, + 0, 0, -1, 0, + 0, 1, 0, 7, + 0, 0, 0, 1, + }; + + do_get_condition(); + while (1) { + maple::dma_wait_complete(); + do_get_condition(); + + screen_trans = update_analog(screen_trans); + + writer.offset = 0; + sv_writer.offset = 0; + transfer_scene(writer, screen_trans); + + while (ta_in_use); + while (core_in_use); + ta_in_use = 1; + ta_polygon_converter_init2(texture_memory_alloc.isp_tsp_parameters.start, + texture_memory_alloc.isp_tsp_parameters.end, + texture_memory_alloc.object_list.start, + texture_memory_alloc.object_list.end, + opb_size[0].total(), + ta_alloc, + tile_width, + tile_height); + ta_polygon_converter_writeback(sv_writer.buf, sv_writer.offset); + ta_polygon_converter_transfer(sv_writer.buf, sv_writer.offset); + ta_wait_opaque_modifier_volume_list(); + ta_polygon_converter_writeback(writer.buf, writer.offset); + ta_polygon_converter_transfer(writer.buf, writer.offset); + + while (next_frame == 0); + next_frame = 0; + } +} diff --git a/math/float_types.hpp b/math/float_types.hpp new file mode 100644 index 0000000..b1b852c --- /dev/null +++ b/math/float_types.hpp @@ -0,0 +1,15 @@ +#pragma once + +#include "math/vec2.hpp" +#include "math/vec3.hpp" +#include "math/vec4.hpp" +#include "math/mat2x2.hpp" +#include "math/mat3x3.hpp" +#include "math/mat4x4.hpp" + +using vec2 = vec<2, float>; +using vec3 = vec<3, float>; +using vec4 = vec<4, float>; +using mat2x2 = mat<2, 2, float>; +using mat3x3 = mat<3, 3, float>; +using mat4x4 = mat<4, 4, float>; diff --git a/model/blender_export.h b/model/blender_export.h index 1e1e058..3ad702f 100644 --- a/model/blender_export.h +++ b/model/blender_export.h @@ -1,3 +1,5 @@ +#pragma once + struct polygon { int a, b, c, d; int material_index; @@ -10,6 +12,19 @@ struct mesh_material { int offset; }; +struct edge { + int a; // vertices index + int b; // vertices index +}; + +struct edge_polygon { + struct edge edge; + struct { + int a; + int b; + } polygon_index; // polygon indices +}; + struct mesh { const vec3 * position; const int position_length; @@ -23,6 +38,8 @@ struct mesh { const int uv_layers_length; const mesh_material * materials; const int materials_length; + const edge_polygon * edge_polygons; + const int edge_polygons_length; }; struct object { diff --git a/model/torus.blend b/model/torus.blend new file mode 100644 index 0000000..31cc56e Binary files /dev/null and b/model/torus.blend differ diff --git a/model/torus.h b/model/torus.h new file mode 100644 index 0000000..93c4b15 --- /dev/null +++ b/model/torus.h @@ -0,0 +1,14294 @@ +const vec3 mesh_Cube_001_position[] = { + {-1.000000, -1.000000, -1.000000}, + {-1.000000, -1.000000, 1.000000}, + {-1.000000, 1.000000, -1.000000}, + {-1.000000, 1.000000, 1.000000}, + {1.000000, -1.000000, -1.000000}, + {1.000000, -1.000000, 1.000000}, + {1.000000, 1.000000, -1.000000}, + {1.000000, 1.000000, 1.000000}, +}; + +const vec2 mesh_Cube_001_UVMap_uvmap[] = { + {0.375000, 0.000000}, + {0.625000, 0.000000}, + {0.625000, 0.250000}, + {0.375000, 0.250000}, + {0.375000, 0.250000}, + {0.625000, 0.250000}, + {0.625000, 0.500000}, + {0.375000, 0.500000}, + {0.375000, 0.500000}, + {0.625000, 0.500000}, + {0.625000, 0.750000}, + {0.375000, 0.750000}, + {0.375000, 0.750000}, + {0.625000, 0.750000}, + {0.625000, 1.000000}, + {0.375000, 1.000000}, + {0.125000, 0.500000}, + {0.375000, 0.500000}, + {0.375000, 0.750000}, + {0.125000, 0.750000}, + {0.625000, 0.500000}, + {0.875000, 0.500000}, + {0.875000, 0.750000}, + {0.625000, 0.750000}, +}; + +const vec3 mesh_Cube_001_normal[] = { + {-0.577350, -0.577350, -0.577350}, + {-0.577350, -0.577350, 0.577350}, + {-0.577350, 0.577350, -0.577350}, + {-0.577350, 0.577350, 0.577350}, + {0.577350, -0.577350, -0.577350}, + {0.577350, -0.577350, 0.577350}, + {0.577350, 0.577350, -0.577350}, + {0.577350, 0.577350, 0.577350}, +}; + +const vec3 mesh_Cube_001_polygon_normal[] = { + {-1.000000, 0.000000, 0.000000}, + {0.000000, 1.000000, 0.000000}, + {1.000000, 0.000000, 0.000000}, + {0.000000, -1.000000, 0.000000}, + {0.000000, 0.000000, -1.000000}, + {0.000000, 0.000000, 1.000000}, +}; + +const polygon mesh_Cube_001_polygons[] = { + {0, 1, 3, 2, 0, 0}, + {2, 3, 7, 6, 0, 4}, + {6, 7, 5, 4, 0, 8}, + {4, 5, 1, 0, 0, 12}, + {2, 6, 4, 0, 0, 16}, + {7, 3, 1, 5, 0, 20}, +}; + +const edge_polygon mesh_Cube_001_edge_polygons[] = { + {{0, 1}, {0, 3}}, + {{1, 3}, {0, 5}}, + {{2, 3}, {0, 1}}, + {{0, 2}, {0, 4}}, + {{3, 7}, {1, 5}}, + {{6, 7}, {1, 2}}, + {{2, 6}, {1, 4}}, + {{5, 7}, {2, 5}}, + {{4, 5}, {2, 3}}, + {{4, 6}, {2, 4}}, + {{1, 5}, {3, 5}}, + {{0, 4}, {3, 4}}, +}; + +const mesh_material mesh_Cube_001_materials[] = { +}; +const vec2 * mesh_Cube_001_uv_layers[] = { + mesh_Cube_001_UVMap_uvmap, +}; + +const mesh mesh_Cube_001 = { + .position = mesh_Cube_001_position, + .position_length = (sizeof (mesh_Cube_001_position)) / (sizeof (mesh_Cube_001_position[0])), + .normal = mesh_Cube_001_normal, + .normal_length = (sizeof (mesh_Cube_001_normal)) / (sizeof (mesh_Cube_001_normal[0])), + .polygon_normal = mesh_Cube_001_polygon_normal, + .polygon_normal_length = (sizeof (mesh_Cube_001_polygon_normal)) / (sizeof (mesh_Cube_001_polygon_normal[0])), + .polygons = mesh_Cube_001_polygons, + .polygons_length = (sizeof (mesh_Cube_001_polygons)) / (sizeof (mesh_Cube_001_polygons[0])), + .uv_layers = mesh_Cube_001_uv_layers, + .uv_layers_length = (sizeof (mesh_Cube_001_uv_layers)) / (sizeof (mesh_Cube_001_uv_layers[0])), + .materials = mesh_Cube_001_materials, + .materials_length = (sizeof (mesh_Cube_001_materials)) / (sizeof (mesh_Cube_001_materials[0])), + .edge_polygons = mesh_Cube_001_edge_polygons, + .edge_polygons_length = (sizeof (mesh_Cube_001_edge_polygons)) / (sizeof (mesh_Cube_001_edge_polygons[0])), +}; + +const vec3 mesh_Plane_position[] = { + {-1.000000, -1.000000, 0.000000}, + {1.000000, -1.000000, 0.000000}, + {-1.000000, 1.000000, 0.000000}, + {1.000000, 1.000000, 0.000000}, + {-1.000000, 0.500000, 0.000000}, + {-1.000000, 0.000000, 0.000000}, + {-1.000000, -0.500000, 0.000000}, + {-0.500000, -1.000000, 0.000000}, + {0.000000, -1.000000, 0.000000}, + {0.500000, -1.000000, 0.000000}, + {1.000000, -0.500000, 0.000000}, + {1.000000, 0.000000, 0.000000}, + {1.000000, 0.500000, 0.000000}, + {0.500000, 1.000000, 0.000000}, + {0.000000, 1.000000, 0.000000}, + {-0.500000, 1.000000, 0.000000}, + {-0.500000, -0.500000, 0.000000}, + {0.000000, -0.500000, 0.000000}, + {0.500000, -0.500000, 0.000000}, + {-0.500000, -0.000000, 0.000000}, + {0.000000, -0.000000, 0.000000}, + {0.500000, -0.000000, 0.000000}, + {-0.500000, 0.500000, 0.000000}, + {0.000000, 0.500000, 0.000000}, + {0.500000, 0.500000, 0.000000}, + {-1.000000, 0.750000, 0.000000}, + {-1.000000, 0.250000, 0.000000}, + {-1.000000, -0.250000, 0.000000}, + {-1.000000, -0.750000, 0.000000}, + {-0.750000, -1.000000, 0.000000}, + {-0.250000, -1.000000, 0.000000}, + {0.250000, -1.000000, 0.000000}, + {0.750000, -1.000000, 0.000000}, + {1.000000, -0.750000, 0.000000}, + {1.000000, -0.250000, 0.000000}, + {1.000000, 0.250000, 0.000000}, + {1.000000, 0.750000, 0.000000}, + {0.750000, 1.000000, 0.000000}, + {0.250000, 1.000000, 0.000000}, + {-0.250000, 1.000000, 0.000000}, + {-0.750000, 1.000000, 0.000000}, + {-0.250000, -0.500000, 0.000000}, + {0.250000, -0.500000, 0.000000}, + {-0.500000, -0.250000, 0.000000}, + {0.000000, -0.250000, 0.000000}, + {0.500000, -0.250000, 0.000000}, + {-0.250000, -0.000000, 0.000000}, + {0.250000, -0.000000, 0.000000}, + {-0.500000, 0.250000, 0.000000}, + {0.000000, 0.250000, 0.000000}, + {0.500000, 0.250000, 0.000000}, + {-0.250000, 0.500000, 0.000000}, + {0.250000, 0.500000, 0.000000}, + {-0.500000, -0.750000, 0.000000}, + {0.000000, -0.750000, 0.000000}, + {0.500000, -0.750000, 0.000000}, + {0.750000, -0.500000, 0.000000}, + {0.750000, -0.000000, 0.000000}, + {0.750000, 0.500000, 0.000000}, + {0.500000, 0.750000, 0.000000}, + {0.000000, 0.750000, 0.000000}, + {-0.500000, 0.750000, 0.000000}, + {-0.750000, 0.500000, 0.000000}, + {-0.750000, -0.000000, 0.000000}, + {-0.750000, -0.500000, 0.000000}, + {-0.750000, -0.250000, 0.000000}, + {-0.750000, 0.250000, 0.000000}, + {-0.750000, 0.750000, 0.000000}, + {-0.250000, 0.750000, 0.000000}, + {0.250000, 0.750000, 0.000000}, + {0.750000, 0.750000, 0.000000}, + {0.750000, 0.250000, 0.000000}, + {0.750000, -0.250000, 0.000000}, + {0.750000, -0.750000, 0.000000}, + {0.250000, -0.750000, 0.000000}, + {-0.250000, -0.750000, 0.000000}, + {-0.750000, -0.750000, 0.000000}, + {0.250000, 0.250000, 0.000000}, + {-0.250000, 0.250000, 0.000000}, + {0.250000, -0.250000, 0.000000}, + {-0.250000, -0.250000, 0.000000}, + {-1.000000, 0.625000, 0.000000}, + {-1.000000, 0.125000, 0.000000}, + {-1.000000, -0.375000, 0.000000}, + {-1.000000, -0.875000, 0.000000}, + {-0.625000, -1.000000, 0.000000}, + {-0.125000, -1.000000, 0.000000}, + {0.375000, -1.000000, 0.000000}, + {0.875000, -1.000000, 0.000000}, + {1.000000, -0.625000, 0.000000}, + {1.000000, -0.125000, 0.000000}, + {1.000000, 0.375000, 0.000000}, + {1.000000, 0.875000, 0.000000}, + {0.625000, 1.000000, 0.000000}, + {0.125000, 1.000000, 0.000000}, + {-0.375000, 1.000000, 0.000000}, + {-0.875000, 1.000000, 0.000000}, + {-0.125000, -0.500000, 0.000000}, + {0.375000, -0.500000, 0.000000}, + {-0.500000, -0.125000, 0.000000}, + {0.000000, -0.125000, 0.000000}, + {0.500000, -0.125000, 0.000000}, + {-0.125000, -0.000000, 0.000000}, + {0.375000, -0.000000, 0.000000}, + {-0.500000, 0.375000, 0.000000}, + {0.000000, 0.375000, 0.000000}, + {0.500000, 0.375000, 0.000000}, + {-0.125000, 0.500000, 0.000000}, + {0.375000, 0.500000, 0.000000}, + {-0.500000, -0.625000, 0.000000}, + {0.000000, -0.625000, 0.000000}, + {0.500000, -0.625000, 0.000000}, + {0.625000, -0.500000, 0.000000}, + {0.625000, -0.000000, 0.000000}, + {0.625000, 0.500000, 0.000000}, + {0.500000, 0.625000, 0.000000}, + {0.000000, 0.625000, 0.000000}, + {-0.500000, 0.625000, 0.000000}, + {-0.625000, 0.500000, 0.000000}, + {-0.625000, -0.000000, 0.000000}, + {-0.625000, -0.500000, 0.000000}, + {-1.000000, 0.875000, 0.000000}, + {-1.000000, 0.375000, 0.000000}, + {-1.000000, -0.125000, 0.000000}, + {-1.000000, -0.625000, 0.000000}, + {-0.875000, -1.000000, 0.000000}, + {-0.375000, -1.000000, 0.000000}, + {0.125000, -1.000000, 0.000000}, + {0.625000, -1.000000, 0.000000}, + {1.000000, -0.875000, 0.000000}, + {1.000000, -0.375000, 0.000000}, + {1.000000, 0.125000, 0.000000}, + {1.000000, 0.625000, 0.000000}, + {0.875000, 1.000000, 0.000000}, + {0.375000, 1.000000, 0.000000}, + {-0.125000, 1.000000, 0.000000}, + {-0.625000, 1.000000, 0.000000}, + {-0.375000, -0.500000, 0.000000}, + {0.125000, -0.500000, 0.000000}, + {-0.500000, -0.375000, 0.000000}, + {0.000000, -0.375000, 0.000000}, + {0.500000, -0.375000, 0.000000}, + {-0.375000, -0.000000, 0.000000}, + {0.125000, -0.000000, 0.000000}, + {-0.500000, 0.125000, 0.000000}, + {0.000000, 0.125000, 0.000000}, + {0.500000, 0.125000, 0.000000}, + {-0.375000, 0.500000, 0.000000}, + {0.125000, 0.500000, 0.000000}, + {-0.500000, -0.875000, 0.000000}, + {0.000000, -0.875000, 0.000000}, + {0.500000, -0.875000, 0.000000}, + {0.875000, -0.500000, 0.000000}, + {0.875000, -0.000000, 0.000000}, + {0.875000, 0.500000, 0.000000}, + {0.500000, 0.875000, 0.000000}, + {0.000000, 0.875000, 0.000000}, + {-0.500000, 0.875000, 0.000000}, + {-0.875000, 0.500000, 0.000000}, + {-0.875000, -0.000000, 0.000000}, + {-0.875000, -0.500000, 0.000000}, + {-0.750000, -0.125000, 0.000000}, + {-0.750000, -0.375000, 0.000000}, + {-0.875000, -0.250000, 0.000000}, + {-0.625000, -0.250000, 0.000000}, + {-0.750000, 0.375000, 0.000000}, + {-0.750000, 0.125000, 0.000000}, + {-0.875000, 0.250000, 0.000000}, + {-0.625000, 0.250000, 0.000000}, + {-0.750000, 0.875000, 0.000000}, + {-0.750000, 0.625000, 0.000000}, + {-0.875000, 0.750000, 0.000000}, + {-0.625000, 0.750000, 0.000000}, + {-0.250000, 0.875000, 0.000000}, + {-0.250000, 0.625000, 0.000000}, + {-0.375000, 0.750000, 0.000000}, + {-0.125000, 0.750000, 0.000000}, + {0.250000, 0.875000, 0.000000}, + {0.250000, 0.625000, 0.000000}, + {0.125000, 0.750000, 0.000000}, + {0.375000, 0.750000, 0.000000}, + {0.750000, 0.875000, 0.000000}, + {0.750000, 0.625000, 0.000000}, + {0.625000, 0.750000, 0.000000}, + {0.875000, 0.750000, 0.000000}, + {0.750000, 0.375000, 0.000000}, + {0.750000, 0.125000, 0.000000}, + {0.625000, 0.250000, 0.000000}, + {0.875000, 0.250000, 0.000000}, + {0.750000, -0.125000, 0.000000}, + {0.750000, -0.375000, 0.000000}, + {0.625000, -0.250000, 0.000000}, + {0.875000, -0.250000, 0.000000}, + {0.750000, -0.625000, 0.000000}, + {0.750000, -0.875000, 0.000000}, + {0.625000, -0.750000, 0.000000}, + {0.875000, -0.750000, 0.000000}, + {0.250000, -0.625000, 0.000000}, + {0.250000, -0.875000, 0.000000}, + {0.125000, -0.750000, 0.000000}, + {0.375000, -0.750000, 0.000000}, + {-0.250000, -0.625000, 0.000000}, + {-0.250000, -0.875000, 0.000000}, + {-0.375000, -0.750000, 0.000000}, + {-0.125000, -0.750000, 0.000000}, + {-0.750000, -0.625000, 0.000000}, + {-0.750000, -0.875000, 0.000000}, + {-0.875000, -0.750000, 0.000000}, + {-0.625000, -0.750000, 0.000000}, + {0.250000, 0.375000, 0.000000}, + {0.250000, 0.125000, 0.000000}, + {0.125000, 0.250000, 0.000000}, + {0.375000, 0.250000, 0.000000}, + {-0.250000, 0.375000, 0.000000}, + {-0.250000, 0.125000, 0.000000}, + {-0.375000, 0.250000, 0.000000}, + {-0.125000, 0.250000, 0.000000}, + {0.250000, -0.125000, 0.000000}, + {0.250000, -0.375000, 0.000000}, + {0.125000, -0.250000, 0.000000}, + {0.375000, -0.250000, 0.000000}, + {-0.250000, -0.125000, 0.000000}, + {-0.250000, -0.375000, 0.000000}, + {-0.375000, -0.250000, 0.000000}, + {-0.125000, -0.250000, 0.000000}, + {-0.125000, -0.375000, 0.000000}, + {-0.375000, -0.375000, 0.000000}, + {-0.375000, -0.125000, 0.000000}, + {0.375000, -0.375000, 0.000000}, + {0.125000, -0.375000, 0.000000}, + {0.125000, -0.125000, 0.000000}, + {-0.125000, 0.125000, 0.000000}, + {-0.375000, 0.125000, 0.000000}, + {-0.375000, 0.375000, 0.000000}, + {0.375000, 0.125000, 0.000000}, + {0.125000, 0.125000, 0.000000}, + {0.125000, 0.375000, 0.000000}, + {-0.625000, -0.875000, 0.000000}, + {-0.875000, -0.875000, 0.000000}, + {-0.875000, -0.625000, 0.000000}, + {-0.125000, -0.875000, 0.000000}, + {-0.375000, -0.875000, 0.000000}, + {-0.375000, -0.625000, 0.000000}, + {0.375000, -0.875000, 0.000000}, + {0.125000, -0.875000, 0.000000}, + {0.125000, -0.625000, 0.000000}, + {0.875000, -0.875000, 0.000000}, + {0.625000, -0.875000, 0.000000}, + {0.625000, -0.625000, 0.000000}, + {0.875000, -0.375000, 0.000000}, + {0.625000, -0.375000, 0.000000}, + {0.625000, -0.125000, 0.000000}, + {0.875000, 0.125000, 0.000000}, + {0.625000, 0.125000, 0.000000}, + {0.625000, 0.375000, 0.000000}, + {0.875000, 0.625000, 0.000000}, + {0.625000, 0.625000, 0.000000}, + {0.625000, 0.875000, 0.000000}, + {0.375000, 0.625000, 0.000000}, + {0.125000, 0.625000, 0.000000}, + {0.125000, 0.875000, 0.000000}, + {-0.125000, 0.625000, 0.000000}, + {-0.375000, 0.625000, 0.000000}, + {-0.375000, 0.875000, 0.000000}, + {-0.625000, 0.625000, 0.000000}, + {-0.875000, 0.625000, 0.000000}, + {-0.875000, 0.875000, 0.000000}, + {-0.625000, 0.125000, 0.000000}, + {-0.875000, 0.125000, 0.000000}, + {-0.875000, 0.375000, 0.000000}, + {-0.625000, -0.375000, 0.000000}, + {-0.875000, -0.375000, 0.000000}, + {-0.875000, -0.125000, 0.000000}, + {-0.625000, -0.125000, 0.000000}, + {-0.625000, 0.375000, 0.000000}, + {-0.625000, 0.875000, 0.000000}, + {-0.125000, 0.875000, 0.000000}, + {0.375000, 0.875000, 0.000000}, + {0.875000, 0.875000, 0.000000}, + {0.875000, 0.375000, 0.000000}, + {0.875000, -0.125000, 0.000000}, + {0.875000, -0.625000, 0.000000}, + {0.375000, -0.625000, 0.000000}, + {-0.125000, -0.625000, 0.000000}, + {-0.625000, -0.625000, 0.000000}, + {0.375000, 0.375000, 0.000000}, + {-0.125000, 0.375000, 0.000000}, + {0.375000, -0.125000, 0.000000}, + {-0.125000, -0.125000, 0.000000}, + {-1.000000, 0.562500, 0.000000}, + {-1.000000, 0.062500, 0.000000}, + {-1.000000, -0.437500, 0.000000}, + {-1.000000, -0.937500, 0.000000}, + {-0.562500, -1.000000, 0.000000}, + {-0.062500, -1.000000, 0.000000}, + {0.437500, -1.000000, 0.000000}, + {0.937500, -1.000000, 0.000000}, + {1.000000, -0.562500, 0.000000}, + {1.000000, -0.062500, 0.000000}, + {1.000000, 0.437500, 0.000000}, + {1.000000, 0.937500, 0.000000}, + {0.562500, 1.000000, 0.000000}, + {0.062500, 1.000000, 0.000000}, + {-0.437500, 1.000000, 0.000000}, + {-0.937500, 1.000000, 0.000000}, + {-0.062500, -0.500000, 0.000000}, + {0.437500, -0.500000, 0.000000}, + {-0.500000, -0.062500, 0.000000}, + {0.000000, -0.062500, 0.000000}, + {0.500000, -0.062500, 0.000000}, + {-0.062500, -0.000000, 0.000000}, + {0.437500, -0.000000, 0.000000}, + {-0.500000, 0.437500, 0.000000}, + {0.000000, 0.437500, 0.000000}, + {0.500000, 0.437500, 0.000000}, + {-0.062500, 0.500000, 0.000000}, + {0.437500, 0.500000, 0.000000}, + {-0.500000, -0.562500, 0.000000}, + {0.000000, -0.562500, 0.000000}, + {0.500000, -0.562500, 0.000000}, + {0.562500, -0.500000, 0.000000}, + {0.562500, -0.000000, 0.000000}, + {0.562500, 0.500000, 0.000000}, + {0.500000, 0.562500, 0.000000}, + {0.000000, 0.562500, 0.000000}, + {-0.500000, 0.562500, 0.000000}, + {-0.562500, 0.500000, 0.000000}, + {-0.562500, -0.000000, 0.000000}, + {-0.562500, -0.500000, 0.000000}, + {-1.000000, 0.812500, 0.000000}, + {-1.000000, 0.312500, 0.000000}, + {-1.000000, -0.187500, 0.000000}, + {-1.000000, -0.687500, 0.000000}, + {-0.812500, -1.000000, 0.000000}, + {-0.312500, -1.000000, 0.000000}, + {0.187500, -1.000000, 0.000000}, + {0.687500, -1.000000, 0.000000}, + {1.000000, -0.812500, 0.000000}, + {1.000000, -0.312500, 0.000000}, + {1.000000, 0.187500, 0.000000}, + {1.000000, 0.687500, 0.000000}, + {0.812500, 1.000000, 0.000000}, + {0.312500, 1.000000, 0.000000}, + {-0.187500, 1.000000, 0.000000}, + {-0.687500, 1.000000, 0.000000}, + {-0.312500, -0.500000, 0.000000}, + {0.187500, -0.500000, 0.000000}, + {-0.500000, -0.312500, 0.000000}, + {0.000000, -0.312500, 0.000000}, + {0.500000, -0.312500, 0.000000}, + {-0.312500, -0.000000, 0.000000}, + {0.187500, -0.000000, 0.000000}, + {-0.500000, 0.187500, 0.000000}, + {0.000000, 0.187500, 0.000000}, + {0.500000, 0.187500, 0.000000}, + {-0.312500, 0.500000, 0.000000}, + {0.187500, 0.500000, 0.000000}, + {-0.500000, -0.812500, 0.000000}, + {0.000000, -0.812500, 0.000000}, + {0.500000, -0.812500, 0.000000}, + {0.812500, -0.500000, 0.000000}, + {0.812500, -0.000000, 0.000000}, + {0.812500, 0.500000, 0.000000}, + {0.500000, 0.812500, 0.000000}, + {0.000000, 0.812500, 0.000000}, + {-0.500000, 0.812500, 0.000000}, + {-0.812500, 0.500000, 0.000000}, + {-0.812500, -0.000000, 0.000000}, + {-0.812500, -0.500000, 0.000000}, + {-0.750000, -0.062500, 0.000000}, + {-0.750000, -0.312500, 0.000000}, + {-0.937500, -0.250000, 0.000000}, + {-0.687500, -0.250000, 0.000000}, + {-0.750000, 0.437500, 0.000000}, + {-0.750000, 0.187500, 0.000000}, + {-0.937500, 0.250000, 0.000000}, + {-0.687500, 0.250000, 0.000000}, + {-0.750000, 0.937500, 0.000000}, + {-0.750000, 0.687500, 0.000000}, + {-0.937500, 0.750000, 0.000000}, + {-0.687500, 0.750000, 0.000000}, + {-0.250000, 0.937500, 0.000000}, + {-0.250000, 0.687500, 0.000000}, + {-0.437500, 0.750000, 0.000000}, + {-0.187500, 0.750000, 0.000000}, + {0.250000, 0.937500, 0.000000}, + {0.250000, 0.687500, 0.000000}, + {0.062500, 0.750000, 0.000000}, + {0.312500, 0.750000, 0.000000}, + {0.750000, 0.937500, 0.000000}, + {0.750000, 0.687500, 0.000000}, + {0.562500, 0.750000, 0.000000}, + {0.812500, 0.750000, 0.000000}, + {0.750000, 0.437500, 0.000000}, + {0.750000, 0.187500, 0.000000}, + {0.562500, 0.250000, 0.000000}, + {0.812500, 0.250000, 0.000000}, + {0.750000, -0.062500, 0.000000}, + {0.750000, -0.312500, 0.000000}, + {0.562500, -0.250000, 0.000000}, + {0.812500, -0.250000, 0.000000}, + {0.750000, -0.562500, 0.000000}, + {0.750000, -0.812500, 0.000000}, + {0.562500, -0.750000, 0.000000}, + {0.812500, -0.750000, 0.000000}, + {0.250000, -0.562500, 0.000000}, + {0.250000, -0.812500, 0.000000}, + {0.062500, -0.750000, 0.000000}, + {0.312500, -0.750000, 0.000000}, + {-0.250000, -0.562500, 0.000000}, + {-0.250000, -0.812500, 0.000000}, + {-0.437500, -0.750000, 0.000000}, + {-0.187500, -0.750000, 0.000000}, + {-0.750000, -0.562500, 0.000000}, + {-0.750000, -0.812500, 0.000000}, + {-0.937500, -0.750000, 0.000000}, + {-0.687500, -0.750000, 0.000000}, + {0.250000, 0.437500, 0.000000}, + {0.250000, 0.187500, 0.000000}, + {0.062500, 0.250000, 0.000000}, + {0.312500, 0.250000, 0.000000}, + {-0.250000, 0.437500, 0.000000}, + {-0.250000, 0.187500, 0.000000}, + {-0.437500, 0.250000, 0.000000}, + {-0.187500, 0.250000, 0.000000}, + {0.250000, -0.062500, 0.000000}, + {0.250000, -0.312500, 0.000000}, + {0.062500, -0.250000, 0.000000}, + {0.312500, -0.250000, 0.000000}, + {-0.250000, -0.062500, 0.000000}, + {-0.250000, -0.312500, 0.000000}, + {-0.437500, -0.250000, 0.000000}, + {-0.187500, -0.250000, 0.000000}, + {-1.000000, 0.687500, 0.000000}, + {-1.000000, 0.187500, 0.000000}, + {-1.000000, -0.312500, 0.000000}, + {-1.000000, -0.812500, 0.000000}, + {-0.687500, -1.000000, 0.000000}, + {-0.187500, -1.000000, 0.000000}, + {0.312500, -1.000000, 0.000000}, + {0.812500, -1.000000, 0.000000}, + {1.000000, -0.687500, 0.000000}, + {1.000000, -0.187500, 0.000000}, + {1.000000, 0.312500, 0.000000}, + {1.000000, 0.812500, 0.000000}, + {0.687500, 1.000000, 0.000000}, + {0.187500, 1.000000, 0.000000}, + {-0.312500, 1.000000, 0.000000}, + {-0.812500, 1.000000, 0.000000}, + {-0.187500, -0.500000, 0.000000}, + {0.312500, -0.500000, 0.000000}, + {-0.500000, -0.187500, 0.000000}, + {0.000000, -0.187500, 0.000000}, + {0.500000, -0.187500, 0.000000}, + {-0.187500, -0.000000, 0.000000}, + {0.312500, -0.000000, 0.000000}, + {-0.500000, 0.312500, 0.000000}, + {0.000000, 0.312500, 0.000000}, + {0.500000, 0.312500, 0.000000}, + {-0.187500, 0.500000, 0.000000}, + {0.312500, 0.500000, 0.000000}, + {-0.500000, -0.687500, 0.000000}, + {0.000000, -0.687500, 0.000000}, + {0.500000, -0.687500, 0.000000}, + {0.687500, -0.500000, 0.000000}, + {0.687500, -0.000000, 0.000000}, + {0.687500, 0.500000, 0.000000}, + {0.500000, 0.687500, 0.000000}, + {0.000000, 0.687500, 0.000000}, + {-0.500000, 0.687500, 0.000000}, + {-0.687500, 0.500000, 0.000000}, + {-0.687500, -0.000000, 0.000000}, + {-0.687500, -0.500000, 0.000000}, + {-1.000000, 0.937500, 0.000000}, + {-1.000000, 0.437500, 0.000000}, + {-1.000000, -0.062500, 0.000000}, + {-1.000000, -0.562500, 0.000000}, + {-0.937500, -1.000000, 0.000000}, + {-0.437500, -1.000000, 0.000000}, + {0.062500, -1.000000, 0.000000}, + {0.562500, -1.000000, 0.000000}, + {1.000000, -0.937500, 0.000000}, + {1.000000, -0.437500, 0.000000}, + {1.000000, 0.062500, 0.000000}, + {1.000000, 0.562500, 0.000000}, + {0.937500, 1.000000, 0.000000}, + {0.437500, 1.000000, 0.000000}, + {-0.062500, 1.000000, 0.000000}, + {-0.562500, 1.000000, 0.000000}, + {-0.437500, -0.500000, 0.000000}, + {0.062500, -0.500000, 0.000000}, + {-0.500000, -0.437500, 0.000000}, + {0.000000, -0.437500, 0.000000}, + {0.500000, -0.437500, 0.000000}, + {-0.437500, -0.000000, 0.000000}, + {0.062500, -0.000000, 0.000000}, + {-0.500000, 0.062500, 0.000000}, + {0.000000, 0.062500, 0.000000}, + {0.500000, 0.062500, 0.000000}, + {-0.437500, 0.500000, 0.000000}, + {0.062500, 0.500000, 0.000000}, + {-0.500000, -0.937500, 0.000000}, + {0.000000, -0.937500, 0.000000}, + {0.500000, -0.937500, 0.000000}, + {0.937500, -0.500000, 0.000000}, + {0.937500, -0.000000, 0.000000}, + {0.937500, 0.500000, 0.000000}, + {0.500000, 0.937500, 0.000000}, + {0.000000, 0.937500, 0.000000}, + {-0.500000, 0.937500, 0.000000}, + {-0.937500, 0.500000, 0.000000}, + {-0.937500, -0.000000, 0.000000}, + {-0.937500, -0.500000, 0.000000}, + {-0.750000, -0.187500, 0.000000}, + {-0.750000, -0.437500, 0.000000}, + {-0.812500, -0.250000, 0.000000}, + {-0.562500, -0.250000, 0.000000}, + {-0.750000, 0.312500, 0.000000}, + {-0.750000, 0.062500, 0.000000}, + {-0.812500, 0.250000, 0.000000}, + {-0.562500, 0.250000, 0.000000}, + {-0.750000, 0.812500, 0.000000}, + {-0.750000, 0.562500, 0.000000}, + {-0.812500, 0.750000, 0.000000}, + {-0.562500, 0.750000, 0.000000}, + {-0.250000, 0.812500, 0.000000}, + {-0.250000, 0.562500, 0.000000}, + {-0.312500, 0.750000, 0.000000}, + {-0.062500, 0.750000, 0.000000}, + {0.250000, 0.812500, 0.000000}, + {0.250000, 0.562500, 0.000000}, + {0.187500, 0.750000, 0.000000}, + {0.437500, 0.750000, 0.000000}, + {0.750000, 0.812500, 0.000000}, + {0.750000, 0.562500, 0.000000}, + {0.687500, 0.750000, 0.000000}, + {0.937500, 0.750000, 0.000000}, + {0.750000, 0.312500, 0.000000}, + {0.750000, 0.062500, 0.000000}, + {0.687500, 0.250000, 0.000000}, + {0.937500, 0.250000, 0.000000}, + {0.750000, -0.187500, 0.000000}, + {0.750000, -0.437500, 0.000000}, + {0.687500, -0.250000, 0.000000}, + {0.937500, -0.250000, 0.000000}, + {0.750000, -0.687500, 0.000000}, + {0.750000, -0.937500, 0.000000}, + {0.687500, -0.750000, 0.000000}, + {0.937500, -0.750000, 0.000000}, + {0.250000, -0.687500, 0.000000}, + {0.250000, -0.937500, 0.000000}, + {0.187500, -0.750000, 0.000000}, + {0.437500, -0.750000, 0.000000}, + {-0.250000, -0.687500, 0.000000}, + {-0.250000, -0.937500, 0.000000}, + {-0.312500, -0.750000, 0.000000}, + {-0.062500, -0.750000, 0.000000}, + {-0.750000, -0.687500, 0.000000}, + {-0.750000, -0.937500, 0.000000}, + {-0.812500, -0.750000, 0.000000}, + {-0.562500, -0.750000, 0.000000}, + {0.250000, 0.312500, 0.000000}, + {0.250000, 0.062500, 0.000000}, + {0.187500, 0.250000, 0.000000}, + {0.437500, 0.250000, 0.000000}, + {-0.250000, 0.312500, 0.000000}, + {-0.250000, 0.062500, 0.000000}, + {-0.312500, 0.250000, 0.000000}, + {-0.062500, 0.250000, 0.000000}, + {0.250000, -0.187500, 0.000000}, + {0.250000, -0.437500, 0.000000}, + {0.187500, -0.250000, 0.000000}, + {0.437500, -0.250000, 0.000000}, + {-0.250000, -0.187500, 0.000000}, + {-0.250000, -0.437500, 0.000000}, + {-0.312500, -0.250000, 0.000000}, + {-0.062500, -0.250000, 0.000000}, + {-0.125000, -0.312500, 0.000000}, + {-0.125000, -0.437500, 0.000000}, + {-0.187500, -0.375000, 0.000000}, + {-0.062500, -0.375000, 0.000000}, + {-0.375000, -0.312500, 0.000000}, + {-0.375000, -0.437500, 0.000000}, + {-0.437500, -0.375000, 0.000000}, + {-0.312500, -0.375000, 0.000000}, + {-0.375000, -0.062500, 0.000000}, + {-0.375000, -0.187500, 0.000000}, + {-0.437500, -0.125000, 0.000000}, + {-0.312500, -0.125000, 0.000000}, + {0.375000, -0.312500, 0.000000}, + {0.375000, -0.437500, 0.000000}, + {0.312500, -0.375000, 0.000000}, + {0.437500, -0.375000, 0.000000}, + {0.125000, -0.312500, 0.000000}, + {0.125000, -0.437500, 0.000000}, + {0.062500, -0.375000, 0.000000}, + {0.187500, -0.375000, 0.000000}, + {0.125000, -0.062500, 0.000000}, + {0.125000, -0.187500, 0.000000}, + {0.062500, -0.125000, 0.000000}, + {0.187500, -0.125000, 0.000000}, + {-0.125000, 0.187500, 0.000000}, + {-0.125000, 0.062500, 0.000000}, + {-0.187500, 0.125000, 0.000000}, + {-0.062500, 0.125000, 0.000000}, + {-0.375000, 0.187500, 0.000000}, + {-0.375000, 0.062500, 0.000000}, + {-0.437500, 0.125000, 0.000000}, + {-0.312500, 0.125000, 0.000000}, + {-0.375000, 0.437500, 0.000000}, + {-0.375000, 0.312500, 0.000000}, + {-0.437500, 0.375000, 0.000000}, + {-0.312500, 0.375000, 0.000000}, + {0.375000, 0.187500, 0.000000}, + {0.375000, 0.062500, 0.000000}, + {0.312500, 0.125000, 0.000000}, + {0.437500, 0.125000, 0.000000}, + {0.125000, 0.187500, 0.000000}, + {0.125000, 0.062500, 0.000000}, + {0.062500, 0.125000, 0.000000}, + {0.187500, 0.125000, 0.000000}, + {0.125000, 0.437500, 0.000000}, + {0.125000, 0.312500, 0.000000}, + {0.062500, 0.375000, 0.000000}, + {0.187500, 0.375000, 0.000000}, + {-0.625000, -0.812500, 0.000000}, + {-0.625000, -0.937500, 0.000000}, + {-0.687500, -0.875000, 0.000000}, + {-0.562500, -0.875000, 0.000000}, + {-0.875000, -0.812500, 0.000000}, + {-0.875000, -0.937500, 0.000000}, + {-0.937500, -0.875000, 0.000000}, + {-0.812500, -0.875000, 0.000000}, + {-0.875000, -0.562500, 0.000000}, + {-0.875000, -0.687500, 0.000000}, + {-0.937500, -0.625000, 0.000000}, + {-0.812500, -0.625000, 0.000000}, + {-0.125000, -0.812500, 0.000000}, + {-0.125000, -0.937500, 0.000000}, + {-0.187500, -0.875000, 0.000000}, + {-0.062500, -0.875000, 0.000000}, + {-0.375000, -0.812500, 0.000000}, + {-0.375000, -0.937500, 0.000000}, + {-0.437500, -0.875000, 0.000000}, + {-0.312500, -0.875000, 0.000000}, + {-0.375000, -0.562500, 0.000000}, + {-0.375000, -0.687500, 0.000000}, + {-0.437500, -0.625000, 0.000000}, + {-0.312500, -0.625000, 0.000000}, + {0.375000, -0.812500, 0.000000}, + {0.375000, -0.937500, 0.000000}, + {0.312500, -0.875000, 0.000000}, + {0.437500, -0.875000, 0.000000}, + {0.125000, -0.812500, 0.000000}, + {0.125000, -0.937500, 0.000000}, + {0.062500, -0.875000, 0.000000}, + {0.187500, -0.875000, 0.000000}, + {0.125000, -0.562500, 0.000000}, + {0.125000, -0.687500, 0.000000}, + {0.062500, -0.625000, 0.000000}, + {0.187500, -0.625000, 0.000000}, + {0.875000, -0.812500, 0.000000}, + {0.875000, -0.937500, 0.000000}, + {0.812500, -0.875000, 0.000000}, + {0.937500, -0.875000, 0.000000}, + {0.625000, -0.812500, 0.000000}, + {0.625000, -0.937500, 0.000000}, + {0.562500, -0.875000, 0.000000}, + {0.687500, -0.875000, 0.000000}, + {0.625000, -0.562500, 0.000000}, + {0.625000, -0.687500, 0.000000}, + {0.562500, -0.625000, 0.000000}, + {0.687500, -0.625000, 0.000000}, + {0.875000, -0.312500, 0.000000}, + {0.875000, -0.437500, 0.000000}, + {0.812500, -0.375000, 0.000000}, + {0.937500, -0.375000, 0.000000}, + {0.625000, -0.312500, 0.000000}, + {0.625000, -0.437500, 0.000000}, + {0.562500, -0.375000, 0.000000}, + {0.687500, -0.375000, 0.000000}, + {0.625000, -0.062500, 0.000000}, + {0.625000, -0.187500, 0.000000}, + {0.562500, -0.125000, 0.000000}, + {0.687500, -0.125000, 0.000000}, + {0.875000, 0.187500, 0.000000}, + {0.875000, 0.062500, 0.000000}, + {0.812500, 0.125000, 0.000000}, + {0.937500, 0.125000, 0.000000}, + {0.625000, 0.187500, 0.000000}, + {0.625000, 0.062500, 0.000000}, + {0.562500, 0.125000, 0.000000}, + {0.687500, 0.125000, 0.000000}, + {0.625000, 0.437500, 0.000000}, + {0.625000, 0.312500, 0.000000}, + {0.562500, 0.375000, 0.000000}, + {0.687500, 0.375000, 0.000000}, + {0.875000, 0.687500, 0.000000}, + {0.875000, 0.562500, 0.000000}, + {0.812500, 0.625000, 0.000000}, + {0.937500, 0.625000, 0.000000}, + {0.625000, 0.687500, 0.000000}, + {0.625000, 0.562500, 0.000000}, + {0.562500, 0.625000, 0.000000}, + {0.687500, 0.625000, 0.000000}, + {0.625000, 0.937500, 0.000000}, + {0.625000, 0.812500, 0.000000}, + {0.562500, 0.875000, 0.000000}, + {0.687500, 0.875000, 0.000000}, + {0.375000, 0.687500, 0.000000}, + {0.375000, 0.562500, 0.000000}, + {0.312500, 0.625000, 0.000000}, + {0.437500, 0.625000, 0.000000}, + {0.125000, 0.687500, 0.000000}, + {0.125000, 0.562500, 0.000000}, + {0.062500, 0.625000, 0.000000}, + {0.187500, 0.625000, 0.000000}, + {0.125000, 0.937500, 0.000000}, + {0.125000, 0.812500, 0.000000}, + {0.062500, 0.875000, 0.000000}, + {0.187500, 0.875000, 0.000000}, + {-0.125000, 0.687500, 0.000000}, + {-0.125000, 0.562500, 0.000000}, + {-0.187500, 0.625000, 0.000000}, + {-0.062500, 0.625000, 0.000000}, + {-0.375000, 0.687500, 0.000000}, + {-0.375000, 0.562500, 0.000000}, + {-0.437500, 0.625000, 0.000000}, + {-0.312500, 0.625000, 0.000000}, + {-0.375000, 0.937500, 0.000000}, + {-0.375000, 0.812500, 0.000000}, + {-0.437500, 0.875000, 0.000000}, + {-0.312500, 0.875000, 0.000000}, + {-0.625000, 0.687500, 0.000000}, + {-0.625000, 0.562500, 0.000000}, + {-0.687500, 0.625000, 0.000000}, + {-0.562500, 0.625000, 0.000000}, + {-0.875000, 0.687500, 0.000000}, + {-0.875000, 0.562500, 0.000000}, + {-0.937500, 0.625000, 0.000000}, + {-0.812500, 0.625000, 0.000000}, + {-0.875000, 0.937500, 0.000000}, + {-0.875000, 0.812500, 0.000000}, + {-0.937500, 0.875000, 0.000000}, + {-0.812500, 0.875000, 0.000000}, + {-0.625000, 0.187500, 0.000000}, + {-0.625000, 0.062500, 0.000000}, + {-0.687500, 0.125000, 0.000000}, + {-0.562500, 0.125000, 0.000000}, + {-0.875000, 0.187500, 0.000000}, + {-0.875000, 0.062500, 0.000000}, + {-0.937500, 0.125000, 0.000000}, + {-0.812500, 0.125000, 0.000000}, + {-0.875000, 0.437500, 0.000000}, + {-0.875000, 0.312500, 0.000000}, + {-0.937500, 0.375000, 0.000000}, + {-0.812500, 0.375000, 0.000000}, + {-0.625000, -0.312500, 0.000000}, + {-0.625000, -0.437500, 0.000000}, + {-0.687500, -0.375000, 0.000000}, + {-0.562500, -0.375000, 0.000000}, + {-0.875000, -0.312500, 0.000000}, + {-0.875000, -0.437500, 0.000000}, + {-0.937500, -0.375000, 0.000000}, + {-0.812500, -0.375000, 0.000000}, + {-0.875000, -0.062500, 0.000000}, + {-0.875000, -0.187500, 0.000000}, + {-0.937500, -0.125000, 0.000000}, + {-0.812500, -0.125000, 0.000000}, + {-0.625000, -0.062500, 0.000000}, + {-0.625000, -0.187500, 0.000000}, + {-0.687500, -0.125000, 0.000000}, + {-0.562500, -0.125000, 0.000000}, + {-0.625000, 0.437500, 0.000000}, + {-0.625000, 0.312500, 0.000000}, + {-0.687500, 0.375000, 0.000000}, + {-0.562500, 0.375000, 0.000000}, + {-0.625000, 0.937500, 0.000000}, + {-0.625000, 0.812500, 0.000000}, + {-0.687500, 0.875000, 0.000000}, + {-0.562500, 0.875000, 0.000000}, + {-0.125000, 0.937500, 0.000000}, + {-0.125000, 0.812500, 0.000000}, + {-0.187500, 0.875000, 0.000000}, + {-0.062500, 0.875000, 0.000000}, + {0.375000, 0.937500, 0.000000}, + {0.375000, 0.812500, 0.000000}, + {0.312500, 0.875000, 0.000000}, + {0.437500, 0.875000, 0.000000}, + {0.875000, 0.937500, 0.000000}, + {0.875000, 0.812500, 0.000000}, + {0.812500, 0.875000, 0.000000}, + {0.937500, 0.875000, 0.000000}, + {0.875000, 0.437500, 0.000000}, + {0.875000, 0.312500, 0.000000}, + {0.812500, 0.375000, 0.000000}, + {0.937500, 0.375000, 0.000000}, + {0.875000, -0.062500, 0.000000}, + {0.875000, -0.187500, 0.000000}, + {0.812500, -0.125000, 0.000000}, + {0.937500, -0.125000, 0.000000}, + {0.875000, -0.562500, 0.000000}, + {0.875000, -0.687500, 0.000000}, + {0.812500, -0.625000, 0.000000}, + {0.937500, -0.625000, 0.000000}, + {0.375000, -0.562500, 0.000000}, + {0.375000, -0.687500, 0.000000}, + {0.312500, -0.625000, 0.000000}, + {0.437500, -0.625000, 0.000000}, + {-0.125000, -0.562500, 0.000000}, + {-0.125000, -0.687500, 0.000000}, + {-0.187500, -0.625000, 0.000000}, + {-0.062500, -0.625000, 0.000000}, + {-0.625000, -0.562500, 0.000000}, + {-0.625000, -0.687500, 0.000000}, + {-0.687500, -0.625000, 0.000000}, + {-0.562500, -0.625000, 0.000000}, + {0.375000, 0.437500, 0.000000}, + {0.375000, 0.312500, 0.000000}, + {0.312500, 0.375000, 0.000000}, + {0.437500, 0.375000, 0.000000}, + {-0.125000, 0.437500, 0.000000}, + {-0.125000, 0.312500, 0.000000}, + {-0.187500, 0.375000, 0.000000}, + {-0.062500, 0.375000, 0.000000}, + {0.375000, -0.062500, 0.000000}, + {0.375000, -0.187500, 0.000000}, + {0.312500, -0.125000, 0.000000}, + {0.437500, -0.125000, 0.000000}, + {-0.125000, -0.062500, 0.000000}, + {-0.125000, -0.187500, 0.000000}, + {-0.187500, -0.125000, 0.000000}, + {-0.062500, -0.125000, 0.000000}, + {-0.062500, -0.187500, 0.000000}, + {-0.187500, -0.187500, 0.000000}, + {-0.187500, -0.062500, 0.000000}, + {0.437500, -0.187500, 0.000000}, + {0.312500, -0.187500, 0.000000}, + {0.312500, -0.062500, 0.000000}, + {-0.062500, 0.312500, 0.000000}, + {-0.187500, 0.312500, 0.000000}, + {-0.187500, 0.437500, 0.000000}, + {0.437500, 0.312500, 0.000000}, + {0.312500, 0.312500, 0.000000}, + {0.312500, 0.437500, 0.000000}, + {-0.562500, -0.687500, 0.000000}, + {-0.687500, -0.687500, 0.000000}, + {-0.687500, -0.562500, 0.000000}, + {-0.062500, -0.687500, 0.000000}, + {-0.187500, -0.687500, 0.000000}, + {-0.187500, -0.562500, 0.000000}, + {0.437500, -0.687500, 0.000000}, + {0.312500, -0.687500, 0.000000}, + {0.312500, -0.562500, 0.000000}, + {0.937500, -0.687500, 0.000000}, + {0.812500, -0.687500, 0.000000}, + {0.812500, -0.562500, 0.000000}, + {0.937500, -0.187500, 0.000000}, + {0.812500, -0.187500, 0.000000}, + {0.812500, -0.062500, 0.000000}, + {0.937500, 0.312500, 0.000000}, + {0.812500, 0.312500, 0.000000}, + {0.812500, 0.437500, 0.000000}, + {0.937500, 0.812500, 0.000000}, + {0.812500, 0.812500, 0.000000}, + {0.812500, 0.937500, 0.000000}, + {0.437500, 0.812500, 0.000000}, + {0.312500, 0.812500, 0.000000}, + {0.312500, 0.937500, 0.000000}, + {-0.062500, 0.812500, 0.000000}, + {-0.187500, 0.812500, 0.000000}, + {-0.187500, 0.937500, 0.000000}, + {-0.562500, 0.812500, 0.000000}, + {-0.687500, 0.812500, 0.000000}, + {-0.687500, 0.937500, 0.000000}, + {-0.562500, 0.312500, 0.000000}, + {-0.687500, 0.312500, 0.000000}, + {-0.687500, 0.437500, 0.000000}, + {-0.562500, -0.187500, 0.000000}, + {-0.687500, -0.187500, 0.000000}, + {-0.687500, -0.062500, 0.000000}, + {-0.812500, -0.187500, 0.000000}, + {-0.937500, -0.187500, 0.000000}, + {-0.937500, -0.062500, 0.000000}, + {-0.812500, -0.437500, 0.000000}, + {-0.937500, -0.437500, 0.000000}, + {-0.937500, -0.312500, 0.000000}, + {-0.562500, -0.437500, 0.000000}, + {-0.687500, -0.437500, 0.000000}, + {-0.687500, -0.312500, 0.000000}, + {-0.812500, 0.312500, 0.000000}, + {-0.937500, 0.312500, 0.000000}, + {-0.937500, 0.437500, 0.000000}, + {-0.812500, 0.062500, 0.000000}, + {-0.937500, 0.062500, 0.000000}, + {-0.937500, 0.187500, 0.000000}, + {-0.562500, 0.062500, 0.000000}, + {-0.687500, 0.062500, 0.000000}, + {-0.687500, 0.187500, 0.000000}, + {-0.812500, 0.812500, 0.000000}, + {-0.937500, 0.812500, 0.000000}, + {-0.937500, 0.937500, 0.000000}, + {-0.812500, 0.562500, 0.000000}, + {-0.937500, 0.562500, 0.000000}, + {-0.937500, 0.687500, 0.000000}, + {-0.562500, 0.562500, 0.000000}, + {-0.687500, 0.562500, 0.000000}, + {-0.687500, 0.687500, 0.000000}, + {-0.312500, 0.812500, 0.000000}, + {-0.437500, 0.812500, 0.000000}, + {-0.437500, 0.937500, 0.000000}, + {-0.312500, 0.562500, 0.000000}, + {-0.437500, 0.562500, 0.000000}, + {-0.437500, 0.687500, 0.000000}, + {-0.062500, 0.562500, 0.000000}, + {-0.187500, 0.562500, 0.000000}, + {-0.187500, 0.687500, 0.000000}, + {0.187500, 0.812500, 0.000000}, + {0.062500, 0.812500, 0.000000}, + {0.062500, 0.937500, 0.000000}, + {0.187500, 0.562500, 0.000000}, + {0.062500, 0.562500, 0.000000}, + {0.062500, 0.687500, 0.000000}, + {0.437500, 0.562500, 0.000000}, + {0.312500, 0.562500, 0.000000}, + {0.312500, 0.687500, 0.000000}, + {0.687500, 0.812500, 0.000000}, + {0.562500, 0.812500, 0.000000}, + {0.562500, 0.937500, 0.000000}, + {0.687500, 0.562500, 0.000000}, + {0.562500, 0.562500, 0.000000}, + {0.562500, 0.687500, 0.000000}, + {0.937500, 0.562500, 0.000000}, + {0.812500, 0.562500, 0.000000}, + {0.812500, 0.687500, 0.000000}, + {0.687500, 0.312500, 0.000000}, + {0.562500, 0.312500, 0.000000}, + {0.562500, 0.437500, 0.000000}, + {0.687500, 0.062500, 0.000000}, + {0.562500, 0.062500, 0.000000}, + {0.562500, 0.187500, 0.000000}, + {0.937500, 0.062500, 0.000000}, + {0.812500, 0.062500, 0.000000}, + {0.812500, 0.187500, 0.000000}, + {0.687500, -0.187500, 0.000000}, + {0.562500, -0.187500, 0.000000}, + {0.562500, -0.062500, 0.000000}, + {0.687500, -0.437500, 0.000000}, + {0.562500, -0.437500, 0.000000}, + {0.562500, -0.312500, 0.000000}, + {0.937500, -0.437500, 0.000000}, + {0.812500, -0.437500, 0.000000}, + {0.812500, -0.312500, 0.000000}, + {0.687500, -0.687500, 0.000000}, + {0.562500, -0.687500, 0.000000}, + {0.562500, -0.562500, 0.000000}, + {0.687500, -0.937500, 0.000000}, + {0.562500, -0.937500, 0.000000}, + {0.562500, -0.812500, 0.000000}, + {0.937500, -0.937500, 0.000000}, + {0.812500, -0.937500, 0.000000}, + {0.812500, -0.812500, 0.000000}, + {0.187500, -0.687500, 0.000000}, + {0.062500, -0.687500, 0.000000}, + {0.062500, -0.562500, 0.000000}, + {0.187500, -0.937500, 0.000000}, + {0.062500, -0.937500, 0.000000}, + {0.062500, -0.812500, 0.000000}, + {0.437500, -0.937500, 0.000000}, + {0.312500, -0.937500, 0.000000}, + {0.312500, -0.812500, 0.000000}, + {-0.312500, -0.687500, 0.000000}, + {-0.437500, -0.687500, 0.000000}, + {-0.437500, -0.562500, 0.000000}, + {-0.312500, -0.937500, 0.000000}, + {-0.437500, -0.937500, 0.000000}, + {-0.437500, -0.812500, 0.000000}, + {-0.062500, -0.937500, 0.000000}, + {-0.187500, -0.937500, 0.000000}, + {-0.187500, -0.812500, 0.000000}, + {-0.812500, -0.687500, 0.000000}, + {-0.937500, -0.687500, 0.000000}, + {-0.937500, -0.562500, 0.000000}, + {-0.812500, -0.937500, 0.000000}, + {-0.937500, -0.937500, 0.000000}, + {-0.937500, -0.812500, 0.000000}, + {-0.562500, -0.937500, 0.000000}, + {-0.687500, -0.937500, 0.000000}, + {-0.687500, -0.812500, 0.000000}, + {0.187500, 0.312500, 0.000000}, + {0.062500, 0.312500, 0.000000}, + {0.062500, 0.437500, 0.000000}, + {0.187500, 0.062500, 0.000000}, + {0.062500, 0.062500, 0.000000}, + {0.062500, 0.187500, 0.000000}, + {0.437500, 0.062500, 0.000000}, + {0.312500, 0.062500, 0.000000}, + {0.312500, 0.187500, 0.000000}, + {-0.312500, 0.312500, 0.000000}, + {-0.437500, 0.312500, 0.000000}, + {-0.437500, 0.437500, 0.000000}, + {-0.312500, 0.062500, 0.000000}, + {-0.437500, 0.062500, 0.000000}, + {-0.437500, 0.187500, 0.000000}, + {-0.062500, 0.062500, 0.000000}, + {-0.187500, 0.062500, 0.000000}, + {-0.187500, 0.187500, 0.000000}, + {0.187500, -0.187500, 0.000000}, + {0.062500, -0.187500, 0.000000}, + {0.062500, -0.062500, 0.000000}, + {0.187500, -0.437500, 0.000000}, + {0.062500, -0.437500, 0.000000}, + {0.062500, -0.312500, 0.000000}, + {0.437500, -0.437500, 0.000000}, + {0.312500, -0.437500, 0.000000}, + {0.312500, -0.312500, 0.000000}, + {-0.312500, -0.187500, 0.000000}, + {-0.437500, -0.187500, 0.000000}, + {-0.437500, -0.062500, 0.000000}, + {-0.312500, -0.437500, 0.000000}, + {-0.437500, -0.437500, 0.000000}, + {-0.437500, -0.312500, 0.000000}, + {-0.062500, -0.437500, 0.000000}, + {-0.187500, -0.437500, 0.000000}, + {-0.187500, -0.312500, 0.000000}, + {-0.062500, -0.312500, 0.000000}, + {-0.312500, -0.312500, 0.000000}, + {-0.312500, -0.062500, 0.000000}, + {0.437500, -0.312500, 0.000000}, + {0.187500, -0.312500, 0.000000}, + {0.187500, -0.062500, 0.000000}, + {-0.062500, 0.187500, 0.000000}, + {-0.312500, 0.187500, 0.000000}, + {-0.312500, 0.437500, 0.000000}, + {0.437500, 0.187500, 0.000000}, + {0.187500, 0.187500, 0.000000}, + {0.187500, 0.437500, 0.000000}, + {-0.562500, -0.812500, 0.000000}, + {-0.812500, -0.812500, 0.000000}, + {-0.812500, -0.562500, 0.000000}, + {-0.062500, -0.812500, 0.000000}, + {-0.312500, -0.812500, 0.000000}, + {-0.312500, -0.562500, 0.000000}, + {0.437500, -0.812500, 0.000000}, + {0.187500, -0.812500, 0.000000}, + {0.187500, -0.562500, 0.000000}, + {0.937500, -0.812500, 0.000000}, + {0.687500, -0.812500, 0.000000}, + {0.687500, -0.562500, 0.000000}, + {0.937500, -0.312500, 0.000000}, + {0.687500, -0.312500, 0.000000}, + {0.687500, -0.062500, 0.000000}, + {0.937500, 0.187500, 0.000000}, + {0.687500, 0.187500, 0.000000}, + {0.687500, 0.437500, 0.000000}, + {0.937500, 0.687500, 0.000000}, + {0.687500, 0.687500, 0.000000}, + {0.687500, 0.937500, 0.000000}, + {0.437500, 0.687500, 0.000000}, + {0.187500, 0.687500, 0.000000}, + {0.187500, 0.937500, 0.000000}, + {-0.062500, 0.687500, 0.000000}, + {-0.312500, 0.687500, 0.000000}, + {-0.312500, 0.937500, 0.000000}, + {-0.562500, 0.687500, 0.000000}, + {-0.812500, 0.687500, 0.000000}, + {-0.812500, 0.937500, 0.000000}, + {-0.562500, 0.187500, 0.000000}, + {-0.812500, 0.187500, 0.000000}, + {-0.812500, 0.437500, 0.000000}, + {-0.562500, -0.312500, 0.000000}, + {-0.812500, -0.312500, 0.000000}, + {-0.812500, -0.062500, 0.000000}, + {-0.562500, -0.062500, 0.000000}, + {-0.562500, 0.437500, 0.000000}, + {-0.562500, 0.937500, 0.000000}, + {-0.062500, 0.937500, 0.000000}, + {0.437500, 0.937500, 0.000000}, + {0.937500, 0.937500, 0.000000}, + {0.937500, 0.437500, 0.000000}, + {0.937500, -0.062500, 0.000000}, + {0.937500, -0.562500, 0.000000}, + {0.437500, -0.562500, 0.000000}, + {-0.062500, -0.562500, 0.000000}, + {-0.562500, -0.562500, 0.000000}, + {0.437500, 0.437500, 0.000000}, + {-0.062500, 0.437500, 0.000000}, + {0.437500, -0.062500, 0.000000}, + {-0.062500, -0.062500, 0.000000}, +}; + +const vec2 mesh_Plane_UVMap_uvmap[] = { + {0.468750, 0.468750}, + {0.500000, 0.468750}, + {0.500000, 0.500000}, + {0.468750, 0.500000}, + {0.718750, 0.468750}, + {0.750000, 0.468750}, + {0.750000, 0.500000}, + {0.718750, 0.500000}, + {0.468750, 0.718750}, + {0.500000, 0.718750}, + {0.500000, 0.750000}, + {0.468750, 0.750000}, + {0.718750, 0.718750}, + {0.750000, 0.718750}, + {0.750000, 0.750000}, + {0.718750, 0.750000}, + {0.218750, 0.218750}, + {0.250000, 0.218750}, + {0.250000, 0.250000}, + {0.218750, 0.250000}, + {0.468750, 0.218750}, + {0.500000, 0.218750}, + {0.500000, 0.250000}, + {0.468750, 0.250000}, + {0.718750, 0.218750}, + {0.750000, 0.218750}, + {0.750000, 0.250000}, + {0.718750, 0.250000}, + {0.968750, 0.218750}, + {1.000000, 0.218750}, + {1.000000, 0.250000}, + {0.968750, 0.250000}, + {0.968750, 0.468750}, + {1.000000, 0.468750}, + {1.000000, 0.500000}, + {0.968750, 0.500000}, + {0.968750, 0.718750}, + {1.000000, 0.718750}, + {1.000000, 0.750000}, + {0.968750, 0.750000}, + {0.968750, 0.968750}, + {1.000000, 0.968750}, + {1.000000, 1.000000}, + {0.968750, 1.000000}, + {0.718750, 0.968750}, + {0.750000, 0.968750}, + {0.750000, 1.000000}, + {0.718750, 1.000000}, + {0.468750, 0.968750}, + {0.500000, 0.968750}, + {0.500000, 1.000000}, + {0.468750, 1.000000}, + {0.218750, 0.968750}, + {0.250000, 0.968750}, + {0.250000, 1.000000}, + {0.218750, 1.000000}, + {0.218750, 0.718750}, + {0.250000, 0.718750}, + {0.250000, 0.750000}, + {0.218750, 0.750000}, + {0.218750, 0.468750}, + {0.250000, 0.468750}, + {0.250000, 0.500000}, + {0.218750, 0.500000}, + {0.093750, 0.468750}, + {0.125000, 0.468750}, + {0.125000, 0.500000}, + {0.093750, 0.500000}, + {0.093750, 0.343750}, + {0.125000, 0.343750}, + {0.125000, 0.375000}, + {0.093750, 0.375000}, + {0.218750, 0.343750}, + {0.250000, 0.343750}, + {0.250000, 0.375000}, + {0.218750, 0.375000}, + {0.093750, 0.718750}, + {0.125000, 0.718750}, + {0.125000, 0.750000}, + {0.093750, 0.750000}, + {0.093750, 0.593750}, + {0.125000, 0.593750}, + {0.125000, 0.625000}, + {0.093750, 0.625000}, + {0.218750, 0.593750}, + {0.250000, 0.593750}, + {0.250000, 0.625000}, + {0.218750, 0.625000}, + {0.093750, 0.968750}, + {0.125000, 0.968750}, + {0.125000, 1.000000}, + {0.093750, 1.000000}, + {0.093750, 0.843750}, + {0.125000, 0.843750}, + {0.125000, 0.875000}, + {0.093750, 0.875000}, + {0.218750, 0.843750}, + {0.250000, 0.843750}, + {0.250000, 0.875000}, + {0.218750, 0.875000}, + {0.343750, 0.968750}, + {0.375000, 0.968750}, + {0.375000, 1.000000}, + {0.343750, 1.000000}, + {0.343750, 0.843750}, + {0.375000, 0.843750}, + {0.375000, 0.875000}, + {0.343750, 0.875000}, + {0.468750, 0.843750}, + {0.500000, 0.843750}, + {0.500000, 0.875000}, + {0.468750, 0.875000}, + {0.593750, 0.968750}, + {0.625000, 0.968750}, + {0.625000, 1.000000}, + {0.593750, 1.000000}, + {0.593750, 0.843750}, + {0.625000, 0.843750}, + {0.625000, 0.875000}, + {0.593750, 0.875000}, + {0.718750, 0.843750}, + {0.750000, 0.843750}, + {0.750000, 0.875000}, + {0.718750, 0.875000}, + {0.843750, 0.968750}, + {0.875000, 0.968750}, + {0.875000, 1.000000}, + {0.843750, 1.000000}, + {0.843750, 0.843750}, + {0.875000, 0.843750}, + {0.875000, 0.875000}, + {0.843750, 0.875000}, + {0.968750, 0.843750}, + {1.000000, 0.843750}, + {1.000000, 0.875000}, + {0.968750, 0.875000}, + {0.843750, 0.718750}, + {0.875000, 0.718750}, + {0.875000, 0.750000}, + {0.843750, 0.750000}, + {0.843750, 0.593750}, + {0.875000, 0.593750}, + {0.875000, 0.625000}, + {0.843750, 0.625000}, + {0.968750, 0.593750}, + {1.000000, 0.593750}, + {1.000000, 0.625000}, + {0.968750, 0.625000}, + {0.843750, 0.468750}, + {0.875000, 0.468750}, + {0.875000, 0.500000}, + {0.843750, 0.500000}, + {0.843750, 0.343750}, + {0.875000, 0.343750}, + {0.875000, 0.375000}, + {0.843750, 0.375000}, + {0.968750, 0.343750}, + {1.000000, 0.343750}, + {1.000000, 0.375000}, + {0.968750, 0.375000}, + {0.843750, 0.218750}, + {0.875000, 0.218750}, + {0.875000, 0.250000}, + {0.843750, 0.250000}, + {0.843750, 0.093750}, + {0.875000, 0.093750}, + {0.875000, 0.125000}, + {0.843750, 0.125000}, + {0.968750, 0.093750}, + {1.000000, 0.093750}, + {1.000000, 0.125000}, + {0.968750, 0.125000}, + {0.593750, 0.218750}, + {0.625000, 0.218750}, + {0.625000, 0.250000}, + {0.593750, 0.250000}, + {0.593750, 0.093750}, + {0.625000, 0.093750}, + {0.625000, 0.125000}, + {0.593750, 0.125000}, + {0.718750, 0.093750}, + {0.750000, 0.093750}, + {0.750000, 0.125000}, + {0.718750, 0.125000}, + {0.343750, 0.218750}, + {0.375000, 0.218750}, + {0.375000, 0.250000}, + {0.343750, 0.250000}, + {0.343750, 0.093750}, + {0.375000, 0.093750}, + {0.375000, 0.125000}, + {0.343750, 0.125000}, + {0.468750, 0.093750}, + {0.500000, 0.093750}, + {0.500000, 0.125000}, + {0.468750, 0.125000}, + {0.093750, 0.218750}, + {0.125000, 0.218750}, + {0.125000, 0.250000}, + {0.093750, 0.250000}, + {0.093750, 0.093750}, + {0.125000, 0.093750}, + {0.125000, 0.125000}, + {0.093750, 0.125000}, + {0.218750, 0.093750}, + {0.250000, 0.093750}, + {0.250000, 0.125000}, + {0.218750, 0.125000}, + {0.593750, 0.718750}, + {0.625000, 0.718750}, + {0.625000, 0.750000}, + {0.593750, 0.750000}, + {0.593750, 0.593750}, + {0.625000, 0.593750}, + {0.625000, 0.625000}, + {0.593750, 0.625000}, + {0.718750, 0.593750}, + {0.750000, 0.593750}, + {0.750000, 0.625000}, + {0.718750, 0.625000}, + {0.343750, 0.718750}, + {0.375000, 0.718750}, + {0.375000, 0.750000}, + {0.343750, 0.750000}, + {0.343750, 0.593750}, + {0.375000, 0.593750}, + {0.375000, 0.625000}, + {0.343750, 0.625000}, + {0.468750, 0.593750}, + {0.500000, 0.593750}, + {0.500000, 0.625000}, + {0.468750, 0.625000}, + {0.593750, 0.468750}, + {0.625000, 0.468750}, + {0.625000, 0.500000}, + {0.593750, 0.500000}, + {0.593750, 0.343750}, + {0.625000, 0.343750}, + {0.625000, 0.375000}, + {0.593750, 0.375000}, + {0.718750, 0.343750}, + {0.750000, 0.343750}, + {0.750000, 0.375000}, + {0.718750, 0.375000}, + {0.343750, 0.468750}, + {0.375000, 0.468750}, + {0.375000, 0.500000}, + {0.343750, 0.500000}, + {0.343750, 0.343750}, + {0.375000, 0.343750}, + {0.375000, 0.375000}, + {0.343750, 0.375000}, + {0.468750, 0.343750}, + {0.500000, 0.343750}, + {0.500000, 0.375000}, + {0.468750, 0.375000}, + {0.406250, 0.343750}, + {0.437500, 0.343750}, + {0.437500, 0.375000}, + {0.406250, 0.375000}, + {0.406250, 0.281250}, + {0.437500, 0.281250}, + {0.437500, 0.312500}, + {0.406250, 0.312500}, + {0.468750, 0.281250}, + {0.500000, 0.281250}, + {0.500000, 0.312500}, + {0.468750, 0.312500}, + {0.281250, 0.343750}, + {0.312500, 0.343750}, + {0.312500, 0.375000}, + {0.281250, 0.375000}, + {0.281250, 0.281250}, + {0.312500, 0.281250}, + {0.312500, 0.312500}, + {0.281250, 0.312500}, + {0.343750, 0.281250}, + {0.375000, 0.281250}, + {0.375000, 0.312500}, + {0.343750, 0.312500}, + {0.281250, 0.468750}, + {0.312500, 0.468750}, + {0.312500, 0.500000}, + {0.281250, 0.500000}, + {0.281250, 0.406250}, + {0.312500, 0.406250}, + {0.312500, 0.437500}, + {0.281250, 0.437500}, + {0.343750, 0.406250}, + {0.375000, 0.406250}, + {0.375000, 0.437500}, + {0.343750, 0.437500}, + {0.656250, 0.343750}, + {0.687500, 0.343750}, + {0.687500, 0.375000}, + {0.656250, 0.375000}, + {0.656250, 0.281250}, + {0.687500, 0.281250}, + {0.687500, 0.312500}, + {0.656250, 0.312500}, + {0.718750, 0.281250}, + {0.750000, 0.281250}, + {0.750000, 0.312500}, + {0.718750, 0.312500}, + {0.531250, 0.343750}, + {0.562500, 0.343750}, + {0.562500, 0.375000}, + {0.531250, 0.375000}, + {0.531250, 0.281250}, + {0.562500, 0.281250}, + {0.562500, 0.312500}, + {0.531250, 0.312500}, + {0.593750, 0.281250}, + {0.625000, 0.281250}, + {0.625000, 0.312500}, + {0.593750, 0.312500}, + {0.531250, 0.468750}, + {0.562500, 0.468750}, + {0.562500, 0.500000}, + {0.531250, 0.500000}, + {0.531250, 0.406250}, + {0.562500, 0.406250}, + {0.562500, 0.437500}, + {0.531250, 0.437500}, + {0.593750, 0.406250}, + {0.625000, 0.406250}, + {0.625000, 0.437500}, + {0.593750, 0.437500}, + {0.406250, 0.593750}, + {0.437500, 0.593750}, + {0.437500, 0.625000}, + {0.406250, 0.625000}, + {0.406250, 0.531250}, + {0.437500, 0.531250}, + {0.437500, 0.562500}, + {0.406250, 0.562500}, + {0.468750, 0.531250}, + {0.500000, 0.531250}, + {0.500000, 0.562500}, + {0.468750, 0.562500}, + {0.281250, 0.593750}, + {0.312500, 0.593750}, + {0.312500, 0.625000}, + {0.281250, 0.625000}, + {0.281250, 0.531250}, + {0.312500, 0.531250}, + {0.312500, 0.562500}, + {0.281250, 0.562500}, + {0.343750, 0.531250}, + {0.375000, 0.531250}, + {0.375000, 0.562500}, + {0.343750, 0.562500}, + {0.281250, 0.718750}, + {0.312500, 0.718750}, + {0.312500, 0.750000}, + {0.281250, 0.750000}, + {0.281250, 0.656250}, + {0.312500, 0.656250}, + {0.312500, 0.687500}, + {0.281250, 0.687500}, + {0.343750, 0.656250}, + {0.375000, 0.656250}, + {0.375000, 0.687500}, + {0.343750, 0.687500}, + {0.656250, 0.593750}, + {0.687500, 0.593750}, + {0.687500, 0.625000}, + {0.656250, 0.625000}, + {0.656250, 0.531250}, + {0.687500, 0.531250}, + {0.687500, 0.562500}, + {0.656250, 0.562500}, + {0.718750, 0.531250}, + {0.750000, 0.531250}, + {0.750000, 0.562500}, + {0.718750, 0.562500}, + {0.531250, 0.593750}, + {0.562500, 0.593750}, + {0.562500, 0.625000}, + {0.531250, 0.625000}, + {0.531250, 0.531250}, + {0.562500, 0.531250}, + {0.562500, 0.562500}, + {0.531250, 0.562500}, + {0.593750, 0.531250}, + {0.625000, 0.531250}, + {0.625000, 0.562500}, + {0.593750, 0.562500}, + {0.531250, 0.718750}, + {0.562500, 0.718750}, + {0.562500, 0.750000}, + {0.531250, 0.750000}, + {0.531250, 0.656250}, + {0.562500, 0.656250}, + {0.562500, 0.687500}, + {0.531250, 0.687500}, + {0.593750, 0.656250}, + {0.625000, 0.656250}, + {0.625000, 0.687500}, + {0.593750, 0.687500}, + {0.156250, 0.093750}, + {0.187500, 0.093750}, + {0.187500, 0.125000}, + {0.156250, 0.125000}, + {0.156250, 0.031250}, + {0.187500, 0.031250}, + {0.187500, 0.062500}, + {0.156250, 0.062500}, + {0.218750, 0.031250}, + {0.250000, 0.031250}, + {0.250000, 0.062500}, + {0.218750, 0.062500}, + {0.031250, 0.093750}, + {0.062500, 0.093750}, + {0.062500, 0.125000}, + {0.031250, 0.125000}, + {0.031250, 0.031250}, + {0.062500, 0.031250}, + {0.062500, 0.062500}, + {0.031250, 0.062500}, + {0.093750, 0.031250}, + {0.125000, 0.031250}, + {0.125000, 0.062500}, + {0.093750, 0.062500}, + {0.031250, 0.218750}, + {0.062500, 0.218750}, + {0.062500, 0.250000}, + {0.031250, 0.250000}, + {0.031250, 0.156250}, + {0.062500, 0.156250}, + {0.062500, 0.187500}, + {0.031250, 0.187500}, + {0.093750, 0.156250}, + {0.125000, 0.156250}, + {0.125000, 0.187500}, + {0.093750, 0.187500}, + {0.406250, 0.093750}, + {0.437500, 0.093750}, + {0.437500, 0.125000}, + {0.406250, 0.125000}, + {0.406250, 0.031250}, + {0.437500, 0.031250}, + {0.437500, 0.062500}, + {0.406250, 0.062500}, + {0.468750, 0.031250}, + {0.500000, 0.031250}, + {0.500000, 0.062500}, + {0.468750, 0.062500}, + {0.281250, 0.093750}, + {0.312500, 0.093750}, + {0.312500, 0.125000}, + {0.281250, 0.125000}, + {0.281250, 0.031250}, + {0.312500, 0.031250}, + {0.312500, 0.062500}, + {0.281250, 0.062500}, + {0.343750, 0.031250}, + {0.375000, 0.031250}, + {0.375000, 0.062500}, + {0.343750, 0.062500}, + {0.281250, 0.218750}, + {0.312500, 0.218750}, + {0.312500, 0.250000}, + {0.281250, 0.250000}, + {0.281250, 0.156250}, + {0.312500, 0.156250}, + {0.312500, 0.187500}, + {0.281250, 0.187500}, + {0.343750, 0.156250}, + {0.375000, 0.156250}, + {0.375000, 0.187500}, + {0.343750, 0.187500}, + {0.656250, 0.093750}, + {0.687500, 0.093750}, + {0.687500, 0.125000}, + {0.656250, 0.125000}, + {0.656250, 0.031250}, + {0.687500, 0.031250}, + {0.687500, 0.062500}, + {0.656250, 0.062500}, + {0.718750, 0.031250}, + {0.750000, 0.031250}, + {0.750000, 0.062500}, + {0.718750, 0.062500}, + {0.531250, 0.093750}, + {0.562500, 0.093750}, + {0.562500, 0.125000}, + {0.531250, 0.125000}, + {0.531250, 0.031250}, + {0.562500, 0.031250}, + {0.562500, 0.062500}, + {0.531250, 0.062500}, + {0.593750, 0.031250}, + {0.625000, 0.031250}, + {0.625000, 0.062500}, + {0.593750, 0.062500}, + {0.531250, 0.218750}, + {0.562500, 0.218750}, + {0.562500, 0.250000}, + {0.531250, 0.250000}, + {0.531250, 0.156250}, + {0.562500, 0.156250}, + {0.562500, 0.187500}, + {0.531250, 0.187500}, + {0.593750, 0.156250}, + {0.625000, 0.156250}, + {0.625000, 0.187500}, + {0.593750, 0.187500}, + {0.906250, 0.093750}, + {0.937500, 0.093750}, + {0.937500, 0.125000}, + {0.906250, 0.125000}, + {0.906250, 0.031250}, + {0.937500, 0.031250}, + {0.937500, 0.062500}, + {0.906250, 0.062500}, + {0.968750, 0.031250}, + {1.000000, 0.031250}, + {1.000000, 0.062500}, + {0.968750, 0.062500}, + {0.781250, 0.093750}, + {0.812500, 0.093750}, + {0.812500, 0.125000}, + {0.781250, 0.125000}, + {0.781250, 0.031250}, + {0.812500, 0.031250}, + {0.812500, 0.062500}, + {0.781250, 0.062500}, + {0.843750, 0.031250}, + {0.875000, 0.031250}, + {0.875000, 0.062500}, + {0.843750, 0.062500}, + {0.781250, 0.218750}, + {0.812500, 0.218750}, + {0.812500, 0.250000}, + {0.781250, 0.250000}, + {0.781250, 0.156250}, + {0.812500, 0.156250}, + {0.812500, 0.187500}, + {0.781250, 0.187500}, + {0.843750, 0.156250}, + {0.875000, 0.156250}, + {0.875000, 0.187500}, + {0.843750, 0.187500}, + {0.906250, 0.343750}, + {0.937500, 0.343750}, + {0.937500, 0.375000}, + {0.906250, 0.375000}, + {0.906250, 0.281250}, + {0.937500, 0.281250}, + {0.937500, 0.312500}, + {0.906250, 0.312500}, + {0.968750, 0.281250}, + {1.000000, 0.281250}, + {1.000000, 0.312500}, + {0.968750, 0.312500}, + {0.781250, 0.343750}, + {0.812500, 0.343750}, + {0.812500, 0.375000}, + {0.781250, 0.375000}, + {0.781250, 0.281250}, + {0.812500, 0.281250}, + {0.812500, 0.312500}, + {0.781250, 0.312500}, + {0.843750, 0.281250}, + {0.875000, 0.281250}, + {0.875000, 0.312500}, + {0.843750, 0.312500}, + {0.781250, 0.468750}, + {0.812500, 0.468750}, + {0.812500, 0.500000}, + {0.781250, 0.500000}, + {0.781250, 0.406250}, + {0.812500, 0.406250}, + {0.812500, 0.437500}, + {0.781250, 0.437500}, + {0.843750, 0.406250}, + {0.875000, 0.406250}, + {0.875000, 0.437500}, + {0.843750, 0.437500}, + {0.906250, 0.593750}, + {0.937500, 0.593750}, + {0.937500, 0.625000}, + {0.906250, 0.625000}, + {0.906250, 0.531250}, + {0.937500, 0.531250}, + {0.937500, 0.562500}, + {0.906250, 0.562500}, + {0.968750, 0.531250}, + {1.000000, 0.531250}, + {1.000000, 0.562500}, + {0.968750, 0.562500}, + {0.781250, 0.593750}, + {0.812500, 0.593750}, + {0.812500, 0.625000}, + {0.781250, 0.625000}, + {0.781250, 0.531250}, + {0.812500, 0.531250}, + {0.812500, 0.562500}, + {0.781250, 0.562500}, + {0.843750, 0.531250}, + {0.875000, 0.531250}, + {0.875000, 0.562500}, + {0.843750, 0.562500}, + {0.781250, 0.718750}, + {0.812500, 0.718750}, + {0.812500, 0.750000}, + {0.781250, 0.750000}, + {0.781250, 0.656250}, + {0.812500, 0.656250}, + {0.812500, 0.687500}, + {0.781250, 0.687500}, + {0.843750, 0.656250}, + {0.875000, 0.656250}, + {0.875000, 0.687500}, + {0.843750, 0.687500}, + {0.906250, 0.843750}, + {0.937500, 0.843750}, + {0.937500, 0.875000}, + {0.906250, 0.875000}, + {0.906250, 0.781250}, + {0.937500, 0.781250}, + {0.937500, 0.812500}, + {0.906250, 0.812500}, + {0.968750, 0.781250}, + {1.000000, 0.781250}, + {1.000000, 0.812500}, + {0.968750, 0.812500}, + {0.781250, 0.843750}, + {0.812500, 0.843750}, + {0.812500, 0.875000}, + {0.781250, 0.875000}, + {0.781250, 0.781250}, + {0.812500, 0.781250}, + {0.812500, 0.812500}, + {0.781250, 0.812500}, + {0.843750, 0.781250}, + {0.875000, 0.781250}, + {0.875000, 0.812500}, + {0.843750, 0.812500}, + {0.781250, 0.968750}, + {0.812500, 0.968750}, + {0.812500, 1.000000}, + {0.781250, 1.000000}, + {0.781250, 0.906250}, + {0.812500, 0.906250}, + {0.812500, 0.937500}, + {0.781250, 0.937500}, + {0.843750, 0.906250}, + {0.875000, 0.906250}, + {0.875000, 0.937500}, + {0.843750, 0.937500}, + {0.656250, 0.843750}, + {0.687500, 0.843750}, + {0.687500, 0.875000}, + {0.656250, 0.875000}, + {0.656250, 0.781250}, + {0.687500, 0.781250}, + {0.687500, 0.812500}, + {0.656250, 0.812500}, + {0.718750, 0.781250}, + {0.750000, 0.781250}, + {0.750000, 0.812500}, + {0.718750, 0.812500}, + {0.531250, 0.843750}, + {0.562500, 0.843750}, + {0.562500, 0.875000}, + {0.531250, 0.875000}, + {0.531250, 0.781250}, + {0.562500, 0.781250}, + {0.562500, 0.812500}, + {0.531250, 0.812500}, + {0.593750, 0.781250}, + {0.625000, 0.781250}, + {0.625000, 0.812500}, + {0.593750, 0.812500}, + {0.531250, 0.968750}, + {0.562500, 0.968750}, + {0.562500, 1.000000}, + {0.531250, 1.000000}, + {0.531250, 0.906250}, + {0.562500, 0.906250}, + {0.562500, 0.937500}, + {0.531250, 0.937500}, + {0.593750, 0.906250}, + {0.625000, 0.906250}, + {0.625000, 0.937500}, + {0.593750, 0.937500}, + {0.406250, 0.843750}, + {0.437500, 0.843750}, + {0.437500, 0.875000}, + {0.406250, 0.875000}, + {0.406250, 0.781250}, + {0.437500, 0.781250}, + {0.437500, 0.812500}, + {0.406250, 0.812500}, + {0.468750, 0.781250}, + {0.500000, 0.781250}, + {0.500000, 0.812500}, + {0.468750, 0.812500}, + {0.281250, 0.843750}, + {0.312500, 0.843750}, + {0.312500, 0.875000}, + {0.281250, 0.875000}, + {0.281250, 0.781250}, + {0.312500, 0.781250}, + {0.312500, 0.812500}, + {0.281250, 0.812500}, + {0.343750, 0.781250}, + {0.375000, 0.781250}, + {0.375000, 0.812500}, + {0.343750, 0.812500}, + {0.281250, 0.968750}, + {0.312500, 0.968750}, + {0.312500, 1.000000}, + {0.281250, 1.000000}, + {0.281250, 0.906250}, + {0.312500, 0.906250}, + {0.312500, 0.937500}, + {0.281250, 0.937500}, + {0.343750, 0.906250}, + {0.375000, 0.906250}, + {0.375000, 0.937500}, + {0.343750, 0.937500}, + {0.156250, 0.843750}, + {0.187500, 0.843750}, + {0.187500, 0.875000}, + {0.156250, 0.875000}, + {0.156250, 0.781250}, + {0.187500, 0.781250}, + {0.187500, 0.812500}, + {0.156250, 0.812500}, + {0.218750, 0.781250}, + {0.250000, 0.781250}, + {0.250000, 0.812500}, + {0.218750, 0.812500}, + {0.031250, 0.843750}, + {0.062500, 0.843750}, + {0.062500, 0.875000}, + {0.031250, 0.875000}, + {0.031250, 0.781250}, + {0.062500, 0.781250}, + {0.062500, 0.812500}, + {0.031250, 0.812500}, + {0.093750, 0.781250}, + {0.125000, 0.781250}, + {0.125000, 0.812500}, + {0.093750, 0.812500}, + {0.031250, 0.968750}, + {0.062500, 0.968750}, + {0.062500, 1.000000}, + {0.031250, 1.000000}, + {0.031250, 0.906250}, + {0.062500, 0.906250}, + {0.062500, 0.937500}, + {0.031250, 0.937500}, + {0.093750, 0.906250}, + {0.125000, 0.906250}, + {0.125000, 0.937500}, + {0.093750, 0.937500}, + {0.156250, 0.593750}, + {0.187500, 0.593750}, + {0.187500, 0.625000}, + {0.156250, 0.625000}, + {0.156250, 0.531250}, + {0.187500, 0.531250}, + {0.187500, 0.562500}, + {0.156250, 0.562500}, + {0.218750, 0.531250}, + {0.250000, 0.531250}, + {0.250000, 0.562500}, + {0.218750, 0.562500}, + {0.031250, 0.593750}, + {0.062500, 0.593750}, + {0.062500, 0.625000}, + {0.031250, 0.625000}, + {0.031250, 0.531250}, + {0.062500, 0.531250}, + {0.062500, 0.562500}, + {0.031250, 0.562500}, + {0.093750, 0.531250}, + {0.125000, 0.531250}, + {0.125000, 0.562500}, + {0.093750, 0.562500}, + {0.031250, 0.718750}, + {0.062500, 0.718750}, + {0.062500, 0.750000}, + {0.031250, 0.750000}, + {0.031250, 0.656250}, + {0.062500, 0.656250}, + {0.062500, 0.687500}, + {0.031250, 0.687500}, + {0.093750, 0.656250}, + {0.125000, 0.656250}, + {0.125000, 0.687500}, + {0.093750, 0.687500}, + {0.156250, 0.343750}, + {0.187500, 0.343750}, + {0.187500, 0.375000}, + {0.156250, 0.375000}, + {0.156250, 0.281250}, + {0.187500, 0.281250}, + {0.187500, 0.312500}, + {0.156250, 0.312500}, + {0.218750, 0.281250}, + {0.250000, 0.281250}, + {0.250000, 0.312500}, + {0.218750, 0.312500}, + {0.031250, 0.343750}, + {0.062500, 0.343750}, + {0.062500, 0.375000}, + {0.031250, 0.375000}, + {0.031250, 0.281250}, + {0.062500, 0.281250}, + {0.062500, 0.312500}, + {0.031250, 0.312500}, + {0.093750, 0.281250}, + {0.125000, 0.281250}, + {0.125000, 0.312500}, + {0.093750, 0.312500}, + {0.031250, 0.468750}, + {0.062500, 0.468750}, + {0.062500, 0.500000}, + {0.031250, 0.500000}, + {0.031250, 0.406250}, + {0.062500, 0.406250}, + {0.062500, 0.437500}, + {0.031250, 0.437500}, + {0.093750, 0.406250}, + {0.125000, 0.406250}, + {0.125000, 0.437500}, + {0.093750, 0.437500}, + {0.156250, 0.468750}, + {0.187500, 0.468750}, + {0.187500, 0.500000}, + {0.156250, 0.500000}, + {0.156250, 0.406250}, + {0.187500, 0.406250}, + {0.187500, 0.437500}, + {0.156250, 0.437500}, + {0.218750, 0.406250}, + {0.250000, 0.406250}, + {0.250000, 0.437500}, + {0.218750, 0.437500}, + {0.156250, 0.718750}, + {0.187500, 0.718750}, + {0.187500, 0.750000}, + {0.156250, 0.750000}, + {0.156250, 0.656250}, + {0.187500, 0.656250}, + {0.187500, 0.687500}, + {0.156250, 0.687500}, + {0.218750, 0.656250}, + {0.250000, 0.656250}, + {0.250000, 0.687500}, + {0.218750, 0.687500}, + {0.156250, 0.968750}, + {0.187500, 0.968750}, + {0.187500, 1.000000}, + {0.156250, 1.000000}, + {0.156250, 0.906250}, + {0.187500, 0.906250}, + {0.187500, 0.937500}, + {0.156250, 0.937500}, + {0.218750, 0.906250}, + {0.250000, 0.906250}, + {0.250000, 0.937500}, + {0.218750, 0.937500}, + {0.406250, 0.968750}, + {0.437500, 0.968750}, + {0.437500, 1.000000}, + {0.406250, 1.000000}, + {0.406250, 0.906250}, + {0.437500, 0.906250}, + {0.437500, 0.937500}, + {0.406250, 0.937500}, + {0.468750, 0.906250}, + {0.500000, 0.906250}, + {0.500000, 0.937500}, + {0.468750, 0.937500}, + {0.656250, 0.968750}, + {0.687500, 0.968750}, + {0.687500, 1.000000}, + {0.656250, 1.000000}, + {0.656250, 0.906250}, + {0.687500, 0.906250}, + {0.687500, 0.937500}, + {0.656250, 0.937500}, + {0.718750, 0.906250}, + {0.750000, 0.906250}, + {0.750000, 0.937500}, + {0.718750, 0.937500}, + {0.906250, 0.968750}, + {0.937500, 0.968750}, + {0.937500, 1.000000}, + {0.906250, 1.000000}, + {0.906250, 0.906250}, + {0.937500, 0.906250}, + {0.937500, 0.937500}, + {0.906250, 0.937500}, + {0.968750, 0.906250}, + {1.000000, 0.906250}, + {1.000000, 0.937500}, + {0.968750, 0.937500}, + {0.906250, 0.718750}, + {0.937500, 0.718750}, + {0.937500, 0.750000}, + {0.906250, 0.750000}, + {0.906250, 0.656250}, + {0.937500, 0.656250}, + {0.937500, 0.687500}, + {0.906250, 0.687500}, + {0.968750, 0.656250}, + {1.000000, 0.656250}, + {1.000000, 0.687500}, + {0.968750, 0.687500}, + {0.906250, 0.468750}, + {0.937500, 0.468750}, + {0.937500, 0.500000}, + {0.906250, 0.500000}, + {0.906250, 0.406250}, + {0.937500, 0.406250}, + {0.937500, 0.437500}, + {0.906250, 0.437500}, + {0.968750, 0.406250}, + {1.000000, 0.406250}, + {1.000000, 0.437500}, + {0.968750, 0.437500}, + {0.906250, 0.218750}, + {0.937500, 0.218750}, + {0.937500, 0.250000}, + {0.906250, 0.250000}, + {0.906250, 0.156250}, + {0.937500, 0.156250}, + {0.937500, 0.187500}, + {0.906250, 0.187500}, + {0.968750, 0.156250}, + {1.000000, 0.156250}, + {1.000000, 0.187500}, + {0.968750, 0.187500}, + {0.656250, 0.218750}, + {0.687500, 0.218750}, + {0.687500, 0.250000}, + {0.656250, 0.250000}, + {0.656250, 0.156250}, + {0.687500, 0.156250}, + {0.687500, 0.187500}, + {0.656250, 0.187500}, + {0.718750, 0.156250}, + {0.750000, 0.156250}, + {0.750000, 0.187500}, + {0.718750, 0.187500}, + {0.406250, 0.218750}, + {0.437500, 0.218750}, + {0.437500, 0.250000}, + {0.406250, 0.250000}, + {0.406250, 0.156250}, + {0.437500, 0.156250}, + {0.437500, 0.187500}, + {0.406250, 0.187500}, + {0.468750, 0.156250}, + {0.500000, 0.156250}, + {0.500000, 0.187500}, + {0.468750, 0.187500}, + {0.156250, 0.218750}, + {0.187500, 0.218750}, + {0.187500, 0.250000}, + {0.156250, 0.250000}, + {0.156250, 0.156250}, + {0.187500, 0.156250}, + {0.187500, 0.187500}, + {0.156250, 0.187500}, + {0.218750, 0.156250}, + {0.250000, 0.156250}, + {0.250000, 0.187500}, + {0.218750, 0.187500}, + {0.656250, 0.718750}, + {0.687500, 0.718750}, + {0.687500, 0.750000}, + {0.656250, 0.750000}, + {0.656250, 0.656250}, + {0.687500, 0.656250}, + {0.687500, 0.687500}, + {0.656250, 0.687500}, + {0.718750, 0.656250}, + {0.750000, 0.656250}, + {0.750000, 0.687500}, + {0.718750, 0.687500}, + {0.406250, 0.718750}, + {0.437500, 0.718750}, + {0.437500, 0.750000}, + {0.406250, 0.750000}, + {0.406250, 0.656250}, + {0.437500, 0.656250}, + {0.437500, 0.687500}, + {0.406250, 0.687500}, + {0.468750, 0.656250}, + {0.500000, 0.656250}, + {0.500000, 0.687500}, + {0.468750, 0.687500}, + {0.656250, 0.468750}, + {0.687500, 0.468750}, + {0.687500, 0.500000}, + {0.656250, 0.500000}, + {0.656250, 0.406250}, + {0.687500, 0.406250}, + {0.687500, 0.437500}, + {0.656250, 0.437500}, + {0.718750, 0.406250}, + {0.750000, 0.406250}, + {0.750000, 0.437500}, + {0.718750, 0.437500}, + {0.406250, 0.468750}, + {0.437500, 0.468750}, + {0.437500, 0.500000}, + {0.406250, 0.500000}, + {0.406250, 0.406250}, + {0.437500, 0.406250}, + {0.437500, 0.437500}, + {0.406250, 0.437500}, + {0.468750, 0.406250}, + {0.500000, 0.406250}, + {0.500000, 0.437500}, + {0.468750, 0.437500}, + {0.437500, 0.406250}, + {0.468750, 0.406250}, + {0.468750, 0.437500}, + {0.437500, 0.437500}, + {0.437500, 0.375000}, + {0.468750, 0.375000}, + {0.468750, 0.406250}, + {0.437500, 0.406250}, + {0.468750, 0.375000}, + {0.500000, 0.375000}, + {0.500000, 0.406250}, + {0.468750, 0.406250}, + {0.375000, 0.406250}, + {0.406250, 0.406250}, + {0.406250, 0.437500}, + {0.375000, 0.437500}, + {0.375000, 0.375000}, + {0.406250, 0.375000}, + {0.406250, 0.406250}, + {0.375000, 0.406250}, + {0.406250, 0.375000}, + {0.437500, 0.375000}, + {0.437500, 0.406250}, + {0.406250, 0.406250}, + {0.375000, 0.468750}, + {0.406250, 0.468750}, + {0.406250, 0.500000}, + {0.375000, 0.500000}, + {0.375000, 0.437500}, + {0.406250, 0.437500}, + {0.406250, 0.468750}, + {0.375000, 0.468750}, + {0.406250, 0.437500}, + {0.437500, 0.437500}, + {0.437500, 0.468750}, + {0.406250, 0.468750}, + {0.687500, 0.406250}, + {0.718750, 0.406250}, + {0.718750, 0.437500}, + {0.687500, 0.437500}, + {0.687500, 0.375000}, + {0.718750, 0.375000}, + {0.718750, 0.406250}, + {0.687500, 0.406250}, + {0.718750, 0.375000}, + {0.750000, 0.375000}, + {0.750000, 0.406250}, + {0.718750, 0.406250}, + {0.625000, 0.406250}, + {0.656250, 0.406250}, + {0.656250, 0.437500}, + {0.625000, 0.437500}, + {0.625000, 0.375000}, + {0.656250, 0.375000}, + {0.656250, 0.406250}, + {0.625000, 0.406250}, + {0.656250, 0.375000}, + {0.687500, 0.375000}, + {0.687500, 0.406250}, + {0.656250, 0.406250}, + {0.625000, 0.468750}, + {0.656250, 0.468750}, + {0.656250, 0.500000}, + {0.625000, 0.500000}, + {0.625000, 0.437500}, + {0.656250, 0.437500}, + {0.656250, 0.468750}, + {0.625000, 0.468750}, + {0.656250, 0.437500}, + {0.687500, 0.437500}, + {0.687500, 0.468750}, + {0.656250, 0.468750}, + {0.437500, 0.656250}, + {0.468750, 0.656250}, + {0.468750, 0.687500}, + {0.437500, 0.687500}, + {0.437500, 0.625000}, + {0.468750, 0.625000}, + {0.468750, 0.656250}, + {0.437500, 0.656250}, + {0.468750, 0.625000}, + {0.500000, 0.625000}, + {0.500000, 0.656250}, + {0.468750, 0.656250}, + {0.375000, 0.656250}, + {0.406250, 0.656250}, + {0.406250, 0.687500}, + {0.375000, 0.687500}, + {0.375000, 0.625000}, + {0.406250, 0.625000}, + {0.406250, 0.656250}, + {0.375000, 0.656250}, + {0.406250, 0.625000}, + {0.437500, 0.625000}, + {0.437500, 0.656250}, + {0.406250, 0.656250}, + {0.375000, 0.718750}, + {0.406250, 0.718750}, + {0.406250, 0.750000}, + {0.375000, 0.750000}, + {0.375000, 0.687500}, + {0.406250, 0.687500}, + {0.406250, 0.718750}, + {0.375000, 0.718750}, + {0.406250, 0.687500}, + {0.437500, 0.687500}, + {0.437500, 0.718750}, + {0.406250, 0.718750}, + {0.687500, 0.656250}, + {0.718750, 0.656250}, + {0.718750, 0.687500}, + {0.687500, 0.687500}, + {0.687500, 0.625000}, + {0.718750, 0.625000}, + {0.718750, 0.656250}, + {0.687500, 0.656250}, + {0.718750, 0.625000}, + {0.750000, 0.625000}, + {0.750000, 0.656250}, + {0.718750, 0.656250}, + {0.625000, 0.656250}, + {0.656250, 0.656250}, + {0.656250, 0.687500}, + {0.625000, 0.687500}, + {0.625000, 0.625000}, + {0.656250, 0.625000}, + {0.656250, 0.656250}, + {0.625000, 0.656250}, + {0.656250, 0.625000}, + {0.687500, 0.625000}, + {0.687500, 0.656250}, + {0.656250, 0.656250}, + {0.625000, 0.718750}, + {0.656250, 0.718750}, + {0.656250, 0.750000}, + {0.625000, 0.750000}, + {0.625000, 0.687500}, + {0.656250, 0.687500}, + {0.656250, 0.718750}, + {0.625000, 0.718750}, + {0.656250, 0.687500}, + {0.687500, 0.687500}, + {0.687500, 0.718750}, + {0.656250, 0.718750}, + {0.187500, 0.156250}, + {0.218750, 0.156250}, + {0.218750, 0.187500}, + {0.187500, 0.187500}, + {0.187500, 0.125000}, + {0.218750, 0.125000}, + {0.218750, 0.156250}, + {0.187500, 0.156250}, + {0.218750, 0.125000}, + {0.250000, 0.125000}, + {0.250000, 0.156250}, + {0.218750, 0.156250}, + {0.125000, 0.156250}, + {0.156250, 0.156250}, + {0.156250, 0.187500}, + {0.125000, 0.187500}, + {0.125000, 0.125000}, + {0.156250, 0.125000}, + {0.156250, 0.156250}, + {0.125000, 0.156250}, + {0.156250, 0.125000}, + {0.187500, 0.125000}, + {0.187500, 0.156250}, + {0.156250, 0.156250}, + {0.125000, 0.218750}, + {0.156250, 0.218750}, + {0.156250, 0.250000}, + {0.125000, 0.250000}, + {0.125000, 0.187500}, + {0.156250, 0.187500}, + {0.156250, 0.218750}, + {0.125000, 0.218750}, + {0.156250, 0.187500}, + {0.187500, 0.187500}, + {0.187500, 0.218750}, + {0.156250, 0.218750}, + {0.437500, 0.156250}, + {0.468750, 0.156250}, + {0.468750, 0.187500}, + {0.437500, 0.187500}, + {0.437500, 0.125000}, + {0.468750, 0.125000}, + {0.468750, 0.156250}, + {0.437500, 0.156250}, + {0.468750, 0.125000}, + {0.500000, 0.125000}, + {0.500000, 0.156250}, + {0.468750, 0.156250}, + {0.375000, 0.156250}, + {0.406250, 0.156250}, + {0.406250, 0.187500}, + {0.375000, 0.187500}, + {0.375000, 0.125000}, + {0.406250, 0.125000}, + {0.406250, 0.156250}, + {0.375000, 0.156250}, + {0.406250, 0.125000}, + {0.437500, 0.125000}, + {0.437500, 0.156250}, + {0.406250, 0.156250}, + {0.375000, 0.218750}, + {0.406250, 0.218750}, + {0.406250, 0.250000}, + {0.375000, 0.250000}, + {0.375000, 0.187500}, + {0.406250, 0.187500}, + {0.406250, 0.218750}, + {0.375000, 0.218750}, + {0.406250, 0.187500}, + {0.437500, 0.187500}, + {0.437500, 0.218750}, + {0.406250, 0.218750}, + {0.687500, 0.156250}, + {0.718750, 0.156250}, + {0.718750, 0.187500}, + {0.687500, 0.187500}, + {0.687500, 0.125000}, + {0.718750, 0.125000}, + {0.718750, 0.156250}, + {0.687500, 0.156250}, + {0.718750, 0.125000}, + {0.750000, 0.125000}, + {0.750000, 0.156250}, + {0.718750, 0.156250}, + {0.625000, 0.156250}, + {0.656250, 0.156250}, + {0.656250, 0.187500}, + {0.625000, 0.187500}, + {0.625000, 0.125000}, + {0.656250, 0.125000}, + {0.656250, 0.156250}, + {0.625000, 0.156250}, + {0.656250, 0.125000}, + {0.687500, 0.125000}, + {0.687500, 0.156250}, + {0.656250, 0.156250}, + {0.625000, 0.218750}, + {0.656250, 0.218750}, + {0.656250, 0.250000}, + {0.625000, 0.250000}, + {0.625000, 0.187500}, + {0.656250, 0.187500}, + {0.656250, 0.218750}, + {0.625000, 0.218750}, + {0.656250, 0.187500}, + {0.687500, 0.187500}, + {0.687500, 0.218750}, + {0.656250, 0.218750}, + {0.937500, 0.156250}, + {0.968750, 0.156250}, + {0.968750, 0.187500}, + {0.937500, 0.187500}, + {0.937500, 0.125000}, + {0.968750, 0.125000}, + {0.968750, 0.156250}, + {0.937500, 0.156250}, + {0.968750, 0.125000}, + {1.000000, 0.125000}, + {1.000000, 0.156250}, + {0.968750, 0.156250}, + {0.875000, 0.156250}, + {0.906250, 0.156250}, + {0.906250, 0.187500}, + {0.875000, 0.187500}, + {0.875000, 0.125000}, + {0.906250, 0.125000}, + {0.906250, 0.156250}, + {0.875000, 0.156250}, + {0.906250, 0.125000}, + {0.937500, 0.125000}, + {0.937500, 0.156250}, + {0.906250, 0.156250}, + {0.875000, 0.218750}, + {0.906250, 0.218750}, + {0.906250, 0.250000}, + {0.875000, 0.250000}, + {0.875000, 0.187500}, + {0.906250, 0.187500}, + {0.906250, 0.218750}, + {0.875000, 0.218750}, + {0.906250, 0.187500}, + {0.937500, 0.187500}, + {0.937500, 0.218750}, + {0.906250, 0.218750}, + {0.937500, 0.406250}, + {0.968750, 0.406250}, + {0.968750, 0.437500}, + {0.937500, 0.437500}, + {0.937500, 0.375000}, + {0.968750, 0.375000}, + {0.968750, 0.406250}, + {0.937500, 0.406250}, + {0.968750, 0.375000}, + {1.000000, 0.375000}, + {1.000000, 0.406250}, + {0.968750, 0.406250}, + {0.875000, 0.406250}, + {0.906250, 0.406250}, + {0.906250, 0.437500}, + {0.875000, 0.437500}, + {0.875000, 0.375000}, + {0.906250, 0.375000}, + {0.906250, 0.406250}, + {0.875000, 0.406250}, + {0.906250, 0.375000}, + {0.937500, 0.375000}, + {0.937500, 0.406250}, + {0.906250, 0.406250}, + {0.875000, 0.468750}, + {0.906250, 0.468750}, + {0.906250, 0.500000}, + {0.875000, 0.500000}, + {0.875000, 0.437500}, + {0.906250, 0.437500}, + {0.906250, 0.468750}, + {0.875000, 0.468750}, + {0.906250, 0.437500}, + {0.937500, 0.437500}, + {0.937500, 0.468750}, + {0.906250, 0.468750}, + {0.937500, 0.656250}, + {0.968750, 0.656250}, + {0.968750, 0.687500}, + {0.937500, 0.687500}, + {0.937500, 0.625000}, + {0.968750, 0.625000}, + {0.968750, 0.656250}, + {0.937500, 0.656250}, + {0.968750, 0.625000}, + {1.000000, 0.625000}, + {1.000000, 0.656250}, + {0.968750, 0.656250}, + {0.875000, 0.656250}, + {0.906250, 0.656250}, + {0.906250, 0.687500}, + {0.875000, 0.687500}, + {0.875000, 0.625000}, + {0.906250, 0.625000}, + {0.906250, 0.656250}, + {0.875000, 0.656250}, + {0.906250, 0.625000}, + {0.937500, 0.625000}, + {0.937500, 0.656250}, + {0.906250, 0.656250}, + {0.875000, 0.718750}, + {0.906250, 0.718750}, + {0.906250, 0.750000}, + {0.875000, 0.750000}, + {0.875000, 0.687500}, + {0.906250, 0.687500}, + {0.906250, 0.718750}, + {0.875000, 0.718750}, + {0.906250, 0.687500}, + {0.937500, 0.687500}, + {0.937500, 0.718750}, + {0.906250, 0.718750}, + {0.937500, 0.906250}, + {0.968750, 0.906250}, + {0.968750, 0.937500}, + {0.937500, 0.937500}, + {0.937500, 0.875000}, + {0.968750, 0.875000}, + {0.968750, 0.906250}, + {0.937500, 0.906250}, + {0.968750, 0.875000}, + {1.000000, 0.875000}, + {1.000000, 0.906250}, + {0.968750, 0.906250}, + {0.875000, 0.906250}, + {0.906250, 0.906250}, + {0.906250, 0.937500}, + {0.875000, 0.937500}, + {0.875000, 0.875000}, + {0.906250, 0.875000}, + {0.906250, 0.906250}, + {0.875000, 0.906250}, + {0.906250, 0.875000}, + {0.937500, 0.875000}, + {0.937500, 0.906250}, + {0.906250, 0.906250}, + {0.875000, 0.968750}, + {0.906250, 0.968750}, + {0.906250, 1.000000}, + {0.875000, 1.000000}, + {0.875000, 0.937500}, + {0.906250, 0.937500}, + {0.906250, 0.968750}, + {0.875000, 0.968750}, + {0.906250, 0.937500}, + {0.937500, 0.937500}, + {0.937500, 0.968750}, + {0.906250, 0.968750}, + {0.687500, 0.906250}, + {0.718750, 0.906250}, + {0.718750, 0.937500}, + {0.687500, 0.937500}, + {0.687500, 0.875000}, + {0.718750, 0.875000}, + {0.718750, 0.906250}, + {0.687500, 0.906250}, + {0.718750, 0.875000}, + {0.750000, 0.875000}, + {0.750000, 0.906250}, + {0.718750, 0.906250}, + {0.625000, 0.906250}, + {0.656250, 0.906250}, + {0.656250, 0.937500}, + {0.625000, 0.937500}, + {0.625000, 0.875000}, + {0.656250, 0.875000}, + {0.656250, 0.906250}, + {0.625000, 0.906250}, + {0.656250, 0.875000}, + {0.687500, 0.875000}, + {0.687500, 0.906250}, + {0.656250, 0.906250}, + {0.625000, 0.968750}, + {0.656250, 0.968750}, + {0.656250, 1.000000}, + {0.625000, 1.000000}, + {0.625000, 0.937500}, + {0.656250, 0.937500}, + {0.656250, 0.968750}, + {0.625000, 0.968750}, + {0.656250, 0.937500}, + {0.687500, 0.937500}, + {0.687500, 0.968750}, + {0.656250, 0.968750}, + {0.437500, 0.906250}, + {0.468750, 0.906250}, + {0.468750, 0.937500}, + {0.437500, 0.937500}, + {0.437500, 0.875000}, + {0.468750, 0.875000}, + {0.468750, 0.906250}, + {0.437500, 0.906250}, + {0.468750, 0.875000}, + {0.500000, 0.875000}, + {0.500000, 0.906250}, + {0.468750, 0.906250}, + {0.375000, 0.906250}, + {0.406250, 0.906250}, + {0.406250, 0.937500}, + {0.375000, 0.937500}, + {0.375000, 0.875000}, + {0.406250, 0.875000}, + {0.406250, 0.906250}, + {0.375000, 0.906250}, + {0.406250, 0.875000}, + {0.437500, 0.875000}, + {0.437500, 0.906250}, + {0.406250, 0.906250}, + {0.375000, 0.968750}, + {0.406250, 0.968750}, + {0.406250, 1.000000}, + {0.375000, 1.000000}, + {0.375000, 0.937500}, + {0.406250, 0.937500}, + {0.406250, 0.968750}, + {0.375000, 0.968750}, + {0.406250, 0.937500}, + {0.437500, 0.937500}, + {0.437500, 0.968750}, + {0.406250, 0.968750}, + {0.187500, 0.906250}, + {0.218750, 0.906250}, + {0.218750, 0.937500}, + {0.187500, 0.937500}, + {0.187500, 0.875000}, + {0.218750, 0.875000}, + {0.218750, 0.906250}, + {0.187500, 0.906250}, + {0.218750, 0.875000}, + {0.250000, 0.875000}, + {0.250000, 0.906250}, + {0.218750, 0.906250}, + {0.125000, 0.906250}, + {0.156250, 0.906250}, + {0.156250, 0.937500}, + {0.125000, 0.937500}, + {0.125000, 0.875000}, + {0.156250, 0.875000}, + {0.156250, 0.906250}, + {0.125000, 0.906250}, + {0.156250, 0.875000}, + {0.187500, 0.875000}, + {0.187500, 0.906250}, + {0.156250, 0.906250}, + {0.125000, 0.968750}, + {0.156250, 0.968750}, + {0.156250, 1.000000}, + {0.125000, 1.000000}, + {0.125000, 0.937500}, + {0.156250, 0.937500}, + {0.156250, 0.968750}, + {0.125000, 0.968750}, + {0.156250, 0.937500}, + {0.187500, 0.937500}, + {0.187500, 0.968750}, + {0.156250, 0.968750}, + {0.187500, 0.656250}, + {0.218750, 0.656250}, + {0.218750, 0.687500}, + {0.187500, 0.687500}, + {0.187500, 0.625000}, + {0.218750, 0.625000}, + {0.218750, 0.656250}, + {0.187500, 0.656250}, + {0.218750, 0.625000}, + {0.250000, 0.625000}, + {0.250000, 0.656250}, + {0.218750, 0.656250}, + {0.125000, 0.656250}, + {0.156250, 0.656250}, + {0.156250, 0.687500}, + {0.125000, 0.687500}, + {0.125000, 0.625000}, + {0.156250, 0.625000}, + {0.156250, 0.656250}, + {0.125000, 0.656250}, + {0.156250, 0.625000}, + {0.187500, 0.625000}, + {0.187500, 0.656250}, + {0.156250, 0.656250}, + {0.125000, 0.718750}, + {0.156250, 0.718750}, + {0.156250, 0.750000}, + {0.125000, 0.750000}, + {0.125000, 0.687500}, + {0.156250, 0.687500}, + {0.156250, 0.718750}, + {0.125000, 0.718750}, + {0.156250, 0.687500}, + {0.187500, 0.687500}, + {0.187500, 0.718750}, + {0.156250, 0.718750}, + {0.187500, 0.406250}, + {0.218750, 0.406250}, + {0.218750, 0.437500}, + {0.187500, 0.437500}, + {0.187500, 0.375000}, + {0.218750, 0.375000}, + {0.218750, 0.406250}, + {0.187500, 0.406250}, + {0.218750, 0.375000}, + {0.250000, 0.375000}, + {0.250000, 0.406250}, + {0.218750, 0.406250}, + {0.125000, 0.406250}, + {0.156250, 0.406250}, + {0.156250, 0.437500}, + {0.125000, 0.437500}, + {0.125000, 0.375000}, + {0.156250, 0.375000}, + {0.156250, 0.406250}, + {0.125000, 0.406250}, + {0.156250, 0.375000}, + {0.187500, 0.375000}, + {0.187500, 0.406250}, + {0.156250, 0.406250}, + {0.125000, 0.468750}, + {0.156250, 0.468750}, + {0.156250, 0.500000}, + {0.125000, 0.500000}, + {0.125000, 0.437500}, + {0.156250, 0.437500}, + {0.156250, 0.468750}, + {0.125000, 0.468750}, + {0.156250, 0.437500}, + {0.187500, 0.437500}, + {0.187500, 0.468750}, + {0.156250, 0.468750}, + {0.062500, 0.406250}, + {0.093750, 0.406250}, + {0.093750, 0.437500}, + {0.062500, 0.437500}, + {0.062500, 0.375000}, + {0.093750, 0.375000}, + {0.093750, 0.406250}, + {0.062500, 0.406250}, + {0.093750, 0.375000}, + {0.125000, 0.375000}, + {0.125000, 0.406250}, + {0.093750, 0.406250}, + {0.000000, 0.406250}, + {0.031250, 0.406250}, + {0.031250, 0.437500}, + {0.000000, 0.437500}, + {0.000000, 0.375000}, + {0.031250, 0.375000}, + {0.031250, 0.406250}, + {0.000000, 0.406250}, + {0.031250, 0.375000}, + {0.062500, 0.375000}, + {0.062500, 0.406250}, + {0.031250, 0.406250}, + {0.000000, 0.468750}, + {0.031250, 0.468750}, + {0.031250, 0.500000}, + {0.000000, 0.500000}, + {0.000000, 0.437500}, + {0.031250, 0.437500}, + {0.031250, 0.468750}, + {0.000000, 0.468750}, + {0.031250, 0.437500}, + {0.062500, 0.437500}, + {0.062500, 0.468750}, + {0.031250, 0.468750}, + {0.062500, 0.281250}, + {0.093750, 0.281250}, + {0.093750, 0.312500}, + {0.062500, 0.312500}, + {0.062500, 0.250000}, + {0.093750, 0.250000}, + {0.093750, 0.281250}, + {0.062500, 0.281250}, + {0.093750, 0.250000}, + {0.125000, 0.250000}, + {0.125000, 0.281250}, + {0.093750, 0.281250}, + {0.000000, 0.281250}, + {0.031250, 0.281250}, + {0.031250, 0.312500}, + {0.000000, 0.312500}, + {0.000000, 0.250000}, + {0.031250, 0.250000}, + {0.031250, 0.281250}, + {0.000000, 0.281250}, + {0.031250, 0.250000}, + {0.062500, 0.250000}, + {0.062500, 0.281250}, + {0.031250, 0.281250}, + {0.000000, 0.343750}, + {0.031250, 0.343750}, + {0.031250, 0.375000}, + {0.000000, 0.375000}, + {0.000000, 0.312500}, + {0.031250, 0.312500}, + {0.031250, 0.343750}, + {0.000000, 0.343750}, + {0.031250, 0.312500}, + {0.062500, 0.312500}, + {0.062500, 0.343750}, + {0.031250, 0.343750}, + {0.187500, 0.281250}, + {0.218750, 0.281250}, + {0.218750, 0.312500}, + {0.187500, 0.312500}, + {0.187500, 0.250000}, + {0.218750, 0.250000}, + {0.218750, 0.281250}, + {0.187500, 0.281250}, + {0.218750, 0.250000}, + {0.250000, 0.250000}, + {0.250000, 0.281250}, + {0.218750, 0.281250}, + {0.125000, 0.281250}, + {0.156250, 0.281250}, + {0.156250, 0.312500}, + {0.125000, 0.312500}, + {0.125000, 0.250000}, + {0.156250, 0.250000}, + {0.156250, 0.281250}, + {0.125000, 0.281250}, + {0.156250, 0.250000}, + {0.187500, 0.250000}, + {0.187500, 0.281250}, + {0.156250, 0.281250}, + {0.125000, 0.343750}, + {0.156250, 0.343750}, + {0.156250, 0.375000}, + {0.125000, 0.375000}, + {0.125000, 0.312500}, + {0.156250, 0.312500}, + {0.156250, 0.343750}, + {0.125000, 0.343750}, + {0.156250, 0.312500}, + {0.187500, 0.312500}, + {0.187500, 0.343750}, + {0.156250, 0.343750}, + {0.062500, 0.656250}, + {0.093750, 0.656250}, + {0.093750, 0.687500}, + {0.062500, 0.687500}, + {0.062500, 0.625000}, + {0.093750, 0.625000}, + {0.093750, 0.656250}, + {0.062500, 0.656250}, + {0.093750, 0.625000}, + {0.125000, 0.625000}, + {0.125000, 0.656250}, + {0.093750, 0.656250}, + {0.000000, 0.656250}, + {0.031250, 0.656250}, + {0.031250, 0.687500}, + {0.000000, 0.687500}, + {0.000000, 0.625000}, + {0.031250, 0.625000}, + {0.031250, 0.656250}, + {0.000000, 0.656250}, + {0.031250, 0.625000}, + {0.062500, 0.625000}, + {0.062500, 0.656250}, + {0.031250, 0.656250}, + {0.000000, 0.718750}, + {0.031250, 0.718750}, + {0.031250, 0.750000}, + {0.000000, 0.750000}, + {0.000000, 0.687500}, + {0.031250, 0.687500}, + {0.031250, 0.718750}, + {0.000000, 0.718750}, + {0.031250, 0.687500}, + {0.062500, 0.687500}, + {0.062500, 0.718750}, + {0.031250, 0.718750}, + {0.062500, 0.531250}, + {0.093750, 0.531250}, + {0.093750, 0.562500}, + {0.062500, 0.562500}, + {0.062500, 0.500000}, + {0.093750, 0.500000}, + {0.093750, 0.531250}, + {0.062500, 0.531250}, + {0.093750, 0.500000}, + {0.125000, 0.500000}, + {0.125000, 0.531250}, + {0.093750, 0.531250}, + {0.000000, 0.531250}, + {0.031250, 0.531250}, + {0.031250, 0.562500}, + {0.000000, 0.562500}, + {0.000000, 0.500000}, + {0.031250, 0.500000}, + {0.031250, 0.531250}, + {0.000000, 0.531250}, + {0.031250, 0.500000}, + {0.062500, 0.500000}, + {0.062500, 0.531250}, + {0.031250, 0.531250}, + {0.000000, 0.593750}, + {0.031250, 0.593750}, + {0.031250, 0.625000}, + {0.000000, 0.625000}, + {0.000000, 0.562500}, + {0.031250, 0.562500}, + {0.031250, 0.593750}, + {0.000000, 0.593750}, + {0.031250, 0.562500}, + {0.062500, 0.562500}, + {0.062500, 0.593750}, + {0.031250, 0.593750}, + {0.187500, 0.531250}, + {0.218750, 0.531250}, + {0.218750, 0.562500}, + {0.187500, 0.562500}, + {0.187500, 0.500000}, + {0.218750, 0.500000}, + {0.218750, 0.531250}, + {0.187500, 0.531250}, + {0.218750, 0.500000}, + {0.250000, 0.500000}, + {0.250000, 0.531250}, + {0.218750, 0.531250}, + {0.125000, 0.531250}, + {0.156250, 0.531250}, + {0.156250, 0.562500}, + {0.125000, 0.562500}, + {0.125000, 0.500000}, + {0.156250, 0.500000}, + {0.156250, 0.531250}, + {0.125000, 0.531250}, + {0.156250, 0.500000}, + {0.187500, 0.500000}, + {0.187500, 0.531250}, + {0.156250, 0.531250}, + {0.125000, 0.593750}, + {0.156250, 0.593750}, + {0.156250, 0.625000}, + {0.125000, 0.625000}, + {0.125000, 0.562500}, + {0.156250, 0.562500}, + {0.156250, 0.593750}, + {0.125000, 0.593750}, + {0.156250, 0.562500}, + {0.187500, 0.562500}, + {0.187500, 0.593750}, + {0.156250, 0.593750}, + {0.062500, 0.906250}, + {0.093750, 0.906250}, + {0.093750, 0.937500}, + {0.062500, 0.937500}, + {0.062500, 0.875000}, + {0.093750, 0.875000}, + {0.093750, 0.906250}, + {0.062500, 0.906250}, + {0.093750, 0.875000}, + {0.125000, 0.875000}, + {0.125000, 0.906250}, + {0.093750, 0.906250}, + {0.000000, 0.906250}, + {0.031250, 0.906250}, + {0.031250, 0.937500}, + {0.000000, 0.937500}, + {0.000000, 0.875000}, + {0.031250, 0.875000}, + {0.031250, 0.906250}, + {0.000000, 0.906250}, + {0.031250, 0.875000}, + {0.062500, 0.875000}, + {0.062500, 0.906250}, + {0.031250, 0.906250}, + {0.000000, 0.968750}, + {0.031250, 0.968750}, + {0.031250, 1.000000}, + {0.000000, 1.000000}, + {0.000000, 0.937500}, + {0.031250, 0.937500}, + {0.031250, 0.968750}, + {0.000000, 0.968750}, + {0.031250, 0.937500}, + {0.062500, 0.937500}, + {0.062500, 0.968750}, + {0.031250, 0.968750}, + {0.062500, 0.781250}, + {0.093750, 0.781250}, + {0.093750, 0.812500}, + {0.062500, 0.812500}, + {0.062500, 0.750000}, + {0.093750, 0.750000}, + {0.093750, 0.781250}, + {0.062500, 0.781250}, + {0.093750, 0.750000}, + {0.125000, 0.750000}, + {0.125000, 0.781250}, + {0.093750, 0.781250}, + {0.000000, 0.781250}, + {0.031250, 0.781250}, + {0.031250, 0.812500}, + {0.000000, 0.812500}, + {0.000000, 0.750000}, + {0.031250, 0.750000}, + {0.031250, 0.781250}, + {0.000000, 0.781250}, + {0.031250, 0.750000}, + {0.062500, 0.750000}, + {0.062500, 0.781250}, + {0.031250, 0.781250}, + {0.000000, 0.843750}, + {0.031250, 0.843750}, + {0.031250, 0.875000}, + {0.000000, 0.875000}, + {0.000000, 0.812500}, + {0.031250, 0.812500}, + {0.031250, 0.843750}, + {0.000000, 0.843750}, + {0.031250, 0.812500}, + {0.062500, 0.812500}, + {0.062500, 0.843750}, + {0.031250, 0.843750}, + {0.187500, 0.781250}, + {0.218750, 0.781250}, + {0.218750, 0.812500}, + {0.187500, 0.812500}, + {0.187500, 0.750000}, + {0.218750, 0.750000}, + {0.218750, 0.781250}, + {0.187500, 0.781250}, + {0.218750, 0.750000}, + {0.250000, 0.750000}, + {0.250000, 0.781250}, + {0.218750, 0.781250}, + {0.125000, 0.781250}, + {0.156250, 0.781250}, + {0.156250, 0.812500}, + {0.125000, 0.812500}, + {0.125000, 0.750000}, + {0.156250, 0.750000}, + {0.156250, 0.781250}, + {0.125000, 0.781250}, + {0.156250, 0.750000}, + {0.187500, 0.750000}, + {0.187500, 0.781250}, + {0.156250, 0.781250}, + {0.125000, 0.843750}, + {0.156250, 0.843750}, + {0.156250, 0.875000}, + {0.125000, 0.875000}, + {0.125000, 0.812500}, + {0.156250, 0.812500}, + {0.156250, 0.843750}, + {0.125000, 0.843750}, + {0.156250, 0.812500}, + {0.187500, 0.812500}, + {0.187500, 0.843750}, + {0.156250, 0.843750}, + {0.312500, 0.906250}, + {0.343750, 0.906250}, + {0.343750, 0.937500}, + {0.312500, 0.937500}, + {0.312500, 0.875000}, + {0.343750, 0.875000}, + {0.343750, 0.906250}, + {0.312500, 0.906250}, + {0.343750, 0.875000}, + {0.375000, 0.875000}, + {0.375000, 0.906250}, + {0.343750, 0.906250}, + {0.250000, 0.906250}, + {0.281250, 0.906250}, + {0.281250, 0.937500}, + {0.250000, 0.937500}, + {0.250000, 0.875000}, + {0.281250, 0.875000}, + {0.281250, 0.906250}, + {0.250000, 0.906250}, + {0.281250, 0.875000}, + {0.312500, 0.875000}, + {0.312500, 0.906250}, + {0.281250, 0.906250}, + {0.250000, 0.968750}, + {0.281250, 0.968750}, + {0.281250, 1.000000}, + {0.250000, 1.000000}, + {0.250000, 0.937500}, + {0.281250, 0.937500}, + {0.281250, 0.968750}, + {0.250000, 0.968750}, + {0.281250, 0.937500}, + {0.312500, 0.937500}, + {0.312500, 0.968750}, + {0.281250, 0.968750}, + {0.312500, 0.781250}, + {0.343750, 0.781250}, + {0.343750, 0.812500}, + {0.312500, 0.812500}, + {0.312500, 0.750000}, + {0.343750, 0.750000}, + {0.343750, 0.781250}, + {0.312500, 0.781250}, + {0.343750, 0.750000}, + {0.375000, 0.750000}, + {0.375000, 0.781250}, + {0.343750, 0.781250}, + {0.250000, 0.781250}, + {0.281250, 0.781250}, + {0.281250, 0.812500}, + {0.250000, 0.812500}, + {0.250000, 0.750000}, + {0.281250, 0.750000}, + {0.281250, 0.781250}, + {0.250000, 0.781250}, + {0.281250, 0.750000}, + {0.312500, 0.750000}, + {0.312500, 0.781250}, + {0.281250, 0.781250}, + {0.250000, 0.843750}, + {0.281250, 0.843750}, + {0.281250, 0.875000}, + {0.250000, 0.875000}, + {0.250000, 0.812500}, + {0.281250, 0.812500}, + {0.281250, 0.843750}, + {0.250000, 0.843750}, + {0.281250, 0.812500}, + {0.312500, 0.812500}, + {0.312500, 0.843750}, + {0.281250, 0.843750}, + {0.437500, 0.781250}, + {0.468750, 0.781250}, + {0.468750, 0.812500}, + {0.437500, 0.812500}, + {0.437500, 0.750000}, + {0.468750, 0.750000}, + {0.468750, 0.781250}, + {0.437500, 0.781250}, + {0.468750, 0.750000}, + {0.500000, 0.750000}, + {0.500000, 0.781250}, + {0.468750, 0.781250}, + {0.375000, 0.781250}, + {0.406250, 0.781250}, + {0.406250, 0.812500}, + {0.375000, 0.812500}, + {0.375000, 0.750000}, + {0.406250, 0.750000}, + {0.406250, 0.781250}, + {0.375000, 0.781250}, + {0.406250, 0.750000}, + {0.437500, 0.750000}, + {0.437500, 0.781250}, + {0.406250, 0.781250}, + {0.375000, 0.843750}, + {0.406250, 0.843750}, + {0.406250, 0.875000}, + {0.375000, 0.875000}, + {0.375000, 0.812500}, + {0.406250, 0.812500}, + {0.406250, 0.843750}, + {0.375000, 0.843750}, + {0.406250, 0.812500}, + {0.437500, 0.812500}, + {0.437500, 0.843750}, + {0.406250, 0.843750}, + {0.562500, 0.906250}, + {0.593750, 0.906250}, + {0.593750, 0.937500}, + {0.562500, 0.937500}, + {0.562500, 0.875000}, + {0.593750, 0.875000}, + {0.593750, 0.906250}, + {0.562500, 0.906250}, + {0.593750, 0.875000}, + {0.625000, 0.875000}, + {0.625000, 0.906250}, + {0.593750, 0.906250}, + {0.500000, 0.906250}, + {0.531250, 0.906250}, + {0.531250, 0.937500}, + {0.500000, 0.937500}, + {0.500000, 0.875000}, + {0.531250, 0.875000}, + {0.531250, 0.906250}, + {0.500000, 0.906250}, + {0.531250, 0.875000}, + {0.562500, 0.875000}, + {0.562500, 0.906250}, + {0.531250, 0.906250}, + {0.500000, 0.968750}, + {0.531250, 0.968750}, + {0.531250, 1.000000}, + {0.500000, 1.000000}, + {0.500000, 0.937500}, + {0.531250, 0.937500}, + {0.531250, 0.968750}, + {0.500000, 0.968750}, + {0.531250, 0.937500}, + {0.562500, 0.937500}, + {0.562500, 0.968750}, + {0.531250, 0.968750}, + {0.562500, 0.781250}, + {0.593750, 0.781250}, + {0.593750, 0.812500}, + {0.562500, 0.812500}, + {0.562500, 0.750000}, + {0.593750, 0.750000}, + {0.593750, 0.781250}, + {0.562500, 0.781250}, + {0.593750, 0.750000}, + {0.625000, 0.750000}, + {0.625000, 0.781250}, + {0.593750, 0.781250}, + {0.500000, 0.781250}, + {0.531250, 0.781250}, + {0.531250, 0.812500}, + {0.500000, 0.812500}, + {0.500000, 0.750000}, + {0.531250, 0.750000}, + {0.531250, 0.781250}, + {0.500000, 0.781250}, + {0.531250, 0.750000}, + {0.562500, 0.750000}, + {0.562500, 0.781250}, + {0.531250, 0.781250}, + {0.500000, 0.843750}, + {0.531250, 0.843750}, + {0.531250, 0.875000}, + {0.500000, 0.875000}, + {0.500000, 0.812500}, + {0.531250, 0.812500}, + {0.531250, 0.843750}, + {0.500000, 0.843750}, + {0.531250, 0.812500}, + {0.562500, 0.812500}, + {0.562500, 0.843750}, + {0.531250, 0.843750}, + {0.687500, 0.781250}, + {0.718750, 0.781250}, + {0.718750, 0.812500}, + {0.687500, 0.812500}, + {0.687500, 0.750000}, + {0.718750, 0.750000}, + {0.718750, 0.781250}, + {0.687500, 0.781250}, + {0.718750, 0.750000}, + {0.750000, 0.750000}, + {0.750000, 0.781250}, + {0.718750, 0.781250}, + {0.625000, 0.781250}, + {0.656250, 0.781250}, + {0.656250, 0.812500}, + {0.625000, 0.812500}, + {0.625000, 0.750000}, + {0.656250, 0.750000}, + {0.656250, 0.781250}, + {0.625000, 0.781250}, + {0.656250, 0.750000}, + {0.687500, 0.750000}, + {0.687500, 0.781250}, + {0.656250, 0.781250}, + {0.625000, 0.843750}, + {0.656250, 0.843750}, + {0.656250, 0.875000}, + {0.625000, 0.875000}, + {0.625000, 0.812500}, + {0.656250, 0.812500}, + {0.656250, 0.843750}, + {0.625000, 0.843750}, + {0.656250, 0.812500}, + {0.687500, 0.812500}, + {0.687500, 0.843750}, + {0.656250, 0.843750}, + {0.812500, 0.906250}, + {0.843750, 0.906250}, + {0.843750, 0.937500}, + {0.812500, 0.937500}, + {0.812500, 0.875000}, + {0.843750, 0.875000}, + {0.843750, 0.906250}, + {0.812500, 0.906250}, + {0.843750, 0.875000}, + {0.875000, 0.875000}, + {0.875000, 0.906250}, + {0.843750, 0.906250}, + {0.750000, 0.906250}, + {0.781250, 0.906250}, + {0.781250, 0.937500}, + {0.750000, 0.937500}, + {0.750000, 0.875000}, + {0.781250, 0.875000}, + {0.781250, 0.906250}, + {0.750000, 0.906250}, + {0.781250, 0.875000}, + {0.812500, 0.875000}, + {0.812500, 0.906250}, + {0.781250, 0.906250}, + {0.750000, 0.968750}, + {0.781250, 0.968750}, + {0.781250, 1.000000}, + {0.750000, 1.000000}, + {0.750000, 0.937500}, + {0.781250, 0.937500}, + {0.781250, 0.968750}, + {0.750000, 0.968750}, + {0.781250, 0.937500}, + {0.812500, 0.937500}, + {0.812500, 0.968750}, + {0.781250, 0.968750}, + {0.812500, 0.781250}, + {0.843750, 0.781250}, + {0.843750, 0.812500}, + {0.812500, 0.812500}, + {0.812500, 0.750000}, + {0.843750, 0.750000}, + {0.843750, 0.781250}, + {0.812500, 0.781250}, + {0.843750, 0.750000}, + {0.875000, 0.750000}, + {0.875000, 0.781250}, + {0.843750, 0.781250}, + {0.750000, 0.781250}, + {0.781250, 0.781250}, + {0.781250, 0.812500}, + {0.750000, 0.812500}, + {0.750000, 0.750000}, + {0.781250, 0.750000}, + {0.781250, 0.781250}, + {0.750000, 0.781250}, + {0.781250, 0.750000}, + {0.812500, 0.750000}, + {0.812500, 0.781250}, + {0.781250, 0.781250}, + {0.750000, 0.843750}, + {0.781250, 0.843750}, + {0.781250, 0.875000}, + {0.750000, 0.875000}, + {0.750000, 0.812500}, + {0.781250, 0.812500}, + {0.781250, 0.843750}, + {0.750000, 0.843750}, + {0.781250, 0.812500}, + {0.812500, 0.812500}, + {0.812500, 0.843750}, + {0.781250, 0.843750}, + {0.937500, 0.781250}, + {0.968750, 0.781250}, + {0.968750, 0.812500}, + {0.937500, 0.812500}, + {0.937500, 0.750000}, + {0.968750, 0.750000}, + {0.968750, 0.781250}, + {0.937500, 0.781250}, + {0.968750, 0.750000}, + {1.000000, 0.750000}, + {1.000000, 0.781250}, + {0.968750, 0.781250}, + {0.875000, 0.781250}, + {0.906250, 0.781250}, + {0.906250, 0.812500}, + {0.875000, 0.812500}, + {0.875000, 0.750000}, + {0.906250, 0.750000}, + {0.906250, 0.781250}, + {0.875000, 0.781250}, + {0.906250, 0.750000}, + {0.937500, 0.750000}, + {0.937500, 0.781250}, + {0.906250, 0.781250}, + {0.875000, 0.843750}, + {0.906250, 0.843750}, + {0.906250, 0.875000}, + {0.875000, 0.875000}, + {0.875000, 0.812500}, + {0.906250, 0.812500}, + {0.906250, 0.843750}, + {0.875000, 0.843750}, + {0.906250, 0.812500}, + {0.937500, 0.812500}, + {0.937500, 0.843750}, + {0.906250, 0.843750}, + {0.812500, 0.656250}, + {0.843750, 0.656250}, + {0.843750, 0.687500}, + {0.812500, 0.687500}, + {0.812500, 0.625000}, + {0.843750, 0.625000}, + {0.843750, 0.656250}, + {0.812500, 0.656250}, + {0.843750, 0.625000}, + {0.875000, 0.625000}, + {0.875000, 0.656250}, + {0.843750, 0.656250}, + {0.750000, 0.656250}, + {0.781250, 0.656250}, + {0.781250, 0.687500}, + {0.750000, 0.687500}, + {0.750000, 0.625000}, + {0.781250, 0.625000}, + {0.781250, 0.656250}, + {0.750000, 0.656250}, + {0.781250, 0.625000}, + {0.812500, 0.625000}, + {0.812500, 0.656250}, + {0.781250, 0.656250}, + {0.750000, 0.718750}, + {0.781250, 0.718750}, + {0.781250, 0.750000}, + {0.750000, 0.750000}, + {0.750000, 0.687500}, + {0.781250, 0.687500}, + {0.781250, 0.718750}, + {0.750000, 0.718750}, + {0.781250, 0.687500}, + {0.812500, 0.687500}, + {0.812500, 0.718750}, + {0.781250, 0.718750}, + {0.812500, 0.531250}, + {0.843750, 0.531250}, + {0.843750, 0.562500}, + {0.812500, 0.562500}, + {0.812500, 0.500000}, + {0.843750, 0.500000}, + {0.843750, 0.531250}, + {0.812500, 0.531250}, + {0.843750, 0.500000}, + {0.875000, 0.500000}, + {0.875000, 0.531250}, + {0.843750, 0.531250}, + {0.750000, 0.531250}, + {0.781250, 0.531250}, + {0.781250, 0.562500}, + {0.750000, 0.562500}, + {0.750000, 0.500000}, + {0.781250, 0.500000}, + {0.781250, 0.531250}, + {0.750000, 0.531250}, + {0.781250, 0.500000}, + {0.812500, 0.500000}, + {0.812500, 0.531250}, + {0.781250, 0.531250}, + {0.750000, 0.593750}, + {0.781250, 0.593750}, + {0.781250, 0.625000}, + {0.750000, 0.625000}, + {0.750000, 0.562500}, + {0.781250, 0.562500}, + {0.781250, 0.593750}, + {0.750000, 0.593750}, + {0.781250, 0.562500}, + {0.812500, 0.562500}, + {0.812500, 0.593750}, + {0.781250, 0.593750}, + {0.937500, 0.531250}, + {0.968750, 0.531250}, + {0.968750, 0.562500}, + {0.937500, 0.562500}, + {0.937500, 0.500000}, + {0.968750, 0.500000}, + {0.968750, 0.531250}, + {0.937500, 0.531250}, + {0.968750, 0.500000}, + {1.000000, 0.500000}, + {1.000000, 0.531250}, + {0.968750, 0.531250}, + {0.875000, 0.531250}, + {0.906250, 0.531250}, + {0.906250, 0.562500}, + {0.875000, 0.562500}, + {0.875000, 0.500000}, + {0.906250, 0.500000}, + {0.906250, 0.531250}, + {0.875000, 0.531250}, + {0.906250, 0.500000}, + {0.937500, 0.500000}, + {0.937500, 0.531250}, + {0.906250, 0.531250}, + {0.875000, 0.593750}, + {0.906250, 0.593750}, + {0.906250, 0.625000}, + {0.875000, 0.625000}, + {0.875000, 0.562500}, + {0.906250, 0.562500}, + {0.906250, 0.593750}, + {0.875000, 0.593750}, + {0.906250, 0.562500}, + {0.937500, 0.562500}, + {0.937500, 0.593750}, + {0.906250, 0.593750}, + {0.812500, 0.406250}, + {0.843750, 0.406250}, + {0.843750, 0.437500}, + {0.812500, 0.437500}, + {0.812500, 0.375000}, + {0.843750, 0.375000}, + {0.843750, 0.406250}, + {0.812500, 0.406250}, + {0.843750, 0.375000}, + {0.875000, 0.375000}, + {0.875000, 0.406250}, + {0.843750, 0.406250}, + {0.750000, 0.406250}, + {0.781250, 0.406250}, + {0.781250, 0.437500}, + {0.750000, 0.437500}, + {0.750000, 0.375000}, + {0.781250, 0.375000}, + {0.781250, 0.406250}, + {0.750000, 0.406250}, + {0.781250, 0.375000}, + {0.812500, 0.375000}, + {0.812500, 0.406250}, + {0.781250, 0.406250}, + {0.750000, 0.468750}, + {0.781250, 0.468750}, + {0.781250, 0.500000}, + {0.750000, 0.500000}, + {0.750000, 0.437500}, + {0.781250, 0.437500}, + {0.781250, 0.468750}, + {0.750000, 0.468750}, + {0.781250, 0.437500}, + {0.812500, 0.437500}, + {0.812500, 0.468750}, + {0.781250, 0.468750}, + {0.812500, 0.281250}, + {0.843750, 0.281250}, + {0.843750, 0.312500}, + {0.812500, 0.312500}, + {0.812500, 0.250000}, + {0.843750, 0.250000}, + {0.843750, 0.281250}, + {0.812500, 0.281250}, + {0.843750, 0.250000}, + {0.875000, 0.250000}, + {0.875000, 0.281250}, + {0.843750, 0.281250}, + {0.750000, 0.281250}, + {0.781250, 0.281250}, + {0.781250, 0.312500}, + {0.750000, 0.312500}, + {0.750000, 0.250000}, + {0.781250, 0.250000}, + {0.781250, 0.281250}, + {0.750000, 0.281250}, + {0.781250, 0.250000}, + {0.812500, 0.250000}, + {0.812500, 0.281250}, + {0.781250, 0.281250}, + {0.750000, 0.343750}, + {0.781250, 0.343750}, + {0.781250, 0.375000}, + {0.750000, 0.375000}, + {0.750000, 0.312500}, + {0.781250, 0.312500}, + {0.781250, 0.343750}, + {0.750000, 0.343750}, + {0.781250, 0.312500}, + {0.812500, 0.312500}, + {0.812500, 0.343750}, + {0.781250, 0.343750}, + {0.937500, 0.281250}, + {0.968750, 0.281250}, + {0.968750, 0.312500}, + {0.937500, 0.312500}, + {0.937500, 0.250000}, + {0.968750, 0.250000}, + {0.968750, 0.281250}, + {0.937500, 0.281250}, + {0.968750, 0.250000}, + {1.000000, 0.250000}, + {1.000000, 0.281250}, + {0.968750, 0.281250}, + {0.875000, 0.281250}, + {0.906250, 0.281250}, + {0.906250, 0.312500}, + {0.875000, 0.312500}, + {0.875000, 0.250000}, + {0.906250, 0.250000}, + {0.906250, 0.281250}, + {0.875000, 0.281250}, + {0.906250, 0.250000}, + {0.937500, 0.250000}, + {0.937500, 0.281250}, + {0.906250, 0.281250}, + {0.875000, 0.343750}, + {0.906250, 0.343750}, + {0.906250, 0.375000}, + {0.875000, 0.375000}, + {0.875000, 0.312500}, + {0.906250, 0.312500}, + {0.906250, 0.343750}, + {0.875000, 0.343750}, + {0.906250, 0.312500}, + {0.937500, 0.312500}, + {0.937500, 0.343750}, + {0.906250, 0.343750}, + {0.812500, 0.156250}, + {0.843750, 0.156250}, + {0.843750, 0.187500}, + {0.812500, 0.187500}, + {0.812500, 0.125000}, + {0.843750, 0.125000}, + {0.843750, 0.156250}, + {0.812500, 0.156250}, + {0.843750, 0.125000}, + {0.875000, 0.125000}, + {0.875000, 0.156250}, + {0.843750, 0.156250}, + {0.750000, 0.156250}, + {0.781250, 0.156250}, + {0.781250, 0.187500}, + {0.750000, 0.187500}, + {0.750000, 0.125000}, + {0.781250, 0.125000}, + {0.781250, 0.156250}, + {0.750000, 0.156250}, + {0.781250, 0.125000}, + {0.812500, 0.125000}, + {0.812500, 0.156250}, + {0.781250, 0.156250}, + {0.750000, 0.218750}, + {0.781250, 0.218750}, + {0.781250, 0.250000}, + {0.750000, 0.250000}, + {0.750000, 0.187500}, + {0.781250, 0.187500}, + {0.781250, 0.218750}, + {0.750000, 0.218750}, + {0.781250, 0.187500}, + {0.812500, 0.187500}, + {0.812500, 0.218750}, + {0.781250, 0.218750}, + {0.812500, 0.031250}, + {0.843750, 0.031250}, + {0.843750, 0.062500}, + {0.812500, 0.062500}, + {0.812500, 0.000000}, + {0.843750, 0.000000}, + {0.843750, 0.031250}, + {0.812500, 0.031250}, + {0.843750, 0.000000}, + {0.875000, 0.000000}, + {0.875000, 0.031250}, + {0.843750, 0.031250}, + {0.750000, 0.031250}, + {0.781250, 0.031250}, + {0.781250, 0.062500}, + {0.750000, 0.062500}, + {0.750000, 0.000000}, + {0.781250, 0.000000}, + {0.781250, 0.031250}, + {0.750000, 0.031250}, + {0.781250, 0.000000}, + {0.812500, 0.000000}, + {0.812500, 0.031250}, + {0.781250, 0.031250}, + {0.750000, 0.093750}, + {0.781250, 0.093750}, + {0.781250, 0.125000}, + {0.750000, 0.125000}, + {0.750000, 0.062500}, + {0.781250, 0.062500}, + {0.781250, 0.093750}, + {0.750000, 0.093750}, + {0.781250, 0.062500}, + {0.812500, 0.062500}, + {0.812500, 0.093750}, + {0.781250, 0.093750}, + {0.937500, 0.031250}, + {0.968750, 0.031250}, + {0.968750, 0.062500}, + {0.937500, 0.062500}, + {0.937500, 0.000000}, + {0.968750, 0.000000}, + {0.968750, 0.031250}, + {0.937500, 0.031250}, + {0.968750, 0.000000}, + {1.000000, 0.000000}, + {1.000000, 0.031250}, + {0.968750, 0.031250}, + {0.875000, 0.031250}, + {0.906250, 0.031250}, + {0.906250, 0.062500}, + {0.875000, 0.062500}, + {0.875000, 0.000000}, + {0.906250, 0.000000}, + {0.906250, 0.031250}, + {0.875000, 0.031250}, + {0.906250, 0.000000}, + {0.937500, 0.000000}, + {0.937500, 0.031250}, + {0.906250, 0.031250}, + {0.875000, 0.093750}, + {0.906250, 0.093750}, + {0.906250, 0.125000}, + {0.875000, 0.125000}, + {0.875000, 0.062500}, + {0.906250, 0.062500}, + {0.906250, 0.093750}, + {0.875000, 0.093750}, + {0.906250, 0.062500}, + {0.937500, 0.062500}, + {0.937500, 0.093750}, + {0.906250, 0.093750}, + {0.562500, 0.156250}, + {0.593750, 0.156250}, + {0.593750, 0.187500}, + {0.562500, 0.187500}, + {0.562500, 0.125000}, + {0.593750, 0.125000}, + {0.593750, 0.156250}, + {0.562500, 0.156250}, + {0.593750, 0.125000}, + {0.625000, 0.125000}, + {0.625000, 0.156250}, + {0.593750, 0.156250}, + {0.500000, 0.156250}, + {0.531250, 0.156250}, + {0.531250, 0.187500}, + {0.500000, 0.187500}, + {0.500000, 0.125000}, + {0.531250, 0.125000}, + {0.531250, 0.156250}, + {0.500000, 0.156250}, + {0.531250, 0.125000}, + {0.562500, 0.125000}, + {0.562500, 0.156250}, + {0.531250, 0.156250}, + {0.500000, 0.218750}, + {0.531250, 0.218750}, + {0.531250, 0.250000}, + {0.500000, 0.250000}, + {0.500000, 0.187500}, + {0.531250, 0.187500}, + {0.531250, 0.218750}, + {0.500000, 0.218750}, + {0.531250, 0.187500}, + {0.562500, 0.187500}, + {0.562500, 0.218750}, + {0.531250, 0.218750}, + {0.562500, 0.031250}, + {0.593750, 0.031250}, + {0.593750, 0.062500}, + {0.562500, 0.062500}, + {0.562500, 0.000000}, + {0.593750, 0.000000}, + {0.593750, 0.031250}, + {0.562500, 0.031250}, + {0.593750, 0.000000}, + {0.625000, 0.000000}, + {0.625000, 0.031250}, + {0.593750, 0.031250}, + {0.500000, 0.031250}, + {0.531250, 0.031250}, + {0.531250, 0.062500}, + {0.500000, 0.062500}, + {0.500000, 0.000000}, + {0.531250, 0.000000}, + {0.531250, 0.031250}, + {0.500000, 0.031250}, + {0.531250, 0.000000}, + {0.562500, 0.000000}, + {0.562500, 0.031250}, + {0.531250, 0.031250}, + {0.500000, 0.093750}, + {0.531250, 0.093750}, + {0.531250, 0.125000}, + {0.500000, 0.125000}, + {0.500000, 0.062500}, + {0.531250, 0.062500}, + {0.531250, 0.093750}, + {0.500000, 0.093750}, + {0.531250, 0.062500}, + {0.562500, 0.062500}, + {0.562500, 0.093750}, + {0.531250, 0.093750}, + {0.687500, 0.031250}, + {0.718750, 0.031250}, + {0.718750, 0.062500}, + {0.687500, 0.062500}, + {0.687500, 0.000000}, + {0.718750, 0.000000}, + {0.718750, 0.031250}, + {0.687500, 0.031250}, + {0.718750, 0.000000}, + {0.750000, 0.000000}, + {0.750000, 0.031250}, + {0.718750, 0.031250}, + {0.625000, 0.031250}, + {0.656250, 0.031250}, + {0.656250, 0.062500}, + {0.625000, 0.062500}, + {0.625000, 0.000000}, + {0.656250, 0.000000}, + {0.656250, 0.031250}, + {0.625000, 0.031250}, + {0.656250, 0.000000}, + {0.687500, 0.000000}, + {0.687500, 0.031250}, + {0.656250, 0.031250}, + {0.625000, 0.093750}, + {0.656250, 0.093750}, + {0.656250, 0.125000}, + {0.625000, 0.125000}, + {0.625000, 0.062500}, + {0.656250, 0.062500}, + {0.656250, 0.093750}, + {0.625000, 0.093750}, + {0.656250, 0.062500}, + {0.687500, 0.062500}, + {0.687500, 0.093750}, + {0.656250, 0.093750}, + {0.312500, 0.156250}, + {0.343750, 0.156250}, + {0.343750, 0.187500}, + {0.312500, 0.187500}, + {0.312500, 0.125000}, + {0.343750, 0.125000}, + {0.343750, 0.156250}, + {0.312500, 0.156250}, + {0.343750, 0.125000}, + {0.375000, 0.125000}, + {0.375000, 0.156250}, + {0.343750, 0.156250}, + {0.250000, 0.156250}, + {0.281250, 0.156250}, + {0.281250, 0.187500}, + {0.250000, 0.187500}, + {0.250000, 0.125000}, + {0.281250, 0.125000}, + {0.281250, 0.156250}, + {0.250000, 0.156250}, + {0.281250, 0.125000}, + {0.312500, 0.125000}, + {0.312500, 0.156250}, + {0.281250, 0.156250}, + {0.250000, 0.218750}, + {0.281250, 0.218750}, + {0.281250, 0.250000}, + {0.250000, 0.250000}, + {0.250000, 0.187500}, + {0.281250, 0.187500}, + {0.281250, 0.218750}, + {0.250000, 0.218750}, + {0.281250, 0.187500}, + {0.312500, 0.187500}, + {0.312500, 0.218750}, + {0.281250, 0.218750}, + {0.312500, 0.031250}, + {0.343750, 0.031250}, + {0.343750, 0.062500}, + {0.312500, 0.062500}, + {0.312500, 0.000000}, + {0.343750, 0.000000}, + {0.343750, 0.031250}, + {0.312500, 0.031250}, + {0.343750, 0.000000}, + {0.375000, 0.000000}, + {0.375000, 0.031250}, + {0.343750, 0.031250}, + {0.250000, 0.031250}, + {0.281250, 0.031250}, + {0.281250, 0.062500}, + {0.250000, 0.062500}, + {0.250000, 0.000000}, + {0.281250, 0.000000}, + {0.281250, 0.031250}, + {0.250000, 0.031250}, + {0.281250, 0.000000}, + {0.312500, 0.000000}, + {0.312500, 0.031250}, + {0.281250, 0.031250}, + {0.250000, 0.093750}, + {0.281250, 0.093750}, + {0.281250, 0.125000}, + {0.250000, 0.125000}, + {0.250000, 0.062500}, + {0.281250, 0.062500}, + {0.281250, 0.093750}, + {0.250000, 0.093750}, + {0.281250, 0.062500}, + {0.312500, 0.062500}, + {0.312500, 0.093750}, + {0.281250, 0.093750}, + {0.437500, 0.031250}, + {0.468750, 0.031250}, + {0.468750, 0.062500}, + {0.437500, 0.062500}, + {0.437500, 0.000000}, + {0.468750, 0.000000}, + {0.468750, 0.031250}, + {0.437500, 0.031250}, + {0.468750, 0.000000}, + {0.500000, 0.000000}, + {0.500000, 0.031250}, + {0.468750, 0.031250}, + {0.375000, 0.031250}, + {0.406250, 0.031250}, + {0.406250, 0.062500}, + {0.375000, 0.062500}, + {0.375000, 0.000000}, + {0.406250, 0.000000}, + {0.406250, 0.031250}, + {0.375000, 0.031250}, + {0.406250, 0.000000}, + {0.437500, 0.000000}, + {0.437500, 0.031250}, + {0.406250, 0.031250}, + {0.375000, 0.093750}, + {0.406250, 0.093750}, + {0.406250, 0.125000}, + {0.375000, 0.125000}, + {0.375000, 0.062500}, + {0.406250, 0.062500}, + {0.406250, 0.093750}, + {0.375000, 0.093750}, + {0.406250, 0.062500}, + {0.437500, 0.062500}, + {0.437500, 0.093750}, + {0.406250, 0.093750}, + {0.062500, 0.156250}, + {0.093750, 0.156250}, + {0.093750, 0.187500}, + {0.062500, 0.187500}, + {0.062500, 0.125000}, + {0.093750, 0.125000}, + {0.093750, 0.156250}, + {0.062500, 0.156250}, + {0.093750, 0.125000}, + {0.125000, 0.125000}, + {0.125000, 0.156250}, + {0.093750, 0.156250}, + {0.000000, 0.156250}, + {0.031250, 0.156250}, + {0.031250, 0.187500}, + {0.000000, 0.187500}, + {0.000000, 0.125000}, + {0.031250, 0.125000}, + {0.031250, 0.156250}, + {0.000000, 0.156250}, + {0.031250, 0.125000}, + {0.062500, 0.125000}, + {0.062500, 0.156250}, + {0.031250, 0.156250}, + {0.000000, 0.218750}, + {0.031250, 0.218750}, + {0.031250, 0.250000}, + {0.000000, 0.250000}, + {0.000000, 0.187500}, + {0.031250, 0.187500}, + {0.031250, 0.218750}, + {0.000000, 0.218750}, + {0.031250, 0.187500}, + {0.062500, 0.187500}, + {0.062500, 0.218750}, + {0.031250, 0.218750}, + {0.062500, 0.031250}, + {0.093750, 0.031250}, + {0.093750, 0.062500}, + {0.062500, 0.062500}, + {0.062500, 0.000000}, + {0.093750, 0.000000}, + {0.093750, 0.031250}, + {0.062500, 0.031250}, + {0.093750, 0.000000}, + {0.125000, 0.000000}, + {0.125000, 0.031250}, + {0.093750, 0.031250}, + {0.000000, 0.031250}, + {0.031250, 0.031250}, + {0.031250, 0.062500}, + {0.000000, 0.062500}, + {0.000000, 0.000000}, + {0.031250, 0.000000}, + {0.031250, 0.031250}, + {0.000000, 0.031250}, + {0.031250, 0.000000}, + {0.062500, 0.000000}, + {0.062500, 0.031250}, + {0.031250, 0.031250}, + {0.000000, 0.093750}, + {0.031250, 0.093750}, + {0.031250, 0.125000}, + {0.000000, 0.125000}, + {0.000000, 0.062500}, + {0.031250, 0.062500}, + {0.031250, 0.093750}, + {0.000000, 0.093750}, + {0.031250, 0.062500}, + {0.062500, 0.062500}, + {0.062500, 0.093750}, + {0.031250, 0.093750}, + {0.187500, 0.031250}, + {0.218750, 0.031250}, + {0.218750, 0.062500}, + {0.187500, 0.062500}, + {0.187500, 0.000000}, + {0.218750, 0.000000}, + {0.218750, 0.031250}, + {0.187500, 0.031250}, + {0.218750, 0.000000}, + {0.250000, 0.000000}, + {0.250000, 0.031250}, + {0.218750, 0.031250}, + {0.125000, 0.031250}, + {0.156250, 0.031250}, + {0.156250, 0.062500}, + {0.125000, 0.062500}, + {0.125000, 0.000000}, + {0.156250, 0.000000}, + {0.156250, 0.031250}, + {0.125000, 0.031250}, + {0.156250, 0.000000}, + {0.187500, 0.000000}, + {0.187500, 0.031250}, + {0.156250, 0.031250}, + {0.125000, 0.093750}, + {0.156250, 0.093750}, + {0.156250, 0.125000}, + {0.125000, 0.125000}, + {0.125000, 0.062500}, + {0.156250, 0.062500}, + {0.156250, 0.093750}, + {0.125000, 0.093750}, + {0.156250, 0.062500}, + {0.187500, 0.062500}, + {0.187500, 0.093750}, + {0.156250, 0.093750}, + {0.562500, 0.656250}, + {0.593750, 0.656250}, + {0.593750, 0.687500}, + {0.562500, 0.687500}, + {0.562500, 0.625000}, + {0.593750, 0.625000}, + {0.593750, 0.656250}, + {0.562500, 0.656250}, + {0.593750, 0.625000}, + {0.625000, 0.625000}, + {0.625000, 0.656250}, + {0.593750, 0.656250}, + {0.500000, 0.656250}, + {0.531250, 0.656250}, + {0.531250, 0.687500}, + {0.500000, 0.687500}, + {0.500000, 0.625000}, + {0.531250, 0.625000}, + {0.531250, 0.656250}, + {0.500000, 0.656250}, + {0.531250, 0.625000}, + {0.562500, 0.625000}, + {0.562500, 0.656250}, + {0.531250, 0.656250}, + {0.500000, 0.718750}, + {0.531250, 0.718750}, + {0.531250, 0.750000}, + {0.500000, 0.750000}, + {0.500000, 0.687500}, + {0.531250, 0.687500}, + {0.531250, 0.718750}, + {0.500000, 0.718750}, + {0.531250, 0.687500}, + {0.562500, 0.687500}, + {0.562500, 0.718750}, + {0.531250, 0.718750}, + {0.562500, 0.531250}, + {0.593750, 0.531250}, + {0.593750, 0.562500}, + {0.562500, 0.562500}, + {0.562500, 0.500000}, + {0.593750, 0.500000}, + {0.593750, 0.531250}, + {0.562500, 0.531250}, + {0.593750, 0.500000}, + {0.625000, 0.500000}, + {0.625000, 0.531250}, + {0.593750, 0.531250}, + {0.500000, 0.531250}, + {0.531250, 0.531250}, + {0.531250, 0.562500}, + {0.500000, 0.562500}, + {0.500000, 0.500000}, + {0.531250, 0.500000}, + {0.531250, 0.531250}, + {0.500000, 0.531250}, + {0.531250, 0.500000}, + {0.562500, 0.500000}, + {0.562500, 0.531250}, + {0.531250, 0.531250}, + {0.500000, 0.593750}, + {0.531250, 0.593750}, + {0.531250, 0.625000}, + {0.500000, 0.625000}, + {0.500000, 0.562500}, + {0.531250, 0.562500}, + {0.531250, 0.593750}, + {0.500000, 0.593750}, + {0.531250, 0.562500}, + {0.562500, 0.562500}, + {0.562500, 0.593750}, + {0.531250, 0.593750}, + {0.687500, 0.531250}, + {0.718750, 0.531250}, + {0.718750, 0.562500}, + {0.687500, 0.562500}, + {0.687500, 0.500000}, + {0.718750, 0.500000}, + {0.718750, 0.531250}, + {0.687500, 0.531250}, + {0.718750, 0.500000}, + {0.750000, 0.500000}, + {0.750000, 0.531250}, + {0.718750, 0.531250}, + {0.625000, 0.531250}, + {0.656250, 0.531250}, + {0.656250, 0.562500}, + {0.625000, 0.562500}, + {0.625000, 0.500000}, + {0.656250, 0.500000}, + {0.656250, 0.531250}, + {0.625000, 0.531250}, + {0.656250, 0.500000}, + {0.687500, 0.500000}, + {0.687500, 0.531250}, + {0.656250, 0.531250}, + {0.625000, 0.593750}, + {0.656250, 0.593750}, + {0.656250, 0.625000}, + {0.625000, 0.625000}, + {0.625000, 0.562500}, + {0.656250, 0.562500}, + {0.656250, 0.593750}, + {0.625000, 0.593750}, + {0.656250, 0.562500}, + {0.687500, 0.562500}, + {0.687500, 0.593750}, + {0.656250, 0.593750}, + {0.312500, 0.656250}, + {0.343750, 0.656250}, + {0.343750, 0.687500}, + {0.312500, 0.687500}, + {0.312500, 0.625000}, + {0.343750, 0.625000}, + {0.343750, 0.656250}, + {0.312500, 0.656250}, + {0.343750, 0.625000}, + {0.375000, 0.625000}, + {0.375000, 0.656250}, + {0.343750, 0.656250}, + {0.250000, 0.656250}, + {0.281250, 0.656250}, + {0.281250, 0.687500}, + {0.250000, 0.687500}, + {0.250000, 0.625000}, + {0.281250, 0.625000}, + {0.281250, 0.656250}, + {0.250000, 0.656250}, + {0.281250, 0.625000}, + {0.312500, 0.625000}, + {0.312500, 0.656250}, + {0.281250, 0.656250}, + {0.250000, 0.718750}, + {0.281250, 0.718750}, + {0.281250, 0.750000}, + {0.250000, 0.750000}, + {0.250000, 0.687500}, + {0.281250, 0.687500}, + {0.281250, 0.718750}, + {0.250000, 0.718750}, + {0.281250, 0.687500}, + {0.312500, 0.687500}, + {0.312500, 0.718750}, + {0.281250, 0.718750}, + {0.312500, 0.531250}, + {0.343750, 0.531250}, + {0.343750, 0.562500}, + {0.312500, 0.562500}, + {0.312500, 0.500000}, + {0.343750, 0.500000}, + {0.343750, 0.531250}, + {0.312500, 0.531250}, + {0.343750, 0.500000}, + {0.375000, 0.500000}, + {0.375000, 0.531250}, + {0.343750, 0.531250}, + {0.250000, 0.531250}, + {0.281250, 0.531250}, + {0.281250, 0.562500}, + {0.250000, 0.562500}, + {0.250000, 0.500000}, + {0.281250, 0.500000}, + {0.281250, 0.531250}, + {0.250000, 0.531250}, + {0.281250, 0.500000}, + {0.312500, 0.500000}, + {0.312500, 0.531250}, + {0.281250, 0.531250}, + {0.250000, 0.593750}, + {0.281250, 0.593750}, + {0.281250, 0.625000}, + {0.250000, 0.625000}, + {0.250000, 0.562500}, + {0.281250, 0.562500}, + {0.281250, 0.593750}, + {0.250000, 0.593750}, + {0.281250, 0.562500}, + {0.312500, 0.562500}, + {0.312500, 0.593750}, + {0.281250, 0.593750}, + {0.437500, 0.531250}, + {0.468750, 0.531250}, + {0.468750, 0.562500}, + {0.437500, 0.562500}, + {0.437500, 0.500000}, + {0.468750, 0.500000}, + {0.468750, 0.531250}, + {0.437500, 0.531250}, + {0.468750, 0.500000}, + {0.500000, 0.500000}, + {0.500000, 0.531250}, + {0.468750, 0.531250}, + {0.375000, 0.531250}, + {0.406250, 0.531250}, + {0.406250, 0.562500}, + {0.375000, 0.562500}, + {0.375000, 0.500000}, + {0.406250, 0.500000}, + {0.406250, 0.531250}, + {0.375000, 0.531250}, + {0.406250, 0.500000}, + {0.437500, 0.500000}, + {0.437500, 0.531250}, + {0.406250, 0.531250}, + {0.375000, 0.593750}, + {0.406250, 0.593750}, + {0.406250, 0.625000}, + {0.375000, 0.625000}, + {0.375000, 0.562500}, + {0.406250, 0.562500}, + {0.406250, 0.593750}, + {0.375000, 0.593750}, + {0.406250, 0.562500}, + {0.437500, 0.562500}, + {0.437500, 0.593750}, + {0.406250, 0.593750}, + {0.562500, 0.406250}, + {0.593750, 0.406250}, + {0.593750, 0.437500}, + {0.562500, 0.437500}, + {0.562500, 0.375000}, + {0.593750, 0.375000}, + {0.593750, 0.406250}, + {0.562500, 0.406250}, + {0.593750, 0.375000}, + {0.625000, 0.375000}, + {0.625000, 0.406250}, + {0.593750, 0.406250}, + {0.500000, 0.406250}, + {0.531250, 0.406250}, + {0.531250, 0.437500}, + {0.500000, 0.437500}, + {0.500000, 0.375000}, + {0.531250, 0.375000}, + {0.531250, 0.406250}, + {0.500000, 0.406250}, + {0.531250, 0.375000}, + {0.562500, 0.375000}, + {0.562500, 0.406250}, + {0.531250, 0.406250}, + {0.500000, 0.468750}, + {0.531250, 0.468750}, + {0.531250, 0.500000}, + {0.500000, 0.500000}, + {0.500000, 0.437500}, + {0.531250, 0.437500}, + {0.531250, 0.468750}, + {0.500000, 0.468750}, + {0.531250, 0.437500}, + {0.562500, 0.437500}, + {0.562500, 0.468750}, + {0.531250, 0.468750}, + {0.562500, 0.281250}, + {0.593750, 0.281250}, + {0.593750, 0.312500}, + {0.562500, 0.312500}, + {0.562500, 0.250000}, + {0.593750, 0.250000}, + {0.593750, 0.281250}, + {0.562500, 0.281250}, + {0.593750, 0.250000}, + {0.625000, 0.250000}, + {0.625000, 0.281250}, + {0.593750, 0.281250}, + {0.500000, 0.281250}, + {0.531250, 0.281250}, + {0.531250, 0.312500}, + {0.500000, 0.312500}, + {0.500000, 0.250000}, + {0.531250, 0.250000}, + {0.531250, 0.281250}, + {0.500000, 0.281250}, + {0.531250, 0.250000}, + {0.562500, 0.250000}, + {0.562500, 0.281250}, + {0.531250, 0.281250}, + {0.500000, 0.343750}, + {0.531250, 0.343750}, + {0.531250, 0.375000}, + {0.500000, 0.375000}, + {0.500000, 0.312500}, + {0.531250, 0.312500}, + {0.531250, 0.343750}, + {0.500000, 0.343750}, + {0.531250, 0.312500}, + {0.562500, 0.312500}, + {0.562500, 0.343750}, + {0.531250, 0.343750}, + {0.687500, 0.281250}, + {0.718750, 0.281250}, + {0.718750, 0.312500}, + {0.687500, 0.312500}, + {0.687500, 0.250000}, + {0.718750, 0.250000}, + {0.718750, 0.281250}, + {0.687500, 0.281250}, + {0.718750, 0.250000}, + {0.750000, 0.250000}, + {0.750000, 0.281250}, + {0.718750, 0.281250}, + {0.625000, 0.281250}, + {0.656250, 0.281250}, + {0.656250, 0.312500}, + {0.625000, 0.312500}, + {0.625000, 0.250000}, + {0.656250, 0.250000}, + {0.656250, 0.281250}, + {0.625000, 0.281250}, + {0.656250, 0.250000}, + {0.687500, 0.250000}, + {0.687500, 0.281250}, + {0.656250, 0.281250}, + {0.625000, 0.343750}, + {0.656250, 0.343750}, + {0.656250, 0.375000}, + {0.625000, 0.375000}, + {0.625000, 0.312500}, + {0.656250, 0.312500}, + {0.656250, 0.343750}, + {0.625000, 0.343750}, + {0.656250, 0.312500}, + {0.687500, 0.312500}, + {0.687500, 0.343750}, + {0.656250, 0.343750}, + {0.312500, 0.406250}, + {0.343750, 0.406250}, + {0.343750, 0.437500}, + {0.312500, 0.437500}, + {0.312500, 0.375000}, + {0.343750, 0.375000}, + {0.343750, 0.406250}, + {0.312500, 0.406250}, + {0.343750, 0.375000}, + {0.375000, 0.375000}, + {0.375000, 0.406250}, + {0.343750, 0.406250}, + {0.250000, 0.406250}, + {0.281250, 0.406250}, + {0.281250, 0.437500}, + {0.250000, 0.437500}, + {0.250000, 0.375000}, + {0.281250, 0.375000}, + {0.281250, 0.406250}, + {0.250000, 0.406250}, + {0.281250, 0.375000}, + {0.312500, 0.375000}, + {0.312500, 0.406250}, + {0.281250, 0.406250}, + {0.250000, 0.468750}, + {0.281250, 0.468750}, + {0.281250, 0.500000}, + {0.250000, 0.500000}, + {0.250000, 0.437500}, + {0.281250, 0.437500}, + {0.281250, 0.468750}, + {0.250000, 0.468750}, + {0.281250, 0.437500}, + {0.312500, 0.437500}, + {0.312500, 0.468750}, + {0.281250, 0.468750}, + {0.312500, 0.281250}, + {0.343750, 0.281250}, + {0.343750, 0.312500}, + {0.312500, 0.312500}, + {0.312500, 0.250000}, + {0.343750, 0.250000}, + {0.343750, 0.281250}, + {0.312500, 0.281250}, + {0.343750, 0.250000}, + {0.375000, 0.250000}, + {0.375000, 0.281250}, + {0.343750, 0.281250}, + {0.250000, 0.281250}, + {0.281250, 0.281250}, + {0.281250, 0.312500}, + {0.250000, 0.312500}, + {0.250000, 0.250000}, + {0.281250, 0.250000}, + {0.281250, 0.281250}, + {0.250000, 0.281250}, + {0.281250, 0.250000}, + {0.312500, 0.250000}, + {0.312500, 0.281250}, + {0.281250, 0.281250}, + {0.250000, 0.343750}, + {0.281250, 0.343750}, + {0.281250, 0.375000}, + {0.250000, 0.375000}, + {0.250000, 0.312500}, + {0.281250, 0.312500}, + {0.281250, 0.343750}, + {0.250000, 0.343750}, + {0.281250, 0.312500}, + {0.312500, 0.312500}, + {0.312500, 0.343750}, + {0.281250, 0.343750}, + {0.437500, 0.281250}, + {0.468750, 0.281250}, + {0.468750, 0.312500}, + {0.437500, 0.312500}, + {0.437500, 0.250000}, + {0.468750, 0.250000}, + {0.468750, 0.281250}, + {0.437500, 0.281250}, + {0.468750, 0.250000}, + {0.500000, 0.250000}, + {0.500000, 0.281250}, + {0.468750, 0.281250}, + {0.375000, 0.281250}, + {0.406250, 0.281250}, + {0.406250, 0.312500}, + {0.375000, 0.312500}, + {0.375000, 0.250000}, + {0.406250, 0.250000}, + {0.406250, 0.281250}, + {0.375000, 0.281250}, + {0.406250, 0.250000}, + {0.437500, 0.250000}, + {0.437500, 0.281250}, + {0.406250, 0.281250}, + {0.375000, 0.343750}, + {0.406250, 0.343750}, + {0.406250, 0.375000}, + {0.375000, 0.375000}, + {0.375000, 0.312500}, + {0.406250, 0.312500}, + {0.406250, 0.343750}, + {0.375000, 0.343750}, + {0.406250, 0.312500}, + {0.437500, 0.312500}, + {0.437500, 0.343750}, + {0.406250, 0.343750}, + {0.437500, 0.343750}, + {0.468750, 0.343750}, + {0.468750, 0.375000}, + {0.437500, 0.375000}, + {0.437500, 0.312500}, + {0.468750, 0.312500}, + {0.468750, 0.343750}, + {0.437500, 0.343750}, + {0.468750, 0.312500}, + {0.500000, 0.312500}, + {0.500000, 0.343750}, + {0.468750, 0.343750}, + {0.312500, 0.343750}, + {0.343750, 0.343750}, + {0.343750, 0.375000}, + {0.312500, 0.375000}, + {0.312500, 0.312500}, + {0.343750, 0.312500}, + {0.343750, 0.343750}, + {0.312500, 0.343750}, + {0.343750, 0.312500}, + {0.375000, 0.312500}, + {0.375000, 0.343750}, + {0.343750, 0.343750}, + {0.312500, 0.468750}, + {0.343750, 0.468750}, + {0.343750, 0.500000}, + {0.312500, 0.500000}, + {0.312500, 0.437500}, + {0.343750, 0.437500}, + {0.343750, 0.468750}, + {0.312500, 0.468750}, + {0.343750, 0.437500}, + {0.375000, 0.437500}, + {0.375000, 0.468750}, + {0.343750, 0.468750}, + {0.687500, 0.343750}, + {0.718750, 0.343750}, + {0.718750, 0.375000}, + {0.687500, 0.375000}, + {0.687500, 0.312500}, + {0.718750, 0.312500}, + {0.718750, 0.343750}, + {0.687500, 0.343750}, + {0.718750, 0.312500}, + {0.750000, 0.312500}, + {0.750000, 0.343750}, + {0.718750, 0.343750}, + {0.562500, 0.343750}, + {0.593750, 0.343750}, + {0.593750, 0.375000}, + {0.562500, 0.375000}, + {0.562500, 0.312500}, + {0.593750, 0.312500}, + {0.593750, 0.343750}, + {0.562500, 0.343750}, + {0.593750, 0.312500}, + {0.625000, 0.312500}, + {0.625000, 0.343750}, + {0.593750, 0.343750}, + {0.562500, 0.468750}, + {0.593750, 0.468750}, + {0.593750, 0.500000}, + {0.562500, 0.500000}, + {0.562500, 0.437500}, + {0.593750, 0.437500}, + {0.593750, 0.468750}, + {0.562500, 0.468750}, + {0.593750, 0.437500}, + {0.625000, 0.437500}, + {0.625000, 0.468750}, + {0.593750, 0.468750}, + {0.437500, 0.593750}, + {0.468750, 0.593750}, + {0.468750, 0.625000}, + {0.437500, 0.625000}, + {0.437500, 0.562500}, + {0.468750, 0.562500}, + {0.468750, 0.593750}, + {0.437500, 0.593750}, + {0.468750, 0.562500}, + {0.500000, 0.562500}, + {0.500000, 0.593750}, + {0.468750, 0.593750}, + {0.312500, 0.593750}, + {0.343750, 0.593750}, + {0.343750, 0.625000}, + {0.312500, 0.625000}, + {0.312500, 0.562500}, + {0.343750, 0.562500}, + {0.343750, 0.593750}, + {0.312500, 0.593750}, + {0.343750, 0.562500}, + {0.375000, 0.562500}, + {0.375000, 0.593750}, + {0.343750, 0.593750}, + {0.312500, 0.718750}, + {0.343750, 0.718750}, + {0.343750, 0.750000}, + {0.312500, 0.750000}, + {0.312500, 0.687500}, + {0.343750, 0.687500}, + {0.343750, 0.718750}, + {0.312500, 0.718750}, + {0.343750, 0.687500}, + {0.375000, 0.687500}, + {0.375000, 0.718750}, + {0.343750, 0.718750}, + {0.687500, 0.593750}, + {0.718750, 0.593750}, + {0.718750, 0.625000}, + {0.687500, 0.625000}, + {0.687500, 0.562500}, + {0.718750, 0.562500}, + {0.718750, 0.593750}, + {0.687500, 0.593750}, + {0.718750, 0.562500}, + {0.750000, 0.562500}, + {0.750000, 0.593750}, + {0.718750, 0.593750}, + {0.562500, 0.593750}, + {0.593750, 0.593750}, + {0.593750, 0.625000}, + {0.562500, 0.625000}, + {0.562500, 0.562500}, + {0.593750, 0.562500}, + {0.593750, 0.593750}, + {0.562500, 0.593750}, + {0.593750, 0.562500}, + {0.625000, 0.562500}, + {0.625000, 0.593750}, + {0.593750, 0.593750}, + {0.562500, 0.718750}, + {0.593750, 0.718750}, + {0.593750, 0.750000}, + {0.562500, 0.750000}, + {0.562500, 0.687500}, + {0.593750, 0.687500}, + {0.593750, 0.718750}, + {0.562500, 0.718750}, + {0.593750, 0.687500}, + {0.625000, 0.687500}, + {0.625000, 0.718750}, + {0.593750, 0.718750}, + {0.187500, 0.093750}, + {0.218750, 0.093750}, + {0.218750, 0.125000}, + {0.187500, 0.125000}, + {0.187500, 0.062500}, + {0.218750, 0.062500}, + {0.218750, 0.093750}, + {0.187500, 0.093750}, + {0.218750, 0.062500}, + {0.250000, 0.062500}, + {0.250000, 0.093750}, + {0.218750, 0.093750}, + {0.062500, 0.093750}, + {0.093750, 0.093750}, + {0.093750, 0.125000}, + {0.062500, 0.125000}, + {0.062500, 0.062500}, + {0.093750, 0.062500}, + {0.093750, 0.093750}, + {0.062500, 0.093750}, + {0.093750, 0.062500}, + {0.125000, 0.062500}, + {0.125000, 0.093750}, + {0.093750, 0.093750}, + {0.062500, 0.218750}, + {0.093750, 0.218750}, + {0.093750, 0.250000}, + {0.062500, 0.250000}, + {0.062500, 0.187500}, + {0.093750, 0.187500}, + {0.093750, 0.218750}, + {0.062500, 0.218750}, + {0.093750, 0.187500}, + {0.125000, 0.187500}, + {0.125000, 0.218750}, + {0.093750, 0.218750}, + {0.437500, 0.093750}, + {0.468750, 0.093750}, + {0.468750, 0.125000}, + {0.437500, 0.125000}, + {0.437500, 0.062500}, + {0.468750, 0.062500}, + {0.468750, 0.093750}, + {0.437500, 0.093750}, + {0.468750, 0.062500}, + {0.500000, 0.062500}, + {0.500000, 0.093750}, + {0.468750, 0.093750}, + {0.312500, 0.093750}, + {0.343750, 0.093750}, + {0.343750, 0.125000}, + {0.312500, 0.125000}, + {0.312500, 0.062500}, + {0.343750, 0.062500}, + {0.343750, 0.093750}, + {0.312500, 0.093750}, + {0.343750, 0.062500}, + {0.375000, 0.062500}, + {0.375000, 0.093750}, + {0.343750, 0.093750}, + {0.312500, 0.218750}, + {0.343750, 0.218750}, + {0.343750, 0.250000}, + {0.312500, 0.250000}, + {0.312500, 0.187500}, + {0.343750, 0.187500}, + {0.343750, 0.218750}, + {0.312500, 0.218750}, + {0.343750, 0.187500}, + {0.375000, 0.187500}, + {0.375000, 0.218750}, + {0.343750, 0.218750}, + {0.687500, 0.093750}, + {0.718750, 0.093750}, + {0.718750, 0.125000}, + {0.687500, 0.125000}, + {0.687500, 0.062500}, + {0.718750, 0.062500}, + {0.718750, 0.093750}, + {0.687500, 0.093750}, + {0.718750, 0.062500}, + {0.750000, 0.062500}, + {0.750000, 0.093750}, + {0.718750, 0.093750}, + {0.562500, 0.093750}, + {0.593750, 0.093750}, + {0.593750, 0.125000}, + {0.562500, 0.125000}, + {0.562500, 0.062500}, + {0.593750, 0.062500}, + {0.593750, 0.093750}, + {0.562500, 0.093750}, + {0.593750, 0.062500}, + {0.625000, 0.062500}, + {0.625000, 0.093750}, + {0.593750, 0.093750}, + {0.562500, 0.218750}, + {0.593750, 0.218750}, + {0.593750, 0.250000}, + {0.562500, 0.250000}, + {0.562500, 0.187500}, + {0.593750, 0.187500}, + {0.593750, 0.218750}, + {0.562500, 0.218750}, + {0.593750, 0.187500}, + {0.625000, 0.187500}, + {0.625000, 0.218750}, + {0.593750, 0.218750}, + {0.937500, 0.093750}, + {0.968750, 0.093750}, + {0.968750, 0.125000}, + {0.937500, 0.125000}, + {0.937500, 0.062500}, + {0.968750, 0.062500}, + {0.968750, 0.093750}, + {0.937500, 0.093750}, + {0.968750, 0.062500}, + {1.000000, 0.062500}, + {1.000000, 0.093750}, + {0.968750, 0.093750}, + {0.812500, 0.093750}, + {0.843750, 0.093750}, + {0.843750, 0.125000}, + {0.812500, 0.125000}, + {0.812500, 0.062500}, + {0.843750, 0.062500}, + {0.843750, 0.093750}, + {0.812500, 0.093750}, + {0.843750, 0.062500}, + {0.875000, 0.062500}, + {0.875000, 0.093750}, + {0.843750, 0.093750}, + {0.812500, 0.218750}, + {0.843750, 0.218750}, + {0.843750, 0.250000}, + {0.812500, 0.250000}, + {0.812500, 0.187500}, + {0.843750, 0.187500}, + {0.843750, 0.218750}, + {0.812500, 0.218750}, + {0.843750, 0.187500}, + {0.875000, 0.187500}, + {0.875000, 0.218750}, + {0.843750, 0.218750}, + {0.937500, 0.343750}, + {0.968750, 0.343750}, + {0.968750, 0.375000}, + {0.937500, 0.375000}, + {0.937500, 0.312500}, + {0.968750, 0.312500}, + {0.968750, 0.343750}, + {0.937500, 0.343750}, + {0.968750, 0.312500}, + {1.000000, 0.312500}, + {1.000000, 0.343750}, + {0.968750, 0.343750}, + {0.812500, 0.343750}, + {0.843750, 0.343750}, + {0.843750, 0.375000}, + {0.812500, 0.375000}, + {0.812500, 0.312500}, + {0.843750, 0.312500}, + {0.843750, 0.343750}, + {0.812500, 0.343750}, + {0.843750, 0.312500}, + {0.875000, 0.312500}, + {0.875000, 0.343750}, + {0.843750, 0.343750}, + {0.812500, 0.468750}, + {0.843750, 0.468750}, + {0.843750, 0.500000}, + {0.812500, 0.500000}, + {0.812500, 0.437500}, + {0.843750, 0.437500}, + {0.843750, 0.468750}, + {0.812500, 0.468750}, + {0.843750, 0.437500}, + {0.875000, 0.437500}, + {0.875000, 0.468750}, + {0.843750, 0.468750}, + {0.937500, 0.593750}, + {0.968750, 0.593750}, + {0.968750, 0.625000}, + {0.937500, 0.625000}, + {0.937500, 0.562500}, + {0.968750, 0.562500}, + {0.968750, 0.593750}, + {0.937500, 0.593750}, + {0.968750, 0.562500}, + {1.000000, 0.562500}, + {1.000000, 0.593750}, + {0.968750, 0.593750}, + {0.812500, 0.593750}, + {0.843750, 0.593750}, + {0.843750, 0.625000}, + {0.812500, 0.625000}, + {0.812500, 0.562500}, + {0.843750, 0.562500}, + {0.843750, 0.593750}, + {0.812500, 0.593750}, + {0.843750, 0.562500}, + {0.875000, 0.562500}, + {0.875000, 0.593750}, + {0.843750, 0.593750}, + {0.812500, 0.718750}, + {0.843750, 0.718750}, + {0.843750, 0.750000}, + {0.812500, 0.750000}, + {0.812500, 0.687500}, + {0.843750, 0.687500}, + {0.843750, 0.718750}, + {0.812500, 0.718750}, + {0.843750, 0.687500}, + {0.875000, 0.687500}, + {0.875000, 0.718750}, + {0.843750, 0.718750}, + {0.937500, 0.843750}, + {0.968750, 0.843750}, + {0.968750, 0.875000}, + {0.937500, 0.875000}, + {0.937500, 0.812500}, + {0.968750, 0.812500}, + {0.968750, 0.843750}, + {0.937500, 0.843750}, + {0.968750, 0.812500}, + {1.000000, 0.812500}, + {1.000000, 0.843750}, + {0.968750, 0.843750}, + {0.812500, 0.843750}, + {0.843750, 0.843750}, + {0.843750, 0.875000}, + {0.812500, 0.875000}, + {0.812500, 0.812500}, + {0.843750, 0.812500}, + {0.843750, 0.843750}, + {0.812500, 0.843750}, + {0.843750, 0.812500}, + {0.875000, 0.812500}, + {0.875000, 0.843750}, + {0.843750, 0.843750}, + {0.812500, 0.968750}, + {0.843750, 0.968750}, + {0.843750, 1.000000}, + {0.812500, 1.000000}, + {0.812500, 0.937500}, + {0.843750, 0.937500}, + {0.843750, 0.968750}, + {0.812500, 0.968750}, + {0.843750, 0.937500}, + {0.875000, 0.937500}, + {0.875000, 0.968750}, + {0.843750, 0.968750}, + {0.687500, 0.843750}, + {0.718750, 0.843750}, + {0.718750, 0.875000}, + {0.687500, 0.875000}, + {0.687500, 0.812500}, + {0.718750, 0.812500}, + {0.718750, 0.843750}, + {0.687500, 0.843750}, + {0.718750, 0.812500}, + {0.750000, 0.812500}, + {0.750000, 0.843750}, + {0.718750, 0.843750}, + {0.562500, 0.843750}, + {0.593750, 0.843750}, + {0.593750, 0.875000}, + {0.562500, 0.875000}, + {0.562500, 0.812500}, + {0.593750, 0.812500}, + {0.593750, 0.843750}, + {0.562500, 0.843750}, + {0.593750, 0.812500}, + {0.625000, 0.812500}, + {0.625000, 0.843750}, + {0.593750, 0.843750}, + {0.562500, 0.968750}, + {0.593750, 0.968750}, + {0.593750, 1.000000}, + {0.562500, 1.000000}, + {0.562500, 0.937500}, + {0.593750, 0.937500}, + {0.593750, 0.968750}, + {0.562500, 0.968750}, + {0.593750, 0.937500}, + {0.625000, 0.937500}, + {0.625000, 0.968750}, + {0.593750, 0.968750}, + {0.437500, 0.843750}, + {0.468750, 0.843750}, + {0.468750, 0.875000}, + {0.437500, 0.875000}, + {0.437500, 0.812500}, + {0.468750, 0.812500}, + {0.468750, 0.843750}, + {0.437500, 0.843750}, + {0.468750, 0.812500}, + {0.500000, 0.812500}, + {0.500000, 0.843750}, + {0.468750, 0.843750}, + {0.312500, 0.843750}, + {0.343750, 0.843750}, + {0.343750, 0.875000}, + {0.312500, 0.875000}, + {0.312500, 0.812500}, + {0.343750, 0.812500}, + {0.343750, 0.843750}, + {0.312500, 0.843750}, + {0.343750, 0.812500}, + {0.375000, 0.812500}, + {0.375000, 0.843750}, + {0.343750, 0.843750}, + {0.312500, 0.968750}, + {0.343750, 0.968750}, + {0.343750, 1.000000}, + {0.312500, 1.000000}, + {0.312500, 0.937500}, + {0.343750, 0.937500}, + {0.343750, 0.968750}, + {0.312500, 0.968750}, + {0.343750, 0.937500}, + {0.375000, 0.937500}, + {0.375000, 0.968750}, + {0.343750, 0.968750}, + {0.187500, 0.843750}, + {0.218750, 0.843750}, + {0.218750, 0.875000}, + {0.187500, 0.875000}, + {0.187500, 0.812500}, + {0.218750, 0.812500}, + {0.218750, 0.843750}, + {0.187500, 0.843750}, + {0.218750, 0.812500}, + {0.250000, 0.812500}, + {0.250000, 0.843750}, + {0.218750, 0.843750}, + {0.062500, 0.843750}, + {0.093750, 0.843750}, + {0.093750, 0.875000}, + {0.062500, 0.875000}, + {0.062500, 0.812500}, + {0.093750, 0.812500}, + {0.093750, 0.843750}, + {0.062500, 0.843750}, + {0.093750, 0.812500}, + {0.125000, 0.812500}, + {0.125000, 0.843750}, + {0.093750, 0.843750}, + {0.062500, 0.968750}, + {0.093750, 0.968750}, + {0.093750, 1.000000}, + {0.062500, 1.000000}, + {0.062500, 0.937500}, + {0.093750, 0.937500}, + {0.093750, 0.968750}, + {0.062500, 0.968750}, + {0.093750, 0.937500}, + {0.125000, 0.937500}, + {0.125000, 0.968750}, + {0.093750, 0.968750}, + {0.187500, 0.593750}, + {0.218750, 0.593750}, + {0.218750, 0.625000}, + {0.187500, 0.625000}, + {0.187500, 0.562500}, + {0.218750, 0.562500}, + {0.218750, 0.593750}, + {0.187500, 0.593750}, + {0.218750, 0.562500}, + {0.250000, 0.562500}, + {0.250000, 0.593750}, + {0.218750, 0.593750}, + {0.062500, 0.593750}, + {0.093750, 0.593750}, + {0.093750, 0.625000}, + {0.062500, 0.625000}, + {0.062500, 0.562500}, + {0.093750, 0.562500}, + {0.093750, 0.593750}, + {0.062500, 0.593750}, + {0.093750, 0.562500}, + {0.125000, 0.562500}, + {0.125000, 0.593750}, + {0.093750, 0.593750}, + {0.062500, 0.718750}, + {0.093750, 0.718750}, + {0.093750, 0.750000}, + {0.062500, 0.750000}, + {0.062500, 0.687500}, + {0.093750, 0.687500}, + {0.093750, 0.718750}, + {0.062500, 0.718750}, + {0.093750, 0.687500}, + {0.125000, 0.687500}, + {0.125000, 0.718750}, + {0.093750, 0.718750}, + {0.187500, 0.343750}, + {0.218750, 0.343750}, + {0.218750, 0.375000}, + {0.187500, 0.375000}, + {0.187500, 0.312500}, + {0.218750, 0.312500}, + {0.218750, 0.343750}, + {0.187500, 0.343750}, + {0.218750, 0.312500}, + {0.250000, 0.312500}, + {0.250000, 0.343750}, + {0.218750, 0.343750}, + {0.062500, 0.343750}, + {0.093750, 0.343750}, + {0.093750, 0.375000}, + {0.062500, 0.375000}, + {0.062500, 0.312500}, + {0.093750, 0.312500}, + {0.093750, 0.343750}, + {0.062500, 0.343750}, + {0.093750, 0.312500}, + {0.125000, 0.312500}, + {0.125000, 0.343750}, + {0.093750, 0.343750}, + {0.062500, 0.468750}, + {0.093750, 0.468750}, + {0.093750, 0.500000}, + {0.062500, 0.500000}, + {0.062500, 0.437500}, + {0.093750, 0.437500}, + {0.093750, 0.468750}, + {0.062500, 0.468750}, + {0.093750, 0.437500}, + {0.125000, 0.437500}, + {0.125000, 0.468750}, + {0.093750, 0.468750}, + {0.187500, 0.468750}, + {0.218750, 0.468750}, + {0.218750, 0.500000}, + {0.187500, 0.500000}, + {0.187500, 0.437500}, + {0.218750, 0.437500}, + {0.218750, 0.468750}, + {0.187500, 0.468750}, + {0.218750, 0.437500}, + {0.250000, 0.437500}, + {0.250000, 0.468750}, + {0.218750, 0.468750}, + {0.187500, 0.718750}, + {0.218750, 0.718750}, + {0.218750, 0.750000}, + {0.187500, 0.750000}, + {0.187500, 0.687500}, + {0.218750, 0.687500}, + {0.218750, 0.718750}, + {0.187500, 0.718750}, + {0.218750, 0.687500}, + {0.250000, 0.687500}, + {0.250000, 0.718750}, + {0.218750, 0.718750}, + {0.187500, 0.968750}, + {0.218750, 0.968750}, + {0.218750, 1.000000}, + {0.187500, 1.000000}, + {0.187500, 0.937500}, + {0.218750, 0.937500}, + {0.218750, 0.968750}, + {0.187500, 0.968750}, + {0.218750, 0.937500}, + {0.250000, 0.937500}, + {0.250000, 0.968750}, + {0.218750, 0.968750}, + {0.437500, 0.968750}, + {0.468750, 0.968750}, + {0.468750, 1.000000}, + {0.437500, 1.000000}, + {0.437500, 0.937500}, + {0.468750, 0.937500}, + {0.468750, 0.968750}, + {0.437500, 0.968750}, + {0.468750, 0.937500}, + {0.500000, 0.937500}, + {0.500000, 0.968750}, + {0.468750, 0.968750}, + {0.687500, 0.968750}, + {0.718750, 0.968750}, + {0.718750, 1.000000}, + {0.687500, 1.000000}, + {0.687500, 0.937500}, + {0.718750, 0.937500}, + {0.718750, 0.968750}, + {0.687500, 0.968750}, + {0.718750, 0.937500}, + {0.750000, 0.937500}, + {0.750000, 0.968750}, + {0.718750, 0.968750}, + {0.937500, 0.968750}, + {0.968750, 0.968750}, + {0.968750, 1.000000}, + {0.937500, 1.000000}, + {0.937500, 0.937500}, + {0.968750, 0.937500}, + {0.968750, 0.968750}, + {0.937500, 0.968750}, + {0.968750, 0.937500}, + {1.000000, 0.937500}, + {1.000000, 0.968750}, + {0.968750, 0.968750}, + {0.937500, 0.718750}, + {0.968750, 0.718750}, + {0.968750, 0.750000}, + {0.937500, 0.750000}, + {0.937500, 0.687500}, + {0.968750, 0.687500}, + {0.968750, 0.718750}, + {0.937500, 0.718750}, + {0.968750, 0.687500}, + {1.000000, 0.687500}, + {1.000000, 0.718750}, + {0.968750, 0.718750}, + {0.937500, 0.468750}, + {0.968750, 0.468750}, + {0.968750, 0.500000}, + {0.937500, 0.500000}, + {0.937500, 0.437500}, + {0.968750, 0.437500}, + {0.968750, 0.468750}, + {0.937500, 0.468750}, + {0.968750, 0.437500}, + {1.000000, 0.437500}, + {1.000000, 0.468750}, + {0.968750, 0.468750}, + {0.937500, 0.218750}, + {0.968750, 0.218750}, + {0.968750, 0.250000}, + {0.937500, 0.250000}, + {0.937500, 0.187500}, + {0.968750, 0.187500}, + {0.968750, 0.218750}, + {0.937500, 0.218750}, + {0.968750, 0.187500}, + {1.000000, 0.187500}, + {1.000000, 0.218750}, + {0.968750, 0.218750}, + {0.687500, 0.218750}, + {0.718750, 0.218750}, + {0.718750, 0.250000}, + {0.687500, 0.250000}, + {0.687500, 0.187500}, + {0.718750, 0.187500}, + {0.718750, 0.218750}, + {0.687500, 0.218750}, + {0.718750, 0.187500}, + {0.750000, 0.187500}, + {0.750000, 0.218750}, + {0.718750, 0.218750}, + {0.437500, 0.218750}, + {0.468750, 0.218750}, + {0.468750, 0.250000}, + {0.437500, 0.250000}, + {0.437500, 0.187500}, + {0.468750, 0.187500}, + {0.468750, 0.218750}, + {0.437500, 0.218750}, + {0.468750, 0.187500}, + {0.500000, 0.187500}, + {0.500000, 0.218750}, + {0.468750, 0.218750}, + {0.187500, 0.218750}, + {0.218750, 0.218750}, + {0.218750, 0.250000}, + {0.187500, 0.250000}, + {0.187500, 0.187500}, + {0.218750, 0.187500}, + {0.218750, 0.218750}, + {0.187500, 0.218750}, + {0.218750, 0.187500}, + {0.250000, 0.187500}, + {0.250000, 0.218750}, + {0.218750, 0.218750}, + {0.687500, 0.718750}, + {0.718750, 0.718750}, + {0.718750, 0.750000}, + {0.687500, 0.750000}, + {0.687500, 0.687500}, + {0.718750, 0.687500}, + {0.718750, 0.718750}, + {0.687500, 0.718750}, + {0.718750, 0.687500}, + {0.750000, 0.687500}, + {0.750000, 0.718750}, + {0.718750, 0.718750}, + {0.437500, 0.718750}, + {0.468750, 0.718750}, + {0.468750, 0.750000}, + {0.437500, 0.750000}, + {0.437500, 0.687500}, + {0.468750, 0.687500}, + {0.468750, 0.718750}, + {0.437500, 0.718750}, + {0.468750, 0.687500}, + {0.500000, 0.687500}, + {0.500000, 0.718750}, + {0.468750, 0.718750}, + {0.687500, 0.468750}, + {0.718750, 0.468750}, + {0.718750, 0.500000}, + {0.687500, 0.500000}, + {0.687500, 0.437500}, + {0.718750, 0.437500}, + {0.718750, 0.468750}, + {0.687500, 0.468750}, + {0.718750, 0.437500}, + {0.750000, 0.437500}, + {0.750000, 0.468750}, + {0.718750, 0.468750}, + {0.437500, 0.468750}, + {0.468750, 0.468750}, + {0.468750, 0.500000}, + {0.437500, 0.500000}, + {0.437500, 0.437500}, + {0.468750, 0.437500}, + {0.468750, 0.468750}, + {0.437500, 0.468750}, + {0.468750, 0.437500}, + {0.500000, 0.437500}, + {0.500000, 0.468750}, + {0.468750, 0.468750}, +}; + +const vec3 mesh_Plane_normal[] = { + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, +}; + +const vec3 mesh_Plane_polygon_normal[] = { + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, + {0.000000, 0.000000, 1.000000}, +}; + +const polygon mesh_Plane_polygons[] = { + {1088, 308, 20, 310, 0, 0}, + {1087, 309, 21, 311, 0, 4}, + {1086, 313, 23, 315, 0, 8}, + {1085, 314, 24, 316, 0, 12}, + {1084, 317, 16, 328, 0, 16}, + {1083, 318, 17, 305, 0, 20}, + {1082, 319, 18, 306, 0, 24}, + {1081, 297, 10, 504, 0, 28}, + {1080, 298, 11, 505, 0, 32}, + {1079, 299, 12, 506, 0, 36}, + {1078, 300, 3, 485, 0, 40}, + {1077, 507, 13, 486, 0, 44}, + {1076, 508, 14, 487, 0, 48}, + {1075, 509, 15, 488, 0, 52}, + {1074, 312, 22, 326, 0, 56}, + {1073, 307, 19, 327, 0, 60}, + {1072, 369, 63, 367, 0, 64}, + {1071, 370, 65, 515, 0, 68}, + {1070, 347, 43, 516, 0, 72}, + {1069, 373, 62, 366, 0, 76}, + {1068, 374, 66, 519, 0, 80}, + {1067, 352, 48, 520, 0, 84}, + {1066, 377, 40, 448, 0, 88}, + {1065, 378, 67, 523, 0, 92}, + {1064, 469, 61, 524, 0, 96}, + {1063, 381, 39, 447, 0, 100}, + {1062, 382, 68, 527, 0, 104}, + {1061, 468, 60, 528, 0, 108}, + {1060, 385, 38, 446, 0, 112}, + {1059, 386, 69, 531, 0, 116}, + {1058, 467, 59, 532, 0, 120}, + {1057, 389, 37, 445, 0, 124}, + {1056, 390, 70, 535, 0, 128}, + {1055, 340, 36, 536, 0, 132}, + {1054, 393, 58, 466, 0, 136}, + {1053, 394, 71, 539, 0, 140}, + {1052, 339, 35, 540, 0, 144}, + {1051, 397, 57, 465, 0, 148}, + {1050, 398, 72, 543, 0, 152}, + {1049, 338, 34, 544, 0, 156}, + {1048, 401, 56, 464, 0, 160}, + {1047, 402, 73, 547, 0, 164}, + {1046, 337, 33, 548, 0, 168}, + {1045, 405, 42, 346, 0, 172}, + {1044, 406, 74, 551, 0, 176}, + {1043, 359, 55, 552, 0, 180}, + {1042, 409, 41, 345, 0, 184}, + {1041, 410, 75, 555, 0, 188}, + {1040, 358, 54, 556, 0, 192}, + {1039, 413, 64, 368, 0, 196}, + {1038, 414, 76, 559, 0, 200}, + {1037, 357, 53, 560, 0, 204}, + {1036, 417, 52, 356, 0, 208}, + {1035, 418, 77, 563, 0, 212}, + {1034, 354, 50, 564, 0, 216}, + {1033, 421, 51, 355, 0, 220}, + {1032, 422, 78, 567, 0, 224}, + {1031, 353, 49, 568, 0, 228}, + {1030, 425, 47, 351, 0, 232}, + {1029, 426, 79, 571, 0, 236}, + {1028, 349, 45, 572, 0, 240}, + {1027, 429, 46, 350, 0, 244}, + {1026, 430, 80, 575, 0, 248}, + {1025, 348, 44, 576, 0, 252}, + {1024, 577, 224, 432, 0, 256}, + {1023, 578, 225, 579, 0, 260}, + {1022, 492, 140, 580, 0, 264}, + {1021, 581, 223, 431, 0, 268}, + {1020, 582, 226, 583, 0, 272}, + {1019, 574, 222, 584, 0, 276}, + {1018, 585, 142, 494, 0, 280}, + {1017, 586, 227, 587, 0, 284}, + {1016, 573, 221, 588, 0, 288}, + {1015, 589, 220, 428, 0, 292}, + {1014, 590, 228, 591, 0, 296}, + {1013, 493, 141, 592, 0, 300}, + {1012, 593, 219, 427, 0, 304}, + {1011, 594, 229, 595, 0, 308}, + {1010, 570, 218, 596, 0, 312}, + {1009, 597, 143, 495, 0, 316}, + {1008, 598, 230, 599, 0, 320}, + {1007, 569, 217, 600, 0, 324}, + {1006, 601, 216, 424, 0, 328}, + {1005, 602, 231, 603, 0, 332}, + {1004, 497, 145, 604, 0, 336}, + {1003, 605, 215, 423, 0, 340}, + {1002, 606, 232, 607, 0, 344}, + {1001, 566, 214, 608, 0, 348}, + {1000, 609, 147, 499, 0, 352}, + {999, 610, 233, 611, 0, 356}, + {998, 565, 213, 612, 0, 360}, + {997, 613, 212, 420, 0, 364}, + {996, 614, 234, 615, 0, 368}, + {995, 498, 146, 616, 0, 372}, + {994, 617, 211, 419, 0, 376}, + {993, 618, 235, 619, 0, 380}, + {992, 562, 210, 620, 0, 384}, + {991, 621, 148, 500, 0, 388}, + {990, 622, 236, 623, 0, 392}, + {989, 561, 209, 624, 0, 396}, + {988, 625, 208, 416, 0, 400}, + {987, 626, 237, 627, 0, 404}, + {986, 501, 149, 628, 0, 408}, + {985, 629, 207, 415, 0, 412}, + {984, 630, 238, 631, 0, 416}, + {983, 558, 206, 632, 0, 420}, + {982, 633, 160, 512, 0, 424}, + {981, 634, 239, 635, 0, 428}, + {980, 557, 205, 636, 0, 432}, + {979, 637, 204, 412, 0, 436}, + {978, 638, 240, 639, 0, 440}, + {977, 502, 150, 640, 0, 444}, + {976, 641, 203, 411, 0, 448}, + {975, 642, 241, 643, 0, 452}, + {974, 554, 202, 644, 0, 456}, + {973, 645, 137, 489, 0, 460}, + {972, 646, 242, 647, 0, 464}, + {971, 553, 201, 648, 0, 468}, + {970, 649, 200, 408, 0, 472}, + {969, 650, 243, 651, 0, 476}, + {968, 503, 151, 652, 0, 480}, + {967, 653, 199, 407, 0, 484}, + {966, 654, 244, 655, 0, 488}, + {965, 550, 198, 656, 0, 492}, + {964, 657, 138, 490, 0, 496}, + {963, 658, 245, 659, 0, 500}, + {962, 549, 197, 660, 0, 504}, + {961, 661, 196, 404, 0, 508}, + {960, 662, 246, 663, 0, 512}, + {959, 481, 129, 664, 0, 516}, + {958, 665, 195, 403, 0, 520}, + {957, 666, 247, 667, 0, 524}, + {956, 546, 194, 668, 0, 528}, + {955, 669, 112, 320, 0, 532}, + {954, 670, 248, 671, 0, 536}, + {953, 545, 193, 672, 0, 540}, + {952, 673, 192, 400, 0, 544}, + {951, 674, 249, 675, 0, 548}, + {950, 482, 130, 676, 0, 552}, + {949, 677, 191, 399, 0, 556}, + {948, 678, 250, 679, 0, 560}, + {947, 542, 190, 680, 0, 564}, + {946, 681, 113, 321, 0, 568}, + {945, 682, 251, 683, 0, 572}, + {944, 541, 189, 684, 0, 576}, + {943, 685, 188, 396, 0, 580}, + {942, 686, 252, 687, 0, 584}, + {941, 483, 131, 688, 0, 588}, + {940, 689, 187, 395, 0, 592}, + {939, 690, 253, 691, 0, 596}, + {938, 538, 186, 692, 0, 600}, + {937, 693, 114, 322, 0, 604}, + {936, 694, 254, 695, 0, 608}, + {935, 537, 185, 696, 0, 612}, + {934, 697, 184, 392, 0, 616}, + {933, 698, 255, 699, 0, 620}, + {932, 484, 132, 700, 0, 624}, + {931, 701, 183, 391, 0, 628}, + {930, 702, 256, 703, 0, 632}, + {929, 534, 182, 704, 0, 636}, + {928, 705, 93, 301, 0, 640}, + {927, 706, 257, 707, 0, 644}, + {926, 533, 181, 708, 0, 648}, + {925, 709, 180, 388, 0, 652}, + {924, 710, 258, 711, 0, 656}, + {923, 323, 115, 712, 0, 660}, + {922, 713, 179, 387, 0, 664}, + {921, 714, 259, 715, 0, 668}, + {920, 530, 178, 716, 0, 672}, + {919, 717, 94, 302, 0, 676}, + {918, 718, 260, 719, 0, 680}, + {917, 529, 177, 720, 0, 684}, + {916, 721, 176, 384, 0, 688}, + {915, 722, 261, 723, 0, 692}, + {914, 324, 116, 724, 0, 696}, + {913, 725, 175, 383, 0, 700}, + {912, 726, 262, 727, 0, 704}, + {911, 526, 174, 728, 0, 708}, + {910, 729, 95, 303, 0, 712}, + {909, 730, 263, 731, 0, 716}, + {908, 525, 173, 732, 0, 720}, + {907, 733, 172, 380, 0, 724}, + {906, 734, 264, 735, 0, 728}, + {905, 325, 117, 736, 0, 732}, + {904, 737, 171, 379, 0, 736}, + {903, 738, 265, 739, 0, 740}, + {902, 522, 170, 740, 0, 744}, + {901, 741, 96, 304, 0, 748}, + {900, 742, 266, 743, 0, 752}, + {899, 521, 169, 744, 0, 756}, + {898, 745, 168, 376, 0, 760}, + {897, 746, 267, 747, 0, 764}, + {896, 496, 144, 748, 0, 768}, + {895, 749, 167, 375, 0, 772}, + {894, 750, 268, 751, 0, 776}, + {893, 518, 166, 752, 0, 780}, + {892, 753, 158, 510, 0, 784}, + {891, 754, 269, 755, 0, 788}, + {890, 517, 165, 756, 0, 792}, + {889, 757, 164, 372, 0, 796}, + {888, 758, 270, 759, 0, 800}, + {887, 491, 139, 760, 0, 804}, + {886, 761, 163, 371, 0, 808}, + {885, 762, 271, 763, 0, 812}, + {884, 514, 162, 764, 0, 816}, + {883, 765, 159, 511, 0, 820}, + {882, 766, 272, 767, 0, 824}, + {881, 513, 161, 768, 0, 828}, + {880, 769, 119, 471, 0, 832}, + {879, 770, 273, 771, 0, 836}, + {878, 451, 99, 772, 0, 840}, + {877, 773, 118, 470, 0, 844}, + {876, 774, 274, 775, 0, 848}, + {875, 456, 104, 776, 0, 852}, + {874, 777, 136, 344, 0, 856}, + {873, 778, 275, 779, 0, 860}, + {872, 365, 157, 780, 0, 864}, + {871, 781, 135, 343, 0, 868}, + {870, 782, 276, 783, 0, 872}, + {869, 364, 156, 784, 0, 876}, + {868, 785, 134, 342, 0, 880}, + {867, 786, 277, 787, 0, 884}, + {866, 363, 155, 788, 0, 888}, + {865, 789, 133, 341, 0, 892}, + {864, 790, 278, 791, 0, 896}, + {863, 444, 92, 792, 0, 900}, + {862, 793, 154, 362, 0, 904}, + {861, 794, 279, 795, 0, 908}, + {860, 443, 91, 796, 0, 912}, + {859, 797, 153, 361, 0, 916}, + {858, 798, 280, 799, 0, 920}, + {857, 442, 90, 800, 0, 924}, + {856, 801, 152, 360, 0, 928}, + {855, 802, 281, 803, 0, 932}, + {854, 441, 89, 804, 0, 936}, + {853, 805, 98, 450, 0, 940}, + {852, 806, 282, 807, 0, 944}, + {851, 463, 111, 808, 0, 948}, + {850, 809, 97, 449, 0, 952}, + {849, 810, 283, 811, 0, 956}, + {848, 462, 110, 812, 0, 960}, + {847, 813, 120, 472, 0, 964}, + {846, 814, 284, 815, 0, 968}, + {845, 461, 109, 816, 0, 972}, + {844, 817, 108, 460, 0, 976}, + {843, 818, 285, 819, 0, 980}, + {842, 458, 106, 820, 0, 984}, + {841, 821, 107, 459, 0, 988}, + {840, 822, 286, 823, 0, 992}, + {839, 457, 105, 824, 0, 996}, + {838, 825, 103, 455, 0, 1000}, + {837, 826, 287, 827, 0, 1004}, + {836, 453, 101, 828, 0, 1008}, + {835, 829, 102, 454, 0, 1012}, + {834, 830, 288, 831, 0, 1016}, + {833, 452, 100, 832, 0, 1020}, + {830, 833, 832, 288, 0, 1024}, + {224, 576, 833, 830, 0, 1028}, + {576, 44, 452, 833, 0, 1032}, + {573, 834, 831, 221, 0, 1036}, + {80, 432, 834, 573, 0, 1040}, + {432, 224, 830, 834, 0, 1044}, + {429, 835, 454, 46, 0, 1048}, + {221, 831, 835, 429, 0, 1052}, + {831, 288, 829, 835, 0, 1056}, + {826, 836, 828, 287, 0, 1060}, + {220, 572, 836, 826, 0, 1064}, + {572, 45, 453, 836, 0, 1068}, + {569, 837, 827, 217, 0, 1072}, + {79, 428, 837, 569, 0, 1076}, + {428, 220, 826, 837, 0, 1080}, + {425, 838, 455, 47, 0, 1084}, + {217, 827, 838, 425, 0, 1088}, + {827, 287, 825, 838, 0, 1092}, + {822, 839, 824, 286, 0, 1096}, + {216, 568, 839, 822, 0, 1100}, + {568, 49, 457, 839, 0, 1104}, + {565, 840, 823, 213, 0, 1108}, + {78, 424, 840, 565, 0, 1112}, + {424, 216, 822, 840, 0, 1116}, + {421, 841, 459, 51, 0, 1120}, + {213, 823, 841, 421, 0, 1124}, + {823, 286, 821, 841, 0, 1128}, + {818, 842, 820, 285, 0, 1132}, + {212, 564, 842, 818, 0, 1136}, + {564, 50, 458, 842, 0, 1140}, + {561, 843, 819, 209, 0, 1144}, + {77, 420, 843, 561, 0, 1148}, + {420, 212, 818, 843, 0, 1152}, + {417, 844, 460, 52, 0, 1156}, + {209, 819, 844, 417, 0, 1160}, + {819, 285, 817, 844, 0, 1164}, + {814, 845, 816, 284, 0, 1168}, + {208, 560, 845, 814, 0, 1172}, + {560, 53, 461, 845, 0, 1176}, + {557, 846, 815, 205, 0, 1180}, + {76, 416, 846, 557, 0, 1184}, + {416, 208, 814, 846, 0, 1188}, + {413, 847, 472, 64, 0, 1192}, + {205, 815, 847, 413, 0, 1196}, + {815, 284, 813, 847, 0, 1200}, + {810, 848, 812, 283, 0, 1204}, + {204, 556, 848, 810, 0, 1208}, + {556, 54, 462, 848, 0, 1212}, + {553, 849, 811, 201, 0, 1216}, + {75, 412, 849, 553, 0, 1220}, + {412, 204, 810, 849, 0, 1224}, + {409, 850, 449, 41, 0, 1228}, + {201, 811, 850, 409, 0, 1232}, + {811, 283, 809, 850, 0, 1236}, + {806, 851, 808, 282, 0, 1240}, + {200, 552, 851, 806, 0, 1244}, + {552, 55, 463, 851, 0, 1248}, + {549, 852, 807, 197, 0, 1252}, + {74, 408, 852, 549, 0, 1256}, + {408, 200, 806, 852, 0, 1260}, + {405, 853, 450, 42, 0, 1264}, + {197, 807, 853, 405, 0, 1268}, + {807, 282, 805, 853, 0, 1272}, + {802, 854, 804, 281, 0, 1276}, + {196, 548, 854, 802, 0, 1280}, + {548, 33, 441, 854, 0, 1284}, + {545, 855, 803, 193, 0, 1288}, + {73, 404, 855, 545, 0, 1292}, + {404, 196, 802, 855, 0, 1296}, + {401, 856, 360, 56, 0, 1300}, + {193, 803, 856, 401, 0, 1304}, + {803, 281, 801, 856, 0, 1308}, + {798, 857, 800, 280, 0, 1312}, + {192, 544, 857, 798, 0, 1316}, + {544, 34, 442, 857, 0, 1320}, + {541, 858, 799, 189, 0, 1324}, + {72, 400, 858, 541, 0, 1328}, + {400, 192, 798, 858, 0, 1332}, + {397, 859, 361, 57, 0, 1336}, + {189, 799, 859, 397, 0, 1340}, + {799, 280, 797, 859, 0, 1344}, + {794, 860, 796, 279, 0, 1348}, + {188, 540, 860, 794, 0, 1352}, + {540, 35, 443, 860, 0, 1356}, + {537, 861, 795, 185, 0, 1360}, + {71, 396, 861, 537, 0, 1364}, + {396, 188, 794, 861, 0, 1368}, + {393, 862, 362, 58, 0, 1372}, + {185, 795, 862, 393, 0, 1376}, + {795, 279, 793, 862, 0, 1380}, + {790, 863, 792, 278, 0, 1384}, + {184, 536, 863, 790, 0, 1388}, + {536, 36, 444, 863, 0, 1392}, + {533, 864, 791, 181, 0, 1396}, + {70, 392, 864, 533, 0, 1400}, + {392, 184, 790, 864, 0, 1404}, + {389, 865, 341, 37, 0, 1408}, + {181, 791, 865, 389, 0, 1412}, + {791, 278, 789, 865, 0, 1416}, + {786, 866, 788, 277, 0, 1420}, + {180, 532, 866, 786, 0, 1424}, + {532, 59, 363, 866, 0, 1428}, + {529, 867, 787, 177, 0, 1432}, + {69, 388, 867, 529, 0, 1436}, + {388, 180, 786, 867, 0, 1440}, + {385, 868, 342, 38, 0, 1444}, + {177, 787, 868, 385, 0, 1448}, + {787, 277, 785, 868, 0, 1452}, + {782, 869, 784, 276, 0, 1456}, + {176, 528, 869, 782, 0, 1460}, + {528, 60, 364, 869, 0, 1464}, + {525, 870, 783, 173, 0, 1468}, + {68, 384, 870, 525, 0, 1472}, + {384, 176, 782, 870, 0, 1476}, + {381, 871, 343, 39, 0, 1480}, + {173, 783, 871, 381, 0, 1484}, + {783, 276, 781, 871, 0, 1488}, + {778, 872, 780, 275, 0, 1492}, + {172, 524, 872, 778, 0, 1496}, + {524, 61, 365, 872, 0, 1500}, + {521, 873, 779, 169, 0, 1504}, + {67, 380, 873, 521, 0, 1508}, + {380, 172, 778, 873, 0, 1512}, + {377, 874, 344, 40, 0, 1516}, + {169, 779, 874, 377, 0, 1520}, + {779, 275, 777, 874, 0, 1524}, + {774, 875, 776, 274, 0, 1528}, + {168, 520, 875, 774, 0, 1532}, + {520, 48, 456, 875, 0, 1536}, + {517, 876, 775, 165, 0, 1540}, + {66, 376, 876, 517, 0, 1544}, + {376, 168, 774, 876, 0, 1548}, + {373, 877, 470, 62, 0, 1552}, + {165, 775, 877, 373, 0, 1556}, + {775, 274, 773, 877, 0, 1560}, + {770, 878, 772, 273, 0, 1564}, + {164, 516, 878, 770, 0, 1568}, + {516, 43, 451, 878, 0, 1572}, + {513, 879, 771, 161, 0, 1576}, + {65, 372, 879, 513, 0, 1580}, + {372, 164, 770, 879, 0, 1584}, + {369, 880, 471, 63, 0, 1588}, + {161, 771, 880, 369, 0, 1592}, + {771, 273, 769, 880, 0, 1596}, + {766, 881, 768, 272, 0, 1600}, + {163, 515, 881, 766, 0, 1604}, + {515, 65, 513, 881, 0, 1608}, + {331, 882, 767, 123, 0, 1612}, + {27, 371, 882, 331, 0, 1616}, + {371, 163, 766, 882, 0, 1620}, + {475, 883, 511, 5, 0, 1624}, + {123, 767, 883, 475, 0, 1628}, + {767, 272, 765, 883, 0, 1632}, + {762, 884, 764, 271, 0, 1636}, + {160, 368, 884, 762, 0, 1640}, + {368, 64, 514, 884, 0, 1644}, + {291, 885, 763, 83, 0, 1648}, + {6, 512, 885, 291, 0, 1652}, + {512, 160, 762, 885, 0, 1656}, + {435, 886, 371, 27, 0, 1660}, + {83, 763, 886, 435, 0, 1664}, + {763, 271, 761, 886, 0, 1668}, + {758, 887, 760, 270, 0, 1672}, + {120, 328, 887, 758, 0, 1676}, + {328, 16, 491, 887, 0, 1680}, + {514, 888, 759, 162, 0, 1684}, + {64, 472, 888, 514, 0, 1688}, + {472, 120, 758, 888, 0, 1692}, + {370, 889, 372, 65, 0, 1696}, + {162, 759, 889, 370, 0, 1700}, + {759, 270, 757, 889, 0, 1704}, + {754, 890, 756, 269, 0, 1708}, + {167, 519, 890, 754, 0, 1712}, + {519, 66, 517, 890, 0, 1716}, + {330, 891, 755, 122, 0, 1720}, + {26, 375, 891, 330, 0, 1724}, + {375, 167, 754, 891, 0, 1728}, + {474, 892, 510, 4, 0, 1732}, + {122, 755, 892, 474, 0, 1736}, + {755, 269, 753, 892, 0, 1740}, + {750, 893, 752, 268, 0, 1744}, + {159, 367, 893, 750, 0, 1748}, + {367, 63, 518, 893, 0, 1752}, + {290, 894, 751, 82, 0, 1756}, + {5, 511, 894, 290, 0, 1760}, + {511, 159, 750, 894, 0, 1764}, + {434, 895, 375, 26, 0, 1768}, + {82, 751, 895, 434, 0, 1772}, + {751, 268, 749, 895, 0, 1776}, + {746, 896, 748, 267, 0, 1780}, + {119, 327, 896, 746, 0, 1784}, + {327, 19, 496, 896, 0, 1788}, + {518, 897, 747, 166, 0, 1792}, + {63, 471, 897, 518, 0, 1796}, + {471, 119, 746, 897, 0, 1800}, + {374, 898, 376, 66, 0, 1804}, + {166, 747, 898, 374, 0, 1808}, + {747, 267, 745, 898, 0, 1812}, + {742, 899, 744, 266, 0, 1816}, + {171, 523, 899, 742, 0, 1820}, + {523, 67, 521, 899, 0, 1824}, + {329, 900, 743, 121, 0, 1828}, + {25, 379, 900, 329, 0, 1832}, + {379, 171, 742, 900, 0, 1836}, + {473, 901, 304, 2, 0, 1840}, + {121, 743, 901, 473, 0, 1844}, + {743, 266, 741, 901, 0, 1848}, + {738, 902, 740, 265, 0, 1852}, + {158, 366, 902, 738, 0, 1856}, + {366, 62, 522, 902, 0, 1860}, + {289, 903, 739, 81, 0, 1864}, + {4, 510, 903, 289, 0, 1868}, + {510, 158, 738, 903, 0, 1872}, + {433, 904, 379, 25, 0, 1876}, + {81, 739, 904, 433, 0, 1880}, + {739, 265, 737, 904, 0, 1884}, + {734, 905, 736, 264, 0, 1888}, + {118, 326, 905, 734, 0, 1892}, + {326, 22, 325, 905, 0, 1896}, + {522, 906, 735, 170, 0, 1900}, + {62, 470, 906, 522, 0, 1904}, + {470, 118, 734, 906, 0, 1908}, + {378, 907, 380, 67, 0, 1912}, + {170, 735, 907, 378, 0, 1916}, + {735, 264, 733, 907, 0, 1920}, + {730, 908, 732, 263, 0, 1924}, + {175, 527, 908, 730, 0, 1928}, + {527, 68, 525, 908, 0, 1932}, + {365, 909, 731, 157, 0, 1936}, + {61, 383, 909, 365, 0, 1940}, + {383, 175, 730, 909, 0, 1944}, + {509, 910, 303, 15, 0, 1948}, + {157, 731, 910, 509, 0, 1952}, + {731, 263, 729, 910, 0, 1956}, + {726, 911, 728, 262, 0, 1960}, + {147, 355, 911, 726, 0, 1964}, + {355, 51, 526, 911, 0, 1968}, + {325, 912, 727, 117, 0, 1972}, + {22, 499, 912, 325, 0, 1976}, + {499, 147, 726, 912, 0, 1980}, + {469, 913, 383, 61, 0, 1984}, + {117, 727, 913, 469, 0, 1988}, + {727, 262, 725, 913, 0, 1992}, + {722, 914, 724, 261, 0, 1996}, + {107, 315, 914, 722, 0, 2000}, + {315, 23, 324, 914, 0, 2004}, + {526, 915, 723, 174, 0, 2008}, + {51, 459, 915, 526, 0, 2012}, + {459, 107, 722, 915, 0, 2016}, + {382, 916, 384, 68, 0, 2020}, + {174, 723, 916, 382, 0, 2024}, + {723, 261, 721, 916, 0, 2028}, + {718, 917, 720, 260, 0, 2032}, + {179, 531, 917, 718, 0, 2036}, + {531, 69, 529, 917, 0, 2040}, + {364, 918, 719, 156, 0, 2044}, + {60, 387, 918, 364, 0, 2048}, + {387, 179, 718, 918, 0, 2052}, + {508, 919, 302, 14, 0, 2056}, + {156, 719, 919, 508, 0, 2060}, + {719, 260, 717, 919, 0, 2064}, + {714, 920, 716, 259, 0, 2068}, + {148, 356, 920, 714, 0, 2072}, + {356, 52, 530, 920, 0, 2076}, + {324, 921, 715, 116, 0, 2080}, + {23, 500, 921, 324, 0, 2084}, + {500, 148, 714, 921, 0, 2088}, + {468, 922, 387, 60, 0, 2092}, + {116, 715, 922, 468, 0, 2096}, + {715, 259, 713, 922, 0, 2100}, + {710, 923, 712, 258, 0, 2104}, + {108, 316, 923, 710, 0, 2108}, + {316, 24, 323, 923, 0, 2112}, + {530, 924, 711, 178, 0, 2116}, + {52, 460, 924, 530, 0, 2120}, + {460, 108, 710, 924, 0, 2124}, + {386, 925, 388, 69, 0, 2128}, + {178, 711, 925, 386, 0, 2132}, + {711, 258, 709, 925, 0, 2136}, + {706, 926, 708, 257, 0, 2140}, + {183, 535, 926, 706, 0, 2144}, + {535, 70, 533, 926, 0, 2148}, + {363, 927, 707, 155, 0, 2152}, + {59, 391, 927, 363, 0, 2156}, + {391, 183, 706, 927, 0, 2160}, + {507, 928, 301, 13, 0, 2164}, + {155, 707, 928, 507, 0, 2168}, + {707, 257, 705, 928, 0, 2172}, + {702, 929, 704, 256, 0, 2176}, + {114, 466, 929, 702, 0, 2180}, + {466, 58, 534, 929, 0, 2184}, + {323, 930, 703, 115, 0, 2188}, + {24, 322, 930, 323, 0, 2192}, + {322, 114, 702, 930, 0, 2196}, + {467, 931, 391, 59, 0, 2200}, + {115, 703, 931, 467, 0, 2204}, + {703, 256, 701, 931, 0, 2208}, + {698, 932, 700, 255, 0, 2212}, + {154, 506, 932, 698, 0, 2216}, + {506, 12, 484, 932, 0, 2220}, + {534, 933, 699, 182, 0, 2224}, + {58, 362, 933, 534, 0, 2228}, + {362, 154, 698, 933, 0, 2232}, + {390, 934, 392, 70, 0, 2236}, + {182, 699, 934, 390, 0, 2240}, + {699, 255, 697, 934, 0, 2244}, + {694, 935, 696, 254, 0, 2248}, + {187, 539, 935, 694, 0, 2252}, + {539, 71, 537, 935, 0, 2256}, + {458, 936, 695, 106, 0, 2260}, + {50, 395, 936, 458, 0, 2264}, + {395, 187, 694, 936, 0, 2268}, + {314, 937, 322, 24, 0, 2272}, + {106, 695, 937, 314, 0, 2276}, + {695, 254, 693, 937, 0, 2280}, + {690, 938, 692, 253, 0, 2284}, + {113, 465, 938, 690, 0, 2288}, + {465, 57, 538, 938, 0, 2292}, + {498, 939, 691, 146, 0, 2296}, + {21, 321, 939, 498, 0, 2300}, + {321, 113, 690, 939, 0, 2304}, + {354, 940, 395, 50, 0, 2308}, + {146, 691, 940, 354, 0, 2312}, + {691, 253, 689, 940, 0, 2316}, + {686, 941, 688, 252, 0, 2320}, + {153, 505, 941, 686, 0, 2324}, + {505, 11, 483, 941, 0, 2328}, + {538, 942, 687, 186, 0, 2332}, + {57, 361, 942, 538, 0, 2336}, + {361, 153, 686, 942, 0, 2340}, + {394, 943, 396, 71, 0, 2344}, + {186, 687, 943, 394, 0, 2348}, + {687, 252, 685, 943, 0, 2352}, + {682, 944, 684, 251, 0, 2356}, + {191, 543, 944, 682, 0, 2360}, + {543, 72, 541, 944, 0, 2364}, + {453, 945, 683, 101, 0, 2368}, + {45, 399, 945, 453, 0, 2372}, + {399, 191, 682, 945, 0, 2376}, + {309, 946, 321, 21, 0, 2380}, + {101, 683, 946, 309, 0, 2384}, + {683, 251, 681, 946, 0, 2388}, + {678, 947, 680, 250, 0, 2392}, + {112, 464, 947, 678, 0, 2396}, + {464, 56, 542, 947, 0, 2400}, + {493, 948, 679, 141, 0, 2404}, + {18, 320, 948, 493, 0, 2408}, + {320, 112, 678, 948, 0, 2412}, + {349, 949, 399, 45, 0, 2416}, + {141, 679, 949, 349, 0, 2420}, + {679, 250, 677, 949, 0, 2424}, + {674, 950, 676, 249, 0, 2428}, + {152, 504, 950, 674, 0, 2432}, + {504, 10, 482, 950, 0, 2436}, + {542, 951, 675, 190, 0, 2440}, + {56, 360, 951, 542, 0, 2444}, + {360, 152, 674, 951, 0, 2448}, + {398, 952, 400, 72, 0, 2452}, + {190, 675, 952, 398, 0, 2456}, + {675, 249, 673, 952, 0, 2460}, + {670, 953, 672, 248, 0, 2464}, + {195, 547, 953, 670, 0, 2468}, + {547, 73, 545, 953, 0, 2472}, + {463, 954, 671, 111, 0, 2476}, + {55, 403, 954, 463, 0, 2480}, + {403, 195, 670, 954, 0, 2484}, + {319, 955, 320, 18, 0, 2488}, + {111, 671, 955, 319, 0, 2492}, + {671, 248, 669, 955, 0, 2496}, + {666, 956, 668, 247, 0, 2500}, + {128, 336, 956, 666, 0, 2504}, + {336, 32, 546, 956, 0, 2508}, + {503, 957, 667, 151, 0, 2512}, + {9, 480, 957, 503, 0, 2516}, + {480, 128, 666, 957, 0, 2520}, + {359, 958, 403, 55, 0, 2524}, + {151, 667, 958, 359, 0, 2528}, + {667, 247, 665, 958, 0, 2532}, + {662, 959, 664, 246, 0, 2536}, + {88, 296, 959, 662, 0, 2540}, + {296, 1, 481, 959, 0, 2544}, + {546, 960, 663, 194, 0, 2548}, + {32, 440, 960, 546, 0, 2552}, + {440, 88, 662, 960, 0, 2556}, + {402, 961, 404, 73, 0, 2560}, + {194, 663, 961, 402, 0, 2564}, + {663, 246, 661, 961, 0, 2568}, + {658, 962, 660, 245, 0, 2572}, + {199, 551, 962, 658, 0, 2576}, + {551, 74, 549, 962, 0, 2580}, + {462, 963, 659, 110, 0, 2584}, + {54, 407, 963, 462, 0, 2588}, + {407, 199, 658, 963, 0, 2592}, + {318, 964, 490, 17, 0, 2596}, + {110, 659, 964, 318, 0, 2600}, + {659, 245, 657, 964, 0, 2604}, + {654, 965, 656, 244, 0, 2608}, + {127, 335, 965, 654, 0, 2612}, + {335, 31, 550, 965, 0, 2616}, + {502, 966, 655, 150, 0, 2620}, + {8, 479, 966, 502, 0, 2624}, + {479, 127, 654, 966, 0, 2628}, + {358, 967, 407, 54, 0, 2632}, + {150, 655, 967, 358, 0, 2636}, + {655, 244, 653, 967, 0, 2640}, + {650, 968, 652, 243, 0, 2644}, + {87, 295, 968, 650, 0, 2648}, + {295, 9, 503, 968, 0, 2652}, + {550, 969, 651, 198, 0, 2656}, + {31, 439, 969, 550, 0, 2660}, + {439, 87, 650, 969, 0, 2664}, + {406, 970, 408, 74, 0, 2668}, + {198, 651, 970, 406, 0, 2672}, + {651, 243, 649, 970, 0, 2676}, + {646, 971, 648, 242, 0, 2680}, + {203, 555, 971, 646, 0, 2684}, + {555, 75, 553, 971, 0, 2688}, + {461, 972, 647, 109, 0, 2692}, + {53, 411, 972, 461, 0, 2696}, + {411, 203, 646, 972, 0, 2700}, + {317, 973, 489, 16, 0, 2704}, + {109, 647, 973, 317, 0, 2708}, + {647, 242, 645, 973, 0, 2712}, + {642, 974, 644, 241, 0, 2716}, + {126, 334, 974, 642, 0, 2720}, + {334, 30, 554, 974, 0, 2724}, + {501, 975, 643, 149, 0, 2728}, + {7, 478, 975, 501, 0, 2732}, + {478, 126, 642, 975, 0, 2736}, + {357, 976, 411, 53, 0, 2740}, + {149, 643, 976, 357, 0, 2744}, + {643, 241, 641, 976, 0, 2748}, + {638, 977, 640, 240, 0, 2752}, + {86, 294, 977, 638, 0, 2756}, + {294, 8, 502, 977, 0, 2760}, + {554, 978, 639, 202, 0, 2764}, + {30, 438, 978, 554, 0, 2768}, + {438, 86, 638, 978, 0, 2772}, + {410, 979, 412, 75, 0, 2776}, + {202, 639, 979, 410, 0, 2780}, + {639, 240, 637, 979, 0, 2784}, + {634, 980, 636, 239, 0, 2788}, + {207, 559, 980, 634, 0, 2792}, + {559, 76, 557, 980, 0, 2796}, + {332, 981, 635, 124, 0, 2800}, + {28, 415, 981, 332, 0, 2804}, + {415, 207, 634, 981, 0, 2808}, + {476, 982, 512, 6, 0, 2812}, + {124, 635, 982, 476, 0, 2816}, + {635, 239, 633, 982, 0, 2820}, + {630, 983, 632, 238, 0, 2824}, + {125, 333, 983, 630, 0, 2828}, + {333, 29, 558, 983, 0, 2832}, + {292, 984, 631, 84, 0, 2836}, + {0, 477, 984, 292, 0, 2840}, + {477, 125, 630, 984, 0, 2844}, + {436, 985, 415, 28, 0, 2848}, + {84, 631, 985, 436, 0, 2852}, + {631, 238, 629, 985, 0, 2856}, + {626, 986, 628, 237, 0, 2860}, + {85, 293, 986, 626, 0, 2864}, + {293, 7, 501, 986, 0, 2868}, + {558, 987, 627, 206, 0, 2872}, + {29, 437, 987, 558, 0, 2876}, + {437, 85, 626, 987, 0, 2880}, + {414, 988, 416, 76, 0, 2884}, + {206, 627, 988, 414, 0, 2888}, + {627, 237, 625, 988, 0, 2892}, + {622, 989, 624, 236, 0, 2896}, + {211, 563, 989, 622, 0, 2900}, + {563, 77, 561, 989, 0, 2904}, + {457, 990, 623, 105, 0, 2908}, + {49, 419, 990, 457, 0, 2912}, + {419, 211, 622, 990, 0, 2916}, + {313, 991, 500, 23, 0, 2920}, + {105, 623, 991, 313, 0, 2924}, + {623, 236, 621, 991, 0, 2928}, + {618, 992, 620, 235, 0, 2932}, + {143, 351, 992, 618, 0, 2936}, + {351, 47, 562, 992, 0, 2940}, + {497, 993, 619, 145, 0, 2944}, + {20, 495, 993, 497, 0, 2948}, + {495, 143, 618, 993, 0, 2952}, + {353, 994, 419, 49, 0, 2956}, + {145, 619, 994, 353, 0, 2960}, + {619, 235, 617, 994, 0, 2964}, + {614, 995, 616, 234, 0, 2968}, + {103, 311, 995, 614, 0, 2972}, + {311, 21, 498, 995, 0, 2976}, + {562, 996, 615, 210, 0, 2980}, + {47, 455, 996, 562, 0, 2984}, + {455, 103, 614, 996, 0, 2988}, + {418, 997, 420, 77, 0, 2992}, + {210, 615, 997, 418, 0, 2996}, + {615, 234, 613, 997, 0, 3000}, + {610, 998, 612, 233, 0, 3004}, + {215, 567, 998, 610, 0, 3008}, + {567, 78, 565, 998, 0, 3012}, + {456, 999, 611, 104, 0, 3016}, + {48, 423, 999, 456, 0, 3020}, + {423, 215, 610, 999, 0, 3024}, + {312, 1000, 499, 22, 0, 3028}, + {104, 611, 1000, 312, 0, 3032}, + {611, 233, 609, 1000, 0, 3036}, + {606, 1001, 608, 232, 0, 3040}, + {142, 350, 1001, 606, 0, 3044}, + {350, 46, 566, 1001, 0, 3048}, + {496, 1002, 607, 144, 0, 3052}, + {19, 494, 1002, 496, 0, 3056}, + {494, 142, 606, 1002, 0, 3060}, + {352, 1003, 423, 48, 0, 3064}, + {144, 607, 1003, 352, 0, 3068}, + {607, 232, 605, 1003, 0, 3072}, + {602, 1004, 604, 231, 0, 3076}, + {102, 310, 1004, 602, 0, 3080}, + {310, 20, 497, 1004, 0, 3084}, + {566, 1005, 603, 214, 0, 3088}, + {46, 454, 1005, 566, 0, 3092}, + {454, 102, 602, 1005, 0, 3096}, + {422, 1006, 424, 78, 0, 3100}, + {214, 603, 1006, 422, 0, 3104}, + {603, 231, 601, 1006, 0, 3108}, + {598, 1007, 600, 230, 0, 3112}, + {219, 571, 1007, 598, 0, 3116}, + {571, 79, 569, 1007, 0, 3120}, + {452, 1008, 599, 100, 0, 3124}, + {44, 427, 1008, 452, 0, 3128}, + {427, 219, 598, 1008, 0, 3132}, + {308, 1009, 495, 20, 0, 3136}, + {100, 599, 1009, 308, 0, 3140}, + {599, 230, 597, 1009, 0, 3144}, + {594, 1010, 596, 229, 0, 3148}, + {138, 346, 1010, 594, 0, 3152}, + {346, 42, 570, 1010, 0, 3156}, + {492, 1011, 595, 140, 0, 3160}, + {17, 490, 1011, 492, 0, 3164}, + {490, 138, 594, 1011, 0, 3168}, + {348, 1012, 427, 44, 0, 3172}, + {140, 595, 1012, 348, 0, 3176}, + {595, 229, 593, 1012, 0, 3180}, + {590, 1013, 592, 228, 0, 3184}, + {98, 306, 1013, 590, 0, 3188}, + {306, 18, 493, 1013, 0, 3192}, + {570, 1014, 591, 218, 0, 3196}, + {42, 450, 1014, 570, 0, 3200}, + {450, 98, 590, 1014, 0, 3204}, + {426, 1015, 428, 79, 0, 3208}, + {218, 591, 1015, 426, 0, 3212}, + {591, 228, 589, 1015, 0, 3216}, + {586, 1016, 588, 227, 0, 3220}, + {223, 575, 1016, 586, 0, 3224}, + {575, 80, 573, 1016, 0, 3228}, + {451, 1017, 587, 99, 0, 3232}, + {43, 431, 1017, 451, 0, 3236}, + {431, 223, 586, 1017, 0, 3240}, + {307, 1018, 494, 19, 0, 3244}, + {99, 587, 1018, 307, 0, 3248}, + {587, 227, 585, 1018, 0, 3252}, + {582, 1019, 584, 226, 0, 3256}, + {137, 345, 1019, 582, 0, 3260}, + {345, 41, 574, 1019, 0, 3264}, + {491, 1020, 583, 139, 0, 3268}, + {16, 489, 1020, 491, 0, 3272}, + {489, 137, 582, 1020, 0, 3276}, + {347, 1021, 431, 43, 0, 3280}, + {139, 583, 1021, 347, 0, 3284}, + {583, 226, 581, 1021, 0, 3288}, + {578, 1022, 580, 225, 0, 3292}, + {97, 305, 1022, 578, 0, 3296}, + {305, 17, 492, 1022, 0, 3300}, + {574, 1023, 579, 222, 0, 3304}, + {41, 449, 1023, 574, 0, 3308}, + {449, 97, 578, 1023, 0, 3312}, + {430, 1024, 432, 80, 0, 3316}, + {222, 579, 1024, 430, 0, 3320}, + {579, 225, 577, 1024, 0, 3324}, + {577, 1025, 576, 224, 0, 3328}, + {225, 580, 1025, 577, 0, 3332}, + {580, 140, 348, 1025, 0, 3336}, + {581, 1026, 575, 223, 0, 3340}, + {226, 584, 1026, 581, 0, 3344}, + {584, 222, 430, 1026, 0, 3348}, + {585, 1027, 350, 142, 0, 3352}, + {227, 588, 1027, 585, 0, 3356}, + {588, 221, 429, 1027, 0, 3360}, + {589, 1028, 572, 220, 0, 3364}, + {228, 592, 1028, 589, 0, 3368}, + {592, 141, 349, 1028, 0, 3372}, + {593, 1029, 571, 219, 0, 3376}, + {229, 596, 1029, 593, 0, 3380}, + {596, 218, 426, 1029, 0, 3384}, + {597, 1030, 351, 143, 0, 3388}, + {230, 600, 1030, 597, 0, 3392}, + {600, 217, 425, 1030, 0, 3396}, + {601, 1031, 568, 216, 0, 3400}, + {231, 604, 1031, 601, 0, 3404}, + {604, 145, 353, 1031, 0, 3408}, + {605, 1032, 567, 215, 0, 3412}, + {232, 608, 1032, 605, 0, 3416}, + {608, 214, 422, 1032, 0, 3420}, + {609, 1033, 355, 147, 0, 3424}, + {233, 612, 1033, 609, 0, 3428}, + {612, 213, 421, 1033, 0, 3432}, + {613, 1034, 564, 212, 0, 3436}, + {234, 616, 1034, 613, 0, 3440}, + {616, 146, 354, 1034, 0, 3444}, + {617, 1035, 563, 211, 0, 3448}, + {235, 620, 1035, 617, 0, 3452}, + {620, 210, 418, 1035, 0, 3456}, + {621, 1036, 356, 148, 0, 3460}, + {236, 624, 1036, 621, 0, 3464}, + {624, 209, 417, 1036, 0, 3468}, + {625, 1037, 560, 208, 0, 3472}, + {237, 628, 1037, 625, 0, 3476}, + {628, 149, 357, 1037, 0, 3480}, + {629, 1038, 559, 207, 0, 3484}, + {238, 632, 1038, 629, 0, 3488}, + {632, 206, 414, 1038, 0, 3492}, + {633, 1039, 368, 160, 0, 3496}, + {239, 636, 1039, 633, 0, 3500}, + {636, 205, 413, 1039, 0, 3504}, + {637, 1040, 556, 204, 0, 3508}, + {240, 640, 1040, 637, 0, 3512}, + {640, 150, 358, 1040, 0, 3516}, + {641, 1041, 555, 203, 0, 3520}, + {241, 644, 1041, 641, 0, 3524}, + {644, 202, 410, 1041, 0, 3528}, + {645, 1042, 345, 137, 0, 3532}, + {242, 648, 1042, 645, 0, 3536}, + {648, 201, 409, 1042, 0, 3540}, + {649, 1043, 552, 200, 0, 3544}, + {243, 652, 1043, 649, 0, 3548}, + {652, 151, 359, 1043, 0, 3552}, + {653, 1044, 551, 199, 0, 3556}, + {244, 656, 1044, 653, 0, 3560}, + {656, 198, 406, 1044, 0, 3564}, + {657, 1045, 346, 138, 0, 3568}, + {245, 660, 1045, 657, 0, 3572}, + {660, 197, 405, 1045, 0, 3576}, + {661, 1046, 548, 196, 0, 3580}, + {246, 664, 1046, 661, 0, 3584}, + {664, 129, 337, 1046, 0, 3588}, + {665, 1047, 547, 195, 0, 3592}, + {247, 668, 1047, 665, 0, 3596}, + {668, 194, 402, 1047, 0, 3600}, + {669, 1048, 464, 112, 0, 3604}, + {248, 672, 1048, 669, 0, 3608}, + {672, 193, 401, 1048, 0, 3612}, + {673, 1049, 544, 192, 0, 3616}, + {249, 676, 1049, 673, 0, 3620}, + {676, 130, 338, 1049, 0, 3624}, + {677, 1050, 543, 191, 0, 3628}, + {250, 680, 1050, 677, 0, 3632}, + {680, 190, 398, 1050, 0, 3636}, + {681, 1051, 465, 113, 0, 3640}, + {251, 684, 1051, 681, 0, 3644}, + {684, 189, 397, 1051, 0, 3648}, + {685, 1052, 540, 188, 0, 3652}, + {252, 688, 1052, 685, 0, 3656}, + {688, 131, 339, 1052, 0, 3660}, + {689, 1053, 539, 187, 0, 3664}, + {253, 692, 1053, 689, 0, 3668}, + {692, 186, 394, 1053, 0, 3672}, + {693, 1054, 466, 114, 0, 3676}, + {254, 696, 1054, 693, 0, 3680}, + {696, 185, 393, 1054, 0, 3684}, + {697, 1055, 536, 184, 0, 3688}, + {255, 700, 1055, 697, 0, 3692}, + {700, 132, 340, 1055, 0, 3696}, + {701, 1056, 535, 183, 0, 3700}, + {256, 704, 1056, 701, 0, 3704}, + {704, 182, 390, 1056, 0, 3708}, + {705, 1057, 445, 93, 0, 3712}, + {257, 708, 1057, 705, 0, 3716}, + {708, 181, 389, 1057, 0, 3720}, + {709, 1058, 532, 180, 0, 3724}, + {258, 712, 1058, 709, 0, 3728}, + {712, 115, 467, 1058, 0, 3732}, + {713, 1059, 531, 179, 0, 3736}, + {259, 716, 1059, 713, 0, 3740}, + {716, 178, 386, 1059, 0, 3744}, + {717, 1060, 446, 94, 0, 3748}, + {260, 720, 1060, 717, 0, 3752}, + {720, 177, 385, 1060, 0, 3756}, + {721, 1061, 528, 176, 0, 3760}, + {261, 724, 1061, 721, 0, 3764}, + {724, 116, 468, 1061, 0, 3768}, + {725, 1062, 527, 175, 0, 3772}, + {262, 728, 1062, 725, 0, 3776}, + {728, 174, 382, 1062, 0, 3780}, + {729, 1063, 447, 95, 0, 3784}, + {263, 732, 1063, 729, 0, 3788}, + {732, 173, 381, 1063, 0, 3792}, + {733, 1064, 524, 172, 0, 3796}, + {264, 736, 1064, 733, 0, 3800}, + {736, 117, 469, 1064, 0, 3804}, + {737, 1065, 523, 171, 0, 3808}, + {265, 740, 1065, 737, 0, 3812}, + {740, 170, 378, 1065, 0, 3816}, + {741, 1066, 448, 96, 0, 3820}, + {266, 744, 1066, 741, 0, 3824}, + {744, 169, 377, 1066, 0, 3828}, + {745, 1067, 520, 168, 0, 3832}, + {267, 748, 1067, 745, 0, 3836}, + {748, 144, 352, 1067, 0, 3840}, + {749, 1068, 519, 167, 0, 3844}, + {268, 752, 1068, 749, 0, 3848}, + {752, 166, 374, 1068, 0, 3852}, + {753, 1069, 366, 158, 0, 3856}, + {269, 756, 1069, 753, 0, 3860}, + {756, 165, 373, 1069, 0, 3864}, + {757, 1070, 516, 164, 0, 3868}, + {270, 760, 1070, 757, 0, 3872}, + {760, 139, 347, 1070, 0, 3876}, + {761, 1071, 515, 163, 0, 3880}, + {271, 764, 1071, 761, 0, 3884}, + {764, 162, 370, 1071, 0, 3888}, + {765, 1072, 367, 159, 0, 3892}, + {272, 768, 1072, 765, 0, 3896}, + {768, 161, 369, 1072, 0, 3900}, + {769, 1073, 327, 119, 0, 3904}, + {273, 772, 1073, 769, 0, 3908}, + {772, 99, 307, 1073, 0, 3912}, + {773, 1074, 326, 118, 0, 3916}, + {274, 776, 1074, 773, 0, 3920}, + {776, 104, 312, 1074, 0, 3924}, + {777, 1075, 488, 136, 0, 3928}, + {275, 780, 1075, 777, 0, 3932}, + {780, 157, 509, 1075, 0, 3936}, + {781, 1076, 487, 135, 0, 3940}, + {276, 784, 1076, 781, 0, 3944}, + {784, 156, 508, 1076, 0, 3948}, + {785, 1077, 486, 134, 0, 3952}, + {277, 788, 1077, 785, 0, 3956}, + {788, 155, 507, 1077, 0, 3960}, + {789, 1078, 485, 133, 0, 3964}, + {278, 792, 1078, 789, 0, 3968}, + {792, 92, 300, 1078, 0, 3972}, + {793, 1079, 506, 154, 0, 3976}, + {279, 796, 1079, 793, 0, 3980}, + {796, 91, 299, 1079, 0, 3984}, + {797, 1080, 505, 153, 0, 3988}, + {280, 800, 1080, 797, 0, 3992}, + {800, 90, 298, 1080, 0, 3996}, + {801, 1081, 504, 152, 0, 4000}, + {281, 804, 1081, 801, 0, 4004}, + {804, 89, 297, 1081, 0, 4008}, + {805, 1082, 306, 98, 0, 4012}, + {282, 808, 1082, 805, 0, 4016}, + {808, 111, 319, 1082, 0, 4020}, + {809, 1083, 305, 97, 0, 4024}, + {283, 812, 1083, 809, 0, 4028}, + {812, 110, 318, 1083, 0, 4032}, + {813, 1084, 328, 120, 0, 4036}, + {284, 816, 1084, 813, 0, 4040}, + {816, 109, 317, 1084, 0, 4044}, + {817, 1085, 316, 108, 0, 4048}, + {285, 820, 1085, 817, 0, 4052}, + {820, 106, 314, 1085, 0, 4056}, + {821, 1086, 315, 107, 0, 4060}, + {286, 824, 1086, 821, 0, 4064}, + {824, 105, 313, 1086, 0, 4068}, + {825, 1087, 311, 103, 0, 4072}, + {287, 828, 1087, 825, 0, 4076}, + {828, 101, 309, 1087, 0, 4080}, + {829, 1088, 310, 102, 0, 4084}, + {288, 832, 1088, 829, 0, 4088}, + {832, 100, 308, 1088, 0, 4092}, +}; + +const edge_polygon mesh_Plane_edge_polygons[] = { +// non-solid polygon +}; + +const mesh_material mesh_Plane_materials[] = { +}; +const vec2 * mesh_Plane_uv_layers[] = { + mesh_Plane_UVMap_uvmap, +}; + +const mesh mesh_Plane = { + .position = mesh_Plane_position, + .position_length = (sizeof (mesh_Plane_position)) / (sizeof (mesh_Plane_position[0])), + .normal = mesh_Plane_normal, + .normal_length = (sizeof (mesh_Plane_normal)) / (sizeof (mesh_Plane_normal[0])), + .polygon_normal = mesh_Plane_polygon_normal, + .polygon_normal_length = (sizeof (mesh_Plane_polygon_normal)) / (sizeof (mesh_Plane_polygon_normal[0])), + .polygons = mesh_Plane_polygons, + .polygons_length = (sizeof (mesh_Plane_polygons)) / (sizeof (mesh_Plane_polygons[0])), + .uv_layers = mesh_Plane_uv_layers, + .uv_layers_length = (sizeof (mesh_Plane_uv_layers)) / (sizeof (mesh_Plane_uv_layers[0])), + .materials = mesh_Plane_materials, + .materials_length = (sizeof (mesh_Plane_materials)) / (sizeof (mesh_Plane_materials[0])), + .edge_polygons = mesh_Plane_edge_polygons, + .edge_polygons_length = (sizeof (mesh_Plane_edge_polygons)) / (sizeof (mesh_Plane_edge_polygons[0])), +}; + +const vec3 mesh_Torus_position[] = { + {1.250000, 0.000000, 0.000000}, + {1.216506, 0.000000, 0.125000}, + {1.125000, 0.000000, 0.216506}, + {1.000000, 0.000000, 0.250000}, + {0.875000, 0.000000, 0.216506}, + {0.783494, 0.000000, 0.125000}, + {0.750000, 0.000000, 0.000000}, + {0.783494, 0.000000, -0.125000}, + {0.875000, 0.000000, -0.216506}, + {1.000000, 0.000000, -0.250000}, + {1.125000, 0.000000, -0.216506}, + {1.216506, 0.000000, -0.125000}, + {1.239306, 0.163158, 0.000000}, + {1.206099, 0.158786, 0.125000}, + {1.115376, 0.146842, 0.216506}, + {0.991445, 0.130526, 0.250000}, + {0.867514, 0.114210, 0.216506}, + {0.776791, 0.102266, 0.125000}, + {0.743584, 0.097895, 0.000000}, + {0.776791, 0.102266, -0.125000}, + {0.867514, 0.114210, -0.216506}, + {0.991445, 0.130526, -0.250000}, + {1.115376, 0.146842, -0.216506}, + {1.206099, 0.158786, -0.125000}, + {1.207407, 0.323524, 0.000000}, + {1.175055, 0.314855, 0.125000}, + {1.086667, 0.291171, 0.216506}, + {0.965926, 0.258819, 0.250000}, + {0.845185, 0.226467, 0.216506}, + {0.756797, 0.202783, 0.125000}, + {0.724444, 0.194114, 0.000000}, + {0.756797, 0.202783, -0.125000}, + {0.845185, 0.226467, -0.216506}, + {0.965926, 0.258819, -0.250000}, + {1.086667, 0.291171, -0.216506}, + {1.175055, 0.314855, -0.125000}, + {1.154849, 0.478354, 0.000000}, + {1.123905, 0.465537, 0.125000}, + {1.039364, 0.430519, 0.216506}, + {0.923880, 0.382683, 0.250000}, + {0.808395, 0.334848, 0.216506}, + {0.723854, 0.299830, 0.125000}, + {0.692910, 0.287013, 0.000000}, + {0.723854, 0.299830, -0.125000}, + {0.808395, 0.334848, -0.216506}, + {0.923880, 0.382683, -0.250000}, + {1.039364, 0.430519, -0.216506}, + {1.123905, 0.465537, -0.125000}, + {1.082532, 0.625000, 0.000000}, + {1.053525, 0.608253, 0.125000}, + {0.974279, 0.562500, 0.216506}, + {0.866025, 0.500000, 0.250000}, + {0.757772, 0.437500, 0.216506}, + {0.678525, 0.391747, 0.125000}, + {0.649519, 0.375000, 0.000000}, + {0.678525, 0.391747, -0.125000}, + {0.757772, 0.437500, -0.216506}, + {0.866025, 0.500000, -0.250000}, + {0.974279, 0.562500, -0.216506}, + {1.053525, 0.608253, -0.125000}, + {0.991692, 0.760952, 0.000000}, + {0.965119, 0.740562, 0.125000}, + {0.892523, 0.684856, 0.216506}, + {0.793353, 0.608761, 0.250000}, + {0.694184, 0.532666, 0.216506}, + {0.621587, 0.476961, 0.125000}, + {0.595015, 0.456571, 0.000000}, + {0.621587, 0.476961, -0.125000}, + {0.694184, 0.532666, -0.216506}, + {0.793353, 0.608761, -0.250000}, + {0.892523, 0.684856, -0.216506}, + {0.965119, 0.740562, -0.125000}, + {0.883883, 0.883884, 0.000000}, + {0.860200, 0.860200, 0.125000}, + {0.795495, 0.795495, 0.216506}, + {0.707107, 0.707107, 0.250000}, + {0.618718, 0.618719, 0.216506}, + {0.554014, 0.554014, 0.125000}, + {0.530330, 0.530330, 0.000000}, + {0.554014, 0.554014, -0.125000}, + {0.618718, 0.618719, -0.216506}, + {0.707107, 0.707107, -0.250000}, + {0.795495, 0.795495, -0.216506}, + {0.860200, 0.860200, -0.125000}, + {0.760952, 0.991691, 0.000000}, + {0.740562, 0.965119, 0.125000}, + {0.684857, 0.892522, 0.216506}, + {0.608762, 0.793353, 0.250000}, + {0.532666, 0.694184, 0.216506}, + {0.476961, 0.621587, 0.125000}, + {0.456571, 0.595015, 0.000000}, + {0.476961, 0.621587, -0.125000}, + {0.532666, 0.694184, -0.216506}, + {0.608762, 0.793353, -0.250000}, + {0.684857, 0.892522, -0.216506}, + {0.740562, 0.965119, -0.125000}, + {0.625000, 1.082532, 0.000000}, + {0.608253, 1.053525, 0.125000}, + {0.562500, 0.974279, 0.216506}, + {0.500000, 0.866025, 0.250000}, + {0.437500, 0.757772, 0.216506}, + {0.391747, 0.678525, 0.125000}, + {0.375000, 0.649519, 0.000000}, + {0.391747, 0.678525, -0.125000}, + {0.437500, 0.757772, -0.216506}, + {0.500000, 0.866025, -0.250000}, + {0.562500, 0.974279, -0.216506}, + {0.608253, 1.053525, -0.125000}, + {0.478355, 1.154849, 0.000000}, + {0.465537, 1.123905, 0.125000}, + {0.430519, 1.039364, 0.216506}, + {0.382684, 0.923879, 0.250000}, + {0.334848, 0.808394, 0.216506}, + {0.299830, 0.723854, 0.125000}, + {0.287013, 0.692910, 0.000000}, + {0.299830, 0.723854, -0.125000}, + {0.334848, 0.808394, -0.216506}, + {0.382684, 0.923879, -0.250000}, + {0.430519, 1.039364, -0.216506}, + {0.465537, 1.123905, -0.125000}, + {0.323524, 1.207407, 0.000000}, + {0.314855, 1.175055, 0.125000}, + {0.291171, 1.086667, 0.216506}, + {0.258819, 0.965926, 0.250000}, + {0.226467, 0.845185, 0.216506}, + {0.202783, 0.756797, 0.125000}, + {0.194114, 0.724444, 0.000000}, + {0.202783, 0.756797, -0.125000}, + {0.226467, 0.845185, -0.216506}, + {0.258819, 0.965926, -0.250000}, + {0.291171, 1.086667, -0.216506}, + {0.314855, 1.175055, -0.125000}, + {0.163158, 1.239306, 0.000000}, + {0.158786, 1.206099, 0.125000}, + {0.146842, 1.115376, 0.216506}, + {0.130526, 0.991445, 0.250000}, + {0.114210, 0.867514, 0.216506}, + {0.102266, 0.776791, 0.125000}, + {0.097895, 0.743584, 0.000000}, + {0.102266, 0.776791, -0.125000}, + {0.114210, 0.867514, -0.216506}, + {0.130526, 0.991445, -0.250000}, + {0.146842, 1.115376, -0.216506}, + {0.158786, 1.206099, -0.125000}, + {0.000000, 1.250000, 0.000000}, + {0.000000, 1.216506, 0.125000}, + {0.000000, 1.125000, 0.216506}, + {0.000000, 1.000000, 0.250000}, + {0.000000, 0.875000, 0.216506}, + {0.000000, 0.783494, 0.125000}, + {0.000000, 0.750000, 0.000000}, + {0.000000, 0.783494, -0.125000}, + {0.000000, 0.875000, -0.216506}, + {0.000000, 1.000000, -0.250000}, + {0.000000, 1.125000, -0.216506}, + {0.000000, 1.216506, -0.125000}, + {-0.163158, 1.239306, 0.000000}, + {-0.158786, 1.206099, 0.125000}, + {-0.146842, 1.115375, 0.216506}, + {-0.130526, 0.991445, 0.250000}, + {-0.114211, 0.867514, 0.216506}, + {-0.102267, 0.776791, 0.125000}, + {-0.097895, 0.743584, 0.000000}, + {-0.102267, 0.776791, -0.125000}, + {-0.114211, 0.867514, -0.216506}, + {-0.130526, 0.991445, -0.250000}, + {-0.146842, 1.115375, -0.216506}, + {-0.158786, 1.206099, -0.125000}, + {-0.323524, 1.207407, 0.000000}, + {-0.314855, 1.175055, 0.125000}, + {-0.291171, 1.086667, 0.216506}, + {-0.258819, 0.965926, 0.250000}, + {-0.226467, 0.845185, 0.216506}, + {-0.202783, 0.756797, 0.125000}, + {-0.194114, 0.724444, 0.000000}, + {-0.202783, 0.756797, -0.125000}, + {-0.226467, 0.845185, -0.216506}, + {-0.258819, 0.965926, -0.250000}, + {-0.291171, 1.086667, -0.216506}, + {-0.314855, 1.175055, -0.125000}, + {-0.478354, 1.154849, 0.000000}, + {-0.465537, 1.123905, 0.125000}, + {-0.430519, 1.039364, 0.216506}, + {-0.382684, 0.923880, 0.250000}, + {-0.334848, 0.808395, 0.216506}, + {-0.299830, 0.723854, 0.125000}, + {-0.287013, 0.692910, 0.000000}, + {-0.299830, 0.723854, -0.125000}, + {-0.334848, 0.808395, -0.216506}, + {-0.382684, 0.923880, -0.250000}, + {-0.430519, 1.039364, -0.216506}, + {-0.465537, 1.123905, -0.125000}, + {-0.625000, 1.082532, 0.000000}, + {-0.608253, 1.053526, 0.125000}, + {-0.562500, 0.974279, 0.216506}, + {-0.500000, 0.866026, 0.250000}, + {-0.437500, 0.757772, 0.216506}, + {-0.391747, 0.678525, 0.125000}, + {-0.375000, 0.649519, 0.000000}, + {-0.391747, 0.678525, -0.125000}, + {-0.437500, 0.757772, -0.216506}, + {-0.500000, 0.866026, -0.250000}, + {-0.562500, 0.974279, -0.216506}, + {-0.608253, 1.053526, -0.125000}, + {-0.760952, 0.991692, 0.000000}, + {-0.740562, 0.965119, 0.125000}, + {-0.684857, 0.892522, 0.216506}, + {-0.608761, 0.793353, 0.250000}, + {-0.532666, 0.694184, 0.216506}, + {-0.476961, 0.621587, 0.125000}, + {-0.456571, 0.595015, 0.000000}, + {-0.476961, 0.621587, -0.125000}, + {-0.532666, 0.694184, -0.216506}, + {-0.608761, 0.793353, -0.250000}, + {-0.684857, 0.892522, -0.216506}, + {-0.740562, 0.965119, -0.125000}, + {-0.883884, 0.883883, 0.000000}, + {-0.860200, 0.860200, 0.125000}, + {-0.795495, 0.795495, 0.216506}, + {-0.707107, 0.707107, 0.250000}, + {-0.618719, 0.618718, 0.216506}, + {-0.554014, 0.554013, 0.125000}, + {-0.530330, 0.530330, 0.000000}, + {-0.554014, 0.554013, -0.125000}, + {-0.618719, 0.618718, -0.216506}, + {-0.707107, 0.707107, -0.250000}, + {-0.795495, 0.795495, -0.216506}, + {-0.860200, 0.860200, -0.125000}, + {-0.991692, 0.760952, 0.000000}, + {-0.965119, 0.740562, 0.125000}, + {-0.892522, 0.684857, 0.216506}, + {-0.793353, 0.608761, 0.250000}, + {-0.694184, 0.532666, 0.216506}, + {-0.621587, 0.476961, 0.125000}, + {-0.595015, 0.456571, 0.000000}, + {-0.621587, 0.476961, -0.125000}, + {-0.694184, 0.532666, -0.216506}, + {-0.793353, 0.608761, -0.250000}, + {-0.892522, 0.684857, -0.216506}, + {-0.965119, 0.740562, -0.125000}, + {-1.082532, 0.625000, 0.000000}, + {-1.053525, 0.608253, 0.125000}, + {-0.974278, 0.562500, 0.216506}, + {-0.866025, 0.500000, 0.250000}, + {-0.757772, 0.437500, 0.216506}, + {-0.678525, 0.391747, 0.125000}, + {-0.649519, 0.375000, 0.000000}, + {-0.678525, 0.391747, -0.125000}, + {-0.757772, 0.437500, -0.216506}, + {-0.866025, 0.500000, -0.250000}, + {-0.974278, 0.562500, -0.216506}, + {-1.053525, 0.608253, -0.125000}, + {-1.154849, 0.478354, 0.000000}, + {-1.123905, 0.465537, 0.125000}, + {-1.039364, 0.430519, 0.216506}, + {-0.923880, 0.382683, 0.250000}, + {-0.808395, 0.334848, 0.216506}, + {-0.723854, 0.299830, 0.125000}, + {-0.692910, 0.287013, 0.000000}, + {-0.723854, 0.299830, -0.125000}, + {-0.808395, 0.334848, -0.216506}, + {-0.923880, 0.382683, -0.250000}, + {-1.039364, 0.430519, -0.216506}, + {-1.123905, 0.465537, -0.125000}, + {-1.207407, 0.323524, 0.000000}, + {-1.175055, 0.314855, 0.125000}, + {-1.086667, 0.291171, 0.216506}, + {-0.965926, 0.258819, 0.250000}, + {-0.845185, 0.226467, 0.216506}, + {-0.756797, 0.202783, 0.125000}, + {-0.724444, 0.194114, 0.000000}, + {-0.756797, 0.202783, -0.125000}, + {-0.845185, 0.226467, -0.216506}, + {-0.965926, 0.258819, -0.250000}, + {-1.086667, 0.291171, -0.216506}, + {-1.175055, 0.314855, -0.125000}, + {-1.239306, 0.163158, 0.000000}, + {-1.206099, 0.158786, 0.125000}, + {-1.115375, 0.146842, 0.216506}, + {-0.991445, 0.130526, 0.250000}, + {-0.867514, 0.114211, 0.216506}, + {-0.776791, 0.102267, 0.125000}, + {-0.743584, 0.097895, 0.000000}, + {-0.776791, 0.102267, -0.125000}, + {-0.867514, 0.114211, -0.216506}, + {-0.991445, 0.130526, -0.250000}, + {-1.115375, 0.146842, -0.216506}, + {-1.206099, 0.158786, -0.125000}, + {-1.250000, 0.000000, 0.000000}, + {-1.216506, 0.000000, 0.125000}, + {-1.125000, 0.000000, 0.216506}, + {-1.000000, 0.000000, 0.250000}, + {-0.875000, 0.000000, 0.216506}, + {-0.783494, 0.000000, 0.125000}, + {-0.750000, 0.000000, 0.000000}, + {-0.783494, 0.000000, -0.125000}, + {-0.875000, 0.000000, -0.216506}, + {-1.000000, 0.000000, -0.250000}, + {-1.125000, 0.000000, -0.216506}, + {-1.216506, 0.000000, -0.125000}, + {-1.239306, -0.163158, 0.000000}, + {-1.206099, -0.158786, 0.125000}, + {-1.115375, -0.146842, 0.216506}, + {-0.991445, -0.130526, 0.250000}, + {-0.867514, -0.114211, 0.216506}, + {-0.776791, -0.102267, 0.125000}, + {-0.743584, -0.097895, 0.000000}, + {-0.776791, -0.102267, -0.125000}, + {-0.867514, -0.114211, -0.216506}, + {-0.991445, -0.130526, -0.250000}, + {-1.115375, -0.146842, -0.216506}, + {-1.206099, -0.158786, -0.125000}, + {-1.207407, -0.323524, 0.000000}, + {-1.175055, -0.314855, 0.125000}, + {-1.086667, -0.291171, 0.216506}, + {-0.965926, -0.258819, 0.250000}, + {-0.845185, -0.226467, 0.216506}, + {-0.756797, -0.202783, 0.125000}, + {-0.724444, -0.194114, 0.000000}, + {-0.756797, -0.202783, -0.125000}, + {-0.845185, -0.226467, -0.216506}, + {-0.965926, -0.258819, -0.250000}, + {-1.086667, -0.291171, -0.216506}, + {-1.175055, -0.314855, -0.125000}, + {-1.154850, -0.478354, 0.000000}, + {-1.123906, -0.465536, 0.125000}, + {-1.039365, -0.430518, 0.216506}, + {-0.923880, -0.382683, 0.250000}, + {-0.808395, -0.334848, 0.216506}, + {-0.723854, -0.299830, 0.125000}, + {-0.692910, -0.287012, 0.000000}, + {-0.723854, -0.299830, -0.125000}, + {-0.808395, -0.334848, -0.216506}, + {-0.923880, -0.382683, -0.250000}, + {-1.039365, -0.430518, -0.216506}, + {-1.123906, -0.465536, -0.125000}, + {-1.082532, -0.625000, 0.000000}, + {-1.053526, -0.608253, 0.125000}, + {-0.974279, -0.562500, 0.216506}, + {-0.866026, -0.500000, 0.250000}, + {-0.757772, -0.437500, 0.216506}, + {-0.678525, -0.391747, 0.125000}, + {-0.649519, -0.375000, 0.000000}, + {-0.678525, -0.391747, -0.125000}, + {-0.757772, -0.437500, -0.216506}, + {-0.866026, -0.500000, -0.250000}, + {-0.974279, -0.562500, -0.216506}, + {-1.053526, -0.608253, -0.125000}, + {-0.991692, -0.760952, 0.000000}, + {-0.965119, -0.740562, 0.125000}, + {-0.892522, -0.684857, 0.216506}, + {-0.793353, -0.608761, 0.250000}, + {-0.694184, -0.532666, 0.216506}, + {-0.621587, -0.476961, 0.125000}, + {-0.595015, -0.456571, 0.000000}, + {-0.621587, -0.476961, -0.125000}, + {-0.694184, -0.532666, -0.216506}, + {-0.793353, -0.608761, -0.250000}, + {-0.892522, -0.684857, -0.216506}, + {-0.965119, -0.740562, -0.125000}, + {-0.883884, -0.883883, 0.000000}, + {-0.860200, -0.860200, 0.125000}, + {-0.795495, -0.795495, 0.216506}, + {-0.707107, -0.707107, 0.250000}, + {-0.618719, -0.618718, 0.216506}, + {-0.554014, -0.554013, 0.125000}, + {-0.530330, -0.530330, 0.000000}, + {-0.554014, -0.554013, -0.125000}, + {-0.618719, -0.618718, -0.216506}, + {-0.707107, -0.707107, -0.250000}, + {-0.795495, -0.795495, -0.216506}, + {-0.860200, -0.860200, -0.125000}, + {-0.760952, -0.991691, 0.000000}, + {-0.740563, -0.965119, 0.125000}, + {-0.684857, -0.892522, 0.216506}, + {-0.608762, -0.793353, 0.250000}, + {-0.532667, -0.694184, 0.216506}, + {-0.476961, -0.621587, 0.125000}, + {-0.456571, -0.595015, 0.000000}, + {-0.476961, -0.621587, -0.125000}, + {-0.532667, -0.694184, -0.216506}, + {-0.608762, -0.793353, -0.250000}, + {-0.684857, -0.892522, -0.216506}, + {-0.740563, -0.965119, -0.125000}, + {-0.625000, -1.082532, 0.000000}, + {-0.608253, -1.053526, 0.125000}, + {-0.562500, -0.974279, 0.216506}, + {-0.500000, -0.866026, 0.250000}, + {-0.437500, -0.757772, 0.216506}, + {-0.391747, -0.678525, 0.125000}, + {-0.375000, -0.649519, 0.000000}, + {-0.391747, -0.678525, -0.125000}, + {-0.437500, -0.757772, -0.216506}, + {-0.500000, -0.866026, -0.250000}, + {-0.562500, -0.974279, -0.216506}, + {-0.608253, -1.053526, -0.125000}, + {-0.478354, -1.154849, 0.000000}, + {-0.465537, -1.123905, 0.125000}, + {-0.430519, -1.039364, 0.216506}, + {-0.382684, -0.923880, 0.250000}, + {-0.334848, -0.808395, 0.216506}, + {-0.299830, -0.723854, 0.125000}, + {-0.287013, -0.692910, 0.000000}, + {-0.299830, -0.723854, -0.125000}, + {-0.334848, -0.808395, -0.216506}, + {-0.382684, -0.923880, -0.250000}, + {-0.430519, -1.039364, -0.216506}, + {-0.465537, -1.123905, -0.125000}, + {-0.323524, -1.207407, 0.000000}, + {-0.314855, -1.175055, 0.125000}, + {-0.291172, -1.086666, 0.216506}, + {-0.258819, -0.965926, 0.250000}, + {-0.226467, -0.845185, 0.216506}, + {-0.202783, -0.756797, 0.125000}, + {-0.194115, -0.724444, 0.000000}, + {-0.202783, -0.756797, -0.125000}, + {-0.226467, -0.845185, -0.216506}, + {-0.258819, -0.965926, -0.250000}, + {-0.291172, -1.086666, -0.216506}, + {-0.314855, -1.175055, -0.125000}, + {-0.163158, -1.239306, 0.000000}, + {-0.158787, -1.206099, 0.125000}, + {-0.146843, -1.115375, 0.216506}, + {-0.130527, -0.991445, 0.250000}, + {-0.114211, -0.867514, 0.216506}, + {-0.102267, -0.776791, 0.125000}, + {-0.097895, -0.743584, 0.000000}, + {-0.102267, -0.776791, -0.125000}, + {-0.114211, -0.867514, -0.216506}, + {-0.130527, -0.991445, -0.250000}, + {-0.146843, -1.115375, -0.216506}, + {-0.158787, -1.206099, -0.125000}, + {0.000000, -1.250000, 0.000000}, + {0.000000, -1.216506, 0.125000}, + {0.000000, -1.125000, 0.216506}, + {0.000000, -1.000000, 0.250000}, + {0.000000, -0.875000, 0.216506}, + {0.000000, -0.783494, 0.125000}, + {0.000000, -0.750000, 0.000000}, + {0.000000, -0.783494, -0.125000}, + {0.000000, -0.875000, -0.216506}, + {0.000000, -1.000000, -0.250000}, + {0.000000, -1.125000, -0.216506}, + {0.000000, -1.216506, -0.125000}, + {0.163158, -1.239306, 0.000000}, + {0.158786, -1.206099, 0.125000}, + {0.146842, -1.115376, 0.216506}, + {0.130526, -0.991445, 0.250000}, + {0.114210, -0.867514, 0.216506}, + {0.102266, -0.776791, 0.125000}, + {0.097895, -0.743584, 0.000000}, + {0.102266, -0.776791, -0.125000}, + {0.114210, -0.867514, -0.216506}, + {0.130526, -0.991445, -0.250000}, + {0.146842, -1.115376, -0.216506}, + {0.158786, -1.206099, -0.125000}, + {0.323523, -1.207407, 0.000000}, + {0.314854, -1.175055, 0.125000}, + {0.291171, -1.086667, 0.216506}, + {0.258819, -0.965926, 0.250000}, + {0.226466, -0.845185, 0.216506}, + {0.202783, -0.756797, 0.125000}, + {0.194114, -0.724444, 0.000000}, + {0.202783, -0.756797, -0.125000}, + {0.226466, -0.845185, -0.216506}, + {0.258819, -0.965926, -0.250000}, + {0.291171, -1.086667, -0.216506}, + {0.314854, -1.175055, -0.125000}, + {0.478355, -1.154849, 0.000000}, + {0.465537, -1.123905, 0.125000}, + {0.430519, -1.039364, 0.216506}, + {0.382684, -0.923879, 0.250000}, + {0.334848, -0.808394, 0.216506}, + {0.299830, -0.723854, 0.125000}, + {0.287013, -0.692910, 0.000000}, + {0.299830, -0.723854, -0.125000}, + {0.334848, -0.808394, -0.216506}, + {0.382684, -0.923879, -0.250000}, + {0.430519, -1.039364, -0.216506}, + {0.465537, -1.123905, -0.125000}, + {0.625000, -1.082532, 0.000000}, + {0.608253, -1.053525, 0.125000}, + {0.562500, -0.974279, 0.216506}, + {0.500000, -0.866025, 0.250000}, + {0.437500, -0.757772, 0.216506}, + {0.391747, -0.678525, 0.125000}, + {0.375000, -0.649519, 0.000000}, + {0.391747, -0.678525, -0.125000}, + {0.437500, -0.757772, -0.216506}, + {0.500000, -0.866025, -0.250000}, + {0.562500, -0.974279, -0.216506}, + {0.608253, -1.053525, -0.125000}, + {0.760952, -0.991692, 0.000000}, + {0.740562, -0.965120, 0.125000}, + {0.684856, -0.892523, 0.216506}, + {0.608761, -0.793353, 0.250000}, + {0.532666, -0.694184, 0.216506}, + {0.476961, -0.621587, 0.125000}, + {0.456571, -0.595015, 0.000000}, + {0.476961, -0.621587, -0.125000}, + {0.532666, -0.694184, -0.216506}, + {0.608761, -0.793353, -0.250000}, + {0.684856, -0.892523, -0.216506}, + {0.740562, -0.965120, -0.125000}, + {0.883883, -0.883884, 0.000000}, + {0.860199, -0.860200, 0.125000}, + {0.795495, -0.795496, 0.216506}, + {0.707106, -0.707107, 0.250000}, + {0.618718, -0.618719, 0.216506}, + {0.554013, -0.554014, 0.125000}, + {0.530330, -0.530330, 0.000000}, + {0.554013, -0.554014, -0.125000}, + {0.618718, -0.618719, -0.216506}, + {0.707106, -0.707107, -0.250000}, + {0.795495, -0.795496, -0.216506}, + {0.860199, -0.860200, -0.125000}, + {0.991692, -0.760952, 0.000000}, + {0.965119, -0.740562, 0.125000}, + {0.892523, -0.684856, 0.216506}, + {0.793353, -0.608761, 0.250000}, + {0.694184, -0.532666, 0.216506}, + {0.621587, -0.476961, 0.125000}, + {0.595015, -0.456571, 0.000000}, + {0.621587, -0.476961, -0.125000}, + {0.694184, -0.532666, -0.216506}, + {0.793353, -0.608761, -0.250000}, + {0.892523, -0.684856, -0.216506}, + {0.965119, -0.740562, -0.125000}, + {1.082532, -0.625000, 0.000000}, + {1.053525, -0.608253, 0.125000}, + {0.974279, -0.562500, 0.216506}, + {0.866025, -0.500000, 0.250000}, + {0.757772, -0.437500, 0.216506}, + {0.678525, -0.391747, 0.125000}, + {0.649519, -0.375000, 0.000000}, + {0.678525, -0.391747, -0.125000}, + {0.757772, -0.437500, -0.216506}, + {0.866025, -0.500000, -0.250000}, + {0.974279, -0.562500, -0.216506}, + {1.053525, -0.608253, -0.125000}, + {1.154849, -0.478355, 0.000000}, + {1.123905, -0.465537, 0.125000}, + {1.039364, -0.430519, 0.216506}, + {0.923879, -0.382684, 0.250000}, + {0.808394, -0.334848, 0.216506}, + {0.723854, -0.299830, 0.125000}, + {0.692910, -0.287013, 0.000000}, + {0.723854, -0.299830, -0.125000}, + {0.808394, -0.334848, -0.216506}, + {0.923879, -0.382684, -0.250000}, + {1.039364, -0.430519, -0.216506}, + {1.123905, -0.465537, -0.125000}, + {1.207407, -0.323523, 0.000000}, + {1.175055, -0.314855, 0.125000}, + {1.086667, -0.291171, 0.216506}, + {0.965926, -0.258819, 0.250000}, + {0.845185, -0.226466, 0.216506}, + {0.756797, -0.202783, 0.125000}, + {0.724444, -0.194114, 0.000000}, + {0.756797, -0.202783, -0.125000}, + {0.845185, -0.226466, -0.216506}, + {0.965926, -0.258819, -0.250000}, + {1.086667, -0.291171, -0.216506}, + {1.175055, -0.314855, -0.125000}, + {1.239306, -0.163158, 0.000000}, + {1.206099, -0.158786, 0.125000}, + {1.115376, -0.146842, 0.216506}, + {0.991445, -0.130526, 0.250000}, + {0.867514, -0.114210, 0.216506}, + {0.776791, -0.102266, 0.125000}, + {0.743584, -0.097895, 0.000000}, + {0.776791, -0.102266, -0.125000}, + {0.867514, -0.114210, -0.216506}, + {0.991445, -0.130526, -0.250000}, + {1.115376, -0.146842, -0.216506}, + {1.206099, -0.158786, -0.125000}, +}; + +const vec2 mesh_Torus_UVMap_uvmap[] = { + {0.500000, 0.500000}, + {0.520833, 0.500000}, + {0.520833, 0.583333}, + {0.500000, 0.583333}, + {0.500000, 0.583333}, + {0.520833, 0.583333}, + {0.520833, 0.666667}, + {0.500000, 0.666667}, + {0.500000, 0.666667}, + {0.520833, 0.666667}, + {0.520833, 0.750000}, + {0.500000, 0.750000}, + {0.500000, 0.750000}, + {0.520833, 0.750000}, + {0.520833, 0.833333}, + {0.500000, 0.833333}, + {0.500000, 0.833333}, + {0.520833, 0.833333}, + {0.520833, 0.916667}, + {0.500000, 0.916667}, + {0.500000, 0.916667}, + {0.520833, 0.916667}, + {0.520833, 1.000000}, + {0.500000, 1.000000}, + {0.500000, 0.000000}, + {0.520833, 0.000000}, + {0.520833, 0.083333}, + {0.500000, 0.083333}, + {0.500000, 0.083333}, + {0.520833, 0.083333}, + {0.520833, 0.166667}, + {0.500000, 0.166667}, + {0.500000, 0.166667}, + {0.520833, 0.166667}, + {0.520833, 0.250000}, + {0.500000, 0.250000}, + {0.500000, 0.250000}, + {0.520833, 0.250000}, + {0.520833, 0.333333}, + {0.500000, 0.333333}, + {0.500000, 0.333333}, + {0.520833, 0.333333}, + {0.520833, 0.416667}, + {0.500000, 0.416667}, + {0.500000, 0.416667}, + {0.520833, 0.416667}, + {0.520833, 0.500000}, + {0.500000, 0.500000}, + {0.520833, 0.500000}, + {0.541667, 0.500000}, + {0.541667, 0.583333}, + {0.520833, 0.583333}, + {0.520833, 0.583333}, + {0.541667, 0.583333}, + {0.541667, 0.666667}, + {0.520833, 0.666667}, + {0.520833, 0.666667}, + {0.541667, 0.666667}, + {0.541667, 0.750000}, + {0.520833, 0.750000}, + {0.520833, 0.750000}, + {0.541667, 0.750000}, + {0.541667, 0.833333}, + {0.520833, 0.833333}, + {0.520833, 0.833333}, + {0.541667, 0.833333}, + {0.541667, 0.916667}, + {0.520833, 0.916667}, + {0.520833, 0.916667}, + {0.541667, 0.916667}, + {0.541667, 1.000000}, + {0.520833, 1.000000}, + {0.520833, 0.000000}, + {0.541667, 0.000000}, + {0.541667, 0.083333}, + {0.520833, 0.083333}, + {0.520833, 0.083333}, + {0.541667, 0.083333}, + {0.541667, 0.166667}, + {0.520833, 0.166667}, + {0.520833, 0.166667}, + {0.541667, 0.166667}, + {0.541667, 0.250000}, + {0.520833, 0.250000}, + {0.520833, 0.250000}, + {0.541667, 0.250000}, + {0.541667, 0.333333}, + {0.520833, 0.333333}, + {0.520833, 0.333333}, + {0.541667, 0.333333}, + {0.541667, 0.416667}, + {0.520833, 0.416667}, + {0.520833, 0.416667}, + {0.541667, 0.416667}, + {0.541667, 0.500000}, + {0.520833, 0.500000}, + {0.541667, 0.500000}, + {0.562500, 0.500000}, + {0.562500, 0.583333}, + {0.541667, 0.583333}, + {0.541667, 0.583333}, + {0.562500, 0.583333}, + {0.562500, 0.666667}, + {0.541667, 0.666667}, + {0.541667, 0.666667}, + {0.562500, 0.666667}, + {0.562500, 0.750000}, + {0.541667, 0.750000}, + {0.541667, 0.750000}, + {0.562500, 0.750000}, + {0.562500, 0.833333}, + {0.541667, 0.833333}, + {0.541667, 0.833333}, + {0.562500, 0.833333}, + {0.562500, 0.916667}, + {0.541667, 0.916667}, + {0.541667, 0.916667}, + {0.562500, 0.916667}, + {0.562500, 1.000000}, + {0.541667, 1.000000}, + {0.541667, 0.000000}, + {0.562500, 0.000000}, + {0.562500, 0.083333}, + {0.541667, 0.083333}, + {0.541667, 0.083333}, + {0.562500, 0.083333}, + {0.562500, 0.166667}, + {0.541667, 0.166667}, + {0.541667, 0.166667}, + {0.562500, 0.166667}, + {0.562500, 0.250000}, + {0.541667, 0.250000}, + {0.541667, 0.250000}, + {0.562500, 0.250000}, + {0.562500, 0.333333}, + {0.541667, 0.333333}, + {0.541667, 0.333333}, + {0.562500, 0.333333}, + {0.562500, 0.416667}, + {0.541667, 0.416667}, + {0.541667, 0.416667}, + {0.562500, 0.416667}, + {0.562500, 0.500000}, + {0.541667, 0.500000}, + {0.562500, 0.500000}, + {0.583333, 0.500000}, + {0.583333, 0.583333}, + {0.562500, 0.583333}, + {0.562500, 0.583333}, + {0.583333, 0.583333}, + {0.583333, 0.666667}, + {0.562500, 0.666667}, + {0.562500, 0.666667}, + {0.583333, 0.666667}, + {0.583333, 0.750000}, + {0.562500, 0.750000}, + {0.562500, 0.750000}, + {0.583333, 0.750000}, + {0.583333, 0.833333}, + {0.562500, 0.833333}, + {0.562500, 0.833333}, + {0.583333, 0.833333}, + {0.583333, 0.916667}, + {0.562500, 0.916667}, + {0.562500, 0.916667}, + {0.583333, 0.916667}, + {0.583333, 1.000000}, + {0.562500, 1.000000}, + {0.562500, 0.000000}, + {0.583333, 0.000000}, + {0.583333, 0.083333}, + {0.562500, 0.083333}, + {0.562500, 0.083333}, + {0.583333, 0.083333}, + {0.583333, 0.166667}, + {0.562500, 0.166667}, + {0.562500, 0.166667}, + {0.583333, 0.166667}, + {0.583333, 0.250000}, + {0.562500, 0.250000}, + {0.562500, 0.250000}, + {0.583333, 0.250000}, + {0.583333, 0.333333}, + {0.562500, 0.333333}, + {0.562500, 0.333333}, + {0.583333, 0.333333}, + {0.583333, 0.416667}, + {0.562500, 0.416667}, + {0.562500, 0.416667}, + {0.583333, 0.416667}, + {0.583333, 0.500000}, + {0.562500, 0.500000}, + {0.583333, 0.500000}, + {0.604167, 0.500000}, + {0.604167, 0.583333}, + {0.583333, 0.583333}, + {0.583333, 0.583333}, + {0.604167, 0.583333}, + {0.604167, 0.666667}, + {0.583333, 0.666667}, + {0.583333, 0.666667}, + {0.604167, 0.666667}, + {0.604167, 0.750000}, + {0.583333, 0.750000}, + {0.583333, 0.750000}, + {0.604167, 0.750000}, + {0.604167, 0.833333}, + {0.583333, 0.833333}, + {0.583333, 0.833333}, + {0.604167, 0.833333}, + {0.604167, 0.916667}, + {0.583333, 0.916667}, + {0.583333, 0.916667}, + {0.604167, 0.916667}, + {0.604167, 1.000000}, + {0.583333, 1.000000}, + {0.583333, 0.000000}, + {0.604167, 0.000000}, + {0.604167, 0.083333}, + {0.583333, 0.083333}, + {0.583333, 0.083333}, + {0.604167, 0.083333}, + {0.604167, 0.166667}, + {0.583333, 0.166667}, + {0.583333, 0.166667}, + {0.604167, 0.166667}, + {0.604167, 0.250000}, + {0.583333, 0.250000}, + {0.583333, 0.250000}, + {0.604167, 0.250000}, + {0.604167, 0.333333}, + {0.583333, 0.333333}, + {0.583333, 0.333333}, + {0.604167, 0.333333}, + {0.604167, 0.416667}, + {0.583333, 0.416667}, + {0.583333, 0.416667}, + {0.604167, 0.416667}, + {0.604167, 0.500000}, + {0.583333, 0.500000}, + {0.604167, 0.500000}, + {0.625000, 0.500000}, + {0.625000, 0.583333}, + {0.604167, 0.583333}, + {0.604167, 0.583333}, + {0.625000, 0.583333}, + {0.625000, 0.666667}, + {0.604167, 0.666667}, + {0.604167, 0.666667}, + {0.625000, 0.666667}, + {0.625000, 0.750000}, + {0.604167, 0.750000}, + {0.604167, 0.750000}, + {0.625000, 0.750000}, + {0.625000, 0.833333}, + {0.604167, 0.833333}, + {0.604167, 0.833333}, + {0.625000, 0.833333}, + {0.625000, 0.916667}, + {0.604167, 0.916667}, + {0.604167, 0.916667}, + {0.625000, 0.916667}, + {0.625000, 1.000000}, + {0.604167, 1.000000}, + {0.604167, 0.000000}, + {0.625000, 0.000000}, + {0.625000, 0.083333}, + {0.604167, 0.083333}, + {0.604167, 0.083333}, + {0.625000, 0.083333}, + {0.625000, 0.166667}, + {0.604167, 0.166667}, + {0.604167, 0.166667}, + {0.625000, 0.166667}, + {0.625000, 0.250000}, + {0.604167, 0.250000}, + {0.604167, 0.250000}, + {0.625000, 0.250000}, + {0.625000, 0.333333}, + {0.604167, 0.333333}, + {0.604167, 0.333333}, + {0.625000, 0.333333}, + {0.625000, 0.416667}, + {0.604167, 0.416667}, + {0.604167, 0.416667}, + {0.625000, 0.416667}, + {0.625000, 0.500000}, + {0.604167, 0.500000}, + {0.625000, 0.500000}, + {0.645833, 0.500000}, + {0.645833, 0.583333}, + {0.625000, 0.583333}, + {0.625000, 0.583333}, + {0.645833, 0.583333}, + {0.645833, 0.666667}, + {0.625000, 0.666667}, + {0.625000, 0.666667}, + {0.645833, 0.666667}, + {0.645833, 0.750000}, + {0.625000, 0.750000}, + {0.625000, 0.750000}, + {0.645833, 0.750000}, + {0.645833, 0.833333}, + {0.625000, 0.833333}, + {0.625000, 0.833333}, + {0.645833, 0.833333}, + {0.645833, 0.916667}, + {0.625000, 0.916667}, + {0.625000, 0.916667}, + {0.645833, 0.916667}, + {0.645833, 1.000000}, + {0.625000, 1.000000}, + {0.625000, 0.000000}, + {0.645833, 0.000000}, + {0.645833, 0.083333}, + {0.625000, 0.083333}, + {0.625000, 0.083333}, + {0.645833, 0.083333}, + {0.645833, 0.166667}, + {0.625000, 0.166667}, + {0.625000, 0.166667}, + {0.645833, 0.166667}, + {0.645833, 0.250000}, + {0.625000, 0.250000}, + {0.625000, 0.250000}, + {0.645833, 0.250000}, + {0.645833, 0.333333}, + {0.625000, 0.333333}, + {0.625000, 0.333333}, + {0.645833, 0.333333}, + {0.645833, 0.416667}, + {0.625000, 0.416667}, + {0.625000, 0.416667}, + {0.645833, 0.416667}, + {0.645833, 0.500000}, + {0.625000, 0.500000}, + {0.645833, 0.500000}, + {0.666667, 0.500000}, + {0.666667, 0.583333}, + {0.645833, 0.583333}, + {0.645833, 0.583333}, + {0.666667, 0.583333}, + {0.666667, 0.666667}, + {0.645833, 0.666667}, + {0.645833, 0.666667}, + {0.666667, 0.666667}, + {0.666667, 0.750000}, + {0.645833, 0.750000}, + {0.645833, 0.750000}, + {0.666667, 0.750000}, + {0.666667, 0.833333}, + {0.645833, 0.833333}, + {0.645833, 0.833333}, + {0.666667, 0.833333}, + {0.666667, 0.916667}, + {0.645833, 0.916667}, + {0.645833, 0.916667}, + {0.666667, 0.916667}, + {0.666667, 1.000000}, + {0.645833, 1.000000}, + {0.645833, 0.000000}, + {0.666667, 0.000000}, + {0.666667, 0.083333}, + {0.645833, 0.083333}, + {0.645833, 0.083333}, + {0.666667, 0.083333}, + {0.666667, 0.166667}, + {0.645833, 0.166667}, + {0.645833, 0.166667}, + {0.666667, 0.166667}, + {0.666667, 0.250000}, + {0.645833, 0.250000}, + {0.645833, 0.250000}, + {0.666667, 0.250000}, + {0.666667, 0.333333}, + {0.645833, 0.333333}, + {0.645833, 0.333333}, + {0.666667, 0.333333}, + {0.666667, 0.416667}, + {0.645833, 0.416667}, + {0.645833, 0.416667}, + {0.666667, 0.416667}, + {0.666667, 0.500000}, + {0.645833, 0.500000}, + {0.666667, 0.500000}, + {0.687500, 0.500000}, + {0.687500, 0.583333}, + {0.666667, 0.583333}, + {0.666667, 0.583333}, + {0.687500, 0.583333}, + {0.687500, 0.666667}, + {0.666667, 0.666667}, + {0.666667, 0.666667}, + {0.687500, 0.666667}, + {0.687500, 0.750000}, + {0.666667, 0.750000}, + {0.666667, 0.750000}, + {0.687500, 0.750000}, + {0.687500, 0.833333}, + {0.666667, 0.833333}, + {0.666667, 0.833333}, + {0.687500, 0.833333}, + {0.687500, 0.916667}, + {0.666667, 0.916667}, + {0.666667, 0.916667}, + {0.687500, 0.916667}, + {0.687500, 1.000000}, + {0.666667, 1.000000}, + {0.666667, 0.000000}, + {0.687500, 0.000000}, + {0.687500, 0.083333}, + {0.666667, 0.083333}, + {0.666667, 0.083333}, + {0.687500, 0.083333}, + {0.687500, 0.166667}, + {0.666667, 0.166667}, + {0.666667, 0.166667}, + {0.687500, 0.166667}, + {0.687500, 0.250000}, + {0.666667, 0.250000}, + {0.666667, 0.250000}, + {0.687500, 0.250000}, + {0.687500, 0.333333}, + {0.666667, 0.333333}, + {0.666667, 0.333333}, + {0.687500, 0.333333}, + {0.687500, 0.416667}, + {0.666667, 0.416667}, + {0.666667, 0.416667}, + {0.687500, 0.416667}, + {0.687500, 0.500000}, + {0.666667, 0.500000}, + {0.687500, 0.500000}, + {0.708333, 0.500000}, + {0.708333, 0.583333}, + {0.687500, 0.583333}, + {0.687500, 0.583333}, + {0.708333, 0.583333}, + {0.708333, 0.666667}, + {0.687500, 0.666667}, + {0.687500, 0.666667}, + {0.708333, 0.666667}, + {0.708333, 0.750000}, + {0.687500, 0.750000}, + {0.687500, 0.750000}, + {0.708333, 0.750000}, + {0.708333, 0.833333}, + {0.687500, 0.833333}, + {0.687500, 0.833333}, + {0.708333, 0.833333}, + {0.708333, 0.916667}, + {0.687500, 0.916667}, + {0.687500, 0.916667}, + {0.708333, 0.916667}, + {0.708333, 1.000000}, + {0.687500, 1.000000}, + {0.687500, 0.000000}, + {0.708333, 0.000000}, + {0.708333, 0.083333}, + {0.687500, 0.083333}, + {0.687500, 0.083333}, + {0.708333, 0.083333}, + {0.708333, 0.166667}, + {0.687500, 0.166667}, + {0.687500, 0.166667}, + {0.708333, 0.166667}, + {0.708333, 0.250000}, + {0.687500, 0.250000}, + {0.687500, 0.250000}, + {0.708333, 0.250000}, + {0.708333, 0.333333}, + {0.687500, 0.333333}, + {0.687500, 0.333333}, + {0.708333, 0.333333}, + {0.708333, 0.416667}, + {0.687500, 0.416667}, + {0.687500, 0.416667}, + {0.708333, 0.416667}, + {0.708333, 0.500000}, + {0.687500, 0.500000}, + {0.708333, 0.500000}, + {0.729167, 0.500000}, + {0.729167, 0.583333}, + {0.708333, 0.583333}, + {0.708333, 0.583333}, + {0.729167, 0.583333}, + {0.729167, 0.666667}, + {0.708333, 0.666667}, + {0.708333, 0.666667}, + {0.729167, 0.666667}, + {0.729167, 0.750000}, + {0.708333, 0.750000}, + {0.708333, 0.750000}, + {0.729167, 0.750000}, + {0.729167, 0.833333}, + {0.708333, 0.833333}, + {0.708333, 0.833333}, + {0.729167, 0.833333}, + {0.729167, 0.916667}, + {0.708333, 0.916667}, + {0.708333, 0.916667}, + {0.729167, 0.916667}, + {0.729167, 1.000000}, + {0.708333, 1.000000}, + {0.708333, 0.000000}, + {0.729167, 0.000000}, + {0.729167, 0.083333}, + {0.708333, 0.083333}, + {0.708333, 0.083333}, + {0.729167, 0.083333}, + {0.729167, 0.166667}, + {0.708333, 0.166667}, + {0.708333, 0.166667}, + {0.729167, 0.166667}, + {0.729167, 0.250000}, + {0.708333, 0.250000}, + {0.708333, 0.250000}, + {0.729167, 0.250000}, + {0.729167, 0.333333}, + {0.708333, 0.333333}, + {0.708333, 0.333333}, + {0.729167, 0.333333}, + {0.729167, 0.416667}, + {0.708333, 0.416667}, + {0.708333, 0.416667}, + {0.729167, 0.416667}, + {0.729167, 0.500000}, + {0.708333, 0.500000}, + {0.729167, 0.500000}, + {0.750000, 0.500000}, + {0.750000, 0.583333}, + {0.729167, 0.583333}, + {0.729167, 0.583333}, + {0.750000, 0.583333}, + {0.750000, 0.666667}, + {0.729167, 0.666667}, + {0.729167, 0.666667}, + {0.750000, 0.666667}, + {0.750000, 0.750000}, + {0.729167, 0.750000}, + {0.729167, 0.750000}, + {0.750000, 0.750000}, + {0.750000, 0.833333}, + {0.729167, 0.833333}, + {0.729167, 0.833333}, + {0.750000, 0.833333}, + {0.750000, 0.916667}, + {0.729167, 0.916667}, + {0.729167, 0.916667}, + {0.750000, 0.916667}, + {0.750000, 1.000000}, + {0.729167, 1.000000}, + {0.729167, 0.000000}, + {0.750000, 0.000000}, + {0.750000, 0.083333}, + {0.729167, 0.083333}, + {0.729167, 0.083333}, + {0.750000, 0.083333}, + {0.750000, 0.166667}, + {0.729167, 0.166667}, + {0.729167, 0.166667}, + {0.750000, 0.166667}, + {0.750000, 0.250000}, + {0.729167, 0.250000}, + {0.729167, 0.250000}, + {0.750000, 0.250000}, + {0.750000, 0.333333}, + {0.729167, 0.333333}, + {0.729167, 0.333333}, + {0.750000, 0.333333}, + {0.750000, 0.416667}, + {0.729167, 0.416667}, + {0.729167, 0.416667}, + {0.750000, 0.416667}, + {0.750000, 0.500000}, + {0.729167, 0.500000}, + {0.750000, 0.500000}, + {0.770833, 0.500000}, + {0.770833, 0.583333}, + {0.750000, 0.583333}, + {0.750000, 0.583333}, + {0.770833, 0.583333}, + {0.770833, 0.666667}, + {0.750000, 0.666667}, + {0.750000, 0.666667}, + {0.770833, 0.666667}, + {0.770833, 0.750000}, + {0.750000, 0.750000}, + {0.750000, 0.750000}, + {0.770833, 0.750000}, + {0.770833, 0.833333}, + {0.750000, 0.833333}, + {0.750000, 0.833333}, + {0.770833, 0.833333}, + {0.770833, 0.916667}, + {0.750000, 0.916667}, + {0.750000, 0.916667}, + {0.770833, 0.916667}, + {0.770833, 1.000000}, + {0.750000, 1.000000}, + {0.750000, 0.000000}, + {0.770833, 0.000000}, + {0.770833, 0.083333}, + {0.750000, 0.083333}, + {0.750000, 0.083333}, + {0.770833, 0.083333}, + {0.770833, 0.166667}, + {0.750000, 0.166667}, + {0.750000, 0.166667}, + {0.770833, 0.166667}, + {0.770833, 0.250000}, + {0.750000, 0.250000}, + {0.750000, 0.250000}, + {0.770833, 0.250000}, + {0.770833, 0.333333}, + {0.750000, 0.333333}, + {0.750000, 0.333333}, + {0.770833, 0.333333}, + {0.770833, 0.416667}, + {0.750000, 0.416667}, + {0.750000, 0.416667}, + {0.770833, 0.416667}, + {0.770833, 0.500000}, + {0.750000, 0.500000}, + {0.770833, 0.500000}, + {0.791667, 0.500000}, + {0.791667, 0.583333}, + {0.770833, 0.583333}, + {0.770833, 0.583333}, + {0.791667, 0.583333}, + {0.791667, 0.666667}, + {0.770833, 0.666667}, + {0.770833, 0.666667}, + {0.791667, 0.666667}, + {0.791667, 0.750000}, + {0.770833, 0.750000}, + {0.770833, 0.750000}, + {0.791667, 0.750000}, + {0.791667, 0.833333}, + {0.770833, 0.833333}, + {0.770833, 0.833333}, + {0.791667, 0.833333}, + {0.791667, 0.916667}, + {0.770833, 0.916667}, + {0.770833, 0.916667}, + {0.791667, 0.916667}, + {0.791667, 1.000000}, + {0.770833, 1.000000}, + {0.770833, 0.000000}, + {0.791667, 0.000000}, + {0.791667, 0.083333}, + {0.770833, 0.083333}, + {0.770833, 0.083333}, + {0.791667, 0.083333}, + {0.791667, 0.166667}, + {0.770833, 0.166667}, + {0.770833, 0.166667}, + {0.791667, 0.166667}, + {0.791667, 0.250000}, + {0.770833, 0.250000}, + {0.770833, 0.250000}, + {0.791667, 0.250000}, + {0.791667, 0.333333}, + {0.770833, 0.333333}, + {0.770833, 0.333333}, + {0.791667, 0.333333}, + {0.791667, 0.416667}, + {0.770833, 0.416667}, + {0.770833, 0.416667}, + {0.791667, 0.416667}, + {0.791667, 0.500000}, + {0.770833, 0.500000}, + {0.791667, 0.500000}, + {0.812500, 0.500000}, + {0.812500, 0.583333}, + {0.791667, 0.583333}, + {0.791667, 0.583333}, + {0.812500, 0.583333}, + {0.812500, 0.666667}, + {0.791667, 0.666667}, + {0.791667, 0.666667}, + {0.812500, 0.666667}, + {0.812500, 0.750000}, + {0.791667, 0.750000}, + {0.791667, 0.750000}, + {0.812500, 0.750000}, + {0.812500, 0.833333}, + {0.791667, 0.833333}, + {0.791667, 0.833333}, + {0.812500, 0.833333}, + {0.812500, 0.916667}, + {0.791667, 0.916667}, + {0.791667, 0.916667}, + {0.812500, 0.916667}, + {0.812500, 1.000000}, + {0.791667, 1.000000}, + {0.791667, 0.000000}, + {0.812500, 0.000000}, + {0.812500, 0.083333}, + {0.791667, 0.083333}, + {0.791667, 0.083333}, + {0.812500, 0.083333}, + {0.812500, 0.166667}, + {0.791667, 0.166667}, + {0.791667, 0.166667}, + {0.812500, 0.166667}, + {0.812500, 0.250000}, + {0.791667, 0.250000}, + {0.791667, 0.250000}, + {0.812500, 0.250000}, + {0.812500, 0.333333}, + {0.791667, 0.333333}, + {0.791667, 0.333333}, + {0.812500, 0.333333}, + {0.812500, 0.416667}, + {0.791667, 0.416667}, + {0.791667, 0.416667}, + {0.812500, 0.416667}, + {0.812500, 0.500000}, + {0.791667, 0.500000}, + {0.812500, 0.500000}, + {0.833333, 0.500000}, + {0.833333, 0.583333}, + {0.812500, 0.583333}, + {0.812500, 0.583333}, + {0.833333, 0.583333}, + {0.833333, 0.666667}, + {0.812500, 0.666667}, + {0.812500, 0.666667}, + {0.833333, 0.666667}, + {0.833333, 0.750000}, + {0.812500, 0.750000}, + {0.812500, 0.750000}, + {0.833333, 0.750000}, + {0.833333, 0.833333}, + {0.812500, 0.833333}, + {0.812500, 0.833333}, + {0.833333, 0.833333}, + {0.833333, 0.916667}, + {0.812500, 0.916667}, + {0.812500, 0.916667}, + {0.833333, 0.916667}, + {0.833333, 1.000000}, + {0.812500, 1.000000}, + {0.812500, 0.000000}, + {0.833333, 0.000000}, + {0.833333, 0.083333}, + {0.812500, 0.083333}, + {0.812500, 0.083333}, + {0.833333, 0.083333}, + {0.833333, 0.166667}, + {0.812500, 0.166667}, + {0.812500, 0.166667}, + {0.833333, 0.166667}, + {0.833333, 0.250000}, + {0.812500, 0.250000}, + {0.812500, 0.250000}, + {0.833333, 0.250000}, + {0.833333, 0.333333}, + {0.812500, 0.333333}, + {0.812500, 0.333333}, + {0.833333, 0.333333}, + {0.833333, 0.416667}, + {0.812500, 0.416667}, + {0.812500, 0.416667}, + {0.833333, 0.416667}, + {0.833333, 0.500000}, + {0.812500, 0.500000}, + {0.833333, 0.500000}, + {0.854167, 0.500000}, + {0.854167, 0.583333}, + {0.833333, 0.583333}, + {0.833333, 0.583333}, + {0.854167, 0.583333}, + {0.854167, 0.666667}, + {0.833333, 0.666667}, + {0.833333, 0.666667}, + {0.854167, 0.666667}, + {0.854167, 0.750000}, + {0.833333, 0.750000}, + {0.833333, 0.750000}, + {0.854167, 0.750000}, + {0.854167, 0.833333}, + {0.833333, 0.833333}, + {0.833333, 0.833333}, + {0.854167, 0.833333}, + {0.854167, 0.916667}, + {0.833333, 0.916667}, + {0.833333, 0.916667}, + {0.854167, 0.916667}, + {0.854167, 1.000000}, + {0.833333, 1.000000}, + {0.833333, 0.000000}, + {0.854167, 0.000000}, + {0.854167, 0.083333}, + {0.833333, 0.083333}, + {0.833333, 0.083333}, + {0.854167, 0.083333}, + {0.854167, 0.166667}, + {0.833333, 0.166667}, + {0.833333, 0.166667}, + {0.854167, 0.166667}, + {0.854167, 0.250000}, + {0.833333, 0.250000}, + {0.833333, 0.250000}, + {0.854167, 0.250000}, + {0.854167, 0.333333}, + {0.833333, 0.333333}, + {0.833333, 0.333333}, + {0.854167, 0.333333}, + {0.854167, 0.416667}, + {0.833333, 0.416667}, + {0.833333, 0.416667}, + {0.854167, 0.416667}, + {0.854167, 0.500000}, + {0.833333, 0.500000}, + {0.854167, 0.500000}, + {0.875000, 0.500000}, + {0.875000, 0.583333}, + {0.854167, 0.583333}, + {0.854167, 0.583333}, + {0.875000, 0.583333}, + {0.875000, 0.666667}, + {0.854167, 0.666667}, + {0.854167, 0.666667}, + {0.875000, 0.666667}, + {0.875000, 0.750000}, + {0.854167, 0.750000}, + {0.854167, 0.750000}, + {0.875000, 0.750000}, + {0.875000, 0.833333}, + {0.854167, 0.833333}, + {0.854167, 0.833333}, + {0.875000, 0.833333}, + {0.875000, 0.916667}, + {0.854167, 0.916667}, + {0.854167, 0.916667}, + {0.875000, 0.916667}, + {0.875000, 1.000000}, + {0.854167, 1.000000}, + {0.854167, 0.000000}, + {0.875000, 0.000000}, + {0.875000, 0.083333}, + {0.854167, 0.083333}, + {0.854167, 0.083333}, + {0.875000, 0.083333}, + {0.875000, 0.166667}, + {0.854167, 0.166667}, + {0.854167, 0.166667}, + {0.875000, 0.166667}, + {0.875000, 0.250000}, + {0.854167, 0.250000}, + {0.854167, 0.250000}, + {0.875000, 0.250000}, + {0.875000, 0.333333}, + {0.854167, 0.333333}, + {0.854167, 0.333333}, + {0.875000, 0.333333}, + {0.875000, 0.416667}, + {0.854167, 0.416667}, + {0.854167, 0.416667}, + {0.875000, 0.416667}, + {0.875000, 0.500000}, + {0.854167, 0.500000}, + {0.875000, 0.500000}, + {0.895833, 0.500000}, + {0.895833, 0.583333}, + {0.875000, 0.583333}, + {0.875000, 0.583333}, + {0.895833, 0.583333}, + {0.895833, 0.666667}, + {0.875000, 0.666667}, + {0.875000, 0.666667}, + {0.895833, 0.666667}, + {0.895833, 0.750000}, + {0.875000, 0.750000}, + {0.875000, 0.750000}, + {0.895833, 0.750000}, + {0.895833, 0.833333}, + {0.875000, 0.833333}, + {0.875000, 0.833333}, + {0.895833, 0.833333}, + {0.895833, 0.916667}, + {0.875000, 0.916667}, + {0.875000, 0.916667}, + {0.895833, 0.916667}, + {0.895833, 1.000000}, + {0.875000, 1.000000}, + {0.875000, 0.000000}, + {0.895833, 0.000000}, + {0.895833, 0.083333}, + {0.875000, 0.083333}, + {0.875000, 0.083333}, + {0.895833, 0.083333}, + {0.895833, 0.166667}, + {0.875000, 0.166667}, + {0.875000, 0.166667}, + {0.895833, 0.166667}, + {0.895833, 0.250000}, + {0.875000, 0.250000}, + {0.875000, 0.250000}, + {0.895833, 0.250000}, + {0.895833, 0.333333}, + {0.875000, 0.333333}, + {0.875000, 0.333333}, + {0.895833, 0.333333}, + {0.895833, 0.416667}, + {0.875000, 0.416667}, + {0.875000, 0.416667}, + {0.895833, 0.416667}, + {0.895833, 0.500000}, + {0.875000, 0.500000}, + {0.895833, 0.500000}, + {0.916667, 0.500000}, + {0.916667, 0.583333}, + {0.895833, 0.583333}, + {0.895833, 0.583333}, + {0.916667, 0.583333}, + {0.916667, 0.666667}, + {0.895833, 0.666667}, + {0.895833, 0.666667}, + {0.916667, 0.666667}, + {0.916667, 0.750000}, + {0.895833, 0.750000}, + {0.895833, 0.750000}, + {0.916667, 0.750000}, + {0.916667, 0.833333}, + {0.895833, 0.833333}, + {0.895833, 0.833333}, + {0.916667, 0.833333}, + {0.916667, 0.916667}, + {0.895833, 0.916667}, + {0.895833, 0.916667}, + {0.916667, 0.916667}, + {0.916667, 1.000000}, + {0.895833, 1.000000}, + {0.895833, 0.000000}, + {0.916667, 0.000000}, + {0.916667, 0.083333}, + {0.895833, 0.083333}, + {0.895833, 0.083333}, + {0.916667, 0.083333}, + {0.916667, 0.166667}, + {0.895833, 0.166667}, + {0.895833, 0.166667}, + {0.916667, 0.166667}, + {0.916667, 0.250000}, + {0.895833, 0.250000}, + {0.895833, 0.250000}, + {0.916667, 0.250000}, + {0.916667, 0.333333}, + {0.895833, 0.333333}, + {0.895833, 0.333333}, + {0.916667, 0.333333}, + {0.916667, 0.416667}, + {0.895833, 0.416667}, + {0.895833, 0.416667}, + {0.916667, 0.416667}, + {0.916667, 0.500000}, + {0.895833, 0.500000}, + {0.916667, 0.500000}, + {0.937500, 0.500000}, + {0.937500, 0.583333}, + {0.916667, 0.583333}, + {0.916667, 0.583333}, + {0.937500, 0.583333}, + {0.937500, 0.666667}, + {0.916667, 0.666667}, + {0.916667, 0.666667}, + {0.937500, 0.666667}, + {0.937500, 0.750000}, + {0.916667, 0.750000}, + {0.916667, 0.750000}, + {0.937500, 0.750000}, + {0.937500, 0.833333}, + {0.916667, 0.833333}, + {0.916667, 0.833333}, + {0.937500, 0.833333}, + {0.937500, 0.916667}, + {0.916667, 0.916667}, + {0.916667, 0.916667}, + {0.937500, 0.916667}, + {0.937500, 1.000000}, + {0.916667, 1.000000}, + {0.916667, 0.000000}, + {0.937500, 0.000000}, + {0.937500, 0.083333}, + {0.916667, 0.083333}, + {0.916667, 0.083333}, + {0.937500, 0.083333}, + {0.937500, 0.166667}, + {0.916667, 0.166667}, + {0.916667, 0.166667}, + {0.937500, 0.166667}, + {0.937500, 0.250000}, + {0.916667, 0.250000}, + {0.916667, 0.250000}, + {0.937500, 0.250000}, + {0.937500, 0.333333}, + {0.916667, 0.333333}, + {0.916667, 0.333333}, + {0.937500, 0.333333}, + {0.937500, 0.416667}, + {0.916667, 0.416667}, + {0.916667, 0.416667}, + {0.937500, 0.416667}, + {0.937500, 0.500000}, + {0.916667, 0.500000}, + {0.937500, 0.500000}, + {0.958333, 0.500000}, + {0.958333, 0.583333}, + {0.937500, 0.583333}, + {0.937500, 0.583333}, + {0.958333, 0.583333}, + {0.958333, 0.666667}, + {0.937500, 0.666667}, + {0.937500, 0.666667}, + {0.958333, 0.666667}, + {0.958333, 0.750000}, + {0.937500, 0.750000}, + {0.937500, 0.750000}, + {0.958333, 0.750000}, + {0.958333, 0.833333}, + {0.937500, 0.833333}, + {0.937500, 0.833333}, + {0.958333, 0.833333}, + {0.958333, 0.916667}, + {0.937500, 0.916667}, + {0.937500, 0.916667}, + {0.958333, 0.916667}, + {0.958333, 1.000000}, + {0.937500, 1.000000}, + {0.937500, 0.000000}, + {0.958333, 0.000000}, + {0.958333, 0.083333}, + {0.937500, 0.083333}, + {0.937500, 0.083333}, + {0.958333, 0.083333}, + {0.958333, 0.166667}, + {0.937500, 0.166667}, + {0.937500, 0.166667}, + {0.958333, 0.166667}, + {0.958333, 0.250000}, + {0.937500, 0.250000}, + {0.937500, 0.250000}, + {0.958333, 0.250000}, + {0.958333, 0.333333}, + {0.937500, 0.333333}, + {0.937500, 0.333333}, + {0.958333, 0.333333}, + {0.958333, 0.416667}, + {0.937500, 0.416667}, + {0.937500, 0.416667}, + {0.958333, 0.416667}, + {0.958333, 0.500000}, + {0.937500, 0.500000}, + {0.958333, 0.500000}, + {0.979167, 0.500000}, + {0.979167, 0.583333}, + {0.958333, 0.583333}, + {0.958333, 0.583333}, + {0.979167, 0.583333}, + {0.979167, 0.666667}, + {0.958333, 0.666667}, + {0.958333, 0.666667}, + {0.979167, 0.666667}, + {0.979167, 0.750000}, + {0.958333, 0.750000}, + {0.958333, 0.750000}, + {0.979167, 0.750000}, + {0.979167, 0.833333}, + {0.958333, 0.833333}, + {0.958333, 0.833333}, + {0.979167, 0.833333}, + {0.979167, 0.916667}, + {0.958333, 0.916667}, + {0.958333, 0.916667}, + {0.979167, 0.916667}, + {0.979167, 1.000000}, + {0.958333, 1.000000}, + {0.958333, 0.000000}, + {0.979167, 0.000000}, + {0.979167, 0.083333}, + {0.958333, 0.083333}, + {0.958333, 0.083333}, + {0.979167, 0.083333}, + {0.979167, 0.166667}, + {0.958333, 0.166667}, + {0.958333, 0.166667}, + {0.979167, 0.166667}, + {0.979167, 0.250000}, + {0.958333, 0.250000}, + {0.958333, 0.250000}, + {0.979167, 0.250000}, + {0.979167, 0.333333}, + {0.958333, 0.333333}, + {0.958333, 0.333333}, + {0.979167, 0.333333}, + {0.979167, 0.416667}, + {0.958333, 0.416667}, + {0.958333, 0.416667}, + {0.979167, 0.416667}, + {0.979167, 0.500000}, + {0.958333, 0.500000}, + {0.979167, 0.500000}, + {1.000000, 0.500000}, + {1.000000, 0.583333}, + {0.979167, 0.583333}, + {0.979167, 0.583333}, + {1.000000, 0.583333}, + {1.000000, 0.666667}, + {0.979167, 0.666667}, + {0.979167, 0.666667}, + {1.000000, 0.666667}, + {1.000000, 0.750000}, + {0.979167, 0.750000}, + {0.979167, 0.750000}, + {1.000000, 0.750000}, + {1.000000, 0.833333}, + {0.979167, 0.833333}, + {0.979167, 0.833333}, + {1.000000, 0.833333}, + {1.000000, 0.916667}, + {0.979167, 0.916667}, + {0.979167, 0.916667}, + {1.000000, 0.916667}, + {1.000000, 1.000000}, + {0.979167, 1.000000}, + {0.979167, 0.000000}, + {1.000000, 0.000000}, + {1.000000, 0.083333}, + {0.979167, 0.083333}, + {0.979167, 0.083333}, + {1.000000, 0.083333}, + {1.000000, 0.166667}, + {0.979167, 0.166667}, + {0.979167, 0.166667}, + {1.000000, 0.166667}, + {1.000000, 0.250000}, + {0.979167, 0.250000}, + {0.979167, 0.250000}, + {1.000000, 0.250000}, + {1.000000, 0.333333}, + {0.979167, 0.333333}, + {0.979167, 0.333333}, + {1.000000, 0.333333}, + {1.000000, 0.416667}, + {0.979167, 0.416667}, + {0.979167, 0.416667}, + {1.000000, 0.416667}, + {1.000000, 0.500000}, + {0.979167, 0.500000}, + {0.000000, 0.500000}, + {0.020833, 0.500000}, + {0.020833, 0.583333}, + {0.000000, 0.583333}, + {0.000000, 0.583333}, + {0.020833, 0.583333}, + {0.020833, 0.666667}, + {0.000000, 0.666667}, + {0.000000, 0.666667}, + {0.020833, 0.666667}, + {0.020833, 0.750000}, + {0.000000, 0.750000}, + {0.000000, 0.750000}, + {0.020833, 0.750000}, + {0.020833, 0.833333}, + {0.000000, 0.833333}, + {0.000000, 0.833333}, + {0.020833, 0.833333}, + {0.020833, 0.916667}, + {0.000000, 0.916667}, + {0.000000, 0.916667}, + {0.020833, 0.916667}, + {0.020833, 1.000000}, + {0.000000, 1.000000}, + {0.000000, 0.000000}, + {0.020833, 0.000000}, + {0.020833, 0.083333}, + {0.000000, 0.083333}, + {0.000000, 0.083333}, + {0.020833, 0.083333}, + {0.020833, 0.166667}, + {0.000000, 0.166667}, + {0.000000, 0.166667}, + {0.020833, 0.166667}, + {0.020833, 0.250000}, + {0.000000, 0.250000}, + {0.000000, 0.250000}, + {0.020833, 0.250000}, + {0.020833, 0.333333}, + {0.000000, 0.333333}, + {0.000000, 0.333333}, + {0.020833, 0.333333}, + {0.020833, 0.416667}, + {0.000000, 0.416667}, + {0.000000, 0.416667}, + {0.020833, 0.416667}, + {0.020833, 0.500000}, + {0.000000, 0.500000}, + {0.020833, 0.500000}, + {0.041667, 0.500000}, + {0.041667, 0.583333}, + {0.020833, 0.583333}, + {0.020833, 0.583333}, + {0.041667, 0.583333}, + {0.041667, 0.666667}, + {0.020833, 0.666667}, + {0.020833, 0.666667}, + {0.041667, 0.666667}, + {0.041667, 0.750000}, + {0.020833, 0.750000}, + {0.020833, 0.750000}, + {0.041667, 0.750000}, + {0.041667, 0.833333}, + {0.020833, 0.833333}, + {0.020833, 0.833333}, + {0.041667, 0.833333}, + {0.041667, 0.916667}, + {0.020833, 0.916667}, + {0.020833, 0.916667}, + {0.041667, 0.916667}, + {0.041667, 1.000000}, + {0.020833, 1.000000}, + {0.020833, 0.000000}, + {0.041667, 0.000000}, + {0.041667, 0.083333}, + {0.020833, 0.083333}, + {0.020833, 0.083333}, + {0.041667, 0.083333}, + {0.041667, 0.166667}, + {0.020833, 0.166667}, + {0.020833, 0.166667}, + {0.041667, 0.166667}, + {0.041667, 0.250000}, + {0.020833, 0.250000}, + {0.020833, 0.250000}, + {0.041667, 0.250000}, + {0.041667, 0.333333}, + {0.020833, 0.333333}, + {0.020833, 0.333333}, + {0.041667, 0.333333}, + {0.041667, 0.416667}, + {0.020833, 0.416667}, + {0.020833, 0.416667}, + {0.041667, 0.416667}, + {0.041667, 0.500000}, + {0.020833, 0.500000}, + {0.041667, 0.500000}, + {0.062500, 0.500000}, + {0.062500, 0.583333}, + {0.041667, 0.583333}, + {0.041667, 0.583333}, + {0.062500, 0.583333}, + {0.062500, 0.666667}, + {0.041667, 0.666667}, + {0.041667, 0.666667}, + {0.062500, 0.666667}, + {0.062500, 0.750000}, + {0.041667, 0.750000}, + {0.041667, 0.750000}, + {0.062500, 0.750000}, + {0.062500, 0.833333}, + {0.041667, 0.833333}, + {0.041667, 0.833333}, + {0.062500, 0.833333}, + {0.062500, 0.916667}, + {0.041667, 0.916667}, + {0.041667, 0.916667}, + {0.062500, 0.916667}, + {0.062500, 1.000000}, + {0.041667, 1.000000}, + {0.041667, 0.000000}, + {0.062500, 0.000000}, + {0.062500, 0.083333}, + {0.041667, 0.083333}, + {0.041667, 0.083333}, + {0.062500, 0.083333}, + {0.062500, 0.166667}, + {0.041667, 0.166667}, + {0.041667, 0.166667}, + {0.062500, 0.166667}, + {0.062500, 0.250000}, + {0.041667, 0.250000}, + {0.041667, 0.250000}, + {0.062500, 0.250000}, + {0.062500, 0.333333}, + {0.041667, 0.333333}, + {0.041667, 0.333333}, + {0.062500, 0.333333}, + {0.062500, 0.416667}, + {0.041667, 0.416667}, + {0.041667, 0.416667}, + {0.062500, 0.416667}, + {0.062500, 0.500000}, + {0.041667, 0.500000}, + {0.062500, 0.500000}, + {0.083333, 0.500000}, + {0.083333, 0.583333}, + {0.062500, 0.583333}, + {0.062500, 0.583333}, + {0.083333, 0.583333}, + {0.083333, 0.666667}, + {0.062500, 0.666667}, + {0.062500, 0.666667}, + {0.083333, 0.666667}, + {0.083333, 0.750000}, + {0.062500, 0.750000}, + {0.062500, 0.750000}, + {0.083333, 0.750000}, + {0.083333, 0.833333}, + {0.062500, 0.833333}, + {0.062500, 0.833333}, + {0.083333, 0.833333}, + {0.083333, 0.916667}, + {0.062500, 0.916667}, + {0.062500, 0.916667}, + {0.083333, 0.916667}, + {0.083333, 1.000000}, + {0.062500, 1.000000}, + {0.062500, 0.000000}, + {0.083333, 0.000000}, + {0.083333, 0.083333}, + {0.062500, 0.083333}, + {0.062500, 0.083333}, + {0.083333, 0.083333}, + {0.083333, 0.166667}, + {0.062500, 0.166667}, + {0.062500, 0.166667}, + {0.083333, 0.166667}, + {0.083333, 0.250000}, + {0.062500, 0.250000}, + {0.062500, 0.250000}, + {0.083333, 0.250000}, + {0.083333, 0.333333}, + {0.062500, 0.333333}, + {0.062500, 0.333333}, + {0.083333, 0.333333}, + {0.083333, 0.416667}, + {0.062500, 0.416667}, + {0.062500, 0.416667}, + {0.083333, 0.416667}, + {0.083333, 0.500000}, + {0.062500, 0.500000}, + {0.083333, 0.500000}, + {0.104167, 0.500000}, + {0.104167, 0.583333}, + {0.083333, 0.583333}, + {0.083333, 0.583333}, + {0.104167, 0.583333}, + {0.104167, 0.666667}, + {0.083333, 0.666667}, + {0.083333, 0.666667}, + {0.104167, 0.666667}, + {0.104167, 0.750000}, + {0.083333, 0.750000}, + {0.083333, 0.750000}, + {0.104167, 0.750000}, + {0.104167, 0.833333}, + {0.083333, 0.833333}, + {0.083333, 0.833333}, + {0.104167, 0.833333}, + {0.104167, 0.916667}, + {0.083333, 0.916667}, + {0.083333, 0.916667}, + {0.104167, 0.916667}, + {0.104167, 1.000000}, + {0.083333, 1.000000}, + {0.083333, 0.000000}, + {0.104167, 0.000000}, + {0.104167, 0.083333}, + {0.083333, 0.083333}, + {0.083333, 0.083333}, + {0.104167, 0.083333}, + {0.104167, 0.166667}, + {0.083333, 0.166667}, + {0.083333, 0.166667}, + {0.104167, 0.166667}, + {0.104167, 0.250000}, + {0.083333, 0.250000}, + {0.083333, 0.250000}, + {0.104167, 0.250000}, + {0.104167, 0.333333}, + {0.083333, 0.333333}, + {0.083333, 0.333333}, + {0.104167, 0.333333}, + {0.104167, 0.416667}, + {0.083333, 0.416667}, + {0.083333, 0.416667}, + {0.104167, 0.416667}, + {0.104167, 0.500000}, + {0.083333, 0.500000}, + {0.104167, 0.500000}, + {0.125000, 0.500000}, + {0.125000, 0.583333}, + {0.104167, 0.583333}, + {0.104167, 0.583333}, + {0.125000, 0.583333}, + {0.125000, 0.666667}, + {0.104167, 0.666667}, + {0.104167, 0.666667}, + {0.125000, 0.666667}, + {0.125000, 0.750000}, + {0.104167, 0.750000}, + {0.104167, 0.750000}, + {0.125000, 0.750000}, + {0.125000, 0.833333}, + {0.104167, 0.833333}, + {0.104167, 0.833333}, + {0.125000, 0.833333}, + {0.125000, 0.916667}, + {0.104167, 0.916667}, + {0.104167, 0.916667}, + {0.125000, 0.916667}, + {0.125000, 1.000000}, + {0.104167, 1.000000}, + {0.104167, 0.000000}, + {0.125000, 0.000000}, + {0.125000, 0.083333}, + {0.104167, 0.083333}, + {0.104167, 0.083333}, + {0.125000, 0.083333}, + {0.125000, 0.166667}, + {0.104167, 0.166667}, + {0.104167, 0.166667}, + {0.125000, 0.166667}, + {0.125000, 0.250000}, + {0.104167, 0.250000}, + {0.104167, 0.250000}, + {0.125000, 0.250000}, + {0.125000, 0.333333}, + {0.104167, 0.333333}, + {0.104167, 0.333333}, + {0.125000, 0.333333}, + {0.125000, 0.416667}, + {0.104167, 0.416667}, + {0.104167, 0.416667}, + {0.125000, 0.416667}, + {0.125000, 0.500000}, + {0.104167, 0.500000}, + {0.125000, 0.500000}, + {0.145833, 0.500000}, + {0.145833, 0.583333}, + {0.125000, 0.583333}, + {0.125000, 0.583333}, + {0.145833, 0.583333}, + {0.145833, 0.666667}, + {0.125000, 0.666667}, + {0.125000, 0.666667}, + {0.145833, 0.666667}, + {0.145833, 0.750000}, + {0.125000, 0.750000}, + {0.125000, 0.750000}, + {0.145833, 0.750000}, + {0.145833, 0.833333}, + {0.125000, 0.833333}, + {0.125000, 0.833333}, + {0.145833, 0.833333}, + {0.145833, 0.916667}, + {0.125000, 0.916667}, + {0.125000, 0.916667}, + {0.145833, 0.916667}, + {0.145833, 1.000000}, + {0.125000, 1.000000}, + {0.125000, 0.000000}, + {0.145833, 0.000000}, + {0.145833, 0.083333}, + {0.125000, 0.083333}, + {0.125000, 0.083333}, + {0.145833, 0.083333}, + {0.145833, 0.166667}, + {0.125000, 0.166667}, + {0.125000, 0.166667}, + {0.145833, 0.166667}, + {0.145833, 0.250000}, + {0.125000, 0.250000}, + {0.125000, 0.250000}, + {0.145833, 0.250000}, + {0.145833, 0.333333}, + {0.125000, 0.333333}, + {0.125000, 0.333333}, + {0.145833, 0.333333}, + {0.145833, 0.416667}, + {0.125000, 0.416667}, + {0.125000, 0.416667}, + {0.145833, 0.416667}, + {0.145833, 0.500000}, + {0.125000, 0.500000}, + {0.145833, 0.500000}, + {0.166667, 0.500000}, + {0.166667, 0.583333}, + {0.145833, 0.583333}, + {0.145833, 0.583333}, + {0.166667, 0.583333}, + {0.166667, 0.666667}, + {0.145833, 0.666667}, + {0.145833, 0.666667}, + {0.166667, 0.666667}, + {0.166667, 0.750000}, + {0.145833, 0.750000}, + {0.145833, 0.750000}, + {0.166667, 0.750000}, + {0.166667, 0.833333}, + {0.145833, 0.833333}, + {0.145833, 0.833333}, + {0.166667, 0.833333}, + {0.166667, 0.916667}, + {0.145833, 0.916667}, + {0.145833, 0.916667}, + {0.166667, 0.916667}, + {0.166667, 1.000000}, + {0.145833, 1.000000}, + {0.145833, 0.000000}, + {0.166667, 0.000000}, + {0.166667, 0.083333}, + {0.145833, 0.083333}, + {0.145833, 0.083333}, + {0.166667, 0.083333}, + {0.166667, 0.166667}, + {0.145833, 0.166667}, + {0.145833, 0.166667}, + {0.166667, 0.166667}, + {0.166667, 0.250000}, + {0.145833, 0.250000}, + {0.145833, 0.250000}, + {0.166667, 0.250000}, + {0.166667, 0.333333}, + {0.145833, 0.333333}, + {0.145833, 0.333333}, + {0.166667, 0.333333}, + {0.166667, 0.416667}, + {0.145833, 0.416667}, + {0.145833, 0.416667}, + {0.166667, 0.416667}, + {0.166667, 0.500000}, + {0.145833, 0.500000}, + {0.166667, 0.500000}, + {0.187500, 0.500000}, + {0.187500, 0.583333}, + {0.166667, 0.583333}, + {0.166667, 0.583333}, + {0.187500, 0.583333}, + {0.187500, 0.666667}, + {0.166667, 0.666667}, + {0.166667, 0.666667}, + {0.187500, 0.666667}, + {0.187500, 0.750000}, + {0.166667, 0.750000}, + {0.166667, 0.750000}, + {0.187500, 0.750000}, + {0.187500, 0.833333}, + {0.166667, 0.833333}, + {0.166667, 0.833333}, + {0.187500, 0.833333}, + {0.187500, 0.916667}, + {0.166667, 0.916667}, + {0.166667, 0.916667}, + {0.187500, 0.916667}, + {0.187500, 1.000000}, + {0.166667, 1.000000}, + {0.166667, 0.000000}, + {0.187500, 0.000000}, + {0.187500, 0.083333}, + {0.166667, 0.083333}, + {0.166667, 0.083333}, + {0.187500, 0.083333}, + {0.187500, 0.166667}, + {0.166667, 0.166667}, + {0.166667, 0.166667}, + {0.187500, 0.166667}, + {0.187500, 0.250000}, + {0.166667, 0.250000}, + {0.166667, 0.250000}, + {0.187500, 0.250000}, + {0.187500, 0.333333}, + {0.166667, 0.333333}, + {0.166667, 0.333333}, + {0.187500, 0.333333}, + {0.187500, 0.416667}, + {0.166667, 0.416667}, + {0.166667, 0.416667}, + {0.187500, 0.416667}, + {0.187500, 0.500000}, + {0.166667, 0.500000}, + {0.187500, 0.500000}, + {0.208333, 0.500000}, + {0.208333, 0.583333}, + {0.187500, 0.583333}, + {0.187500, 0.583333}, + {0.208333, 0.583333}, + {0.208333, 0.666667}, + {0.187500, 0.666667}, + {0.187500, 0.666667}, + {0.208333, 0.666667}, + {0.208333, 0.750000}, + {0.187500, 0.750000}, + {0.187500, 0.750000}, + {0.208333, 0.750000}, + {0.208333, 0.833333}, + {0.187500, 0.833333}, + {0.187500, 0.833333}, + {0.208333, 0.833333}, + {0.208333, 0.916667}, + {0.187500, 0.916667}, + {0.187500, 0.916667}, + {0.208333, 0.916667}, + {0.208333, 1.000000}, + {0.187500, 1.000000}, + {0.187500, 0.000000}, + {0.208333, 0.000000}, + {0.208333, 0.083333}, + {0.187500, 0.083333}, + {0.187500, 0.083333}, + {0.208333, 0.083333}, + {0.208333, 0.166667}, + {0.187500, 0.166667}, + {0.187500, 0.166667}, + {0.208333, 0.166667}, + {0.208333, 0.250000}, + {0.187500, 0.250000}, + {0.187500, 0.250000}, + {0.208333, 0.250000}, + {0.208333, 0.333333}, + {0.187500, 0.333333}, + {0.187500, 0.333333}, + {0.208333, 0.333333}, + {0.208333, 0.416667}, + {0.187500, 0.416667}, + {0.187500, 0.416667}, + {0.208333, 0.416667}, + {0.208333, 0.500000}, + {0.187500, 0.500000}, + {0.208333, 0.500000}, + {0.229167, 0.500000}, + {0.229167, 0.583333}, + {0.208333, 0.583333}, + {0.208333, 0.583333}, + {0.229167, 0.583333}, + {0.229167, 0.666667}, + {0.208333, 0.666667}, + {0.208333, 0.666667}, + {0.229167, 0.666667}, + {0.229167, 0.750000}, + {0.208333, 0.750000}, + {0.208333, 0.750000}, + {0.229167, 0.750000}, + {0.229167, 0.833333}, + {0.208333, 0.833333}, + {0.208333, 0.833333}, + {0.229167, 0.833333}, + {0.229167, 0.916667}, + {0.208333, 0.916667}, + {0.208333, 0.916667}, + {0.229167, 0.916667}, + {0.229167, 1.000000}, + {0.208333, 1.000000}, + {0.208333, 0.000000}, + {0.229167, 0.000000}, + {0.229167, 0.083333}, + {0.208333, 0.083333}, + {0.208333, 0.083333}, + {0.229167, 0.083333}, + {0.229167, 0.166667}, + {0.208333, 0.166667}, + {0.208333, 0.166667}, + {0.229167, 0.166667}, + {0.229167, 0.250000}, + {0.208333, 0.250000}, + {0.208333, 0.250000}, + {0.229167, 0.250000}, + {0.229167, 0.333333}, + {0.208333, 0.333333}, + {0.208333, 0.333333}, + {0.229167, 0.333333}, + {0.229167, 0.416667}, + {0.208333, 0.416667}, + {0.208333, 0.416667}, + {0.229167, 0.416667}, + {0.229167, 0.500000}, + {0.208333, 0.500000}, + {0.229167, 0.500000}, + {0.250000, 0.500000}, + {0.250000, 0.583333}, + {0.229167, 0.583333}, + {0.229167, 0.583333}, + {0.250000, 0.583333}, + {0.250000, 0.666667}, + {0.229167, 0.666667}, + {0.229167, 0.666667}, + {0.250000, 0.666667}, + {0.250000, 0.750000}, + {0.229167, 0.750000}, + {0.229167, 0.750000}, + {0.250000, 0.750000}, + {0.250000, 0.833333}, + {0.229167, 0.833333}, + {0.229167, 0.833333}, + {0.250000, 0.833333}, + {0.250000, 0.916667}, + {0.229167, 0.916667}, + {0.229167, 0.916667}, + {0.250000, 0.916667}, + {0.250000, 1.000000}, + {0.229167, 1.000000}, + {0.229167, 0.000000}, + {0.250000, 0.000000}, + {0.250000, 0.083333}, + {0.229167, 0.083333}, + {0.229167, 0.083333}, + {0.250000, 0.083333}, + {0.250000, 0.166667}, + {0.229167, 0.166667}, + {0.229167, 0.166667}, + {0.250000, 0.166667}, + {0.250000, 0.250000}, + {0.229167, 0.250000}, + {0.229167, 0.250000}, + {0.250000, 0.250000}, + {0.250000, 0.333333}, + {0.229167, 0.333333}, + {0.229167, 0.333333}, + {0.250000, 0.333333}, + {0.250000, 0.416667}, + {0.229167, 0.416667}, + {0.229167, 0.416667}, + {0.250000, 0.416667}, + {0.250000, 0.500000}, + {0.229167, 0.500000}, + {0.250000, 0.500000}, + {0.270833, 0.500000}, + {0.270833, 0.583333}, + {0.250000, 0.583333}, + {0.250000, 0.583333}, + {0.270833, 0.583333}, + {0.270833, 0.666667}, + {0.250000, 0.666667}, + {0.250000, 0.666667}, + {0.270833, 0.666667}, + {0.270833, 0.750000}, + {0.250000, 0.750000}, + {0.250000, 0.750000}, + {0.270833, 0.750000}, + {0.270833, 0.833333}, + {0.250000, 0.833333}, + {0.250000, 0.833333}, + {0.270833, 0.833333}, + {0.270833, 0.916667}, + {0.250000, 0.916667}, + {0.250000, 0.916667}, + {0.270833, 0.916667}, + {0.270833, 1.000000}, + {0.250000, 1.000000}, + {0.250000, 0.000000}, + {0.270833, 0.000000}, + {0.270833, 0.083333}, + {0.250000, 0.083333}, + {0.250000, 0.083333}, + {0.270833, 0.083333}, + {0.270833, 0.166667}, + {0.250000, 0.166667}, + {0.250000, 0.166667}, + {0.270833, 0.166667}, + {0.270833, 0.250000}, + {0.250000, 0.250000}, + {0.250000, 0.250000}, + {0.270833, 0.250000}, + {0.270833, 0.333333}, + {0.250000, 0.333333}, + {0.250000, 0.333333}, + {0.270833, 0.333333}, + {0.270833, 0.416667}, + {0.250000, 0.416667}, + {0.250000, 0.416667}, + {0.270833, 0.416667}, + {0.270833, 0.500000}, + {0.250000, 0.500000}, + {0.270833, 0.500000}, + {0.291667, 0.500000}, + {0.291667, 0.583333}, + {0.270833, 0.583333}, + {0.270833, 0.583333}, + {0.291667, 0.583333}, + {0.291667, 0.666667}, + {0.270833, 0.666667}, + {0.270833, 0.666667}, + {0.291667, 0.666667}, + {0.291667, 0.750000}, + {0.270833, 0.750000}, + {0.270833, 0.750000}, + {0.291667, 0.750000}, + {0.291667, 0.833333}, + {0.270833, 0.833333}, + {0.270833, 0.833333}, + {0.291667, 0.833333}, + {0.291667, 0.916667}, + {0.270833, 0.916667}, + {0.270833, 0.916667}, + {0.291667, 0.916667}, + {0.291667, 1.000000}, + {0.270833, 1.000000}, + {0.270833, 0.000000}, + {0.291667, 0.000000}, + {0.291667, 0.083333}, + {0.270833, 0.083333}, + {0.270833, 0.083333}, + {0.291667, 0.083333}, + {0.291667, 0.166667}, + {0.270833, 0.166667}, + {0.270833, 0.166667}, + {0.291667, 0.166667}, + {0.291667, 0.250000}, + {0.270833, 0.250000}, + {0.270833, 0.250000}, + {0.291667, 0.250000}, + {0.291667, 0.333333}, + {0.270833, 0.333333}, + {0.270833, 0.333333}, + {0.291667, 0.333333}, + {0.291667, 0.416667}, + {0.270833, 0.416667}, + {0.270833, 0.416667}, + {0.291667, 0.416667}, + {0.291667, 0.500000}, + {0.270833, 0.500000}, + {0.291667, 0.500000}, + {0.312500, 0.500000}, + {0.312500, 0.583333}, + {0.291667, 0.583333}, + {0.291667, 0.583333}, + {0.312500, 0.583333}, + {0.312500, 0.666667}, + {0.291667, 0.666667}, + {0.291667, 0.666667}, + {0.312500, 0.666667}, + {0.312500, 0.750000}, + {0.291667, 0.750000}, + {0.291667, 0.750000}, + {0.312500, 0.750000}, + {0.312500, 0.833333}, + {0.291667, 0.833333}, + {0.291667, 0.833333}, + {0.312500, 0.833333}, + {0.312500, 0.916667}, + {0.291667, 0.916667}, + {0.291667, 0.916667}, + {0.312500, 0.916667}, + {0.312500, 1.000000}, + {0.291667, 1.000000}, + {0.291667, 0.000000}, + {0.312500, 0.000000}, + {0.312500, 0.083333}, + {0.291667, 0.083333}, + {0.291667, 0.083333}, + {0.312500, 0.083333}, + {0.312500, 0.166667}, + {0.291667, 0.166667}, + {0.291667, 0.166667}, + {0.312500, 0.166667}, + {0.312500, 0.250000}, + {0.291667, 0.250000}, + {0.291667, 0.250000}, + {0.312500, 0.250000}, + {0.312500, 0.333333}, + {0.291667, 0.333333}, + {0.291667, 0.333333}, + {0.312500, 0.333333}, + {0.312500, 0.416667}, + {0.291667, 0.416667}, + {0.291667, 0.416667}, + {0.312500, 0.416667}, + {0.312500, 0.500000}, + {0.291667, 0.500000}, + {0.312500, 0.500000}, + {0.333333, 0.500000}, + {0.333333, 0.583333}, + {0.312500, 0.583333}, + {0.312500, 0.583333}, + {0.333333, 0.583333}, + {0.333333, 0.666667}, + {0.312500, 0.666667}, + {0.312500, 0.666667}, + {0.333333, 0.666667}, + {0.333333, 0.750000}, + {0.312500, 0.750000}, + {0.312500, 0.750000}, + {0.333333, 0.750000}, + {0.333333, 0.833333}, + {0.312500, 0.833333}, + {0.312500, 0.833333}, + {0.333333, 0.833333}, + {0.333333, 0.916667}, + {0.312500, 0.916667}, + {0.312500, 0.916667}, + {0.333333, 0.916667}, + {0.333333, 1.000000}, + {0.312500, 1.000000}, + {0.312500, 0.000000}, + {0.333333, 0.000000}, + {0.333333, 0.083333}, + {0.312500, 0.083333}, + {0.312500, 0.083333}, + {0.333333, 0.083333}, + {0.333333, 0.166667}, + {0.312500, 0.166667}, + {0.312500, 0.166667}, + {0.333333, 0.166667}, + {0.333333, 0.250000}, + {0.312500, 0.250000}, + {0.312500, 0.250000}, + {0.333333, 0.250000}, + {0.333333, 0.333333}, + {0.312500, 0.333333}, + {0.312500, 0.333333}, + {0.333333, 0.333333}, + {0.333333, 0.416667}, + {0.312500, 0.416667}, + {0.312500, 0.416667}, + {0.333333, 0.416667}, + {0.333333, 0.500000}, + {0.312500, 0.500000}, + {0.333333, 0.500000}, + {0.354167, 0.500000}, + {0.354167, 0.583333}, + {0.333333, 0.583333}, + {0.333333, 0.583333}, + {0.354167, 0.583333}, + {0.354167, 0.666667}, + {0.333333, 0.666667}, + {0.333333, 0.666667}, + {0.354167, 0.666667}, + {0.354167, 0.750000}, + {0.333333, 0.750000}, + {0.333333, 0.750000}, + {0.354167, 0.750000}, + {0.354167, 0.833333}, + {0.333333, 0.833333}, + {0.333333, 0.833333}, + {0.354167, 0.833333}, + {0.354167, 0.916667}, + {0.333333, 0.916667}, + {0.333333, 0.916667}, + {0.354167, 0.916667}, + {0.354167, 1.000000}, + {0.333333, 1.000000}, + {0.333333, 0.000000}, + {0.354167, 0.000000}, + {0.354167, 0.083333}, + {0.333333, 0.083333}, + {0.333333, 0.083333}, + {0.354167, 0.083333}, + {0.354167, 0.166667}, + {0.333333, 0.166667}, + {0.333333, 0.166667}, + {0.354167, 0.166667}, + {0.354167, 0.250000}, + {0.333333, 0.250000}, + {0.333333, 0.250000}, + {0.354167, 0.250000}, + {0.354167, 0.333333}, + {0.333333, 0.333333}, + {0.333333, 0.333333}, + {0.354167, 0.333333}, + {0.354167, 0.416667}, + {0.333333, 0.416667}, + {0.333333, 0.416667}, + {0.354167, 0.416667}, + {0.354167, 0.500000}, + {0.333333, 0.500000}, + {0.354167, 0.500000}, + {0.375000, 0.500000}, + {0.375000, 0.583333}, + {0.354167, 0.583333}, + {0.354167, 0.583333}, + {0.375000, 0.583333}, + {0.375000, 0.666667}, + {0.354167, 0.666667}, + {0.354167, 0.666667}, + {0.375000, 0.666667}, + {0.375000, 0.750000}, + {0.354167, 0.750000}, + {0.354167, 0.750000}, + {0.375000, 0.750000}, + {0.375000, 0.833333}, + {0.354167, 0.833333}, + {0.354167, 0.833333}, + {0.375000, 0.833333}, + {0.375000, 0.916667}, + {0.354167, 0.916667}, + {0.354167, 0.916667}, + {0.375000, 0.916667}, + {0.375000, 1.000000}, + {0.354167, 1.000000}, + {0.354167, 0.000000}, + {0.375000, 0.000000}, + {0.375000, 0.083333}, + {0.354167, 0.083333}, + {0.354167, 0.083333}, + {0.375000, 0.083333}, + {0.375000, 0.166667}, + {0.354167, 0.166667}, + {0.354167, 0.166667}, + {0.375000, 0.166667}, + {0.375000, 0.250000}, + {0.354167, 0.250000}, + {0.354167, 0.250000}, + {0.375000, 0.250000}, + {0.375000, 0.333333}, + {0.354167, 0.333333}, + {0.354167, 0.333333}, + {0.375000, 0.333333}, + {0.375000, 0.416667}, + {0.354167, 0.416667}, + {0.354167, 0.416667}, + {0.375000, 0.416667}, + {0.375000, 0.500000}, + {0.354167, 0.500000}, + {0.375000, 0.500000}, + {0.395833, 0.500000}, + {0.395833, 0.583333}, + {0.375000, 0.583333}, + {0.375000, 0.583333}, + {0.395833, 0.583333}, + {0.395833, 0.666667}, + {0.375000, 0.666667}, + {0.375000, 0.666667}, + {0.395833, 0.666667}, + {0.395833, 0.750000}, + {0.375000, 0.750000}, + {0.375000, 0.750000}, + {0.395833, 0.750000}, + {0.395833, 0.833333}, + {0.375000, 0.833333}, + {0.375000, 0.833333}, + {0.395833, 0.833333}, + {0.395833, 0.916667}, + {0.375000, 0.916667}, + {0.375000, 0.916667}, + {0.395833, 0.916667}, + {0.395833, 1.000000}, + {0.375000, 1.000000}, + {0.375000, 0.000000}, + {0.395833, 0.000000}, + {0.395833, 0.083333}, + {0.375000, 0.083333}, + {0.375000, 0.083333}, + {0.395833, 0.083333}, + {0.395833, 0.166667}, + {0.375000, 0.166667}, + {0.375000, 0.166667}, + {0.395833, 0.166667}, + {0.395833, 0.250000}, + {0.375000, 0.250000}, + {0.375000, 0.250000}, + {0.395833, 0.250000}, + {0.395833, 0.333333}, + {0.375000, 0.333333}, + {0.375000, 0.333333}, + {0.395833, 0.333333}, + {0.395833, 0.416667}, + {0.375000, 0.416667}, + {0.375000, 0.416667}, + {0.395833, 0.416667}, + {0.395833, 0.500000}, + {0.375000, 0.500000}, + {0.395833, 0.500000}, + {0.416667, 0.500000}, + {0.416667, 0.583333}, + {0.395833, 0.583333}, + {0.395833, 0.583333}, + {0.416667, 0.583333}, + {0.416667, 0.666667}, + {0.395833, 0.666667}, + {0.395833, 0.666667}, + {0.416667, 0.666667}, + {0.416667, 0.750000}, + {0.395833, 0.750000}, + {0.395833, 0.750000}, + {0.416667, 0.750000}, + {0.416667, 0.833333}, + {0.395833, 0.833333}, + {0.395833, 0.833333}, + {0.416667, 0.833333}, + {0.416667, 0.916667}, + {0.395833, 0.916667}, + {0.395833, 0.916667}, + {0.416667, 0.916667}, + {0.416667, 1.000000}, + {0.395833, 1.000000}, + {0.395833, 0.000000}, + {0.416667, 0.000000}, + {0.416667, 0.083333}, + {0.395833, 0.083333}, + {0.395833, 0.083333}, + {0.416667, 0.083333}, + {0.416667, 0.166667}, + {0.395833, 0.166667}, + {0.395833, 0.166667}, + {0.416667, 0.166667}, + {0.416667, 0.250000}, + {0.395833, 0.250000}, + {0.395833, 0.250000}, + {0.416667, 0.250000}, + {0.416667, 0.333333}, + {0.395833, 0.333333}, + {0.395833, 0.333333}, + {0.416667, 0.333333}, + {0.416667, 0.416667}, + {0.395833, 0.416667}, + {0.395833, 0.416667}, + {0.416667, 0.416667}, + {0.416667, 0.500000}, + {0.395833, 0.500000}, + {0.416667, 0.500000}, + {0.437500, 0.500000}, + {0.437500, 0.583333}, + {0.416667, 0.583333}, + {0.416667, 0.583333}, + {0.437500, 0.583333}, + {0.437500, 0.666667}, + {0.416667, 0.666667}, + {0.416667, 0.666667}, + {0.437500, 0.666667}, + {0.437500, 0.750000}, + {0.416667, 0.750000}, + {0.416667, 0.750000}, + {0.437500, 0.750000}, + {0.437500, 0.833333}, + {0.416667, 0.833333}, + {0.416667, 0.833333}, + {0.437500, 0.833333}, + {0.437500, 0.916667}, + {0.416667, 0.916667}, + {0.416667, 0.916667}, + {0.437500, 0.916667}, + {0.437500, 1.000000}, + {0.416667, 1.000000}, + {0.416667, 0.000000}, + {0.437500, 0.000000}, + {0.437500, 0.083333}, + {0.416667, 0.083333}, + {0.416667, 0.083333}, + {0.437500, 0.083333}, + {0.437500, 0.166667}, + {0.416667, 0.166667}, + {0.416667, 0.166667}, + {0.437500, 0.166667}, + {0.437500, 0.250000}, + {0.416667, 0.250000}, + {0.416667, 0.250000}, + {0.437500, 0.250000}, + {0.437500, 0.333333}, + {0.416667, 0.333333}, + {0.416667, 0.333333}, + {0.437500, 0.333333}, + {0.437500, 0.416667}, + {0.416667, 0.416667}, + {0.416667, 0.416667}, + {0.437500, 0.416667}, + {0.437500, 0.500000}, + {0.416667, 0.500000}, + {0.437500, 0.500000}, + {0.458333, 0.500000}, + {0.458333, 0.583333}, + {0.437500, 0.583333}, + {0.437500, 0.583333}, + {0.458333, 0.583333}, + {0.458333, 0.666667}, + {0.437500, 0.666667}, + {0.437500, 0.666667}, + {0.458333, 0.666667}, + {0.458333, 0.750000}, + {0.437500, 0.750000}, + {0.437500, 0.750000}, + {0.458333, 0.750000}, + {0.458333, 0.833333}, + {0.437500, 0.833333}, + {0.437500, 0.833333}, + {0.458333, 0.833333}, + {0.458333, 0.916667}, + {0.437500, 0.916667}, + {0.437500, 0.916667}, + {0.458333, 0.916667}, + {0.458333, 1.000000}, + {0.437500, 1.000000}, + {0.437500, 0.000000}, + {0.458333, 0.000000}, + {0.458333, 0.083333}, + {0.437500, 0.083333}, + {0.437500, 0.083333}, + {0.458333, 0.083333}, + {0.458333, 0.166667}, + {0.437500, 0.166667}, + {0.437500, 0.166667}, + {0.458333, 0.166667}, + {0.458333, 0.250000}, + {0.437500, 0.250000}, + {0.437500, 0.250000}, + {0.458333, 0.250000}, + {0.458333, 0.333333}, + {0.437500, 0.333333}, + {0.437500, 0.333333}, + {0.458333, 0.333333}, + {0.458333, 0.416667}, + {0.437500, 0.416667}, + {0.437500, 0.416667}, + {0.458333, 0.416667}, + {0.458333, 0.500000}, + {0.437500, 0.500000}, + {0.458333, 0.500000}, + {0.479167, 0.500000}, + {0.479167, 0.583333}, + {0.458333, 0.583333}, + {0.458333, 0.583333}, + {0.479167, 0.583333}, + {0.479167, 0.666667}, + {0.458333, 0.666667}, + {0.458333, 0.666667}, + {0.479167, 0.666667}, + {0.479167, 0.750000}, + {0.458333, 0.750000}, + {0.458333, 0.750000}, + {0.479167, 0.750000}, + {0.479167, 0.833333}, + {0.458333, 0.833333}, + {0.458333, 0.833333}, + {0.479167, 0.833333}, + {0.479167, 0.916667}, + {0.458333, 0.916667}, + {0.458333, 0.916667}, + {0.479167, 0.916667}, + {0.479167, 1.000000}, + {0.458333, 1.000000}, + {0.458333, 0.000000}, + {0.479167, 0.000000}, + {0.479167, 0.083333}, + {0.458333, 0.083333}, + {0.458333, 0.083333}, + {0.479167, 0.083333}, + {0.479167, 0.166667}, + {0.458333, 0.166667}, + {0.458333, 0.166667}, + {0.479167, 0.166667}, + {0.479167, 0.250000}, + {0.458333, 0.250000}, + {0.458333, 0.250000}, + {0.479167, 0.250000}, + {0.479167, 0.333333}, + {0.458333, 0.333333}, + {0.458333, 0.333333}, + {0.479167, 0.333333}, + {0.479167, 0.416667}, + {0.458333, 0.416667}, + {0.458333, 0.416667}, + {0.479167, 0.416667}, + {0.479167, 0.500000}, + {0.458333, 0.500000}, + {0.479167, 0.500000}, + {0.500000, 0.500000}, + {0.500000, 0.583333}, + {0.479167, 0.583333}, + {0.479167, 0.583333}, + {0.500000, 0.583333}, + {0.500000, 0.666667}, + {0.479167, 0.666667}, + {0.479167, 0.666667}, + {0.500000, 0.666667}, + {0.500000, 0.750000}, + {0.479167, 0.750000}, + {0.479167, 0.750000}, + {0.500000, 0.750000}, + {0.500000, 0.833333}, + {0.479167, 0.833333}, + {0.479167, 0.833333}, + {0.500000, 0.833333}, + {0.500000, 0.916667}, + {0.479167, 0.916667}, + {0.479167, 0.916667}, + {0.500000, 0.916667}, + {0.500000, 1.000000}, + {0.479167, 1.000000}, + {0.479167, 0.000000}, + {0.500000, 0.000000}, + {0.500000, 0.083333}, + {0.479167, 0.083333}, + {0.479167, 0.083333}, + {0.500000, 0.083333}, + {0.500000, 0.166667}, + {0.479167, 0.166667}, + {0.479167, 0.166667}, + {0.500000, 0.166667}, + {0.500000, 0.250000}, + {0.479167, 0.250000}, + {0.479167, 0.250000}, + {0.500000, 0.250000}, + {0.500000, 0.333333}, + {0.479167, 0.333333}, + {0.479167, 0.333333}, + {0.500000, 0.333333}, + {0.500000, 0.416667}, + {0.479167, 0.416667}, + {0.479167, 0.416667}, + {0.500000, 0.416667}, + {0.500000, 0.500000}, + {0.479167, 0.500000}, +}; + +const vec3 mesh_Torus_normal[] = { + {1.000000, 0.000000, 0.000000}, + {0.868669, 0.000000, 0.495393}, + {0.507995, -0.000000, 0.861360}, + {0.010776, 0.000000, 0.999942}, + {-0.491833, 0.000000, 0.870689}, + {-0.863283, 0.000000, 0.504720}, + {-1.000000, 0.000000, 0.000000}, + {-0.863283, 0.000000, -0.504720}, + {-0.491833, 0.000000, -0.870689}, + {0.010776, 0.000000, -0.999942}, + {0.507995, 0.000000, -0.861360}, + {0.868669, 0.000000, -0.495393}, + {0.991445, 0.130527, 0.000000}, + {0.861237, 0.113384, 0.495393}, + {0.503649, 0.066307, 0.861360}, + {0.010684, 0.001406, 0.999942}, + {-0.487626, -0.064197, 0.870689}, + {-0.855897, -0.112681, 0.504720}, + {-0.991445, -0.130526, 0.000000}, + {-0.855897, -0.112681, -0.504720}, + {-0.487626, -0.064197, -0.870689}, + {0.010683, 0.001406, -0.999942}, + {0.503649, 0.066307, -0.861360}, + {0.861237, 0.113384, -0.495393}, + {0.965926, 0.258819, 0.000000}, + {0.839070, 0.224828, 0.495393}, + {0.490685, 0.131479, 0.861360}, + {0.010408, 0.002789, 0.999942}, + {-0.475074, -0.127296, 0.870689}, + {-0.833867, -0.223434, 0.504720}, + {-0.965926, -0.258819, -0.000000}, + {-0.833867, -0.223434, -0.504720}, + {-0.475074, -0.127296, -0.870689}, + {0.010408, 0.002789, -0.999942}, + {0.490685, 0.131479, -0.861360}, + {0.839070, 0.224828, -0.495393}, + {0.923880, 0.382683, 0.000000}, + {0.802545, 0.332425, 0.495393}, + {0.469326, 0.194401, 0.861360}, + {0.009955, 0.004124, 0.999942}, + {-0.454395, -0.188217, 0.870689}, + {-0.797569, -0.330364, 0.504720}, + {-0.923880, -0.382683, -0.000000}, + {-0.797569, -0.330364, -0.504720}, + {-0.454395, -0.188217, -0.870689}, + {0.009955, 0.004124, -0.999942}, + {0.469326, 0.194401, -0.861360}, + {0.802545, 0.332425, -0.495393}, + {0.866025, 0.500000, 0.000000}, + {0.752289, 0.434334, 0.495393}, + {0.439937, 0.253997, 0.861360}, + {0.009332, 0.005388, 0.999942}, + {-0.425940, -0.245917, 0.870689}, + {-0.747625, -0.431641, 0.504720}, + {-0.866025, -0.500000, -0.000000}, + {-0.747625, -0.431642, -0.504720}, + {-0.425940, -0.245917, -0.870689}, + {0.009332, 0.005388, -0.999942}, + {0.439937, 0.253997, -0.861360}, + {0.752289, 0.434334, -0.495393}, + {0.793353, 0.608761, 0.000000}, + {0.689161, 0.528812, 0.495393}, + {0.403020, 0.309248, 0.861360}, + {0.008549, 0.006560, 0.999942}, + {-0.390198, -0.299409, 0.870689}, + {-0.684888, -0.525533, 0.504720}, + {-0.793353, -0.608761, 0.000000}, + {-0.684888, -0.525533, -0.504720}, + {-0.390198, -0.299409, -0.870689}, + {0.008549, 0.006560, -0.999942}, + {0.403020, 0.309248, -0.861360}, + {0.689161, 0.528812, -0.495393}, + {0.707107, 0.707107, 0.000000}, + {0.614241, 0.614242, 0.495393}, + {0.359207, 0.359207, 0.861360}, + {0.007619, 0.007620, 0.999942}, + {-0.347779, -0.347779, 0.870689}, + {-0.610433, -0.610433, 0.504720}, + {-0.707107, -0.707107, 0.000000}, + {-0.610433, -0.610433, -0.504720}, + {-0.347779, -0.347779, -0.870689}, + {0.007619, 0.007619, -0.999942}, + {0.359207, 0.359207, -0.861360}, + {0.614242, 0.614242, -0.495393}, + {0.608762, 0.793353, -0.000000}, + {0.528812, 0.689161, 0.495393}, + {0.309248, 0.403019, 0.861360}, + {0.006560, 0.008549, 0.999942}, + {-0.299409, -0.390198, 0.870689}, + {-0.525533, -0.684888, 0.504720}, + {-0.608762, -0.793353, -0.000000}, + {-0.525533, -0.684888, -0.504720}, + {-0.299409, -0.390198, -0.870689}, + {0.006560, 0.008549, -0.999942}, + {0.309248, 0.403019, -0.861360}, + {0.528812, 0.689161, -0.495393}, + {0.500000, 0.866025, -0.000000}, + {0.434335, 0.752289, 0.495393}, + {0.253998, 0.439937, 0.861360}, + {0.005388, 0.009332, 0.999942}, + {-0.245917, -0.425940, 0.870689}, + {-0.431642, -0.747625, 0.504720}, + {-0.500000, -0.866025, -0.000000}, + {-0.431642, -0.747625, -0.504720}, + {-0.245917, -0.425940, -0.870689}, + {0.005388, 0.009332, -0.999942}, + {0.253998, 0.439937, -0.861360}, + {0.434335, 0.752289, -0.495393}, + {0.382684, 0.923880, 0.000000}, + {0.332425, 0.802545, 0.495393}, + {0.194401, 0.469326, 0.861360}, + {0.004124, 0.009955, 0.999942}, + {-0.188216, -0.454395, 0.870689}, + {-0.330364, -0.797570, 0.504720}, + {-0.382683, -0.923880, 0.000000}, + {-0.330364, -0.797570, -0.504720}, + {-0.188216, -0.454395, -0.870689}, + {0.004124, 0.009955, -0.999942}, + {0.194401, 0.469326, -0.861360}, + {0.332425, 0.802545, -0.495393}, + {0.258819, 0.965926, 0.000000}, + {0.224828, 0.839070, 0.495393}, + {0.131479, 0.490685, 0.861360}, + {0.002789, 0.010408, 0.999942}, + {-0.127296, -0.475074, 0.870689}, + {-0.223434, -0.833867, 0.504720}, + {-0.258819, -0.965926, 0.000000}, + {-0.223434, -0.833867, -0.504720}, + {-0.127296, -0.475074, -0.870689}, + {0.002789, 0.010408, -0.999942}, + {0.131479, 0.490685, -0.861360}, + {0.224828, 0.839070, -0.495393}, + {0.130526, 0.991445, 0.000000}, + {0.113384, 0.861237, 0.495393}, + {0.066307, 0.503649, 0.861360}, + {0.001406, 0.010683, 0.999942}, + {-0.064197, -0.487625, 0.870689}, + {-0.112681, -0.855897, 0.504720}, + {-0.130526, -0.991445, 0.000000}, + {-0.112681, -0.855897, -0.504720}, + {-0.064197, -0.487625, -0.870689}, + {0.001407, 0.010683, -0.999942}, + {0.066307, 0.503649, -0.861360}, + {0.113384, 0.861237, -0.495393}, + {-0.000000, 1.000000, 0.000000}, + {-0.000000, 0.868669, 0.495393}, + {-0.000000, 0.507995, 0.861360}, + {-0.000000, 0.010776, 0.999942}, + {-0.000000, -0.491833, 0.870689}, + {-0.000000, -0.863283, 0.504720}, + {0.000000, -1.000000, 0.000000}, + {-0.000000, -0.863283, -0.504720}, + {-0.000000, -0.491833, -0.870689}, + {-0.000000, 0.010776, -0.999942}, + {-0.000000, 0.507995, -0.861360}, + {-0.000000, 0.868669, -0.495393}, + {-0.130526, 0.991445, 0.000000}, + {-0.113384, 0.861237, 0.495393}, + {-0.066307, 0.503649, 0.861360}, + {-0.001406, 0.010683, 0.999942}, + {0.064197, -0.487625, 0.870689}, + {0.112681, -0.855897, 0.504720}, + {0.130526, -0.991445, 0.000000}, + {0.112681, -0.855897, -0.504720}, + {0.064197, -0.487625, -0.870689}, + {-0.001407, 0.010683, -0.999942}, + {-0.066307, 0.503649, -0.861360}, + {-0.113384, 0.861237, -0.495393}, + {-0.258819, 0.965926, 0.000000}, + {-0.224828, 0.839070, 0.495393}, + {-0.131479, 0.490685, 0.861360}, + {-0.002789, 0.010408, 0.999942}, + {0.127296, -0.475074, 0.870689}, + {0.223434, -0.833867, 0.504720}, + {0.258819, -0.965926, 0.000000}, + {0.223434, -0.833867, -0.504720}, + {0.127296, -0.475074, -0.870689}, + {-0.002789, 0.010408, -0.999942}, + {-0.131479, 0.490685, -0.861360}, + {-0.224828, 0.839070, -0.495393}, + {-0.382683, 0.923880, 0.000000}, + {-0.332425, 0.802545, 0.495393}, + {-0.194401, 0.469326, 0.861360}, + {-0.004124, 0.009955, 0.999942}, + {0.188217, -0.454395, 0.870689}, + {0.330364, -0.797569, 0.504720}, + {0.382683, -0.923880, 0.000000}, + {0.330364, -0.797570, -0.504720}, + {0.188217, -0.454395, -0.870689}, + {-0.004124, 0.009955, -0.999942}, + {-0.194401, 0.469326, -0.861360}, + {-0.332425, 0.802545, -0.495393}, + {-0.500000, 0.866025, 0.000000}, + {-0.434334, 0.752289, 0.495393}, + {-0.253998, 0.439937, 0.861360}, + {-0.005388, 0.009332, 0.999942}, + {0.245917, -0.425940, 0.870689}, + {0.431641, -0.747625, 0.504721}, + {0.500000, -0.866025, 0.000000}, + {0.431641, -0.747625, -0.504720}, + {0.245917, -0.425940, -0.870689}, + {-0.005388, 0.009332, -0.999942}, + {-0.253998, 0.439937, -0.861360}, + {-0.434334, 0.752289, -0.495393}, + {-0.608761, 0.793353, 0.000000}, + {-0.528812, 0.689161, 0.495393}, + {-0.309248, 0.403020, 0.861360}, + {-0.006560, 0.008549, 0.999942}, + {0.299409, -0.390197, 0.870689}, + {0.525533, -0.684888, 0.504720}, + {0.608762, -0.793353, -0.000000}, + {0.525533, -0.684888, -0.504720}, + {0.299409, -0.390198, -0.870689}, + {-0.006560, 0.008549, -0.999942}, + {-0.309248, 0.403019, -0.861360}, + {-0.528812, 0.689161, -0.495393}, + {-0.707107, 0.707107, 0.000000}, + {-0.614242, 0.614241, 0.495393}, + {-0.359207, 0.359207, 0.861360}, + {-0.007619, 0.007620, 0.999942}, + {0.347779, -0.347779, 0.870689}, + {0.610433, -0.610433, 0.504720}, + {0.707107, -0.707107, -0.000000}, + {0.610433, -0.610433, -0.504720}, + {0.347779, -0.347779, -0.870689}, + {-0.007619, 0.007620, -0.999942}, + {-0.359207, 0.359207, -0.861360}, + {-0.614242, 0.614241, -0.495393}, + {-0.793353, 0.608761, 0.000000}, + {-0.689161, 0.528812, 0.495393}, + {-0.403019, 0.309248, 0.861360}, + {-0.008549, 0.006560, 0.999942}, + {0.390198, -0.299409, 0.870689}, + {0.684888, -0.525533, 0.504720}, + {0.793353, -0.608762, 0.000000}, + {0.684888, -0.525533, -0.504720}, + {0.390198, -0.299409, -0.870689}, + {-0.008549, 0.006560, -0.999942}, + {-0.403020, 0.309248, -0.861360}, + {-0.689161, 0.528812, -0.495393}, + {-0.866025, 0.500000, -0.000000}, + {-0.752289, 0.434335, 0.495393}, + {-0.439937, 0.253998, 0.861360}, + {-0.009332, 0.005388, 0.999942}, + {0.425940, -0.245917, 0.870689}, + {0.747625, -0.431641, 0.504720}, + {0.866025, -0.500000, 0.000000}, + {0.747625, -0.431641, -0.504720}, + {0.425940, -0.245917, -0.870689}, + {-0.009332, 0.005388, -0.999942}, + {-0.439937, 0.253998, -0.861360}, + {-0.752289, 0.434335, -0.495393}, + {-0.923879, 0.382684, -0.000000}, + {-0.802545, 0.332425, 0.495393}, + {-0.469326, 0.194401, 0.861360}, + {-0.009955, 0.004124, 0.999942}, + {0.454395, -0.188217, 0.870689}, + {0.797569, -0.330364, 0.504720}, + {0.923879, -0.382684, 0.000000}, + {0.797569, -0.330364, -0.504720}, + {0.454395, -0.188217, -0.870689}, + {-0.009955, 0.004124, -0.999942}, + {-0.469326, 0.194401, -0.861360}, + {-0.802545, 0.332425, -0.495393}, + {-0.965926, 0.258819, -0.000000}, + {-0.839070, 0.224828, 0.495393}, + {-0.490685, 0.131479, 0.861360}, + {-0.010408, 0.002789, 0.999942}, + {0.475074, -0.127296, 0.870689}, + {0.833867, -0.223434, 0.504720}, + {0.965926, -0.258819, 0.000000}, + {0.833867, -0.223434, -0.504720}, + {0.475074, -0.127296, -0.870689}, + {-0.010408, 0.002789, -0.999942}, + {-0.490685, 0.131479, -0.861360}, + {-0.839070, 0.224828, -0.495393}, + {-0.991445, 0.130526, 0.000000}, + {-0.861237, 0.113384, 0.495393}, + {-0.503649, 0.066307, 0.861360}, + {-0.010683, 0.001406, 0.999942}, + {0.487626, -0.064197, 0.870689}, + {0.855897, -0.112681, 0.504720}, + {0.991445, -0.130526, 0.000000}, + {0.855897, -0.112681, -0.504720}, + {0.487626, -0.064197, -0.870689}, + {-0.010683, 0.001406, -0.999942}, + {-0.503649, 0.066307, -0.861360}, + {-0.861237, 0.113384, -0.495393}, + {-1.000000, 0.000000, 0.000000}, + {-0.868669, 0.000000, 0.495393}, + {-0.507995, 0.000000, 0.861360}, + {-0.010776, -0.000000, 0.999942}, + {0.491833, -0.000000, 0.870689}, + {0.863283, -0.000000, 0.504720}, + {1.000000, -0.000000, 0.000000}, + {0.863283, -0.000000, -0.504720}, + {0.491833, -0.000000, -0.870689}, + {-0.010776, -0.000000, -0.999942}, + {-0.507995, 0.000000, -0.861360}, + {-0.868669, 0.000000, -0.495393}, + {-0.991445, -0.130526, -0.000000}, + {-0.861237, -0.113384, 0.495393}, + {-0.503649, -0.066307, 0.861360}, + {-0.010683, -0.001406, 0.999942}, + {0.487626, 0.064197, 0.870689}, + {0.855897, 0.112681, 0.504720}, + {0.991445, 0.130526, 0.000000}, + {0.855897, 0.112681, -0.504720}, + {0.487626, 0.064197, -0.870689}, + {-0.010683, -0.001406, -0.999942}, + {-0.503649, -0.066307, -0.861360}, + {-0.861237, -0.113384, -0.495393}, + {-0.965926, -0.258819, -0.000000}, + {-0.839070, -0.224828, 0.495393}, + {-0.490686, -0.131478, 0.861360}, + {-0.010408, -0.002789, 0.999942}, + {0.475074, 0.127296, 0.870689}, + {0.833867, 0.223434, 0.504720}, + {0.965926, 0.258819, 0.000000}, + {0.833867, 0.223434, -0.504720}, + {0.475074, 0.127296, -0.870689}, + {-0.010408, -0.002789, -0.999942}, + {-0.490685, -0.131478, -0.861360}, + {-0.839070, -0.224828, -0.495393}, + {-0.923879, -0.382684, 0.000000}, + {-0.802545, -0.332425, 0.495393}, + {-0.469326, -0.194401, 0.861360}, + {-0.009955, -0.004124, 0.999942}, + {0.454395, 0.188216, 0.870689}, + {0.797570, 0.330364, 0.504720}, + {0.923880, 0.382683, 0.000000}, + {0.797570, 0.330364, -0.504720}, + {0.454395, 0.188216, -0.870689}, + {-0.009955, -0.004124, -0.999942}, + {-0.469326, -0.194401, -0.861360}, + {-0.802545, -0.332425, -0.495393}, + {-0.866025, -0.500000, 0.000000}, + {-0.752289, -0.434334, 0.495393}, + {-0.439937, -0.253998, 0.861360}, + {-0.009332, -0.005388, 0.999942}, + {0.425940, 0.245916, 0.870689}, + {0.747625, 0.431641, 0.504720}, + {0.866026, 0.500000, 0.000000}, + {0.747625, 0.431641, -0.504720}, + {0.425940, 0.245916, -0.870689}, + {-0.009332, -0.005388, -0.999942}, + {-0.439937, -0.253998, -0.861360}, + {-0.752289, -0.434334, -0.495393}, + {-0.793353, -0.608761, 0.000000}, + {-0.689161, -0.528812, 0.495393}, + {-0.403019, -0.309248, 0.861360}, + {-0.008549, -0.006560, 0.999942}, + {0.390198, 0.299409, 0.870689}, + {0.684888, 0.525533, 0.504720}, + {0.793353, 0.608762, -0.000000}, + {0.684888, 0.525533, -0.504720}, + {0.390198, 0.299409, -0.870689}, + {-0.008549, -0.006560, -0.999942}, + {-0.403019, -0.309248, -0.861360}, + {-0.689161, -0.528812, -0.495393}, + {-0.707107, -0.707107, 0.000000}, + {-0.614242, -0.614241, 0.495393}, + {-0.359207, -0.359206, 0.861360}, + {-0.007619, -0.007619, 0.999942}, + {0.347779, 0.347779, 0.870689}, + {0.610433, 0.610433, 0.504720}, + {0.707107, 0.707107, 0.000000}, + {0.610433, 0.610433, -0.504720}, + {0.347779, 0.347779, -0.870689}, + {-0.007619, -0.007619, -0.999942}, + {-0.359207, -0.359206, -0.861360}, + {-0.614242, -0.614241, -0.495393}, + {-0.608762, -0.793353, 0.000000}, + {-0.528812, -0.689161, 0.495393}, + {-0.309248, -0.403019, 0.861360}, + {-0.006560, -0.008549, 0.999942}, + {0.299409, 0.390197, 0.870689}, + {0.525534, 0.684888, 0.504720}, + {0.608762, 0.793353, 0.000000}, + {0.525534, 0.684888, -0.504720}, + {0.299409, 0.390197, -0.870689}, + {-0.006560, -0.008549, -0.999942}, + {-0.309248, -0.403019, -0.861360}, + {-0.528812, -0.689161, -0.495393}, + {-0.500000, -0.866025, 0.000000}, + {-0.434334, -0.752289, 0.495393}, + {-0.253998, -0.439937, 0.861360}, + {-0.005388, -0.009332, 0.999942}, + {0.245917, 0.425940, 0.870689}, + {0.431641, 0.747625, 0.504720}, + {0.500000, 0.866025, 0.000000}, + {0.431641, 0.747625, -0.504720}, + {0.245917, 0.425940, -0.870689}, + {-0.005388, -0.009332, -0.999942}, + {-0.253998, -0.439937, -0.861360}, + {-0.434334, -0.752289, -0.495393}, + {-0.382683, -0.923880, 0.000000}, + {-0.332425, -0.802545, 0.495393}, + {-0.194401, -0.469326, 0.861360}, + {-0.004124, -0.009955, 0.999942}, + {0.188217, 0.454395, 0.870689}, + {0.330364, 0.797569, 0.504720}, + {0.382684, 0.923880, 0.000000}, + {0.330364, 0.797569, -0.504720}, + {0.188217, 0.454395, -0.870689}, + {-0.004124, -0.009955, -0.999942}, + {-0.194401, -0.469326, -0.861360}, + {-0.332425, -0.802545, -0.495393}, + {-0.258819, -0.965926, 0.000000}, + {-0.224828, -0.839070, 0.495393}, + {-0.131479, -0.490685, 0.861360}, + {-0.002789, -0.010408, 0.999942}, + {0.127296, 0.475075, 0.870689}, + {0.223434, 0.833867, 0.504720}, + {0.258819, 0.965926, 0.000000}, + {0.223434, 0.833867, -0.504720}, + {0.127296, 0.475075, -0.870689}, + {-0.002789, -0.010408, -0.999942}, + {-0.131479, -0.490685, -0.861360}, + {-0.224828, -0.839070, -0.495393}, + {-0.130526, -0.991445, 0.000000}, + {-0.113384, -0.861237, 0.495393}, + {-0.066307, -0.503649, 0.861360}, + {-0.001406, -0.010683, 0.999942}, + {0.064197, 0.487626, 0.870689}, + {0.112681, 0.855897, 0.504720}, + {0.130527, 0.991445, 0.000000}, + {0.112681, 0.855897, -0.504720}, + {0.064197, 0.487626, -0.870689}, + {-0.001406, -0.010683, -0.999942}, + {-0.066307, -0.503649, -0.861360}, + {-0.113384, -0.861237, -0.495393}, + {-0.000000, -1.000000, 0.000000}, + {-0.000000, -0.868669, 0.495393}, + {-0.000000, -0.507995, 0.861360}, + {-0.000000, -0.010776, 0.999942}, + {0.000000, 0.491833, 0.870689}, + {0.000000, 0.863283, 0.504720}, + {0.000000, 1.000000, 0.000000}, + {0.000000, 0.863283, -0.504720}, + {0.000000, 0.491833, -0.870689}, + {-0.000000, -0.010776, -0.999942}, + {-0.000000, -0.507995, -0.861360}, + {-0.000000, -0.868669, -0.495393}, + {0.130526, -0.991445, 0.000000}, + {0.113384, -0.861237, 0.495393}, + {0.066307, -0.503649, 0.861360}, + {0.001406, -0.010683, 0.999942}, + {-0.064197, 0.487626, 0.870689}, + {-0.112681, 0.855897, 0.504720}, + {-0.130526, 0.991445, 0.000000}, + {-0.112681, 0.855898, -0.504720}, + {-0.064197, 0.487626, -0.870689}, + {0.001407, -0.010683, -0.999942}, + {0.066307, -0.503649, -0.861360}, + {0.113384, -0.861237, -0.495393}, + {0.258819, -0.965926, 0.000000}, + {0.224828, -0.839070, 0.495393}, + {0.131479, -0.490685, 0.861360}, + {0.002789, -0.010408, 0.999942}, + {-0.127296, 0.475075, 0.870689}, + {-0.223434, 0.833867, 0.504720}, + {-0.258819, 0.965926, 0.000000}, + {-0.223434, 0.833867, -0.504720}, + {-0.127296, 0.475075, -0.870689}, + {0.002789, -0.010408, -0.999942}, + {0.131479, -0.490685, -0.861360}, + {0.224828, -0.839070, -0.495393}, + {0.382683, -0.923880, 0.000000}, + {0.332425, -0.802545, 0.495393}, + {0.194401, -0.469326, 0.861360}, + {0.004124, -0.009955, 0.999942}, + {-0.188216, 0.454395, 0.870689}, + {-0.330364, 0.797570, 0.504720}, + {-0.382683, 0.923880, 0.000000}, + {-0.330364, 0.797570, -0.504720}, + {-0.188216, 0.454395, -0.870689}, + {0.004124, -0.009955, -0.999942}, + {0.194401, -0.469326, -0.861360}, + {0.332425, -0.802545, -0.495393}, + {0.500000, -0.866026, 0.000000}, + {0.434334, -0.752289, 0.495393}, + {0.253997, -0.439937, 0.861360}, + {0.005388, -0.009332, 0.999942}, + {-0.245917, 0.425940, 0.870689}, + {-0.431642, 0.747625, 0.504720}, + {-0.500000, 0.866025, 0.000000}, + {-0.431642, 0.747625, -0.504720}, + {-0.245917, 0.425940, -0.870689}, + {0.005388, -0.009332, -0.999942}, + {0.253997, -0.439937, -0.861360}, + {0.434334, -0.752289, -0.495393}, + {0.608761, -0.793354, 0.000000}, + {0.528812, -0.689162, 0.495393}, + {0.309248, -0.403020, 0.861360}, + {0.006560, -0.008549, 0.999942}, + {-0.299409, 0.390198, 0.870689}, + {-0.525533, 0.684889, 0.504720}, + {-0.608761, 0.793354, 0.000000}, + {-0.525533, 0.684889, -0.504720}, + {-0.299409, 0.390198, -0.870689}, + {0.006560, -0.008549, -0.999942}, + {0.309248, -0.403020, -0.861360}, + {0.528812, -0.689162, -0.495393}, + {0.707107, -0.707107, 0.000000}, + {0.614241, -0.614242, 0.495393}, + {0.359207, -0.359207, 0.861360}, + {0.007620, -0.007620, 0.999942}, + {-0.347779, 0.347779, 0.870689}, + {-0.610433, 0.610434, 0.504720}, + {-0.707106, 0.707107, 0.000000}, + {-0.610433, 0.610434, -0.504720}, + {-0.347778, 0.347779, -0.870689}, + {0.007620, -0.007620, -0.999942}, + {0.359207, -0.359207, -0.861360}, + {0.614241, -0.614242, -0.495393}, + {0.793353, -0.608761, 0.000000}, + {0.689161, -0.528812, 0.495393}, + {0.403020, -0.309248, 0.861360}, + {0.008549, -0.006560, 0.999942}, + {-0.390198, 0.299409, 0.870689}, + {-0.684888, 0.525533, 0.504720}, + {-0.793353, 0.608761, 0.000000}, + {-0.684888, 0.525533, -0.504720}, + {-0.390198, 0.299409, -0.870689}, + {0.008549, -0.006560, -0.999942}, + {0.403020, -0.309248, -0.861360}, + {0.689161, -0.528812, -0.495393}, + {0.866025, -0.500000, 0.000000}, + {0.752289, -0.434334, 0.495393}, + {0.439937, -0.253998, 0.861360}, + {0.009332, -0.005388, 0.999942}, + {-0.425940, 0.245917, 0.870689}, + {-0.747625, 0.431642, 0.504720}, + {-0.866025, 0.500000, 0.000000}, + {-0.747625, 0.431642, -0.504720}, + {-0.425940, 0.245917, -0.870689}, + {0.009332, -0.005388, -0.999942}, + {0.439937, -0.253998, -0.861360}, + {0.752289, -0.434335, -0.495393}, + {0.923879, -0.382684, 0.000000}, + {0.802545, -0.332425, 0.495393}, + {0.469326, -0.194401, 0.861360}, + {0.009955, -0.004124, 0.999942}, + {-0.454395, 0.188217, 0.870689}, + {-0.797569, 0.330364, 0.504720}, + {-0.923879, 0.382684, 0.000000}, + {-0.797569, 0.330364, -0.504720}, + {-0.454395, 0.188217, -0.870689}, + {0.009955, -0.004124, -0.999942}, + {0.469326, -0.194401, -0.861360}, + {0.802545, -0.332425, -0.495393}, + {0.965926, -0.258819, 0.000000}, + {0.839070, -0.224828, 0.495393}, + {0.490685, -0.131479, 0.861360}, + {0.010408, -0.002789, 0.999942}, + {-0.475074, 0.127296, 0.870689}, + {-0.833867, 0.223434, 0.504720}, + {-0.965926, 0.258819, -0.000000}, + {-0.833867, 0.223434, -0.504720}, + {-0.475074, 0.127296, -0.870689}, + {0.010408, -0.002789, -0.999942}, + {0.490685, -0.131479, -0.861360}, + {0.839070, -0.224828, -0.495393}, + {0.991445, -0.130526, -0.000000}, + {0.861237, -0.113384, 0.495393}, + {0.503649, -0.066307, 0.861360}, + {0.010683, -0.001406, 0.999942}, + {-0.487626, 0.064197, 0.870689}, + {-0.855897, 0.112681, 0.504720}, + {-0.991445, 0.130526, -0.000000}, + {-0.855897, 0.112681, -0.504720}, + {-0.487626, 0.064197, -0.870689}, + {0.010683, -0.001406, -0.999942}, + {0.503649, -0.066307, -0.861360}, + {0.861237, -0.113384, -0.495393}, +}; + +const vec3 mesh_Torus_polygon_normal[] = { + {0.963996, 0.063184, 0.258302}, + {0.706349, 0.046297, 0.706349}, + {0.258782, 0.016961, 0.965787}, + {-0.258782, -0.016961, 0.965787}, + {-0.706348, -0.046297, 0.706349}, + {-0.963996, -0.063184, 0.258302}, + {-0.963996, -0.063184, -0.258302}, + {-0.706348, -0.046297, -0.706349}, + {-0.258782, -0.016961, -0.965787}, + {0.258782, 0.016961, -0.965787}, + {0.706349, 0.046297, -0.706349}, + {0.963996, 0.063184, -0.258302}, + {0.947502, 0.188470, 0.258302}, + {0.694263, 0.138097, 0.706348}, + {0.254354, 0.050594, 0.965787}, + {-0.254354, -0.050594, 0.965787}, + {-0.694263, -0.138097, 0.706349}, + {-0.947502, -0.188470, 0.258302}, + {-0.947502, -0.188470, -0.258302}, + {-0.694263, -0.138097, -0.706349}, + {-0.254354, -0.050594, -0.965787}, + {0.254354, 0.050594, -0.965787}, + {0.694263, 0.138097, -0.706349}, + {0.947502, 0.188470, -0.258302}, + {0.914796, 0.310531, 0.258301}, + {0.670298, 0.227535, 0.706349}, + {0.245574, 0.083361, 0.965787}, + {-0.245574, -0.083361, 0.965787}, + {-0.670298, -0.227536, 0.706349}, + {-0.914795, -0.310531, 0.258302}, + {-0.914795, -0.310531, -0.258302}, + {-0.670298, -0.227536, -0.706349}, + {-0.245574, -0.083361, -0.965787}, + {0.245574, 0.083361, -0.965787}, + {0.670298, 0.227535, -0.706349}, + {0.914796, 0.310531, -0.258301}, + {0.866437, 0.427279, 0.258302}, + {0.634864, 0.313080, 0.706349}, + {0.232592, 0.114702, 0.965787}, + {-0.232592, -0.114702, 0.965787}, + {-0.634864, -0.313081, 0.706348}, + {-0.866437, -0.427280, 0.258302}, + {-0.866436, -0.427279, -0.258302}, + {-0.634864, -0.313081, -0.706348}, + {-0.232592, -0.114702, -0.965787}, + {0.232592, 0.114702, -0.965787}, + {0.634864, 0.313080, -0.706349}, + {0.866437, 0.427279, -0.258302}, + {0.803253, 0.536716, 0.258302}, + {0.588568, 0.393268, 0.706348}, + {0.215631, 0.144080, 0.965787}, + {-0.215631, -0.144080, 0.965787}, + {-0.588568, -0.393268, 0.706349}, + {-0.803253, -0.536716, 0.258302}, + {-0.803253, -0.536716, -0.258302}, + {-0.588568, -0.393268, -0.706349}, + {-0.215631, -0.144080, -0.965787}, + {0.215631, 0.144080, -0.965787}, + {0.588568, 0.393268, -0.706348}, + {0.803253, 0.536716, -0.258302}, + {0.726325, 0.636971, 0.258302}, + {0.532200, 0.466728, 0.706348}, + {0.194980, 0.170993, 0.965787}, + {-0.194980, -0.170993, 0.965787}, + {-0.532201, -0.466727, 0.706349}, + {-0.726326, -0.636970, 0.258302}, + {-0.726326, -0.636970, -0.258302}, + {-0.532201, -0.466727, -0.706349}, + {-0.194980, -0.170993, -0.965787}, + {0.194980, 0.170993, -0.965787}, + {0.532200, 0.466728, -0.706348}, + {0.726325, 0.636971, -0.258302}, + {0.636970, 0.726326, 0.258302}, + {0.466727, 0.532200, 0.706349}, + {0.170993, 0.194980, 0.965787}, + {-0.170993, -0.194980, 0.965787}, + {-0.466727, -0.532200, 0.706349}, + {-0.636970, -0.726326, 0.258302}, + {-0.636970, -0.726326, -0.258302}, + {-0.466727, -0.532200, -0.706349}, + {-0.170993, -0.194980, -0.965787}, + {0.170993, 0.194980, -0.965787}, + {0.466728, 0.532200, -0.706348}, + {0.636970, 0.726326, -0.258302}, + {0.536717, 0.803253, 0.258301}, + {0.393268, 0.588567, 0.706349}, + {0.144080, 0.215631, 0.965787}, + {-0.144080, -0.215631, 0.965787}, + {-0.393269, -0.588567, 0.706348}, + {-0.536717, -0.803253, 0.258301}, + {-0.536717, -0.803253, -0.258302}, + {-0.393269, -0.588567, -0.706348}, + {-0.144080, -0.215631, -0.965787}, + {0.144080, 0.215631, -0.965787}, + {0.393268, 0.588567, -0.706349}, + {0.536717, 0.803253, -0.258302}, + {0.427279, 0.866437, 0.258301}, + {0.313080, 0.634864, 0.706349}, + {0.114702, 0.232592, 0.965787}, + {-0.114702, -0.232592, 0.965787}, + {-0.313080, -0.634864, 0.706349}, + {-0.427279, -0.866437, 0.258302}, + {-0.427279, -0.866437, -0.258302}, + {-0.313080, -0.634864, -0.706349}, + {-0.114702, -0.232592, -0.965787}, + {0.114702, 0.232592, -0.965787}, + {0.313080, 0.634864, -0.706349}, + {0.427279, 0.866437, -0.258301}, + {0.310531, 0.914796, 0.258301}, + {0.227536, 0.670298, 0.706349}, + {0.083361, 0.245574, 0.965787}, + {-0.083361, -0.245574, 0.965787}, + {-0.227536, -0.670298, 0.706348}, + {-0.310531, -0.914796, 0.258301}, + {-0.310531, -0.914796, -0.258301}, + {-0.227536, -0.670298, -0.706348}, + {-0.083361, -0.245574, -0.965787}, + {0.083361, 0.245574, -0.965787}, + {0.227536, 0.670298, -0.706349}, + {0.310531, 0.914796, -0.258301}, + {0.188470, 0.947501, 0.258302}, + {0.138097, 0.694263, 0.706349}, + {0.050594, 0.254354, 0.965787}, + {-0.050594, -0.254354, 0.965787}, + {-0.138097, -0.694262, 0.706349}, + {-0.188470, -0.947502, 0.258302}, + {-0.188470, -0.947502, -0.258302}, + {-0.138097, -0.694262, -0.706349}, + {-0.050594, -0.254354, -0.965787}, + {0.050594, 0.254354, -0.965787}, + {0.138097, 0.694263, -0.706349}, + {0.188470, 0.947501, -0.258302}, + {0.063184, 0.963996, 0.258301}, + {0.046296, 0.706348, 0.706349}, + {0.016961, 0.258782, 0.965787}, + {-0.016962, -0.258782, 0.965787}, + {-0.046297, -0.706348, 0.706349}, + {-0.063184, -0.963996, 0.258301}, + {-0.063184, -0.963996, -0.258301}, + {-0.046297, -0.706348, -0.706349}, + {-0.016962, -0.258782, -0.965787}, + {0.016961, 0.258782, -0.965787}, + {0.046296, 0.706348, -0.706349}, + {0.063184, 0.963996, -0.258301}, + {-0.063184, 0.963996, 0.258302}, + {-0.046297, 0.706349, 0.706348}, + {-0.016962, 0.258782, 0.965787}, + {0.016961, -0.258782, 0.965787}, + {0.046297, -0.706348, 0.706349}, + {0.063184, -0.963996, 0.258301}, + {0.063184, -0.963996, -0.258301}, + {0.046297, -0.706348, -0.706349}, + {0.016961, -0.258782, -0.965787}, + {-0.016962, 0.258782, -0.965787}, + {-0.046297, 0.706349, -0.706348}, + {-0.063184, 0.963996, -0.258302}, + {-0.188469, 0.947502, 0.258302}, + {-0.138097, 0.694262, 0.706349}, + {-0.050594, 0.254354, 0.965787}, + {0.050594, -0.254354, 0.965787}, + {0.138097, -0.694263, 0.706349}, + {0.188470, -0.947502, 0.258301}, + {0.188470, -0.947502, -0.258301}, + {0.138097, -0.694263, -0.706349}, + {0.050594, -0.254354, -0.965787}, + {-0.050594, 0.254354, -0.965787}, + {-0.138097, 0.694262, -0.706349}, + {-0.188469, 0.947502, -0.258302}, + {-0.310531, 0.914795, 0.258302}, + {-0.227535, 0.670298, 0.706349}, + {-0.083361, 0.245574, 0.965787}, + {0.083361, -0.245574, 0.965787}, + {0.227536, -0.670298, 0.706349}, + {0.310531, -0.914796, 0.258301}, + {0.310531, -0.914796, -0.258301}, + {0.227536, -0.670298, -0.706349}, + {0.083361, -0.245574, -0.965787}, + {-0.083361, 0.245574, -0.965787}, + {-0.227535, 0.670298, -0.706349}, + {-0.310531, 0.914795, -0.258302}, + {-0.427279, 0.866437, 0.258303}, + {-0.313081, 0.634865, 0.706348}, + {-0.114702, 0.232592, 0.965787}, + {0.114702, -0.232593, 0.965787}, + {0.313080, -0.634864, 0.706349}, + {0.427279, -0.866437, 0.258302}, + {0.427279, -0.866437, -0.258302}, + {0.313080, -0.634864, -0.706349}, + {0.114702, -0.232592, -0.965787}, + {-0.114702, 0.232592, -0.965787}, + {-0.313080, 0.634865, -0.706348}, + {-0.427279, 0.866437, -0.258303}, + {-0.536717, 0.803253, 0.258302}, + {-0.393268, 0.588567, 0.706349}, + {-0.144080, 0.215631, 0.965787}, + {0.144080, -0.215631, 0.965787}, + {0.393268, -0.588567, 0.706349}, + {0.536717, -0.803253, 0.258302}, + {0.536717, -0.803253, -0.258302}, + {0.393268, -0.588567, -0.706349}, + {0.144080, -0.215631, -0.965787}, + {-0.144080, 0.215631, -0.965787}, + {-0.393268, 0.588567, -0.706349}, + {-0.536717, 0.803253, -0.258302}, + {-0.636970, 0.726326, 0.258302}, + {-0.466727, 0.532201, 0.706349}, + {-0.170993, 0.194980, 0.965787}, + {0.170993, -0.194980, 0.965787}, + {0.466727, -0.532200, 0.706349}, + {0.636971, -0.726325, 0.258301}, + {0.636971, -0.726325, -0.258302}, + {0.466727, -0.532200, -0.706349}, + {0.170993, -0.194980, -0.965787}, + {-0.170993, 0.194980, -0.965787}, + {-0.466727, 0.532201, -0.706349}, + {-0.636970, 0.726326, -0.258302}, + {-0.726326, 0.636970, 0.258301}, + {-0.532200, 0.466727, 0.706349}, + {-0.194980, 0.170993, 0.965787}, + {0.194980, -0.170993, 0.965787}, + {0.532200, -0.466727, 0.706349}, + {0.726325, -0.636971, 0.258302}, + {0.726325, -0.636971, -0.258302}, + {0.532200, -0.466727, -0.706349}, + {0.194980, -0.170993, -0.965787}, + {-0.194980, 0.170993, -0.965787}, + {-0.532201, 0.466727, -0.706349}, + {-0.726326, 0.636970, -0.258301}, + {-0.803253, 0.536717, 0.258302}, + {-0.588567, 0.393269, 0.706349}, + {-0.215631, 0.144080, 0.965787}, + {0.215631, -0.144080, 0.965787}, + {0.588568, -0.393268, 0.706348}, + {0.803253, -0.536716, 0.258302}, + {0.803253, -0.536716, -0.258302}, + {0.588568, -0.393268, -0.706349}, + {0.215631, -0.144080, -0.965787}, + {-0.215631, 0.144080, -0.965787}, + {-0.588567, 0.393269, -0.706349}, + {-0.803253, 0.536717, -0.258302}, + {-0.866437, 0.427279, 0.258302}, + {-0.634864, 0.313081, 0.706348}, + {-0.232592, 0.114702, 0.965787}, + {0.232592, -0.114702, 0.965787}, + {0.634864, -0.313080, 0.706349}, + {0.866437, -0.427280, 0.258302}, + {0.866437, -0.427280, -0.258302}, + {0.634864, -0.313080, -0.706349}, + {0.232592, -0.114702, -0.965787}, + {-0.232592, 0.114702, -0.965787}, + {-0.634864, 0.313081, -0.706348}, + {-0.866437, 0.427279, -0.258302}, + {-0.914795, 0.310532, 0.258302}, + {-0.670298, 0.227536, 0.706349}, + {-0.245574, 0.083361, 0.965787}, + {0.245574, -0.083361, 0.965787}, + {0.670298, -0.227536, 0.706349}, + {0.914795, -0.310532, 0.258302}, + {0.914795, -0.310532, -0.258302}, + {0.670298, -0.227536, -0.706349}, + {0.245574, -0.083361, -0.965787}, + {-0.245574, 0.083361, -0.965787}, + {-0.670298, 0.227536, -0.706349}, + {-0.914795, 0.310532, -0.258302}, + {-0.947502, 0.188469, 0.258302}, + {-0.694262, 0.138097, 0.706349}, + {-0.254354, 0.050594, 0.965787}, + {0.254354, -0.050594, 0.965787}, + {0.694263, -0.138097, 0.706349}, + {0.947502, -0.188469, 0.258302}, + {0.947502, -0.188469, -0.258302}, + {0.694263, -0.138097, -0.706349}, + {0.254354, -0.050594, -0.965787}, + {-0.254354, 0.050594, -0.965787}, + {-0.694263, 0.138097, -0.706349}, + {-0.947502, 0.188469, -0.258302}, + {-0.963996, 0.063184, 0.258302}, + {-0.706348, 0.046297, 0.706349}, + {-0.258782, 0.016962, 0.965787}, + {0.258782, -0.016962, 0.965787}, + {0.706349, -0.046297, 0.706349}, + {0.963996, -0.063184, 0.258302}, + {0.963996, -0.063184, -0.258302}, + {0.706348, -0.046297, -0.706349}, + {0.258782, -0.016962, -0.965787}, + {-0.258782, 0.016962, -0.965787}, + {-0.706348, 0.046297, -0.706349}, + {-0.963996, 0.063184, -0.258302}, + {-0.963996, -0.063184, 0.258302}, + {-0.706349, -0.046297, 0.706349}, + {-0.258782, -0.016962, 0.965787}, + {0.258782, 0.016962, 0.965787}, + {0.706348, 0.046297, 0.706349}, + {0.963996, 0.063184, 0.258302}, + {0.963996, 0.063184, -0.258302}, + {0.706348, 0.046297, -0.706349}, + {0.258782, 0.016962, -0.965787}, + {-0.258782, -0.016962, -0.965787}, + {-0.706348, -0.046297, -0.706349}, + {-0.963996, -0.063184, -0.258302}, + {-0.947502, -0.188469, 0.258302}, + {-0.694263, -0.138097, 0.706349}, + {-0.254354, -0.050594, 0.965787}, + {0.254354, 0.050594, 0.965787}, + {0.694263, 0.138097, 0.706349}, + {0.947502, 0.188469, 0.258302}, + {0.947502, 0.188469, -0.258302}, + {0.694263, 0.138097, -0.706349}, + {0.254354, 0.050594, -0.965787}, + {-0.254354, -0.050594, -0.965787}, + {-0.694263, -0.138097, -0.706349}, + {-0.947502, -0.188469, -0.258302}, + {-0.914795, -0.310531, 0.258302}, + {-0.670298, -0.227535, 0.706349}, + {-0.245574, -0.083361, 0.965787}, + {0.245574, 0.083361, 0.965787}, + {0.670298, 0.227536, 0.706349}, + {0.914795, 0.310532, 0.258302}, + {0.914795, 0.310532, -0.258302}, + {0.670298, 0.227536, -0.706349}, + {0.245574, 0.083361, -0.965787}, + {-0.245574, -0.083361, -0.965787}, + {-0.670298, -0.227535, -0.706349}, + {-0.914795, -0.310531, -0.258302}, + {-0.866437, -0.427279, 0.258302}, + {-0.634864, -0.313080, 0.706349}, + {-0.232592, -0.114702, 0.965787}, + {0.232592, 0.114702, 0.965787}, + {0.634864, 0.313080, 0.706349}, + {0.866437, 0.427279, 0.258301}, + {0.866437, 0.427279, -0.258301}, + {0.634864, 0.313080, -0.706349}, + {0.232592, 0.114702, -0.965787}, + {-0.232592, -0.114702, -0.965787}, + {-0.634864, -0.313080, -0.706349}, + {-0.866437, -0.427279, -0.258302}, + {-0.803253, -0.536717, 0.258302}, + {-0.588567, -0.393269, 0.706348}, + {-0.215631, -0.144080, 0.965787}, + {0.215631, 0.144080, 0.965787}, + {0.588568, 0.393268, 0.706349}, + {0.803253, 0.536717, 0.258302}, + {0.803253, 0.536717, -0.258302}, + {0.588568, 0.393268, -0.706349}, + {0.215631, 0.144080, -0.965787}, + {-0.215631, -0.144080, -0.965787}, + {-0.588567, -0.393269, -0.706348}, + {-0.803253, -0.536717, -0.258302}, + {-0.726326, -0.636970, 0.258301}, + {-0.532201, -0.466727, 0.706349}, + {-0.194980, -0.170993, 0.965787}, + {0.194980, 0.170993, 0.965787}, + {0.532200, 0.466727, 0.706349}, + {0.726325, 0.636971, 0.258301}, + {0.726325, 0.636971, -0.258302}, + {0.532200, 0.466727, -0.706349}, + {0.194980, 0.170993, -0.965787}, + {-0.194980, -0.170993, -0.965787}, + {-0.532201, -0.466727, -0.706349}, + {-0.726326, -0.636970, -0.258301}, + {-0.636971, -0.726326, 0.258301}, + {-0.466728, -0.532200, 0.706349}, + {-0.170993, -0.194980, 0.965787}, + {0.170993, 0.194980, 0.965787}, + {0.466728, 0.532200, 0.706349}, + {0.636971, 0.726325, 0.258302}, + {0.636971, 0.726325, -0.258302}, + {0.466728, 0.532200, -0.706348}, + {0.170993, 0.194980, -0.965787}, + {-0.170993, -0.194980, -0.965787}, + {-0.466727, -0.532200, -0.706349}, + {-0.636971, -0.726326, -0.258301}, + {-0.536717, -0.803253, 0.258302}, + {-0.393268, -0.588567, 0.706349}, + {-0.144080, -0.215631, 0.965787}, + {0.144080, 0.215631, 0.965787}, + {0.393268, 0.588567, 0.706349}, + {0.536717, 0.803253, 0.258302}, + {0.536717, 0.803253, -0.258302}, + {0.393268, 0.588567, -0.706349}, + {0.144080, 0.215631, -0.965787}, + {-0.144080, -0.215631, -0.965787}, + {-0.393268, -0.588567, -0.706349}, + {-0.536717, -0.803253, -0.258302}, + {-0.427279, -0.866437, 0.258303}, + {-0.313081, -0.634865, 0.706348}, + {-0.114702, -0.232592, 0.965787}, + {0.114702, 0.232592, 0.965787}, + {0.313080, 0.634864, 0.706349}, + {0.427279, 0.866437, 0.258302}, + {0.427279, 0.866437, -0.258302}, + {0.313080, 0.634864, -0.706349}, + {0.114702, 0.232592, -0.965787}, + {-0.114702, -0.232592, -0.965787}, + {-0.313081, -0.634865, -0.706348}, + {-0.427279, -0.866437, -0.258303}, + {-0.310531, -0.914795, 0.258301}, + {-0.227536, -0.670298, 0.706348}, + {-0.083361, -0.245574, 0.965787}, + {0.083361, 0.245574, 0.965787}, + {0.227536, 0.670298, 0.706348}, + {0.310531, 0.914795, 0.258302}, + {0.310531, 0.914795, -0.258302}, + {0.227536, 0.670298, -0.706348}, + {0.083361, 0.245574, -0.965787}, + {-0.083361, -0.245574, -0.965787}, + {-0.227536, -0.670298, -0.706348}, + {-0.310531, -0.914795, -0.258301}, + {-0.188470, -0.947501, 0.258303}, + {-0.138098, -0.694263, 0.706348}, + {-0.050594, -0.254354, 0.965787}, + {0.050594, 0.254354, 0.965787}, + {0.138098, 0.694263, 0.706349}, + {0.188470, 0.947501, 0.258302}, + {0.188470, 0.947501, -0.258302}, + {0.138098, 0.694263, -0.706349}, + {0.050594, 0.254354, -0.965787}, + {-0.050594, -0.254354, -0.965787}, + {-0.138098, -0.694263, -0.706348}, + {-0.188470, -0.947501, -0.258303}, + {-0.063184, -0.963996, 0.258301}, + {-0.046297, -0.706349, 0.706348}, + {-0.016961, -0.258782, 0.965787}, + {0.016962, 0.258782, 0.965787}, + {0.046297, 0.706349, 0.706348}, + {0.063184, 0.963996, 0.258302}, + {0.063184, 0.963996, -0.258302}, + {0.046297, 0.706349, -0.706348}, + {0.016962, 0.258782, -0.965787}, + {-0.016961, -0.258782, -0.965787}, + {-0.046297, -0.706349, -0.706348}, + {-0.063184, -0.963996, -0.258301}, + {0.063184, -0.963996, 0.258301}, + {0.046296, -0.706348, 0.706349}, + {0.016961, -0.258782, 0.965787}, + {-0.016962, 0.258782, 0.965787}, + {-0.046297, 0.706348, 0.706349}, + {-0.063184, 0.963996, 0.258301}, + {-0.063184, 0.963996, -0.258301}, + {-0.046297, 0.706348, -0.706349}, + {-0.016962, 0.258782, -0.965787}, + {0.016961, -0.258782, -0.965787}, + {0.046296, -0.706348, -0.706349}, + {0.063184, -0.963996, -0.258301}, + {0.188469, -0.947502, 0.258302}, + {0.138097, -0.694262, 0.706349}, + {0.050594, -0.254354, 0.965787}, + {-0.050594, 0.254354, 0.965787}, + {-0.138097, 0.694263, 0.706348}, + {-0.188469, 0.947502, 0.258302}, + {-0.188469, 0.947502, -0.258302}, + {-0.138097, 0.694263, -0.706348}, + {-0.050594, 0.254354, -0.965787}, + {0.050594, -0.254354, -0.965787}, + {0.138097, -0.694262, -0.706349}, + {0.188469, -0.947502, -0.258302}, + {0.310531, -0.914795, 0.258301}, + {0.227535, -0.670298, 0.706349}, + {0.083361, -0.245574, 0.965787}, + {-0.083361, 0.245574, 0.965787}, + {-0.227535, 0.670298, 0.706349}, + {-0.310531, 0.914796, 0.258301}, + {-0.310531, 0.914796, -0.258301}, + {-0.227535, 0.670298, -0.706349}, + {-0.083361, 0.245574, -0.965787}, + {0.083361, -0.245574, -0.965787}, + {0.227535, -0.670298, -0.706349}, + {0.310531, -0.914795, -0.258301}, + {0.427279, -0.866437, 0.258301}, + {0.313080, -0.634864, 0.706349}, + {0.114702, -0.232592, 0.965787}, + {-0.114702, 0.232592, 0.965787}, + {-0.313080, 0.634864, 0.706349}, + {-0.427279, 0.866437, 0.258302}, + {-0.427279, 0.866437, -0.258302}, + {-0.313080, 0.634864, -0.706349}, + {-0.114702, 0.232592, -0.965787}, + {0.114702, -0.232592, -0.965787}, + {0.313080, -0.634864, -0.706348}, + {0.427279, -0.866437, -0.258301}, + {0.536716, -0.803253, 0.258302}, + {0.393268, -0.588567, 0.706349}, + {0.144080, -0.215631, 0.965787}, + {-0.144080, 0.215631, 0.965787}, + {-0.393268, 0.588567, 0.706349}, + {-0.536717, 0.803253, 0.258301}, + {-0.536717, 0.803253, -0.258301}, + {-0.393268, 0.588567, -0.706349}, + {-0.144080, 0.215631, -0.965787}, + {0.144080, -0.215631, -0.965787}, + {0.393268, -0.588567, -0.706349}, + {0.536716, -0.803253, -0.258302}, + {0.636970, -0.726326, 0.258302}, + {0.466727, -0.532201, 0.706349}, + {0.170993, -0.194980, 0.965787}, + {-0.170993, 0.194980, 0.965787}, + {-0.466727, 0.532201, 0.706349}, + {-0.636970, 0.726326, 0.258302}, + {-0.636970, 0.726326, -0.258302}, + {-0.466727, 0.532201, -0.706349}, + {-0.170993, 0.194980, -0.965787}, + {0.170993, -0.194980, -0.965787}, + {0.466727, -0.532201, -0.706348}, + {0.636970, -0.726326, -0.258302}, + {0.726325, -0.636971, 0.258302}, + {0.532201, -0.466728, 0.706348}, + {0.194980, -0.170993, 0.965787}, + {-0.194980, 0.170993, 0.965787}, + {-0.532200, 0.466727, 0.706349}, + {-0.726326, 0.636970, 0.258302}, + {-0.726326, 0.636970, -0.258302}, + {-0.532200, 0.466727, -0.706349}, + {-0.194980, 0.170993, -0.965787}, + {0.194980, -0.170993, -0.965787}, + {0.532201, -0.466728, -0.706348}, + {0.726325, -0.636971, -0.258302}, + {0.803253, -0.536716, 0.258302}, + {0.588568, -0.393268, 0.706348}, + {0.215631, -0.144080, 0.965787}, + {-0.215631, 0.144080, 0.965787}, + {-0.588567, 0.393268, 0.706349}, + {-0.803253, 0.536716, 0.258302}, + {-0.803253, 0.536716, -0.258302}, + {-0.588568, 0.393268, -0.706349}, + {-0.215631, 0.144080, -0.965787}, + {0.215631, -0.144080, -0.965787}, + {0.588568, -0.393268, -0.706348}, + {0.803253, -0.536716, -0.258302}, + {0.866436, -0.427280, 0.258302}, + {0.634864, -0.313080, 0.706349}, + {0.232592, -0.114702, 0.965787}, + {-0.232592, 0.114702, 0.965787}, + {-0.634864, 0.313081, 0.706348}, + {-0.866436, 0.427280, 0.258302}, + {-0.866436, 0.427280, -0.258302}, + {-0.634864, 0.313081, -0.706348}, + {-0.232592, 0.114702, -0.965787}, + {0.232592, -0.114702, -0.965787}, + {0.634864, -0.313080, -0.706349}, + {0.866436, -0.427280, -0.258302}, + {0.914795, -0.310531, 0.258302}, + {0.670298, -0.227535, 0.706349}, + {0.245574, -0.083361, 0.965787}, + {-0.245574, 0.083361, 0.965787}, + {-0.670298, 0.227536, 0.706348}, + {-0.914795, 0.310531, 0.258302}, + {-0.914795, 0.310531, -0.258302}, + {-0.670298, 0.227536, -0.706349}, + {-0.245574, 0.083361, -0.965787}, + {0.245574, -0.083361, -0.965787}, + {0.670298, -0.227535, -0.706349}, + {0.914795, -0.310531, -0.258302}, + {0.947502, -0.188469, 0.258302}, + {0.694263, -0.138098, 0.706349}, + {0.254354, -0.050594, 0.965787}, + {-0.254354, 0.050594, 0.965787}, + {-0.694263, 0.138097, 0.706349}, + {-0.947502, 0.188470, 0.258302}, + {-0.947502, 0.188470, -0.258302}, + {-0.694263, 0.138097, -0.706349}, + {-0.254354, 0.050594, -0.965787}, + {0.254354, -0.050594, -0.965787}, + {0.694263, -0.138098, -0.706349}, + {0.947502, -0.188469, -0.258302}, + {0.963996, -0.063184, 0.258302}, + {0.706349, -0.046297, 0.706349}, + {0.258782, -0.016961, 0.965787}, + {-0.258782, 0.016961, 0.965787}, + {-0.706348, 0.046297, 0.706349}, + {-0.963996, 0.063184, 0.258302}, + {-0.963996, 0.063184, -0.258302}, + {-0.706348, 0.046297, -0.706349}, + {-0.258782, 0.016961, -0.965787}, + {0.258782, -0.016961, -0.965787}, + {0.706349, -0.046297, -0.706349}, + {0.963996, -0.063184, -0.258302}, +}; + +const polygon mesh_Torus_polygons[] = { + {0, 12, 13, 1, 0, 0}, + {1, 13, 14, 2, 0, 4}, + {2, 14, 15, 3, 0, 8}, + {3, 15, 16, 4, 0, 12}, + {4, 16, 17, 5, 0, 16}, + {5, 17, 18, 6, 0, 20}, + {6, 18, 19, 7, 0, 24}, + {7, 19, 20, 8, 0, 28}, + {8, 20, 21, 9, 0, 32}, + {9, 21, 22, 10, 0, 36}, + {10, 22, 23, 11, 0, 40}, + {11, 23, 12, 0, 0, 44}, + {12, 24, 25, 13, 0, 48}, + {13, 25, 26, 14, 0, 52}, + {14, 26, 27, 15, 0, 56}, + {15, 27, 28, 16, 0, 60}, + {16, 28, 29, 17, 0, 64}, + {17, 29, 30, 18, 0, 68}, + {18, 30, 31, 19, 0, 72}, + {19, 31, 32, 20, 0, 76}, + {20, 32, 33, 21, 0, 80}, + {21, 33, 34, 22, 0, 84}, + {22, 34, 35, 23, 0, 88}, + {23, 35, 24, 12, 0, 92}, + {24, 36, 37, 25, 0, 96}, + {25, 37, 38, 26, 0, 100}, + {26, 38, 39, 27, 0, 104}, + {27, 39, 40, 28, 0, 108}, + {28, 40, 41, 29, 0, 112}, + {29, 41, 42, 30, 0, 116}, + {30, 42, 43, 31, 0, 120}, + {31, 43, 44, 32, 0, 124}, + {32, 44, 45, 33, 0, 128}, + {33, 45, 46, 34, 0, 132}, + {34, 46, 47, 35, 0, 136}, + {35, 47, 36, 24, 0, 140}, + {36, 48, 49, 37, 0, 144}, + {37, 49, 50, 38, 0, 148}, + {38, 50, 51, 39, 0, 152}, + {39, 51, 52, 40, 0, 156}, + {40, 52, 53, 41, 0, 160}, + {41, 53, 54, 42, 0, 164}, + {42, 54, 55, 43, 0, 168}, + {43, 55, 56, 44, 0, 172}, + {44, 56, 57, 45, 0, 176}, + {45, 57, 58, 46, 0, 180}, + {46, 58, 59, 47, 0, 184}, + {47, 59, 48, 36, 0, 188}, + {48, 60, 61, 49, 0, 192}, + {49, 61, 62, 50, 0, 196}, + {50, 62, 63, 51, 0, 200}, + {51, 63, 64, 52, 0, 204}, + {52, 64, 65, 53, 0, 208}, + {53, 65, 66, 54, 0, 212}, + {54, 66, 67, 55, 0, 216}, + {55, 67, 68, 56, 0, 220}, + {56, 68, 69, 57, 0, 224}, + {57, 69, 70, 58, 0, 228}, + {58, 70, 71, 59, 0, 232}, + {59, 71, 60, 48, 0, 236}, + {60, 72, 73, 61, 0, 240}, + {61, 73, 74, 62, 0, 244}, + {62, 74, 75, 63, 0, 248}, + {63, 75, 76, 64, 0, 252}, + {64, 76, 77, 65, 0, 256}, + {65, 77, 78, 66, 0, 260}, + {66, 78, 79, 67, 0, 264}, + {67, 79, 80, 68, 0, 268}, + {68, 80, 81, 69, 0, 272}, + {69, 81, 82, 70, 0, 276}, + {70, 82, 83, 71, 0, 280}, + {71, 83, 72, 60, 0, 284}, + {72, 84, 85, 73, 0, 288}, + {73, 85, 86, 74, 0, 292}, + {74, 86, 87, 75, 0, 296}, + {75, 87, 88, 76, 0, 300}, + {76, 88, 89, 77, 0, 304}, + {77, 89, 90, 78, 0, 308}, + {78, 90, 91, 79, 0, 312}, + {79, 91, 92, 80, 0, 316}, + {80, 92, 93, 81, 0, 320}, + {81, 93, 94, 82, 0, 324}, + {82, 94, 95, 83, 0, 328}, + {83, 95, 84, 72, 0, 332}, + {84, 96, 97, 85, 0, 336}, + {85, 97, 98, 86, 0, 340}, + {86, 98, 99, 87, 0, 344}, + {87, 99, 100, 88, 0, 348}, + {88, 100, 101, 89, 0, 352}, + {89, 101, 102, 90, 0, 356}, + {90, 102, 103, 91, 0, 360}, + {91, 103, 104, 92, 0, 364}, + {92, 104, 105, 93, 0, 368}, + {93, 105, 106, 94, 0, 372}, + {94, 106, 107, 95, 0, 376}, + {95, 107, 96, 84, 0, 380}, + {96, 108, 109, 97, 0, 384}, + {97, 109, 110, 98, 0, 388}, + {98, 110, 111, 99, 0, 392}, + {99, 111, 112, 100, 0, 396}, + {100, 112, 113, 101, 0, 400}, + {101, 113, 114, 102, 0, 404}, + {102, 114, 115, 103, 0, 408}, + {103, 115, 116, 104, 0, 412}, + {104, 116, 117, 105, 0, 416}, + {105, 117, 118, 106, 0, 420}, + {106, 118, 119, 107, 0, 424}, + {107, 119, 108, 96, 0, 428}, + {108, 120, 121, 109, 0, 432}, + {109, 121, 122, 110, 0, 436}, + {110, 122, 123, 111, 0, 440}, + {111, 123, 124, 112, 0, 444}, + {112, 124, 125, 113, 0, 448}, + {113, 125, 126, 114, 0, 452}, + {114, 126, 127, 115, 0, 456}, + {115, 127, 128, 116, 0, 460}, + {116, 128, 129, 117, 0, 464}, + {117, 129, 130, 118, 0, 468}, + {118, 130, 131, 119, 0, 472}, + {119, 131, 120, 108, 0, 476}, + {120, 132, 133, 121, 0, 480}, + {121, 133, 134, 122, 0, 484}, + {122, 134, 135, 123, 0, 488}, + {123, 135, 136, 124, 0, 492}, + {124, 136, 137, 125, 0, 496}, + {125, 137, 138, 126, 0, 500}, + {126, 138, 139, 127, 0, 504}, + {127, 139, 140, 128, 0, 508}, + {128, 140, 141, 129, 0, 512}, + {129, 141, 142, 130, 0, 516}, + {130, 142, 143, 131, 0, 520}, + {131, 143, 132, 120, 0, 524}, + {132, 144, 145, 133, 0, 528}, + {133, 145, 146, 134, 0, 532}, + {134, 146, 147, 135, 0, 536}, + {135, 147, 148, 136, 0, 540}, + {136, 148, 149, 137, 0, 544}, + {137, 149, 150, 138, 0, 548}, + {138, 150, 151, 139, 0, 552}, + {139, 151, 152, 140, 0, 556}, + {140, 152, 153, 141, 0, 560}, + {141, 153, 154, 142, 0, 564}, + {142, 154, 155, 143, 0, 568}, + {143, 155, 144, 132, 0, 572}, + {144, 156, 157, 145, 0, 576}, + {145, 157, 158, 146, 0, 580}, + {146, 158, 159, 147, 0, 584}, + {147, 159, 160, 148, 0, 588}, + {148, 160, 161, 149, 0, 592}, + {149, 161, 162, 150, 0, 596}, + {150, 162, 163, 151, 0, 600}, + {151, 163, 164, 152, 0, 604}, + {152, 164, 165, 153, 0, 608}, + {153, 165, 166, 154, 0, 612}, + {154, 166, 167, 155, 0, 616}, + {155, 167, 156, 144, 0, 620}, + {156, 168, 169, 157, 0, 624}, + {157, 169, 170, 158, 0, 628}, + {158, 170, 171, 159, 0, 632}, + {159, 171, 172, 160, 0, 636}, + {160, 172, 173, 161, 0, 640}, + {161, 173, 174, 162, 0, 644}, + {162, 174, 175, 163, 0, 648}, + {163, 175, 176, 164, 0, 652}, + {164, 176, 177, 165, 0, 656}, + {165, 177, 178, 166, 0, 660}, + {166, 178, 179, 167, 0, 664}, + {167, 179, 168, 156, 0, 668}, + {168, 180, 181, 169, 0, 672}, + {169, 181, 182, 170, 0, 676}, + {170, 182, 183, 171, 0, 680}, + {171, 183, 184, 172, 0, 684}, + {172, 184, 185, 173, 0, 688}, + {173, 185, 186, 174, 0, 692}, + {174, 186, 187, 175, 0, 696}, + {175, 187, 188, 176, 0, 700}, + {176, 188, 189, 177, 0, 704}, + {177, 189, 190, 178, 0, 708}, + {178, 190, 191, 179, 0, 712}, + {179, 191, 180, 168, 0, 716}, + {180, 192, 193, 181, 0, 720}, + {181, 193, 194, 182, 0, 724}, + {182, 194, 195, 183, 0, 728}, + {183, 195, 196, 184, 0, 732}, + {184, 196, 197, 185, 0, 736}, + {185, 197, 198, 186, 0, 740}, + {186, 198, 199, 187, 0, 744}, + {187, 199, 200, 188, 0, 748}, + {188, 200, 201, 189, 0, 752}, + {189, 201, 202, 190, 0, 756}, + {190, 202, 203, 191, 0, 760}, + {191, 203, 192, 180, 0, 764}, + {192, 204, 205, 193, 0, 768}, + {193, 205, 206, 194, 0, 772}, + {194, 206, 207, 195, 0, 776}, + {195, 207, 208, 196, 0, 780}, + {196, 208, 209, 197, 0, 784}, + {197, 209, 210, 198, 0, 788}, + {198, 210, 211, 199, 0, 792}, + {199, 211, 212, 200, 0, 796}, + {200, 212, 213, 201, 0, 800}, + {201, 213, 214, 202, 0, 804}, + {202, 214, 215, 203, 0, 808}, + {203, 215, 204, 192, 0, 812}, + {204, 216, 217, 205, 0, 816}, + {205, 217, 218, 206, 0, 820}, + {206, 218, 219, 207, 0, 824}, + {207, 219, 220, 208, 0, 828}, + {208, 220, 221, 209, 0, 832}, + {209, 221, 222, 210, 0, 836}, + {210, 222, 223, 211, 0, 840}, + {211, 223, 224, 212, 0, 844}, + {212, 224, 225, 213, 0, 848}, + {213, 225, 226, 214, 0, 852}, + {214, 226, 227, 215, 0, 856}, + {215, 227, 216, 204, 0, 860}, + {216, 228, 229, 217, 0, 864}, + {217, 229, 230, 218, 0, 868}, + {218, 230, 231, 219, 0, 872}, + {219, 231, 232, 220, 0, 876}, + {220, 232, 233, 221, 0, 880}, + {221, 233, 234, 222, 0, 884}, + {222, 234, 235, 223, 0, 888}, + {223, 235, 236, 224, 0, 892}, + {224, 236, 237, 225, 0, 896}, + {225, 237, 238, 226, 0, 900}, + {226, 238, 239, 227, 0, 904}, + {227, 239, 228, 216, 0, 908}, + {228, 240, 241, 229, 0, 912}, + {229, 241, 242, 230, 0, 916}, + {230, 242, 243, 231, 0, 920}, + {231, 243, 244, 232, 0, 924}, + {232, 244, 245, 233, 0, 928}, + {233, 245, 246, 234, 0, 932}, + {234, 246, 247, 235, 0, 936}, + {235, 247, 248, 236, 0, 940}, + {236, 248, 249, 237, 0, 944}, + {237, 249, 250, 238, 0, 948}, + {238, 250, 251, 239, 0, 952}, + {239, 251, 240, 228, 0, 956}, + {240, 252, 253, 241, 0, 960}, + {241, 253, 254, 242, 0, 964}, + {242, 254, 255, 243, 0, 968}, + {243, 255, 256, 244, 0, 972}, + {244, 256, 257, 245, 0, 976}, + {245, 257, 258, 246, 0, 980}, + {246, 258, 259, 247, 0, 984}, + {247, 259, 260, 248, 0, 988}, + {248, 260, 261, 249, 0, 992}, + {249, 261, 262, 250, 0, 996}, + {250, 262, 263, 251, 0, 1000}, + {251, 263, 252, 240, 0, 1004}, + {252, 264, 265, 253, 0, 1008}, + {253, 265, 266, 254, 0, 1012}, + {254, 266, 267, 255, 0, 1016}, + {255, 267, 268, 256, 0, 1020}, + {256, 268, 269, 257, 0, 1024}, + {257, 269, 270, 258, 0, 1028}, + {258, 270, 271, 259, 0, 1032}, + {259, 271, 272, 260, 0, 1036}, + {260, 272, 273, 261, 0, 1040}, + {261, 273, 274, 262, 0, 1044}, + {262, 274, 275, 263, 0, 1048}, + {263, 275, 264, 252, 0, 1052}, + {264, 276, 277, 265, 0, 1056}, + {265, 277, 278, 266, 0, 1060}, + {266, 278, 279, 267, 0, 1064}, + {267, 279, 280, 268, 0, 1068}, + {268, 280, 281, 269, 0, 1072}, + {269, 281, 282, 270, 0, 1076}, + {270, 282, 283, 271, 0, 1080}, + {271, 283, 284, 272, 0, 1084}, + {272, 284, 285, 273, 0, 1088}, + {273, 285, 286, 274, 0, 1092}, + {274, 286, 287, 275, 0, 1096}, + {275, 287, 276, 264, 0, 1100}, + {276, 288, 289, 277, 0, 1104}, + {277, 289, 290, 278, 0, 1108}, + {278, 290, 291, 279, 0, 1112}, + {279, 291, 292, 280, 0, 1116}, + {280, 292, 293, 281, 0, 1120}, + {281, 293, 294, 282, 0, 1124}, + {282, 294, 295, 283, 0, 1128}, + {283, 295, 296, 284, 0, 1132}, + {284, 296, 297, 285, 0, 1136}, + {285, 297, 298, 286, 0, 1140}, + {286, 298, 299, 287, 0, 1144}, + {287, 299, 288, 276, 0, 1148}, + {288, 300, 301, 289, 0, 1152}, + {289, 301, 302, 290, 0, 1156}, + {290, 302, 303, 291, 0, 1160}, + {291, 303, 304, 292, 0, 1164}, + {292, 304, 305, 293, 0, 1168}, + {293, 305, 306, 294, 0, 1172}, + {294, 306, 307, 295, 0, 1176}, + {295, 307, 308, 296, 0, 1180}, + {296, 308, 309, 297, 0, 1184}, + {297, 309, 310, 298, 0, 1188}, + {298, 310, 311, 299, 0, 1192}, + {299, 311, 300, 288, 0, 1196}, + {300, 312, 313, 301, 0, 1200}, + {301, 313, 314, 302, 0, 1204}, + {302, 314, 315, 303, 0, 1208}, + {303, 315, 316, 304, 0, 1212}, + {304, 316, 317, 305, 0, 1216}, + {305, 317, 318, 306, 0, 1220}, + {306, 318, 319, 307, 0, 1224}, + {307, 319, 320, 308, 0, 1228}, + {308, 320, 321, 309, 0, 1232}, + {309, 321, 322, 310, 0, 1236}, + {310, 322, 323, 311, 0, 1240}, + {311, 323, 312, 300, 0, 1244}, + {312, 324, 325, 313, 0, 1248}, + {313, 325, 326, 314, 0, 1252}, + {314, 326, 327, 315, 0, 1256}, + {315, 327, 328, 316, 0, 1260}, + {316, 328, 329, 317, 0, 1264}, + {317, 329, 330, 318, 0, 1268}, + {318, 330, 331, 319, 0, 1272}, + {319, 331, 332, 320, 0, 1276}, + {320, 332, 333, 321, 0, 1280}, + {321, 333, 334, 322, 0, 1284}, + {322, 334, 335, 323, 0, 1288}, + {323, 335, 324, 312, 0, 1292}, + {324, 336, 337, 325, 0, 1296}, + {325, 337, 338, 326, 0, 1300}, + {326, 338, 339, 327, 0, 1304}, + {327, 339, 340, 328, 0, 1308}, + {328, 340, 341, 329, 0, 1312}, + {329, 341, 342, 330, 0, 1316}, + {330, 342, 343, 331, 0, 1320}, + {331, 343, 344, 332, 0, 1324}, + {332, 344, 345, 333, 0, 1328}, + {333, 345, 346, 334, 0, 1332}, + {334, 346, 347, 335, 0, 1336}, + {335, 347, 336, 324, 0, 1340}, + {336, 348, 349, 337, 0, 1344}, + {337, 349, 350, 338, 0, 1348}, + {338, 350, 351, 339, 0, 1352}, + {339, 351, 352, 340, 0, 1356}, + {340, 352, 353, 341, 0, 1360}, + {341, 353, 354, 342, 0, 1364}, + {342, 354, 355, 343, 0, 1368}, + {343, 355, 356, 344, 0, 1372}, + {344, 356, 357, 345, 0, 1376}, + {345, 357, 358, 346, 0, 1380}, + {346, 358, 359, 347, 0, 1384}, + {347, 359, 348, 336, 0, 1388}, + {348, 360, 361, 349, 0, 1392}, + {349, 361, 362, 350, 0, 1396}, + {350, 362, 363, 351, 0, 1400}, + {351, 363, 364, 352, 0, 1404}, + {352, 364, 365, 353, 0, 1408}, + {353, 365, 366, 354, 0, 1412}, + {354, 366, 367, 355, 0, 1416}, + {355, 367, 368, 356, 0, 1420}, + {356, 368, 369, 357, 0, 1424}, + {357, 369, 370, 358, 0, 1428}, + {358, 370, 371, 359, 0, 1432}, + {359, 371, 360, 348, 0, 1436}, + {360, 372, 373, 361, 0, 1440}, + {361, 373, 374, 362, 0, 1444}, + {362, 374, 375, 363, 0, 1448}, + {363, 375, 376, 364, 0, 1452}, + {364, 376, 377, 365, 0, 1456}, + {365, 377, 378, 366, 0, 1460}, + {366, 378, 379, 367, 0, 1464}, + {367, 379, 380, 368, 0, 1468}, + {368, 380, 381, 369, 0, 1472}, + {369, 381, 382, 370, 0, 1476}, + {370, 382, 383, 371, 0, 1480}, + {371, 383, 372, 360, 0, 1484}, + {372, 384, 385, 373, 0, 1488}, + {373, 385, 386, 374, 0, 1492}, + {374, 386, 387, 375, 0, 1496}, + {375, 387, 388, 376, 0, 1500}, + {376, 388, 389, 377, 0, 1504}, + {377, 389, 390, 378, 0, 1508}, + {378, 390, 391, 379, 0, 1512}, + {379, 391, 392, 380, 0, 1516}, + {380, 392, 393, 381, 0, 1520}, + {381, 393, 394, 382, 0, 1524}, + {382, 394, 395, 383, 0, 1528}, + {383, 395, 384, 372, 0, 1532}, + {384, 396, 397, 385, 0, 1536}, + {385, 397, 398, 386, 0, 1540}, + {386, 398, 399, 387, 0, 1544}, + {387, 399, 400, 388, 0, 1548}, + {388, 400, 401, 389, 0, 1552}, + {389, 401, 402, 390, 0, 1556}, + {390, 402, 403, 391, 0, 1560}, + {391, 403, 404, 392, 0, 1564}, + {392, 404, 405, 393, 0, 1568}, + {393, 405, 406, 394, 0, 1572}, + {394, 406, 407, 395, 0, 1576}, + {395, 407, 396, 384, 0, 1580}, + {396, 408, 409, 397, 0, 1584}, + {397, 409, 410, 398, 0, 1588}, + {398, 410, 411, 399, 0, 1592}, + {399, 411, 412, 400, 0, 1596}, + {400, 412, 413, 401, 0, 1600}, + {401, 413, 414, 402, 0, 1604}, + {402, 414, 415, 403, 0, 1608}, + {403, 415, 416, 404, 0, 1612}, + {404, 416, 417, 405, 0, 1616}, + {405, 417, 418, 406, 0, 1620}, + {406, 418, 419, 407, 0, 1624}, + {407, 419, 408, 396, 0, 1628}, + {408, 420, 421, 409, 0, 1632}, + {409, 421, 422, 410, 0, 1636}, + {410, 422, 423, 411, 0, 1640}, + {411, 423, 424, 412, 0, 1644}, + {412, 424, 425, 413, 0, 1648}, + {413, 425, 426, 414, 0, 1652}, + {414, 426, 427, 415, 0, 1656}, + {415, 427, 428, 416, 0, 1660}, + {416, 428, 429, 417, 0, 1664}, + {417, 429, 430, 418, 0, 1668}, + {418, 430, 431, 419, 0, 1672}, + {419, 431, 420, 408, 0, 1676}, + {420, 432, 433, 421, 0, 1680}, + {421, 433, 434, 422, 0, 1684}, + {422, 434, 435, 423, 0, 1688}, + {423, 435, 436, 424, 0, 1692}, + {424, 436, 437, 425, 0, 1696}, + {425, 437, 438, 426, 0, 1700}, + {426, 438, 439, 427, 0, 1704}, + {427, 439, 440, 428, 0, 1708}, + {428, 440, 441, 429, 0, 1712}, + {429, 441, 442, 430, 0, 1716}, + {430, 442, 443, 431, 0, 1720}, + {431, 443, 432, 420, 0, 1724}, + {432, 444, 445, 433, 0, 1728}, + {433, 445, 446, 434, 0, 1732}, + {434, 446, 447, 435, 0, 1736}, + {435, 447, 448, 436, 0, 1740}, + {436, 448, 449, 437, 0, 1744}, + {437, 449, 450, 438, 0, 1748}, + {438, 450, 451, 439, 0, 1752}, + {439, 451, 452, 440, 0, 1756}, + {440, 452, 453, 441, 0, 1760}, + {441, 453, 454, 442, 0, 1764}, + {442, 454, 455, 443, 0, 1768}, + {443, 455, 444, 432, 0, 1772}, + {444, 456, 457, 445, 0, 1776}, + {445, 457, 458, 446, 0, 1780}, + {446, 458, 459, 447, 0, 1784}, + {447, 459, 460, 448, 0, 1788}, + {448, 460, 461, 449, 0, 1792}, + {449, 461, 462, 450, 0, 1796}, + {450, 462, 463, 451, 0, 1800}, + {451, 463, 464, 452, 0, 1804}, + {452, 464, 465, 453, 0, 1808}, + {453, 465, 466, 454, 0, 1812}, + {454, 466, 467, 455, 0, 1816}, + {455, 467, 456, 444, 0, 1820}, + {456, 468, 469, 457, 0, 1824}, + {457, 469, 470, 458, 0, 1828}, + {458, 470, 471, 459, 0, 1832}, + {459, 471, 472, 460, 0, 1836}, + {460, 472, 473, 461, 0, 1840}, + {461, 473, 474, 462, 0, 1844}, + {462, 474, 475, 463, 0, 1848}, + {463, 475, 476, 464, 0, 1852}, + {464, 476, 477, 465, 0, 1856}, + {465, 477, 478, 466, 0, 1860}, + {466, 478, 479, 467, 0, 1864}, + {467, 479, 468, 456, 0, 1868}, + {468, 480, 481, 469, 0, 1872}, + {469, 481, 482, 470, 0, 1876}, + {470, 482, 483, 471, 0, 1880}, + {471, 483, 484, 472, 0, 1884}, + {472, 484, 485, 473, 0, 1888}, + {473, 485, 486, 474, 0, 1892}, + {474, 486, 487, 475, 0, 1896}, + {475, 487, 488, 476, 0, 1900}, + {476, 488, 489, 477, 0, 1904}, + {477, 489, 490, 478, 0, 1908}, + {478, 490, 491, 479, 0, 1912}, + {479, 491, 480, 468, 0, 1916}, + {480, 492, 493, 481, 0, 1920}, + {481, 493, 494, 482, 0, 1924}, + {482, 494, 495, 483, 0, 1928}, + {483, 495, 496, 484, 0, 1932}, + {484, 496, 497, 485, 0, 1936}, + {485, 497, 498, 486, 0, 1940}, + {486, 498, 499, 487, 0, 1944}, + {487, 499, 500, 488, 0, 1948}, + {488, 500, 501, 489, 0, 1952}, + {489, 501, 502, 490, 0, 1956}, + {490, 502, 503, 491, 0, 1960}, + {491, 503, 492, 480, 0, 1964}, + {492, 504, 505, 493, 0, 1968}, + {493, 505, 506, 494, 0, 1972}, + {494, 506, 507, 495, 0, 1976}, + {495, 507, 508, 496, 0, 1980}, + {496, 508, 509, 497, 0, 1984}, + {497, 509, 510, 498, 0, 1988}, + {498, 510, 511, 499, 0, 1992}, + {499, 511, 512, 500, 0, 1996}, + {500, 512, 513, 501, 0, 2000}, + {501, 513, 514, 502, 0, 2004}, + {502, 514, 515, 503, 0, 2008}, + {503, 515, 504, 492, 0, 2012}, + {504, 516, 517, 505, 0, 2016}, + {505, 517, 518, 506, 0, 2020}, + {506, 518, 519, 507, 0, 2024}, + {507, 519, 520, 508, 0, 2028}, + {508, 520, 521, 509, 0, 2032}, + {509, 521, 522, 510, 0, 2036}, + {510, 522, 523, 511, 0, 2040}, + {511, 523, 524, 512, 0, 2044}, + {512, 524, 525, 513, 0, 2048}, + {513, 525, 526, 514, 0, 2052}, + {514, 526, 527, 515, 0, 2056}, + {515, 527, 516, 504, 0, 2060}, + {516, 528, 529, 517, 0, 2064}, + {517, 529, 530, 518, 0, 2068}, + {518, 530, 531, 519, 0, 2072}, + {519, 531, 532, 520, 0, 2076}, + {520, 532, 533, 521, 0, 2080}, + {521, 533, 534, 522, 0, 2084}, + {522, 534, 535, 523, 0, 2088}, + {523, 535, 536, 524, 0, 2092}, + {524, 536, 537, 525, 0, 2096}, + {525, 537, 538, 526, 0, 2100}, + {526, 538, 539, 527, 0, 2104}, + {527, 539, 528, 516, 0, 2108}, + {528, 540, 541, 529, 0, 2112}, + {529, 541, 542, 530, 0, 2116}, + {530, 542, 543, 531, 0, 2120}, + {531, 543, 544, 532, 0, 2124}, + {532, 544, 545, 533, 0, 2128}, + {533, 545, 546, 534, 0, 2132}, + {534, 546, 547, 535, 0, 2136}, + {535, 547, 548, 536, 0, 2140}, + {536, 548, 549, 537, 0, 2144}, + {537, 549, 550, 538, 0, 2148}, + {538, 550, 551, 539, 0, 2152}, + {539, 551, 540, 528, 0, 2156}, + {540, 552, 553, 541, 0, 2160}, + {541, 553, 554, 542, 0, 2164}, + {542, 554, 555, 543, 0, 2168}, + {543, 555, 556, 544, 0, 2172}, + {544, 556, 557, 545, 0, 2176}, + {545, 557, 558, 546, 0, 2180}, + {546, 558, 559, 547, 0, 2184}, + {547, 559, 560, 548, 0, 2188}, + {548, 560, 561, 549, 0, 2192}, + {549, 561, 562, 550, 0, 2196}, + {550, 562, 563, 551, 0, 2200}, + {551, 563, 552, 540, 0, 2204}, + {552, 564, 565, 553, 0, 2208}, + {553, 565, 566, 554, 0, 2212}, + {554, 566, 567, 555, 0, 2216}, + {555, 567, 568, 556, 0, 2220}, + {556, 568, 569, 557, 0, 2224}, + {557, 569, 570, 558, 0, 2228}, + {558, 570, 571, 559, 0, 2232}, + {559, 571, 572, 560, 0, 2236}, + {560, 572, 573, 561, 0, 2240}, + {561, 573, 574, 562, 0, 2244}, + {562, 574, 575, 563, 0, 2248}, + {563, 575, 564, 552, 0, 2252}, + {564, 0, 1, 565, 0, 2256}, + {565, 1, 2, 566, 0, 2260}, + {566, 2, 3, 567, 0, 2264}, + {567, 3, 4, 568, 0, 2268}, + {568, 4, 5, 569, 0, 2272}, + {569, 5, 6, 570, 0, 2276}, + {570, 6, 7, 571, 0, 2280}, + {571, 7, 8, 572, 0, 2284}, + {572, 8, 9, 573, 0, 2288}, + {573, 9, 10, 574, 0, 2292}, + {574, 10, 11, 575, 0, 2296}, + {575, 11, 0, 564, 0, 2300}, +}; + +const edge_polygon mesh_Torus_edge_polygons[] = { + {{0, 12}, {0, 11}}, + {{12, 13}, {0, 12}}, + {{1, 13}, {0, 1}}, + {{0, 1}, {0, 564}}, + {{13, 14}, {1, 13}}, + {{2, 14}, {1, 2}}, + {{1, 2}, {1, 565}}, + {{14, 15}, {2, 14}}, + {{3, 15}, {2, 3}}, + {{2, 3}, {2, 566}}, + {{15, 16}, {3, 15}}, + {{4, 16}, {3, 4}}, + {{3, 4}, {3, 567}}, + {{16, 17}, {4, 16}}, + {{5, 17}, {4, 5}}, + {{4, 5}, {4, 568}}, + {{17, 18}, {5, 17}}, + {{6, 18}, {5, 6}}, + {{5, 6}, {5, 569}}, + {{18, 19}, {6, 18}}, + {{7, 19}, {6, 7}}, + {{6, 7}, {6, 570}}, + {{19, 20}, {7, 19}}, + {{8, 20}, {7, 8}}, + {{7, 8}, {7, 571}}, + {{20, 21}, {8, 20}}, + {{9, 21}, {8, 9}}, + {{8, 9}, {8, 572}}, + {{21, 22}, {9, 21}}, + {{10, 22}, {9, 10}}, + {{9, 10}, {9, 573}}, + {{22, 23}, {10, 22}}, + {{11, 23}, {10, 11}}, + {{10, 11}, {10, 574}}, + {{12, 23}, {11, 23}}, + {{0, 11}, {11, 575}}, + {{12, 24}, {12, 23}}, + {{24, 25}, {12, 24}}, + {{13, 25}, {12, 13}}, + {{25, 26}, {13, 25}}, + {{14, 26}, {13, 14}}, + {{26, 27}, {14, 26}}, + {{15, 27}, {14, 15}}, + {{27, 28}, {15, 27}}, + {{16, 28}, {15, 16}}, + {{28, 29}, {16, 28}}, + {{17, 29}, {16, 17}}, + {{29, 30}, {17, 29}}, + {{18, 30}, {17, 18}}, + {{30, 31}, {18, 30}}, + {{19, 31}, {18, 19}}, + {{31, 32}, {19, 31}}, + {{20, 32}, {19, 20}}, + {{32, 33}, {20, 32}}, + {{21, 33}, {20, 21}}, + {{33, 34}, {21, 33}}, + {{22, 34}, {21, 22}}, + {{34, 35}, {22, 34}}, + {{23, 35}, {22, 23}}, + {{24, 35}, {23, 35}}, + {{24, 36}, {24, 35}}, + {{36, 37}, {24, 36}}, + {{25, 37}, {24, 25}}, + {{37, 38}, {25, 37}}, + {{26, 38}, {25, 26}}, + {{38, 39}, {26, 38}}, + {{27, 39}, {26, 27}}, + {{39, 40}, {27, 39}}, + {{28, 40}, {27, 28}}, + {{40, 41}, {28, 40}}, + {{29, 41}, {28, 29}}, + {{41, 42}, {29, 41}}, + {{30, 42}, {29, 30}}, + {{42, 43}, {30, 42}}, + {{31, 43}, {30, 31}}, + {{43, 44}, {31, 43}}, + {{32, 44}, {31, 32}}, + {{44, 45}, {32, 44}}, + {{33, 45}, {32, 33}}, + {{45, 46}, {33, 45}}, + {{34, 46}, {33, 34}}, + {{46, 47}, {34, 46}}, + {{35, 47}, {34, 35}}, + {{36, 47}, {35, 47}}, + {{36, 48}, {36, 47}}, + {{48, 49}, {36, 48}}, + {{37, 49}, {36, 37}}, + {{49, 50}, {37, 49}}, + {{38, 50}, {37, 38}}, + {{50, 51}, {38, 50}}, + {{39, 51}, {38, 39}}, + {{51, 52}, {39, 51}}, + {{40, 52}, {39, 40}}, + {{52, 53}, {40, 52}}, + {{41, 53}, {40, 41}}, + {{53, 54}, {41, 53}}, + {{42, 54}, {41, 42}}, + {{54, 55}, {42, 54}}, + {{43, 55}, {42, 43}}, + {{55, 56}, {43, 55}}, + {{44, 56}, {43, 44}}, + {{56, 57}, {44, 56}}, + {{45, 57}, {44, 45}}, + {{57, 58}, {45, 57}}, + {{46, 58}, {45, 46}}, + {{58, 59}, {46, 58}}, + {{47, 59}, {46, 47}}, + {{48, 59}, {47, 59}}, + {{48, 60}, {48, 59}}, + {{60, 61}, {48, 60}}, + {{49, 61}, {48, 49}}, + {{61, 62}, {49, 61}}, + {{50, 62}, {49, 50}}, + {{62, 63}, {50, 62}}, + {{51, 63}, {50, 51}}, + {{63, 64}, {51, 63}}, + {{52, 64}, {51, 52}}, + {{64, 65}, {52, 64}}, + {{53, 65}, {52, 53}}, + {{65, 66}, {53, 65}}, + {{54, 66}, {53, 54}}, + {{66, 67}, {54, 66}}, + {{55, 67}, {54, 55}}, + {{67, 68}, {55, 67}}, + {{56, 68}, {55, 56}}, + {{68, 69}, {56, 68}}, + {{57, 69}, {56, 57}}, + {{69, 70}, {57, 69}}, + {{58, 70}, {57, 58}}, + {{70, 71}, {58, 70}}, + {{59, 71}, {58, 59}}, + {{60, 71}, {59, 71}}, + {{60, 72}, {60, 71}}, + {{72, 73}, {60, 72}}, + {{61, 73}, {60, 61}}, + {{73, 74}, {61, 73}}, + {{62, 74}, {61, 62}}, + {{74, 75}, {62, 74}}, + {{63, 75}, {62, 63}}, + {{75, 76}, {63, 75}}, + {{64, 76}, {63, 64}}, + {{76, 77}, {64, 76}}, + {{65, 77}, {64, 65}}, + {{77, 78}, {65, 77}}, + {{66, 78}, {65, 66}}, + {{78, 79}, {66, 78}}, + {{67, 79}, {66, 67}}, + {{79, 80}, {67, 79}}, + {{68, 80}, {67, 68}}, + {{80, 81}, {68, 80}}, + {{69, 81}, {68, 69}}, + {{81, 82}, {69, 81}}, + {{70, 82}, {69, 70}}, + {{82, 83}, {70, 82}}, + {{71, 83}, {70, 71}}, + {{72, 83}, {71, 83}}, + {{72, 84}, {72, 83}}, + {{84, 85}, {72, 84}}, + {{73, 85}, {72, 73}}, + {{85, 86}, {73, 85}}, + {{74, 86}, {73, 74}}, + {{86, 87}, {74, 86}}, + {{75, 87}, {74, 75}}, + {{87, 88}, {75, 87}}, + {{76, 88}, {75, 76}}, + {{88, 89}, {76, 88}}, + {{77, 89}, {76, 77}}, + {{89, 90}, {77, 89}}, + {{78, 90}, {77, 78}}, + {{90, 91}, {78, 90}}, + {{79, 91}, {78, 79}}, + {{91, 92}, {79, 91}}, + {{80, 92}, {79, 80}}, + {{92, 93}, {80, 92}}, + {{81, 93}, {80, 81}}, + {{93, 94}, {81, 93}}, + {{82, 94}, {81, 82}}, + {{94, 95}, {82, 94}}, + {{83, 95}, {82, 83}}, + {{84, 95}, {83, 95}}, + {{84, 96}, {84, 95}}, + {{96, 97}, {84, 96}}, + {{85, 97}, {84, 85}}, + {{97, 98}, {85, 97}}, + {{86, 98}, {85, 86}}, + {{98, 99}, {86, 98}}, + {{87, 99}, {86, 87}}, + {{99, 100}, {87, 99}}, + {{88, 100}, {87, 88}}, + {{100, 101}, {88, 100}}, + {{89, 101}, {88, 89}}, + {{101, 102}, {89, 101}}, + {{90, 102}, {89, 90}}, + {{102, 103}, {90, 102}}, + {{91, 103}, {90, 91}}, + {{103, 104}, {91, 103}}, + {{92, 104}, {91, 92}}, + {{104, 105}, {92, 104}}, + {{93, 105}, {92, 93}}, + {{105, 106}, {93, 105}}, + {{94, 106}, {93, 94}}, + {{106, 107}, {94, 106}}, + {{95, 107}, {94, 95}}, + {{96, 107}, {95, 107}}, + {{96, 108}, {96, 107}}, + {{108, 109}, {96, 108}}, + {{97, 109}, {96, 97}}, + {{109, 110}, {97, 109}}, + {{98, 110}, {97, 98}}, + {{110, 111}, {98, 110}}, + {{99, 111}, {98, 99}}, + {{111, 112}, {99, 111}}, + {{100, 112}, {99, 100}}, + {{112, 113}, {100, 112}}, + {{101, 113}, {100, 101}}, + {{113, 114}, {101, 113}}, + {{102, 114}, {101, 102}}, + {{114, 115}, {102, 114}}, + {{103, 115}, {102, 103}}, + {{115, 116}, {103, 115}}, + {{104, 116}, {103, 104}}, + {{116, 117}, {104, 116}}, + {{105, 117}, {104, 105}}, + {{117, 118}, {105, 117}}, + {{106, 118}, {105, 106}}, + {{118, 119}, {106, 118}}, + {{107, 119}, {106, 107}}, + {{108, 119}, {107, 119}}, + {{108, 120}, {108, 119}}, + {{120, 121}, {108, 120}}, + {{109, 121}, {108, 109}}, + {{121, 122}, {109, 121}}, + {{110, 122}, {109, 110}}, + {{122, 123}, {110, 122}}, + {{111, 123}, {110, 111}}, + {{123, 124}, {111, 123}}, + {{112, 124}, {111, 112}}, + {{124, 125}, {112, 124}}, + {{113, 125}, {112, 113}}, + {{125, 126}, {113, 125}}, + {{114, 126}, {113, 114}}, + {{126, 127}, {114, 126}}, + {{115, 127}, {114, 115}}, + {{127, 128}, {115, 127}}, + {{116, 128}, {115, 116}}, + {{128, 129}, {116, 128}}, + {{117, 129}, {116, 117}}, + {{129, 130}, {117, 129}}, + {{118, 130}, {117, 118}}, + {{130, 131}, {118, 130}}, + {{119, 131}, {118, 119}}, + {{120, 131}, {119, 131}}, + {{120, 132}, {120, 131}}, + {{132, 133}, {120, 132}}, + {{121, 133}, {120, 121}}, + {{133, 134}, {121, 133}}, + {{122, 134}, {121, 122}}, + {{134, 135}, {122, 134}}, + {{123, 135}, {122, 123}}, + {{135, 136}, {123, 135}}, + {{124, 136}, {123, 124}}, + {{136, 137}, {124, 136}}, + {{125, 137}, {124, 125}}, + {{137, 138}, {125, 137}}, + {{126, 138}, {125, 126}}, + {{138, 139}, {126, 138}}, + {{127, 139}, {126, 127}}, + {{139, 140}, {127, 139}}, + {{128, 140}, {127, 128}}, + {{140, 141}, {128, 140}}, + {{129, 141}, {128, 129}}, + {{141, 142}, {129, 141}}, + {{130, 142}, {129, 130}}, + {{142, 143}, {130, 142}}, + {{131, 143}, {130, 131}}, + {{132, 143}, {131, 143}}, + {{132, 144}, {132, 143}}, + {{144, 145}, {132, 144}}, + {{133, 145}, {132, 133}}, + {{145, 146}, {133, 145}}, + {{134, 146}, {133, 134}}, + {{146, 147}, {134, 146}}, + {{135, 147}, {134, 135}}, + {{147, 148}, {135, 147}}, + {{136, 148}, {135, 136}}, + {{148, 149}, {136, 148}}, + {{137, 149}, {136, 137}}, + {{149, 150}, {137, 149}}, + {{138, 150}, {137, 138}}, + {{150, 151}, {138, 150}}, + {{139, 151}, {138, 139}}, + {{151, 152}, {139, 151}}, + {{140, 152}, {139, 140}}, + {{152, 153}, {140, 152}}, + {{141, 153}, {140, 141}}, + {{153, 154}, {141, 153}}, + {{142, 154}, {141, 142}}, + {{154, 155}, {142, 154}}, + {{143, 155}, {142, 143}}, + {{144, 155}, {143, 155}}, + {{144, 156}, {144, 155}}, + {{156, 157}, {144, 156}}, + {{145, 157}, {144, 145}}, + {{157, 158}, {145, 157}}, + {{146, 158}, {145, 146}}, + {{158, 159}, {146, 158}}, + {{147, 159}, {146, 147}}, + {{159, 160}, {147, 159}}, + {{148, 160}, {147, 148}}, + {{160, 161}, {148, 160}}, + {{149, 161}, {148, 149}}, + {{161, 162}, {149, 161}}, + {{150, 162}, {149, 150}}, + {{162, 163}, {150, 162}}, + {{151, 163}, {150, 151}}, + {{163, 164}, {151, 163}}, + {{152, 164}, {151, 152}}, + {{164, 165}, {152, 164}}, + {{153, 165}, {152, 153}}, + {{165, 166}, {153, 165}}, + {{154, 166}, {153, 154}}, + {{166, 167}, {154, 166}}, + {{155, 167}, {154, 155}}, + {{156, 167}, {155, 167}}, + {{156, 168}, {156, 167}}, + {{168, 169}, {156, 168}}, + {{157, 169}, {156, 157}}, + {{169, 170}, {157, 169}}, + {{158, 170}, {157, 158}}, + {{170, 171}, {158, 170}}, + {{159, 171}, {158, 159}}, + {{171, 172}, {159, 171}}, + {{160, 172}, {159, 160}}, + {{172, 173}, {160, 172}}, + {{161, 173}, {160, 161}}, + {{173, 174}, {161, 173}}, + {{162, 174}, {161, 162}}, + {{174, 175}, {162, 174}}, + {{163, 175}, {162, 163}}, + {{175, 176}, {163, 175}}, + {{164, 176}, {163, 164}}, + {{176, 177}, {164, 176}}, + {{165, 177}, {164, 165}}, + {{177, 178}, {165, 177}}, + {{166, 178}, {165, 166}}, + {{178, 179}, {166, 178}}, + {{167, 179}, {166, 167}}, + {{168, 179}, {167, 179}}, + {{168, 180}, {168, 179}}, + {{180, 181}, {168, 180}}, + {{169, 181}, {168, 169}}, + {{181, 182}, {169, 181}}, + {{170, 182}, {169, 170}}, + {{182, 183}, {170, 182}}, + {{171, 183}, {170, 171}}, + {{183, 184}, {171, 183}}, + {{172, 184}, {171, 172}}, + {{184, 185}, {172, 184}}, + {{173, 185}, {172, 173}}, + {{185, 186}, {173, 185}}, + {{174, 186}, {173, 174}}, + {{186, 187}, {174, 186}}, + {{175, 187}, {174, 175}}, + {{187, 188}, {175, 187}}, + {{176, 188}, {175, 176}}, + {{188, 189}, {176, 188}}, + {{177, 189}, {176, 177}}, + {{189, 190}, {177, 189}}, + {{178, 190}, {177, 178}}, + {{190, 191}, {178, 190}}, + {{179, 191}, {178, 179}}, + {{180, 191}, {179, 191}}, + {{180, 192}, {180, 191}}, + {{192, 193}, {180, 192}}, + {{181, 193}, {180, 181}}, + {{193, 194}, {181, 193}}, + {{182, 194}, {181, 182}}, + {{194, 195}, {182, 194}}, + {{183, 195}, {182, 183}}, + {{195, 196}, {183, 195}}, + {{184, 196}, {183, 184}}, + {{196, 197}, {184, 196}}, + {{185, 197}, {184, 185}}, + {{197, 198}, {185, 197}}, + {{186, 198}, {185, 186}}, + {{198, 199}, {186, 198}}, + {{187, 199}, {186, 187}}, + {{199, 200}, {187, 199}}, + {{188, 200}, {187, 188}}, + {{200, 201}, {188, 200}}, + {{189, 201}, {188, 189}}, + {{201, 202}, {189, 201}}, + {{190, 202}, {189, 190}}, + {{202, 203}, {190, 202}}, + {{191, 203}, {190, 191}}, + {{192, 203}, {191, 203}}, + {{192, 204}, {192, 203}}, + {{204, 205}, {192, 204}}, + {{193, 205}, {192, 193}}, + {{205, 206}, {193, 205}}, + {{194, 206}, {193, 194}}, + {{206, 207}, {194, 206}}, + {{195, 207}, {194, 195}}, + {{207, 208}, {195, 207}}, + {{196, 208}, {195, 196}}, + {{208, 209}, {196, 208}}, + {{197, 209}, {196, 197}}, + {{209, 210}, {197, 209}}, + {{198, 210}, {197, 198}}, + {{210, 211}, {198, 210}}, + {{199, 211}, {198, 199}}, + {{211, 212}, {199, 211}}, + {{200, 212}, {199, 200}}, + {{212, 213}, {200, 212}}, + {{201, 213}, {200, 201}}, + {{213, 214}, {201, 213}}, + {{202, 214}, {201, 202}}, + {{214, 215}, {202, 214}}, + {{203, 215}, {202, 203}}, + {{204, 215}, {203, 215}}, + {{204, 216}, {204, 215}}, + {{216, 217}, {204, 216}}, + {{205, 217}, {204, 205}}, + {{217, 218}, {205, 217}}, + {{206, 218}, {205, 206}}, + {{218, 219}, {206, 218}}, + {{207, 219}, {206, 207}}, + {{219, 220}, {207, 219}}, + {{208, 220}, {207, 208}}, + {{220, 221}, {208, 220}}, + {{209, 221}, {208, 209}}, + {{221, 222}, {209, 221}}, + {{210, 222}, {209, 210}}, + {{222, 223}, {210, 222}}, + {{211, 223}, {210, 211}}, + {{223, 224}, {211, 223}}, + {{212, 224}, {211, 212}}, + {{224, 225}, {212, 224}}, + {{213, 225}, {212, 213}}, + {{225, 226}, {213, 225}}, + {{214, 226}, {213, 214}}, + {{226, 227}, {214, 226}}, + {{215, 227}, {214, 215}}, + {{216, 227}, {215, 227}}, + {{216, 228}, {216, 227}}, + {{228, 229}, {216, 228}}, + {{217, 229}, {216, 217}}, + {{229, 230}, {217, 229}}, + {{218, 230}, {217, 218}}, + {{230, 231}, {218, 230}}, + {{219, 231}, {218, 219}}, + {{231, 232}, {219, 231}}, + {{220, 232}, {219, 220}}, + {{232, 233}, {220, 232}}, + {{221, 233}, {220, 221}}, + {{233, 234}, {221, 233}}, + {{222, 234}, {221, 222}}, + {{234, 235}, {222, 234}}, + {{223, 235}, {222, 223}}, + {{235, 236}, {223, 235}}, + {{224, 236}, {223, 224}}, + {{236, 237}, {224, 236}}, + {{225, 237}, {224, 225}}, + {{237, 238}, {225, 237}}, + {{226, 238}, {225, 226}}, + {{238, 239}, {226, 238}}, + {{227, 239}, {226, 227}}, + {{228, 239}, {227, 239}}, + {{228, 240}, {228, 239}}, + {{240, 241}, {228, 240}}, + {{229, 241}, {228, 229}}, + {{241, 242}, {229, 241}}, + {{230, 242}, {229, 230}}, + {{242, 243}, {230, 242}}, + {{231, 243}, {230, 231}}, + {{243, 244}, {231, 243}}, + {{232, 244}, {231, 232}}, + {{244, 245}, {232, 244}}, + {{233, 245}, {232, 233}}, + {{245, 246}, {233, 245}}, + {{234, 246}, {233, 234}}, + {{246, 247}, {234, 246}}, + {{235, 247}, {234, 235}}, + {{247, 248}, {235, 247}}, + {{236, 248}, {235, 236}}, + {{248, 249}, {236, 248}}, + {{237, 249}, {236, 237}}, + {{249, 250}, {237, 249}}, + {{238, 250}, {237, 238}}, + {{250, 251}, {238, 250}}, + {{239, 251}, {238, 239}}, + {{240, 251}, {239, 251}}, + {{240, 252}, {240, 251}}, + {{252, 253}, {240, 252}}, + {{241, 253}, {240, 241}}, + {{253, 254}, {241, 253}}, + {{242, 254}, {241, 242}}, + {{254, 255}, {242, 254}}, + {{243, 255}, {242, 243}}, + {{255, 256}, {243, 255}}, + {{244, 256}, {243, 244}}, + {{256, 257}, {244, 256}}, + {{245, 257}, {244, 245}}, + {{257, 258}, {245, 257}}, + {{246, 258}, {245, 246}}, + {{258, 259}, {246, 258}}, + {{247, 259}, {246, 247}}, + {{259, 260}, {247, 259}}, + {{248, 260}, {247, 248}}, + {{260, 261}, {248, 260}}, + {{249, 261}, {248, 249}}, + {{261, 262}, {249, 261}}, + {{250, 262}, {249, 250}}, + {{262, 263}, {250, 262}}, + {{251, 263}, {250, 251}}, + {{252, 263}, {251, 263}}, + {{252, 264}, {252, 263}}, + {{264, 265}, {252, 264}}, + {{253, 265}, {252, 253}}, + {{265, 266}, {253, 265}}, + {{254, 266}, {253, 254}}, + {{266, 267}, {254, 266}}, + {{255, 267}, {254, 255}}, + {{267, 268}, {255, 267}}, + {{256, 268}, {255, 256}}, + {{268, 269}, {256, 268}}, + {{257, 269}, {256, 257}}, + {{269, 270}, {257, 269}}, + {{258, 270}, {257, 258}}, + {{270, 271}, {258, 270}}, + {{259, 271}, {258, 259}}, + {{271, 272}, {259, 271}}, + {{260, 272}, {259, 260}}, + {{272, 273}, {260, 272}}, + {{261, 273}, {260, 261}}, + {{273, 274}, {261, 273}}, + {{262, 274}, {261, 262}}, + {{274, 275}, {262, 274}}, + {{263, 275}, {262, 263}}, + {{264, 275}, {263, 275}}, + {{264, 276}, {264, 275}}, + {{276, 277}, {264, 276}}, + {{265, 277}, {264, 265}}, + {{277, 278}, {265, 277}}, + {{266, 278}, {265, 266}}, + {{278, 279}, {266, 278}}, + {{267, 279}, {266, 267}}, + {{279, 280}, {267, 279}}, + {{268, 280}, {267, 268}}, + {{280, 281}, {268, 280}}, + {{269, 281}, {268, 269}}, + {{281, 282}, {269, 281}}, + {{270, 282}, {269, 270}}, + {{282, 283}, {270, 282}}, + {{271, 283}, {270, 271}}, + {{283, 284}, {271, 283}}, + {{272, 284}, {271, 272}}, + {{284, 285}, {272, 284}}, + {{273, 285}, {272, 273}}, + {{285, 286}, {273, 285}}, + {{274, 286}, {273, 274}}, + {{286, 287}, {274, 286}}, + {{275, 287}, {274, 275}}, + {{276, 287}, {275, 287}}, + {{276, 288}, {276, 287}}, + {{288, 289}, {276, 288}}, + {{277, 289}, {276, 277}}, + {{289, 290}, {277, 289}}, + {{278, 290}, {277, 278}}, + {{290, 291}, {278, 290}}, + {{279, 291}, {278, 279}}, + {{291, 292}, {279, 291}}, + {{280, 292}, {279, 280}}, + {{292, 293}, {280, 292}}, + {{281, 293}, {280, 281}}, + {{293, 294}, {281, 293}}, + {{282, 294}, {281, 282}}, + {{294, 295}, {282, 294}}, + {{283, 295}, {282, 283}}, + {{295, 296}, {283, 295}}, + {{284, 296}, {283, 284}}, + {{296, 297}, {284, 296}}, + {{285, 297}, {284, 285}}, + {{297, 298}, {285, 297}}, + {{286, 298}, {285, 286}}, + {{298, 299}, {286, 298}}, + {{287, 299}, {286, 287}}, + {{288, 299}, {287, 299}}, + {{288, 300}, {288, 299}}, + {{300, 301}, {288, 300}}, + {{289, 301}, {288, 289}}, + {{301, 302}, {289, 301}}, + {{290, 302}, {289, 290}}, + {{302, 303}, {290, 302}}, + {{291, 303}, {290, 291}}, + {{303, 304}, {291, 303}}, + {{292, 304}, {291, 292}}, + {{304, 305}, {292, 304}}, + {{293, 305}, {292, 293}}, + {{305, 306}, {293, 305}}, + {{294, 306}, {293, 294}}, + {{306, 307}, {294, 306}}, + {{295, 307}, {294, 295}}, + {{307, 308}, {295, 307}}, + {{296, 308}, {295, 296}}, + {{308, 309}, {296, 308}}, + {{297, 309}, {296, 297}}, + {{309, 310}, {297, 309}}, + {{298, 310}, {297, 298}}, + {{310, 311}, {298, 310}}, + {{299, 311}, {298, 299}}, + {{300, 311}, {299, 311}}, + {{300, 312}, {300, 311}}, + {{312, 313}, {300, 312}}, + {{301, 313}, {300, 301}}, + {{313, 314}, {301, 313}}, + {{302, 314}, {301, 302}}, + {{314, 315}, {302, 314}}, + {{303, 315}, {302, 303}}, + {{315, 316}, {303, 315}}, + {{304, 316}, {303, 304}}, + {{316, 317}, {304, 316}}, + {{305, 317}, {304, 305}}, + {{317, 318}, {305, 317}}, + {{306, 318}, {305, 306}}, + {{318, 319}, {306, 318}}, + {{307, 319}, {306, 307}}, + {{319, 320}, {307, 319}}, + {{308, 320}, {307, 308}}, + {{320, 321}, {308, 320}}, + {{309, 321}, {308, 309}}, + {{321, 322}, {309, 321}}, + {{310, 322}, {309, 310}}, + {{322, 323}, {310, 322}}, + {{311, 323}, {310, 311}}, + {{312, 323}, {311, 323}}, + {{312, 324}, {312, 323}}, + {{324, 325}, {312, 324}}, + {{313, 325}, {312, 313}}, + {{325, 326}, {313, 325}}, + {{314, 326}, {313, 314}}, + {{326, 327}, {314, 326}}, + {{315, 327}, {314, 315}}, + {{327, 328}, {315, 327}}, + {{316, 328}, {315, 316}}, + {{328, 329}, {316, 328}}, + {{317, 329}, {316, 317}}, + {{329, 330}, {317, 329}}, + {{318, 330}, {317, 318}}, + {{330, 331}, {318, 330}}, + {{319, 331}, {318, 319}}, + {{331, 332}, {319, 331}}, + {{320, 332}, {319, 320}}, + {{332, 333}, {320, 332}}, + {{321, 333}, {320, 321}}, + {{333, 334}, {321, 333}}, + {{322, 334}, {321, 322}}, + {{334, 335}, {322, 334}}, + {{323, 335}, {322, 323}}, + {{324, 335}, {323, 335}}, + {{324, 336}, {324, 335}}, + {{336, 337}, {324, 336}}, + {{325, 337}, {324, 325}}, + {{337, 338}, {325, 337}}, + {{326, 338}, {325, 326}}, + {{338, 339}, {326, 338}}, + {{327, 339}, {326, 327}}, + {{339, 340}, {327, 339}}, + {{328, 340}, {327, 328}}, + {{340, 341}, {328, 340}}, + {{329, 341}, {328, 329}}, + {{341, 342}, {329, 341}}, + {{330, 342}, {329, 330}}, + {{342, 343}, {330, 342}}, + {{331, 343}, {330, 331}}, + {{343, 344}, {331, 343}}, + {{332, 344}, {331, 332}}, + {{344, 345}, {332, 344}}, + {{333, 345}, {332, 333}}, + {{345, 346}, {333, 345}}, + {{334, 346}, {333, 334}}, + {{346, 347}, {334, 346}}, + {{335, 347}, {334, 335}}, + {{336, 347}, {335, 347}}, + {{336, 348}, {336, 347}}, + {{348, 349}, {336, 348}}, + {{337, 349}, {336, 337}}, + {{349, 350}, {337, 349}}, + {{338, 350}, {337, 338}}, + {{350, 351}, {338, 350}}, + {{339, 351}, {338, 339}}, + {{351, 352}, {339, 351}}, + {{340, 352}, {339, 340}}, + {{352, 353}, {340, 352}}, + {{341, 353}, {340, 341}}, + {{353, 354}, {341, 353}}, + {{342, 354}, {341, 342}}, + {{354, 355}, {342, 354}}, + {{343, 355}, {342, 343}}, + {{355, 356}, {343, 355}}, + {{344, 356}, {343, 344}}, + {{356, 357}, {344, 356}}, + {{345, 357}, {344, 345}}, + {{357, 358}, {345, 357}}, + {{346, 358}, {345, 346}}, + {{358, 359}, {346, 358}}, + {{347, 359}, {346, 347}}, + {{348, 359}, {347, 359}}, + {{348, 360}, {348, 359}}, + {{360, 361}, {348, 360}}, + {{349, 361}, {348, 349}}, + {{361, 362}, {349, 361}}, + {{350, 362}, {349, 350}}, + {{362, 363}, {350, 362}}, + {{351, 363}, {350, 351}}, + {{363, 364}, {351, 363}}, + {{352, 364}, {351, 352}}, + {{364, 365}, {352, 364}}, + {{353, 365}, {352, 353}}, + {{365, 366}, {353, 365}}, + {{354, 366}, {353, 354}}, + {{366, 367}, {354, 366}}, + {{355, 367}, {354, 355}}, + {{367, 368}, {355, 367}}, + {{356, 368}, {355, 356}}, + {{368, 369}, {356, 368}}, + {{357, 369}, {356, 357}}, + {{369, 370}, {357, 369}}, + {{358, 370}, {357, 358}}, + {{370, 371}, {358, 370}}, + {{359, 371}, {358, 359}}, + {{360, 371}, {359, 371}}, + {{360, 372}, {360, 371}}, + {{372, 373}, {360, 372}}, + {{361, 373}, {360, 361}}, + {{373, 374}, {361, 373}}, + {{362, 374}, {361, 362}}, + {{374, 375}, {362, 374}}, + {{363, 375}, {362, 363}}, + {{375, 376}, {363, 375}}, + {{364, 376}, {363, 364}}, + {{376, 377}, {364, 376}}, + {{365, 377}, {364, 365}}, + {{377, 378}, {365, 377}}, + {{366, 378}, {365, 366}}, + {{378, 379}, {366, 378}}, + {{367, 379}, {366, 367}}, + {{379, 380}, {367, 379}}, + {{368, 380}, {367, 368}}, + {{380, 381}, {368, 380}}, + {{369, 381}, {368, 369}}, + {{381, 382}, {369, 381}}, + {{370, 382}, {369, 370}}, + {{382, 383}, {370, 382}}, + {{371, 383}, {370, 371}}, + {{372, 383}, {371, 383}}, + {{372, 384}, {372, 383}}, + {{384, 385}, {372, 384}}, + {{373, 385}, {372, 373}}, + {{385, 386}, {373, 385}}, + {{374, 386}, {373, 374}}, + {{386, 387}, {374, 386}}, + {{375, 387}, {374, 375}}, + {{387, 388}, {375, 387}}, + {{376, 388}, {375, 376}}, + {{388, 389}, {376, 388}}, + {{377, 389}, {376, 377}}, + {{389, 390}, {377, 389}}, + {{378, 390}, {377, 378}}, + {{390, 391}, {378, 390}}, + {{379, 391}, {378, 379}}, + {{391, 392}, {379, 391}}, + {{380, 392}, {379, 380}}, + {{392, 393}, {380, 392}}, + {{381, 393}, {380, 381}}, + {{393, 394}, {381, 393}}, + {{382, 394}, {381, 382}}, + {{394, 395}, {382, 394}}, + {{383, 395}, {382, 383}}, + {{384, 395}, {383, 395}}, + {{384, 396}, {384, 395}}, + {{396, 397}, {384, 396}}, + {{385, 397}, {384, 385}}, + {{397, 398}, {385, 397}}, + {{386, 398}, {385, 386}}, + {{398, 399}, {386, 398}}, + {{387, 399}, {386, 387}}, + {{399, 400}, {387, 399}}, + {{388, 400}, {387, 388}}, + {{400, 401}, {388, 400}}, + {{389, 401}, {388, 389}}, + {{401, 402}, {389, 401}}, + {{390, 402}, {389, 390}}, + {{402, 403}, {390, 402}}, + {{391, 403}, {390, 391}}, + {{403, 404}, {391, 403}}, + {{392, 404}, {391, 392}}, + {{404, 405}, {392, 404}}, + {{393, 405}, {392, 393}}, + {{405, 406}, {393, 405}}, + {{394, 406}, {393, 394}}, + {{406, 407}, {394, 406}}, + {{395, 407}, {394, 395}}, + {{396, 407}, {395, 407}}, + {{396, 408}, {396, 407}}, + {{408, 409}, {396, 408}}, + {{397, 409}, {396, 397}}, + {{409, 410}, {397, 409}}, + {{398, 410}, {397, 398}}, + {{410, 411}, {398, 410}}, + {{399, 411}, {398, 399}}, + {{411, 412}, {399, 411}}, + {{400, 412}, {399, 400}}, + {{412, 413}, {400, 412}}, + {{401, 413}, {400, 401}}, + {{413, 414}, {401, 413}}, + {{402, 414}, {401, 402}}, + {{414, 415}, {402, 414}}, + {{403, 415}, {402, 403}}, + {{415, 416}, {403, 415}}, + {{404, 416}, {403, 404}}, + {{416, 417}, {404, 416}}, + {{405, 417}, {404, 405}}, + {{417, 418}, {405, 417}}, + {{406, 418}, {405, 406}}, + {{418, 419}, {406, 418}}, + {{407, 419}, {406, 407}}, + {{408, 419}, {407, 419}}, + {{408, 420}, {408, 419}}, + {{420, 421}, {408, 420}}, + {{409, 421}, {408, 409}}, + {{421, 422}, {409, 421}}, + {{410, 422}, {409, 410}}, + {{422, 423}, {410, 422}}, + {{411, 423}, {410, 411}}, + {{423, 424}, {411, 423}}, + {{412, 424}, {411, 412}}, + {{424, 425}, {412, 424}}, + {{413, 425}, {412, 413}}, + {{425, 426}, {413, 425}}, + {{414, 426}, {413, 414}}, + {{426, 427}, {414, 426}}, + {{415, 427}, {414, 415}}, + {{427, 428}, {415, 427}}, + {{416, 428}, {415, 416}}, + {{428, 429}, {416, 428}}, + {{417, 429}, {416, 417}}, + {{429, 430}, {417, 429}}, + {{418, 430}, {417, 418}}, + {{430, 431}, {418, 430}}, + {{419, 431}, {418, 419}}, + {{420, 431}, {419, 431}}, + {{420, 432}, {420, 431}}, + {{432, 433}, {420, 432}}, + {{421, 433}, {420, 421}}, + {{433, 434}, {421, 433}}, + {{422, 434}, {421, 422}}, + {{434, 435}, {422, 434}}, + {{423, 435}, {422, 423}}, + {{435, 436}, {423, 435}}, + {{424, 436}, {423, 424}}, + {{436, 437}, {424, 436}}, + {{425, 437}, {424, 425}}, + {{437, 438}, {425, 437}}, + {{426, 438}, {425, 426}}, + {{438, 439}, {426, 438}}, + {{427, 439}, {426, 427}}, + {{439, 440}, {427, 439}}, + {{428, 440}, {427, 428}}, + {{440, 441}, {428, 440}}, + {{429, 441}, {428, 429}}, + {{441, 442}, {429, 441}}, + {{430, 442}, {429, 430}}, + {{442, 443}, {430, 442}}, + {{431, 443}, {430, 431}}, + {{432, 443}, {431, 443}}, + {{432, 444}, {432, 443}}, + {{444, 445}, {432, 444}}, + {{433, 445}, {432, 433}}, + {{445, 446}, {433, 445}}, + {{434, 446}, {433, 434}}, + {{446, 447}, {434, 446}}, + {{435, 447}, {434, 435}}, + {{447, 448}, {435, 447}}, + {{436, 448}, {435, 436}}, + {{448, 449}, {436, 448}}, + {{437, 449}, {436, 437}}, + {{449, 450}, {437, 449}}, + {{438, 450}, {437, 438}}, + {{450, 451}, {438, 450}}, + {{439, 451}, {438, 439}}, + {{451, 452}, {439, 451}}, + {{440, 452}, {439, 440}}, + {{452, 453}, {440, 452}}, + {{441, 453}, {440, 441}}, + {{453, 454}, {441, 453}}, + {{442, 454}, {441, 442}}, + {{454, 455}, {442, 454}}, + {{443, 455}, {442, 443}}, + {{444, 455}, {443, 455}}, + {{444, 456}, {444, 455}}, + {{456, 457}, {444, 456}}, + {{445, 457}, {444, 445}}, + {{457, 458}, {445, 457}}, + {{446, 458}, {445, 446}}, + {{458, 459}, {446, 458}}, + {{447, 459}, {446, 447}}, + {{459, 460}, {447, 459}}, + {{448, 460}, {447, 448}}, + {{460, 461}, {448, 460}}, + {{449, 461}, {448, 449}}, + {{461, 462}, {449, 461}}, + {{450, 462}, {449, 450}}, + {{462, 463}, {450, 462}}, + {{451, 463}, {450, 451}}, + {{463, 464}, {451, 463}}, + {{452, 464}, {451, 452}}, + {{464, 465}, {452, 464}}, + {{453, 465}, {452, 453}}, + {{465, 466}, {453, 465}}, + {{454, 466}, {453, 454}}, + {{466, 467}, {454, 466}}, + {{455, 467}, {454, 455}}, + {{456, 467}, {455, 467}}, + {{456, 468}, {456, 467}}, + {{468, 469}, {456, 468}}, + {{457, 469}, {456, 457}}, + {{469, 470}, {457, 469}}, + {{458, 470}, {457, 458}}, + {{470, 471}, {458, 470}}, + {{459, 471}, {458, 459}}, + {{471, 472}, {459, 471}}, + {{460, 472}, {459, 460}}, + {{472, 473}, {460, 472}}, + {{461, 473}, {460, 461}}, + {{473, 474}, {461, 473}}, + {{462, 474}, {461, 462}}, + {{474, 475}, {462, 474}}, + {{463, 475}, {462, 463}}, + {{475, 476}, {463, 475}}, + {{464, 476}, {463, 464}}, + {{476, 477}, {464, 476}}, + {{465, 477}, {464, 465}}, + {{477, 478}, {465, 477}}, + {{466, 478}, {465, 466}}, + {{478, 479}, {466, 478}}, + {{467, 479}, {466, 467}}, + {{468, 479}, {467, 479}}, + {{468, 480}, {468, 479}}, + {{480, 481}, {468, 480}}, + {{469, 481}, {468, 469}}, + {{481, 482}, {469, 481}}, + {{470, 482}, {469, 470}}, + {{482, 483}, {470, 482}}, + {{471, 483}, {470, 471}}, + {{483, 484}, {471, 483}}, + {{472, 484}, {471, 472}}, + {{484, 485}, {472, 484}}, + {{473, 485}, {472, 473}}, + {{485, 486}, {473, 485}}, + {{474, 486}, {473, 474}}, + {{486, 487}, {474, 486}}, + {{475, 487}, {474, 475}}, + {{487, 488}, {475, 487}}, + {{476, 488}, {475, 476}}, + {{488, 489}, {476, 488}}, + {{477, 489}, {476, 477}}, + {{489, 490}, {477, 489}}, + {{478, 490}, {477, 478}}, + {{490, 491}, {478, 490}}, + {{479, 491}, {478, 479}}, + {{480, 491}, {479, 491}}, + {{480, 492}, {480, 491}}, + {{492, 493}, {480, 492}}, + {{481, 493}, {480, 481}}, + {{493, 494}, {481, 493}}, + {{482, 494}, {481, 482}}, + {{494, 495}, {482, 494}}, + {{483, 495}, {482, 483}}, + {{495, 496}, {483, 495}}, + {{484, 496}, {483, 484}}, + {{496, 497}, {484, 496}}, + {{485, 497}, {484, 485}}, + {{497, 498}, {485, 497}}, + {{486, 498}, {485, 486}}, + {{498, 499}, {486, 498}}, + {{487, 499}, {486, 487}}, + {{499, 500}, {487, 499}}, + {{488, 500}, {487, 488}}, + {{500, 501}, {488, 500}}, + {{489, 501}, {488, 489}}, + {{501, 502}, {489, 501}}, + {{490, 502}, {489, 490}}, + {{502, 503}, {490, 502}}, + {{491, 503}, {490, 491}}, + {{492, 503}, {491, 503}}, + {{492, 504}, {492, 503}}, + {{504, 505}, {492, 504}}, + {{493, 505}, {492, 493}}, + {{505, 506}, {493, 505}}, + {{494, 506}, {493, 494}}, + {{506, 507}, {494, 506}}, + {{495, 507}, {494, 495}}, + {{507, 508}, {495, 507}}, + {{496, 508}, {495, 496}}, + {{508, 509}, {496, 508}}, + {{497, 509}, {496, 497}}, + {{509, 510}, {497, 509}}, + {{498, 510}, {497, 498}}, + {{510, 511}, {498, 510}}, + {{499, 511}, {498, 499}}, + {{511, 512}, {499, 511}}, + {{500, 512}, {499, 500}}, + {{512, 513}, {500, 512}}, + {{501, 513}, {500, 501}}, + {{513, 514}, {501, 513}}, + {{502, 514}, {501, 502}}, + {{514, 515}, {502, 514}}, + {{503, 515}, {502, 503}}, + {{504, 515}, {503, 515}}, + {{504, 516}, {504, 515}}, + {{516, 517}, {504, 516}}, + {{505, 517}, {504, 505}}, + {{517, 518}, {505, 517}}, + {{506, 518}, {505, 506}}, + {{518, 519}, {506, 518}}, + {{507, 519}, {506, 507}}, + {{519, 520}, {507, 519}}, + {{508, 520}, {507, 508}}, + {{520, 521}, {508, 520}}, + {{509, 521}, {508, 509}}, + {{521, 522}, {509, 521}}, + {{510, 522}, {509, 510}}, + {{522, 523}, {510, 522}}, + {{511, 523}, {510, 511}}, + {{523, 524}, {511, 523}}, + {{512, 524}, {511, 512}}, + {{524, 525}, {512, 524}}, + {{513, 525}, {512, 513}}, + {{525, 526}, {513, 525}}, + {{514, 526}, {513, 514}}, + {{526, 527}, {514, 526}}, + {{515, 527}, {514, 515}}, + {{516, 527}, {515, 527}}, + {{516, 528}, {516, 527}}, + {{528, 529}, {516, 528}}, + {{517, 529}, {516, 517}}, + {{529, 530}, {517, 529}}, + {{518, 530}, {517, 518}}, + {{530, 531}, {518, 530}}, + {{519, 531}, {518, 519}}, + {{531, 532}, {519, 531}}, + {{520, 532}, {519, 520}}, + {{532, 533}, {520, 532}}, + {{521, 533}, {520, 521}}, + {{533, 534}, {521, 533}}, + {{522, 534}, {521, 522}}, + {{534, 535}, {522, 534}}, + {{523, 535}, {522, 523}}, + {{535, 536}, {523, 535}}, + {{524, 536}, {523, 524}}, + {{536, 537}, {524, 536}}, + {{525, 537}, {524, 525}}, + {{537, 538}, {525, 537}}, + {{526, 538}, {525, 526}}, + {{538, 539}, {526, 538}}, + {{527, 539}, {526, 527}}, + {{528, 539}, {527, 539}}, + {{528, 540}, {528, 539}}, + {{540, 541}, {528, 540}}, + {{529, 541}, {528, 529}}, + {{541, 542}, {529, 541}}, + {{530, 542}, {529, 530}}, + {{542, 543}, {530, 542}}, + {{531, 543}, {530, 531}}, + {{543, 544}, {531, 543}}, + {{532, 544}, {531, 532}}, + {{544, 545}, {532, 544}}, + {{533, 545}, {532, 533}}, + {{545, 546}, {533, 545}}, + {{534, 546}, {533, 534}}, + {{546, 547}, {534, 546}}, + {{535, 547}, {534, 535}}, + {{547, 548}, {535, 547}}, + {{536, 548}, {535, 536}}, + {{548, 549}, {536, 548}}, + {{537, 549}, {536, 537}}, + {{549, 550}, {537, 549}}, + {{538, 550}, {537, 538}}, + {{550, 551}, {538, 550}}, + {{539, 551}, {538, 539}}, + {{540, 551}, {539, 551}}, + {{540, 552}, {540, 551}}, + {{552, 553}, {540, 552}}, + {{541, 553}, {540, 541}}, + {{553, 554}, {541, 553}}, + {{542, 554}, {541, 542}}, + {{554, 555}, {542, 554}}, + {{543, 555}, {542, 543}}, + {{555, 556}, {543, 555}}, + {{544, 556}, {543, 544}}, + {{556, 557}, {544, 556}}, + {{545, 557}, {544, 545}}, + {{557, 558}, {545, 557}}, + {{546, 558}, {545, 546}}, + {{558, 559}, {546, 558}}, + {{547, 559}, {546, 547}}, + {{559, 560}, {547, 559}}, + {{548, 560}, {547, 548}}, + {{560, 561}, {548, 560}}, + {{549, 561}, {548, 549}}, + {{561, 562}, {549, 561}}, + {{550, 562}, {549, 550}}, + {{562, 563}, {550, 562}}, + {{551, 563}, {550, 551}}, + {{552, 563}, {551, 563}}, + {{552, 564}, {552, 563}}, + {{564, 565}, {552, 564}}, + {{553, 565}, {552, 553}}, + {{565, 566}, {553, 565}}, + {{554, 566}, {553, 554}}, + {{566, 567}, {554, 566}}, + {{555, 567}, {554, 555}}, + {{567, 568}, {555, 567}}, + {{556, 568}, {555, 556}}, + {{568, 569}, {556, 568}}, + {{557, 569}, {556, 557}}, + {{569, 570}, {557, 569}}, + {{558, 570}, {557, 558}}, + {{570, 571}, {558, 570}}, + {{559, 571}, {558, 559}}, + {{571, 572}, {559, 571}}, + {{560, 572}, {559, 560}}, + {{572, 573}, {560, 572}}, + {{561, 573}, {560, 561}}, + {{573, 574}, {561, 573}}, + {{562, 574}, {561, 562}}, + {{574, 575}, {562, 574}}, + {{563, 575}, {562, 563}}, + {{564, 575}, {563, 575}}, + {{0, 564}, {564, 575}}, + {{1, 565}, {564, 565}}, + {{2, 566}, {565, 566}}, + {{3, 567}, {566, 567}}, + {{4, 568}, {567, 568}}, + {{5, 569}, {568, 569}}, + {{6, 570}, {569, 570}}, + {{7, 571}, {570, 571}}, + {{8, 572}, {571, 572}}, + {{9, 573}, {572, 573}}, + {{10, 574}, {573, 574}}, + {{11, 575}, {574, 575}}, +}; + +const mesh_material mesh_Torus_materials[] = { +}; +const vec2 * mesh_Torus_uv_layers[] = { + mesh_Torus_UVMap_uvmap, +}; + +const mesh mesh_Torus = { + .position = mesh_Torus_position, + .position_length = (sizeof (mesh_Torus_position)) / (sizeof (mesh_Torus_position[0])), + .normal = mesh_Torus_normal, + .normal_length = (sizeof (mesh_Torus_normal)) / (sizeof (mesh_Torus_normal[0])), + .polygon_normal = mesh_Torus_polygon_normal, + .polygon_normal_length = (sizeof (mesh_Torus_polygon_normal)) / (sizeof (mesh_Torus_polygon_normal[0])), + .polygons = mesh_Torus_polygons, + .polygons_length = (sizeof (mesh_Torus_polygons)) / (sizeof (mesh_Torus_polygons[0])), + .uv_layers = mesh_Torus_uv_layers, + .uv_layers_length = (sizeof (mesh_Torus_uv_layers)) / (sizeof (mesh_Torus_uv_layers[0])), + .materials = mesh_Torus_materials, + .materials_length = (sizeof (mesh_Torus_materials)) / (sizeof (mesh_Torus_materials[0])), + .edge_polygons = mesh_Torus_edge_polygons, + .edge_polygons_length = (sizeof (mesh_Torus_edge_polygons)) / (sizeof (mesh_Torus_edge_polygons[0])), +}; + +const object objects[] = { + { // object_Cube + .mesh = &mesh_Cube_001, + .scale = {0.211637, 0.211637, 0.211637}, + .rotation = {0.000000, 0.000000, 0.000000, 1.000000}, // quaternion (XYZW) + .location = {4.076250, 1.005454, 5.903862}, + }, + { // object_Plane + .mesh = &mesh_Plane, + .scale = {4.869396, 4.869396, 4.869396}, + .rotation = {0.000000, 0.000000, 0.000000, 1.000000}, // quaternion (XYZW) + .location = {0.000000, 0.000000, 0.000000}, + }, + { // object_Torus + .mesh = &mesh_Torus, + .scale = {1.000000, 1.000000, 1.000000}, + .rotation = {0.000000, 0.000000, 0.000000, 1.000000}, // quaternion (XYZW) + .location = {0.000000, -0.000000, 1.471233}, + }, +}; + +const material materials[] = { +}; + diff --git a/shadow_volume.cpp b/shadow_volume.cpp new file mode 100644 index 0000000..11c2023 --- /dev/null +++ b/shadow_volume.cpp @@ -0,0 +1,288 @@ +#include "shadow_volume.hpp" + +#include "math/float_types.hpp" +#include "assert.h" +#include "printf/printf.h" + +static inline void face_indicators(const vec3 light, + const vec3 * position, + const vec3 * polygon_normal, + const mesh * mesh, + float * indicators) +{ + for (int i = 0; i < mesh->polygons_length; i++) { + vec3 n = polygon_normal[i]; + vec3 p = position[mesh->polygons[i].a]; + + float indicator = dot(n, (light - p)); + indicators[i] = indicator; + } +} + +static inline int object_silhouette(const float * indicators, + const mesh * mesh, + int * edge_indices) +{ + int ix = 0; + for (int i = 0; i < mesh->edge_polygons_length; i++) { + const edge_polygon * ep = &mesh->edge_polygons[i]; + if ((indicators[ep->polygon_index.a] > 0) != (indicators[ep->polygon_index.b] > 0)) { + edge_indices[ix] = i; + ix += 1; + } + } + + return ix; +} + +struct graph { + int a; + int b; +}; + +void graph_append(graph * g, int v) +{ + if (!(g->a == -1 || g->b == -1)) { + return; + } + + if (g->a == -1) { + g->a = v; + } else { + g->b = v; + } +} + +void edge_loop_graph(const mesh * mesh, + const int * edge_indices, + const int edge_indices_length, + graph * graph) +{ + for (int i = 0; i < mesh->position_length; i++) { + graph[i].a = -1; + graph[i].b = -1; + } + + for (int i = 0; i < edge_indices_length; i++) { + int edge_index = edge_indices[i]; + const edge& edge = mesh->edge_polygons[edge_index].edge; + graph_append(&graph[edge.a], i); + graph_append(&graph[edge.b], i); + } +} + +int next_neighbor(const graph& graph, int ix) +{ + if (graph.a == ix) + return graph.b; + else + return graph.a; +} + +int edge_loop_inner(const mesh * mesh, + const int * edge_indices, + const graph * graph, + bool * visited_edge_indices, + int ix, + int * edge_loop) +{ + int edge_loop_ix = 0; + + const edge& e = mesh->edge_polygons[edge_indices[ix]].edge; + edge_loop[edge_loop_ix] = e.b; + edge_loop_ix += 1; + + while (true) { + visited_edge_indices[ix] = true; + + int edge_index = edge_indices[ix]; + const edge& e = mesh->edge_polygons[edge_index].edge; + int next_ix_a = next_neighbor(graph[e.a], ix); + int next_ix_b = next_neighbor(graph[e.b], ix); + if (visited_edge_indices[next_ix_a] == false) { + edge_loop[edge_loop_ix] = e.a; + edge_loop_ix += 1; + + ix = next_ix_a; + } else if (visited_edge_indices[next_ix_b] == false) { + edge_loop[edge_loop_ix] = e.b; + edge_loop_ix += 1; + + ix = next_ix_b; + } else { + break; + } + } + return edge_loop_ix; +} + +int next_unvisited(const bool * visited_edge_indices, + const int edge_indices_length) +{ + for (int i = 0; i < edge_indices_length; i++) { + if (visited_edge_indices[i] == false) + return i; + } + return -1; +} + +int edge_loop(const mesh * mesh, + const int * edge_indices, + const int edge_indices_length, + const graph * graph, + int * edge_loops, + int * edge_loop_lengths, + int max_edge_loops) +{ + bool visited_edge_indices[edge_indices_length]; + for (int i = 0; i < edge_indices_length; i++) { + visited_edge_indices[i] = false; + } + + int edge_loop_ix = 0; + int i; + for (i = 0; i < max_edge_loops; i++) { + int start = next_unvisited(visited_edge_indices, edge_indices_length); + if (start == -1) + break; + int length = edge_loop_inner(mesh, edge_indices, graph, visited_edge_indices, start, + &edge_loops[edge_loop_ix]); + edge_loop_lengths[i] = length; + edge_loop_ix += length; + } + return i; +} + +static inline vec3 cast_ray(const vec3 light, + const vec3 start) +{ + vec3 ray = start - light; + return start + (normalize(ray) * 7.f); +} + +void shadow_volume_mesh_rays(const vec3 light, + const vec3 * position, + const vec3 * cast_position, + const int * edge_loop, + const int edge_loop_length, + void(*render_quad)(vec3 a, vec3 b, vec3 c, vec3 d, bool l)) +{ + for (int i = 0; i < edge_loop_length; i++) { + int j = i + 1; + if (j >= edge_loop_length) j = 0; + + int i1 = edge_loop[i]; + int i2 = edge_loop[j]; + + vec3 a = position[i1]; + vec3 b = position[i2]; + vec3 c = cast_position[i2]; + vec3 d = cast_position[i1]; + + bool last_in_volume = (i == (edge_loop_length - 1)); + render_quad(a, b, c, d, last_in_volume); + } +} + +void shadow_volume_end_caps(const vec3 light, + const vec3 * position, + const vec3 * cast_position, + const mesh * mesh, + const float * indicators, + void(*render_quad)(vec3 a, vec3 b, vec3 c, vec3 d, bool l)) +{ + for (int i = 0; i < mesh->polygons_length; i++) { + const polygon * p = &mesh->polygons[i]; + + if (indicators[i] > 0) { + vec3 a = position[p->a]; + vec3 b = position[p->b]; + vec3 c = position[p->c]; + vec3 d = position[p->d]; + render_quad(a, b, c, d, false); + } else { + vec3 a = cast_position[p->a]; + vec3 b = cast_position[p->b]; + vec3 c = cast_position[p->c]; + vec3 d = cast_position[p->d]; + render_quad(a, b, c, d, false); + } + } +} + +void shadow_volume_mesh(const vec3 light, + const vec3 * position, + const vec3 * polygon_normal, + const mesh * mesh, + void(*render_quad)(vec3 a, vec3 b, vec3 c, vec3 d, bool l)) +{ + // light in world space + + float indicators[mesh->polygon_normal_length]; + face_indicators(light, position, polygon_normal, mesh, indicators); + + // edge_indicies: mesh->edge_polygons indices + int edge_indices[mesh->edge_polygons_length]; + int edge_indices_length = object_silhouette(indicators, mesh, edge_indices); + + // graph contains indexes to edge_indices (not mesh edge indices) + graph graph[mesh->position_length]; + edge_loop_graph(mesh, edge_indices, edge_indices_length, graph); + + const int max_edge_loops = 2; + int edge_loops[edge_indices_length]; + int edge_loop_lengths[max_edge_loops]; + int loop_count = edge_loop(mesh, + edge_indices, + edge_indices_length, + graph, + edge_loops, + edge_loop_lengths, + max_edge_loops); + + + vec3 cast_position[mesh->position_length]; + for (int i = 0; i < mesh->position_length; i++) { + cast_position[i] = cast_ray(light, position[i]); + } + + shadow_volume_end_caps(light, + position, + cast_position, + mesh, + indicators, + render_quad); + + // edge_loops contains position indices + int edge_loop_ix = 0; + for (int i = 0; i < loop_count; i++) { + int edge_loop_length = edge_loop_lengths[i]; + int * edge_loop = &edge_loops[edge_loop_ix]; + shadow_volume_mesh_rays(light, + position, + cast_position, + edge_loop, + edge_loop_length, + render_quad); + edge_loop_ix += edge_loop_length; + } + + if (0) { + int edge_loop_ix = 0; + for (int i = 0; i < loop_count; i++) { + int length = edge_loop_lengths[i]; + printf("loop %d: %d\n", i, length); + for (int j = 0; j < length; j++) { + printf(" %d", edge_loops[j + edge_loop_ix]); + } + printf("\n\n"); + edge_loop_ix += length; + } + } + + /* + for (int i = 0; i < silhouette_length; i++) { + out_edges[edges[i]] = 1; + } + */ +} diff --git a/shadow_volume.hpp b/shadow_volume.hpp new file mode 100644 index 0000000..1434994 --- /dev/null +++ b/shadow_volume.hpp @@ -0,0 +1,10 @@ +#pragma once + +#include "math/float_types.hpp" +#include "model/blender_export.h" + +void shadow_volume_mesh(const vec3 light, + const vec3 * position, + const vec3 * polygon_normal, + const mesh * mesh, + void(*render_quad)(vec3 a, vec3 b, vec3 c, vec3 d, bool l));